Review documentation plus some tools fix (#5100)

* review 3.5.0 doc

* fix documentation

* fix documentation

* fix documentation
This commit is contained in:
Eugenio Romano 2019-09-26 10:27:04 +01:00 committed by GitHub
parent bfc7e91eb6
commit 3dc92beeb9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
83 changed files with 3717 additions and 41598 deletions

2
.gitignore vendored
View File

@ -16,8 +16,6 @@ e2e-output/
/demo-shell/dist-dev-temp/
/lib/export-new.json
/lib/config/exportCheck.js
/lib/config/export-check/export-new.json
/lib/config/export-check/exportCheck.js
/docs/sourceinfo
/docs/docs.json
/protractorFailuresReport

View File

@ -82,7 +82,9 @@ for more information about installing and using the source code.
| Name | Description | Source link |
| ---- | ----------- | ----------- |
| [About Component](core/components/about.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows a general version and status overview of the installed ADF library. | [Source](../lib/core/about/about.component.ts) |
| [About Application Modules Component](core/components/about-application.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows which ADF libraries and plugins an application is using. | [Source](../lib/core/about/about-application-modules/about-application-modules.component.ts) |
| [About GitHub Link Component](core/components/about-github-link.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows which version of the application is running based on the latest GitHub commit, as well as the server settings for the application. | [Source](../lib/core/about/about-github-link/about-github-link.component.ts) |
| [About Product Version Component](core/components/about-product-version.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows which version of Process Services (BPM) and Content Services (ECM) an application is running. It also shows the relevant license information, application status and Alfresco modules running in an application. | [Source](../lib/core/about/about-product-version/about-product-version.component.ts) |
| [Buttons Menu Component](core/components/buttons-menu.component.md) | Displays buttons on a responsive menu. | [Source](../lib/core/buttons-menu/buttons-menu.component.ts) |
| [Card View component](core/components/card-view.component.md) | Displays a configurable property list renderer. | [Source](../lib/core/card-view/components/card-view/card-view.component.ts) |
| [Comment list component](core/components/comment-list.component.md) | Shows a list of comments. | [Source](../lib/core/comments/comment-list.component.ts) |
@ -135,6 +137,12 @@ for more information about installing and using the source code.
| [Node Restore directive](core/directives/node-restore.directive.md) | Restores deleted nodes to their original location. | [Source](../lib/core/directives/node-restore.directive.ts) |
| [Upload Directive](core/directives/upload.directive.md) | Uploads content in response to file drag and drop. | [Source](../lib/core/directives/upload.directive.ts) |
### Dialogs
| Name | Description | Source link |
| ---- | ----------- | ----------- |
| [Edit JSON Dialog](core/dialogs/edit-json.dialog.md) | Allows a user to preview or edit a JSON content in a dialog. | [Source](../../../../) |
### Interfaces
| Name | Description | Source link |
@ -200,6 +208,7 @@ for more information about installing and using the source code.
| [Form Rendering service](core/services/form-rendering.service.md) | Maps a form field type string onto the corresponding form widget component type. | [Source](../lib/core/form/services/form-rendering.service.ts) |
| [Form service](core/services/form.service.md) | Implements Process Services form methods | [Source](../lib/core/form/services/form.service.ts) |
| [Highlight Transform service](core/services/highlight-transform.service.md) | Adds HTML to a string to highlight chosen sections. | [Source](../lib/core/services/highlight-transform.service.ts) |
| [Identity Group service](core/services/identity-group.service.md) | Performs CRUD operations on identity groups. | [Source](../lib/core/userinfo/services/identity-group.service.ts) |
| [Identity user service](core/services/identity-user.service.md) | Gets OAuth2 personal details and roles for users and performs CRUD operations on identity users. | [Source](../lib/core/userinfo/services/identity-user.service.ts) |
| [JWT helper service](core/services/jwt-helper.service.md) | Decodes a JSON Web Token (JWT) to a JavaScript object. | [Source](../lib/core/services/jwt-helper.service.ts) |
| [Log Service](core/services/log.service.md) | Provides log functionality. | [Source](../lib/core/services/log.service.ts) |
@ -292,7 +301,7 @@ for more information about installing and using the source code.
| [Folder Edit directive](content-services/directives/folder-edit.directive.md) | Allows folders to be edited. | [Source](../lib/content-services/folder-directive/folder-edit.directive.ts) |
| [Inherit Permission directive](content-services/directives/inherited-button.directive.md) | Update the current node by adding/removing the inherited permissions. | [Source](../lib/content-services/permission-manager/components/inherited-button.directive.ts) |
| [Node Lock directive](content-services/directives/node-lock.directive.md) | Locks or unlocks a node. | [Source](../lib/content-services/directives/node-lock.directive.ts) |
| [Toggle Icon directive](content-services/directives/toggle-icon.directive.md) | Toggle icon on mouse and keyboard event. | [Source](../lib/content-services/upload/directives/toggle-icon.directive.ts) |
| [Toggle Icon directive](content-services/directives/toggle-icon.directive.md) | Toggle icon on mouse or keyboard event for a selectable element. | [Source](../lib/content-services/upload/directives/toggle-icon.directive.ts) |
### Dialogs
@ -354,47 +363,47 @@ for more information about installing and using the source code.
| Name | Description | Source link |
| ---- | ----------- | ----------- |
| [Apps List Component](process-services/components/apps-list.component.md) | Shows all available apps. | [Source](../lib/process-services/app-list/apps-list.component.ts) |
| [Apps List Component](process-services/components/apps-list.component.md) | Shows all available apps. | [Source](../lib/process-services/src/lib/app-list/apps-list.component.ts) |
| [Attach Form component](process-services/components/attach-form.component.md) | This component can be used when there is no form attached to a task and you want to add one. | [Source](../lib/process-services/src/lib/task-list/components/attach-form.component.ts) |
| [Checklist Component](process-services/components/checklist.component.md) | Shows the checklist task functionality. | [Source](../lib/process-services/src/lib/task-list/components/checklist.component.ts) |
| [Create Process Attachment component](process-services/components/create-process-attachment.component.md) | Displays an Upload Component (Drag and Click) to upload the attachment to a specified process instance. | [Source](../lib/process-services/attachment/create-process-attachment.component.ts) |
| [Create Task Attachment Component](process-services/components/create-task-attachment.component.md) | Displays an Upload Component (Drag and Click) to upload the attachment to a specified task. | [Source](../lib/process-services/attachment/create-task-attachment.component.ts) |
| [Form component](process-services/components/form.component.md) | Shows a Form from APS | [Source](../lib/process-services/form/form.component.ts) |
| [People list component](process-services/components/people-list.component.md) | Shows a list of users (people). | [Source](../lib/process-services/people/components/people-list/people-list.component.ts) |
| [People Search component](process-services/components/people-search.component.md) | Searches users/people. | [Source](../lib/process-services/people/components/people-search/people-search.component.ts) |
| [People Component](process-services/components/people.component.md) | Displays users involved with a specified task | [Source](../lib/process-services/people/components/people/people.component.ts) |
| [Process Attachment List component](process-services/components/process-attachment-list.component.md) | Displays documents attached to a specified process instance. | [Source](../lib/process-services/attachment/process-attachment-list.component.ts) |
| [Process Instance Comments component](process-services/components/process-comments.component.md) | Displays comments associated with a particular process instance and allows the user to add new comments. | [Source](../lib/process-services/process-comments/process-comments.component.ts) |
| [Process Filters Component](process-services/components/process-filters.component.md) | Collection of criteria used to filter process instances, which may be customized by users. | [Source](../lib/process-services/process-list/components/process-filters.component.ts) |
| [Process Details component](process-services/components/process-instance-details.component.md) | Displays detailed information about a specified process instance | [Source](../lib/process-services/process-list/components/process-instance-details.component.ts) |
| [Process Instance Details Header component](process-services/components/process-instance-header.component.md) | Sub-component of the process details component, which renders some general information about the selected process. | [Source](../lib/process-services/process-list/components/process-instance-header.component.ts) |
| [Process Instance Tasks component](process-services/components/process-instance-tasks.component.md) | Lists both the active and completed tasks associated with a particular process instance | [Source](../lib/process-services/process-list/components/process-instance-tasks.component.ts) |
| [Process Instance List](process-services/components/process-list.component.md) | Renders a list containing all the process instances matched by the parameters specified. | [Source](../lib/process-services/process-list/components/process-list.component.ts) |
| [Select App Component](process-services/components/select-apps-dialog.component.md) | Shows all available apps and returns the selected app. | [Source](../lib/process-services/app-list/select-apps-dialog-component.ts) |
| [Start Process component](process-services/components/start-process.component.md) | Starts a process. | [Source](../lib/process-services/process-list/components/start-process.component.ts) |
| [Start Task Component](process-services/components/start-task.component.md) | Creates/Starts a new task for the specified app. | [Source](../lib/process-services/task-list/components/start-task.component.ts) |
| [Task Attachment List Component](process-services/components/task-attachment-list.component.md) | Displays documents attached to a specified task. | [Source](../lib/process-services/attachment/task-attachment-list.component.ts) |
| [Task Details component](process-services/components/task-details.component.md) | Shows the details of the task ID passed in as input. | [Source](../lib/process-services/task-list/components/task-details.component.ts) |
| [Task Filters component](process-services/components/task-filters.component.md) | Shows all available filters. | [Source](../lib/process-services/task-list/components/task-filters.component.ts) |
| [Task Header component](process-services/components/task-header.component.md) | Shows all the information related to a task. | [Source](../lib/process-services/task-list/components/task-header.component.ts) |
| [Task List component](process-services/components/task-list.component.md) | Renders a list containing all the tasks matched by the parameters specified. | [Source](../lib/process-services/task-list/components/task-list.component.ts) |
| [Task Standalone component](process-services/components/task-standalone.component.md) | This component can be used when the task doesn't belong to any processes. | [Source](../lib/process-services/task-list/components/task-standalone.component.ts) |
| [Create Process Attachment component](process-services/components/create-process-attachment.component.md) | Displays an Upload Component (Drag and Click) to upload the attachment to a specified process instance. | [Source](../lib/process-services/src/lib/attachment/create-process-attachment.component.ts) |
| [Create Task Attachment Component](process-services/components/create-task-attachment.component.md) | Displays an Upload Component (Drag and Click) to upload the attachment to a specified task. | [Source](../lib/process-services/src/lib/attachment/create-task-attachment.component.ts) |
| [Form component](process-services/components/form.component.md) | Shows a Form from APS | [Source](../lib/process-services/src/lib/form/form.component.ts) |
| [People list component](process-services/components/people-list.component.md) | Shows a list of users (people). | [Source](../lib/process-services/src/lib/people/components/people-list/people-list.component.ts) |
| [People Search component](process-services/components/people-search.component.md) | Searches users/people. | [Source](../lib/process-services/src/lib/people/components/people-search/people-search.component.ts) |
| [People Component](process-services/components/people.component.md) | Displays users involved with a specified task | [Source](../lib/process-services/src/lib/people/components/people/people.component.ts) |
| [Process Attachment List component](process-services/components/process-attachment-list.component.md) | Displays documents attached to a specified process instance. | [Source](../lib/process-services/src/lib/attachment/process-attachment-list.component.ts) |
| [Process Instance Comments component](process-services/components/process-comments.component.md) | Displays comments associated with a particular process instance and allows the user to add new comments. | [Source](../lib/process-services/src/lib/process-comments/process-comments.component.ts) |
| [Process Filters Component](process-services/components/process-filters.component.md) | Collection of criteria used to filter process instances, which may be customized by users. | [Source](../lib/process-services/src/lib/process-list/components/process-filters.component.ts) |
| [Process Details component](process-services/components/process-instance-details.component.md) | Displays detailed information about a specified process instance | [Source](../lib/process-services/src/lib/process-list/components/process-instance-details.component.ts) |
| [Process Instance Details Header component](process-services/components/process-instance-header.component.md) | Sub-component of the process details component, which renders some general information about the selected process. | [Source](../lib/process-services/src/lib/process-list/components/process-instance-header.component.ts) |
| [Process Instance Tasks component](process-services/components/process-instance-tasks.component.md) | Lists both the active and completed tasks associated with a particular process instance | [Source](../lib/process-services/src/lib/process-list/components/process-instance-tasks.component.ts) |
| [Process Instance List](process-services/components/process-list.component.md) | Renders a list containing all the process instances matched by the parameters specified. | [Source](../lib/process-services/src/lib/process-list/components/process-list.component.ts) |
| [Select App Component](process-services/components/select-apps-dialog.component.md) | Shows all available apps and returns the selected app. | [Source](../lib/process-services/src/lib/app-list/select-apps-dialog-component.ts) |
| [Start Process component](process-services/components/start-process.component.md) | Starts a process. | [Source](../lib/process-services/src/lib/process-list/components/start-process.component.ts) |
| [Start Task Component](process-services/components/start-task.component.md) | Creates/Starts a new task for the specified app. | [Source](../lib/process-services/src/lib/task-list/components/start-task.component.ts) |
| [Task Attachment List Component](process-services/components/task-attachment-list.component.md) | Displays documents attached to a specified task. | [Source](../lib/process-services/src/lib/attachment/task-attachment-list.component.ts) |
| [Task Details component](process-services/components/task-details.component.md) | Shows the details of the task ID passed in as input. | [Source](../lib/process-services/src/lib/task-list/components/task-details.component.ts) |
| [Task Filters component](process-services/components/task-filters.component.md) | Shows all available filters. | [Source](../lib/process-services/src/lib/task-list/components/task-filters.component.ts) |
| [Task Header component](process-services/components/task-header.component.md) | Shows all the information related to a task. | [Source](../lib/process-services/src/lib/task-list/components/task-header.component.ts) |
| [Task List component](process-services/components/task-list.component.md) | Renders a list containing all the tasks matched by the parameters specified. | [Source](../lib/process-services/src/lib/task-list/components/task-list.component.ts) |
| [Task Standalone component](process-services/components/task-standalone.component.md) | This component can be used when the task doesn't belong to any processes. | [Source](../lib/process-services/src/lib/task-list/components/task-standalone.component.ts) |
### Directives
| Name | Description | Source link |
| ---- | ----------- | ----------- |
| [Process Audit Directive](process-services/directives/process-audit.directive.md) | Fetches the Process Audit information in PDF or JSON format. | [Source](../lib/process-services/process-list/components/process-audit.directive.ts) |
| [Task Audit Directive](process-services/directives/task-audit.directive.md) | Fetches the Task Audit information in PDF or JSON format. | [Source](../lib/process-services/task-list/components/task-audit.directive.ts) |
| [Process Audit Directive](process-services/directives/process-audit.directive.md) | Fetches the Process Audit information in PDF or JSON format. | [Source](../lib/process-services/src/lib/process-list/components/process-audit.directive.ts) |
| [Task Audit Directive](process-services/directives/task-audit.directive.md) | Fetches the Task Audit information in PDF or JSON format. | [Source](../lib/process-services/src/lib/task-list/components/task-audit.directive.ts) |
### Services
| Name | Description | Source link |
| ---- | ----------- | ----------- |
| [Process Filter Service](process-services/services/process-filter.service.md) | Manage Process Filters, which are pre-configured Process Instance queries. | [Source](../lib/process-services/process-list/services/process-filter.service.ts) |
| [Process Service](process-services/services/process.service.md) | Manages process instances, process variables, and process audit Log. | [Source](../lib/process-services/process-list/services/process.service.ts) |
| [Task Filter Service](process-services/services/task-filter.service.md) | Manage Task Filters, which are pre-configured Task Instance queries. | [Source](../lib/process-services/task-list/services/task-filter.service.ts) |
| [Tasklist Service](process-services/services/tasklist.service.md) | Manages Task Instances. | [Source](../lib/process-services/task-list/services/tasklist.service.ts) |
| [Process Filter Service](process-services/services/process-filter.service.md) | Manage Process Filters, which are pre-configured Process Instance queries. | [Source](../lib/process-services/src/lib/process-list/services/process-filter.service.ts) |
| [Process Service](process-services/services/process.service.md) | Manages process instances, process variables, and process audit Log. | [Source](../lib/process-services/src/lib/process-list/services/process.service.ts) |
| [Task Filter Service](process-services/services/task-filter.service.md) | Manage Task Filters, which are pre-configured Task Instance queries. | [Source](../lib/process-services/src/lib/task-list/services/task-filter.service.ts) |
| [Tasklist Service](process-services/services/tasklist.service.md) | Manages Task Instances. | [Source](../lib/process-services/src/lib/task-list/services/tasklist.service.ts) |
<!--process-services end-->
@ -452,6 +461,7 @@ for more information about installing and using the source code.
| [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) |
| [Form cloud service](process-services-cloud/services/form-cloud.service.md) | Implements Process Services form methods | [Source](../lib/process-services-cloud/src/lib/form/services/form-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) |
| [Local Preference Cloud Service](process-services-cloud/services/local-preference-cloud.service.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Manages Local Storage preferences. | [Source](../lib/process-services-cloud/src/lib/services/local-preference-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 Header Cloud Service](process-services-cloud/services/process-header-cloud.service.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Manages cloud process instances. | [Source](../lib/process-services-cloud/src/lib/process/process-header/services/process-header-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) |
@ -460,6 +470,7 @@ for more information about installing and using the source code.
| [Task Cloud Service](process-services-cloud/services/task-cloud.service.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Manages task cloud. | [Source](../lib/process-services-cloud/src/lib/task/services/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 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) |
| [User Preference Cloud Service](process-services-cloud/services/user-preference-cloud.service.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Manages user preferences. | [Source](../lib/process-services-cloud/src/lib/services/user-preference-cloud.service.ts) |
<!--process-services-cloud end-->

View File

@ -25,7 +25,7 @@ This document lists all the deprecated ADF v2.x components that were removed for
classes without the **adf-** prefix, you will now need to update them. For example, `.card-view`
is now `.adf-card-view`.
- [PR ADF-1443](https://github.com/Alfresco/alfresco-ng2-components/pull/4028): [`DownloadZipDialogComponent`](../../lib/core/dialogs/download-zip.dialog.ts)
- [PR ADF-1443](https://github.com/Alfresco/alfresco-ng2-components/pull/4028): [`DownloadZipDialogComponent`](../../lib/core/dialogs/download-zip/download-zip.dialog.ts)
and [`NodeDownloadDirective`](../core/directives/node-download.directive.md) have been moved from the Content Services module to the Core module.
This modification has enabled us to remove some code duplication between the two modules.

View File

@ -97,10 +97,10 @@ export class MyView {
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when an error occurs during the action. Applies to copy and move actions. |
| execute | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the user selects the action from the menu. |
| permissionEvent | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when a permission error occurs |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the action succeeds with the success string message. Applies to copy, move and delete actions. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when an error occurs during the action. Applies to copy and move actions. |
| execute | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the user selects the action from the menu. |
| permissionEvent | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when a permission error occurs |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the action succeeds with the success string message. Applies to copy, move and delete actions. |
## Details

View File

@ -29,7 +29,7 @@ Allows a user to add "likes" to an item.
| Name | Type | Description |
| ---- | ---- | ----------- |
| changeVote | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the "vote" gets changed. |
| changeVote | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the "vote" gets changed. |
## See also

View File

@ -40,7 +40,7 @@ If the average is decimal number it will be rounded.
| Name | Type | Description |
| ---- | ---- | ----------- |
| changeVote | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the "vote" gets changed. |
| changeVote | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the "vote" gets changed. |
## See also

View File

@ -32,5 +32,5 @@ Shows available actions for tags.
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when an error occurs. |
| result | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when an action is chosen. |
| result | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when an action is chosen. |
| successAdd | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when a tag is added successfully. |

View File

@ -17,7 +17,7 @@ Shows tags for an item.
| Name | Type | Description |
| ---- | ---- | ----------- |
| result | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when a tag is selected. |
| result | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when a tag is selected. |
## See Also

View File

@ -32,4 +32,4 @@ Shows tags for a node.
| Name | Type | Description |
| ---- | ---- | ----------- |
| results | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when a tag is selected. |
| results | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when a tag is selected. |

View File

@ -47,9 +47,9 @@ Activates a file upload.
| Name | Type | Description |
| ---- | ---- | ----------- |
| beginUpload | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`UploadFilesEvent`](../../../lib/content-services/upload/components/upload-files.event.ts)`>` | Emitted when the upload begins. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when an error occurs. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when an error occurs. |
| permissionEvent | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`PermissionModel`](../../../lib/content-services/document-list/models/permissions.model.ts)`>` | Emitted when create permission is missing. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the file is uploaded successfully. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the file is uploaded successfully. |
## Details

View File

@ -75,8 +75,8 @@ as the drag/drop target:
| Name | Type | Description |
| ---- | ---- | ----------- |
| beginUpload | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`UploadFilesEvent`](../../../lib/content-services/upload/components/upload-files.event.ts)`>` | Emitted when the upload begins. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when an error occurs. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the file is uploaded successfully. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when an error occurs. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the file is uploaded successfully. |
## Details

View File

@ -50,9 +50,9 @@ to enrich the features and decrease the restrictions currently applied to node v
| Name | Type | Description |
| ---- | ---- | ----------- |
| beginUpload | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`UploadFilesEvent`](../../../lib/content-services/upload/components/upload-files.event.ts)`>` | Emitted when the upload begins. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when an error occurs. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when an error occurs. |
| permissionEvent | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`PermissionModel`](../../../lib/content-services/document-list/models/permissions.model.ts)`>` | Emitted when create permission is missing. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the file is uploaded successfully. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the file is uploaded successfully. |
## Details

View File

@ -75,7 +75,7 @@ export class AppComponent {
| Name | Type | Description |
| ---- | ---- | ----------- |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the operation succeeds. You can get the plain data from the webscript through the **success** event parameter and use it as you need in your application. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the operation succeeds. You can get the plain data from the webscript through the **success** event parameter and use it as you need in your application. |
## Details

View File

@ -5,7 +5,7 @@ Status: Active
Last reviewed: 2019-04-09
---
# [Toggle Icon directive](../../../lib/content-services/upload/directives/toggle-icon.directive.ts 'Defined in toggle-icon.directive.ts')
# [Toggle Icon directive](../../../lib/content-services/upload/directives/toggle-icon.directive.ts "Defined in toggle-icon.directive.ts")
Toggle icon on mouse or keyboard event for a selectable element.
@ -25,10 +25,3 @@ Toggle icon on mouse or keyboard event for a selectable element.
```
## Class members
### Properties
| Name | Type | Default value | Description |
| --------- | --------- | ------------- | ----------------------------------------------- |
| isToggled | `boolean` | false | Is element active by mouseenter or focus event? |
| isFocused | `boolean` | false | Is element focused by keyboard navigation? |

View File

@ -1,6 +1,6 @@
---
Title: About Application Modules Component
Added: v1.0.0
Added: v3.5.0
Status: Experimental
Last reviewed: 2019-09-09
---

View File

@ -1,6 +1,6 @@
---
Title: About GitHub Link Component
Added: v1.0.0
Added: v3.5.0
Status: Experimental
Last reviewed: 2019-09-09
---

View File

@ -1,6 +1,6 @@
---
Title: About Product Version Component
Added: v1.0.0
Added: v3.5.0
Status: Experimental
Last reviewed: 2019-09-09
---

View File

@ -45,23 +45,14 @@ Defines column properties for DataTable, Tasklist, Document List and other compo
| ---- | ---- | ------------- | ----------- |
| copyContent | `boolean` | | Enables/disables a [Clipboard directive](../../core/directives/clipboard.directive.md) to allow copying of cell contents. |
| cssClass | `string` | | Additional CSS class to be applied to column (header and cells). |
| editable | `boolean` | false | |
| format | `string` | | Value format (if supported by the parent component), for example format of the date. |
| formatTooltip | `Function` | | Custom tooltip formatter function. |
| key | `string` | | Data source key. Can be either a column/property key like `title` or a property path like `createdBy.name`. |
| sortable | `boolean` | true | Toggles ability to sort by this column, for example by clicking the column header. |
| srTitle | `string` | | Title to be used for screen readers. |
| title | `string` | "" | Display title of the column, typically used for column headers. You can use the i18n resource key to get it translated automatically. |
| type | `string` | "text" | Value type for the column. |
Supported `type` values:
- text
- image
- date
- icon
- fileSize
- location
- json (v3.4.0+)
| type | `string` | "text" | Value type for the column. Possible settings are 'text', 'image', 'date', 'fileSize', 'location', and 'json'. |
## Details

View File

@ -39,7 +39,7 @@ uses `<adf-form-field>` components to render the form fields.
Forms defined in APS have the following default mappings for the form fields:
| _APS [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) Designer_ Widget | Field Type | Component Type |
| -------------------------------------------------------------------------------------------- | ---------- | -------------- |
| ---------------------------------------------------------------------------------------------------- | ---------- | -------------- |
| Text | text | [`TextWidgetComponent`](../../../lib/core/form/components/widgets/text/text.widget.ts) |
| Multi-line text | multi-line-text | [`MultilineTextWidgetComponentComponent`](../../../lib/core/form/components/widgets/multiline-text/multiline-text.widget.ts) |
| Number | integer | [`NumberWidgetComponent`](../../../lib/core/form/components/widgets/number/number.widget.ts) |

View File

@ -44,6 +44,7 @@ You can specify the cell inside the `app.config.json` file:
| column | [`DataColumn`](../../../lib/core/datatable/data/data-column.model.ts) | | Data that defines the column. |
| copyContent | `boolean` | | Enables/disables a [Clipboard directive](../../core/directives/clipboard.directive.md) to allow copying of the cell's content. |
| data | [`DataTableAdapter`](../../../lib/core/datatable/data/datatable-adapter.ts) | | Data table adapter instance. |
| editable | `boolean` | false | Editable JSON. |
| row | [`DataRow`](../../../lib/core/datatable/data/data-row.model.ts) | | Data that defines the row. |
| tooltip | `string` | | Text for the cell's tooltip. |

View File

@ -89,7 +89,7 @@ See the [Custom layout](#custom-layout) section for full details of all availabl
| canNavigateNext | `boolean` | true | Toggles the next (">") button. Requires `allowNavigate` to be enabled. |
| displayName | `string` | | Specifies the name of the file when it is not available from the URL. |
| fileName | `string` | | Content filename. |
| maxRetries | `number` | 10 | Number of times the Viewer will retry fetching content Rendition. There is a delay of at least one second between attempts. |
| maxRetries | `number` | 30 | Number of times the Viewer will retry fetching content Rendition. There is a delay of at least one second between attempts. |
| mimeType | `string` | | MIME type of the file content (when not determined by the filename extension). |
| nodeId | `string` | null | [Node](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) Id of the file to load. |
| overlayMode | `boolean` | false | If `true` then show the Viewer as a full page over the current content. Otherwise fit inside the parent div. |
@ -110,9 +110,9 @@ See the [Custom layout](#custom-layout) section for full details of all availabl
| ---- | ---- | ----------- |
| extensionChange | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when the filename extension changes. |
| goBack | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`BaseEvent`](../../../lib/core/events/base.event.ts)`<any>>` | Emitted when user clicks the 'Back' button. |
| invalidSharedLink | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the shared link used is not valid. |
| navigateBefore | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when user clicks 'Navigate Before' ("&lt;") button. |
| navigateNext | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when user clicks 'Navigate Next' (">") button. |
| invalidSharedLink | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the shared link used is not valid. |
| navigateBefore | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when user clicks 'Navigate Before' ("&lt;") button. |
| navigateNext | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when user clicks 'Navigate Next' (">") button. |
| print | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`BaseEvent`](../../../lib/core/events/base.event.ts)`<any>>` | Emitted when user clicks the 'Print' button. |
| showViewerChange | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<boolean>` | Emitted when the viewer is shown or hidden. |

View File

@ -5,7 +5,7 @@ Status: Active
Last reviewed: 2019-09-17
---
# Edit JSON Dialog
# [Edit JSON Dialog](../../../ "Defined in ")
Allows a user to preview or edit a JSON content in a dialog.

View File

@ -95,11 +95,11 @@ class MyComponent {
- `formValues` - [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) Values
- `outcome` - (Optional) [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) Outcome
- `getTaskForm(taskId: string):`[`Observable`](http://reactivex.io/documentation/observable.html)`<any>`
Get [`Form`](../../../lib/process-services/task-list/models/form.model.ts) related to a taskId
Get [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) related to a taskId
- `taskId` - Task Id
- `getFormDefinitionById(formId: string):`[`Observable`](http://reactivex.io/documentation/observable.html)`<any>`
Get [`Form`](../../../lib/process-services/task-list/models/form.model.ts) Definition
- `formId` - [`Form`](../../../lib/process-services/task-list/models/form.model.ts) Id
Get [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) Definition
- `formId` - [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) Id
- `getFormDefinitionByName(name: string):`[`Observable`](http://reactivex.io/documentation/observable.html)`<any>`
Returns form definition with a given name.
- `name` - The form name
@ -137,7 +137,7 @@ class MyComponent {
Gets a list of workflow users.
- `filter` - Filter to select specific users
- `groupId` - (Optional) Group ID for the search
- [`getWorkflowGroups(filter: string, groupId?: string): Observable<GroupModel[]>`](../../../lib/process-services-cloud/src/lib/group/models/group.model.ts)
- [`getWorkflowGroups(filter: string, groupId?: string): Observable<GroupModel[]>`](../../../lib/core/form/components/widgets/core/group.model.ts)
Gets a list of groups in a workflow.
- `filter` - Filter to select specific groups
- `groupId` - (Optional) Group ID for the search

View File

@ -42,17 +42,17 @@ Performs CRUD operations on identity groups.
- _searchParams:_ [`IdentityGroupSearchParam`](../../../lib/core/userinfo/models/identity-group.model.ts) - Object containing the name filter string
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - List of group information
- **getClientIdByApplicationName**(applicationName: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<string>`<br/>
Gets the client ID using the app name.
Gets the client Id using the app name.
- _applicationName:_ `string` - Name of the app
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<string>` - client ID string
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<string>` - client Id string
- **getClientRoles**(groupId: `string`, clientId: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`IdentityRoleModel`](../../../lib/core/userinfo/models/identity-role.model.ts)`[]>`<br/>
Gets client roles.
- _groupId:_ `string` - ID of the target group
- _clientId:_ `string` - ID of the client
- _groupId:_ `string` - Id of the target group
- _clientId:_ `string` - Id of the client
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`IdentityRoleModel`](../../../lib/core/userinfo/models/identity-role.model.ts)`[]>` - List of roles
- **getGroupRoles**(groupId: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`IdentityRoleModel`](../../../lib/core/userinfo/models/identity-role.model.ts)`[]>`<br/>
Gets details for a specified group.
- _groupId:_ `string` - ID of the target group
- _groupId:_ `string` - Id of the target group
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`IdentityRoleModel`](../../../lib/core/userinfo/models/identity-role.model.ts)`[]>` - Group details
- **getGroups**(): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`IdentityGroupModel`](../../../lib/core/userinfo/models/identity-group.model.ts)`[]>`<br/>
Gets all groups.

View File

@ -17,12 +17,12 @@ Shows a notification message with optional feedback.
- **dismissSnackMessageAction**()<br/>
dismiss the notification snackbar
- **openSnackMessage**(message: `string`, config?: `number|MatSnackBarConfig`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
- **openSnackMessage**(message: `string`, config?: `number|MatSnackBarConfig`, translationArgs?: `any`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
Opens a SnackBar notification to show a message.
- _message:_ `string` - The message (or resource key) to show.
- _config:_ `number|MatSnackBarConfig` - (Optional) Time before notification disappears after being shown or MatSnackBarConfig object
- translationArgs: `any` - The object with the keys for the interpolation of your translation string
- **Returns** [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>` - Information/control object for the SnackBar
- _translationArgs:_ `any` - (Optional) The interpolation parameters to add for the translation
- **Returns** [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>` - Information/control object for the SnackBar
- **openSnackMessageAction**(message: `string`, action: `string`, config?: `number|MatSnackBarConfig`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
Opens a SnackBar notification with a message and a response button.
- _message:_ `string` - The message (or resource key) to show.
@ -34,10 +34,11 @@ Shows a notification message with optional feedback.
- _message:_ `string` - Text message or translation key for the message.
- _action:_ `string` - (Optional) Action name
- **Returns** [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>` -
- **showInfo**(message: `string`, action?: `string`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
- **showInfo**(message: `string`, action?: `string`, interpolateArgs?: `any`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
Rase info message
- _message:_ `string` - Text message or translation key for the message.
- _action:_ `string` - (Optional) Action name
- _interpolateArgs:_ `any` - (Optional)
- **Returns** [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>` -
- **showWarning**(message: `string`, action?: `string`): [`MatSnackBarRef`](https://material.angular.io/components/snack-bar/overview)`<any>`<br/>
Rase warning message

View File

@ -29,7 +29,7 @@ Shows the content preview.
| Name | Type | Description |
| ---- | ---- | ----------- |
| contentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the content is clicked. |
| contentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the content is clicked. |
| contentLoaded | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the content has loaded. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when an error occurs. |
| thumbnailLoaded | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the thumbnail has loaded. |

View File

@ -30,5 +30,5 @@ Generates and shows charts
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |

View File

@ -30,6 +30,6 @@ Shows a list of all available reports
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |
| reportClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ReportParametersModel`](../../../lib/insights/diagram/models/report/reportParameters.model.ts)`>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |

View File

@ -33,6 +33,6 @@ Shows the charts related to the reportId passed as input
| Name | Type | Description |
| ---- | ---- | ----------- |
| editReport | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| reportDeleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| reportSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| editReport | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |
| reportDeleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |
| reportSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |

View File

@ -44,5 +44,5 @@ The below component shows the diagram of a running process instance with the act
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | |

View File

@ -215,4 +215,3 @@ Users can save a filter if they make any changes to it in an application using t
- [Process Filter Cloud Service](../services/process-filter-cloud.service.md)
- [Local preference Cloud Service](../services/local-preference-cloud.service.md)
- [User preference Cloud Service](../services/user-preference-cloud.service.md)

View File

@ -215,4 +215,3 @@ Users can save a filter if they make any changes to it in an application using t
- [Task filters Cloud Service](../services/task-filter-cloud.service.md)
- [Local preference Cloud Service](../services/local-preference-cloud.service.md)
- [User preference Cloud Service](../services/user-preference-cloud.service.md)

View File

@ -81,8 +81,8 @@ The template defined inside `empty-form` will be shown when no form definition i
| disableCompleteButton | `boolean` | false | If true then the `Complete` outcome button is shown but it will be disabled. |
| disableSaveButton | `boolean` | false | If true then the `Save` outcome button is shown but will be disabled. |
| disableStartProcessButton | `boolean` | false | If true then the `Start Process` outcome button is shown but it will be disabled. |
| fieldValidators | [`FormFieldValidator`](../../../lib/core/form/components/widgets/core/form-field-validator.ts)`[]` | | Contains a list of form field validator instances. |
| form | [`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts) | | Underlying [form model](../../../lib/core/form/components/widgets/core/form.model.ts) instance. |
| fieldValidators | [`FormFieldValidator`](../../../lib/core/form/components/widgets/core/form-field-validator.ts)`[]` | | [FormFieldValidator](../../../lib/core/form/components/widgets/core/form-field-validator.ts) allow to override the form field validators provided. |
| form | [`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts) | | Underlying [form model](../../../lib/core/form/components/widgets/core/form.model.ts) instance. |
| formId | `string` | | Task id to fetch corresponding form and values. |
| nameNode | `string` | | Name to assign to the new node where the metadata are stored. |
| path | `string` | | Path of the folder where the metadata will be stored. |
@ -101,12 +101,12 @@ The template defined inside `empty-form` will be shown when no form definition i
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when any error occurs. |
| executeOutcome | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormOutcomeEvent`](../../../lib/core/form/components/widgets/core/form-outcome-event.model.ts)`>` | Emitted when any outcome is executed. Default behaviour can be prevented via `event.preventDefault()`. |
| formCompleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when the form is submitted with the `Complete` outcome. |
| formContentClicked | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | |
| formDataRefreshed | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when form values are refreshed due to a data property change. |
| formCompleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is submitted with the `Complete` outcome. |
| formContentClicked | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when form content is clicked. |
| formDataRefreshed | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when form values are refreshed due to a data property change. |
| formError | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormFieldModel`](../../core/models/form-field.model.md)`[]>` | Emitted when the supplied form values have a validation error. |
| formLoaded | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when the form is loaded or reloaded. |
| formSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when the form is submitted with the `Save` or custom outcomes. |
| formLoaded | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is loaded or reloaded. |
| formSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is submitted with the `Save` or custom outcomes. |
## Details

View File

@ -50,10 +50,8 @@ when the process list is empty:
| Name | Type | Default value | Description |
| ---- | ---- | ------------- | ----------- |
| appName | `string` | | The name of the application. |
| actions | `boolean` | false | Toggles the data actions column. |
| actionsPosition | `string` | "right" | Position of the actions dropdown menu. Can be "left" or "right". |
| contextMenu | `boolean` | false | Toggles custom context menu for the component. |
| appName | `string` | | The name of the application. |
| businessKey | `string` | "" | Filter the processes to display only the ones with this businessKey value. |
| id | `string` | "" | Filter the processes to display only the ones with this ID. |
| initiator | `string` | "" | Name of the initiator of the process. |
@ -65,6 +63,8 @@ when the process list is empty:
| processDefinitionId | `string` | "" | Filter the processes to display only the ones with this process definition ID. |
| processDefinitionKey | `string` | "" | Filter the processes to display only the ones with this process definition key. |
| selectionMode | `string` | "single" | Row selection mode. Can be "none", "single" or "multiple". For multiple mode, you can use Cmd (macOS) or Ctrl (Win) modifier key to toggle selection for multiple rows. |
| showActions | `boolean` | false | Toggles the data actions column. |
| showContextMenu | `boolean` | false | Toggles custom context menu for the component. |
| sorting | [`ProcessListCloudSortingModel`](../../../lib/process-services-cloud/src/lib/process/process-list/models/process-list-sorting.model.ts)`[]` | | Array of objects specifying the sort order and direction for the list. The sort parameters are for BE sorting. |
| status | `string` | "" | Filter the processes to display only the ones with this status. |
| stickyHeader | `boolean` | false | Toggles the sticky header mode. |
@ -74,12 +74,12 @@ when the process list is empty:
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when an error occurs while loading the list of process instances from the server. |
| executeRowAction | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataRowActionEvent`](../../../lib/core/datatable/components/datatable/data-row-action.event.ts)`>` | Emitted when the user executes a row action. |
| rowClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when a row in the process list is clicked. |
| rowsSelected | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any[]>` | Emitted when rows are selected/unselected. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the list of process instances has been loaded successfully from the server. |
| executeRowAction | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataRowActionEvent`](../../../lib/core/datatable/components/datatable/data-row-action.event.ts)`>` | Emitted when the user executes a row action. |
| showRowActionsMenu | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataCellEvent`](../../../lib/core/datatable/components/datatable/data-cell.event.ts)`>` | Emitted before the actions menu is displayed for a row. |
| showRowContextMenu | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataCellEvent`](../../../lib/core/datatable/components/datatable/data-cell.event.ts)`>` | Emitted before the context menu is displayed for a row. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the list of process instances has been loaded successfully from the server. |
## Details
@ -233,6 +233,7 @@ onShowRowContextMenu(event: DataCellEvent) {
]
}
```
![](../../docassets/images/context-menu-on-process-list.png)
This event is cancellable. You can use `event.preventDefault()` to prevent the default behavior.

View File

@ -49,8 +49,9 @@ Save and Complete buttons get disabled when at least one of the form's inputs ar
| ---- | ---- | ----------- |
| cancelClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when the cancel button is clicked. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when any error occurs. |
| formCompleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when the form is submitted with the `Complete` outcome. |
| formSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)`>` | Emitted when the form is saved. |
| formCompleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is submitted with the `Complete` outcome. |
| formContentClicked | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ContentLinkModel`](../../../lib/core/form/components/widgets/core/content-link.model.ts)`>` | Emitted when form content is clicked. |
| formSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is saved. |
| taskClaimed | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when the task is claimed. |
| taskCompleted | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when the task is completed. |
| taskUnclaimed | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when the task is unclaimed. |

View File

@ -51,11 +51,9 @@ when the task list is empty:
| Name | Type | Default value | Description |
| ---- | ---- | ------------- | ----------- |
| actionsPosition | `string` | "right" | Position of the actions dropdown menu. Can be "left" or "right". |
| appName | `string` | "" | The name of the application. |
| assignee | `string` | "" | The assignee of the process. Possible values are: "assignee" (the current user is the assignee), "candidate" (the current user is a task candidate", "group_x" (the task is assigned to a group where the current user is a member, no value (the current user is involved). |
| actions | `boolean` | false | Toggles the data actions column. |
| actionsPosition | `string` | "right" | Position of the actions dropdown menu. Can be "left" or "right". |
| contextMenu | `boolean` | false | Toggles custom context menu for the component. |
| createdDate | `string` | "" | Filter the tasks. Display only tasks created on the supplied date. |
| dueDate | `string` | "" | Filter the tasks. Display only tasks with dueDate equal to the supplied date. |
| id | `string` | "" | Filter the tasks. Display only tasks with id equal to the supplied value. |
@ -70,6 +68,8 @@ when the task list is empty:
| processDefinitionId | `string` | "" | Filter the tasks. Display only tasks with processDefinitionId equal to the supplied value. |
| processInstanceId | `string` | "" | Filter the tasks. Display only tasks with processInstanceId equal to the supplied value. |
| selectionMode | `string` | "single" | Row selection mode. Can be none, `single` or `multiple`. For `multiple` mode, you can use the Cmd (macOS) or Ctrl (Win) modifier key to toggle selection for multiple rows. |
| showActions | `boolean` | false | Toggles the data actions column. |
| showContextMenu | `boolean` | false | Toggles custom context menu for the component. |
| sorting | [`TaskListCloudSortingModel`](../../../lib/process-services-cloud/src/lib/task/task-list/models/task-list-sorting.model.ts)`[]` | | Specifies how the table should be sorted. The parameters are for BE sorting. |
| standAlone | `boolean` | false | Filter the tasks. Display only the tasks that belong to a process in case is false or tasks that doesn't belong to a process in case of true. |
| status | `string` | "" | Filter the tasks. Display only tasks with status equal to the supplied value. |
@ -80,12 +80,12 @@ when the task list is empty:
| Name | Type | Description |
| ---- | ---- | ----------- |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when an error occurs. |
| executeRowAction | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataRowActionEvent`](../../../lib/core/datatable/components/datatable/data-row-action.event.ts)`>` | Emitted when the user executes a row action. |
| rowClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<string>` | Emitted when a task in the list is clicked |
| rowsSelected | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any[]>` | Emitted when rows are selected/unselected |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the task list is loaded |
| executeRowAction | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataRowActionEvent`](../../../lib/core/datatable/components/datatable/data-row-action.event.ts)`>` | Emitted when the user executes a row action. |
| showRowActionsMenu | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataCellEvent`](../../../lib/core/datatable/components/datatable/data-cell.event.ts)`>` | Emitted before the actions menu is displayed for a row. |
| showRowContextMenu | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`DataCellEvent`](../../../lib/core/datatable/components/datatable/data-cell.event.ts)`>` | Emitted before the context menu is displayed for a row. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the task list is loaded |
## Details
@ -225,7 +225,7 @@ You can customize the styling of a column and also add features like tooltips an
Emitted before the context menu is displayed for a row.
Note that the TaskListCloudComponent itself does not populate the context menu with items.
Note that the [`TaskListCloudComponent`](../../process-services-cloud/components/task-list-cloud.component.md) itself does not populate the context menu with items.
You can provide all necessary content via the handler.
```html
@ -255,11 +255,12 @@ onShowRowContextMenu(event: DataCellEvent) {
]
}
```
![](../../docassets/images/task-list-cloud-context-menu.png)
This event is cancellable. You can use `event.preventDefault()` to prevent the default behavior.
The TaskListCloudComponent will automatically render the supplied menu items.
The [`TaskListCloudComponent`](../../process-services-cloud/components/task-list-cloud.component.md) will automatically render the supplied menu items.
See the [ContextMenu](https://www.npmjs.com/package/ng2-alfresco-core)
documentation for more details on the format and behavior of context actions.
@ -278,7 +279,7 @@ value: {
}
```
Note that the TaskListCloudComponent itself does not populate the action menu with items.
Note that the [`TaskListCloudComponent`](../../process-services-cloud/components/task-list-cloud.component.md) itself does not populate the action menu with items.
You can provide all necessary content via the handler.
This event is cancellable. You can use `event.preventDefault()` to prevent the default behavior.
@ -288,7 +289,7 @@ This event is cancellable. You can use `event.preventDefault()` to prevent the d
Emitted when the user executes a row action.
This usually accompanies a `showRowActionsMenu` event.
The TaskListCloudComponent itself does not execute actions but provides support for external
The [`TaskListCloudComponent`](../../process-services-cloud/components/task-list-cloud.component.md) itself does not execute actions but provides support for external
integration. If actions are provided using the `showRowActionsMenu` event
then `executeRowAction` will be automatically executed when the user clicks a
corresponding menu item.
@ -327,7 +328,7 @@ onExecuteRowAction(event: DataRowActionEvent) {
You can use any payloads for row actions. The only requirement for the objects is that they
must have a `title` property.
When an action is selected in the dropdown menu, the TaskListCloudComponent invokes the `executeRowAction` event.
When an action is selected in the dropdown menu, the [`TaskListCloudComponent`](../../process-services-cloud/components/task-list-cloud.component.md) invokes the `executeRowAction` event.
Use this to handle the response, inspect the action payload (and all custom properties defined
earlier), and perform the corresponding actions.

View File

@ -78,12 +78,12 @@ class MyComponent {
- _appName:_ `string` - Name of the app
- _taskId:_ `string` - ID of the target task
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskVariableCloud`](../../../lib/process-services-cloud/src/lib/form/models/task-variable-cloud.model.ts)`[]>` - Task variables
- **parseForm**(json: `any`, data?: [`TaskVariableCloud`](../../../lib/process-services-cloud/src/lib/form/models/task-variable-cloud.model.ts)`[]`, readOnly: `boolean` = `false`): [`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts)<br/>
- **parseForm**(json: `any`, data?: [`TaskVariableCloud`](../../../lib/process-services-cloud/src/lib/form/models/task-variable-cloud.model.ts)`[]`, readOnly: `boolean` = `false`): [`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts)<br/>
Parses JSON data to create a corresponding form.
- _json:_ `any` - JSON data to create the form
- _data:_ [`TaskVariableCloud`](../../../lib/process-services-cloud/src/lib/form/models/task-variable-cloud.model.ts)`[]` - (Optional) Values for the form's fields
- _readOnly:_ `boolean` - Toggles whether or not the form should be read-only
- **Returns** [`FormCloud`](../../../lib/process-services-cloud/src/lib/form/models/form-cloud.model.ts) - [Form](../../../lib/process-services/src/lib/task-list/models/form.model.ts) created from the JSON specification
- **Returns** [`FormModel`](../../../lib/core/form/components/widgets/core/form.model.ts) - [Form](../../../lib/process-services/src/lib/task-list/models/form.model.ts) created from the JSON specification
- **saveTaskForm**(appName: `string`, taskId: `string`, processInstanceId: `string`, formId: `string`, formValues: [`FormValues`](../../../lib/core/form/components/widgets/core/form-values.ts)): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskDetailsCloudModel`](../../../lib/process-services-cloud/src/lib/task/start-task/models/task-details-cloud.model.ts)`>`<br/>
Saves a task form.
- _appName:_ `string` - Name of the app

View File

@ -13,35 +13,26 @@ Manages Local Storage preferences.
### Methods
- **createPreference**(appName: `string`, key: `string`, newPreference: `any`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
- **createPreference**(key: `string`, newPreference: `any`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
Creates local preference.
- _appName:_ `string` - Name of the target app
- _key:_ `string` - Key of the target preference
- _newPreference:_ `any` -
- _newPreference:_ `any` - Details of new local preference
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - Observable of created local preferences
- **deletePreference**(key: `string`, preferences: `any`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
Deletes local preference by given preference key.
- _key:_ `string` - Key of the target preference
- _preferences:_ `any` - Details of updated preferences
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - Observable of preferences without deleted preference
- **getPreferenceByKey**(appName: `string`, key: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
- **getPreferenceByKey**(key: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
Gets local preference.
- _appName:_ `string` - Name of the target app
- _key:_ `string` - Key of the target preference
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - Observable of local preference
- **getPreferences**(appName: `string`, key: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
- **getPreferences**(key: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
Gets local preferences
- _appName:_ `string` - Name of the target app
- _key:_ `string` - (Optional) (Optional) (Optional) (Optional)
- _key:_ `string` - (Optional)
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - List of local preferences
- **prepareLocalPreferenceResponse**(key: `string`): `any`<br/>
- _key:_ `string` -
- **Returns** `any` -
- **updatePreference**(appName: `string`, key: `string`, updatedPreference: `any`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
- **updatePreference**(key: `string`, updatedPreference: `any`): [`Observable`](http://reactivex.io/documentation/observable.html)`<any>`<br/>
Updates local preference.
- _appName:_ `string` - Name of the target app
- _key:_ `string` - Key of the target preference
- _updatedPreference:_ `any` - Details of updated preference
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<any>` - Observable of updated local preferences

View File

@ -56,7 +56,6 @@ import { LocalPreferenceCloudService, PROCESS_FILTERS_SERVICE_TOKEN } from '@alf
]
})
export class ExampleModule {}
```
If you would like to inject the [User Preference Cloud Service](../../process-services-cloud/services/user-preference-cloud.service.md), you can inject the service like below shown
@ -74,7 +73,6 @@ import { UserPreferenceCloudService, PROCESS_FILTERS_SERVICE_TOKEN } from '@alfr
]
})
export class ExampleModule {}
```
## See also

View File

@ -21,11 +21,11 @@ Manages task filters.
Deletes a task filter
- _deletedFilter:_ [`TaskFilterCloudModel`](../../../lib/process-services-cloud/src/lib/task/task-filters/models/filter-cloud.model.ts) -
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskFilterCloudModel`](../../../lib/process-services-cloud/src/lib/task/task-filters/models/filter-cloud.model.ts)`[]>` - Observable of task instance filters without deleted filter
- **getTaskFilterById**(appName: `string`, id: `string`): `any`<br/>
- **getTaskFilterById**(appName: `string`, id: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskFilterCloudModel`](../../../lib/process-services-cloud/src/lib/task/task-filters/models/filter-cloud.model.ts)`>`<br/>
Gets a task filter.
- _appName:_ `string` - Name of the target app
- _id:_ `string` - ID of the task
- **Returns** `any` - Details of the task filter
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskFilterCloudModel`](../../../lib/process-services-cloud/src/lib/task/task-filters/models/filter-cloud.model.ts)`>` - Details of the task filter
- **getTaskListFilters**(appName?: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskFilterCloudModel`](../../../lib/process-services-cloud/src/lib/task/task-filters/models/filter-cloud.model.ts)`[]>`<br/>
Gets all task filters for a task app.
- _appName:_ `string` - (Optional) Name of the target app
@ -74,10 +74,9 @@ import { LocalPreferenceCloudService, TASK_FILTERS_SERVICE_TOKEN } from '@alfres
]
})
export class ExampleModule {}
```
If you would like to inject the [UserPreferenceCloudService](../../process-services-cloud/services/user-preference-cloud.service.md), you can inject the service like below shown
If you would like to inject the [`UserPreferenceCloudService`](../../process-services-cloud/services/user-preference-cloud.service.md), you can inject the service like below shown
```ts
import { NgModule } from '@angular/core';
@ -92,7 +91,6 @@ import { UserPreferenceCloudService, TASK_FILTERS_SERVICE_TOKEN } from '@alfresc
]
})
export class ExampleModule {}
```
## See also

View File

@ -47,4 +47,4 @@ Manages user preferences.
## See also
- [Local preference Cloud Service](local-preference-cloud.service.md)
- [Local preference Cloud Service](local-preference-cloud.service.md)

View File

@ -39,7 +39,7 @@ special sub-components in the body of the `<adf-people-search>` element:
| Name | Type | Description |
| ---- | ---- | ----------- |
| closeSearch | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the "close" button is clicked. |
| closeSearch | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the "close" button is clicked. |
| searchPeople | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when a search is performed with a new keyword. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`UserProcessModel`](../../core/models/user-process.model.md)`>` | Emitted when a user is selected and the action button is clicked. |

View File

@ -67,9 +67,9 @@ A default template will be used if you don't supply a custom one to override it:
| Name | Type | Description |
| ---- | ---- | ----------- |
| attachmentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the attachment is double-clicked or the view option is selected from the context menu by the user from within the component. Returns a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) representing the object that was clicked. |
| attachmentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the attachment is double-clicked or the view option is selected from the context menu by the user from within the component. Returns a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) representing the object that was clicked. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the attachment list is not able to fetch the attachments (eg, following a network error). |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the attachment list has fetched all the attachments. Returns a list of attachments. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the attachment list has fetched all the attachments. Returns a list of attachments. |
## Details

View File

@ -61,9 +61,9 @@ A default "no content" template is displayed if you don't supply one to override
| Name | Type | Description |
| ---- | ---- | ----------- |
| attachmentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the attachment is double-clicked or a view option is selected from the context menu by the user from within the component. Returns a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) representing the clicked object. |
| attachmentClick | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the attachment is double-clicked or a view option is selected from the context menu by the user from within the component. Returns a [Blob](https://developer.mozilla.org/en-US/docs/Web/API/Blob) representing the clicked object. |
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when an error occurs while fetching the attachments. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<Object>` | Emitted when the attachment list has fetched all the attachments. Returns a list of attachments. |
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<>` | Emitted when the attachment list has fetched all the attachments. Returns a list of attachments. |
## Details

View File

@ -15,7 +15,7 @@ Manage Process Filters, which are pre-configured Process Instance queries.
- **addProcessFilter**(filter: [`FilterProcessRepresentationModel`](../../../lib/process-services/src/lib/process-list/models/filter-process.model.ts)): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`FilterProcessRepresentationModel`](../../../lib/process-services/src/lib/process-list/models/filter-process.model.ts)`>`<br/>
Adds a filter.
- _filter:_ [`FilterProcessRepresentationModel`](../../../lib/process-services/src/lib/src/lib/process-list/models/filter-process.model.ts) - The filter to add
- _filter:_ [`FilterProcessRepresentationModel`](../../../lib/process-services/src/lib/process-list/models/filter-process.model.ts) - The filter to add
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`FilterProcessRepresentationModel`](../../../lib/process-services/src/lib/process-list/models/filter-process.model.ts)`>` - The filter just added
- **callApiProcessFilters**(appId?: `number`): [`Promise`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises)`<`[`ResultListDataRepresentationUserProcessInstanceFilterRepresentation`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/activiti-rest-api/docs/ResultListDataRepresentation%C2%ABUserProcessInstanceFilterRepresentation%C2%BB.md)`>`<br/>
Calls `getUserProcessInstanceFilters` from the Alfresco JS API.

View File

@ -62,7 +62,7 @@ Manages Task Instances.
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob)`>` - Binary PDF data
- **findAllTaskByState**(requestNode: [`TaskQueryRequestRepresentationModel`](../../../lib/process-services/src/lib/task-list/models/filter.model.ts), state?: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskListModel`](../../../lib/process-services/src/lib/task-list/models/task-list.model.ts)`>`<br/>
Gets all tasks matching a query and state value.
- _requestNode:_ [`TaskQueryRequestRepresentationModel`](../../../lib/process-services/src/lib/ask-list/models/filter.model.ts) - Query to search for tasks.
- _requestNode:_ [`TaskQueryRequestRepresentationModel`](../../../lib/process-services/src/lib/task-list/models/filter.model.ts) - Query to search for tasks.
- _state:_ `string` - (Optional) Task state. Can be "open" or "completed".
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskListModel`](../../../lib/process-services/src/lib/task-list/models/task-list.model.ts)`>` - List of tasks
- **findAllTasksWithoutState**(requestNode: [`TaskQueryRequestRepresentationModel`](../../../lib/process-services/src/lib/task-list/models/filter.model.ts)): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskListModel`](../../../lib/process-services/src/lib/task-list/models/task-list.model.ts)`>`<br/>
@ -102,7 +102,7 @@ Manages Task Instances.
Checks if a taskId is filtered with the given filter.
- _taskId:_ `string` - ID of the target task
- _filterModel:_ [`FilterRepresentationModel`](../../../lib/process-services/src/lib/task-list/models/filter.model.ts) - The filter you want to check
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`FilterRepresentationModel`](../../../lib/process-services/task-list/models/filter.model.ts)`>` - The filter if it is related or null otherwise
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`FilterRepresentationModel`](../../../lib/process-services/src/lib/task-list/models/filter.model.ts)`>` - The filter if it is related or null otherwise
- **unclaimTask**(taskId: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskDetailsModel`](../../../lib/process-services/src/lib/task-list/models/task-details.model.ts)`>`<br/>
Un-claims a task for the current user.
- _taskId:_ `string` - ID of the task to unclaim

View File

@ -57,8 +57,8 @@ Below the most relevant features of this release.
- Process and [Task attachment list component](../process-services/components/task-attachment-list.component.md)
- Add [people Component](../process-services/components/people.component.md)
- Breadcrumb root path personalisation
- [`Form`](../../lib/process-services/task-list/models/form.model.ts) events bus
- [`Form`](../../lib/process-services/task-list/models/form.model.ts) render independent from APS
- [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) events bus
- [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) render independent from APS
- Application settings (server-side)
- Proxy settings and CORS
- Login restyling
@ -255,7 +255,7 @@ for further details.
### 11. Form render independent from APS
The 1.6.1 release lays a foundation for making a [`Form`](../../lib/process-services/task-list/models/form.model.ts) renderer independent from the backend and APS services to allow more granular control of how it works and where takes/stores its data.
The 1.6.1 release lays a foundation for making a [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) renderer independent from the backend and APS services to allow more granular control of how it works and where takes/stores its data.
#### Binding "form" definition
@ -279,7 +279,7 @@ And the underlying component controller code can be as follows:
#### Parsing form definitions
The [`FormService`](../core/services/form.service.md) got a new API to parse form definitions from JSON into the [`FormModel`](../../lib/core/form/components/widgets/core/form.model.ts) instances without using [`Form`](../../lib/process-services/task-list/models/form.model.ts) Component like it was previously.
The [`FormService`](../core/services/form.service.md) got a new API to parse form definitions from JSON into the [`FormModel`](../../lib/core/form/components/widgets/core/form.model.ts) instances without using [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Component like it was previously.
formService.parseForm(formDefinitionJSON)
@ -374,7 +374,7 @@ Below you can find a detailed list of tickets addressed in the new release. For
- \[[ADF-713](https://issues.alfresco.com/jira/browse/ADF-713)] - Process Attachment - Provide a way to attach a new content
- \[[ADF-793](https://issues.alfresco.com/jira/browse/ADF-793)] - Convert to PDF the document that the [renditions service](../core/services/renditions.service.md) provide
- \[[ADF-804](https://issues.alfresco.com/jira/browse/ADF-804)] - Add proxy configuration in demo shell
- \[[ADF-843](https://issues.alfresco.com/jira/browse/ADF-843)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) events bus
- \[[ADF-843](https://issues.alfresco.com/jira/browse/ADF-843)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) events bus
- \[[ADF-845](https://issues.alfresco.com/jira/browse/ADF-845)] - Breadcrumb path personalisation
- \[[ADF-847](https://issues.alfresco.com/jira/browse/ADF-847)] - Use application settings file instead of local storage for server URLs

View File

@ -317,7 +317,7 @@ Release Notes - Apps Development Framework - Version 1.7.
### Feature
- \[[ADF-914](https://issues.alfresco.com/jira/browse/ADF-914)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) section in the demo shell
- \[[ADF-914](https://issues.alfresco.com/jira/browse/ADF-914)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) section in the demo shell
- \[[ADF-918](https://issues.alfresco.com/jira/browse/ADF-918)] - Activiti Start Task - Refactoring
- \[[ADF-920](https://issues.alfresco.com/jira/browse/ADF-920)] - Process Header Component - Use the CardView component
- \[[ADF-970](https://issues.alfresco.com/jira/browse/ADF-970)] - Attachment Task/process list - add template for empty list
@ -345,7 +345,7 @@ Release Notes - Apps Development Framework - Version 1.7.
- \[[ADF-939](https://issues.alfresco.com/jira/browse/ADF-939)] - [Login] Sign in button does not stay at the bottom
- \[[ADF-943](https://issues.alfresco.com/jira/browse/ADF-943)] - APS [`ContentApi`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/api/content.api.ts) is not present on index.d.ts and [`SitesApi`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/api/sites.api.ts) is not complete
- \[[ADF-945](https://issues.alfresco.com/jira/browse/ADF-945)] - 'Undefined' is displayed in 'attach file' widget after restore.
- \[[ADF-950](https://issues.alfresco.com/jira/browse/ADF-950)] - when the [`Form`](../../lib/process-services/task-list/models/form.model.ts) in readonly mode you can edit the date
- \[[ADF-950](https://issues.alfresco.com/jira/browse/ADF-950)] - when the [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) in readonly mode you can edit the date
- \[[ADF-957](https://issues.alfresco.com/jira/browse/ADF-957)] - Duplicate Rest calls are made for fields where Rest end points are given
- \[[ADF-966](https://issues.alfresco.com/jira/browse/ADF-966)] - Data table doesn't update on async loading
- \[[ADF-978](https://issues.alfresco.com/jira/browse/ADF-978)] - No warning message is displayed to the user when minor changes are made on Settings.
@ -356,7 +356,7 @@ Release Notes - Apps Development Framework - Version 1.7.
- \[[ADF-1026](https://issues.alfresco.com/jira/browse/ADF-1026)] - Default "empty" document list view should be translatable.
- \[[ADF-1047](https://issues.alfresco.com/jira/browse/ADF-1047)] - AlfrescoSettingsService defaults to 'ALL' on page reload
- \[[ADF-1048](https://issues.alfresco.com/jira/browse/ADF-1048)] - Multiple files attached to a task within a form are not displayed
- \[[ADF-1056](https://issues.alfresco.com/jira/browse/ADF-1056)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) List Component does not display the forms of the user
- \[[ADF-1056](https://issues.alfresco.com/jira/browse/ADF-1056)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) List Component does not display the forms of the user
- \[[ADF-1068](https://issues.alfresco.com/jira/browse/ADF-1068)] - Files can be uploaded using drag and drop when 'enable file' is unchecked
- \[[ADF-1070](https://issues.alfresco.com/jira/browse/ADF-1070)] - [User preferences service](../core/services/user-preferences.service.md) does not restore prefix on page reload.
- \[[ADF-1072](https://issues.alfresco.com/jira/browse/ADF-1072)] - Unsupported type of file attached to a task or process can not be converted to pdf
@ -365,16 +365,16 @@ Release Notes - Apps Development Framework - Version 1.7.
- \[[ADF-1081](https://issues.alfresco.com/jira/browse/ADF-1081)] - Scroll bar is missing in [comments component](../core/components/comments.component.md)
- \[[ADF-1097](https://issues.alfresco.com/jira/browse/ADF-1097)] - File with unaccepted extension is uploaded when 'Format' is set to 'All files'
- \[[ADF-1134](https://issues.alfresco.com/jira/browse/ADF-1134)] - [Document List] Selection events not raised for certain scenarios
- \[[ADF-1138](https://issues.alfresco.com/jira/browse/ADF-1138)] - Start Task [`Form`](../../lib/process-services/task-list/models/form.model.ts) Assignee dropdown show null value inside
- \[[ADF-1138](https://issues.alfresco.com/jira/browse/ADF-1138)] - Start Task [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Assignee dropdown show null value inside
- \[[ADF-1140](https://issues.alfresco.com/jira/browse/ADF-1140)] - Task header - Wrong parent name key
- \[[ADF-1142](https://issues.alfresco.com/jira/browse/ADF-1142)] - Cannot add comment into a process.
- \[[ADF-1143](https://issues.alfresco.com/jira/browse/ADF-1143)] - [TaskList] - Not able to start a task when changing the assignee from the 'Start Task' form.
- \[[ADF-1147](https://issues.alfresco.com/jira/browse/ADF-1147)] - [Processes] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) is not rendered properly when starting a new process.
- \[[ADF-1147](https://issues.alfresco.com/jira/browse/ADF-1147)] - [Processes] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) is not rendered properly when starting a new process.
- \[[ADF-1148](https://issues.alfresco.com/jira/browse/ADF-1148)] - [TaskList] - 'Description' is not rendered.
- \[[ADF-1149](https://issues.alfresco.com/jira/browse/ADF-1149)] - 'Remove' involved people of a task button is displayed behind the dialog
- \[[ADF-1151](https://issues.alfresco.com/jira/browse/ADF-1151)] - [Processes] - 'Show Diagram' option is not displayed.
- \[[ADF-1155](https://issues.alfresco.com/jira/browse/ADF-1155)] - The Process and Task filters are not displayed properly in ADF for applications created in APS
- \[[ADF-1162](https://issues.alfresco.com/jira/browse/ADF-1162)] - List with forms is not displayed inside [`Form`](../../lib/process-services/task-list/models/form.model.ts) List.
- \[[ADF-1162](https://issues.alfresco.com/jira/browse/ADF-1162)] - List with forms is not displayed inside [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) List.
- \[[ADF-1168](https://issues.alfresco.com/jira/browse/ADF-1168)] - Tasks header component and Processes header component have different margins
- \[[ADF-1169](https://issues.alfresco.com/jira/browse/ADF-1169)] - [Start Task] - Missing date validation
- \[[ADF-1175](https://issues.alfresco.com/jira/browse/ADF-1175)] - Start Process and Start Task Forms don't close when Cancel button is clicked

View File

@ -52,10 +52,10 @@ Below the most relevant features of this release:
- Theming ADF component
- [Info Drawer component](../core/components/info-drawer.component.md)
- [`Form`](../../lib/process-services/task-list/models/form.model.ts) style component enhancements
- [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) style component enhancements
- Empty form template
- Additional data sources input for Document List
- [`Form`](../../lib/process-services/task-list/models/form.model.ts) validation enhancements
- [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) validation enhancements
- FormFieldModel/FormModelimprovements
- DataTable\*\* \*\*Accessibility Improvements
- Copy and move component enhancements
@ -100,12 +100,12 @@ You can now add an empty template that will be shown if no form definition are p
### 5. Form Validation Enhancements
New events that allow taking control over the [`Form`](../../lib/process-services/task-list/models/form.model.ts) and Field validation:
New events that allow taking control over the [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) and Field validation:
validateForm: Subject<ValidateFormEvent>
validateFormField: Subject<ValidateFormFieldEvent>()
The [validateForm](../core/services/form.service.md) event is raised every time the entire [`Form`](../../lib/process-services/task-list/models/form.model.ts) is re-validated. This happens also every time a field value or some of the properties is changed (for example the "required" property). The [validateFormField](../core/services/form.service.md) event is raised every time a single [`Form`](../../lib/process-services/task-list/models/form.model.ts) Field is re-validated.
The [validateForm](../core/services/form.service.md) event is raised every time the entire [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) is re-validated. This happens also every time a field value or some of the properties is changed (for example the "required" property). The [validateFormField](../core/services/form.service.md) event is raised every time a single [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Field is re-validated.
Both events are "cancellable", that means you can apply your own validation rules, change corresponding field validation state, or even prevent the default behaviour if needed.
@ -127,7 +127,7 @@ Example:
#### FormFieldModel
The "required" property now re-validates the corresponding Field and entire [`Form`](../../lib/process-services/task-list/models/form.model.ts) upon every change. That enables scenarios when the "required" constraint is changed dynamically for a field based on some external factors.
The "required" property now re-validates the corresponding Field and entire [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) upon every change. That enables scenarios when the "required" constraint is changed dynamically for a field based on some external factors.
#### FormModel
@ -135,9 +135,9 @@ New "getFieldById" method to simplify certain scenarios when accessing multiple
getFieldById(fieldId: string): FormFieldModel
The [`Form`](../../lib/process-services/task-list/models/form.model.ts) now controls all Field validators. It becomes possible managing existing validator instances, replacing them, or extending form validation with custom rules and error messages. The "adf-form" component now also supports binding custom validator sets to the underlying [FormModel,](../../lib/core/form/components/widgets/core/form.model.ts) that allows defining validation sets in your code and binding via HTML.
The [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) now controls all Field validators. It becomes possible managing existing validator instances, replacing them, or extending form validation with custom rules and error messages. The "adf-form" component now also supports binding custom validator sets to the underlying [FormModel,](../../lib/core/form/components/widgets/core/form.model.ts) that allows defining validation sets in your code and binding via HTML.
You can read more details on the new Validation layer in the [`Form`](../../lib/process-services/task-list/models/form.model.ts) readme: [Form Field Validators](../core/interfaces/form-field-validator.interface.md). The "demo shell" application has been also extended to demonstrate custom validators in action. You can check the code here: [Demo Field Validator](../core/interfaces/form-field-validator.interface.md).
You can read more details on the new Validation layer in the [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) readme: [Form Field Validators](../core/interfaces/form-field-validator.interface.md). The "demo shell" application has been also extended to demonstrate custom validators in action. You can check the code here: [Demo Field Validator](../core/interfaces/form-field-validator.interface.md).
### 7. DataTable Accessibility Improvements
@ -470,7 +470,7 @@ Release Notes - Apps Development Framework - Version 1.8.
- \[[ADF-1360](https://issues.alfresco.com/jira/browse/ADF-1360)] - An error appears in console when clicking on Content Services in Demo Shell
- \[[ADF-1368](https://issues.alfresco.com/jira/browse/ADF-1368)] - A file deleted from Document List is still displayed as uploaded in Uploader
- \[[ADF-1370](https://issues.alfresco.com/jira/browse/ADF-1370)] - PDF viewer not using web worker
- \[[ADF-1384](https://issues.alfresco.com/jira/browse/ADF-1384)] - ADF [`Form`](../../lib/process-services/task-list/models/form.model.ts) - The placeholder is overlapping the label
- \[[ADF-1384](https://issues.alfresco.com/jira/browse/ADF-1384)] - ADF [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - The placeholder is overlapping the label
- \[[ADF-1386](https://issues.alfresco.com/jira/browse/ADF-1386)] - if pagination attribute is undefined shows inconsistent range
- \[[ADF-1394](https://issues.alfresco.com/jira/browse/ADF-1394)] - Favorites Api not passing the "include" settings to server
- \[[ADF-1395](https://issues.alfresco.com/jira/browse/ADF-1395)] - The title of the reports is not aligned.
@ -508,8 +508,8 @@ Release Notes - Apps Development Framework - Version 1.8.
- \[[ADF-1502](https://issues.alfresco.com/jira/browse/ADF-1502)] - AoT problems when using ADF with Angular CLI
- \[[ADF-1509](https://issues.alfresco.com/jira/browse/ADF-1509)] - ['Form](../../lib/process-services/task-list/models/form.model.ts) Name' displays 'No form' after editing 'Due Date' or 'Description'.
- \[[ADF-1510](https://issues.alfresco.com/jira/browse/ADF-1510)] - Report button tooltips are missing translation.
- \[[ADF-1512](https://issues.alfresco.com/jira/browse/ADF-1512)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) is expanding when required label is displayed.
- \[[ADF-1513](https://issues.alfresco.com/jira/browse/ADF-1513)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) List doesn't display form Tabs.
- \[[ADF-1512](https://issues.alfresco.com/jira/browse/ADF-1512)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) is expanding when required label is displayed.
- \[[ADF-1513](https://issues.alfresco.com/jira/browse/ADF-1513)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) List doesn't display form Tabs.
## New Feature
@ -544,7 +544,7 @@ Release Notes - Apps Development Framework - Version 1.8.
- \[[ADF-714](https://issues.alfresco.com/jira/browse/ADF-714)] - Unify pagination across all components
- \[[ADF-1116](https://issues.alfresco.com/jira/browse/ADF-1116)] - Task list without any status filter
- \[[ADF-1139](https://issues.alfresco.com/jira/browse/ADF-1139)] - People Search - Provide a way to reset the search field when a user is selected
- \[[ADF-852](https://issues.alfresco.com/jira/browse/ADF-852)] - [Form] Update [`Form`](../../lib/process-services/task-list/models/form.model.ts) widget to Material library
- \[[ADF-852](https://issues.alfresco.com/jira/browse/ADF-852)] - [Form] Update [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) widget to Material library
- \[[ADF-520](https://issues.alfresco.com/jira/browse/ADF-520)] - remove the debug button from [Analytics Component](../insights/components/analytics.component.md)
- \[[ADF-157](https://issues.alfresco.com/jira/browse/ADF-157)] - upload dialog Wrong number on File Upload Count - 1511 Github
- \[[ADF-569](https://issues.alfresco.com/jira/browse/ADF-569)] - Provide support to Undo uploaded files in the Upload component

View File

@ -262,7 +262,7 @@ Release Notes - Apps Development Framework - Version 1.9.
- \[[ADF-1523](https://issues.alfresco.com/jira/browse/ADF-1523)] - APS task form remains disabled when no custom outcome is provided in ADF 1.8.
- \[[ADF-1525](https://issues.alfresco.com/jira/browse/ADF-1525)] - In APS forms, hyperlink fields are not rendered when configured with process variables
- \[[ADF-1526](https://issues.alfresco.com/jira/browse/ADF-1526)] - The [form component](../core/components/form.component.md) is not responsive in ADF 1.8.
- \[[ADF-1528](https://issues.alfresco.com/jira/browse/ADF-1528)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) renderer does not display generated documents - github 2303
- \[[ADF-1528](https://issues.alfresco.com/jira/browse/ADF-1528)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) renderer does not display generated documents - github 2303
- \[[ADF-1529](https://issues.alfresco.com/jira/browse/ADF-1529)] - Broken styles for toolbar buttons.
- \[[ADF-1530](https://issues.alfresco.com/jira/browse/ADF-1530)] - [Viewer] Extension viewer doens't work anymore
- \[[ADF-1533](https://issues.alfresco.com/jira/browse/ADF-1533)] - Multi-line form field contains a bug where red required warnings are shown incorrectly
@ -323,7 +323,7 @@ Release Notes - Apps Development Framework - Version 1.9.
- \[[ADF-1662](https://issues.alfresco.com/jira/browse/ADF-1662)] - [User info] name is not centered
- \[[ADF-1664](https://issues.alfresco.com/jira/browse/ADF-1664)] - [Login component] icon show password dark theme
- \[[ADF-1666](https://issues.alfresco.com/jira/browse/ADF-1666)] - Comments can not be added to completed tasks and processes
- \[[ADF-1667](https://issues.alfresco.com/jira/browse/ADF-1667)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) component displays 'Nameless Task'
- \[[ADF-1667](https://issues.alfresco.com/jira/browse/ADF-1667)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component displays 'Nameless Task'
- \[[ADF-1668](https://issues.alfresco.com/jira/browse/ADF-1668)] - The task or process details are not loaded when double clicked
- \[[ADF-1669](https://issues.alfresco.com/jira/browse/ADF-1669)] - Attach File widget doesn't display file after complete.
- \[[ADF-1671](https://issues.alfresco.com/jira/browse/ADF-1671)] - Widgets don't display value if they have visibility conditions related to multiline text widget.
@ -360,7 +360,7 @@ Release Notes - Apps Development Framework - Version 1.9.
- \[[ADF-1543](https://issues.alfresco.com/jira/browse/ADF-1543)] - Use Muli font embedded in the "index.html" page
- \[[ADF-1548](https://issues.alfresco.com/jira/browse/ADF-1548)] - Remove "forRoot" functions from all the component modules
- \[[ADF-1584](https://issues.alfresco.com/jira/browse/ADF-1584)] - Userinfo component change text color
- \[[ADF-1608](https://issues.alfresco.com/jira/browse/ADF-1608)] - Start [`Form`](../../lib/process-services/task-list/models/form.model.ts) - Improve the unit test cases
- \[[ADF-1608](https://issues.alfresco.com/jira/browse/ADF-1608)] - Start [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - Improve the unit test cases
- \[[ADF-1634](https://issues.alfresco.com/jira/browse/ADF-1634)] - Action toolbar for PDF viewer
- \[[ADF-1676](https://issues.alfresco.com/jira/browse/ADF-1676)] - Switch off all fake buttons in the Viewer

View File

@ -736,7 +736,7 @@ Release Notes - Apps Development Framework - Version 2.0.
- \[[ADF-1815](https://issues.alfresco.com/jira/browse/ADF-1815)] - Sorting content by name is not working properly
- \[[ADF-1818](https://issues.alfresco.com/jira/browse/ADF-1818)] - Add Missing Create person API in JS-API
- \[[ADF-1824](https://issues.alfresco.com/jira/browse/ADF-1824)] - Moment js security issue
- \[[ADF-1825](https://issues.alfresco.com/jira/browse/ADF-1825)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) field in start task no aligned
- \[[ADF-1825](https://issues.alfresco.com/jira/browse/ADF-1825)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) field in start task no aligned
- \[[ADF-1827](https://issues.alfresco.com/jira/browse/ADF-1827)] - 'Object Object' displayed on search results page
- \[[ADF-1829](https://issues.alfresco.com/jira/browse/ADF-1829)] - [`PeopleApi`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/api/people.api.ts) - getSiteMembership wrong returned type
- \[[ADF-1830](https://issues.alfresco.com/jira/browse/ADF-1830)] - Cannot access processes or reports
@ -753,7 +753,7 @@ Release Notes - Apps Development Framework - Version 2.0.
- \[[ADF-1866](https://issues.alfresco.com/jira/browse/ADF-1866)] - Accordion Component - Doesn't allow to close the menu
- \[[ADF-1871](https://issues.alfresco.com/jira/browse/ADF-1871)] - Tasklist IE 11 crash
- \[[ADF-1872](https://issues.alfresco.com/jira/browse/ADF-1872)] - TaskList Component - Doesn't show the currentTaskId highlited
- \[[ADF-1875](https://issues.alfresco.com/jira/browse/ADF-1875)] - [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) Component - Doesn't show the currentProcessId highlighted
- \[[ADF-1875](https://issues.alfresco.com/jira/browse/ADF-1875)] - [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) Component - Doesn't show the currentProcessId highlighted
- \[[ADF-1877](https://issues.alfresco.com/jira/browse/ADF-1877)] - Layout demo shell not localized
- \[[ADF-1878](https://issues.alfresco.com/jira/browse/ADF-1878)] - [Translation service](../core/services/translation.service.md) not using fallback language for unsupported locale
- \[[ADF-1879](https://issues.alfresco.com/jira/browse/ADF-1879)] - ADF Process Services is not working properly
@ -766,7 +766,7 @@ Release Notes - Apps Development Framework - Version 2.0.
- \[[ADF-1902](https://issues.alfresco.com/jira/browse/ADF-1902)] - Buttons of the Create / Edit folder dialog do not match design
- \[[ADF-1907](https://issues.alfresco.com/jira/browse/ADF-1907)] - [`UploadService`](../core/services/upload.service.md) is not exported from [`UploadModule`](../../lib/content-services/upload/upload.module.ts)
- \[[ADF-1908](https://issues.alfresco.com/jira/browse/ADF-1908)] - Not able to select a form on Start Task
- \[[ADF-1909](https://issues.alfresco.com/jira/browse/ADF-1909)] - [`TaskListModel`](../../lib/process-services/task-list/models/task-list.model.ts) is not exported from ActivitiTaskListModule
- \[[ADF-1909](https://issues.alfresco.com/jira/browse/ADF-1909)] - [`TaskListModel`](../../lib/process-services/src/lib/task-list/models/task-list.model.ts) is not exported from ActivitiTaskListModule
- \[[ADF-1911](https://issues.alfresco.com/jira/browse/ADF-1911)] - Content can be uploaded on Search Result Page when no results are found
- \[[ADF-1912](https://issues.alfresco.com/jira/browse/ADF-1912)] - Not able to re-login with a valid user after login out.
- \[[ADF-1914](https://issues.alfresco.com/jira/browse/ADF-1914)] - Custom toolbar is displayed on Search Results page when no results are found
@ -774,7 +774,7 @@ Release Notes - Apps Development Framework - Version 2.0.
- \[[ADF-1916](https://issues.alfresco.com/jira/browse/ADF-1916)] - Not able to add a file to the Attachment List.
- \[[ADF-1920](https://issues.alfresco.com/jira/browse/ADF-1920)] - Diagram is not displayed after clicking 'Show Diagram' option.
- \[[ADF-1921](https://issues.alfresco.com/jira/browse/ADF-1921)] - Dynamic Table widget is being duplicated after editing.
- \[[ADF-1922](https://issues.alfresco.com/jira/browse/ADF-1922)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) page is not displayed.
- \[[ADF-1922](https://issues.alfresco.com/jira/browse/ADF-1922)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) page is not displayed.
- \[[ADF-1924](https://issues.alfresco.com/jira/browse/ADF-1924)] - Some issues related to search bar
- \[[ADF-1945](https://issues.alfresco.com/jira/browse/ADF-1945)] - Profile image has Initials displayed behind it
- \[[ADF-1948](https://issues.alfresco.com/jira/browse/ADF-1948)] - Not able to involve people into a task.
@ -818,7 +818,7 @@ Release Notes - Apps Development Framework - Version 2.0.
- \[[ADF-2014](https://issues.alfresco.com/jira/browse/ADF-2014)] - Document List file cannot be deleted
- \[[ADF-2016](https://issues.alfresco.com/jira/browse/ADF-2016)] - Paginator integration with other components
- \[[ADF-2017](https://issues.alfresco.com/jira/browse/ADF-2017)] - Continous loading of process details if process list is empty
- \[[ADF-2019](https://issues.alfresco.com/jira/browse/ADF-2019)] - [Demo Shell] When clicking refresh for button on [`Form`](../../lib/process-services/task-list/models/form.model.ts) component the whole page reloads
- \[[ADF-2019](https://issues.alfresco.com/jira/browse/ADF-2019)] - [Demo Shell] When clicking refresh for button on [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component the whole page reloads
- \[[ADF-2020](https://issues.alfresco.com/jira/browse/ADF-2020)] - The upload button is not disabled when the 'enable upload' checkbox is not checked
- \[[ADF-2022](https://issues.alfresco.com/jira/browse/ADF-2022)] - Excluded files can be uploaded
- \[[ADF-2023](https://issues.alfresco.com/jira/browse/ADF-2023)] - Files can be drag and drop when allowDropFiles property is set to false

View File

@ -338,7 +338,7 @@ Release Notes - Apps Development Framework - Version 2.1.
- \[[ADF-1734](https://issues.alfresco.com/jira/browse/ADF-1734)] - Article on how to use Forms with ACS
- \[[ADF-2058](https://issues.alfresco.com/jira/browse/ADF-2058)] - Search example new functionality article
- \[[ADF-2060](https://issues.alfresco.com/jira/browse/ADF-2060)] - sidebarTemplate missing documentation
- \[[ADF-2122](https://issues.alfresco.com/jira/browse/ADF-2122)] - Incorrect product naming reference on [`Form`](../../lib/process-services/task-list/models/form.model.ts) Extensibility and Customisation page
- \[[ADF-2122](https://issues.alfresco.com/jira/browse/ADF-2122)] - Incorrect product naming reference on [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Extensibility and Customisation page
- \[[ADF-2125](https://issues.alfresco.com/jira/browse/ADF-2125)] - App generator has wrong documentation
- \[[ADF-2160](https://issues.alfresco.com/jira/browse/ADF-2160)] - combined handler missing in [Content Action component](../content-services/components/content-action.component.md) documentation
- \[[ADF-2162](https://issues.alfresco.com/jira/browse/ADF-2162)] - [Notification service](../core/services/notification.service.md) missing screenshot
@ -367,7 +367,7 @@ Release Notes - Apps Development Framework - Version 2.1.
- \[[ADF-1882](https://issues.alfresco.com/jira/browse/ADF-1882)] - Preview uploaded content in APS fails in form
- \[[ADF-1888](https://issues.alfresco.com/jira/browse/ADF-1888)] - [`ExternalContent`](../../lib/core/form/components/widgets/core/external-content.ts) is not exported in ActivitiFormModule
- \[[ADF-1889](https://issues.alfresco.com/jira/browse/ADF-1889)] - Viewer does not render PDF renditions unless urlFile ends with .pdf
- \[[ADF-1926](https://issues.alfresco.com/jira/browse/ADF-1926)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) is not exported from ActivitiTaskListModule
- \[[ADF-1926](https://issues.alfresco.com/jira/browse/ADF-1926)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) is not exported from ActivitiTaskListModule
- \[[ADF-1959](https://issues.alfresco.com/jira/browse/ADF-1959)] - Apps with description appear with larger size on the Processes Services page
- \[[ADF-1999](https://issues.alfresco.com/jira/browse/ADF-1999)] - Size values are not translated
- \[[ADF-2025](https://issues.alfresco.com/jira/browse/ADF-2025)] - Task List - The pagination should be fetched from the UserPreference
@ -436,7 +436,7 @@ Release Notes - Apps Development Framework - Version 2.1.
- \[[ADF-2074](https://issues.alfresco.com/jira/browse/ADF-2074)] - [Test Automation] implement uploader component - main suite.
- \[[ADF-2084](https://issues.alfresco.com/jira/browse/ADF-2084)] - [Test Automation] create test for datatable
- \[[ADF-2090](https://issues.alfresco.com/jira/browse/ADF-2090)] - [Test Automation] Review [search component](../content-services/components/search.component.md) tests
- \[[ADF-2094](https://issues.alfresco.com/jira/browse/ADF-2094)] - Task [`Form`](../../lib/process-services/task-list/models/form.model.ts) - Doesn't follow the specification
- \[[ADF-2094](https://issues.alfresco.com/jira/browse/ADF-2094)] - Task [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - Doesn't follow the specification
- \[[ADF-2095](https://issues.alfresco.com/jira/browse/ADF-2095)] - Start Task - The start button should have the primary colour
- \[[ADF-2096](https://issues.alfresco.com/jira/browse/ADF-2096)] - Info Drawer - Should use the Flex Css
- \[[ADF-2104](https://issues.alfresco.com/jira/browse/ADF-2104)] - Update Flex Layout to v2.0.0-beta.12

View File

@ -74,7 +74,7 @@ Below are the most important new features of this release:
- Task Header - Make it customizable from the config file
- Process List - Provide a way to support custom html template and static columns at same time
- Date Time Widget
- [`Form`](../../lib/process-services/task-list/models/form.model.ts) Upload Widget Actions menu
- [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Upload Widget Actions menu
- Search custom empty template
### Data table/Document list gallery view
@ -353,7 +353,7 @@ Release Notes - Apps Development Framework - Version 2.2.
- \[[ADF-2242](https://issues.alfresco.com/jira/browse/ADF-2242)] - Search on custom sources is not working.
- \[[ADF-2243](https://issues.alfresco.com/jira/browse/ADF-2243)] - Translation is missing for the 'Extended Search'.
- \[[ADF-2246](https://issues.alfresco.com/jira/browse/ADF-2246)] - [Destination Picker] The selection from the dropdown is ignored after 'Clear' action
- \[[ADF-2251](https://issues.alfresco.com/jira/browse/ADF-2251)] - [`ContentWidgetModule`](../../lib/process-services/content-widget/content-widget.module.ts) is not exposed from ADF
- \[[ADF-2251](https://issues.alfresco.com/jira/browse/ADF-2251)] - [`ContentWidgetModule`](../../lib/process-services/src/lib/content-widget/content-widget.module.ts) is not exposed from ADF
- \[[ADF-2254](https://issues.alfresco.com/jira/browse/ADF-2254)] - Viewer does not update top menu on "fileNodeId" changes
- \[[ADF-2255](https://issues.alfresco.com/jira/browse/ADF-2255)] - SelectBox field does not render the data in ADF form
- \[[ADF-2260](https://issues.alfresco.com/jira/browse/ADF-2260)] - Action menu translation is missing when right clicking on a file/folder

View File

@ -347,7 +347,7 @@ Release Notes - Apps Development Framework - Version 2.3.0
- \[[ADF-2591](https://issues.alfresco.com/jira/browse/ADF-2591)] - [Document list] Selection icon is cut
- \[[ADF-2592](https://issues.alfresco.com/jira/browse/ADF-2592)] - Different types of tooltips appear in the viewer
- \[[ADF-2604](https://issues.alfresco.com/jira/browse/ADF-2604)] - Incorrect definitions for Enums
- \[[ADF-2607](https://issues.alfresco.com/jira/browse/ADF-2607)] - Task [`Form`](../../lib/process-services/task-list/models/form.model.ts) - Number Widget placeholder no longer displayed
- \[[ADF-2607](https://issues.alfresco.com/jira/browse/ADF-2607)] - Task [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - Number Widget placeholder no longer displayed
- \[[ADF-2624](https://issues.alfresco.com/jira/browse/ADF-2624)] - All metadata card component children display parent info drawer tooltip
- \[[ADF-2625](https://issues.alfresco.com/jira/browse/ADF-2625)] - [`Node`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) name not updated when changing its value in metadata component
- \[[ADF-2628](https://issues.alfresco.com/jira/browse/ADF-2628)] - Metadata editors miss tooltips
@ -363,7 +363,7 @@ Release Notes - Apps Development Framework - Version 2.3.0
- \[[ADF-2682](https://issues.alfresco.com/jira/browse/ADF-2682)] - Number of page doesn't change when navigating to another folder
- \[[ADF-2684](https://issues.alfresco.com/jira/browse/ADF-2684)] - [Task Pagination][pagination](../../lib/content-services/document-list/models/document-library.model.ts) isn't displayed properly when 'Items per page' is 25
- \[[ADF-2687](https://issues.alfresco.com/jira/browse/ADF-2687)] - [Demo shell] No message is displayed when deleting a file/folder from content action
- \[[ADF-2689](https://issues.alfresco.com/jira/browse/ADF-2689)] - Task [`Form`](../../lib/process-services/task-list/models/form.model.ts) - Text Widget placeholder no longer displayed
- \[[ADF-2689](https://issues.alfresco.com/jira/browse/ADF-2689)] - Task [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - Text Widget placeholder no longer displayed
- \[[ADF-2690](https://issues.alfresco.com/jira/browse/ADF-2690)] - Title is not properly displayed in Metadata component - 'Properties' tab
- \[[ADF-2711](https://issues.alfresco.com/jira/browse/ADF-2711)] - [Involve People Widget] When scrolling down the result box scrolls with the page
- \[[ADF-2714](https://issues.alfresco.com/jira/browse/ADF-2714)] - [Demo shell]Not able to download a version of a file

View File

@ -59,7 +59,7 @@ Below are the most important new features of this release:
- File Versioning enhancements
- Empty Page Component
- TaskList Empty Page
- [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) Empty Page
- [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) Empty Page
- Error Page Component
- Search Improvements
- [App config pipe](../core/pipes/app-config.pipe.md)
@ -123,7 +123,7 @@ You can still override it from the parent component using `<ng-template>`.
### ProcessList Empty Page
In the version 2.4, the [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) uses the empty state component if there are no available processes.
In the version 2.4, the [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) uses the empty state component if there are no available processes.
You can still override it from the parent component using `<ng-template>`.
![Process list Empty Page](images/Screen+Shot+2018-06-25+at+11.16.57.png)
@ -238,7 +238,7 @@ Release Notes - Apps Development Framework - Version 2.4.0
- \[[ADF-2789](https://issues.alfresco.com/jira/browse/ADF-2789)] - alfresco-js-api downlaodapi
- \[[ADF-2847](https://issues.alfresco.com/jira/browse/ADF-2847)] - Update all doc file structures to match script requirements
- \[[ADF-2969](https://issues.alfresco.com/jira/browse/ADF-2969)] - Move doc tools into the new tools folder
- \[[ADF-2989](https://issues.alfresco.com/jira/browse/ADF-2989)] - Pre-populating Start Process [`Form`](../../lib/process-services/task-list/models/form.model.ts) with multiple files from ACS doesn't work
- \[[ADF-2989](https://issues.alfresco.com/jira/browse/ADF-2989)] - Pre-populating Start Process [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) with multiple files from ACS doesn't work
- \[[ADF-3049](https://issues.alfresco.com/jira/browse/ADF-3049)] - Release Note 2.4.0
- \[[ADF-3087](https://issues.alfresco.com/jira/browse/ADF-3087)] - Better explanation of replacing i18n keys in the user guide
- \[[ADF-3142](https://issues.alfresco.com/jira/browse/ADF-3142)] - [Login component](../core/components/login.component.md) should explain what "remember me" is for
@ -267,7 +267,7 @@ Release Notes - Apps Development Framework - Version 2.4.0
- \[[ADF-2984](https://issues.alfresco.com/jira/browse/ADF-2984)] - Show date invalid message on search date range picker
- \[[ADF-3028](https://issues.alfresco.com/jira/browse/ADF-3028)] - [Page Title Service](../core/services/page-title.service.md) should support i18n
- \[[ADF-3041](https://issues.alfresco.com/jira/browse/ADF-3041)] - TaskList Component - Empty State issue.
- \[[ADF-3066](https://issues.alfresco.com/jira/browse/ADF-3066)] - [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) Component - Empty State issue.
- \[[ADF-3066](https://issues.alfresco.com/jira/browse/ADF-3066)] - [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) Component - Empty State issue.
- \[[ADF-3095](https://issues.alfresco.com/jira/browse/ADF-3095)] - Upload and DragArea component events to intercept uploads
- \[[ADF-3118](https://issues.alfresco.com/jira/browse/ADF-3118)] - [Notification Service](../core/services/notification.service.md) should support i18n resource keys
@ -307,7 +307,7 @@ Release Notes - Apps Development Framework - Version 2.4.0
- \[[ADF-2685](https://issues.alfresco.com/jira/browse/ADF-2685)] - [Demo shell] The Gallery view is changed after navigating to another folder
- \[[ADF-2692](https://issues.alfresco.com/jira/browse/ADF-2692)] - Process Filters doesn't update immediately after completing the last task of the process.
- \[[ADF-2699](https://issues.alfresco.com/jira/browse/ADF-2699)] - dataTimeAgo Pipe is not localized
- \[[ADF-2702](https://issues.alfresco.com/jira/browse/ADF-2702)] - Try to open an unknown type with the viewer returns an error
- \[[ADF-2702](https://issues.alfresco.com/jira/browse/ADF-2702)] - Try to open an type with the viewer returns an error
- \[[ADF-2703](https://issues.alfresco.com/jira/browse/ADF-2703)] - Info Drawer - Header does not navigate to name of default tab
- \[[ADF-2710](https://issues.alfresco.com/jira/browse/ADF-2710)] - Share toggle gets enabled when clicking on Share icon
- \[[ADF-2717](https://issues.alfresco.com/jira/browse/ADF-2717)] - [Lock file] Long file name overflow

View File

@ -272,7 +272,7 @@ Release Notes - Apps Development Framework - Version 2.5.0
] - Upgrade Angular Material Design
- \[
[ADF-3308](https://issues.alfresco.com/jira/browse/ADF-3308)
] - [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) Component - Provide a way to filter the list by fields
] - [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) Component - Provide a way to filter the list by fields
- \[
[ADF-3366](https://issues.alfresco.com/jira/browse/ADF-3366)
] - Update Site details
@ -314,7 +314,7 @@ Release Notes - Apps Development Framework - Version 2.5.0
] - [Demo shell] User is not redirected to active process when completing the first task as initiator
- \[
[ADF-2876](https://issues.alfresco.com/jira/browse/ADF-2876)
] - Activiti [`Form`](../../lib/process-services/task-list/models/form.model.ts) - Complete button does not get enabled when logged in as Active Directory users.
] - Activiti [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) - Complete button does not get enabled when logged in as Active Directory users.
- \[
[ADF-2962](https://issues.alfresco.com/jira/browse/ADF-2962)
] - Can't reach the Hide/Show password icon using tab key
@ -533,7 +533,7 @@ Release Notes - Apps Development Framework - Version 2.5.0
] - Required fields on a form are not displayed on a read-only mode.
- \[
[ADF-3413](https://issues.alfresco.com/jira/browse/ADF-3413)
] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) name still displayed after removing form
] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) name still displayed after removing form
### Feature (Task)

View File

@ -107,7 +107,7 @@ A configurable delete button has been added to the **Tag [`Node`](https://github
### Validation summary support for form component
The **[`Form`](../../lib/process-services/task-list/models/form.model.ts) Component** will now use the **formError** event to send a validation summary for all the fields with errors. This will be useful particularly with big forms for showing which fields are in error without scrolling the whole form by creating a summary.
The **[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Component** will now use the **formError** event to send a validation summary for all the fields with errors. This will be useful particularly with big forms for showing which fields are in error without scrolling the whole form by creating a summary.
<div class="form-container">
<adf-form
@ -176,10 +176,10 @@ Release Notes - Apps Development Framework - Version 2.6.
### Feature
- \[[ADF-584](https://issues.alfresco.com/jira/browse/ADF-584)] - Validation summary support for [`Form`](../../lib/process-services/task-list/models/form.model.ts) component
- \[[ADF-584](https://issues.alfresco.com/jira/browse/ADF-584)] - Validation summary support for [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component
- \[[ADF-2640](https://issues.alfresco.com/jira/browse/ADF-2640)] - adf-tag-node-list with remove option configurable
- \[[ADF-2921](https://issues.alfresco.com/jira/browse/ADF-2921)] - Icons for smart folders, links and folders with rules
- \[[ADF-3308](https://issues.alfresco.com/jira/browse/ADF-3308)] - [`ProcessList`](../../lib/process-services/mock/process/process.model.mock.ts) Component - Provide a way to filter the list by fields
- \[[ADF-3308](https://issues.alfresco.com/jira/browse/ADF-3308)] - [`ProcessList`](../../lib/process-services/src/lib/mock/process/process.model.mock.ts) Component - Provide a way to filter the list by fields
- \[[ADF-3352](https://issues.alfresco.com/jira/browse/ADF-3352)] - [Viewer Component](../core/components/viewer.component.md) - Allow multiple side bar
- \[[ADF-3382](https://issues.alfresco.com/jira/browse/ADF-3382)] - Start a Process - Change the process definition from a dropdown to autocomplete
- \[[ADF-3397](https://issues.alfresco.com/jira/browse/ADF-3397)] - Task Filter - Doesn't show the right icon
@ -192,7 +192,7 @@ Release Notes - Apps Development Framework - Version 2.6.
- \[[ADF-3512](https://issues.alfresco.com/jira/browse/ADF-3512)] - [`SidenavLayoutComponent`](../core/components/sidenav-layout.component.md) option to show the sidebar on the right
- \[[ADF-3553](https://issues.alfresco.com/jira/browse/ADF-3553)] - Cache management for application configuration file
- \[[ADF-3570](https://issues.alfresco.com/jira/browse/ADF-3570)] - Migration to APS2 - Add a interceptor to be able to use APS2 API
- \[[ADF-3607](https://issues.alfresco.com/jira/browse/ADF-3607)] - [Demo shell] JSON Editor in [`Form`](../../lib/process-services/task-list/models/form.model.ts) Page
- \[[ADF-3607](https://issues.alfresco.com/jira/browse/ADF-3607)] - [Demo shell] JSON Editor in [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Page
### Bug
@ -262,7 +262,7 @@ Release Notes - Apps Development Framework - Version 2.6.
### Feature Bug
- \[[ADF-3413](https://issues.alfresco.com/jira/browse/ADF-3413)] - [`Form`](../../lib/process-services/task-list/models/form.model.ts) name still displayed after removing form
- \[[ADF-3413](https://issues.alfresco.com/jira/browse/ADF-3413)] - [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) name still displayed after removing form
- \[[ADF-3567](https://issues.alfresco.com/jira/browse/ADF-3567)] - The default items per page value is not displayed
- \[[ADF-3571](https://issues.alfresco.com/jira/browse/ADF-3571)] - Due After field not working as expected
- \[[ADF-3573](https://issues.alfresco.com/jira/browse/ADF-3573)] - Showing NaN-20 of 20 is displayed instead of 20
@ -294,6 +294,6 @@ Release Notes - Apps Development Framework - Version 2.6.
- \[[ADF-3563](https://issues.alfresco.com/jira/browse/ADF-3563)] - Automated test for Show More/Less button in Search Filters
- \[[ADF-3594](https://issues.alfresco.com/jira/browse/ADF-3594)] - Create automated test for Show more/ less button on Tag component.
- \[[ADF-3596](https://issues.alfresco.com/jira/browse/ADF-3596)] - Automated tests for start a process
- \[[ADF-3597](https://issues.alfresco.com/jira/browse/ADF-3597)] - Create automated test to cover Error Log on [`Form`](../../lib/process-services/task-list/models/form.model.ts) component
- \[[ADF-3597](https://issues.alfresco.com/jira/browse/ADF-3597)] - Create automated test to cover Error Log on [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component
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).

View File

@ -17,11 +17,11 @@ versions of ADF.
- [New package versions](#new-package-versions)
- [Goals for this release](#goals-for-this-release)
- [Form visibility](#form-field-visibility)
- [Form field visibility](#form-field-visibility)
- [Start a process with a form](#start-a-process-with-a-form)
- [Multilingual support for forms](#multilingual-support-for-forms)
- [Form validation](#form-validation)
- [Forms variables](#form-variables)
- [Form variables](#form-variables)
- [REST source for dropdown menu on forms](#rest-source-for-dropdown-menu-on-forms)
- [Date format localization](#date-format-localization)
- [Localisation](#localisation)
@ -42,7 +42,7 @@ This is the third minor release since of ADF since February 2019 when version 3
This release continues to provide additional support for [Activiti 7](https://www.activiti.org/), the next generation Cloud Native implementation of Activiti.
The functionality and enhancements of this release are focused on forms. Form field visibility has been improved, form validation has been implemented and it is now possible to use form variables. Multilingual support for forms has been enhanced and dropdown menus reading from a REST source have been updated. From an end-user perspective, a process can now be started using a form when the start event contains a valid form.
The functionality and enhancements of this release are focused on forms. [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) field visibility has been improved, form validation has been implemented and it is now possible to use form variables. Multilingual support for forms has been enhanced and dropdown menus reading from a REST source have been updated. From an end-user perspective, a process can now be started using a form when the start event contains a valid form.
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).
@ -58,29 +58,29 @@ The following are the most important features of this release:
### Form field visibility
Form field visibility has been improved to respect the visibility conditions configured for each field in the Modelling Application.
[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) field visibility has been improved to respect the visibility conditions configured for each field in the Modelling Application.
### Start a process with a form
The ```adf-cloud-start-process``` component now contains the functionality to start a process using a form.
The `adf-cloud-start-process` component now contains the functionality to start a process using a form.
It is possible start a process with a form and variables:
```html
<adf-cloud-start-process
[appId]="YOUR_APP_ID"
[variables]="{ 'my-key1' : 'myvalue', 'my-key2' : 'myvalue2'}">
</adf-cloud-start-process>
```
```html
<adf-cloud-start-process
[appId]="YOUR_APP_ID"
[variables]="{ 'my-key1' : 'myvalue', 'my-key2' : 'myvalue2'}">
</adf-cloud-start-process>
```
It is also possible to start a process with a form and pass in the form values at the same time:
```html
<adf-cloud-start-process
[appId]="YOUR_APP_ID"
[values]="[{'name': 'firstName', 'value': 'MyName'}, {'name': 'lastName', 'value': 'MyLastName'}]">
</adf-cloud-start-process>
```
```html
<adf-cloud-start-process
[appId]="YOUR_APP_ID"
[values]="[{'name': 'firstName', 'value': 'MyName'}, {'name': 'lastName', 'value': 'MyLastName'}]">
</adf-cloud-start-process>
```
### Multilingual support for forms
@ -106,17 +106,18 @@ and in your `it.json`:
"LASTNAME": "Cognome"
}
}
```
```
Your app will now change the label of the form using the translations files.
### Form validation
Form validation will now display whether a form is valid or invalid.
[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) validation will now display whether a form is valid or invalid.
### Form variables
Form variables can now assigned to forms. When creating an application that contains a form, variables can be assigned and will correctly display as the appropriate values when the form is launched.
[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) variables can now assigned to forms. When creating an application that contains a form, variables can be assigned and will correctly display as the appropriate values when the form is launched.
### REST source for dropdown menu on forms
It is now possible to create a form that contains a dropdown widget that is configured to use a REST Service to populate its values.
@ -149,7 +150,6 @@ Please refer to the [official documentation](http://docs.alfresco.com/) for furt
The following is the list of JIRA issues that were closed for this release:
<ul>
<li>[<a href='https://issues.alfresco.com/jira/browse/ADF-4618'>ADF-4618</a>] - Update the tutorial on RTL languages support
</li>
@ -460,7 +460,6 @@ The following is the list of JIRA issues that were closed for this release:
</li>
</ul>
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.

View File

@ -17,10 +17,10 @@ versions of ADF.
- [New package versions](#new-package-versions)
- [Goals for this release](#goals-for-this-release)
- [Form visibility](#form-field-visibility)
- [Form field visibility](#form-field-visibility)
- [Preference service](#preference-service)
- [Forms in standalone tasks](#forms-in-standalone-tasks)
- [Angular Material upgrade](#angular-material-upgrade)
- [Angular and Material upgrade](#angular-and-material-upgrade)
- [Localisation](#localisation)
- [References](#references)
- [Issues addressed](#issues-addressed)
@ -78,7 +78,7 @@ The following is an example JSON of a form definition with the new boolean prope
"standAlone": true,
"formDefinition": {
...
```
```
### Angular and Material upgrade
@ -285,7 +285,6 @@ The following is the list of JIRA issues that were closed for this release:
</li>
</ul>
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.

View File

@ -27,7 +27,7 @@ You can select one of the three following blueprints.
**Process Services**
This will generate an application for Alfresco Process Services. It mainly contains the following components: Login, App List, Task List, [`Form`](../../lib/process-services/task-list/models/form.model.ts) and Start Process.
This will generate an application for Alfresco Process Services. It mainly contains the following components: Login, App List, Task List, [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) and Start Process.
**Content Services**

View File

@ -252,7 +252,7 @@ The following classes have been moved from their original libraries to the Core
library. You should modify your code to import these classes from
`@alfresco/adf-core`.
- [`DownloadZipDialogComponent`](../../lib/core/dialogs/download-zip.dialog.ts) (formerly Content Services)
- [`DownloadZipDialogComponent`](../../lib/core/dialogs/download-zip/download-zip.dialog.ts) (formerly Content Services)
- [`NodeDownloadDirective`](../core/directives/node-download.directive.md) (formerly Content Services)
- [`CommentsModule`](../../lib/core/comments/comments.module.ts) (formerly Process Services)
- [`CommentListComponent`](../core/components/comment-list.component.md) (formerly Process Services)

View File

@ -9,7 +9,7 @@ This page describes how you can customize ADF forms to your own specification.
_Note: it is assumed you are familiar with Alfresco Process Services (powered by Activiti) form definition structure._
- How components and widgets are rendered on a [`Form`](../../lib/process-services/task-list/models/form.model.ts)
- How components and widgets are rendered on a [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts)
- Replacing default form widgets with custom components
- Replacing custom stencils with custom components
@ -26,7 +26,7 @@ _Note: it is assumed you are familiar with Alfresco Process Services (powered by
## How components and widgets are rendered on a Form
All form field editors (aka widgets) on a [`Form`](../../lib/process-services/task-list/models/form.model.ts) are rendered by means of [`FormFieldComponent`](../core/components/form-field.component.md)
All form field editors (aka widgets) on a [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) are rendered by means of [`FormFieldComponent`](../core/components/form-field.component.md)
that takes an instance of a [`FormFieldModel`](../core/models/form-field.model.md):
```html
@ -190,7 +190,7 @@ First let's create a basic stencil and call it `Custom Stencil 01`:
_Note the `internal identifier` value as it will become a `field type` value when corresponding form is rendered._
Next put some simple html layout for [`Form`](../../lib/process-services/task-list/models/form.model.ts)`runtime template` and [`Form`](../../lib/process-services/task-list/models/form.model.ts)`editor template` fields:
Next put some simple html layout for [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts)`runtime template` and [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts)`editor template` fields:
```html
<div style="color: blue">Custom activiti stencil</div>

View File

@ -4,17 +4,9 @@ Localization is the process of making something local in character or restrictin
Dates are not written the same around the world. That is where localizing a date comes in handy. ADF lets you dynamically change the way dates are written in your app so that they can adapt to to a specific region.
## Contents
- [Setting up the configuration in your app](#setting-up-the-configuration-in-your-app)
- [Adding language support](#adding-language-support)
- [Using the localized date pipe](#using-the-localized-date-pipe)
- [Using the time ago pipe](#using-the-time-ago-pipe)
- [Using the decimal number pipe](#using-the-decimal-number-pipe)
## Setting up the configuration in your app
You can overwrite the default values of this pipe by adding these properties to your ```app.config.json```:
You can overwrite the default values of this pipe by adding these properties to your `app.config.json`:
```json
"dateValues": {
@ -30,8 +22,7 @@ You can overwrite the default values of this pipe by adding these properties to
| defaultDateTimeFormat | string | The format to apply to date-time values |
| defaultLocale | string | The locale id to apply |
This configuration overwrites the values in the localized date pipe as well as other components to have more consistency across your app. However, you can still overwrite these values any time by using the pipe in your code.
This configuration overwrites the values in the [localized date pipe](../core/pipes/localized-date.pipe.md) as well as other components to have more consistency across your app. However, you can still overwrite these values any time by using the pipe in your code.
## Adding language support
@ -81,6 +72,7 @@ Localizes the punctuation marks of a given number.
{{ number | adfDecimalNumber }}
<!-- {% endraw %} -->
`Input:` 1999.12
`Output (english locale):` 1,999.12
`Output (italian locale):` 1.999,12

View File

@ -1,6 +1,6 @@
# Form Stencils
[`Form`](../../lib/process-services/task-list/models/form.model.ts) component provides basic support for custom stencils created with Activiti stencil editor.
[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component provides basic support for custom stencils created with Activiti stencil editor.
## Contents
@ -67,7 +67,7 @@ This should be a valid Angular component template that you want to render in `<a
## Form editor template
This can be any html layout to be rendered as a component placeholder in Activiti [`Form`](../../lib/process-services/task-list/models/form.model.ts) Designer.
This can be any html layout to be rendered as a component placeholder in Activiti [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) Designer.
```html
<div>
@ -159,4 +159,4 @@ Angular Component
Created by: Denys
```
ADF [`Form`](../../lib/process-services/task-list/models/form.model.ts) component will automatically assemble and compile a valid Angular component on the fly.
ADF [`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts) component will automatically assemble and compile a valid Angular component on the fly.

View File

@ -12,6 +12,7 @@ backend services have been tested with each released version of ADF.
## Versions
- [v3.5.0](#v350)
- [v3.4.0](#v340)
- [v3.3.0](#v330)
- [v3.2.1](#v321)
@ -26,6 +27,19 @@ backend services have been tested with each released version of ADF.
- [v2.1.0](#v210)
- [v2.0.0](#v200)
## v3.5.0
**Release:** 2019-30-09<br/>
<!--v350 start-->
- [About application component](core/components/about-application.component.md)
- [About github link component](core/components/about-github-link.component.md)
- [About product version component](core/components/about-product-version.component.md)
- [Edit json dialog](core/dialogs/edit-json.dialog.md)
<!--v350 end-->
## v3.4.0
**Release:** 2019-08-09<br/>
@ -36,7 +50,6 @@ backend services have been tested with each released version of ADF.
- [Identity group service](core/services/identity-group.service.md)
- [Local preference cloud service](process-services-cloud/services/local-preference-cloud.service.md)
- [User preference cloud service](process-services-cloud/services/user-preference-cloud.service.md)
- [Toggle icon directive](content-services/directives/toggle-icon.directive.md)
<!--v340 end-->
@ -107,6 +120,7 @@ backend services have been tested with each released version of ADF.
- [Icon component](core/components/icon.component.md)
- [Identity user service](core/services/identity-user.service.md)
- [Jwt helper service](core/services/jwt-helper.service.md)
- [Library dialog](content-services/dialogs/library.dialog.md)
- [People cloud component](process-services-cloud/components/people-cloud.component.md)
- [Process filter cloud service](process-services-cloud/services/process-filter-cloud.service.md)
- [Process filters cloud component](process-services-cloud/components/process-filters-cloud.component.md)
@ -180,7 +194,6 @@ backend services have been tested with each released version of ADF.
<!--v240 start-->
- [About component](core/components/about.component.md)
- [Add permission dialog component](content-services/components/add-permission-dialog.component.md)
- [Add permission panel component](content-services/components/add-permission-panel.component.md)
- [Add permission component](content-services/components/add-permission.component.md)
@ -214,6 +227,7 @@ backend services have been tested with each released version of ADF.
<!--v230 start-->
- [Comment content service](core/services/comment-content.service.md)
- [Confirm dialog](content-services/dialogs/confirm.dialog.md)
- [Content node share directive](content-services/directives/content-node-share.directive.md)
- [Custom resources service](content-services/services/custom-resources.service.md)
- [Inherited button directive](content-services/directives/inherited-button.directive.md)
@ -407,6 +421,7 @@ backend services have been tested with each released version of ADF.
- [Text mask component](core/components/text-mask.component.md)
- [Thumbnail service](core/services/thumbnail.service.md)
- [Time ago pipe](core/pipes/time-ago.pipe.md)
- [Toggle icon directive](content-services/directives/toggle-icon.directive.md)
- [Toolbar divider component](core/components/toolbar-divider.component.md)
- [Toolbar title component](core/components/toolbar-title.component.md)
- [Toolbar component](core/components/toolbar.component.md)

View File

@ -39,6 +39,7 @@ import { AlfrescoApiService } from '../../../services/alfresco-api.service';
})
export class JsonCellComponent extends DataTableCellComponent implements OnInit {
/** Editable JSON. */
@Input()
editable: boolean = false;

View File

@ -73,6 +73,7 @@ export class FormCloudComponent extends FormBaseComponent implements OnChanges,
@Input()
data: TaskVariableCloud[];
/** FormFieldValidator allow to override the form field validators provided. */
@Input()
fieldValidators: FormFieldValidator[] = [...FORM_FIELD_VALIDATORS];
@ -92,6 +93,7 @@ export class FormCloudComponent extends FormBaseComponent implements OnChanges,
@Output()
formDataRefreshed = new EventEmitter<FormModel>();
/** Emitted when form content is clicked. */
@Output()
formContentClicked = new EventEmitter<string>();

View File

@ -89,6 +89,7 @@ export class TaskFormCloudComponent implements OnChanges {
@Output()
error = new EventEmitter<any>();
/** Emitted when form content is clicked. */
@Output()
formContentClicked: EventEmitter<ContentLinkModel> = new EventEmitter();

6813
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -130,7 +130,7 @@
"@types/hammerjs": "2.0.35",
"@types/jasmine": "~2.8.3",
"@types/jasminewd2": "~2.0.2",
"@types/node": "^12.7.3",
"@types/node": "^12.7.7",
"@types/selenium-webdriver": "^3.0.8",
"ajv-cli": "^3.0.0",
"bundlesize": "^0.17.2",

View File

@ -91,7 +91,7 @@ var MethodSigInfo = /** @class */ (function () {
this.name = sourceData.name;
this.docText = sourceData.summary || '';
this.docText = this.docText.replace(/[\n\r]+/g, ' ').trim();
if (!this.docText) {
if (!this.docText && this.name.indexOf('service') > 0) {
this.errorMessages.push("Warning: method \"" + sourceData.name + "\" has no doc text.");
}
this.returnType = sourceData.syntax['return'].type || '';
@ -101,7 +101,7 @@ var MethodSigInfo = /** @class */ (function () {
if (this.returnDocText.toLowerCase() === 'nothing') {
this.returnsSomething = false;
}
if (this.returnsSomething && !this.returnDocText) {
if (this.returnsSomething && !this.returnDocText && this.name.indexOf('service') > 0) {
this.errorMessages.push("Warning: Return value of method \"" + sourceData.name + "\" has no doc text.");
}
this.isDeprecated = false;
@ -116,7 +116,7 @@ var MethodSigInfo = /** @class */ (function () {
var paramStrings = [];
if (sourceData.syntax.parameters) {
sourceData.syntax.parameters.forEach(function (rawParam) {
if (!rawParam.description) {
if (rawParam.name && !rawParam.description && !rawParam.name.startWith('on')) {
_this.errorMessages.push("Warning: parameter \"" + rawParam.name + "\" of method \"" + sourceData.name + "\" has no doc text.");
}
var param = new ParamInfo(rawParam);

View File

@ -132,7 +132,7 @@ export class MethodSigInfo {
this.docText = sourceData.summary || '';
this.docText = this.docText.replace(/[\n\r]+/g, ' ').trim();
if (!this.docText) {
if (!this.docText && this.name.indexOf('service') > 0) {
this.errorMessages.push(`Warning: method "${sourceData.name}" has no doc text.`);
}
@ -145,7 +145,7 @@ export class MethodSigInfo {
this.returnsSomething = false;
}
if (this.returnsSomething && !this.returnDocText) {
if (this.returnsSomething && !this.returnDocText && this.name.indexOf('service') > 0) {
this.errorMessages.push(`Warning: Return value of method "${sourceData.name}" has no doc text.`);
}
@ -165,7 +165,7 @@ export class MethodSigInfo {
if (sourceData.syntax.parameters) {
sourceData.syntax.parameters.forEach(rawParam => {
if (!rawParam.description) {
if (rawParam.name && !rawParam.description && !rawParam.name.startWith('on')) {
this.errorMessages.push(`Warning: parameter "${rawParam.name}" of method "${sourceData.name}" has no doc text.`);
}

View File

@ -143,10 +143,11 @@ function getMDMethodParams(methItem) {
paramName = paramNameNode.text().item.value.replace(/:/, '');
}
else {
paramName = paramListItem.childNav
.paragraph().childNav
.strong().childNav
.text().item.value;
var item = paramListItem.childNav.paragraph().childNav
.strong().childNav.text();
if (paramName) {
paramName = item.value;
}
}
var paramDoc = paramListItem.childNav
.paragraph().childNav

View File

@ -87,28 +87,28 @@ function getPropDocsFromMD(tree, sectionHeading, docsColumn) {
const nav = new MDNav(tree);
const classMemHeading = nav
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Class members');
});
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Class members');
});
const propsTable = classMemHeading
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === sectionHeading);
}).table();
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === sectionHeading);
}).table();
let propTableRow = propsTable.childNav
.tableRow(() => true, 1).childNav;
.tableRow(() => true, 1).childNav;
let i = 1;
while (!propTableRow.empty) {
const propName = propTableRow
.tableCell().childNav
.text().item.value;
.tableCell().childNav
.text().item.value;
const propDocText = propTableRow
.tableCell(() => true, docsColumn).childNav
.text().item;
.tableCell(() => true, docsColumn).childNav
.text().item;
if (propDocText) {
result[propName] = propDocText.value;
@ -116,7 +116,7 @@ function getPropDocsFromMD(tree, sectionHeading, docsColumn) {
i++;
propTableRow = propsTable.childNav
.tableRow(() => true, i).childNav;
.tableRow(() => true, i).childNav;
}
return result;
@ -128,24 +128,24 @@ function getMethodDocsFromMD(tree) {
const nav = new MDNav(tree);
const classMemHeading = nav
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Class members');
});
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Class members');
});
const methListItems = classMemHeading
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Methods');
}).list().childNav;
.heading(h => {
return (h.children[0].type === 'text') && (h.children[0].value === 'Methods');
}).list().childNav;
let methItem = methListItems
.listItem();
.listItem();
let i = 0;
while (!methItem.empty) {
const methNameSection = methItem.childNav
.paragraph().childNav
.strong().childNav;
.paragraph().childNav
.strong().childNav;
let methName = '';
@ -154,9 +154,9 @@ function getMethodDocsFromMD(tree) {
methName = methNameSection.text().item.value;
const methDoc = methItem.childNav
.paragraph().childNav
.html()
.text().value;
.paragraph().childNav
.html()
.text().value;
const params = getMDMethodParams(methItem);
@ -169,7 +169,7 @@ function getMethodDocsFromMD(tree) {
i++;
methItem = methListItems
.listItem(l => true, i);
.listItem(l => true, i);
}
return result;
@ -181,27 +181,30 @@ function getMDMethodParams(methItem: MDNav) {
const paramList = methItem.childNav.list().childNav;
const paramListItems = paramList
.listItems();
.listItems();
paramListItems.forEach(paramListItem => {
const paramNameNode = paramListItem.childNav
.paragraph().childNav
.emph().childNav;
.paragraph().childNav
.emph().childNav;
let paramName;
if (!paramNameNode.empty) {
paramName = paramNameNode.text().item.value.replace(/:/, '');
} else {
paramName = paramListItem.childNav
.paragraph().childNav
.strong().childNav
.text().item.value;
let item = paramListItem.childNav.paragraph().childNav
.strong().childNav.text();
if (paramName) {
paramName = item.value;
}
}
const paramDoc = paramListItem.childNav
.paragraph().childNav
.text(t => true, 1).value; // item.value;
.paragraph().childNav
.text(t => true, 1).value; // item.value;
result[paramName] = paramDoc.replace(/^[ -]+/, '');
});

View File

@ -49,7 +49,7 @@ function readPhase(mdCache, aggData) {
function getFileData(tree, pathname, aggData) {
var compName = pathname;
var angNameRegex = /([a-zA-Z0-9\-]+)\.((component)|(directive)|(model)|(pipe)|(service)|(widget))/;
var angNameRegex = /([a-zA-Z0-9\-]+)\.((component)|(directive)|(model)|(pipe)|(service)|(widget)|(dialog))/;
if (!compName.match(angNameRegex))
return;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +0,0 @@
{
"export-last-version": "export-new.json",
"export-versions": [
"export-2.0.0.json",
"export-2.1.0.json",
"export-2.2.0.json",
"export-2.3.0.json",
"export-2.5.0.json"
]
}

View File

@ -1,373 +0,0 @@
import * as ts from "typescript";
import * as fs from "fs";
import chalk from "chalk";
var nconf = require('nconf');
var basePath = "./tools/export-check/";
nconf.add('config', { type: 'file', file: `${basePath}export-check-config.json` });
var newLibExports = basePath + nconf.get('export-last-version');
var exportFilesVersions = nconf.get('export-versions').map((currentFile) => {
return basePath + currentFile;
});
interface DocEntry {
position?: {
line: number,
character: number,
fileName: string
},
name?: string,
skipError?: boolean
};
let error_array = [];
let warning_array = [];
let exportedAllPath: Array<string> = [];
let classList: Array<any> = [];
let add_error = function (error: string, nameClass: string) {
let findErrorClass = false;
error_array.forEach((currentError) => {
if (currentError.nameClass === nameClass) {
findErrorClass = true;
return;
}
});
if (!findErrorClass) {
error_array.push({
error: error,
nameClass: nameClass
});
}
}
let count_error = 0;
let count_warning = 0;
let print_errors = function () {
error_array.forEach((current_error) => {
console.log(chalk.red(`[${++count_error}] ${current_error.error}\n`));
});
}
let add_warning = function (warning: string, nameClass: string, arrayCall: string[]) {
let findWarningClass = false;
warning_array.forEach((currentWarning) => {
if (currentWarning.nameClass === nameClass) {
findWarningClass = true;
return;
}
});
if (!findWarningClass) {
warning_array.push({
warning: warning,
nameClass: nameClass,
arrayCall: arrayCall
});
}
}
let print_warnings = function () {
warning_array.forEach((current_warning) => {
console.log(chalk.yellow(`[${++count_warning}] ${current_warning.warning} \n ${current_warning.arrayCall} \n`));
});
}
let currentErrorPostion = function (exportEntry) {
return ` ${exportEntry.position.fileName} (${exportEntry.position.line},${exportEntry.position.character})`
}
let check_export = function (exportLastMajor: any, exportNew: any) {
exportLastMajor.forEach((currentexportLastMajor) => {
let currentexportNew = exportNew.filter((currentexportNew) => {
return currentexportNew.name === currentexportLastMajor.name;
});
if (currentexportNew.length > 1) {
let arrayCall = [];
currentexportNew.forEach((error) => {
arrayCall.push(`${currentErrorPostion(error)}`);
})
add_warning(`Multiple export ${currentexportNew[0].name} times ${currentexportNew.length}`, currentexportNew[0].name, arrayCall);
} else if (currentexportNew.length === 0) {
if (!currentexportLastMajor.skipError) {
add_error(`Not find export ${currentexportLastMajor.name} , old path: [${currentErrorPostion(currentexportLastMajor)}]`, currentexportLastMajor.name);
}
}
});
};
let expandStarExport = function (node: ts.Node): ts.ExportDeclaration {
const ed = node as ts.Node as ts.ExportDeclaration;
const exports = [{ name: "x" }];
const exportSpecifiers = exports.map(e => ts.createExportSpecifier(e.name, e.name));
const exportClause = ts.createNamedExports(exportSpecifiers);
const newEd = ts.updateExportDeclaration(ed, ed.decorators, ed.modifiers, exportClause, ed.moduleSpecifier);
return newEd as ts.ExportDeclaration
};
/** Generate documentation for all classes in a set of .ts files */
function generatExportList(fileNames: string[], options: ts.CompilerOptions): void {
// Build a program using the set of root file names in fileNames
let program = ts.createProgram(fileNames, options);
// Get the checker, we will use it to find more about classes
let checker = program.getTypeChecker();
let exportCurrentVersion: DocEntry[] = [];
// Visit every sourceFile in the program
for (const sourceFile of program.getSourceFiles()) {
if (!sourceFile.isDeclarationFile) {
// Walk the tree to search for classes
ts.forEachChild(sourceFile, visit);
}
}
classList.forEach((classNode) => {
if (classNode.symbol.parent) {
let pathClass = classNode.symbol.parent.escapedName.replace(/"/g, "");
exportedAllPath.forEach((currenPath) => {
let pathNoExtension = currenPath.replace(/\.[^/.]+$/, "");
if (pathNoExtension === pathClass) {
// console.log('pathClass'+ pathClass);
// console.log('pathNoExtension '+ pathNoExtension);
extractExport(classNode);
return;
}
});
}
});
exportCurrentVersion.sort((nameA, nameB) => nameA.name.localeCompare(nameB.name));
console.log(chalk.green(`Saving new export in ${newLibExports}`));
fs.writeFileSync(newLibExports, JSON.stringify(exportCurrentVersion, undefined, 4));
var exportNewJSON = JSON.parse(JSON.stringify(exportCurrentVersion));
exportFilesVersions.forEach((currentExportVersionFile) => {
error_array = [];
warning_array = [];
try {
var currentExportVersionJSON = JSON.parse(fs.readFileSync(`${currentExportVersionFile}`, 'utf8'));
} catch (error) {
console.log(chalk.red(`${currentExportVersionFile} json not present`));
throw new Error(`Undetected export comapring file ${currentExportVersionFile}`);
}
console.log(chalk.green(`Comparing ${newLibExports} and ${currentExportVersionFile}`));
check_export(currentExportVersionJSON, exportNewJSON);
print_warnings();
print_errors();
if (error_array.length > 0) {
throw new Error('Export problems detected');
} else {
return;
}
})
function extractExport(node: ts.Node) {
//skip file with export-check: exclude comment
if (node.getFullText(node.getSourceFile()).indexOf('export-check: exclude') > 0) {
return;
}
let { line, character } = node.getSourceFile().getLineAndCharacterOfPosition(node.getStart());
//console.log(line + " " + character + " " + node.getSourceFile().fileName);
let symbol = checker.getSymbolAtLocation(node);
if (symbol) {
let arryCalls = recursiveStackSave(node);
let className: any = symbol.escapedName;
let filename = node.getSourceFile().fileName.substring(node.getSourceFile().fileName.indexOf('lib'), node.getSourceFile().fileName.length);
exportCurrentVersion.push(serializeClass(className, line, character, filename, arryCalls));
// if (className === "ContentMetadataService") {
// console.log(chalk.red("exportedAllPath" + exportedAllPath));
// console.log(chalk.red("ContentMetadataService"));
// recursiveStack(node);
// }
} else {
let arryCalls = recursiveStackSave(node);
let className: any = (node as ts.ClassDeclaration).name.escapedText;
let filename = node.getSourceFile().fileName.substring(node.getSourceFile().fileName.indexOf('lib'), node.getSourceFile().fileName.length);
exportCurrentVersion.push(serializeClass(className, line, character, filename, arryCalls));
// if (className === "ContentMetadataService") {
// console.log(chalk.greenBright("exportedAllPath" + exportedAllPath));
// console.log(chalk.greenBright("ContentMetadataService"));
// recursiveStack(node);
// }
}
}
function recursiveStackSave(node: ts.Node, arrayCalls?: string[]) {
if (!arrayCalls) {
arrayCalls = [];
}
let filename = node.getSourceFile().fileName.substring(node.getSourceFile().fileName.indexOf('lib'), node.getSourceFile().fileName.length);
let { line, character } = node.getSourceFile().getLineAndCharacterOfPosition(node.getStart());
arrayCalls.push(node.getSourceFile().fileName);
if (node.parent) {
recursiveStackSave(node.parent, arrayCalls)
}
return arrayCalls;
}
function recursiveStack(node: ts.Node) {
let filename = node.getSourceFile().fileName.substring(node.getSourceFile().fileName.indexOf('lib'), node.getSourceFile().fileName.length);
let { line, character } = node.getSourceFile().getLineAndCharacterOfPosition(node.getStart());
console.log(chalk.bgCyan(line + " " + character + " " + node.getSourceFile().fileName));
if (node.parent) {
recursiveStack(node.parent)
}
}
/** visit nodes finding exported classes */
function visit(node: ts.Node) {
// Only consider exported nodes
if (node.kind === ts.SyntaxKind.ClassDeclaration) {
if (node.decorators) {
node.decorators.forEach((decorator) => {
visit(decorator as ts.Node);
});
}
classList.push(node);
}
if (node.kind === ts.SyntaxKind.PropertyAssignment) {
const initializer = (node as ts.PropertyAssignment).initializer;
visit(initializer as ts.Node);
}
if (node.kind === ts.SyntaxKind.Identifier) {
extractExport(node);
}
if (node.kind === ts.SyntaxKind.ArrayLiteralExpression) {
(node as ts.ArrayLiteralExpression).elements.forEach((element) => {
visit(element as ts.Node);
});
}
if (node.kind === ts.SyntaxKind.Decorator &&
((node as ts.Decorator).expression as any).expression.text === "NgModule") {
((node as ts.Decorator).expression as any).arguments.forEach((argument) => {
argument.properties.forEach((property) => {
if (property.name.escapedText === "exports") {
visit(property as ts.Node);
}
});
});
}
if (ts.isExportDeclaration(node)) {
if (node.exportClause) {
node.exportClause.elements.forEach(exportCurrent => {
extractExport(exportCurrent as ts.Node);
});
} else {
(node.parent as any).resolvedModules.forEach((currentModule) => {
if (currentModule) {
let find;
exportedAllPath.forEach((currentExported) => {
if (currentModule.resolvedFileName === currentExported) {
find = currentExported;
}
})
if (!find) {
exportedAllPath.push(currentModule.resolvedFileName);
}
}
})
visit(node.moduleSpecifier);
}
}
if (ts.isModuleDeclaration(node)) {
// This is a namespace, visit its children
ts.forEachChild(node, visit);
}
}
/** Serialize a symbol into a json object */
function serializeSymbol(className: string, line?: number, character?: number, fileName?: string, arryCalls?: string[]): DocEntry {
return {
position: {
line: line,
character: character,
fileName: fileName
},
name: className
};
}
/** Serialize a class symbol information */
function serializeClass(className: string, line?: number, character?: number, fileName?: string, arryCalls?: string[]) {
let details = serializeSymbol(className, line, character, fileName, arryCalls);
return details;
}
/** True if this is visible outside this file, false otherwise */
function isNodeExported(node: ts.Node): boolean {
return (ts.getCombinedModifierFlags(node) & ts.ModifierFlags.Export) !== 0 || (!!node.parent && node.parent.kind === ts.SyntaxKind.SourceFile);
}
}
generatExportList(process.argv.slice(2), {
target: ts.ScriptTarget.ES5, module: ts.ModuleKind.CommonJS, removeComments: false
});