Compare commits

...
458 Commits
Author SHA1 Message Date
VitoandEugenio Romano 88e961d12a [ADF-1653] [ADF-1651] - disabled download for external source and added download for same login content (#5450)
* ADF-1653 - disabled download for external content

* ADF-1653 - ADF-1651 - disabled download for external source and added download for same login content

* ADF-1653 - using downloadService instead of contentService

* improve solution

* improve solution

* fix unit

* add more unti test

* fix lint

Co-authored-by: Eugenio Romano <eromano@users.noreply.github.com>
2020-02-06 15:07:59 +00:00
Adina Parpalita 7d04297e6e [ADF-5073] Sorted column header is incorrectly read by a screen reader (#5449)
* translate column title

* remove forgotten empty lines

* enable screenshots for investigating weirdly failing tests

* reenable the stages
2020-02-06 13:54:58 +00:00
Eugenio Romano 3896ce2472 bump 3.7.0 2020-02-06 13:36:24 +00:00
Mark Hulbert 5989671670 [ADF-5075] Update compatibility matrix for 3.7.0 (#5453) 2020-02-06 12:45:43 +00:00
Eugenio Romano 64254d988f Update .travis.yml 2020-02-06 11:32:25 +00:00
Geeta Mandakini Ayyalasomayajula 446e4bb37e AAE-1666 - updated simpleapp to test the multi-instance result collection (#5451)
* added 2 new forms 'mealform' and 'resultcollectionform' to simpleapp and updated the multiinstance-usertask process definition to have another task to display the output of the result collection.

* added the 2 new form names to the resources file.
2020-02-06 01:20:47 +00:00
Alexandra Abrudan 9276333352 [AAE-1453] added e2e tests for checking different configurations for people/group cloud widgets (#5446) 2020-02-06 01:18:30 +00:00
dhrn 4b1471d9c3 [ADF-5066] APS2 › Process List test need to be automated (#5441)
* [ADF-5066] APS2 › Process List test need to be automated

* fixed spell check error

* fixed errors

* taskname from resource

* fixed e2e

* fixed comments

* fixed declartions
2020-02-05 16:49:30 +00:00
Eugenio Romano a98249e07f update e2e test 2020-02-05 15:33:14 +00:00
Eugenio Romano 9f113ecd15 Update update-children.sh 2020-02-05 15:08:57 +00:00
Eugenio Romano 3cb525d060 Update RelNote370.md 2020-02-05 14:05:01 +00:00
Eugenio Romano 83c4e1d382 trigger build 2020-02-05 12:54:21 +00:00
ioan-sabau 2c9c564f3a #1256 Fix Icon alignment mismatch and the rows to have the same height. (#5447) 2020-02-05 12:04:18 +00:00
Maurizio Vitale bab4906632 [AAE-1539] People/Group - Add a formControl for the chip field (#5445)
* Add a formControl for the chip component

* on search reset the error and trim later on
2020-02-04 16:53:37 +00:00
Denys Vuika bd3957dcee [ADF-5065] people and group picker tests, clean code (#5442)
* cleanup component types

* more readable tests

* clean code

* C291998: render preselected people

* clean code

* extra tests and clean code

* fix test after rebase
2020-02-03 15:10:17 +00:00
arditdomi d9e0847b18 [AAE-1594][AAE-1631] Fix not able to search for specific users, valid… (#5429)
* [AAE-1594][AAE-1631] Fix not able to search for specific users, validation not working for partial username

* [AAE-1594][AAE-1631] Fix unit tests

* [AAE-1594] Refactor comparing preselcted user with keycloak user, add unit tests for search

* [AAE-1594] Add missing undefined check

* [AAE-1594] Ignore blank space user/groups search
2020-02-03 10:15:18 +00:00
Maurizio Vitale 0a25254691 Revert "allow admins to view cloud demos (#5436)" (#5437)
This reverts commit d37393b695.
2020-01-31 23:39:22 +00:00
Eugenio Romano cac31e372c Update .travis.yml 2020-01-31 16:18:23 +00:00
Denys Vuika d37393b695 allow admins to view cloud demos (#5436) 2020-01-31 11:47:18 +00:00
Denys Vuika 0256a16ea4 extra unit tests for breadcrumb (#5431) 2020-01-30 22:43:35 +00:00
Eugenio Romano a183ed8884 trigger child build after merge like JS-API (#5427) 2020-01-30 11:58:23 +00:00
Gloria Broadbent 80ae09d06a ALL LANGUAGES: Fully localised updated files for ADF 3.7 to fix LOC-187 (#5428) 2020-01-30 11:57:36 +00:00
Eugenio Romano c9d16dc9ca [AAE-1360] Remove DELETED status from process instances filter dropdown (#5423)
* remove not needed status

* fix unit

* Update app.config.json
2020-01-29 20:52:48 +00:00
Eugenio Romano 5d28a162c2 fix preselect user check (#5420) 2020-01-29 19:59:29 +00:00
Eugenio Romano 2434d9a09c fix image asset 2020-01-29 18:05:03 +00:00
Eugenio Romano abd3b0f1fe change user for cloud test (#5422) 2020-01-29 15:40:54 +00:00
davidcanonieto f551ad52a6 [AAE-1558] Update apps to use new structure (#5421) 2020-01-29 12:35:06 +00:00
arditdomi 95c7074d65 [AAE-1594] Fix partial group name of a valid group should not be valid, fix form-cloud able to search when people/group widget is readonly (#5417) 2020-01-29 09:23:03 +00:00
arditdomi 2e71bc6e27 [AAE-1532] Fix typing fast in search with roles gives wrong results in people/group cloud (#5418) 2020-01-29 09:17:51 +00:00
Eugenio Romano 46c54b7083 fix destroy worker and internalize css pdfjs (#5415) 2020-01-29 07:47:57 +00:00
Eugenio Romano e70b977a71 review documentation (#5407) 2020-01-28 18:06:25 +00:00
Francesco Corti 25e76facd6 Draft of ADF 3.7 release note (#5412)
Draft of ADF 3.7 release note
2020-01-28 18:06:16 +00:00
Eugenio Romano 64ba19a9ce vulnerability and license doc (#5409)
* vulnerability and license doc

* Update license-info-3.7.0.md
2020-01-28 18:05:33 +00:00
arditdomi 80f805801f [AAE-1562] Fix should not be able to search already selected user (#5414) 2020-01-28 17:54:01 +00:00
arditdomi 0ae55ba590 [AAE-1602][AAE-1594] Fix duplicated users issue when validation enabl… (#5413)
* [AAE-1602][AAE-1594] Fix duplicated users issue when validation enabled, fix partial username should not return a valid user

* [AAE-1602][AAE-1594] Fix removing incorrect invalid user/group when name or id matches
2020-01-28 15:05:26 +00:00
Denys Vuika d09373501f [AAE-1564][DW-1654] improved datatable schema (#5408)
* improved datatable schema

* collect all runtime columns
2020-01-28 14:08:18 +00:00
Eugenio Romano 1754baa111 fix release project cli and dependency (#5404) 2020-01-27 13:15:25 +01:00
Mark Hulbert 1bfead2cd3 [ADF-5048] Review UI strings (#5406) 2020-01-27 13:12:55 +01:00
Cilibiu Bogdan f8d3b29ff5 [ADF-5064] Info Drawer - More and Less Information buttons are reversed (#5405)
* display correct button for state

* update tests

* update tests
2020-01-27 13:07:44 +01:00
Eugenio RomanoandMark Steadman 3767ecb91c chore: hiding icon in table from SR users (#5403)
Co-authored-by: Mark Steadman <47225088+Steady5063@users.noreply.github.com>
2020-01-25 16:56:56 +01:00
Eugenio RomanoandMark Steadman 142e142ccb [ACA-2567] - sortable (#5402)
* chore: aca-2567 accessibility for sortable columns

* chore: sortable table accessibility update

* fix: refactor sortable table headers into function

* chore: updated sort by text

Co-authored-by: Mark Steadman <47225088+Steady5063@users.noreply.github.com>
2020-01-25 16:13:30 +01:00
Chris Rodriguez f27b94017a [ACA-2474] adding instructions to the calendar for use (#5387)
* chore: adding instructions to the calendar for use

* chore: updating lockfile

* chore: fixing package

* chore: updated html for test

* chore: adding instructions to the calendar for use

* chore: updating lockfile

* chore: fixing package

* Wchore: updated html for test

* chore: removed unnused random string gen

* chore: synced lockfile; removed unnused prop
2020-01-25 15:04:23 +01:00
Taylor 7d14e3fe86 [ACA-2605] - fix: add aria-label to toggle button (#5397)
* fix: add aria-label to toggle button

* fix: swap label to use translation key and pipe
2020-01-25 14:49:48 +01:00
Martin Muller f0189efd5a [ACA-2755] [SSO] Unable to access a private url after a public url was loaded in the same browser tab (#5363)
* If silentlogin do implicitLogin

* If silentlogin do implicitLogin

* Unit tests

* Unit tests Trigger new run

* Authguard should return true for canActive

* adjust unit test and allow AuthGuard CanActive for the SSO case

* adjust unit test and allow AuthGuard CanActive for the SSO case

* adjust unit test and allow AuthGuard CanActive for the SSO case

* adjust unit test and allow AuthGuard CanActive for the SSO case

* Add isPublicUrl logic to authguard

* adjust unit test and allow AuthGuard CanActive for the SSO case

* Allow canActive true for public urls like /settings

* fix redirect login for SSO

* Try not using isPublicUrl from js-api as that triggers an implicit login already

* Try not using isPublicUrl from js-api as that triggers an implicit login already

* Try not using isPublicUrl from js-api as that triggers an implicit login already

* Try not using isPublicUrl from js-api as that triggers an implicit login already

* move sso silentlogin fix to ecm authguard

* Try only todo the implicitLogin if not logged in

* Try only todo the implicitLogin if not logged in

* Try only todo the implicitLogin if not logged in

* Try only todo the implicitLogin if not logged in

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* remove implicit flow parameter and pray that those process cloud tests are passing

* remove implicit flow parameter and pray that those process cloud tests are passing

* remove implicit flow parameter and pray that those process cloud tests are passing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* move authService stuff in the login component from ngOnInit to constructor

* move authService stuff in the login component from ngOnInit to constructor

* move authService stuff in the login component from ngOnInit to constructor

* move authService stuff in the login component from ngOnInit to constructor

* not use login component for silent login anymore!

* try figuring out why process cloud is failing

* try figuring out why process cloud is failing

* reuse is PublicUrl from js-api

* reuse is PublicUrl from js-api

* revert travis changes

* revert travis changes

* Check if oauth is enabled

* Check if oauth is enabled

* Check if oauth is enabled

* Check if oauth is enabled
2020-01-25 10:15:24 +01:00
Eugenio Romano 469a806894 fix share test and search condition (#5401) 2020-01-25 10:05:54 +01:00
Eugenio Romano 5e284d487c make the pipeline great again (#5400) 2020-01-24 21:48:12 +01:00
Eugenio Romano a01d838d65 remove flaky test (#5395) 2020-01-24 12:58:20 +00:00
Chris Rodriguez 4b102c1e7f [ACA-2475] keyboard trap (#5386)
* chore: added cdk keyboard trap to mat-datpicker

* chore: keyboard trap in datetimepicker
2020-01-24 11:08:02 +00:00
Cristina Jalba ea8353639c Adding process variables to an existent process definition (#5394) 2020-01-24 09:04:37 +00:00
Gloria Broadbent b0f0abe9f7 GERMAN: Fix for https://github.com/Alfresco/alfresco-ng2-components/issues/5379 as reported by georg-un (#5392) 2020-01-23 18:28:13 +00:00
Popovics András 3c95425322 Fix wrong import (#5393) 2020-01-23 17:50:06 +00:00
Eugenio Romano 05c1b72b1a remove update PR env (#5383) 2020-01-23 12:08:59 +00:00
Denys Vuika c7c1d76510 [AAE-936] injecting external settings for amount widget (#5389)
* injecting external settings for amount widget

* undo form changes
2020-01-23 11:59:40 +00:00
Chris Rodriguez deb2a0082f chore: removes calendar popup on focus (#5388) 2020-01-22 18:50:28 +00:00
Alexandra Abrudan 7b3b9b2515 [AAE-1152] fixed tests using single mode displayed as a tag too (#5385) 2020-01-22 14:57:09 +00:00
Maurizio Vitale a0caed0f99 [AAE-1501] EditProcessCloud/EditTaskCloud - Ability to fetch applications by role (#5380)
* ProcessFilter - Be able to fetch applications based on the role

* TaskFilter - be able to fetch the applications by role
2020-01-21 18:51:38 +00:00
Alexandra Abrudan f20e158eaf [AAE-1152] added e2e tests for People and Group of people - CloudWidgets (#5372)
* [AAE-1152] added e2e tests for People and Group of people - CloudWidgets

* [AAE-1152] made code more readable

* [AAE-1152] added public-api file

* Fixing import in index.ts

* refactoring and creating public-api file
2020-01-21 17:38:34 +00:00
arditdomi 3c3aa7599a [AAE-1372] Refactor People/Group cloud component (#5355)
* [AAE-1372] Fix read-only preselected users can be deleted

* [AAE-1372] Fix people/group cloud component readonly mode

* [AAE-1372] Refactor People/Group Cloud components

* [AAE-1372] Refactor People/Group Cloud components

* [AAE-1372] Clear invalid user in single mode after replacing with a valid user

* [AAE-1372] Add progress bar while validation loading. When user gets removed remove from validation

* [AAE-1372] Fix lint errors

* [AAE-1372] Fix single selection e2e

* [AAE-1372] Fix unit tests - people/group cloud components

* [AAE-1372] Fix e2e, set People/Group formControls invalid when has preselect errors

* [AAE-1372] Fix invalid form control bug
2020-01-21 13:37:57 +00:00
Eugenio Romano 91abe87ccc fix JWT error (#5376) 2020-01-20 17:24:11 +00:00
Silviu Popa e0bc43d933 [AAE-1235] - fix task completion with datetime form widget (#5340) 2020-01-17 14:38:56 +00:00
Marouan Bentaleb dac0f72b96 Adding amount row editor for dynamic table (#5366)
* Adding amount row editor for dynamic table

* Adding amount row editor for dynamic table
2020-01-15 15:26:30 +01:00
cristinaj fd74811639 [AAE-838]Add a method to wait until datatable contains less then a specific nr… (#5370)
* Add a method to wait until datatable contains less then a specific nr of rows. This could be useful for waiting for datatable to load when searching or filtering it

* Moved the method to pagination page

* Renamed the method
2020-01-15 14:44:40 +01:00
Cilibiu Bogdan b931c4a85c [ADF-5062] Content Node Selector - show inputs based on configuration (#5368)
* toggle search and dropdown list by configuration

* update docs

* tests

* fix inputs setter

* rename
2020-01-15 10:51:57 +01:00
Eugenio Romano 3cf12fca49 fix readonly attach file scenarios (#5365) 2020-01-14 00:14:11 +01:00
Eugenio Romano fd53531be7 unify rancher update strategy (#5367)
* unify rancher update strategy

* fix script

* fix script
2020-01-13 16:06:59 +01:00
Eugenio Romano a8c2a0b1e2 [AAE-1174] select first user info when open the first time (#5345)
* select first info user when open

* add early check to build the tabs

* fix lint

* try different solution
2020-01-13 11:24:03 +01:00
Maurizio Vitale 26677c6789 adf-cli command init-aae use the user based on the role (#5364)
* Reuse the common deployment and modeling api

* Add files to testing

* Pass parameters

* Travis initaae with correct parameters

* Travis initaae with correct parameters

* Add cli to the smart build
2020-01-10 17:02:16 +00:00
cristinaj 94e02c0552 [AAE-1361]Add complete task of a process method (#5359)
* Add complete task of a process method

* Removed completeTaskOfAProcess method. We will add this along with a proper refactoring

* Remove unnecessary check
2020-01-08 16:46:16 +00:00
Alex Bolboșenco 3ecf6a3663 [AAE-1336] add version on completeTaskForm (#5354)
* add version on completeTaskForm

* fix test
2020-01-08 14:52:33 +01:00
Eugenio Romano bea8c61d91 new js-api should be deployed if build is ok (#5362) 2020-01-08 14:52:05 +01:00
Eugenio Romano 2d7a566cc5 close dialog in the redirect (#5361) 2020-01-08 14:33:06 +01:00
Eugenio Romano ad9aaf2b40 add mp3 support mediatype viewer/thumbnail blob (#5357) 2020-01-07 16:13:49 +01:00
Gloria Broadbent 755c84c7a0 Fix for LOC-186 - mistranslation in French (#5358) 2020-01-07 13:41:41 +01:00
Alfresco Build User 124c198f15 Update ADF packages version 3.7.0-beta6 (#5356) 2020-01-07 11:18:45 +01:00
siva kumar 68df1ad440 [AAE-1351] [GroupCloudComponent] Validate pre-selected groups (#5353)
* * Added an input flag to validate preselected groups.
* Modified demo shell groups page.

* * Added unit tests to the recent changes.

* * Fixed comments
2020-01-03 10:29:29 +00:00
siva kumar 12d068c228 [AAE-1344] [FE] - Removed all pre-selected users on removing of single pre-selected user. (#5350)
* [AAE-1344] [FE] - Removed all preselected users on removing of single pre-selected user.

* * Fixed Search problem on admin manage permision dialog

* * Fixed failing unit test.

* * Fixed failing unit test on group component
2020-01-02 13:09:27 +00:00
Eugenio Romano 9c83c35e61 [ADF-5009] close all the dialogs after false canActivate event (#5312)
* close all the dialogs after false canActivate event

* Update auth-guard-bpm.service.spec.ts

* sso fix

* fix lint
2020-01-02 10:21:10 +00:00
Eugenio Romano d7e56b641e Update package.json (#5346) 2020-01-02 10:19:14 +00:00
arditdomi 133a5c3df6 [AAE-1137] Refactor delete process directive (#5317)
* [AAE-1137] Refactor delete process directive

* [AAE-1137] Fix unit tests

* [AAE-1137] Add can show directive output

* [AAE-1137] Remove from demo-shell, update documentation

* [AAE-1137] Refactor cancel process directive

* [AAE-1137] documentation typo

* [AAE-1137] Add unsubscription

* [AAE-1137] Fix build errors

* [AAE-1137] Remove unused declaration
2019-12-31 15:41:54 +00:00
dhrn aa12be15d4 [ADF-5043] Default adf-cloud-task-list and adf-cloud-process-list doesn't work (#5347) 2019-12-23 17:17:03 +01:00
Eugenio Romano d8c35c9af0 [ADF-5055] update pdfjs (#5344)
* update pdfjs

* fix

* fix test
2019-12-22 17:52:38 +01:00
mergify[bot] 50f8e58314 Merge pull request #5338 from Alfresco/dev-eromano-ADF-4980
[ADF-4980] Fix app prefix
2019-12-20 15:46:27 +00:00
arditdomi f97cf0f446 [AAE-1260] Add changes detection for ProcessHeaderCloud when a process gets cancelled (#5341)
* [AAE-1260] Add changes detection for ProcessHeaderCloud when a process is cancelled

* [AAE-1260] Add service documentation

* [AAE-1260] fix typo

* [AAE-1260] Fix unit tests

* [AAE-1260] delete process header cloud service
2019-12-20 12:17:44 +00:00
Eugenio Romano e4fbd2c3d6 update e2e 2019-12-20 11:56:12 +00:00
Eugenio Romano 9ea5bad807 fix test 2019-12-19 13:25:51 +00:00
Eugenio Romano 02ea026b6b enanche doc 2019-12-19 13:25:51 +00:00
Eugenio Romano aba7095d3d remove other PR code 2019-12-19 13:25:50 +00:00
Eugenio Romano 0c9726049a fix usage of prefix and remove localstorage use in favour of our internal service 2019-12-19 13:25:50 +00:00
Eugenio Romano ffef29fd77 Update auth-guard-bpm.service.spec.ts 2019-12-19 13:25:49 +00:00
Eugenio Romano 26be911753 close all the dialogs after false canActivate event 2019-12-19 13:25:49 +00:00
Eugenio Romano af51977db4 fix userinfo e2e (#5343) 2019-12-19 12:42:35 +00:00
mergify[bot] 2013e5a6b0 Merge pull request #5342 from Alfresco/dev-dhrn-ADF-5001
[ADF-5001] Process Audit File Log APS1 section wrong instruction for complete processes
2019-12-19 10:03:29 +00:00
cristinaj 5c1f02a1fd [AAE-865]Create card view text item PO (#5320)
* Create card view text item PO

* Changed back the puppeteer version

* Fix the rootElement locator

* no message

* Fix wrong rebase

* * Added unique data-automation-id on cardViewTextComponent.

* Changed data-automation-id for float
2019-12-19 08:50:34 +00:00
dhrn a097926a5d [ADF-5001] Process Audit File Log APS1 section wrong instruction for complete processes 2019-12-19 11:25:07 +05:30
davidcanonieto dead0087f4 [AAE-1022] Fix components to work on Community environments (#5296)
* [AAE-1022] Fix components to work on Community environments

* Remove appName input
2019-12-18 17:33:50 +00:00
mergify[bot] 0897d372a6 Merge pull request #5339 from Alfresco/dev-abolbosenco-AAE-1238
[AAE-1238] Re-enable appVersion check
2019-12-18 15:17:02 +00:00
Eugenio Romano 16b300d871 [AAE-1237] remove excluded test (#5336)
* remove excluded test

* move exclude list in e2e folder
2019-12-18 14:54:29 +00:00
Alex Bolboșenco f4005102db [AAE-1238] Re-enable appVersion check 2019-12-18 15:56:56 +02:00
Alex Bolboșenco ba9f14f90a [AAE-1238] Re-enable appVersion check 2019-12-18 15:54:24 +02:00
Eugenio Romano f5b6676bcd Update working-with-nodes-api-service.md (#5337) 2019-12-18 12:13:17 +00:00
mergify[bot] da3a51dbed Merge pull request #5332 from Alfresco/dev-siva-AAE-1200-add-edit-icon
[AAE-1200] AAE - FE - Provide a way to define icon on CardViewArrayItemComponent
2019-12-17 12:52:19 +00:00
cristinaj 46d976e318 [AAE-641]Add tests for assignee not able to release process task (#5233)
* Add tests for assignee not able to release process task

* Changed the assignee of assigneeprocess process definition from admin.adf to hruser

* Changed the process used and changed random user to hruser
2019-12-17 12:42:07 +00:00
sivakumar414ram 1ea7efab8e * Updated doc 2019-12-17 16:26:37 +05:30
sivakumar414ram 86bd37b159 * Updated unit tests 2019-12-17 16:26:37 +05:30
sivakumar414ram e3f7e3da09 * Add Edit icon 2019-12-17 16:26:36 +05:30
Alexandra Abrudan 2cc7fe7efe [AAE-1178] ADF - deleted un-necessary steps (#5335)
* [AAE-1178] e2e/pages/adf - deleted un-necessary steps waitUntilElementIsVisble & waitUntilElementIsClickable before click() action & clearSendKeys()

* [AAE-1178] lib & cloud - deleted un-necessary steps waitUntilElementIsVisble & waitUntilElementIsClickable before click() action & clearSendKeys()
2019-12-17 09:32:50 +00:00
Eugenio Romano 5c7cd57368 fix tag script 2019-12-17 09:26:11 +00:00
Eugenio Romano 3f4c5c94b4 Update README.md 2019-12-16 14:57:59 +00:00
cristinaj 9778ca67e7 [AAE-1180]Fix datatable tests (#5334)
* Fix datatable tests

* excluded some of the tests that depend on fixing the rendition service issue we have with ACS 6.2 => AAE-1237
2019-12-16 10:20:08 +00:00
maurizio vitale 89de7393d2 fix version error 2019-12-12 20:11:44 +00:00
Eugenio Romano 5bd75a8295 fix 2019-12-12 18:04:15 +00:00
Maurizio Vitale ac40353e77 temporary comment code (#5330) 2019-12-12 17:39:56 +00:00
Maurizio Vitale e1ff2909bd Fix the attach content from alfresco and local (#5328) 2019-12-12 13:41:40 +00:00
Snyk bot 4699f407e9 fix: package.json, package-lock.json & .snyk to reduce vulnerabilities (#5326)
The following vulnerabilities are fixed with a Snyk patch:
- https://snyk.io/vuln/SNYK-JS-TREEKILL-536781
2019-12-12 12:13:35 +00:00
Geeta Mandakini Ayyalasomayajula 90c5e41d67 updated simpleapp - calledprocess - usertask with a due date from the datetime process variable (#5327) 2019-12-12 10:16:18 +00:00
Maurizio Vitale a8361b52cf Making sure the people does not change the original obj reference (#5325) 2019-12-11 20:57:58 +00:00
Maurizio Vitale 7519554ded Fix readonly Fix add remove (#5324)
* Fix readonly Fix add remove

* Remove useless unit test

* Remove useless code
2019-12-11 17:51:14 +00:00
Maurizio Vitale 88d89b4ca8 [AAE-1152] Making sure the people and group widget is working fine as part of form (#5322)
* Making sure the people and group widget is working fine as part of the form

* Be able to save a form with people and group

* Fix tslint

* Fix html error

* Fix unit test
2019-12-11 11:22:50 +00:00
cristinaj d8b703b6ef Fixed the process definition name (#5321) 2019-12-10 16:17:10 +00:00
Eugenio Romano 58ca03b077 missing asset 2019-12-10 14:09:15 +00:00
Eugenio Romano 703b96c9b0 [AAE-1152] Add People and Group component in the AAE Forms (#5314)
* firt version groupo component widget

* fix group

* fix compilation issue

* fix compilation issue

* fix compilation issue

* fix compilation issue

* fix problem update script

* multiple browser ps cloud

* add field assignment

* add field in form model

* no need subobject we need an issue to refactor the field model

* no need subobject we need an issue to refactor the field model

* fix unit test

* remove title modify

* revert

* fix lint

* exclude AAE-1179

* exclude tooltip e2e
2019-12-10 11:24:24 +00:00
Maurizio Vitale a63e487637 Use ecmHost in case of startFormEvent (#5318) 2019-12-10 11:11:05 +00:00
mergify[bot] acd5d78662 Merge pull request #5315 from Alfresco/dev-crisj-ADF-840
[AAE-840]Add method to start a process knowing the name and the processDefinition
2019-12-09 12:25:21 +00:00
siva kumar 84dac48d9b [ADF-5031][PeopleCloudComponent] [PeopleCloudComponent] Provide a way to make selected items read-only (not remove) (#5289)
* [DW-1618] Admin App -Application Instances - Able to delete all the admin users in Manage app permissions.

* [ADF-5031] [PeopleCloudComponent] Do not delete selected users completely.

* Added flag for not to remove last chip
* Added unit tests to the changes.

* * Added doc

* * Changed removeLastChip to remove

* * Added readonly strategy
* Removed remove input
* Updated unit tests

* * Added  tooltip
* Hiding remove icon.

* * Fixed unit tests
2019-12-09 10:40:33 +00:00
Cristina Jalba c2f7cdb516 Add method to start a process knowing the name and the processDefinition 2019-12-09 08:02:34 +02:00
mergify[bot] 57df944bbf Merge pull request #5313 from Alfresco/eromano-patch-2
Fix angular configuration demo shell
2019-12-07 19:01:43 +00:00
Eugenio Romano 57c5d7fc1a Fix angular configuration demo shell 2019-12-05 21:43:04 +00:00
mergify[bot] f3dedbf42c Merge pull request #5311 from Alfresco/mvitale-AAE-1121-kubectl-clean-app
Ability to clean the env passing apps name
2019-12-05 11:13:23 +00:00
Maurizio Vitale 43995e3795 fix lint 2019-12-05 10:29:58 +00:00
maurizio vitale b423eb8c51 Ability to clean the env passing apps name 2019-12-04 18:22:34 +00:00
maurizio vitale 9a91aa28a2 Pass to the deploy the infrastructure 2019-12-04 18:21:35 +00:00
cristinaj fcb83b8990 Add methods for form outcome buttons and info for simpleapp process and form (#5310) 2019-12-04 14:07:49 +00:00
siva kumar cc4c9bc567 [ADF-5034] [GroupCloudComponent] Provide a way to make pre-selected groups read-only. (#5306)
* Added readonly property to the IdentityGroupModel.
* Updated unit tests.
* Changed class to interface.
* Updated doc
2019-12-04 13:26:56 +00:00
mergify[bot] c01f2744b6 Merge pull request #5301 from Alfresco/dev-gmandakini-add-editjson-dialog
Add editjson dialog
2019-12-04 12:42:10 +00:00
gmandakini 4c9da11092 added a thrid optional partameter for clickField method in the FormFields to accomodate cssContainingText locators. 2019-12-04 11:17:45 +00:00
gmandakini 1260e779ad added edit-json-dialog definition to be used in process workspace. 2019-12-04 11:17:45 +00:00
Eugenio Romano 5c1aff4187 [AAE-991] ADF - Add CI build failure notification #801 (#5308)
* Update .travis.yml

* Update .travis.yml
2019-12-03 16:40:08 +00:00
Cilibiu Bogdan 79eb9365c8 [ADF-5007] Comments - textarea Escape event cannot be canceled (#5266)
* use keydown event

* cancel event propagation

* update tests
2019-12-03 14:11:21 +00:00
Geeta Mandakini Ayyalasomayajula f2cbd0cd9a update the resources file to have the connectors (#5307) 2019-12-03 12:18:50 +00:00
mergify[bot] ca36618464 Merge pull request #5264 from Alfresco/dev-pionnegru-ADF-5006
[ADF-5006] Datatable - custom cell template focus not working
2019-12-03 10:51:17 +00:00
AleAb25 f090fb51cb [ADF-5022] added automation for Display Value Widget (#5302)
* [ADF-5022] added automation for Display Value Widget

* [ADF-5022] fixed licences

* [ADF-5022] fixed test name format

* [ADF-5022] fixed import-BrowserVisibility and adding type for fieldId & re-write methods with try-catch for DisplayValue
2019-12-03 10:48:03 +00:00
cristinaj e949b8444c Remove datatable tests related to demo-shell only. (#5305) 2019-12-03 06:53:07 +00:00
Eugenio Romano 5d11aedbc3 Update .travis.yml (#5304) 2019-12-02 20:13:18 +00:00
Geeta Mandakini Ayyalasomayajula 0f6e420cdc Updated the rest url being used in the miltiinstance-servicetask, added the correlationkeys to the interrupting Start event and noninterrupting start event with in the Event Subprocess and added Throw event in the UI and the process variable as part of the message name in the Intermediate Massage Event. (#5303) 2019-12-02 18:08:15 +00:00
pionnegru 10b024e53a tests 2019-12-02 19:17:33 +02:00
pionnegru f06670f318 update docs 2019-12-02 19:17:33 +02:00
pionnegru 21d2d18d2e update column models 2019-12-02 19:17:32 +02:00
pionnegru 1784106e6b add focus parameter 2019-12-02 19:17:32 +02:00
pionnegru 7772f4a5e7 disable cell focus for actions template 2019-12-02 19:17:31 +02:00
pionnegru e4ae7b2466 enable focus from column definititon 2019-12-02 19:17:31 +02:00
Eugenio Romano 162e43fe3b Update protractor.conf.ts 2019-12-02 16:20:44 +00:00
Eugenio Romano fe802f29c0 Implement smart runner in ADF (#5300) 2019-12-02 14:59:16 +00:00
arditdomi b2ca28d3fd [ADF-5032] Add delete process directive (#5295) 2019-11-29 16:03:06 +00:00
Eugenio Romano 43f2c0bc65 Update .mergify.yml 2019-11-29 16:02:52 +00:00
Eugenio Romano e8477840b5 fix script 2019-11-29 15:55:41 +00:00
Geeta Mandakini Ayyalasomayajula 3d27323f5f updated the candidatebaseapp (#5298)
* updated the candidatebaseapp

* updated the resources file
2019-11-29 15:38:23 +00:00
Eugenio Romano cf83630573 [ADF-5033] Improve publish script (#5297)
* check if npm package is already present before to publish

* fix lint and remove duplicate password

* fix script
2019-11-29 14:51:46 +00:00
Eugenio Romano 8541591816 [ADF-5027] Fix APS rendition (#5285)
* fix APS rendition

* fix unit

* fix unit
2019-11-27 15:48:04 +00:00
Geeta Mandakini Ayyalasomayajula 094cf4ac0f updated multiinstance-completion process definition (#5290) 2019-11-27 12:07:52 +00:00
Eugenio Romano f95989809d Improve scripts after release (#5288)
* update scripts problems

* improve script

* fix alignment
2019-11-26 19:37:58 +00:00
dhrn 809b38aa2b [ADF-4823] [e2e] Displaying a file in a form does not work (#5069)
* [ADF-4823] [e2e] Displaying a file in a form does not work

* * delete removed

* * comments fixed

* * e2e fixed

* * await removed

* * form name fixed

* * rebase conflicts

* * fixed e2e
2019-11-26 11:11:04 +00:00
Cilibiu Bogdan 90402ac43d [ADF-5015] DocumentList - favorites properties (#5278)
* merge entry properties to target

* fix default properties undefined value

* tests
2019-11-26 09:53:35 +00:00
Eugenio Romano 0fb954dd11 gix tag script 2019-11-25 13:11:23 +00:00
Eugenio Romano 27934b847f improve tag script 2019-11-25 12:29:51 +00:00
Eugenio Romano a1a9f33dae improve tag script 2019-11-25 12:24:33 +00:00
Eugenio Romano 238f6e7ce9 improve tag script 2019-11-25 12:05:43 +00:00
Eugenio Romano 46e53105c2 improve travis conf for avoid multiple tag 2019-11-25 11:44:33 +00:00
Eugenio Romano 8a41da0506 bump 3.6.0 (#5283) 2019-11-25 11:03:35 +00:00
Silviu Popa 31e1fd8875 [AAE-459] ProcessCloud - set process definition pre-filled value for one result only (#5277)
* [AAE-459] ProcessCloud - disable process definition pre-fill

* refactor e2e test
2019-11-25 01:04:02 +00:00
Eugenio Romano 7d52449cad [LOC-168] Localization file 3.6.0 (#5281)
* Localization file 3.6.0

* remove not usefull test
2019-11-22 20:16:17 +00:00
Eugenio Romano a1d9ba2002 add 3.6.0 release license vulnerabilities info 2019-11-22 15:13:26 +00:00
Eugenio Romano 16054f9c10 [ADF-4943] Update dependencies (#5274)
* fix depenedencies

* fix date test

* fix date test
2019-11-22 14:50:21 +00:00
Francesco Corti eadfe12f5d [ADF-4945] Draft of the release note for 3.6.0. (#5272)
* Draft of the release note for 3.6.0.

* Update RelNote360.md
2019-11-22 14:19:50 +00:00
Denys Vuika 8e6e755ed1 Revert "[ADF-4861] Fix memory leak in Date widgets and Form Cloud Model (#5041)" (#5279)
This reverts commit 2def8d0557.
2019-11-22 14:03:49 +00:00
Eugenio Romano 1de2ff0cc9 [DOCS-5508] Add more info for kerberos (#5280)
* Add more info for kerberos

* fix

* Minor updates
2019-11-22 12:58:33 +00:00
dhrn e0f00dd7ae [ADF-5013] Dropdown does not display the default value (#5275)
* [ADF-5013] Dropdown does not display the default value

* Revert "[ADF-5013] Dropdown does not display the default value"

This reverts commit a18d2161

* * fixed e2e

* unit test added
2019-11-22 09:59:40 +00:00
siva kumar 5068cbf539 [ADF-5004] [CardViewTextItemComponent] Provide a way to have an icon for the clickable items (#5270)
* [ADF-5004] [CardViewTextItemComponent] Provide a way to have an icon for the clickable items.

* * FIxed failing unit tests* Modified task-details tests and add few more.
2019-11-22 09:37:32 +00:00
Denys Vuika e806e97c75 [AAE-207] support aps 1.x for upload reset (#5260)
* support aps 1.x for upload reset

* update test

* revert pdfjd change

* fix error reporting and crash from upload button

* i18n support for generic error

* fix test
2019-11-21 15:06:00 +00:00
Eugenio Romano c61de922af Fix ps e2e (#5262)
* fix ps e2e

* fix upload unit report

* fix cspell

* Update cspell.json

* fix e2e

* remove extra space

* fix e2e increase resolution

* try add a sleep before to cehck sorted in order to give datable time to refresh

* log order

* fix log

* change async ins ort

* remove sort testcase
2019-11-21 10:12:52 +00:00
Snyk bot 1ec827a90c fix: package.json, package-lock.json & .snyk to reduce vulnerabilities (#5271)
The following vulnerabilities are fixed with an upgrade:
- https://snyk.io/vuln/SNYK-JS-PDFJSDIST-469200


The following vulnerabilities are fixed with a Snyk patch:
- https://snyk.io/vuln/SNYK-JS-HTTPSPROXYAGENT-469131
2019-11-20 17:03:22 +00:00
davidcanonieto db55cdf997 [AAE-898] Fix Datetime card view model custom format (#5265)
* [AAE-898] Fix Datetime card view model custom format

* Fix e2e tests and rebase
2019-11-20 16:48:04 +00:00
arditdomi b016bf8167 [DW-1563] Complete button is not present for empty forms (#5269)
* [DW-1563] Complete button is not present for empty forms

* [DW-1563] Revert part of the changes

* [DW-1563] Remove unnecessary variable declaration
2019-11-20 15:32:25 +00:00
Silviu Popa 202764631a [ADF-5002] Datatable - fix focus selection for grid list (#5268)
* [ADF-5002] Datatable - fix focus selection for grid list

* fix faling e2e
2019-11-20 15:31:19 +00:00
Popovics András d87c9ec401 [AAE-880] Fix updater script in the cli (#5273) 2019-11-20 15:28:17 +00:00
Maurizio Vitale 037aab7ae1 [ADF-5008] Add an health checks on the services: (#5267)
* Add an health checks on the services:
deployment-service
modeling-service
dmn-service

* Refactoring
2019-11-20 14:54:53 +00:00
Martin Muller 9814e28027 Revert "Allow proper focus of last element after closing the dialog (#5234)" (#5261)
This reverts commit 0e2504a53f.
2019-11-18 15:13:28 +00:00
Eugenio Romano a6ad7a5ad0 Documentation update 3.6.0 (#5257)
* documentation update 3.6.0

* documentation update 3.6.0

* update missing doc
2019-11-18 12:34:28 +00:00
Mercy Chrysolite 7ca2f5d1e9 [ADF-4787] Invalid value of number field is parsed and fields with visibility conditions based on the number field are visible (#5255)
* add another field visibility condition

* * Fixed failing unit tests
2019-11-16 11:11:44 +00:00
Denys Vuika 173a160ee9 fix wrong import path 2019-11-15 14:52:33 +00:00
siva kumar ac4679fc10 [ADF-4994] Move realmRole functions inside JwtHelperService. (#5254)
* Moved Realm and client role function inside jwtHelperService.
* Updated unit tests.
2019-11-15 14:34:22 +00:00
Cilibiu Bogdan 81dcfa4341 [ADF-4995] Metadata - edit mode cannot be access via keyboard (#5253)
* use keydown over keyup

* fix test

* fix tests
2019-11-15 14:33:12 +00:00
Denys Vuika 3dd43ce9b5 [ADF-4997] no-duplicate-imports rule (#5256)
* no-duplicate-imports rule

* no-duplicate-imports rule
2019-11-15 13:38:01 +00:00
Denys Vuika a1169de915 improved form version check 2019-11-15 11:36:19 +00:00
Denys Vuika 161ba04367 fix 'standalone' spelling (#5252) 2019-11-14 22:08:45 +02:00
Denys Vuika 3644ba8b7c [DW-1486] form versioning and cloud service enhancements (#5248)
* support form versions retrieval

* rework cloud services, reduce code duplication

* revert app config changes

* fix api spelling error

* support task form versioning

* turn TaskDetailsCloudModel into interface

* remove commented code

* fix test

* update tests

* remove useless provider declarations
2019-11-14 15:04:21 +01:00
Geeta Mandakini Ayyalasomayajula 1f768eb22f updated the simpleapp with multiinstance processes (#5251)
* updated the simpleapp with multiinstance processes

* updated resources file
2019-11-14 12:19:26 +00:00
cristinaj 70dc7dcc9b Fixed start-visibility-form and start-task-visibility-form processes (#5250) 2019-11-14 08:52:04 +00:00
Silviu Popa adbee04c2c [AAE-849] improve search component (#5245) 2019-11-14 00:50:29 +01:00
swathikom c0c7f0cc1c Add getStatusByName in task list page (#5247) 2019-11-14 00:49:43 +01:00
AleAb25 6f42e0ea0e [AAE-485] - empty value for CardView Int Item e2e test (#5240)
* AAE-485 - empty value e2e test

* Updated test with try-catch block for AAE-485 / C321535
2019-11-13 19:44:05 +00:00
Denys Vuika cce4524274 upgrade node-sass to support node 12 (#5242) 2019-11-13 17:01:21 +00:00
siva kumar ae2caa8b90 * Used standalone prop to query tasks* Fixed typo standAlone to standalone.* Updated docs. (#5241) 2019-11-13 13:39:16 +00:00
arditdomi eb1f05dbeb [ADF-4979] Remove unnecessary demo shell required validation (#5244)
* [ADF-4979] Remove unnecessary demo shell required validation

* [ADF-4979] unused import
2019-11-13 12:44:40 +00:00
Silviu Popa b41514cad7 [AAE-463] - change dueDate render component (#5200)
* change dueDate render component

* fix tests

* fix lint

* rebase and add test

* split code into 2 declarations
2019-11-12 20:23:45 +01:00
Silviu Popa f20b78a2c5 [AAE-534] Search - extract search text input from SearchControlComponent (#5213)
* [AAE-534] - add search cloud component

* change doc file

* more changes on doc file

* remove empty scss file

* add animation and more customizations

* add preselect value property

* fix unit tests

* [AAE-534] Search - extract search text input from SearchControlComponent

* rename component and fix build

* fix import scss and lint

* change in doc files

* PR changes

* more changes

* add return type

* fix unit test
2019-11-12 20:22:48 +01:00
Geeta Mandakini Ayyalasomayajula c11ce016fa added the method to retrieve the processInstanceId based on the process instance name. (#5238) 2019-11-12 20:20:49 +01:00
Martin Muller 0e2504a53f Allow proper focus of last element after closing the dialog (#5234) 2019-11-12 20:18:42 +01:00
arditdomi 878b49fea1 [ADF-4979] TaskHeaderCloudComponent Add error emit when appName or taskId is not provided (#5236)
* [ADF-4979] Add error emit when appName or taskId are not provided in TaskHeaderCloudComponent

* [ADF-4979] Modify @Output description

* [ADF-4979] Remove unused onObservable complete code
2019-11-12 15:04:01 +00:00
Geeta Mandakini Ayyalasomayajula 63d640425e updated the simpleapp with fix for Processwithvariables and messageevents tests (#5239) 2019-11-12 10:45:52 +00:00
Geeta Mandakini Ayyalasomayajula f40c8770c5 updated the decision table mappings and form to process variable mappings for new tests written in process-workspace, noe that AAE-702 is resolved. (#5237) 2019-11-11 17:05:28 +00:00
Eugenio Romano 4f0cebe98b refactor cli and add new s3 (#5211) 2019-11-11 15:48:55 +01:00
Eugenio Romano 112e4acca8 fix visibility (#5230) 2019-11-11 15:48:36 +01:00
Denys Vuika 151f89ef22 update mergify config 2019-11-11 10:54:03 +00:00
Eugenio Romano abffab2549 [ImgBot] Optimize images (#1) (#5231)
* [ImgBot] Optimize images (#1)

*Total -- 9,220.45kb -> 7,285.60kb (20.98%)

/docs/docassets/images/adf-toolbar-01.png -- 3.71kb -> 0.80kb (78.4%)
/docs/docassets/images/search-component-simple-template.png -- 3.98kb -> 1.04kb (73.94%)
/docs/release-notes/images/Screen+Shot+2017-07-31+at+16.37.54.png -- 23.07kb -> 7.04kb (69.46%)
/docs/docassets/images/datatable-no-grow-cell.png -- 53.72kb -> 17.20kb (67.99%)
/docs/release-notes/images/Screen+Shot+2018-04-13+at+16.20.45.png -- 59.47kb -> 19.72kb (66.84%)
/docs/docassets/images/datatable.png -- 4.40kb -> 1.48kb (66.39%)
/docs/release-notes/images/form-style-sample.png -- 34.63kb -> 11.94kb (65.52%)
/docs/docassets/images/datatable-wrapped-text.png -- 79.20kb -> 27.35kb (65.47%)
/docs/docassets/images/datatable-expand-5.png -- 100.74kb -> 34.80kb (65.45%)
/docs/docassets/images/datatable-demo.png -- 4.47kb -> 1.55kb (65.28%)
/docs/docassets/images/datatable-truncated-text.png -- 60.89kb -> 21.98kb (63.91%)
/docs/docassets/images/tag2.png -- 4.58kb -> 1.66kb (63.71%)
/docs/docassets/images/search-facet-queries-groups.png -- 47.06kb -> 18.00kb (61.75%)
/docs/docassets/images/datatable-sticky-header.png -- 55.51kb -> 21.77kb (60.79%)
/docs/docassets/images/task-list-cloud-context-menu.png -- 46.63kb -> 18.41kb (60.53%)
/docs/docassets/images/task-list-cloud-action-menu.png -- 45.40kb -> 18.03kb (60.29%)
/docs/docassets/images/adf-cloud-start-task.png -- 10.38kb -> 4.13kb (60.18%)
/docs/release-notes/images/select-apps-dialog.png -- 47.35kb -> 18.97kb (59.92%)
/docs/release-notes/images/Screen+Shot+2017-09-04+at+13.15.18.png -- 36.53kb -> 14.67kb (59.83%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.28.48.png -- 45.60kb -> 18.61kb (59.2%)
/docs/docassets/images/edit-process-filter-cloud.component.png -- 9.08kb -> 3.74kb (58.8%)
/docs/docassets/images/action-menu-on-process-list.png -- 29.93kb -> 12.38kb (58.63%)
/docs/docassets/images/tag3.png -- 4.94kb -> 2.05kb (58.57%)
/docs/docassets/images/search-facet-intervals.png -- 29.05kb -> 12.05kb (58.53%)
/docs/docassets/images/context-menu-on-process-list.png -- 27.14kb -> 11.27kb (58.49%)
/docs/docassets/images/default-no-content-template.png -- 5.25kb -> 2.34kb (55.33%)
/docs/release-notes/images/default-no-content-template.png -- 5.25kb -> 2.34kb (55.33%)
/docs/docassets/images/text-default-widget.png -- 5.31kb -> 2.38kb (55.08%)
/docs/docassets/images/viewer-toolbar-actions.png -- 6.12kb -> 2.76kb (54.92%)
/docs/docassets/images/document-list-special-folder-icon.png -- 40.33kb -> 18.47kb (54.2%)
/docs/release-notes/images/pdf-thumbnails.png -- 139.45kb -> 70.75kb (49.26%)
/docs/docassets/images/adf-toolbar-02.png -- 5.94kb -> 3.06kb (48.47%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+16.21.35.png -- 11.92kb -> 6.26kb (47.47%)
/docs/docassets/images/group-cloud.component-single.png -- 2.05kb -> 1.08kb (47.43%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+01.06.36.png -- 16.11kb -> 8.66kb (46.22%)
/docs/docassets/images/adf-people-list.png -- 6.13kb -> 3.31kb (45.94%)
/docs/release-notes/images/Screen+Shot+2018-08-12+at+15.51.18.png -- 35.27kb -> 19.46kb (44.83%)
/docs/docassets/images/default-loading.png -- 6.60kb -> 3.64kb (44.77%)
/docs/release-notes/images/37604210-5d440be2-2b88-11e8-8119-6b8093dcd516.png -- 207.58kb -> 116.57kb (43.84%)
/docs/docassets/images/ConfirmDialog.png -- 6.78kb -> 3.86kb (43.05%)
/docs/docassets/images/no-permission-custom.png -- 6.74kb -> 3.86kb (42.67%)
/docs/release-notes/images/36539015-476f4972-17cd-11e8-8013-b60afecef49e.png -- 113.76kb -> 65.43kb (42.49%)
/docs/docassets/images/no-permission-default.png -- 6.88kb -> 3.97kb (42.27%)
/docs/docassets/images/group-cloud.component-multiple-mode.png -- 3.94kb -> 2.29kb (41.98%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.39.00.png -- 60.46kb -> 35.39kb (41.47%)
/docs/docassets/images/multi-value.pipe.png -- 10.87kb -> 6.41kb (41.03%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+00.12.55.png -- 49.23kb -> 29.27kb (40.54%)
/docs/release-notes/images/Screen+Shot+2017-07-31+at+20.16.25.png -- 100.62kb -> 60.23kb (40.14%)
/docs/docassets/images/multi-value-default.pipe.png -- 10.14kb -> 6.09kb (39.97%)
/docs/docassets/images/ContentMetadata.png -- 7.58kb -> 4.65kb (38.71%)
/docs/release-notes/images/Screen+Shot+2018-02-27+at+14.52.29.png -- 43.75kb -> 27.02kb (38.25%)
/docs/release-notes/images/pastedImage_2.png -- 44.39kb -> 27.49kb (38.08%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.12.png -- 52.41kb -> 32.58kb (37.83%)
/docs/release-notes/images/Screen+Shot+2017-10-09+at+16.01.46.png -- 138.90kb -> 88.16kb (36.53%)
/docs/docassets/images/adf-buttons-menu-desktop.png -- 9.14kb -> 5.83kb (36.25%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+01.13.54.png -- 5.29kb -> 3.43kb (35.16%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.54.59.png -- 42.49kb -> 27.73kb (34.72%)
/docs/docassets/images/social3.png -- 8.32kb -> 5.49kb (34.04%)
/lib/core/assets/images/ft_ic_folder_rule.svg -- 1.24kb -> 0.84kb (31.94%)
/docs/docassets/images/custom-loading.png -- 3.40kb -> 2.32kb (31.65%)
/docs/docassets/images/adf-toolbar-04.png -- 9.42kb -> 6.50kb (30.97%)
/docs/release-notes/images/security+check.png -- 10.11kb -> 7.04kb (30.41%)
/docs/docassets/images/select-apps-dialog.png -- 9.95kb -> 7.02kb (29.51%)
/docs/release-notes/images/Screenshot+2017-09-05+14.00.57.png -- 655.38kb -> 467.41kb (28.68%)
/docs/release-notes/images/bundle+size+check.png -- 7.52kb -> 5.38kb (28.44%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.14.34.png -- 150.25kb -> 107.94kb (28.16%)
/docs/docassets/images/notification-history-component.png -- 37.02kb -> 26.77kb (27.69%)
/docs/release-notes/images/Screen+Shot+2018-01-26+at+10.59.39.png -- 27.65kb -> 20.40kb (26.21%)
/docs/docassets/images/adf-cloud-process-header.png -- 14.43kb -> 10.69kb (25.97%)
/demo-shell/src/assets/images/adf-move-file-24px.svg -- 0.78kb -> 0.57kb (25.94%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.56.30.png -- 33.79kb -> 25.17kb (25.52%)
/assets/alfresco.png -- 8.01kb -> 5.97kb (25.45%)
/docs/docassets/images/search-facet-queries.png -- 37.79kb -> 28.40kb (24.83%)
/docs/docassets/images/adf-buttons-menu-mobile.png -- 11.60kb -> 8.76kb (24.52%)
/docs/docassets/images/login-customized-step-1.jpg -- 68.17kb -> 51.47kb (24.5%)
/docs/docassets/images/login-customized.jpg -- 69.84kb -> 52.92kb (24.23%)
/docs/docassets/images/document-action-download.png -- 12.13kb -> 9.20kb (24.11%)
/docs/docassets/images/search-facet-fields.png -- 38.10kb -> 29.25kb (23.22%)
/docs/release-notes/images/adf-process-instance-header-attachment.png -- 13.86kb -> 10.65kb (23.17%)
/docs/docassets/images/edit-task-filter-cloud.component.png -- 7.27kb -> 5.59kb (23.05%)
/docs/docassets/images/login.jpg -- 72.47kb -> 55.80kb (23%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+11.31.50.png -- 66.69kb -> 52.67kb (21.01%)
/lib/process-services/src/lib/process-list/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/process-services/src/lib/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/content-services/src/lib/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/core/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/docs/docassets/images/custom-data-table-resolver.png -- 12.16kb -> 9.66kb (20.56%)
/docs/docassets/images/form-cloud-custom-outcomes.component.png -- 16.54kb -> 13.31kb (19.52%)
/lib/core/assets/images/background.svg -- 1.07kb -> 0.86kb (19.47%)
/e2e/resources/adf/share_profile_pic.png -- 105.25kb -> 84.98kb (19.26%)
/e2e/resources/adf/folderOne/share_profile_pic.png -- 105.25kb -> 84.98kb (19.26%)
/docs/docassets/images/infodrawerlayout.png -- 14.78kb -> 11.98kb (18.95%)
/docs/release-notes/images/customNavLogoImage-1533634269706-logo-icon.png -- 6.77kb -> 5.63kb (16.82%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+16.31.30.png -- 54.40kb -> 45.44kb (16.47%)
/lib/core/assets/images/ft_ic_folder_shortcut_link.svg -- 1.97kb -> 1.65kb (16.37%)
/lib/core/assets/images/ft_ic_folder.svg -- 6.45kb -> 5.40kb (16.22%)
/lib/core/assets/images/ft_ic_miscellaneous.svg -- 6.45kb -> 5.41kb (16.21%)
/lib/core/assets/images/ft_ic_folder_empty.svg -- 6.47kb -> 5.42kb (16.2%)
/lib/core/assets/images/ft_ic_ebook.svg -- 6.47kb -> 5.43kb (16.19%)
/lib/core/assets/images/ft_ic_database.svg -- 6.46kb -> 5.41kb (16.18%)
/lib/core/assets/images/ft_ic_website.svg -- 6.46kb -> 5.42kb (16.17%)
/lib/core/assets/images/ft_ic_raster_image.svg -- 6.49kb -> 5.44kb (16.16%)
/lib/core/assets/images/ft_ic_presentation.svg -- 6.48kb -> 5.43kb (16.13%)
/lib/core/assets/images/ft_ic_audio.svg -- 6.51kb -> 5.46kb (16.09%)
/lib/core/assets/images/ft_ic_document.svg -- 6.53kb -> 5.48kb (16.05%)
/lib/core/assets/images/ft_ic_video.svg -- 6.57kb -> 5.51kb (16.02%)
/lib/core/assets/images/ft_ic_form.svg -- 6.57kb -> 5.52kb (15.97%)
/lib/core/assets/images/ft_ic_vector_image.svg -- 6.60kb -> 5.55kb (15.92%)
/lib/core/assets/images/ft_ic_archive.svg -- 6.63kb -> 5.58kb (15.85%)
/lib/core/assets/images/ft_ic_spreadsheet.svg -- 6.84kb -> 5.76kb (15.8%)
/docs/docassets/images/document-actions.png -- 18.60kb -> 15.68kb (15.72%)
/lib/core/assets/images/ft_ic_link_folder.svg -- 2.23kb -> 1.88kb (15.56%)
/lib/core/assets/images/ft_ic_google_slides.svg -- 6.57kb -> 5.55kb (15.48%)
/lib/core/assets/images/ft_ic_google_docs.svg -- 6.63kb -> 5.61kb (15.4%)
/lib/core/assets/images/ft_ic_google_forms.svg -- 6.66kb -> 5.64kb (15.32%)
/lib/core/assets/images/ft_ic_google_drawings.svg -- 6.69kb -> 5.67kb (15.26%)
/lib/core/assets/images/ft_ic_google_sheets.svg -- 6.71kb -> 5.70kb (15.05%)
/lib/core/assets/images/ft_ic_ms_powerpoint.svg -- 7.34kb -> 6.25kb (14.76%)
/lib/core/assets/images/ft_ic_pdf.svg -- 6.86kb -> 5.85kb (14.75%)
/lib/core/assets/images/ft_ic_ms_word.svg -- 7.43kb -> 6.36kb (14.41%)
/lib/core/assets/images/ft_ic_ms_excel.svg -- 8.00kb -> 6.90kb (13.79%)
/demo-shell/src/favicon-96x96.png -- 9.60kb -> 8.39kb (12.54%)
/demo-shell/src/assets/logo.png -- 9.60kb -> 8.39kb (12.54%)
/lib/core/assets/images/logo.png -- 9.60kb -> 8.39kb (12.54%)
/docs/release-notes/images/pastedImage_1.png -- 182.63kb -> 163.10kb (10.69%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.15.41.png -- 68.65kb -> 62.05kb (9.61%)
/docs/release-notes/images/Screen+Shot+2018-03-05+at+15.13.43.png -- 190.55kb -> 172.39kb (9.53%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+10.58.23.png -- 5.87kb -> 5.33kb (9.17%)
/lib/core/assets/images/ft_ic_smart_folder.svg -- 3.04kb -> 2.77kb (8.87%)
/docs/release-notes/images/Screen+Shot+2017-08-01+at+16.49.37.png -- 53.64kb -> 49.00kb (8.65%)
/docs/release-notes/images/Screen+Shot+2017-10-09+at+15.51.31.png -- 137.13kb -> 125.59kb (8.42%)
/e2e/resources/adf/allFileTypes/c_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/e_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/a_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/b_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/d_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/lib/process-services/src/lib/assets/images/alfresco-flower.svg -- 4.33kb -> 4.02kb (7.19%)
/lib/core/assets/images/ft_ic_folder_disable.svg -- 0.61kb -> 0.57kb (6.76%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.45.png -- 65.54kb -> 61.11kb (6.76%)
/lib/core/assets/images/alfresco-logo.svg -- 14.65kb -> 13.68kb (6.62%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.57.png -- 67.59kb -> 63.27kb (6.39%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+09.42.03.png -- 34.85kb -> 32.89kb (5.62%)
/docs/docassets/images/CreateLibraryDialog.png -- 11.30kb -> 10.67kb (5.59%)
/e2e/resources/adf/share_profile_pic.jpg -- 227.82kb -> 215.85kb (5.25%)
/lib/core/assets/images/ft_ic_selected.svg -- 0.27kb -> 0.26kb (4.98%)
/docs/release-notes/images/Screen+Shot+2017-09-04+at+12.10.25.png -- 98.08kb -> 93.22kb (4.95%)
/docs/docassets/images/ConfirmDialogYesAll.png -- 8.41kb -> 8.12kb (3.45%)
/docs/release-notes/images/Screen+Shot+2018-06-24+at+18.40.41.png -- 65.92kb -> 63.87kb (3.12%)
/docs/release-notes/images/Angular-6.jpg -- 21.79kb -> 21.17kb (2.82%)
/e2e/resources/adf/activiti_profile_pic.png -- 5.36kb -> 5.22kb (2.66%)
/demo-shell/src/assets/fonts/material-icons/MaterialIcons-Regular.svg -- 275.06kb -> 267.87kb (2.61%)
/docs/docassets/images/social2.png -- 9.87kb -> 9.69kb (1.78%)
/docs/docassets/images/yeoman-alfresco-adf-app.jpg -- 7.01kb -> 6.89kb (1.66%)
/docs/docassets/images/group-cloud.component.png -- 15.48kb -> 15.24kb (1.58%)
/docs/docassets/images/app-started.jpg -- 13.01kb -> 13.01kb (0.03%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

* [ImgBot] Optimize images (#2)

*Total -- 9,220.45kb -> 7,285.60kb (20.98%)

/docs/docassets/images/adf-toolbar-01.png -- 3.71kb -> 0.80kb (78.4%)
/docs/docassets/images/search-component-simple-template.png -- 3.98kb -> 1.04kb (73.94%)
/docs/release-notes/images/Screen+Shot+2017-07-31+at+16.37.54.png -- 23.07kb -> 7.04kb (69.46%)
/docs/docassets/images/datatable-no-grow-cell.png -- 53.72kb -> 17.20kb (67.99%)
/docs/release-notes/images/Screen+Shot+2018-04-13+at+16.20.45.png -- 59.47kb -> 19.72kb (66.84%)
/docs/docassets/images/datatable.png -- 4.40kb -> 1.48kb (66.39%)
/docs/release-notes/images/form-style-sample.png -- 34.63kb -> 11.94kb (65.52%)
/docs/docassets/images/datatable-wrapped-text.png -- 79.20kb -> 27.35kb (65.47%)
/docs/docassets/images/datatable-expand-5.png -- 100.74kb -> 34.80kb (65.45%)
/docs/docassets/images/datatable-demo.png -- 4.47kb -> 1.55kb (65.28%)
/docs/docassets/images/datatable-truncated-text.png -- 60.89kb -> 21.98kb (63.91%)
/docs/docassets/images/tag2.png -- 4.58kb -> 1.66kb (63.71%)
/docs/docassets/images/search-facet-queries-groups.png -- 47.06kb -> 18.00kb (61.75%)
/docs/docassets/images/datatable-sticky-header.png -- 55.51kb -> 21.77kb (60.79%)
/docs/docassets/images/task-list-cloud-context-menu.png -- 46.63kb -> 18.41kb (60.53%)
/docs/docassets/images/task-list-cloud-action-menu.png -- 45.40kb -> 18.03kb (60.29%)
/docs/docassets/images/adf-cloud-start-task.png -- 10.38kb -> 4.13kb (60.18%)
/docs/release-notes/images/select-apps-dialog.png -- 47.35kb -> 18.97kb (59.92%)
/docs/release-notes/images/Screen+Shot+2017-09-04+at+13.15.18.png -- 36.53kb -> 14.67kb (59.83%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.28.48.png -- 45.60kb -> 18.61kb (59.2%)
/docs/docassets/images/edit-process-filter-cloud.component.png -- 9.08kb -> 3.74kb (58.8%)
/docs/docassets/images/action-menu-on-process-list.png -- 29.93kb -> 12.38kb (58.63%)
/docs/docassets/images/tag3.png -- 4.94kb -> 2.05kb (58.57%)
/docs/docassets/images/search-facet-intervals.png -- 29.05kb -> 12.05kb (58.53%)
/docs/docassets/images/context-menu-on-process-list.png -- 27.14kb -> 11.27kb (58.49%)
/docs/docassets/images/default-no-content-template.png -- 5.25kb -> 2.34kb (55.33%)
/docs/release-notes/images/default-no-content-template.png -- 5.25kb -> 2.34kb (55.33%)
/docs/docassets/images/text-default-widget.png -- 5.31kb -> 2.38kb (55.08%)
/docs/docassets/images/viewer-toolbar-actions.png -- 6.12kb -> 2.76kb (54.92%)
/docs/docassets/images/document-list-special-folder-icon.png -- 40.33kb -> 18.47kb (54.2%)
/docs/release-notes/images/pdf-thumbnails.png -- 139.45kb -> 70.75kb (49.26%)
/docs/docassets/images/adf-toolbar-02.png -- 5.94kb -> 3.06kb (48.47%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+16.21.35.png -- 11.92kb -> 6.26kb (47.47%)
/docs/docassets/images/group-cloud.component-single.png -- 2.05kb -> 1.08kb (47.43%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+01.06.36.png -- 16.11kb -> 8.66kb (46.22%)
/docs/docassets/images/adf-people-list.png -- 6.13kb -> 3.31kb (45.94%)
/docs/release-notes/images/Screen+Shot+2018-08-12+at+15.51.18.png -- 35.27kb -> 19.46kb (44.83%)
/docs/docassets/images/default-loading.png -- 6.60kb -> 3.64kb (44.77%)
/docs/release-notes/images/37604210-5d440be2-2b88-11e8-8119-6b8093dcd516.png -- 207.58kb -> 116.57kb (43.84%)
/docs/docassets/images/ConfirmDialog.png -- 6.78kb -> 3.86kb (43.05%)
/docs/docassets/images/no-permission-custom.png -- 6.74kb -> 3.86kb (42.67%)
/docs/release-notes/images/36539015-476f4972-17cd-11e8-8013-b60afecef49e.png -- 113.76kb -> 65.43kb (42.49%)
/docs/docassets/images/no-permission-default.png -- 6.88kb -> 3.97kb (42.27%)
/docs/docassets/images/group-cloud.component-multiple-mode.png -- 3.94kb -> 2.29kb (41.98%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.39.00.png -- 60.46kb -> 35.39kb (41.47%)
/docs/docassets/images/multi-value.pipe.png -- 10.87kb -> 6.41kb (41.03%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+00.12.55.png -- 49.23kb -> 29.27kb (40.54%)
/docs/release-notes/images/Screen+Shot+2017-07-31+at+20.16.25.png -- 100.62kb -> 60.23kb (40.14%)
/docs/docassets/images/multi-value-default.pipe.png -- 10.14kb -> 6.09kb (39.97%)
/docs/docassets/images/ContentMetadata.png -- 7.58kb -> 4.65kb (38.71%)
/docs/release-notes/images/Screen+Shot+2018-02-27+at+14.52.29.png -- 43.75kb -> 27.02kb (38.25%)
/docs/release-notes/images/pastedImage_2.png -- 44.39kb -> 27.49kb (38.08%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.12.png -- 52.41kb -> 32.58kb (37.83%)
/docs/release-notes/images/Screen+Shot+2017-10-09+at+16.01.46.png -- 138.90kb -> 88.16kb (36.53%)
/docs/docassets/images/adf-buttons-menu-desktop.png -- 9.14kb -> 5.83kb (36.25%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+01.13.54.png -- 5.29kb -> 3.43kb (35.16%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.54.59.png -- 42.49kb -> 27.73kb (34.72%)
/docs/docassets/images/social3.png -- 8.32kb -> 5.49kb (34.04%)
/lib/core/assets/images/ft_ic_folder_rule.svg -- 1.24kb -> 0.84kb (31.94%)
/docs/docassets/images/custom-loading.png -- 3.40kb -> 2.32kb (31.65%)
/docs/docassets/images/adf-toolbar-04.png -- 9.42kb -> 6.50kb (30.97%)
/docs/release-notes/images/security+check.png -- 10.11kb -> 7.04kb (30.41%)
/docs/docassets/images/select-apps-dialog.png -- 9.95kb -> 7.02kb (29.51%)
/docs/release-notes/images/Screenshot+2017-09-05+14.00.57.png -- 655.38kb -> 467.41kb (28.68%)
/docs/release-notes/images/bundle+size+check.png -- 7.52kb -> 5.38kb (28.44%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.14.34.png -- 150.25kb -> 107.94kb (28.16%)
/docs/docassets/images/notification-history-component.png -- 37.02kb -> 26.77kb (27.69%)
/docs/release-notes/images/Screen+Shot+2018-01-26+at+10.59.39.png -- 27.65kb -> 20.40kb (26.21%)
/docs/docassets/images/adf-cloud-process-header.png -- 14.43kb -> 10.69kb (25.97%)
/demo-shell/src/assets/images/adf-move-file-24px.svg -- 0.78kb -> 0.57kb (25.94%)
/docs/release-notes/images/Screen+Shot+2017-06-29+at+11.56.30.png -- 33.79kb -> 25.17kb (25.52%)
/assets/alfresco.png -- 8.01kb -> 5.97kb (25.45%)
/docs/docassets/images/search-facet-queries.png -- 37.79kb -> 28.40kb (24.83%)
/docs/docassets/images/adf-buttons-menu-mobile.png -- 11.60kb -> 8.76kb (24.52%)
/docs/docassets/images/login-customized-step-1.jpg -- 68.17kb -> 51.47kb (24.5%)
/docs/docassets/images/login-customized.jpg -- 69.84kb -> 52.92kb (24.23%)
/docs/docassets/images/document-action-download.png -- 12.13kb -> 9.20kb (24.11%)
/docs/docassets/images/search-facet-fields.png -- 38.10kb -> 29.25kb (23.22%)
/docs/release-notes/images/adf-process-instance-header-attachment.png -- 13.86kb -> 10.65kb (23.17%)
/docs/docassets/images/edit-task-filter-cloud.component.png -- 7.27kb -> 5.59kb (23.05%)
/docs/docassets/images/login.jpg -- 72.47kb -> 55.80kb (23%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+11.31.50.png -- 66.69kb -> 52.67kb (21.01%)
/lib/process-services/src/lib/process-list/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/process-services/src/lib/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/content-services/src/lib/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/lib/core/assets/images/empty_doc_lib.svg -- 25.91kb -> 20.58kb (20.57%)
/docs/docassets/images/custom-data-table-resolver.png -- 12.16kb -> 9.66kb (20.56%)
/docs/docassets/images/form-cloud-custom-outcomes.component.png -- 16.54kb -> 13.31kb (19.52%)
/lib/core/assets/images/background.svg -- 1.07kb -> 0.86kb (19.47%)
/e2e/resources/adf/share_profile_pic.png -- 105.25kb -> 84.98kb (19.26%)
/e2e/resources/adf/folderOne/share_profile_pic.png -- 105.25kb -> 84.98kb (19.26%)
/docs/docassets/images/infodrawerlayout.png -- 14.78kb -> 11.98kb (18.95%)
/docs/release-notes/images/customNavLogoImage-1533634269706-logo-icon.png -- 6.77kb -> 5.63kb (16.82%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+16.31.30.png -- 54.40kb -> 45.44kb (16.47%)
/lib/core/assets/images/ft_ic_folder_shortcut_link.svg -- 1.97kb -> 1.65kb (16.37%)
/lib/core/assets/images/ft_ic_folder.svg -- 6.45kb -> 5.40kb (16.22%)
/lib/core/assets/images/ft_ic_miscellaneous.svg -- 6.45kb -> 5.41kb (16.21%)
/lib/core/assets/images/ft_ic_folder_empty.svg -- 6.47kb -> 5.42kb (16.2%)
/lib/core/assets/images/ft_ic_ebook.svg -- 6.47kb -> 5.43kb (16.19%)
/lib/core/assets/images/ft_ic_database.svg -- 6.46kb -> 5.41kb (16.18%)
/lib/core/assets/images/ft_ic_website.svg -- 6.46kb -> 5.42kb (16.17%)
/lib/core/assets/images/ft_ic_raster_image.svg -- 6.49kb -> 5.44kb (16.16%)
/lib/core/assets/images/ft_ic_presentation.svg -- 6.48kb -> 5.43kb (16.13%)
/lib/core/assets/images/ft_ic_audio.svg -- 6.51kb -> 5.46kb (16.09%)
/lib/core/assets/images/ft_ic_document.svg -- 6.53kb -> 5.48kb (16.05%)
/lib/core/assets/images/ft_ic_video.svg -- 6.57kb -> 5.51kb (16.02%)
/lib/core/assets/images/ft_ic_form.svg -- 6.57kb -> 5.52kb (15.97%)
/lib/core/assets/images/ft_ic_vector_image.svg -- 6.60kb -> 5.55kb (15.92%)
/lib/core/assets/images/ft_ic_archive.svg -- 6.63kb -> 5.58kb (15.85%)
/lib/core/assets/images/ft_ic_spreadsheet.svg -- 6.84kb -> 5.76kb (15.8%)
/docs/docassets/images/document-actions.png -- 18.60kb -> 15.68kb (15.72%)
/lib/core/assets/images/ft_ic_link_folder.svg -- 2.23kb -> 1.88kb (15.56%)
/lib/core/assets/images/ft_ic_google_slides.svg -- 6.57kb -> 5.55kb (15.48%)
/lib/core/assets/images/ft_ic_google_docs.svg -- 6.63kb -> 5.61kb (15.4%)
/lib/core/assets/images/ft_ic_google_forms.svg -- 6.66kb -> 5.64kb (15.32%)
/lib/core/assets/images/ft_ic_google_drawings.svg -- 6.69kb -> 5.67kb (15.26%)
/lib/core/assets/images/ft_ic_google_sheets.svg -- 6.71kb -> 5.70kb (15.05%)
/lib/core/assets/images/ft_ic_ms_powerpoint.svg -- 7.34kb -> 6.25kb (14.76%)
/lib/core/assets/images/ft_ic_pdf.svg -- 6.86kb -> 5.85kb (14.75%)
/lib/core/assets/images/ft_ic_ms_word.svg -- 7.43kb -> 6.36kb (14.41%)
/lib/core/assets/images/ft_ic_ms_excel.svg -- 8.00kb -> 6.90kb (13.79%)
/demo-shell/src/favicon-96x96.png -- 9.60kb -> 8.39kb (12.54%)
/demo-shell/src/assets/logo.png -- 9.60kb -> 8.39kb (12.54%)
/lib/core/assets/images/logo.png -- 9.60kb -> 8.39kb (12.54%)
/docs/release-notes/images/pastedImage_1.png -- 182.63kb -> 163.10kb (10.69%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.15.41.png -- 68.65kb -> 62.05kb (9.61%)
/docs/release-notes/images/Screen+Shot+2018-03-05+at+15.13.43.png -- 190.55kb -> 172.39kb (9.53%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+10.58.23.png -- 5.87kb -> 5.33kb (9.17%)
/lib/core/assets/images/ft_ic_smart_folder.svg -- 3.04kb -> 2.77kb (8.87%)
/docs/release-notes/images/Screen+Shot+2017-08-01+at+16.49.37.png -- 53.64kb -> 49.00kb (8.65%)
/docs/release-notes/images/Screen+Shot+2017-10-09+at+15.51.31.png -- 137.13kb -> 125.59kb (8.42%)
/e2e/resources/adf/allFileTypes/c_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/e_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/a_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/b_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/e2e/resources/adf/allFileTypes/d_jpg_file.jpg -- 710.07kb -> 651.96kb (8.18%)
/lib/process-services/src/lib/assets/images/alfresco-flower.svg -- 4.33kb -> 4.02kb (7.19%)
/lib/core/assets/images/ft_ic_folder_disable.svg -- 0.61kb -> 0.57kb (6.76%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.45.png -- 65.54kb -> 61.11kb (6.76%)
/lib/core/assets/images/alfresco-logo.svg -- 14.65kb -> 13.68kb (6.62%)
/docs/release-notes/images/Screen+Shot+2018-06-25+at+11.16.57.png -- 67.59kb -> 63.27kb (6.39%)
/docs/release-notes/images/Screen+Shot+2017-09-05+at+09.42.03.png -- 34.85kb -> 32.89kb (5.62%)
/docs/docassets/images/CreateLibraryDialog.png -- 11.30kb -> 10.67kb (5.59%)
/e2e/resources/adf/share_profile_pic.jpg -- 227.82kb -> 215.85kb (5.25%)
/lib/core/assets/images/ft_ic_selected.svg -- 0.27kb -> 0.26kb (4.98%)
/docs/release-notes/images/Screen+Shot+2017-09-04+at+12.10.25.png -- 98.08kb -> 93.22kb (4.95%)
/docs/docassets/images/ConfirmDialogYesAll.png -- 8.41kb -> 8.12kb (3.45%)
/docs/release-notes/images/Screen+Shot+2018-06-24+at+18.40.41.png -- 65.92kb -> 63.87kb (3.12%)
/docs/release-notes/images/Angular-6.jpg -- 21.79kb -> 21.17kb (2.82%)
/e2e/resources/adf/activiti_profile_pic.png -- 5.36kb -> 5.22kb (2.66%)
/demo-shell/src/assets/fonts/material-icons/MaterialIcons-Regular.svg -- 275.06kb -> 267.87kb (2.61%)
/docs/docassets/images/social2.png -- 9.87kb -> 9.69kb (1.78%)
/docs/docassets/images/yeoman-alfresco-adf-app.jpg -- 7.01kb -> 6.89kb (1.66%)
/docs/docassets/images/group-cloud.component.png -- 15.48kb -> 15.24kb (1.58%)
/docs/docassets/images/app-started.jpg -- 13.01kb -> 13.01kb (0.03%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>
2019-11-10 15:45:03 +01:00
Suzana Dirla 192f93fdce [ADF-4984] Focus indicator is not clearly visible- mat-expansion-panel (#5217)
* [ADF-4984] make focused item visible

- the focus-fix will be done to all expansion-panels with upgrade to @angular/material 8.2.3

* [ADF-4984] make focused mat-expansion-panels visible

- get fix from @angular/material 8.2.3

* [ADF-4984] renaming
2019-11-08 18:26:35 +00:00
Denys Vuika 3fa6410e57 allow indexed access for DataRow objects (#5229) 2019-11-08 18:10:33 +00:00
swathikom 9d127a41e5 Update candidatebaseapp (#5228)
* Modified candidateuserprocess to have candidate users and removed admin.adf

* Updated security roles for candidatebaseapp with salesuser for ACTIVITY and APS user
2019-11-08 15:29:47 +00:00
davidcanonieto 2a76b0846d [AAE-485] Fix card view int item validator when value is empty (#5205)
* [AAE-485] Fix card view int item validator when value is empty

* Avoid creating a function every time we validate number

* Add return type to method
2019-11-08 16:06:22 +02:00
Suzana Dirla f0ac4b19ad [ADF-4986] Move or copy - Empty cells should not receive focus (#5226) 2019-11-08 16:02:42 +02:00
Denys Vuika 0c13f3d879 add missing typing information (#5227)
* add missing typing information

* typing fixes

* revert return type

* typing fixes
2019-11-08 16:02:05 +02:00
Eugenio Romano 2138ce600e Refactor e2e PS-CLOUD (#5224)
* refactor cloud test

* fix lint

* fix ecm test

* Update login-sso.page.ts

* fix redirect
2019-11-08 15:57:19 +02:00
Adina Parpalita b704df020d make error message more clear (#5225) 2019-11-08 10:07:02 +00:00
Denys Vuika 58aef5a029 try update the snyk settings 2019-11-07 19:35:10 +00:00
Denys Vuika 4d622dc0af enable mergify (#5221)
* enable mergify

* remove bundlesize check
2019-11-07 16:58:21 +00:00
swathikom 247d02bb76 Modified candidateuserprocess to have candidate users and removed admin.adf (#5220) 2019-11-07 16:08:53 +00:00
Martin Muller 66f088efea [ADF-4973] CLONE - Header - sidenav menu button expanded/collapsed state not exposed via ARIA (#5219)
* Calculating if sidenav is expanded or not

* Calculating if sidenav is expanded or not
2019-11-07 17:40:15 +02:00
Maurizio Vitale e458af0284 Fix the subject bug (#5218) 2019-11-06 20:45:53 +00:00
Eugenio Romano 5578b7b851 Should not redirect if is SilentLogin on (#5216)
* fix redirect

* fix lint

* remove false behaviour alrady tested in the new unit test

* Update auth-guard-base.ts
2019-11-06 11:56:01 +00:00
arditdomi 3c1097fb84 [ADF-4979] Add onChanges detection for Task Header Cloud component (#5208)
* [ADF-4979] Add onChanges detection for Task Header Cloud component

* [ADF-4979] Revert licenses.txt changes

* [ADF-4979] Documentation added for the taskError Event
2019-11-06 11:07:48 +00:00
Eugenio Romano 7d36400dbd Remove discovery (#5212)
* remove discovery

* remoce discovery test

* fix save remote

* use host acs to save screenshot

* fix e2e

* remove invalid test

* fix the package version
2019-11-05 14:15:54 +00:00
Cilibiu Bogdan 040fc52724 [ADF-2990] Datatable - access header row via keyboard (#5206)
* header row as adf-datatable-row

* remove tabindex if header is hidden

* adjust logic if no row data is passed

* skip row focus if disabled

* set active row index on header interaction

* take in account header row

* fix header row and cells focus

* tests

* fix reference

* fix tests
2019-11-04 08:08:15 +00:00
Eugenio Romano 5c4511e42b fix save remote script 2019-11-03 23:18:13 +00:00
Eugenio Romano d659073389 Update README.md 2019-11-02 01:28:00 +00:00
Eugenio Romano e8e483275c update package.json 2019-11-01 20:00:21 +00:00
Eugenio Romano 70fd3a1c60 Don't update rancher after charge js api 2019-11-01 07:51:23 +00:00
Eugenio Romano 5bb9efd2ea Update .travis.yml 2019-10-31 09:38:14 +00:00
Eugenio Romano 2e046945c7 [AAE-726] Add new return await rule (#5203)
* add new return await rule

* update tslint

* add lint exception
2019-10-30 19:29:43 +00:00
Denys Vuika a4730cd9cf [DW-1560] switch to ACTIVITI roles (#5175)
* switch to ACTIVITI roles

* double set of roles

* minor typing fixes

* use different account

* Revert "use different account"

This reverts commit 1f89fb490e8be1614fbdef391ddc8a536ec8de82.

* fix test
2019-10-30 17:28:01 +00:00
Eugenio Romano 65c66528de fix log (#5204) 2019-10-30 16:27:33 +00:00
cristinajandDenys Vuika 98e9e638c1 Add getProcessName (#5202)
* Add getProcessName

* Update lib/testing/src/lib/process-services-cloud/pages/start-process-cloud-component.page.ts

Co-Authored-By: Denys Vuika <denys.vuika@alfresco.com>
2019-10-30 16:12:54 +00:00
arditdomi d3b9ae87b7 [AAE-641] Hide Release button when the task is assigned to a single user (#5192)
* [AAE-641] Hide Release button when the task is assigned to a single user

* [AAE-641] Fix unit tests

* [AAE-641] Fix unit tests
2019-10-30 15:55:01 +00:00
Silviu Popa d02d79c771 [ADF-4849] [APM-1226] - Automate boolean and number visibility conditions (#5043)
* [ADF-4849] [APM-1226] - Automate boolean and number  visibility conditions

* PR changes

* PR changes

* fix e2e and update simpleapp
2019-10-30 13:15:53 +00:00
Silviu Popa 7698fb8edb [AAE-534] Core - add search cloud component (#5193)
* [AAE-534] - add search cloud component

* change doc file

* more changes on doc file

* remove empty scss file

* add animation and more customizations

* add preselect value property

* fix unit tests
2019-10-30 07:44:37 +00:00
Cilibiu Bogdan af6bd0892c [ADF-2990] Datatable - row navigation (#5198)
* datatable row component

* add to module

* implement datatable row component

* use FocusKeyManager for arrows navigation

* tests

* prevent screen reader to announce undefined value

* prevent from bubbling up

* fix unit test

* fix row locator

* fix locator reference

* fix row reference locators

* fix locator xpath
2019-10-30 07:39:43 +00:00
Suzana Dirla a150e74366 [ADF-4936] Auth guard redirect fix (#5092)
* [ADF-4936] fix for auth guard with silent Login true

* [ADF-4936] check only for isOAuth...

* [ADF-4936] fix all auth guards when silent Login true

* [ADF-4936] unit tests

* [ADF-4936] fix doc info

* [ADF-4936] types and null checks

* [ADF-4936] fallback option in case silentLogin is missing from settings

* [ADF-4936] refactoring

* try to fix e2e test [C299158] Login component - SSO Grant type password (implicit flow false)

* Fix e2e test [C299158] Login component - SSO Grant type password (implicit flow false)

* [ADF-4936] show the error page when route path is unknown

* [ADF-4936] remove ssoImplicitLogin and do the redirectToUrl instead

-the implicit login concern is already in the JS-API

* [ADF-4936] refactor to simplify code

- the removed 'if' conditions cover all possible 'else' cases

* [ADF-4936] remove unneeded method
2019-10-29 15:16:08 +00:00
siva kumar 9c2bcdee1a [ADF- 4871][TaskHeaderCloudComponent] Add Candidate Users/Groups properties (#5189)
* [ADF-4871] [TaskHeaderCloudComponent] Add Candidate Users/Groups properties

* Added Candidate users/groups properties to the task heade cloud component.

* * Created CardViewArrayItemComponent
* Modified FullName pipe to return username or email incase fullname missing.
* Added candidate Users/Groups properties to the taskcloudheader component.
* Added two service into task-cloudservice
* Updated Demoshell card-view with new widget

* * Fixed failing unit test

* * Fixed comments.

* * Refactored CardViewArrayItem model
* Fixed comments.

* * Changed candidate group icon
2019-10-29 09:26:34 +00:00
siva kumar 1c6eb4d73d [ADF-4968 ] [TaskHeaderCloudComponent] Allow Assignee property to be clickable if the task in CREATED, ASSIGNED, SUSPENDED states (#5191)
* [ADF-4968][TaskHeaderCloudComponent] Allow Assignee property to be clickable if the task in CREATED, ASSIGNED, SUSPENDED states

* * Added clickable to the parentName and ParentTask Id.

* * Fixed comments
2019-10-28 20:56:35 +00:00
Geeta Mandakini Ayyalasomayajula 4885e6bcee added methods to view file, assert on File title in the viewer and cl… (#5196)
* added methods to view file, assert on File title in the viewer and close viewer.

* moved the ViewerPage file to ADF testing package

* removed the unnecessary methods as using the methods of the ViewerPage class.
2019-10-28 20:02:47 +00:00
Eugenio Romano 27fa7a4725 [ADF-4957] Use Replace JS instead of sed to run e2e (#5160)
* use replace js

* Update app-config-replace.js

* update replace

* update replace

* fix folder
2019-10-28 16:51:36 +00:00
Eugenio Romano 450b20eca4 [ADF-4976] Fix cloud ps e2e errors (#5195)
* fix cloud ps e2e errors

* fix lint

* fix ps test add 200ms for animation

* Update processListPage.ts
2019-10-28 09:47:30 +00:00
Suzana Dirla 6119ce83de [ADF-4966] Keep table headers - visually hidden when showHeader false (#5170)
* [ADF-4966] Move or copy - Add table headers - visually hidden

- needed by screen readers

* [ADF-4966] use automatic column header translation

* [ADF-4966] move the fix to the datatable component

-improve accessibility - keep table headers-but visually hidden for showHeader false

* [ADF-4966] code review change

* [ADF-4966] fix array shallow copy on failing e2e-test

* [ADF-4966] improve accessibility only for list display

- fixes failing test
2019-10-25 15:46:45 +01:00
Suzana Dirla d35e8d8523 [ADF-4970] Improve breadcrumb accessibility (#5187)
* [ADF-4970] improve accessibility for dropdown-breadcrumb

- allow keyboard only control

* [ADF-4970] add accessibility improvements to breadcrumb.component

* [ADF-4970] more fixes & preventDefault for click event

* [ADF-4970] better keyboard-only experience when selecting a breadcrumb option

* [ADF-4970] set focus color on content-node-selector breadcrumb

* [ADF-4970] set aria-current to location

* [ADF-4970] extra check - fix unit test
2019-10-25 10:20:22 +01:00
Eugenio Romano 0aed1845a0 [AAE-520] order apps by name when retrieve from the server (#5184)
* order apps bby name when retrieve from the server

* fix order e2e
2019-10-25 02:28:26 +01:00
Geeta Mandakini Ayyalasomayajula 2e03dfa908 Added the process and form required to test terminate end event (#5188)
* added the process and form required to test terminate end event

* also added a form to test the upload local file for a standalone task.
2019-10-25 02:27:35 +01:00
Geeta Mandakini Ayyalasomayajula eefc201332 added test for the visible flag both for process list and task list action menu and context menu (#5190) 2019-10-25 01:07:18 +01:00
Martin MullerandDenys Vuika ef229dd300 [ADF-4973] CLONE - Header - sidenav menu button expanded/collapsed state not exposed via ARIA (#5179)
* Set aria expanded for the sidenav toggle bar

* Define initialSidenavExpanded which can be set in the demo shell than as taken the same true or false value as the sideNav.expandedSidenav value.

* Added some unit tests for the sidenav toggle aria-expanded behaviour

* Update lib/core/layout/components/header/header.component.ts

Co-Authored-By: Denys Vuika <denys.vuika@alfresco.com>

* Update lib/core/layout/components/header/header.component.html

Co-Authored-By: Denys Vuika <denys.vuika@alfresco.com>

* Update demo-shell/src/app/components/app-layout/app-layout.component.html

Co-Authored-By: Denys Vuika <denys.vuika@alfresco.com>

* Update lib/core/layout/components/header/header.component.html

Co-Authored-By: Denys Vuika <denys.vuika@alfresco.com>

* As suggested from Denys remove initialSidnavExpanded property as we already have expandedSidenav

* As suggested from Denys remove initialSidnavExpanded property as we already have expandedSidenav

* As suggested from Denys remove initialSidnavExpanded property as we already have expandedSidenav
2019-10-24 22:54:32 +01:00
Maurizio Vitale 6331979baa [ADF-4857] Be able to run ng build content-service (#5183)
* Be able to build conten with ng build content-service

* fix tslint

* The translate module is necessary

* Rollback the build commands

* Rollback

* Remove wrong imports

* Trigger the build
2019-10-24 19:23:30 +01:00
Denys Vuika 9fa1db063a fix types 2019-10-24 17:00:39 +01:00
Denys Vuika 7d12557a08 fix types 2019-10-24 15:08:11 +01:00
Eugenio Romano c8931f7b58 fix build process when JS-API trigger the build 2019-10-24 14:22:56 +01:00
Martin Muller da154bb58f [ADF-4972] CLONE - Header - sidenav menu button aria-label not translatable (#5178)
* Make aria label fron header sidenav toggle button translateable

* Make aria label fron header sidenav toggle button translateable

* Make aria label fron header sidenav toggle button translateable
2019-10-24 12:58:03 +01:00
Cilibiu Bogdan 7b52a31001 add aria label (#5186) 2019-10-24 10:29:46 +01:00
Eugenio Romano e667ec4f2f [AAE-174] Show radio box in text box when read only (#5182)
* show radio box in text box when read only

* show radio box in text box when read only
2019-10-23 12:23:11 +01:00
Geeta Mandakini Ayyalasomayajula 200e652f0d Adding new process, forms and decision tables for e2e tests on decisiontable mappings (#5177)
* adding new process, forms and decision tables for e2e tests on decision table mappings.

* added the process and form required to test terminate end event
2019-10-22 17:25:51 +01:00
Geeta Mandakini Ayyalasomayajula b7ec525b62 Added isChecked method to verify the status of checkbox widget (#5173)
* added method to assert on checkbox widget, isChecked

* removed unnecessary method

* added method in checkboxWidget

* moved the method to checkbox widget
2019-10-22 15:38:55 +01:00
Eugenio Romano 9f69a7d4ee add types and fix date probblem in process list (#5176) 2019-10-21 16:10:19 +01:00
arditdomi 1970b1da82 [ADF-4964] Add enter and escape events for updating card view properties (#5167)
* [ADF-4964] Add enter and escape events for updating card view properties

* [ADF-4964] Add unit tests
2019-10-21 14:22:16 +01:00
davidcanonieto 2a033507b3 [AAE-485] Fix card view int item validator (#5135)
* [AAE-485] Fix card view int item validator

* Improve code

* Fix unit tests

* Remove outdated test

* Fix login of int validator

* Fix e2e test

* fix linting
2019-10-21 11:18:55 +01:00
davidcanonieto f2c1778eda [ADF-4595] Change demo-shell style classes prefix (#5132)
* [ADF-4595] Change demo-shell style classes prefix

* Change more files

* Trigger e2e tests

* Fix e2e selectors

* Fix e2e tests

* Fix e2e tests
2019-10-18 17:35:01 +01:00
Maurizio Vitale 83094b43ff [DW-1320] Add visibility process def to simple app (#5169)
* Add visibility stuff

* Fix development
2019-10-18 15:04:50 +01:00
maurizio vitale 76df885932 Fix adf-cli 2019-10-18 12:55:19 +01:00
maurizio vitale 9cfa882bd9 bump bundlesize 2019-10-18 11:41:07 +01:00
Eugenio Romano 2e90fbd62a fix cli 2019-10-18 02:26:45 +01:00
dhrn baa0d6da30 [ADF-4947] Array type supported in data table columns (#5165)
* [WIP] [ADF-4947] Array type supported in data table columns

* * removed resolver for aria label

* * process services feature added

* * fixed docs
2019-10-18 00:01:52 +01:00
Martin Muller 12bbb993bd Show border when focus as wished in ACA-2504 (#5158) 2019-10-17 23:05:53 +01:00
arditdomi a0858e3c86 [ADF-4949] Add SUSPENDED state to the edit task filter (#5150)
* [ADF-4949] Add SUSPENDED state to the edit task filter

* [ADF-4949] Add unit test

* [ADF-4949] change order of status filters

* [ADF-4949] Change order of status filters

* [ADF-4949] Remove unnecessary unit test

* [ADF-4949] Add e2e for SUSPENDED filter

* [ADF-4949] fix lint errors
2019-10-17 23:05:28 +01:00
Eugenio Romano 2ef6dc46e0 [ADF-4954] Notification history persist (#5154)
* persist notification in storage

* add max stack check

* add max stack check

* fix folder
2019-10-17 22:54:50 +01:00
Cilibiu Bogdan a60fb744c4 [ADF-4965] Viewer - pass navigate before and next event (#5166)
* pass event

* update docs
2019-10-17 19:25:54 +01:00
Martin Muller 85cd6d9506 Add aria label and role LINK to app title (#5168) 2019-10-17 19:15:45 +01:00
maurizio vitale 3457294508 Increase the max bundle core to 130Kb 2019-10-17 17:08:57 +01:00
Maurizio Vitale 941df740d5 [ADF-4948] Move the resources config in the process cloud lib - Part 2 (#5143)
* Move the resources in the cloud lib

* Use adf cli

* Add missing process definitions

* Add debug points

* Print new class

* Use the resources under the adf-testing

* Use the resources from testing package

* Fix adf-testing bugs

* remove empty row

* Remove the npm install

* Remove log stuff

* Remove the console log

* Fix typo on process def names
Improve the debug e2e command

* Fix lowercase name

* Check the process cloud env and content env

* Add the new process definitions

* Add missing process definitions

* Use the latest simpleapp

* Rollback the bigFile

* Use relative link

* Trasnpile the adf-testing before using it
2019-10-17 14:31:58 +01:00
Cilibiu Bogdan ee5c90871a [ADF-4958] [ADF-4959] Info Drawer - Buttons don't have role and accessible by keyboard alone (#5161)
* actions accessibility

* lint

* access setEditMode by keyboard

* fix test

* update action automation id reference

* update element finder reference

* update automation id reference
2019-10-17 11:18:15 +01:00
Denys Vuika d7ab0417b8 [AAE-622] No implicit returns (#5157)
* enable noImplicitReturns rule

* type fixes

* fix return types

* fix return value

* fix tests

* fix visibility service

* update tests

* add missing types

* fix test
2019-10-17 09:35:39 +01:00
Eugenio Romano 48aca2d30f [ADF-4897] delete test-cookie after check (#5164)
* remove cookie test after check

* remove cookie test after check

* remove cookie test after check

* remove cookie test after check

* make nullable variable optional in cookie

* make nullable variable optional in cookie
2019-10-17 00:16:11 +01:00
Geeta Mandakini Ayyalasomayajula 313e535b8d [DW-1521] added message-events api methods (#5146)
* added message events api

* added export

* added the getProcessInstance method in the queryservice

* added form-cloud.service with method to submit the form.

* added form-cloud.service with method to submit the form.

* returning the error instead of throwing, which can be used in expected negative api assertions in the test.

* added getTaskByNAme method to filter a task by unique task-name within a process-instance

* linting fix

* made correlation key as optional parameter

* removed the unnecessary tslint disable statements

* removed the unnecessary tslint disable statements and reverted the throw error statement

* logging response is not needed

* added return type

* added return type
2019-10-16 21:18:07 +01:00
Roxana Diacenco 6389019561 [ADF-4960] Update clickCheckbox() method in Datatable component (#5159)
* Checked element is the input of type="checkbox"
2019-10-16 16:19:17 +01:00
Suzana Dirla e229ae820f [ADF-4962] Move or copy - Visual heading text - mark as a heading (#5163) 2019-10-16 15:28:46 +01:00
Cilibiu Bogdan 2f1a5943b6 panels header visual accessibility (#5162) 2019-10-16 12:52:06 +01:00
Cilibiu Bogdan 8bb8231a83 mark aria headings (#5155) 2019-10-15 15:23:55 +01:00
Eugenio Romano 210f1d8f59 [#4961] Angular v9 (ivy) compatibility fixes #5153 (#5156)
* Angular 9 compatibility: add explicit types to prevent automatic deep imports

If you do not provide an explicit return type to a function then TypeScript
will try to guess it and create a dynamic import type for the `.d.ts` files.

Often the imports incorrectly point to a path deep within a package,
rather than accessing the type via the correct public facing import.

From Angular v9, using ivy, such deep imports cause compilation
errors and will prevent this library from being used for ivy enabled
applications.

This commit fixes this problem for a component and a service that
the adf-core library exports.

* Angular 9 compatibility: import DOCUMENT from `@angular/common`

In Angular 7 importing `DOCUMENT` from `platform-browser` was
deprecated, and it was removed completely in Angular 8.

* fix type afterlast alpha

* fix type after last alpha

* fix types demo shell
2019-10-15 15:22:42 +01:00
Eugenio Romano a4424d17fc fix other insights paths 2019-10-14 18:42:36 +01:00
Eugenio Romano 0736a29d5c fix style issues (#5151) 2019-10-14 18:32:35 +01:00
Denys Vuika b3ca2166f0 upgrade js api (#5152)
* upgrade to latest js api

* add missing types

* remove useless function

* fix types

* enable strict mode

* Revert "enable strict mode"

This reverts commit 8e3f9c4563.
2019-10-14 18:28:01 +01:00
davidcanonieto 47ec01555a [ADF-4893] Fix visibility condition in datatable action menu (#5088)
* [ADF-4893] Fix visibility condition in datatable action menu

* Add filtering for when menu cache is disabled

* Fix unit test and improve code

* Fix linting

* Fix linting

* Add missing return type
2019-10-14 15:28:24 +01:00
Cilibiu Bogdan 1d7ef62095 [ADF-4953] Uploader - confirmation dialog actions should return focus to the upload dialog (#5148)
* trap confirmation dialog

* focus dialog when not in confirmation state

* test
2019-10-14 11:18:17 +01:00
Cilibiu Bogdan b1bccdb0e3 fix focus issues (#5147) 2019-10-14 11:00:01 +01:00
Maurizio Vitale 450e9dce89 Add the resources as part of testing (#5145) 2019-10-14 10:39:06 +01:00
Eugenio Romano 32561459c9 Fix style insights dev 2019-10-11 20:06:24 +01:00
maurizio vitale 82ae1e00d6 Fix the insight style path 2019-10-10 12:32:50 +01:00
Denys Vuika b1d0c50e88 [ADF-4926] fix attachments downloading (#5134)
* fix attachments downloading

* update code and tests
2019-10-10 12:06:36 +01:00
davidcanonieto 2def8d0557 [ADF-4861] Fix memory leak in Date widgets and Form Cloud Model (#5041)
* [ADF-4836] Fix memory leak in Date widgets and Form Cloud Model

* Remove unit tests based on old logic
2019-10-10 11:01:06 +01:00
Denys Vuika f731988ca6 [ADF-4911] migrate identity role service (#5096)
* migrate IdentityRoleService implementation

* update unit tests

* move interfaces to the origin

* move models to proper places

* migrate model to interface

* fix test

* update docs
2019-10-10 10:25:57 +01:00
Maurizio Vitale 3fc9390666 [ADF-4909] e2e - Move the resources as part of protractor params (#5086)
* Move the resources as part of protractor params

* Revert replace mistakes

* Remove the resources imports

* fix resources import
2019-10-10 10:22:11 +01:00
Maurizio Vitale 6860ab73ab [ADF-4859] Make sure the ng build insight works (#5141)
* Make sure the ng build insight works

* Fix styles
2019-10-10 09:57:20 +01:00
Maurizio Vitale 93419ffa7b [ADF-4916] Create the adf-cli init-aae-env command (#5099)
* Create the adf-cli command init-aae-env

* Remove the test app

* Add basic doc for the init-aae-env command
2019-10-09 21:27:03 +01:00
Cilibiu Bogdan 8da16ea1a7 [ADF-4937] Viewer - Drag and Drop is not operable with keyboard alone (#5126)
* add keyboard event logic

* tests

* fix outline visibility
2019-10-09 17:52:26 +01:00
Silviu Popa e0b1a3fe03 fix task header priority unit test (#5131) 2019-10-09 17:10:03 +01:00
Eugenio Romano 05ce529704 [AAE-550] Fix PS cloud test (#5139)
* fix PS cloud test

* fix spell

* separate e2e ps form ps-cloud
2019-10-09 13:57:03 +01:00
Eugenio Romano 798768a954 fix e2e apps names 2019-10-08 13:01:56 +01:00
Eugenio Romano a15b7e3db1 Update README.md 2019-10-08 10:36:06 +01:00
Cilibiu Bogdan 922e6ae3ab add aria-label attribute (#5138) 2019-10-08 10:30:06 +01:00
Nicolas Barithel e7bf3b5d56 fix travis url (#5136) 2019-10-08 10:28:29 +01:00
Eugenio Romano e5466f032a [ADF-4896] Merging AMA and ADF notifications for a better world (#5084)
* [ADF-4896] Merging AMA and ADF notifications for a better world

* Second part

* update package-lock
2019-10-07 16:25:01 +01:00
Eugenio Romano 6b57f21067 trigger build from API 2019-10-07 16:23:31 +01:00
Eugenio Romano 06c351cd7b imrove build release readme stauts (#5133) 2019-10-07 15:39:51 +01:00
Denys Vuika 84d939412c update package-lock 2019-10-07 11:06:32 +01:00
Andras Popovics ca79190880 Second part 2019-10-07 10:59:45 +01:00
Andras Popovics 14800ce399 [ADF-4896] Merging AMA and ADF notifications for a better world 2019-10-07 10:57:26 +01:00
Cilibiu Bogdan 922a85935e add sidebar button aria-expanded attribute (#5120) 2019-10-07 10:18:39 +01:00
sirReeall e550be6c25 Documentation - grammar corrections and rewording (#5123)
* Some grammar corrections and rewording

* Reworded tutorial paragraph and fixed typo
2019-10-07 10:09:50 +01:00
Cilibiu Bogdan b637cea059 focus dialog on files added (#5124) 2019-10-06 18:09:51 +01:00
Cilibiu Bogdan 6857213db6 trap focus for overlay viewer (#5127) 2019-10-06 18:08:15 +01:00
Suzana Dirla 9dd78b10f9 e2e fixes (#5129)
* fix e2e test [C260140] Copy - No permission folder

* Fix e2e test [C299158] Login component - SSO Grant type password (implicit flow false)
2019-10-06 18:05:52 +01:00
Cilibiu Bogdan 4a531dafcd don't use image path for alt text (#5130) 2019-10-06 18:04:50 +01:00
Suzana Dirla 3d604140d8 generic text (#5105) (#5121) 2019-10-02 18:56:10 +01:00
Eugenio Romano f45f6d0563 fix update children project 2019-09-30 21:41:40 +01:00
Eugenio Romano 2d58d2f458 bump 3.5.0 2019-09-30 17:34:25 +01:00
davidcanonieto 720e2035d8 [ADF-4925] Fix Process Variable mapping in ADF forms (#5116) 2019-09-30 16:08:48 +01:00
Eugenio Romano 20fa331d6f sso settigs fix (#5114)
* fix test

* update-js-api

* update-js-api

* invert test order for some reason

* split before save publicUrls

* split before save publicUrls

* [ADF-4810] split if publicUrls is not Array

* [ADF-4810]better check for string
2019-09-30 15:36:27 +01:00
Cilibiu Bogdan 9f22cb5cc7 fix focus outline (#5115) 2019-09-30 14:19:22 +01:00
Eugenio Romano bcacd8b42e [ADF-4810] fix sso settings (#5108)
* fix sso settings

* fix test

* update-js-api

* update-js-api

* invert test order for some reason
2019-09-30 13:32:17 +01:00
Silviu Popa c49e2dca7e [ADF-4905] StartProcessCloud - fix starting different process than se… (#5091)
* [ADF-4905] StartProcessCloud - fix starting different process than selected in dropdown

* fix process e2e test

* revert e2e changes
2019-09-30 13:31:22 +01:00
Eugenio Romano 4709cda51e localization 3.5.0 (#5112) 2019-09-30 12:00:59 +01:00
Denys Vuika fc325be1e9 Revert "[ADF-4925] Fix process variable mapping in Form Cloud component (#5110)"
This reverts commit 7c692137e3.
2019-09-30 11:44:44 +01:00
Francesco Corti fed2d0fa69 [ADF-4873] Release note in draft. (#5093)
* [ADF-4873] Release note in draft.

* [ADF-4873] Compantibility matrix.

* Update release notes

* [ADF-4873] Added the authorization topic to release note.

* Update RelNote350.md
2019-09-30 11:18:26 +01:00
davidcanonieto 7c692137e3 [ADF-4925] Fix process variable mapping in Form Cloud component (#5110) 2019-09-29 13:48:55 +01:00
Denys Vuika 178740bbde [ADF-4921] upload widget fixes (#5109)
* upload widget fixes

* fix mocks
2019-09-29 13:48:01 +01:00
davidcanonieto 7ebd287728 [APM-1412] Fix Json dialog on Form json widget (#5107) 2019-09-27 15:08:48 +01:00
Cilibiu Bogdan 492a8e72f1 generic text (#5105) 2019-09-27 10:55:40 +01:00
Suzana Dirla 46c0a27f51 [ADF-4810][ADF-4824] get the latest @alfresco/js-api with SSO fixes (#5106) 2019-09-27 10:51:14 +01:00
Cilibiu Bogdan 271c5f3d9c update sso docs (#5104) 2019-09-26 16:02:31 +01:00
Cilibiu Bogdan 82b0879b0f [ADF-4810] sso public urls configuration (#5102)
* update OAUTH schema and model

* update demoshell config for public urls
2019-09-26 13:37:48 +01:00
davidcanonieto aabfe19c51 [ADF-4922] Fix update project script for Generator and Modeler (#5103) 2019-09-26 13:36:57 +01:00
Eugenio Romano 3dc92beeb9 Review documentation plus some tools fix (#5100)
* review 3.5.0 doc

* fix documentation

* fix documentation

* fix documentation
2019-09-26 10:27:04 +01:00
Maurizio Vitale bfc7e91eb6 Use the latest candidatebaseapp 2019-09-26 08:52:39 +01:00
davidcanonieto 6ec6be36d5 [ADF-4913] Fix Gallery View in datatable Component (#5101) 2019-09-26 08:41:29 +01:00
davidcanonieto e610ae9766 [ADF-4914] Fix update versions script on Generator and AMA (#5098) 2019-09-24 21:18:59 +01:00
Eugenio Romano 9e27ba5f30 release docs 2019-09-24 17:45:03 +01:00
arditdomi 4b1ed97943 [ADF-4909] Hide about-plugins and about-product-versions sections whe… (#5095)
* [ADF-4909] Hide about-plugins and about-product-versions sections when they are empty

* [ADF-4909] Add missing unsubsciption
2019-09-24 16:48:09 +01:00
dhrn a9b7c91a00 [ADF-4906] [ADF] Not able upload file from ACS when start process with form (#5094) 2019-09-24 15:19:26 +01:00
Eugenio Romano d00849a015 remove old versions.json (#5089) 2019-09-20 14:25:41 +01:00
Denys Vuika 7a3fdfb490 fix readonly attribute 2019-09-20 13:31:31 +01:00
maurizio vitale 89788afe58 Fix the process-service export 2019-09-20 12:16:53 +01:00
maurizio vitale 6bfe9725af Add the travis TAGS value to docker 2019-09-20 10:26:15 +01:00
Maurizio Vitale cd7e21a23d [ADF-4858] Make sure process-services works with ng commands (#5067)
* Process-services:
Making sure you can run
ng build process-services
ng test process-services

* Fix the path of the styles

* move the file in the right place
2019-09-20 09:47:17 +01:00
Denys Vuika 90b2cee70d [ADF-4894] Json editor dialog (#5082)
* move download-zip to its own folder

* json dialog

* update docs

* update test

* disable e2e test

* json widget for the Form

* remove deprecated test

* fix tests, update display text name
2019-09-20 07:26:37 +01:00
Geeta Mandakini Ayyalasomayajula c15807a013 added superadminuser as aps_admin user when deploying the apps (#5087) 2019-09-19 15:15:29 +01:00
Geeta Mandakini Ayyalasomayajula 1527397b7b [ADF-4829] - Add e2e tests for custom action menu in TaskList and ProcessList (#5081)
* in progress custom action menu on tasklist

* C315723 - automated

* split into 2 methods, addAction, addDisabledAction
2019-09-19 13:32:45 +01:00
dhrn c2af8a23f0 [ADF-4868] [APS-1] adf-content-node-selector seems broken when we upload from External Alfresco content service (#5078) 2019-09-19 11:48:05 +01:00
Geeta Mandakini Ayyalasomayajula b22a23a338 simpleapp added with process variables (#5085) 2019-09-19 11:28:15 +01:00
Geeta Mandakini Ayyalasomayajula 4606b45d58 Updated the simpleapp and added superadminuser when deploying the apps (#5075)
* updated the simpleapp with the process-variables required and added superadminuser when deploying the apps.

* simpleapp updated with more process variables
2019-09-19 10:49:56 +01:00
cristinaj 70d877b0b9 [ADF-3725]Add visibility conditions on tabs tests when completing a task (#5034)
* Add visibility conditions on tabs tests when completing a task

* Fix comments

* Removing unused import.

* Changed simpleapp

* Rebase

* Removed comment

* Revert "Rebase"

This reverts commit 417b59f541.

* Remove unused method
2019-09-18 19:12:17 +01:00
cristinaj 7d0d45cb59 [ADF-3724]Create tests for visibility conditions on tabs on APS1 (#5065)
* Create tests for visibility conditions on tabs on APS1

* Fix comments

* Fix linting

* Remove the final /
2019-09-18 17:25:24 +01:00
Cilibiu Bogdan d5b4caa5ed [ADF-4892] DocumentList - set appropriate column aria-sort state (#5079)
* set specific aria-sort state

* return false when table has no sorting

* move logic to component

* aria sort method

* tests
2019-09-18 15:21:35 +01:00
siva kumar 30089f485f * Fixed failing unit tests on process-services. (#5080) 2019-09-17 12:42:08 +01:00
Maurizio Vitale b2966bc6f5 Add as group suffix the travis build number (#5072) 2019-09-17 12:41:35 +01:00
Marouan Bentaleb 8ee3e25caf [ADF-4807] Automation tests for date min/max validation (#5008)
* Trigger alpha

* [ADF-4807] Automation tests for date min/max validation

* Removing identityUser changes
2019-09-16 17:07:06 +01:00
siva kumar 53471eae84 [ADF-4829] [ADF] [TaskListCloudComponent] Add action and context menu. (#5018)
* * Demo on list com

* [ADF-4828] [ADF] [ProcessListCloudComponent] Add action and context menu.

* Exposed action and context menu.
* Provided a way to in the demo shell to test action menu.
* Added required transaltion on demo shell.

* * Added doc

* [ADF-4829] [ADF] [TaskListCloudComponent] Add action and context menu.

* Exposed action and contect menu on tasklist page.

* * Added documentation.

* * Fixed typo

* * After rebase

* * Fixed failing e2e test on cloud demo tasklist

* * Added providedIn in Task/process cloud service.
2019-09-16 12:26:27 +01:00
Silviu Popa d89b61cff0 [ACTIVITI-3746] - fix form completion with tab fields (#5059)
* [ACTIVITI-3746] - fix form completion with tab fields

* fix lint

* fix unit test

* refractoring and PR changes

* fix unit tests
2019-09-16 12:57:46 +03:00
Denys Vuika ae56d61ea3 use custom chrome version with puppeteer (#5070)
* use custom chrome version with puppeteer

* pin to Chromium 76

* update code to trigger travis

* update protractor

* try remove extra env setting

* try chrome 62

* upgrade to chrome 76, exclude 3 tests

* add safety check for the focus

* toggle tests

* disable tests

* disable flaky test

* update names

* disable flaky test

* disable flaky test

* disable test

* disable test

* fix name simpleapp

* rename simpleApp to simpleapp project change
2019-09-13 16:20:19 +01:00
Denys Vuika 77415d08a0 temporary switch off the FormModel json typing 2019-09-13 13:12:24 +01:00
Cilibiu Bogdan 5b11e52903 [ADF-4888] DocumentList - cell header title is announced over cell value (#5068)
* fix focus outline

* focus on cell values

* focus on size value if defined

* row actions menu aria-label
2019-09-12 15:04:43 +01:00
arditdomi c2c883885e [ADF-4878] Refactor, Split ADF About component (#5064)
* Refactor, Split ADF About component

* [ADF-4878] Add documentation

* [ADF-4878] Rename Component

* [ADF-4878] Implement comments

* [ADF-4878] Update documentation for about components
2019-09-12 15:02:28 +01:00
Denys Vuika d90497a3f8 fix FormRepresentationModel interface 2019-09-12 13:40:38 +01:00
Eugenio Romano 04362c60c0 Update package.json 2019-09-11 11:27:06 +01:00
Eugenio Romano c860923691 Use npx instead of absolute adf-cli path (#5053)
(reverted from commit 140f60b8dc)
2019-09-10 16:07:52 +01:00
Eugenio Romano 327bc56c02 Log class in e2e plus check PS cloud CS works before run test (#5057)
* check cs work on ps cloud add log class

* fix env config
2019-09-09 17:25:10 +01:00
dhrn f698892973 [ADF-4798] - [adf-content-node-selector] File icons are not showing properly (#5054) 2019-09-09 15:48:12 +01:00
Roxana Diacenco 46247c6351 [DW-1478] E2e - Move 'filter' component from Admin Application (#5061)
* [DW-1478] E2e - Move 'filter' component from Admin Application

* Replace admin e2e framework methods with ADF reusable ones

* Add return type for filter component method

* Fix browser-actions errors

* Remove clear() method from browser-actions

* Add and rename edit filter components methods

* Remove unused methods from browser-actions
Add method to retrieve the application selected in Edit Process Filter

* Fix called method in edit task filter component
2019-09-09 15:43:41 +01:00
Maurizio Vitale 140f60b8dc Use npx instead of absolute adf-cli path (#5053) 2019-09-09 15:00:04 +01:00
Cilibiu Bogdan 5b9f37d01f [ADF-4838] Upload Dialog - canceling a pending file cancels the file in progress (#5063)
* add automation id

* call cancel upload api only if file is not pending

* tests

* e2e
2019-09-09 11:23:07 +01:00
Maurizio Vitale 4de00fd6ca [ADF-4867] adf-error-component refactor (#5056)
* Refactor the adf-error-component
Move the custom buttons on demoshell
Fix unit test
Remove usefull e2e

* Add basic example
2019-09-07 10:29:19 +01:00
Silviu Popa 4d7c07ef93 [ADF-4041] - fix People/Group preselected issues (#4866)
* [ADF-4041] - fix People/Group preselected issues

* [ADF-4041] - remove duplicated groups

* [ADF-4041] - fix lint

* [ADF-4041] - fix label overlay

* [ADF-4041] - lint

* [ADF-4041] - PR changes

* clear timeout

* remove unused property

* clear timeout

* fix default preselect user
2019-09-05 18:47:41 +01:00
dhrn d5e7c0066b [ADF-4794] Not able to attach a second file to a form after one has already been attached (#5058) 2019-09-05 15:54:34 +01:00
mcchrys 0d7795aa6d [ADF-4826] Process/Task list first displays "No Process/Task Found" and then loads the Process/Tasks (#4995)
* [ADF-4826] Process/Task list first displays "No Process/Task Found" and then loads the Process/Tasks

* Initialized loader flag to true

* Updated unit tests

* fixed lint errors
2019-09-05 14:40:23 +01:00
Cilibiu Bogdan bf6889ee54 [ADF-4831] DocumentList - filetype alternative text is not meaningful (#4998)
* filetype alternative text

* icons text translation key

* icon text accessibility translation

* fix e2e

* add miscellaneous file type
2019-09-05 11:50:28 +01:00
Cilibiu Bogdan ef09b077c4 [ADF-4865] Upload Dialog - row actions not accessible by keyboard alone (#5051)
* access upload dialog information by keyboard

* upload files actions keyboard accessibility

* aria labels translation keys

* refractor styling

* toggle action icons

* update docs

* e2e

* e2e update action reference
2019-09-05 11:08:46 +01:00
Denys Vuika 2360ccc6d5 [ACTIVITI-3720] cloud form support for form variable mapping (#5044)
* universal form model

* parse variables correctly

* turn group model into interface

* remove console.log

* interface instead of class

* update form id type

* improved form variable parsing

* improved variable conversion

* fix cloud tests

* fix typings and code bugs
2019-09-04 20:14:21 +01:00
Geeta Mandakini Ayyalasomayajula 53dc5f0b91 [DW-1328] added the create and delete role api for test preconditions (#5052)
* added the create and delete role api for test preconditions

* added the required visibility conditions, for the method to work consistently across apps

* removed the visibility conditions that are not necessary
2019-09-04 18:43:39 +01:00
Marouan Bentaleb 9a5165599d Fixing Process Cloud tests (#5055)
* Trigger alpha

* Fixing people-group-cloud-component.e2e.ts
2019-09-04 17:48:34 +01:00
Geeta Mandakini Ayyalasomayajula 6aa6412be8 [ADF-4828] Should display the custom action menu for Process Cloud List (#5030)
* C315236 automated

* updated the Title

* changed the method name
2019-09-04 14:57:26 +01:00
maurizio vitale 77f159d62f Update the js api with the vjs version 2019-09-04 10:38:03 +01:00
maurizio vitale 8d095974a4 Fix the adf-cli with version option 2019-09-03 15:15:54 +01:00
Mario Romano e4448259f3 [ACTIVITI-3739] make display show json types (#5046) 2019-09-03 15:11:20 +01:00
maurizio vitale 406b9cd92a Use the correct adf-cli 2019-09-03 11:16:52 +01:00
Cilibiu Bogdan df0bb75324 [ADF-4862] Upload dialog - reading order (#5045)
* dialog container accessibility

* upload container aria label translation key

* focus on active upload dialog

* test

* add back removed aria-label
2019-09-03 11:11:47 +01:00
Vito 19a17ca6e6 [ADF-4823] added download and show preview for attach cloud widget (#4996)
* [ADF-4823] fixed download and start fixing show preview

* [ADF-4823] fixed preview files

* [ADF-4823] - added unit test

* [ADF-4823] - fixed lint problem

* [ADF-4823] - rebased and fixed lint problem

* added a new method in BrowserActions to check that the action menu is visible, and using that in the tests.

* linting fixes
2019-09-03 11:10:40 +01:00
maurizio vitale c142371222 Use enterprise token and npx to avoid install 2019-09-03 10:33:41 +01:00
maurizio vitale 2b8703a74c Run only the update children in case the tag is beta 2019-09-02 16:27:41 +01:00
maurizio vitale 9cea94a853 Move the tag on the release sh 2019-09-02 14:50:52 +01:00
maurizio vitale dcd86ff3b3 Trigger alpha 2019-09-02 14:21:24 +01:00
Cilibiu Bogdan ddb5fb445c [ADF-4855] Upload dialog - Buttons must have discernible text (#5040)
* aria labels translation keys

* actions aria label

* announce confirmation content
2019-09-02 12:45:08 +01:00
maurizio vitale 27c36ad4a2 Create TAG_NPM based on the branch 2019-09-02 12:41:15 +01:00
maurizio vitale 8766dc18a6 Release the beta in case the cron job runs 2019-09-02 11:55:00 +01:00
Maurizio Vitale a2fedee05f [ADF-4860] Travis add tag beta on cron job (#5042)
* add the name and email values and push with the token

* add the name and email values and push with the token
2019-09-02 11:26:55 +01:00
Denys Vuika ce50e9a3d3 [ACTIVITI-3720] form variables enhancements (#5028)
* support form variables on the model level

* take 'variables.name' convention into account

* move API to a proper place

* unit tests and code fixes

* unit tests for form field model

* process variable interface
2019-09-02 11:20:54 +01:00
Eugenio Romano 42c9a2e833 Update .travis.yml 2019-09-02 10:56:46 +01:00
davidcanonieto 1cb4dfc1b8 [ADF-4764] Hide placeholder in Amount Widget in readOnly mode (#5035)
* [ADF-4764] Hide placeholder in Amount Widget in readOnly mode

* add missing return type
2019-08-31 00:30:13 +01:00
Silviu Popa be867b0c0c [ADF-4848] Form - fix tab visibility (#5021)
* [ADF-4848] - fix tab visibility

* add unit test
2019-08-30 19:31:12 +01:00
Denys Vuika 2b1250cae7 repair doc tools and polish the docs code (#5038)
* set private access modifier

* repair doc build tools

* fix lit issues

* re-generate version index
2019-08-30 17:26:10 +01:00
Marouan Bentaleb 3bebc7a18c [ADF-4840] Fixing failing tests on process-services-cloud (#5013)
* [ADF-4840] Fixing dropdown-widget.e2e.ts-beforeEach and start-task-group-cloud.e2e.ts-afterAll

* [ADF-4840] Testing with apps deployed with different permissions

* [ADF-4840] Fixing edit-process-filters-component.e2e.ts

* [ADF-4840] Add space to lib/process-services-cloud

* [ADF-4840] Fixing people-group-cloud-filter-component and reverting changes to the appNames

* [ADF-4840] Fixing start-task-custom-app-cloud
2019-08-30 16:32:14 +01:00
Denys Vuika 9e1a90adc8 [ADF-4854] sticky header for task list (#5036)
* sticky header for task list

* fix html

* add docs

* update code docs
2019-08-30 16:31:10 +01:00
Eugenio Romano 537d5b912f remove lib/dist from cache 2019-08-30 15:55:05 +01:00
Eugenio Romano 073ece2d02 change order check bundle 2019-08-30 15:30:04 +01:00
Eugenio Romano f69b3646ae accumulate common lib task in first job to avoid cache problems 2019-08-30 15:28:29 +01:00
cristinaj 31bec59a16 [ADF-3723]Add visibility conditions on tabs - form rendering component tests (#5022)
* Add visibility conditions on tabs - form rendering component tests

* no message

* Moved the suite to process-services-cloud folder

* no message
2019-08-30 12:16:28 +01:00
maurizio vitale 505e8204e2 Try to create tag with token 2019-08-30 12:16:01 +01:00
maurizio vitale 52210594ad Cache the lib/dist for npm publish purpose 2019-08-30 12:03:53 +01:00
Silviu Popa a6ee26b35b [ADF-4843] - Automate more manual test cases for visibility chaining … (#5014)
* [ADF-4843] - Automate more manual test cases for visibility chaining in ADF

* fix lint
2019-08-30 11:51:56 +01:00
Eugenio Romano 52af042450 move install in travis and out from lint.sh 2019-08-30 10:44:21 +01:00
Eugenio Romano 6c81cbc832 lint missin install 2019-08-30 10:28:40 +01:00
maurizio vitale 9f7f6c0427 Use the git token 2019-08-30 10:21:50 +01:00
Eugenio Romano ee71866702 fix cli command use 2019-08-30 10:02:20 +01:00
Eugenio Romano b25d989853 add typscritp compiler in cli build 2019-08-29 21:10:28 +01:00
Eugenio Romano 6590b59de0 fix scripts npm 2019-08-29 20:15:10 +01:00
Cilibiu Bogdan d7ff927b79 [ADF-4845] Uploader - Expanded/collapsed state not exposed (#5015)
* state accessibility

* remove aria-disabled
2019-08-29 20:13:57 +01:00
Denys Vuika edc0945f39 fix "ng lint" command (#5012)
* update to latest js-api

* fix the "ng lint" command

* fix linting issues

* fix lint issues

* lint fixes

* code fixes

* fix html

* fix html

* update tests

* test fixes

* update tests

* fix tests and api

* fix code
2019-08-29 16:35:30 +01:00
Marouan Bentaleb 140c64b79f [ADF-4544] Automation for form button refresh after action (#4835) 2019-08-29 16:24:50 +01:00
maurizio vitale a588a64937 Add condition for default jobs 2019-08-29 15:54:13 +01:00
Maurizio Vitale ac28b959ee CI/CD allow a Travis cron job to create beta and update children proj… (#5033)
* CI/CD allow a Travis cron job to create beta and update children projects

* Update build.sh
2019-08-29 15:22:12 +01:00
Eugenio Romano 24e1794fb9 move codecov inside unit test to avoid the aftes success execution in any script stage 2019-08-29 15:14:54 +01:00
Cilibiu Bogdan f35f0466e6 [ADF-4839] Document List - column name link accessibility (#5011)
* accessibility

* rename translation key

* translation key name

* link name component accessibility

* generic translation
2019-08-29 15:07:01 +01:00
davidcanonieto e5f7d2f304 [ADF-4852] Make use of ADF-CLI command to update sha (#5032)
* [ADF-4852] Make use of ADF-CLI command to update sha

* Update build.sh
2019-08-29 15:05:00 +01:00
davidcanonieto c6ddfe46cf [ADF-4816] Move localization keys for About component from demo-shell to core (#5007) 2019-08-29 14:59:07 +01:00
maurizio vitale df37455edd Change the condition for master 2019-08-29 12:50:29 +01:00
maurizio vitale 01ff4dfa52 Run the update children project if is push or beta 2019-08-29 12:45:22 +01:00
Eugenio Romano 43df299096 release update commands pipeline 2019-08-29 12:01:49 +01:00
Marouan Bentaleb cdfae95c2a [ADF-4847] Not able to find any user in Assignee field when creating a task (#5029)
* [ADF-4847] Not able to find any user in Assignee field when creating a task

Updated url to fetch composite user roles

* [ADF-4847] Fixing failing E2E tests
2019-08-29 09:46:47 +01:00
Eugenio Romano 64cecaa125 fix permissions 2019-08-29 08:21:56 +01:00
Eugenio Romano c35fee473b fix release apha 2019-08-29 01:01:29 +01:00
Eugenio Romano 609ae3a3ff fix content service document list action test (#5027)
* fix content service document list action test

* restore build.sh

* perform twice movement mosue for right click for avoid bug in non headless chrome

* change sso ref element present

* change sso ref element present
2019-08-28 23:25:06 +01:00
maurizio vitale 09d3710bcf Get the latest alpha before the install 2019-08-28 16:52:53 +01:00
maurizio vitale 36b76821d0 revert change on dockerfile 2019-08-28 16:06:18 +01:00
Eugenio Romano 151fef16f4 Check remote env if is full before to start the e2e CS (#5024)
* add check remote env full

* Update check-cs-env.js
2019-08-28 15:58:07 +02:00
maurizio vitale 88f9678571 echo rancher job 2019-08-28 14:26:41 +01:00
maurizio vitale 329a8a5348 Use the correct docker repo domain 2019-08-28 13:47:00 +01:00
maurizio vitale 29533e751d Use docker commands 2019-08-28 13:01:06 +01:00
Paul Roth c4adfd49c0 Propose a correction to what appears to be a minor typo (#5026)
* Propose a correction to what appears to be a minor typo

removed the word 'a'.

* Update extensibility.md
2019-08-28 13:49:18 +02:00
maurizio vitale 4c468530d9 Npm install latest adf-cli 2019-08-28 12:27:39 +01:00
maurizio vitale bfc132eeff Improve the docker log 2019-08-28 12:03:10 +01:00
maurizio vitale ee9ed24844 Improve the docker log 2019-08-28 12:02:37 +01:00
davidcanonieto 8a48738b99 [ADF-4825] Use ADF-CLI in ADF for versions and latest commit (#4994)
* [ADF-4825] Use ADF-CLI in ADF for versions and latest commit

* Add documentation

* Update update-version.ts

* Update release.sh

* Update update-project.sh

* Update release.sh

* Update update-project.sh

* Update release.sh

* Update update-project.sh

* Update README.md

* Rebase branch

* Update package.json

* Update build.sh

* Update package.json
2019-08-28 11:01:00 +01:00
maurizio vitale 3aed425020 Run the docker push before 2019-08-27 17:00:22 +01:00
Maurizio Vitale d8961ea904 [ADF-4850] Travis add check bundle size and docker publish (#5023)
* Add a check bundle job after the release

* Add a docker push step and update rancher

* Split update rancher in a different job

* Split update rancher in a different job

* Install the adf-cli

* Run docker publish and rancher update only on push

* Use the adf-cli local code
2019-08-27 16:09:00 +01:00
Suzana Dirla bfc3f30674 [ADF-4846] Move to ADF the style overrides from ACA (#5016)
* [ADF-4846] add $data-table-cell-link-color variable

- move style fix needed on ACA to ADF

* [ADF-4846] add $adf-permission-list-width variable

- moved style fix for adf-permission-lists from ACA to ADF
2019-08-27 14:56:01 +02:00
Eugenio Romano 30d03cf540 fix clean script 2019-08-27 10:30:35 +01:00
siva kumar 8c00919db0 [ADF-4828] [ProcessListCloudComponent] Add action and context menu. (#5009)
* * Demo on list com

* [ADF-4828] [ADF] [ProcessListCloudComponent] Add action and context menu.

* Exposed action and context menu.
* Provided a way to in the demo shell to test action menu.
* Added required transaltion on demo shell.

* * Added doc

* * Fixed comments.
2019-08-23 14:51:39 +01:00
Silviu Popa 8c159babe0 [ADF-4837] - Automation checkbox visibility e2e tests (#5010) 2019-08-22 11:48:30 +02:00
2302 changed files with 37979 additions and 67931 deletions
+1 -2
View File
@@ -4,6 +4,7 @@ bundles
workspace.xml
.idea/
.env.*
.env
dist/
e2e/.env.cloud
tmp
@@ -16,8 +17,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
+20
View File
@@ -0,0 +1,20 @@
pull_request_rules:
- name: automatic merge for Dependabot pull requests
conditions:
- author=dependabot-preview[bot]
- status-success=continuous-integration/travis-ci/pr
- status-success=security/snyk - package.json (eromano (GitHub marketplace))
actions:
merge:
method: merge
- name: merge when all requested reviews are valid
conditions:
- status-success=continuous-integration/travis-ci/pr
- status-success=security/snyk - package.json (eromano (GitHub marketplace))
- '#approved-reviews-by>=1'
- '#changes-requested-reviews-by=0'
- '#commented-reviews-by=0'
- label!="do not merge"
actions:
merge:
method: merge
+13
View File
@@ -0,0 +1,13 @@
# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
version: v1.14.0
ignore: {}
# patches apply the minimum changes required to fix a vulnerability
patch:
SNYK-JS-HTTPSPROXYAGENT-469131:
- '@alfresco/adf-cli > npm-registry-fetch > make-fetch-happen > https-proxy-agent':
patched: '2019-11-20T10:48:59.194Z'
- '@alfresco/js-api > @alfresco/adf-cli > npm-registry-fetch > make-fetch-happen > https-proxy-agent':
patched: '2019-11-20T10:48:59.194Z'
SNYK-JS-TREEKILL-536781:
- snyk > snyk-sbt-plugin > tree-kill:
patched: '2019-12-12T00:35:06.820Z'
+1
View File
@@ -1 +1,2 @@
_theming.scss
pdfViewerHost.component.scss
+66 -48
View File
@@ -1,12 +1,11 @@
git:
depth: 3
quiet: true
language: node_js
dist: trusty
sudo: required
node_js:
# Use the explicit NodeJS LTS version 8.9.4 to avoid any automatic upgrade of the version.
- '10.16.0'
- '12.13.1'
install:
echo "no install"
@@ -23,18 +22,30 @@ branches:
# TRAVIS_PULL_REQUEST == false means is running on dev branch and is not a PR
stages:
- name: Lint & Build Dist
if: type = pull_request OR type = api
- name: Lint & Build Dist & Release
if: (type = push OR type = cron) AND tag IS blank
- name: Check bundle
if: type = push AND tag IS blank
- name: Unit test
if: (type != cron AND tag IS blank) OR type = api
- name: Update Rancher
if: (type = push AND tag IS blank) OR type = api
- name: e2e Test
- name: Deploy PR
if: type = pull_request
- name: Release on npm
if: branch = development AND type = push
if: (type != cron AND tag IS blank) OR type = api
- name: Update Children Projects
if: branch = master AND type = push OR (tag =~ .*beta.*)
- name: Release beta tag
if: type = cron OR branch = master
- name: Trigger ADF child build
if: (branch = development AND type = push) OR type = api
addons:
chrome: stable
before_script:
- "sudo chown root /opt/google/chrome/chrome-sandbox"
- "sudo chmod 4755 /opt/google/chrome/chrome-sandbox"
- export GIT_HASH=`git rev-parse HEAD`
before_install:
- export CHROME_BIN=chromium-browser
@@ -44,13 +55,21 @@ before_install:
jobs:
include:
# Run Only for any PR
- stage: Lint & Build Dist
name: Build Dist
name: Lint & Build Dist
script:
- ./scripts/travis/build/build.sh || exit 1;
- stage: Lint & Build Dist
name: Lint
script: ./scripts/lint.sh || exit 1;
- ./scripts/lint.sh || exit 1;
# Run Only on Development and master
- stage: Lint & Build Dist & Release
name: Lint & Build Dist & Release
script:
- ./scripts/travis/build/build.sh || exit 1;
- ./scripts/lint.sh || exit 1;
- ./scripts/travis/release/release-npm.sh
- stage: Unit test
name: Unit test content
@@ -61,61 +80,60 @@ jobs:
- stage: Unit test
name: Unit test process process-cloud insights
script: ./scripts/travis/unit-test/process.sh
- stage: Deploy PR
name: Deploy PR
script:
./scripts/travis/deploy/deploy.sh
- stage: Update children projects dependency #Update children projects dependency
name: Update Related Project
if: tag =~ .*beta.*
- stage: Update Children Projects
script: ./scripts/travis/update/update-children.sh
- stage: Release beta tag
script: ./scripts/travis/release/git-tag.sh
- stage: e2e Test
name: core
script: ./scripts/travis/e2e/core-e2e.sh
- stage: e2e Test
name: content
script:
./scripts/travis/e2e/content-services-e2e.sh
script: ./scripts/travis/e2e/content-services-e2e.sh
- stage: e2e Test
name: search
script:
./scripts/travis/e2e/search-e2e.sh
script: ./scripts/travis/e2e/search-e2e.sh
- stage: e2e Test
name: process
script:
./scripts/travis/e2e/process-services-e2e.sh
script: ./scripts/travis/e2e/process-services-e2e.sh
- stage: e2e Test
name: process Cloud
script: ./scripts/travis/e2e/process-services-cloud-e2e.sh
- stage: Update Rancher
name: Update Rancher
script: ./scripts/travis/deploy/deploy.sh
- stage: Check bundle
script:
./scripts/travis/e2e/process-services-cloud-e2e.sh
- stage: Release on npm
script:
- ./lib/dist/cli/bin/adf-cli npm-publish --npmRegistry $NPM_REGISTRY_ADDRESS --tokenRegistry $NPM_REGISTRY_TOKEN --tag $TAG_NPM --pathProject "$(pwd)"
- ADF_VERSION=$(npm view @alfresco/adf-core@${TAG_NPM} version)
- ./scripts/npm-check-bundles.sh -v ${ADF_VERSION}
- stage: Trigger ADF child build
name: Trigger ADF child build
script: ./scripts/travis/update/trigger-travis-children.sh --branch $TRAVIS_BRANCH Alfresco $TRAVIS_ACCESS_TOKEN
before_deploy:
# Set up git user name and tag this commit
- git config --local user.name "Alfresco"
- export TRAVIS_TAG=$(cat package.json | grep version | head -1 | awk -F= "{ print $2 }" | sed 's/[version:,\",]//g' | tr -d '[[:space:]]')
- echo "Create tag:" $TRAVIS_TAG
- git tag $TRAVIS_TAG
deploy:
provider: releases
api_key: $GITHUB_TOKEN
name: $TRAVIS_TAG
body: "Add the release note"
skip_cleanup: true
on:
branch: master
# Send coverage data to codecov
after_success:
bash <(curl -s https://codecov.io/bash) -X gcov
notifications:
slack:
on_pull_requests: false
rooms:
secure: "qcTP/+rhVweMSZZAQMPz4sW7boS8XC0RX1SPYgg7hIfxBr9747WpRLkJ1sirkVaXI/6XfYAyl42CTfPmTuJxIC+co/NSnEDknwVsnKZd0O/ykTpo+mxIN4BTZX8dm+gELR5IEYQPs+Yki3ZnD9b+0mCK1yD8JallKCQeE2U9BhzZhP/Fn0ce35EulybNp3QQDaox0XC+7gadMdxlvK8mzP1scw76wRLtx25QLxxV+OwEw0bzyh8y3onfjHfnoDcUQWRTNdnjapzmgf1LNdC202A5kwp5sJggfSDr+ActRqaMvv4BbMsFpdan34B6zPQJfyZL1r8IB8O8BEKcAaOUVcTjnZAOom8kHS8F07/mo5xnNYmV8oNX2/egr1CiG4U0EAGF2XGqM+vetYnF88LTEzy84kVxmSwKGVfzlGOyTplMXJ1iCENndtfWm1AXhAFj5RSsSAZg6IStTM+mcpnC75moEwQtj8bTenwehHz1HQAjQX7xeTQo27SxDc7oqp1ReyXCllMjKxckjVGmp2j6yxn1Jl55kivBj57vluLtEtziOGluVELP5E2fV0VAuErNhnjLm4LJARVN76PQaTOXYwATVVJJDhb/77TesvxQsr3VfiROEKm7QB7IDFjghjLLisSX67JQ5+7K/qMlqf9+9hNw4n0v1eMylVjt+gyxspc="
on_failure: always
on_success: change
template:
- "Repo `%{repository_slug}` *%{result}* build (<%{build_url}|#%{build_number}>) for commit (<%{compare_url}|%{commit}>) on branch `%{branch}`."
- "Author: %{author} Execution time: *%{duration}*"
- "Message: %{message}"
cache:
directories:
- node_modules
- demo-shell/dist
- tmp
- lib/dist
+5 -5
View File
@@ -1,13 +1,14 @@
# Alfresco Application Development Framework (ADF)
| branch | status |
| --- | --- |
| master | [![Build Status](https://travis-ci.org/Alfresco/alfresco-ng2-components.svg?branch=master)](https://travis-ci.org/Alfresco/alfresco-ng2-components) |
| development | [![Build Status](https://travis-ci.org/Alfresco/alfresco-ng2-components.svg?branch=development)](https://travis-ci.org/Alfresco/alfresco-ng2-components) |
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/d9eb873741da403bb3284778102372e7)](https://www.codacy.com/app/Alfresco/alfresco-ng2-components?utm_source=github.com&utm_medium=referral&utm_content=Alfresco/alfresco-ng2-components&utm_campaign=badger)
[![Join the chat at https://gitter.im/Alfresco/alfresco-ng2-components](https://badges.gitter.im/Alfresco/alfresco-ng2-components.svg)](https://gitter.im/Alfresco/alfresco-ng2-components?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
<p>
<a title='Build Status Travis' href="https://travis-ci.org/Alfresco/alfresco-ng2-components">
<img src='https://travis-ci.org/Alfresco/alfresco-ng2-components.svg?branch=master' alt='travis
Status' />
</a>
<a href='https://codecov.io/gh/Alfresco/alfresco-ng2-components'>
<img src='http://img.shields.io/codecov/c/github/Alfresco/alfresco-ng2-components/master.svg?maxAge=2592000' alt='Coverage Status' />
</a>
@@ -65,4 +66,3 @@ All components are supported in the following browsers:
* Due to a [known issue](https://bugzilla.mozilla.org/show_bug.cgi?id=1188880) in Firefox, the Alfresco Upload Component does not currently support folder upload functionality on Firefox.
See the [Browser Support](BROWSER-SUPPORT.md) article for more details.
+38 -36
View File
@@ -25,7 +25,6 @@
"demo-shell/src/assets",
"demo-shell/src/favicon-96x96.png",
"demo-shell/src/app.config.json",
"demo-shell/src/versions.json",
{
"glob": "**/*",
"input": "demo-shell/resources",
@@ -166,7 +165,6 @@
"demo-shell/src/assets",
"demo-shell/src/favicon-96x96.png",
"demo-shell/src/app.config.json",
"demo-shell/src/versions.json",
{
"glob": "**/*",
"input": "demo-shell/resources",
@@ -255,7 +253,6 @@
"assets": [
"demo-shell/src/assets",
"demo-shell/src/app.config.json",
"demo-shell/src/versions.json",
{
"glob": "**/*",
"input": "demo-shell/src/assets",
@@ -266,11 +263,6 @@
"input": "demo-shell/src",
"output": "/"
},
{
"glob": "versions.json",
"input": "demo-shell/src",
"output": "/"
},
{
"glob": "**/*",
"input": "demo-shell/resources",
@@ -293,17 +285,17 @@
},
{
"glob": "**/*",
"input": "lib/process-services/assets",
"input": "lib/process-services/src/lib/assets",
"output": "/assets"
},
{
"glob": "**/*",
"input": "lib/process-services-cloud/assets",
"input": "lib/process-services-cloud/src/lib/assets",
"output": "/assets"
},
{
"glob": "**/*",
"input": "lib/content-services/assets",
"input": "lib/content-services/src/lib/assets",
"output": "/assets"
},
{
@@ -313,12 +305,12 @@
},
{
"glob": "**/*",
"input": "lib/content-services/i18n",
"input": "lib/content-services/src/lib/i18n",
"output": "/assets/adf-content-services/i18n"
},
{
"glob": "**/*",
"input": "lib/process-services/i18n",
"input": "lib/process-services/src/lib/i18n",
"output": "/assets/adf-process-services/i18n"
},
{
@@ -328,7 +320,7 @@
},
{
"glob": "**/*",
"input": "lib/insights/i18n",
"input": "lib/insights/src/lib/i18n",
"output": "/assets/adf-insights/i18n"
},
{
@@ -430,7 +422,6 @@
"assets": [
"demo-shell/src/assets",
"demo-shell/src/app.config.json",
"demo-shell/src/versions.json",
{
"glob": "**/*",
"input": "demo-shell/src/assets",
@@ -441,11 +432,6 @@
"input": "demo-shell/src",
"output": "/"
},
{
"glob": "versions.json",
"input": "demo-shell/src",
"output": "/"
},
{
"glob": "**/*",
"input": "demo-shell/resources",
@@ -468,17 +454,17 @@
},
{
"glob": "**/*",
"input": "lib/process-services/assets",
"input": "lib/process-services/src/lib/assets",
"output": "/assets"
},
{
"glob": "**/*",
"input": "lib/process-services-cloud/assets",
"input": "lib/process-services-cloud/src/lib/assets",
"output": "/assets"
},
{
"glob": "**/*",
"input": "lib/content-services/assets",
"input": "lib/content-services/src/lib/assets",
"output": "/assets"
},
{
@@ -488,12 +474,12 @@
},
{
"glob": "**/*",
"input": "lib/content-services/i18n",
"input": "lib/content-services/src/lib/i18n",
"output": "/assets/adf-content-services/i18n"
},
{
"glob": "**/*",
"input": "lib/process-services/i18n",
"input": "lib/process-services/src/lib/i18n",
"output": "/assets/adf-process-services/i18n"
},
{
@@ -503,7 +489,7 @@
},
{
"glob": "**/*",
"input": "lib/insights/i18n",
"input": "lib/insights/src/lib/i18n",
"output": "/assets/adf-insights/i18n"
},
{
@@ -561,7 +547,9 @@
"lint": {
"builder": "@angular-devkit/build-angular:tslint",
"options": {
"tsConfig": [],
"tsConfig": [
"./e2e/tsconfig.e2e.json"
],
"exclude": [
"**/node_modules/**/*"
]
@@ -613,7 +601,7 @@
},
"content-services": {
"root": "lib/content-services",
"sourceRoot": "lib/content-services",
"sourceRoot": "lib/content-services/src",
"projectType": "library",
"prefix": "adf",
"architect": {
@@ -632,7 +620,7 @@
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "lib/content-services/test.ts",
"main": "lib/content-services/src/test.ts",
"tsConfig": "lib/content-services/tsconfig.spec.json",
"karmaConfig": "lib/content-services/karma.conf.js",
"codeCoverage": true,
@@ -644,7 +632,7 @@
"options": {
"tsConfig": [
"lib/content-services/tsconfig.lib.json",
"lib/content-services/tsconfig.lib.json"
"lib/content-services/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
@@ -674,7 +662,7 @@
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "lib/process-services/test.ts",
"main": "lib/process-services/src/test.ts",
"tsConfig": "lib/process-services/tsconfig.spec.json",
"karmaConfig": "lib/process-services/karma.conf.js",
"codeCoverage": true,
@@ -686,7 +674,7 @@
"options": {
"tsConfig": [
"lib/process-services/tsconfig.lib.json",
"lib/process-services/tsconfig.lib.json"
"lib/process-services/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
@@ -746,7 +734,7 @@
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "lib/extensions/tsconfig.lib.json",
"tsConfig": "lib/insights/tsconfig.lib.json",
"project": "lib/insights/ng-package.json"
},
"configurations": {
@@ -758,8 +746,8 @@
"test": {
"builder": "@angular-devkit/build-angular:karma",
"options": {
"main": "lib/insights/test.ts",
"tsConfig": "lib/extensions/tsconfig.spec.json",
"main": "lib/insights/src/test.ts",
"tsConfig": "lib/insights/tsconfig.spec.json",
"karmaConfig": "lib/insights/karma.conf.js",
"codeCoverage": true,
"sourceMap": true
@@ -770,7 +758,7 @@
"options": {
"tsConfig": [
"lib/insights/tsconfig.lib.json",
"lib/insights/tsconfig.lib.json"
"lib/insights/tsconfig.spec.json"
],
"exclude": [
"**/node_modules/**"
@@ -850,6 +838,20 @@
}
}
}
},
"cli": {
"root": "lib/cli",
"sourceRoot": "lib/cli",
"projectType": "library",
"prefix": "adf",
"architect": {
"build": {
"builder": "@angular-devkit/build-ng-packagr:build",
"options": {
"tsConfig": "lib/cli/tsconfig.json"
}
}
}
}
},
"defaultProject": "dist"
-63
View File
@@ -1,63 +0,0 @@
# Test against this version of Node.js
branches:
only:
- master
- development
- dev-build-test
environment:
nodejs_version: "8"
matrix:
- COMPONENT_NAME: process-service
- COMPONENT_NAME: content-service
- COMPONENT_NAME: core
- COMPONENT_NAME: insights
# - COMPONENT_NAME: ng2-demo-shell
# Install scripts. (runs after repo cloning)
install:
# Get the latest stable version of Node.js or io.js
- ps: Install-Product node $env:nodejs_version
# install module
- if %COMPONENT_NAME% EQU process-service (
if %APPVEYOR_REPO_BRANCH EQU master
(cd scripts && sh npm-build-all.sh -t "process-services" || exit 1)
else
(cd scripts && sh npm-build-all.sh -t "process-services" -vjsapi alpha|| exit 1)
)
- if %COMPONENT_NAME% EQU content-service (
if %APPVEYOR_REPO_BRANCH EQU master
(cd scripts && sh npm-build-all.sh -t "content-services" || exit 1)
else
(cd scripts && sh npm-build-all.sh -t "content-services" -vjsapi alpha|| exit 1)
)
- if %COMPONENT_NAME% EQU insights (
if %APPVEYOR_REPO_BRANCH EQU master
(cd scripts && sh npm-build-all.sh -t "insights" || exit 1)
else
(cd scripts && sh npm-build-all.sh -t "insights" -vjsapi alpha|| exit 1)
)
- if %COMPONENT_NAME% EQU core (
if %APPVEYOR_REPO_BRANCH EQU master
(cd scripts && sh npm-build-all.sh -t "core" || exit 1)
else
(cd scripts && sh npm-build-all.sh -t "core" -vjsapi alpha|| exit 1)
)
- if %COMPONENT_NAME% EQU process-service-cloud (
if %APPVEYOR_REPO_BRANCH EQU master
(cd scripts && sh npm-build-all.sh -t "process-services-cloud" || exit 1)
else
(cd scripts && sh npm-build-all.sh -t "process-services-cloud" -vjsapi alpha|| exit 1)
)
# - if %COMPONENT_NAME% EQU ng2-demo-shell (
# if %APPVEYOR_REPO_BRANCH EQU master
# (cd scripts && sh start.sh -t -ss || exit 1)
# else
# (cd scripts && sh start.sh -dev -t -ss -vjsapi alpha || exit 1)
# )
# Don't actually build.
build: off
matrix:
fast_finish: true
Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.0 KiB

After

Width:  |  Height:  |  Size: 6.0 KiB

+12 -1
View File
@@ -128,7 +128,18 @@
"ECMBPM",
"processwithvariables",
"dropdownrestprocess",
"devops"
"devops",
"mouseenter",
"starteventform",
"formtotestvalidations",
"requirednumbervisibility",
"numbervisibilityprocess",
"booleanvisibilityprocess",
"booleanvisibility",
"processparent",
"uploadfileform",
"processwithstarteventform",
"processstring"
],
"dictionaries": [
"html",
-1
View File
@@ -52,7 +52,6 @@ app/**/*.d.ts
!app/js/Polyline.js
.idea
**/versions.json
dist/
+1
View File
@@ -1,5 +1,6 @@
// Karma configuration file, see link for more information
// https://karma-runner.github.io/0.13/config/configuration-file.html
process.env.CHROME_BIN = require('puppeteer').executablePath();
module.exports = function (config) {
config.set({
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "Alfresco-ADF-Angular-Demo",
"description": "Demo shell for Alfresco Angular components",
"version": "3.4.0",
"version": "3.7.0",
"author": "Alfresco Software, Ltd.",
"repository": {
"type": "git",
+29 -15
View File
@@ -63,7 +63,7 @@
"NOTIFICATIONS": "إعلامات",
"TASK_LIST": "قائمة المهام",
"PROCESS_LIST": "مهام عملية",
"PROCESS_CLOUD": "سحابة العملية",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "CardView",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "دخول",
@@ -94,6 +94,12 @@
"TREE_VIEW": "طريقة عرض الشجرة",
"ICONS": "أيقونات",
"PEOPLE_GROUPS_CLOUD": "سحابة الأشخاص/المجموعة",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "عنوان مهمة السحابة",
"APP_NAME_INPUT": "اسم التطبيق",
"TASK_ID_INPUT": "معرف المهمة",
"FIND_TASK_BUTTON": "بحث عن المهمة"
},
"PEOPLE_CLOUD": "مكون سحابة الأشخاص",
"GROUPS_CLOUD": "مكون سحابة المجموعة",
"CONFIRM-DIALOG": "مربع حوار التأكيد",
@@ -302,25 +308,33 @@
"APP_NAME": "اسم التطبيق",
"APP_FILTER_MODE": "التصفية حسب اسم التطبيق",
"ROLE_FILTER_MODE": "التصفية حسب الدور",
"PRESELECT_VALIDATION": "التحديد المسبق للتحقق من الصحة"
},
"ABOUT": {
"TITLE": "مكونات إضافية",
"TABLE_HEADERS": {
"ID": "المعرف",
"NAME": "الاسم",
"VERSION": "الإصدار",
"VENDOR": "المورد",
"LICENSE": "الترخيص",
"RUNTIME": "وقت التشغيل",
"DESCRIPTION": "الوصف"
}
"PRESELECT_VALIDATION": "التحديد المسبق للتحقق من الصحة",
"ALL_PRESELECTED_USERS": "كل المستخدمين المحددين مسبقًا",
"ALL_PRESELECTED_GROUPS": "كل المجموعات المحددة مسبقًا",
"INVALID_USERS": "المستخدمون غير الصالحين",
"INVALID_GROUPS": "مجموعات غير صالحة",
"READONLY_MODE": "وضع القراءة فقط"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "تحديد متعدد",
"TESTING_MODE": "وضع الاختبار",
"SELECTION_MODE": "وضع التحديد",
"SELECTED_ROWS": "الصفوف المحدّدة",
"TASK_DETAILS_REDIRECTION": "عرض تفاصيل المهمة عند النقر فوق المهمة",
"PROCESS_DETAILS_REDIRECTION": "عرض تفاصيل العملية عند النقر على العملية"
"PROCESS_DETAILS_REDIRECTION": "عرض تفاصيل العملية عند النقر على العملية",
"ACTION": {
"ACTION_TITLE": "إضافة إجراء",
"ACTION_MENU": "قائمة الإجراءات",
"CONTEX_MENU": "قائمة السياق",
"ACTION_VISIBLE": "مرئي",
"ACTION_DISABLE": "معطّل",
"ADD_BUTTON": "إضافة",
"KEY": "المفتاح",
"TITLE": "العنوان",
"ICON": "أيقونة",
"TASK_ID": "معرف المهمة",
"PROCESS_ID": "معرّف مثيل المعالجة",
"ACTION_TYPE": "نوع الإجراء"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Stromová struktura",
"ICONS": "Ikony",
"PEOPLE_GROUPS_CLOUD": "Cloud osob/skupin",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Záhlaví úkolu cloudové komponenty",
"APP_NAME_INPUT": "Název aplikace",
"TASK_ID_INPUT": "ID úkolu",
"FIND_TASK_BUTTON": "Najít úkol"
},
"PEOPLE_CLOUD": "Součást cloudu osob",
"GROUPS_CLOUD": "Součást cloudu skupin",
"CONFIRM-DIALOG": "Dialogové okno s potvrzením",
@@ -302,25 +308,33 @@
"APP_NAME": "Název aplikace",
"APP_FILTER_MODE": "Filtrovat podle názvu aplikace",
"ROLE_FILTER_MODE": "Filtrovat podle role",
"PRESELECT_VALIDATION": "Ověření předvolené hodnoty"
},
"ABOUT": {
"TITLE": "Doplňky",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Název",
"VERSION": "Verze",
"VENDOR": "Dodavatel",
"LICENSE": "Licence",
"RUNTIME": "Délka",
"DESCRIPTION": "Popis"
}
"PRESELECT_VALIDATION": "Ověření předvolené hodnoty",
"ALL_PRESELECTED_USERS": "Všichni předvolení uživatelé",
"ALL_PRESELECTED_GROUPS": "Všechny předvolené skupiny",
"INVALID_USERS": "Neplatní uživatelé",
"INVALID_GROUPS": "Neplatné skupiny",
"READONLY_MODE": "Režim jen pro čtení"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Hromadný výběr",
"TESTING_MODE": "Testovací režim",
"SELECTION_MODE": "Režim výběru",
"SELECTED_ROWS": "Vybrané řádky",
"TASK_DETAILS_REDIRECTION": "Zobrazit podrobnosti o úkolu při kliknutí na úkol",
"PROCESS_DETAILS_REDIRECTION": "Zobrazit podrobnosti o průběhu při kliknutí na proces"
"PROCESS_DETAILS_REDIRECTION": "Zobrazit podrobnosti o průběhu při kliknutí na proces",
"ACTION": {
"ACTION_TITLE": "Přidat akci",
"ACTION_MENU": "Nabídka akcí",
"CONTEX_MENU": "Místní nabídka",
"ACTION_VISIBLE": "Viditelné",
"ACTION_DISABLE": "Zakázat",
"ADD_BUTTON": "Přidat",
"KEY": "Klíč",
"TITLE": "Označení",
"ICON": "Ikona",
"TASK_ID": "ID úkolu",
"PROCESS_ID": "ID instance procesu",
"ACTION_TYPE": "Typ akce"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Trævisning",
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Person/gruppecloud",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Opgaveheader for cloud",
"APP_NAME_INPUT": "Appnavn",
"TASK_ID_INPUT": "Opgave-id",
"FIND_TASK_BUTTON": "Find opgave"
},
"PEOPLE_CLOUD": "Personcloudkomponent",
"GROUPS_CLOUD": "Gruppecloudkomponent",
"CONFIRM-DIALOG": "Bekræftelsesdialogboks",
@@ -302,25 +308,33 @@
"APP_NAME": "Appnavn",
"APP_FILTER_MODE": "Filtrer efter appnavn",
"ROLE_FILTER_MODE": "Filtrer efter rolle",
"PRESELECT_VALIDATION": "Forudvælg validering"
},
"ABOUT": {
"TITLE": "Plug-ins",
"TABLE_HEADERS": {
"ID": "Id",
"NAME": "Navn",
"VERSION": "Version",
"VENDOR": "Leverandør",
"LICENSE": "Licens",
"RUNTIME": "Kørselstidspunkt",
"DESCRIPTION": "Beskrivelse"
}
"PRESELECT_VALIDATION": "Forudvælg validering",
"ALL_PRESELECTED_USERS": "Alle forudvalgte brugere",
"ALL_PRESELECTED_GROUPS": "Alle forudvalgte grupper",
"INVALID_USERS": "Ugyldige brugere",
"INVALID_GROUPS": "Ugyldige grupper",
"READONLY_MODE": "Skrivebeskyttet tilstand"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Multivalg",
"TESTING_MODE": "Testtilstand",
"SELECTION_MODE": "Valgtilstand",
"SELECTED_ROWS": "Valgte rækker",
"TASK_DETAILS_REDIRECTION": "Vis opgavedetaljer på opgave ved at klikke",
"PROCESS_DETAILS_REDIRECTION": "Vis behandlingsdetaljer for processen ved at klikke"
"PROCESS_DETAILS_REDIRECTION": "Vis behandlingsdetaljer for processen ved at klikke",
"ACTION": {
"ACTION_TITLE": "Tilføj handling",
"ACTION_MENU": "Menuen Handling",
"CONTEX_MENU": "Genvejsmenu",
"ACTION_VISIBLE": "Synlig",
"ACTION_DISABLE": "Deaktiver",
"ADD_BUTTON": "Tilføj",
"KEY": "Nøgle",
"TITLE": "Titel",
"ICON": "Ikon",
"TASK_ID": "Opgave-id",
"PROCESS_ID": "Procesforekomst-id",
"ACTION_TYPE": "Handlingstype"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Strukturansicht",
"ICONS": "Symbole",
"PEOPLE_GROUPS_CLOUD": "Personen-/Gruppen-Cloud",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Aufgaben-Header für Cloud",
"APP_NAME_INPUT": "Anwendungsname",
"TASK_ID_INPUT": "Aufgaben-ID",
"FIND_TASK_BUTTON": "Aufgabe suchen"
},
"PEOPLE_CLOUD": "Personen-Cloud-Komponente",
"GROUPS_CLOUD": "Gruppen-Cloud-Komponente",
"CONFIRM-DIALOG": "Bestätigungsdialog",
@@ -302,25 +308,33 @@
"APP_NAME": "Anwendungsname",
"APP_FILTER_MODE": "Nach Anwendungsname filtern",
"ROLE_FILTER_MODE": "Nach Rolle filtern",
"PRESELECT_VALIDATION": "Vorauswahl-Prüfung"
},
"ABOUT": {
"TITLE": "Plugins",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Name",
"VERSION": "Version",
"VENDOR": "Hersteller",
"LICENSE": "Lizenz",
"RUNTIME": "Laufzeit",
"DESCRIPTION": "Beschreibung"
}
"PRESELECT_VALIDATION": "Vorauswahl-Prüfung",
"ALL_PRESELECTED_USERS": "Alle vorausgewählten Benutzer",
"ALL_PRESELECTED_GROUPS": "Alle vorausgewählten Gruppen",
"INVALID_USERS": "Unzulässige Benutzer",
"INVALID_GROUPS": "Unzulässige Gruppen",
"READONLY_MODE": "Schreibgeschützter Modus"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Mehrfachauswahl",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Auswahlmodus",
"SELECTED_ROWS": "Ausgewählte Zeilen",
"TASK_DETAILS_REDIRECTION": "Bei Klicken auf Aufgabe Aufgabendetails einblenden",
"PROCESS_DETAILS_REDIRECTION": "Bei Klicken auf Prozess Prozessdetails anzeigen"
"PROCESS_DETAILS_REDIRECTION": "Bei Klicken auf Prozess Prozessdetails anzeigen",
"ACTION": {
"ACTION_TITLE": "Aktion hinzufügen",
"ACTION_MENU": "Aktionsmenü",
"CONTEX_MENU": "Kontextmenü",
"ACTION_VISIBLE": "Sichtbar",
"ACTION_DISABLE": "Deaktivieren",
"ADD_BUTTON": "Hinzufügen",
"KEY": "Schlüssel",
"TITLE": "Titel",
"ICON": "Symbol",
"TASK_ID": "Aufgaben-ID",
"PROCESS_ID": "Prozessinstanz-ID",
"ACTION_TYPE": "Aktionstyp"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Tree View",
"ICONS": "Icons",
"PEOPLE_GROUPS_CLOUD": "People/Group Cloud",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Task Header Cloud",
"APP_NAME_INPUT": "App name",
"TASK_ID_INPUT": "Task id",
"FIND_TASK_BUTTON": "Find Task"
},
"PEOPLE_CLOUD": "People Cloud Component",
"GROUPS_CLOUD": "Groups Cloud Component",
"CONFIRM-DIALOG": "Confirmation Dialog",
@@ -302,25 +308,33 @@
"APP_NAME": "Application Name",
"APP_FILTER_MODE": "Filter by application name",
"ROLE_FILTER_MODE": "Filter by role",
"PRESELECT_VALIDATION": "Preselect validation"
},
"ABOUT": {
"TITLE": "Plugins",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Name",
"VERSION": "Version",
"VENDOR": "Vendor",
"LICENSE": "License",
"RUNTIME": "Runtime",
"DESCRIPTION": "Description"
}
"PRESELECT_VALIDATION": "Preselect validation",
"ALL_PRESELECTED_USERS": "All Preselected Users",
"ALL_PRESELECTED_GROUPS": "All Preselected Groups",
"INVALID_USERS": "Invalid Users",
"INVALID_GROUPS": "Invalid Groups",
"READONLY_MODE": "Read-only Mode"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Multiselection",
"TESTING_MODE": "Testing Mode",
"SELECTION_MODE": "Selection Mode",
"SELECTED_ROWS": "Selected Rows",
"TASK_DETAILS_REDIRECTION": "Display task details on task click",
"PROCESS_DETAILS_REDIRECTION": "Display process details on process click"
"PROCESS_DETAILS_REDIRECTION": "Display process details on process click",
"ACTION": {
"ACTION_TITLE": "Add Action",
"ACTION_MENU": "Action Menu",
"CONTEX_MENU": "Context Menu",
"ACTION_VISIBLE": "Visible",
"ACTION_DISABLE": "Disable",
"ADD_BUTTON": "Add",
"KEY": "Key",
"TITLE": "Title",
"ICON": "Icon",
"TASK_ID": "Task ID",
"PROCESS_ID": "Process Instance ID",
"ACTION_TYPE": "Action Type"
}
}
}
+30 -16
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Vista de árbol",
"ICONS": "Iconos",
"PEOPLE_GROUPS_CLOUD": "Personas/Grupos en la nube",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Encabezados de tareas en componente nube",
"APP_NAME_INPUT": "Nombre de aplicación",
"TASK_ID_INPUT": "ID de tarea",
"FIND_TASK_BUTTON": "Buscar tarea"
},
"PEOPLE_CLOUD": "Componente en la nube de personas",
"GROUPS_CLOUD": "Componente en la nube de grupos",
"CONFIRM-DIALOG": "Cuadro de diálogo de confirmación",
@@ -106,7 +112,7 @@
},
"EMPTY_STATE": {
"TITLE": "La papelera está vacía",
"FIRST_TEXT": "Los elementos que elimine se trasladan a la papelera.",
"FIRST_TEXT": "Los elementos que elimine se moverán a la papelera.",
"SECOND_TEXT": "Vacíe la papelera para eliminar los elementos permanentemente."
}
},
@@ -217,7 +223,7 @@
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Pie del inicio de sesión",
"SHOW_REMEMBERME": "Mostrar opción para recordarme",
"SHOW_SUCCESS_ROUTE": "Permitir ruta correcta",
"SHOW_SUCCESS_ROUTE": "Mostrar ruta correcta",
"CUSTOM_LOGO": "Logotipo personalizado"
},
"SEARCH": {
@@ -302,25 +308,33 @@
"APP_NAME": "Nombre de la aplicación",
"APP_FILTER_MODE": "Filtrar por nombre de la aplicación",
"ROLE_FILTER_MODE": "Filtrar por función",
"PRESELECT_VALIDATION": "Preseleccionar validación"
},
"ABOUT": {
"TITLE": "Complementos",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Nombre",
"VERSION": "Versión",
"VENDOR": "Proveedor",
"LICENSE": "Licencia",
"RUNTIME": "Tiempo de ejecución",
"DESCRIPTION": "Descripción"
}
"PRESELECT_VALIDATION": "Preseleccionar validación",
"ALL_PRESELECTED_USERS": "Todos los usuarios preseleccionados",
"ALL_PRESELECTED_GROUPS": "Todos los grupos preseleccionados",
"INVALID_USERS": "Usuarios no válidos",
"INVALID_GROUPS": "Grupos no válidos",
"READONLY_MODE": "Modo de solo lectura"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Selección múltiple",
"TESTING_MODE": "Modo de prueba",
"SELECTION_MODE": "Modo de selección",
"SELECTED_ROWS": "Filas seleccionadas",
"TASK_DETAILS_REDIRECTION": "Mostrar detalles de la tarea haciendo clic en la tarea",
"PROCESS_DETAILS_REDIRECTION": "Mostrar detalles del proceso al hacer clic en el proceso"
"PROCESS_DETAILS_REDIRECTION": "Mostrar detalles del proceso al hacer clic en el proceso",
"ACTION": {
"ACTION_TITLE": "Añadir acción",
"ACTION_MENU": "Menú de acción",
"CONTEX_MENU": "Menú de contexto",
"ACTION_VISIBLE": "Visible",
"ACTION_DISABLE": "Desactivar",
"ADD_BUTTON": "Añadir",
"KEY": "Clave",
"TITLE": "Título",
"ICON": "Icono",
"TASK_ID": "ID de tarea",
"PROCESS_ID": "ID de instancia del proceso",
"ACTION_TYPE": "Tipo de acción"
}
}
}
+29 -15
View File
@@ -63,7 +63,7 @@
"NOTIFICATIONS": "Ilmoitukset",
"TASK_LIST": "Tehtäväluettelo",
"PROCESS_LIST": "Prosessiluettelo",
"PROCESS_CLOUD": "Prosessipilvi",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "Korttinäkymä",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Kirjaudu sisään",
@@ -94,6 +94,12 @@
"TREE_VIEW": "Puunäkymä",
"ICONS": "Kuvakkeet",
"PEOPLE_GROUPS_CLOUD": "Ihmispilvi/Ryhmäpilvi",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Tehtävänimikepilvi",
"APP_NAME_INPUT": "Sovelluksen nimi",
"TASK_ID_INPUT": "Tehtävän tunnus",
"FIND_TASK_BUTTON": "Etsi tehtävä"
},
"PEOPLE_CLOUD": "Ihmispilvi-komponentti",
"GROUPS_CLOUD": "Ryhmäpilvi-komponentti",
"CONFIRM-DIALOG": "Vahvistusvalintaikkuna",
@@ -302,25 +308,33 @@
"APP_NAME": "Sovelluksen nimi",
"APP_FILTER_MODE": "Suodata sovelluksen nimen perusteella",
"ROLE_FILTER_MODE": "Suodata roolin perusteella",
"PRESELECT_VALIDATION": "Vahvistus esivalittu"
},
"ABOUT": {
"TITLE": "Lisäosat",
"TABLE_HEADERS": {
"ID": "Tunnus",
"NAME": "Nimi",
"VERSION": "Versio",
"VENDOR": "Toimittaja",
"LICENSE": "Käyttöoikeus",
"RUNTIME": "Suorituspalvelu",
"DESCRIPTION": "Kuvaus"
}
"PRESELECT_VALIDATION": "Vahvistus esivalittu",
"ALL_PRESELECTED_USERS": "Kaikki esivalitut käyttäjät",
"ALL_PRESELECTED_GROUPS": "Kaikki esivalitut ryhmät",
"INVALID_USERS": "Kelpaamattomat käyttäjät",
"INVALID_GROUPS": "Kelpaamattomat ryhmät",
"READONLY_MODE": "Vain luku -tila"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Monivalinta",
"TESTING_MODE": "Testaustila",
"SELECTION_MODE": "Valintatila",
"SELECTED_ROWS": "Valitut rivit",
"TASK_DETAILS_REDIRECTION": "Näytä tehtävätiedot tehtävää napsauttamalla",
"PROCESS_DETAILS_REDIRECTION": "Näyttää prosessin tiedot prosessia napsautettaessa"
"PROCESS_DETAILS_REDIRECTION": "Näyttää prosessin tiedot prosessia napsautettaessa",
"ACTION": {
"ACTION_TITLE": "Lisää toiminto",
"ACTION_MENU": "Toiminnon valikko",
"CONTEX_MENU": "Pikavalikko",
"ACTION_VISIBLE": "Näkyvissä",
"ACTION_DISABLE": "Poista käytöstä",
"ADD_BUTTON": "Lisää",
"KEY": "Avain",
"TITLE": "Otsikko",
"ICON": "Kuvake",
"TASK_ID": "Tehtävätunnus",
"PROCESS_ID": "Prosessiesiintymätunnus",
"ACTION_TYPE": "Toiminnon tyyppi"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Arborescence",
"ICONS": "Icônes",
"PEOPLE_GROUPS_CLOUD": "Cloud des personnes/groupes",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "En-tête de la tâche du composant cloud",
"APP_NAME_INPUT": "Nom de l'application",
"TASK_ID_INPUT": "ID de la tâche",
"FIND_TASK_BUTTON": "Trouver la tâche"
},
"PEOPLE_CLOUD": "Composant cloud des personnes",
"GROUPS_CLOUD": "Composant cloud des groupes",
"CONFIRM-DIALOG": "Boîte de dialogue de confirmation",
@@ -302,25 +308,33 @@
"APP_NAME": "Nom de l'application",
"APP_FILTER_MODE": "Filtrer par nom d'application",
"ROLE_FILTER_MODE": "Filtrer par rôle",
"PRESELECT_VALIDATION": "Validation présélectionnée"
},
"ABOUT": {
"TITLE": "Plugins",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Nom",
"VERSION": "Version",
"VENDOR": "Fournisseur",
"LICENSE": "Licence",
"RUNTIME": "Java Runtime",
"DESCRIPTION": "Description"
}
"PRESELECT_VALIDATION": "Validation présélectionnée",
"ALL_PRESELECTED_USERS": "Tous les utilisateurs présélectionnés",
"ALL_PRESELECTED_GROUPS": "Tous les groupes présélectionnés",
"INVALID_USERS": "Utilisateurs non valides",
"INVALID_GROUPS": "Groupes non valides",
"READONLY_MODE": "Mode lecture seule"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Multisélection",
"TESTING_MODE": "Mode de test",
"SELECTION_MODE": "Mode de sélection",
"SELECTED_ROWS": "Lignes sélectionnées",
"TASK_DETAILS_REDIRECTION": "Afficher les détails de la tâche en cliquant dessus",
"PROCESS_DETAILS_REDIRECTION": "Afficher les détails du processus en cliquant dessus"
"PROCESS_DETAILS_REDIRECTION": "Afficher les détails du processus en cliquant dessus",
"ACTION": {
"ACTION_TITLE": "Ajouter une action",
"ACTION_MENU": "Menu Action",
"CONTEX_MENU": "Menu contextuel",
"ACTION_VISIBLE": "Visible",
"ACTION_DISABLE": "Désactiver",
"ADD_BUTTON": "Ajouter",
"KEY": "Clé",
"TITLE": "Titre",
"ICON": "Icône",
"TASK_ID": "ID de la tâche",
"PROCESS_ID": "ID de l'instance de processus",
"ACTION_TYPE": "Type d'action"
}
}
}
+41 -27
View File
@@ -4,14 +4,14 @@
"TITLE": "Dettagli",
"COMMENTS": "Commenti",
"PROPERTIES": "Proprietà",
"VERSIONS": "Versione"
"VERSIONS": "Versioni"
},
"HOME": {
"TITLE": "Componenti angolari per Alfresco",
"DOCUMENTATION": "Documentazione"
},
"LOGOUT": {
"TITLE": "Pagina di uscita",
"TITLE": "Pagina di logout",
"SUB_TITLE": "Utente disconnesso",
"LOGIN": "Login",
"HOME": "Home"
@@ -19,7 +19,7 @@
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Consenti eliminazione",
"SHOW_COMMENTS": "Mostra commenti sulle versioni",
"ALLOW_DOWNLOAD": "Abilita download versioni",
"ALLOW_DOWNLOAD": "Abilita scaricamento versioni",
"READ_ONLY": "Sola lettura",
"COMMENTS": "Mostra commenti"
},
@@ -38,8 +38,8 @@
},
"title": "Benvenuto",
"VERSION": {
"NO_PERMISSION": "Non hai il permesso di gestire versioni di questo contenuto",
"NO_PERMISSION_EVENT": "Non hai il permesso ${event.permission} di ${event.action} ${event.type}",
"NO_PERMISSION": "Non si dispone dei permessi per gestire versioni di questo contenuto",
"NO_PERMISSION_EVENT": "Non si dispone dei permessi ${event.permission} di ${event.action} ${event.type}",
"CHOOSE_FILE": "Seleziona un file per visualizzarne le versioni",
"DIALOG": {
"CLOSE": "Chiudi",
@@ -61,7 +61,7 @@
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Breadcrumb",
"NOTIFICATIONS": "Notifiche",
"TASK_LIST": "Elenco attività",
"TASK_LIST": "Elenco compiti",
"PROCESS_LIST": "Elenco processi",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "CardView",
@@ -94,6 +94,12 @@
"TREE_VIEW": "Vista struttura",
"ICONS": "Icone",
"PEOPLE_GROUPS_CLOUD": "Cloud persone/gruppi",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Cloud intestazione compito",
"APP_NAME_INPUT": "Nome applicazione",
"TASK_ID_INPUT": "ID compito",
"FIND_TASK_BUTTON": "Trova compito"
},
"PEOPLE_CLOUD": "Componente Cloud persone",
"GROUPS_CLOUD": "Componente Cloud gruppi",
"CONFIRM-DIALOG": "Finestra di conferma",
@@ -112,7 +118,7 @@
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Selezione multipla (con caselle di spunta)",
"THUMBNAILS": "Abilita anteprime",
"THUMBNAILS": "Abilita miniature",
"ALLOW_DROP_FILES": "Abilita trascinamento di file in una cartella",
"MULTIPLE_FILE_UPLOAD": "Caricamento di file multipli",
"FOLDER_UPLOAD": "Caricamento cartelle",
@@ -145,7 +151,7 @@
"SHARE_EDIT": "Modifica impostazioni",
"NEW_FOLDER": "Nuova cartella",
"EDIT_FOLDER": "Modifica cartella",
"DOWNLOAD": "Download",
"DOWNLOAD": "Scarica",
"DELETE": "Elimina",
"FAVORITES": "Aggiungi ai preferiti",
"SHARE": "Condividi",
@@ -159,7 +165,7 @@
"VERSIONS": "Gestione versioni",
"LOCK": "Blocca",
"METADATA": "Informazioni",
"DOWNLOAD": "Download",
"DOWNLOAD": "Scarica",
"PERMISSION": "Permesso",
"FOLDER": {
"COPY": "Copia",
@@ -257,8 +263,8 @@
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Inserisci ID app",
"APP_ID_TYPE_ERROR": "L'ID app deve essere un numero",
"APP_ID_REQUIRED_ERROR": "Inserisci ID applicazione",
"APP_ID_TYPE_ERROR": "L'ID applicazione deve essere un numero",
"NUMBER_TYPE_ERROR": "Il valore deve essere un numero",
"NUMBER_GREATER_THAN": "Il valore deve essere maggiore o uguale a {{ value }}"
},
@@ -268,8 +274,8 @@
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Inserisci ID app",
"APP_ID_TYPE_ERROR": "L'ID app deve essere un numero",
"APP_ID_REQUIRED_ERROR": "Inserisci ID applicazione",
"APP_ID_TYPE_ERROR": "L'ID applicazione deve essere un numero",
"NUMBER_GREATER_THAN": "Il valore deve essere maggiore o uguale a {{ value }}"
}
},
@@ -302,25 +308,33 @@
"APP_NAME": "Nome applicazione",
"APP_FILTER_MODE": "Filtra per nome applicazione",
"ROLE_FILTER_MODE": "Filtra per ruolo",
"PRESELECT_VALIDATION": "Convalida preselezione"
},
"ABOUT": {
"TITLE": "Plug-in",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Nome",
"VERSION": "Versione",
"VENDOR": "Fornitore",
"LICENSE": "Licenza",
"RUNTIME": "Runtime",
"DESCRIPTION": "Descrizione"
}
"PRESELECT_VALIDATION": "Convalida preselezione",
"ALL_PRESELECTED_USERS": "Tutti gli utenti preselezionati",
"ALL_PRESELECTED_GROUPS": "Tutti i gruppi preselezionati",
"INVALID_USERS": "Utenti non validi",
"INVALID_GROUPS": "Gruppi non validi",
"READONLY_MODE": "Modalità sola lettura"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Selezione multipla",
"TESTING_MODE": "Modalità di test",
"SELECTION_MODE": "Modalità di selezione",
"SELECTED_ROWS": "Righe selezionate",
"TASK_DETAILS_REDIRECTION": "Mostra dettagli compito dopo clic su compito",
"PROCESS_DETAILS_REDIRECTION": "Mostra i dettagli dopo il clic sul processo"
"PROCESS_DETAILS_REDIRECTION": "Mostra i dettagli dopo il clic sul processo",
"ACTION": {
"ACTION_TITLE": "Aggiungi azione",
"ACTION_MENU": "Menu azione",
"CONTEX_MENU": "Menu contestuale",
"ACTION_VISIBLE": "Visibile",
"ACTION_DISABLE": "Disattiva",
"ADD_BUTTON": "Aggiungi",
"KEY": "Chiave",
"TITLE": "Titolo",
"ICON": "Icona",
"TASK_ID": "ID compito",
"PROCESS_ID": "ID istanza di processo",
"ACTION_TYPE": "Tipo di azione"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "ツリービュー",
"ICONS": "アイコン",
"PEOPLE_GROUPS_CLOUD": "メンバー/グループのクラウド",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "クラウドのタスクヘッダー",
"APP_NAME_INPUT": "アプリケーション名",
"TASK_ID_INPUT": "タスク ID",
"FIND_TASK_BUTTON": "タスクの検索"
},
"PEOPLE_CLOUD": "メンバーのクラウドコンポーネント",
"GROUPS_CLOUD": "グループのクラウドコンポーネント",
"CONFIRM-DIALOG": "確認ダイアログ",
@@ -302,25 +308,33 @@
"APP_NAME": "アプリケーション名",
"APP_FILTER_MODE": "アプリケーション名でフィルタ",
"ROLE_FILTER_MODE": "役割でフィルタ",
"PRESELECT_VALIDATION": "事前選択の検証"
},
"ABOUT": {
"TITLE": "プラグイン",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "名前",
"VERSION": "バージョン",
"VENDOR": "ベンダー",
"LICENSE": "ライセンス",
"RUNTIME": "ランタイム",
"DESCRIPTION": "説明"
}
"PRESELECT_VALIDATION": "事前選択の検証",
"ALL_PRESELECTED_USERS": "選択されている全ユーザー",
"ALL_PRESELECTED_GROUPS": "選択されている全グループ",
"INVALID_USERS": "無効なユーザー",
"INVALID_GROUPS": "無効なグループ",
"READONLY_MODE": "読み取り専用モード"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "複数選択",
"TESTING_MODE": "テストモード",
"SELECTION_MODE": "選択モード",
"SELECTED_ROWS": "選択した行",
"TASK_DETAILS_REDIRECTION": "タスクのクリック時にタスクの詳細を表示",
"PROCESS_DETAILS_REDIRECTION": "プロセスのクリックでプロセスの詳細を表示"
"PROCESS_DETAILS_REDIRECTION": "プロセスのクリックでプロセスの詳細を表示",
"ACTION": {
"ACTION_TITLE": "処理の追加",
"ACTION_MENU": "処理メニュー",
"CONTEX_MENU": "コンテキストメニュー",
"ACTION_VISIBLE": "表示",
"ACTION_DISABLE": "無効",
"ADD_BUTTON": "追加",
"KEY": "キー",
"TITLE": "タイトル",
"ICON": "アイコン",
"TASK_ID": "タスク ID",
"PROCESS_ID": "プロセスインスタンス ID",
"ACTION_TYPE": "処理のタイプ"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Trevisning",
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Person-/gruppesky",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Oppgaveoverskrift for sky",
"APP_NAME_INPUT": "Navn på app",
"TASK_ID_INPUT": "Oppgave-ID",
"FIND_TASK_BUTTON": "Finn oppgave"
},
"PEOPLE_CLOUD": "Personsky-komponent",
"GROUPS_CLOUD": "Gruppesky-kompontent",
"CONFIRM-DIALOG": "Bekreftelsesdialog",
@@ -302,25 +308,33 @@
"APP_NAME": "Programnavn",
"APP_FILTER_MODE": "Filtrer etter programnavn",
"ROLE_FILTER_MODE": "Filtrer etter rolle",
"PRESELECT_VALIDATION": "Forhåndsvelg validering"
},
"ABOUT": {
"TITLE": "Plugin-moduler",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Navn",
"VERSION": "Versjon",
"VENDOR": "Leverandør",
"LICENSE": "Lisens",
"RUNTIME": "Kjøretid",
"DESCRIPTION": "Beskrivelse"
}
"PRESELECT_VALIDATION": "Forhåndsvelg validering",
"ALL_PRESELECTED_USERS": "Alle forhåndsvalgte brukere",
"ALL_PRESELECTED_GROUPS": "Alle forhåndsvalgte grupper",
"INVALID_USERS": "Ugyldige brukere",
"INVALID_GROUPS": "Ugyldige grupper",
"READONLY_MODE": "Skrivebeskyttet modus"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Flervalg",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Valgmodus",
"SELECTED_ROWS": "Valgte rader",
"TASK_DETAILS_REDIRECTION": "Vis oppgavedetaljer ved oppgaveklikk",
"PROCESS_DETAILS_REDIRECTION": "Vis prosessdetaljer ved prosessklikk"
"PROCESS_DETAILS_REDIRECTION": "Vis prosessdetaljer ved prosessklikk",
"ACTION": {
"ACTION_TITLE": "Legg til handling",
"ACTION_MENU": "Handlingsmeny",
"CONTEX_MENU": "Kontekstmeny",
"ACTION_VISIBLE": "Synlig",
"ACTION_DISABLE": "Deaktiver",
"ADD_BUTTON": "Legg til",
"KEY": "Nøkkel",
"TITLE": "Tittel",
"ICON": "Ikon",
"TASK_ID": "Oppgave-ID",
"PROCESS_ID": "Prosesstilfelle-ID",
"ACTION_TYPE": "Handlingstype"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Structuurweergave",
"ICONS": "Pictogrammen",
"PEOPLE_GROUPS_CLOUD": "Personen-/groepencloud",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Taakkop cloud",
"APP_NAME_INPUT": "App-naam",
"TASK_ID_INPUT": "Taak-id",
"FIND_TASK_BUTTON": "Taak zoeken"
},
"PEOPLE_CLOUD": "Component Personencloud",
"GROUPS_CLOUD": "Component Groepencloud",
"CONFIRM-DIALOG": "Bevestigingsdialoogvenster",
@@ -302,25 +308,33 @@
"APP_NAME": "Toepassingsnaam",
"APP_FILTER_MODE": "Filteren op toepassingsnaam",
"ROLE_FILTER_MODE": "Filteren op rol",
"PRESELECT_VALIDATION": "Validatie voorselecteren"
},
"ABOUT": {
"TITLE": "Plug-ins",
"TABLE_HEADERS": {
"ID": "Id",
"NAME": "Naam",
"VERSION": "Versie",
"VENDOR": "Leverancier",
"LICENSE": "Licentie",
"RUNTIME": "Runtime",
"DESCRIPTION": "Beschrijving"
}
"PRESELECT_VALIDATION": "Validatie voorselecteren",
"ALL_PRESELECTED_USERS": "Alle voorgeselecteerde gebruikers",
"ALL_PRESELECTED_GROUPS": "Alle voorgeselecteerde groepen",
"INVALID_USERS": "Ongeldige gebruikers",
"INVALID_GROUPS": "Ongeldige groepen",
"READONLY_MODE": "Alleen-lezenmodus"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Multiselectie",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Selectiemodus",
"SELECTED_ROWS": "Geselecteerde rijen",
"TASK_DETAILS_REDIRECTION": "Taakdetails weergeven bij klikken op taak",
"PROCESS_DETAILS_REDIRECTION": "Procesdetails weergeven bij klikken op proces"
"PROCESS_DETAILS_REDIRECTION": "Procesdetails weergeven bij klikken op proces",
"ACTION": {
"ACTION_TITLE": "Actie toevoegen",
"ACTION_MENU": "Actiemenu",
"CONTEX_MENU": "Contextmenu",
"ACTION_VISIBLE": "Zichtbaar",
"ACTION_DISABLE": "Uitschakelen",
"ADD_BUTTON": "Toevoegen",
"KEY": "Key",
"TITLE": "Titel",
"ICON": "Pictogram",
"TASK_ID": "Taak-ID",
"PROCESS_ID": "Procesinstantie-ID",
"ACTION_TYPE": "Actietype"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Widok drzewa",
"ICONS": "Ikony",
"PEOPLE_GROUPS_CLOUD": "Chmura dla osób/grup",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Chmura nagłówka zadania",
"APP_NAME_INPUT": "Nazwa aplikacji",
"TASK_ID_INPUT": "Identyfikator zadania",
"FIND_TASK_BUTTON": "Znajdź zadanie"
},
"PEOPLE_CLOUD": "Składnik Chmura dla osób",
"GROUPS_CLOUD": "Składnik Chmura dla grup",
"CONFIRM-DIALOG": "Okno dialogowe potwierdzenia",
@@ -302,25 +308,33 @@
"APP_NAME": "Nazwa aplikacji",
"APP_FILTER_MODE": "Filtruj według nazwy aplikacji",
"ROLE_FILTER_MODE": "Filtruj według roli",
"PRESELECT_VALIDATION": "Sprawdzanie poprawności wstępnego wyboru"
},
"ABOUT": {
"TITLE": "Dodatki typu plugin",
"TABLE_HEADERS": {
"ID": "Identyfikator",
"NAME": "Nazwa",
"VERSION": "Wersja",
"VENDOR": "Sprzedawca",
"LICENSE": "Licencja",
"RUNTIME": "Środowisko uruchomieniowe",
"DESCRIPTION": "Opis"
}
"PRESELECT_VALIDATION": "Sprawdzanie poprawności wstępnego wyboru",
"ALL_PRESELECTED_USERS": "Wszyscy wstępnie wybrani użytkownicy",
"ALL_PRESELECTED_GROUPS": "Wszystkie wstępnie wybrane grupy",
"INVALID_USERS": "Nieprawidłowi użytkownicy",
"INVALID_GROUPS": "Nieprawidłowe grupy",
"READONLY_MODE": "Tryb tylko do odczytu"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Wybór wielokrotny",
"TESTING_MODE": "Tryb testowania",
"SELECTION_MODE": "Tryb wyboru",
"SELECTED_ROWS": "Wybrane wiersze",
"TASK_DETAILS_REDIRECTION": "Wyświetlaj szczegóły zadania po kliknięciu zadania",
"PROCESS_DETAILS_REDIRECTION": "Wyświetlaj szczegóły procesu po kliknięciu procesu"
"PROCESS_DETAILS_REDIRECTION": "Wyświetlaj szczegóły procesu po kliknięciu procesu",
"ACTION": {
"ACTION_TITLE": "Dodaj czynność",
"ACTION_MENU": "Menu czynności",
"CONTEX_MENU": "Menu kontekstowe",
"ACTION_VISIBLE": "Widoczne",
"ACTION_DISABLE": "Wyłącz",
"ADD_BUTTON": "Dodaj",
"KEY": "Klucz",
"TITLE": "Tytuł",
"ICON": "Ikona",
"TASK_ID": "Identyfikator zadania",
"PROCESS_ID": "Identyfikator wystąpienia procesu",
"ACTION_TYPE": "Typ czynności"
}
}
}
+29 -15
View File
@@ -94,10 +94,16 @@
"TREE_VIEW": "Exibição em árvore",
"ICONS": "Ícones",
"PEOPLE_GROUPS_CLOUD": "Nuvem de Pessoas/Grupo",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Cabeçalho de tarefa da nuvem",
"APP_NAME_INPUT": "Nome do aplicativo",
"TASK_ID_INPUT": "ID da tarefa",
"FIND_TASK_BUTTON": "Localizar tarefa"
},
"PEOPLE_CLOUD": "Componente da Nuvem de Pessoas",
"GROUPS_CLOUD": "Componente da Nuvem de Grupos",
"CONFIRM-DIALOG": "Caixa de diálogo de confirmação",
"COMMUNITY": "Community"
"COMMUNITY": "Comunidade"
},
"TRASHCAN": {
"ACTIONS": {
@@ -302,25 +308,33 @@
"APP_NAME": "Nome do aplicativo",
"APP_FILTER_MODE": "Filtrar por nome do aplicativo",
"ROLE_FILTER_MODE": "Filtrar por função",
"PRESELECT_VALIDATION": "Validação de pré-seleção"
},
"ABOUT": {
"TITLE": "Plugins",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Nome",
"VERSION": "Versão",
"VENDOR": "Fornecedor",
"LICENSE": "Licença",
"RUNTIME": "Tempo de execução",
"DESCRIPTION": "Descrição"
}
"PRESELECT_VALIDATION": "Validação de pré-seleção",
"ALL_PRESELECTED_USERS": "Todos os usuários pré-selecionados",
"ALL_PRESELECTED_GROUPS": "Todos os grupos pré-selecionados",
"INVALID_USERS": "Usuários inválidos",
"INVALID_GROUPS": "Grupos inválidos",
"READONLY_MODE": "Modo somente leitura"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Seleção Múltipla",
"TESTING_MODE": "Modo de Teste",
"SELECTION_MODE": "Modo de Seleção",
"SELECTED_ROWS": "Linhas selecionadas",
"TASK_DETAILS_REDIRECTION": "Exibir detalhes da tarefa ao clicar na tarefa",
"PROCESS_DETAILS_REDIRECTION": "Exibir detalhes do processo ao clicar no processo"
"PROCESS_DETAILS_REDIRECTION": "Exibir detalhes do processo ao clicar no processo",
"ACTION": {
"ACTION_TITLE": "Adicionar ação",
"ACTION_MENU": "Menu de ação",
"CONTEX_MENU": "Menu de contexto",
"ACTION_VISIBLE": "Visível",
"ACTION_DISABLE": "Desativar",
"ADD_BUTTON": "Adicionar",
"KEY": "Chave",
"TITLE": "Título",
"ICON": "Ícone",
"TASK_ID": "ID de tarefa",
"PROCESS_ID": "ID de instância de processo",
"ACTION_TYPE": "Tipo de ação"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Иерархическое представление",
"ICONS": "Значки",
"PEOPLE_GROUPS_CLOUD": "Облако пользователей/групп",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Облако заголовков задач",
"APP_NAME_INPUT": "Название приложения",
"TASK_ID_INPUT": "Идентификатор задачи",
"FIND_TASK_BUTTON": "Найти задачу"
},
"PEOPLE_CLOUD": "Компонент облака «Пользователи»",
"GROUPS_CLOUD": "Компонент облака «Группы»",
"CONFIRM-DIALOG": "Диалоговое окно подтверждения",
@@ -302,25 +308,33 @@
"APP_NAME": "Имя приложения",
"APP_FILTER_MODE": "Фильтровать по имени приложения",
"ROLE_FILTER_MODE": "Фильтровать по роли",
"PRESELECT_VALIDATION": "Проверка предварительного выбора"
},
"ABOUT": {
"TITLE": "Подключаемые модули",
"TABLE_HEADERS": {
"ID": "Идентификатор",
"NAME": "Имя",
"VERSION": "Версия",
"VENDOR": "Поставщик",
"LICENSE": "Лицензия",
"RUNTIME": "Среда выполнения",
"DESCRIPTION": "Описание"
}
"PRESELECT_VALIDATION": "Проверка предварительного выбора",
"ALL_PRESELECTED_USERS": "Все заранее заданные пользователи",
"ALL_PRESELECTED_GROUPS": "Все заранее заданные группы",
"INVALID_USERS": "Недействительные пользователи",
"INVALID_GROUPS": "Недействительные группы",
"READONLY_MODE": "Режим только для чтения"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Выбор нескольких",
"TESTING_MODE": "Режим тестирования",
"SELECTION_MODE": "Режим выбора",
"SELECTED_ROWS": "Выбранные ряды",
"TASK_DETAILS_REDIRECTION": "Отображать подробные сведения о задаче при нажатии на задачу",
"PROCESS_DETAILS_REDIRECTION": "Показывать сведения о процессе при нажатии на процессе"
"PROCESS_DETAILS_REDIRECTION": "Показывать сведения о процессе при нажатии на процессе",
"ACTION": {
"ACTION_TITLE": "Добавить действие",
"ACTION_MENU": "Меню действий",
"CONTEX_MENU": "Контекстное меню",
"ACTION_VISIBLE": "Видимый",
"ACTION_DISABLE": "Отключить",
"ADD_BUTTON": "Добавить",
"KEY": "Ключ",
"TITLE": "Заголовок",
"ICON": "Значок",
"TASK_ID": "ИД задачи",
"PROCESS_ID": "Идентификатор экземпляра процесса",
"ACTION_TYPE": "Тип действия"
}
}
}
+28 -14
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "Trädvy",
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Personer/grupp moln",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "Uppgiftsrubrik för moln eller molnkomponent",
"APP_NAME_INPUT": "Programnamn",
"TASK_ID_INPUT": "Uppgifts-ID",
"FIND_TASK_BUTTON": "Hitta uppgift"
},
"PEOPLE_CLOUD": "Personer moln-komponent",
"GROUPS_CLOUD": "Grupper moln-komponent",
"CONFIRM-DIALOG": "Dialogruta för bekräftelse",
@@ -302,25 +308,33 @@
"APP_NAME": "Programnamn",
"APP_FILTER_MODE": "Filterera på programnamn",
"ROLE_FILTER_MODE": "Filtrera på roll",
"PRESELECT_VALIDATION": "Förval validering"
},
"ABOUT": {
"TITLE": "Plugins",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "Namn",
"VERSION": "Version",
"VENDOR": "Säljare",
"LICENSE": "Licens",
"RUNTIME": "Runtime",
"DESCRIPTION": "Beskrivning"
}
"PRESELECT_VALIDATION": "Förval validering",
"ALL_PRESELECTED_USERS": "Alla förvalda användare",
"ALL_PRESELECTED_GROUPS": "Alla förvalda grupper",
"INVALID_USERS": "Ogiltiga användare",
"INVALID_GROUPS": "Ogiltiga grupper",
"READONLY_MODE": "Skrivskyddat läge"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Flerval",
"TESTING_MODE": "Testläge",
"SELECTION_MODE": "Urvalsläge",
"SELECTED_ROWS": "Valda rader",
"TASK_DETAILS_REDIRECTION": "Visa uppgiftsdetaljer vid klick på uppgift",
"PROCESS_DETAILS_REDIRECTION": "Visa processinformation vid processklick"
"PROCESS_DETAILS_REDIRECTION": "Visa processinformation vid processklick",
"ACTION": {
"ACTION_TITLE": "Lägg till åtgärd",
"ACTION_MENU": "Åtgärdsmeny",
"CONTEX_MENU": "Innehållsmeny",
"ACTION_VISIBLE": "Synlig",
"ACTION_DISABLE": "Avaktivera",
"ADD_BUTTON": "Lägg till",
"KEY": "Nyckel",
"TITLE": "Titel",
"ICON": "Ikon",
"TASK_ID": "Uppgifts-ID",
"PROCESS_ID": "Processinstans-ID",
"ACTION_TYPE": "Åtgärdstyp"
}
}
}
+34 -20
View File
@@ -94,6 +94,12 @@
"TREE_VIEW": "树视图",
"ICONS": "图标",
"PEOPLE_GROUPS_CLOUD": "人员/一组云",
"TASK_HEADER_CLOUD": {
"COMPONENT_NAME": "云的任务标题",
"APP_NAME_INPUT": "应用程序名称",
"TASK_ID_INPUT": "任务 id",
"FIND_TASK_BUTTON": "查找任务"
},
"PEOPLE_CLOUD": "人员云组件",
"GROUPS_CLOUD": "组云组件",
"CONFIRM-DIALOG": "确认对话",
@@ -105,9 +111,9 @@
"RESTORE": "恢复"
},
"EMPTY_STATE": {
"TITLE": "“垃圾”为空",
"FIRST_TEXT": "删除的项目移动到“垃圾”。",
"SECOND_TEXT": "清空“垃圾”以永久删除项目。"
"TITLE": "回收站为空",
"FIRST_TEXT": "删除的项目已移至回收站。",
"SECOND_TEXT": "清空回收站以永久删除项目。"
}
},
"DOCUMENT_LIST": {
@@ -131,7 +137,7 @@
"COLUMNS": {
"DISPLAY_NAME": "显示名称",
"IS_LOCKED": "锁定",
"TAG": "标",
"TAG": "标",
"NODE_ID": "节点 ID",
"CREATED_BY": "创建者",
"CREATED_ON": "创建日期",
@@ -247,9 +253,9 @@
"RATING": "评分组件"
},
"TAG": {
"LIST": "列表标 Content Services",
"LIST": "列表标 Content Services",
"INSERT": "插入节点 ID",
"NODE_LIST": "标列表(按节点 ID 排序)"
"NODE_LIST": "标列表(按节点 ID 排序)"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "继承权限",
@@ -302,25 +308,33 @@
"APP_NAME": "应用程序名称",
"APP_FILTER_MODE": "按应用程序名称筛选",
"ROLE_FILTER_MODE": "按角色筛选",
"PRESELECT_VALIDATION": "预先选择验证"
},
"ABOUT": {
"TITLE": "插件",
"TABLE_HEADERS": {
"ID": "ID",
"NAME": "名称",
"VERSION": "版本",
"VENDOR": "供应商",
"LICENSE": "许可证",
"RUNTIME": "运行时",
"DESCRIPTION": "说明"
}
"PRESELECT_VALIDATION": "预先选择验证",
"ALL_PRESELECTED_USERS": "所有预选用户",
"ALL_PRESELECTED_GROUPS": "所有预选组",
"INVALID_USERS": "无效用户",
"INVALID_GROUPS": "无效组",
"READONLY_MODE": "Read-only(只读)模式"
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "多重选择",
"TESTING_MODE": "测试模式",
"SELECTION_MODE": "选择模式",
"SELECTED_ROWS": "选定行",
"TASK_DETAILS_REDIRECTION": "单击任务时显示任务详情",
"PROCESS_DETAILS_REDIRECTION": "单击流程时显示流程详细信息"
"PROCESS_DETAILS_REDIRECTION": "单击流程时显示流程详细信息",
"ACTION": {
"ACTION_TITLE": "添加操作",
"ACTION_MENU": "操作菜单",
"CONTEX_MENU": "上下文菜单",
"ACTION_VISIBLE": "可见",
"ACTION_DISABLE": "禁用",
"ADD_BUTTON": "添加",
"KEY": "Key",
"TITLE": "标题",
"ICON": "图标",
"TASK_ID": "任务 ID",
"PROCESS_ID": "流程实例 ID",
"ACTION_TYPE": "操作类型"
}
}
}
+2 -1
View File
@@ -21,7 +21,8 @@
"silentLogin": true,
"redirectSilentIframeUri": "{protocol}//{hostname}{:port}/assets/silent-refresh.html",
"redirectUri": "/",
"redirectUriLogout": "/logout"
"redirectUriLogout": "/logout",
"publicUrls": ["**/preview/s/*", "**/settings"]
},
"application": {
"storagePrefix": "ADF",
+1 -1
View File
@@ -1,4 +1,4 @@
<div class="adf-demo-app-container">
<div class="app-demo-app-container">
<router-outlet></router-outlet>
<router-outlet name="overlay"></router-outlet>
</div>
+1 -1
View File
@@ -7,7 +7,7 @@ router-outlet[name='overlay'] + * {
right: 0;
}
.adf-demo-app-container {
.app-demo-app-container {
height: 100%;
width: 100%;
}
+6 -8
View File
@@ -17,7 +17,7 @@
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { FlexLayoutModule } from '@angular/flex-layout';
import { ChartsModule } from 'ng2-charts';
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
@@ -51,7 +51,6 @@ import { MetadataDialogAdapterComponent } from './components/files/metadata-dial
import { ThemePickerModule } from './components/theme-picker/theme-picker';
import { routing } from './app.routes';
import { ReactiveFormsModule } from '@angular/forms';
import { TaskAttachmentsComponent } from './components/process-service/task-attachments.component';
import { ProcessAttachmentsComponent } from './components/process-service/process-attachments.component';
import { SharedLinkViewComponent } from './components/shared-link-view/shared-link-view.component';
@@ -63,7 +62,6 @@ import { ContentModule } from '@alfresco/adf-content-services';
import { InsightsModule } from '@alfresco/adf-insights';
import { ProcessModule } from '@alfresco/adf-process-services';
import { AuthBearerInterceptor } from './services';
import { ProcessServicesCloudModule } from '@alfresco/adf-process-services-cloud';
import { AppExtensionsModule } from './app-extension.module';
import { TreeViewSampleComponent } from './components/tree-view/tree-view-sample.component';
import { CloudLayoutComponent } from './components/cloud/cloud-layout.component';
@@ -71,6 +69,7 @@ import { AppsCloudDemoComponent } from './components/cloud/apps-cloud-demo.compo
import { TasksCloudDemoComponent } from './components/cloud/tasks-cloud-demo.component';
import { ProcessesCloudDemoComponent } from './components/cloud/processes-cloud-demo.component';
import { TaskDetailsCloudDemoComponent } from './components/cloud/task-details-cloud-demo.component';
import { TaskHeaderCloudDemoComponent } from './components/cloud/task-header-cloud-demo.component';
import { CloudViewerComponent } from './components/cloud/cloud-viewer.component';
import { ProcessDetailsCloudDemoComponent } from './components/cloud/process-details-cloud-demo.component';
import { StartTaskCloudDemoComponent } from './components/cloud/start-task-cloud-demo.component';
@@ -83,10 +82,9 @@ import { ConfirmDialogExampleComponent } from './components/confirm-dialog/confi
import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/cloud-form-demo.component';
import { environment } from '../environments/environment';
import { AppCloudSharedModule } from './components/cloud/shared/cloud.shared.module';
import { DemoErrorComponent } from './components/error/demo-error.component';
import {
UserPreferenceCloudService,
PROCESS_FILTERS_SERVICE_TOKEN,
TASK_FILTERS_SERVICE_TOKEN
ProcessServicesCloudModule
} from '@alfresco/adf-process-services-cloud';
import { registerLocaleData } from '@angular/common';
@@ -171,6 +169,7 @@ registerLocaleData(localeSv);
SharedLinkViewComponent,
FormLoadingComponent,
DemoPermissionComponent,
DemoErrorComponent,
FormLoadingComponent,
ReportIssueComponent,
TreeViewSampleComponent,
@@ -179,6 +178,7 @@ registerLocaleData(localeSv);
TasksCloudDemoComponent,
ProcessesCloudDemoComponent,
TaskDetailsCloudDemoComponent,
TaskHeaderCloudDemoComponent,
CloudViewerComponent,
ProcessDetailsCloudDemoComponent,
StartTaskCloudDemoComponent,
@@ -196,8 +196,6 @@ registerLocaleData(localeSv);
provide: HTTP_INTERCEPTORS, useClass:
AuthBearerInterceptor, multi: true
},
{ provide: PROCESS_FILTERS_SERVICE_TOKEN, useClass: UserPreferenceCloudService },
{ provide: TASK_FILTERS_SERVICE_TOKEN, useClass: UserPreferenceCloudService },
{ provide: AppConfigService, useClass: DebugAppConfigService }, // not use this service in production
{
provide: TRANSLATION_PROVIDER,
+25 -9
View File
@@ -57,6 +57,8 @@ import { ProcessDetailsCloudDemoComponent } from './components/cloud/process-det
import { TemplateDemoComponent } from './components/template-list/template-demo.component';
import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/cloud-form-demo.component';
import { ConfirmDialogExampleComponent } from './components/confirm-dialog/confirm-dialog-example.component';
import { DemoErrorComponent } from './components/error/demo-error.component';
import { TaskHeaderCloudDemoComponent } from './components/cloud/task-header-cloud-demo.component';
export const appRoutes: Routes = [
{ path: 'login', loadChildren: 'app/components/login/login.module#AppLoginModule' },
{ path: 'logout', component: LogoutComponent },
@@ -166,7 +168,6 @@ export const appRoutes: Routes = [
path: 'cloud',
canActivate: [AuthGuardSsoRoleService],
data: { roles: ['ACTIVITI_USER'], redirectUrl: '/error/403' },
children: [
{
path: '',
@@ -176,6 +177,10 @@ export const appRoutes: Routes = [
path: 'people-group-cloud',
component: PeopleGroupCloudDemoComponent
},
{
path: 'task-header-cloud',
component: TaskHeaderCloudDemoComponent
},
{
path: 'community',
loadChildren: 'app/components/cloud/community/community.module#AppCommunityModule'
@@ -412,19 +417,30 @@ export const appRoutes: Routes = [
canActivate: [AuthGuardBpm],
loadChildren: 'app/components/process-list-demo/process-list.module#AppProcessListModule'
},
{
path: 'error/:id',
component: ErrorContentComponent
},
{
path: 'error/no-authorization',
component: ErrorContentComponent
},
{
path: '**',
redirectTo: 'error/404'
}
]
},
{
path: 'error',
component: AppLayoutComponent,
children: [
{
path: '',
redirectTo: '/error/404',
pathMatch: 'full'
},
{
path: ':id',
component: DemoErrorComponent
}
]
},
{
path: '**',
redirectTo: 'error/404'
}
];
@@ -1,5 +1,12 @@
<adf-about
[githubUrlCommitAlpha]="githubUrlCommitAlpha"
[version]="version"
[dependencies]="dependencies">
</adf-about>
<adf-about-github-link
[url]="url"
[version]="version">
</adf-about-github-link>
<adf-about-product-version>
</adf-about-product-version>
<adf-about-application-modules
[dependencies]="dependencies"
[showExtensions]="showExtensions">
</adf-about-application-modules>
@@ -25,9 +25,10 @@ import { name, version, commit, dependencies } from '../../../../../package.json
})
export class AboutComponent {
githubUrlCommitAlpha = `https://github.com/Alfresco/${name}/commits/${commit}`;
url = `https://github.com/Alfresco/${name}/commits/${commit}`;
version = version;
dependencies = dependencies;
showExtensions = true;
constructor() {
@@ -2,17 +2,17 @@
[expandedSidenav]="expandedSidenav" (expanded)="setState($event)" [position]="position" data-automation-id="sidenav-layout">
<adf-sidenav-layout-header>
<ng-template let-toggleMenu="toggleMenu">
<ng-template let-toggleMenu="toggleMenu" let-isMenuMinimized="isMenuMinimized">
<adf-layout-header id="adf-header" [title]="title | translate" [redirectUrl]="redirectUrl" [logo]="logo"
[tooltip]="tooltip | translate" [showSidenavToggle]="showMenu" [color]="color" [position]="position"
(clicked)=toggleMenu($event)>
[tooltip]="tooltip | translate" [showSidenavToggle]="showMenu" [expandedSidenav]="!isMenuMinimized()"
[color]="color" [position]="position" (clicked)=toggleMenu($event)>
<div class="adf-app-layout-menu-spacer"></div>
<div class="app-layout-menu-spacer"></div>
<app-search-bar fxFlex="0 1 auto"></app-search-bar>
<div class="adf-header-delimiexpandedSidenavter"></div>
<div class="app-header-delimiexpandedSidenavter"></div>
<adf-userinfo [menuPositionX]="'before'" [menuPositionY]="'above'">
</adf-userinfo>
@@ -21,7 +21,7 @@
<button data-automation-id="language-menu-button" mat-icon-button [matMenuTriggerFor]="langMenu">
<mat-icon>language</mat-icon>
</button>
<mat-menu #langMenu="matMenu" class="adf-menu">
<mat-menu #langMenu="matMenu" class="app-menu">
<adf-language-menu></adf-language-menu>
</mat-menu>
@@ -33,13 +33,13 @@
<adf-sidenav-layout-navigation>
<ng-template let-isMenuMinimized="isMenuMinimized">
<mat-nav-list class="adf-sidenav-linklist">
<mat-nav-list class="app-sidenav-linklist">
<ng-container *ngFor="let link of links">
<ng-container *ngIf="link.children">
<mat-list-item (click)="trigger.openMenu()" [attr.data-automation-id]="link.title | translate" class="adf-sidenav-link">
<mat-list-item (click)="trigger.openMenu()" [attr.data-automation-id]="link.title | translate" class="app-sidenav-link">
<mat-icon matListIcon>{{link.icon}}</mat-icon>
<span matLine *ngIf="!isMenuMinimized()">{{link.title | translate }}</span>
<mat-icon class="adf-sidenav-link__expand-button" [matMenuTriggerData]="{links: link.children}"
<mat-icon class="app-sidenav-link__expand-button" [matMenuTriggerData]="{links: link.children}"
rippleTrigger mat-icon-button #trigger="matMenuTrigger"
[matMenuTriggerFor]="nestedMenu">arrow_right</mat-icon>
</mat-list-item>
@@ -47,15 +47,15 @@
<ng-container *ngIf="!link.children">
<mat-list-item [routerLink]="link.href"
routerLinkActive="adf-sidenav-link--active" [routerLinkActiveOptions]="{ exact: true }"
[attr.data-automation-id]="link.title | translate" class="adf-sidenav-link">
routerLinkActive="app-sidenav-link--active" [routerLinkActiveOptions]="{ exact: true }"
[attr.data-automation-id]="link.title | translate" class="app-sidenav-link">
<mat-icon matListIcon >{{link.icon}}</mat-icon>
<span matLine *ngIf="!isMenuMinimized()">{{link.title | translate }}</span>
</mat-list-item>
</ng-container>
</ng-container>
<mat-list-item adf-logout [enableRedirect]="enableRedirect" redirectUri="/logout" class="adf-sidenav-link" data-automation-id="Logout" >
<mat-list-item adf-logout [enableRedirect]="enableRedirect" redirectUri="/logout" class="app-sidenav-link" data-automation-id="Logout" >
<mat-icon matListIcon>exit_to_app</mat-icon>
<span matLine *ngIf="!isMenuMinimized()">Logout</span>
</mat-list-item>
@@ -76,9 +76,9 @@
<mat-menu #nestedMenu="matMenu" xPosition="after" class="nestedMenu">
<ng-template matMenuContent let-links="links">
<button mat-menu-item *ngFor="let link of links"
class="adf-sidenav-link"
class="app-sidenav-link"
[attr.data-automation-id]="link.title | translate"
routerLinkActive="adf-sidenav-link--active"
routerLinkActive="app-sidenav-link--active"
[routerLink]="link.href"
[routerLinkActiveOptions]="{ exact: true }">
@@ -1,4 +1,4 @@
@mixin adf-app-layout-theme($theme) {
@mixin app-layout-theme($theme) {
$primary: map-get($theme, primary);
$minimumAppWidth: 320px;
@@ -14,17 +14,17 @@
}
}
.adf-app-layout {
.app-layout {
display: flex;
flex: 1;
min-width: $minimumAppWidth;
height: 100%;
.adf-sidenav-link--active {
.app-sidenav-link--active {
color: mat-color($primary);
}
.adf-sidenav-link {
.app-sidenav-link {
.mat-list-text {
font-size: 14px;
white-space: nowrap;
@@ -33,7 +33,7 @@
}
}
.mat-nav-list .mat-list-item.adf-sidenav-link {
.mat-nav-list .mat-list-item.app-sidenav-link {
height: 40px;
}
@@ -47,7 +47,7 @@
display: none;
}
.adf-menu {
.app-menu {
padding-top: 0;
}
}
@@ -63,7 +63,7 @@
}
}
[dir='rtl'] .adf-sidenav-link__expand-button {
[dir='rtl'] .app-sidenav-link__expand-button {
transform: rotateY(180deg);
}
}
@@ -25,7 +25,7 @@ import { takeUntil } from 'rxjs/operators';
templateUrl: 'app-layout.component.html',
styleUrls: ['app-layout.component.scss'],
host: {
'class': 'adf-app-layout'
'class': 'app-layout'
},
encapsulation: ViewEncapsulation.None
})
@@ -48,12 +48,15 @@ export class AppLayoutComponent implements OnInit, OnDestroy {
{ href: '/node-selector', icon: 'attachment', title: 'APP_LAYOUT.NODE-SELECTOR' },
{ href: '/sites', icon: 'format_list_bulleted', title: 'APP_LAYOUT.SITES' },
{ href: '/task-list', icon: 'assignment', title: 'APP_LAYOUT.TASK_LIST' },
{ href: '/cloud', icon: 'cloud', title: 'APP_LAYOUT.PROCESS_CLOUD', children: [
{ href: '/cloud/', icon: 'cloud', title: 'APP_LAYOUT.HOME' },
{ href: '/cloud/community', icon: 'cloud', title: 'APP_LAYOUT.COMMUNITY' },
{ href: '/form-cloud', icon: 'poll', title: 'APP_LAYOUT.FORM' },
{ href: '/cloud/people-group-cloud', icon: 'group', title: 'APP_LAYOUT.PEOPLE_GROUPS_CLOUD' }
]},
{
href: '/cloud', icon: 'cloud', title: 'APP_LAYOUT.PROCESS_CLOUD', children: [
{ href: '/cloud/', icon: 'cloud', title: 'APP_LAYOUT.HOME' },
{ href: '/cloud/community', icon: 'cloud', title: 'APP_LAYOUT.COMMUNITY' },
{ href: '/form-cloud', icon: 'poll', title: 'APP_LAYOUT.FORM' },
{ href: '/cloud/people-group-cloud', icon: 'group', title: 'APP_LAYOUT.PEOPLE_GROUPS_CLOUD' },
{ href: '/cloud/task-header-cloud', icon: 'cloud', title: 'APP_LAYOUT.TASK_HEADER_CLOUD.COMPONENT_NAME' }
]
},
{ href: '/activiti', icon: 'device_hub', title: 'APP_LAYOUT.PROCESS_SERVICES', children: [
{ href: '/activiti', icon: 'vpn_key', title: 'APP_LAYOUT.APP' },
{ href: '/process-list', icon: 'assignment', title: 'APP_LAYOUT.PROCESS_LIST' },
@@ -2,7 +2,7 @@
<mat-tab-group>
<mat-tab label="Form" class="form-cloud-render">
<div class="adf-form-container">
<div class="app-form-container">
<adf-cloud-form
[showRefreshButton]="false"
[form]="form"
@@ -11,7 +11,7 @@
</adf-cloud-form>
</div>
<div class="adf-console" #console>
<div class="app-console" #console>
<h3>Error log:</h3>
<p *ngFor="let error of errorFields">Error {{ error.name }} {{error.validationSummary.message |
translate}}</p>
@@ -20,20 +20,20 @@
<mat-tab label="Editor" class="form-cloud-editor">
<ngx-monaco-editor
id="adf-form-config-editor"
class="adf-form-config-editor"
class="app-form-config-editor"
[options]="editorOptions"
[(ngModel)]="formConfig"
(onInit)="onInitFormEditor($event)">
</ngx-monaco-editor>
<div class="adf-form-editor-buttons">
<button mat-raised-button id="adf-form-config-save" (click)="onSaveFormConfig()" color="primary">Save
<div class="app-form-editor-buttons">
<button mat-raised-button id="app-form-config-save" (click)="onSaveFormConfig()" color="primary">Save
form config
</button>
<button mat-raised-button id="adf-form-config-clear" (click)="onClearFormConfig()" color="primary">Clear
<button mat-raised-button id="app-form-config-clear" (click)="onClearFormConfig()" color="primary">Clear
form config
</button>
</div>
<div class="adf-upload-config-button">
<div class="app-upload-config-button">
<a mat-raised-button color="primary" >
<mat-icon>file_upload</mat-icon>
<label for="upload-config-file">Upload JSON File</label>
@@ -1,17 +1,17 @@
.adf-form-container {
.app-form-container {
padding: 10px;
}
.adf-main-content {
.app-main-content {
padding: 0 15px;
}
.adf-card-view {
.app-card-view {
width: 30%;
display: inline-block;
}
.adf-console {
.app-console {
width: 60%;
display: inline-block;
vertical-align: top;
@@ -31,16 +31,16 @@
}
}
.adf-form-config-editor {
.app-form-config-editor {
height: 500px !important;
}
.adf-form-editor-buttons {
.app-form-editor-buttons {
display: flex;
justify-content: space-evenly;
}
.adf-upload-config-button {
.app-upload-config-button {
display: flex;
justify-content: center;
@@ -16,8 +16,8 @@
*/
import { Component, OnDestroy, OnInit } from '@angular/core';
import { FormFieldModel, NotificationService, FormRenderingService, CoreAutomationService } from '@alfresco/adf-core';
import { FormCloud, FormCloudService, UploadCloudWidgetComponent } from '@alfresco/adf-process-services-cloud';
import { FormFieldModel, NotificationService, CoreAutomationService, FormModel } from '@alfresco/adf-core';
import { FormCloudService } from '@alfresco/adf-process-services-cloud';
import { Subscription } from 'rxjs';
@Component({
@@ -26,7 +26,7 @@ import { Subscription } from 'rxjs';
})
export class FormCloudDemoComponent implements OnInit, OnDestroy {
form: FormCloud;
form: FormModel;
errorFields: FormFieldModel[] = [];
formConfig: string;
editor: any;
@@ -43,10 +43,8 @@ export class FormCloudDemoComponent implements OnInit, OnDestroy {
constructor(
private notificationService: NotificationService,
private formRenderingService: FormRenderingService,
private formService: FormCloudService,
private automationService: CoreAutomationService) {
this.formRenderingService.setComponentTypeResolver('upload', () => UploadCloudWidgetComponent, true);
}
logErrors(errorFields: FormFieldModel[]) {
@@ -8,7 +8,7 @@
<h2>1. Standalone (fixed size)</h2>
<small>Component is used in the fixed-width layout</small>
<div class="adf-breadcrumb-container-restricted">
<div class="app-breadcrumb-container-restricted">
<adf-breadcrumb root="APP.PERSONAL-FILES" [target]="documentList" [folderNode]="documentList.folderNode">
</adf-breadcrumb>
</div>
@@ -57,7 +57,7 @@
Buttons do nothing and are present for layout purposes.
</small>
<adf-toolbar class="adf-full-content-toolbar">
<adf-toolbar class="app-full-content-toolbar">
<adf-toolbar-title fxFlex="0 1 auto">
<adf-breadcrumb root="APP.PERSONAL-FILES" [target]="documentList" [folderNode]="documentList.folderNode">
</adf-breadcrumb>
@@ -79,11 +79,11 @@
<h2>6. Dropdown Breadcrumb</h2>
<adf-dropdown-breadcrumb fxHide fxShow.lt-sm="true"
class="adf-files-breadcrumb"
class="app-files-breadcrumb"
[target]="documentList">
</adf-dropdown-breadcrumb>
<div class="adf-content">
<div class="app-content">
<adf-document-list #documentList currentFolderId="-my-">
</adf-document-list>
</div>
@@ -1,13 +1,13 @@
.adf-breadcrumb-container-restricted {
.app-breadcrumb-container-restricted {
width: 800px;
max-width: 800px;
border: 1px solid lightgray;
}
.adf-content {
.app-content {
margin: 10px 0;
}
.adf-full-content-toolbar .adf-toolbar-title .adf-breadcrumb {
.app-full-content-toolbar .app-toolbar-title .app-breadcrumb {
width: 0;
}
@@ -1,7 +1,7 @@
<div class="adf-main-content">
<div class="app-main-content">
<h1>CardView Component</h1>
<mat-card class="adf-card-view">
<mat-card class="app-card-view">
<adf-card-view
[properties]="properties"
[editable]="true"
@@ -10,30 +10,30 @@
</adf-card-view>
</mat-card>
<div class="adf-console" #console>
<div class="app-console" #console>
<h3>Changes log:</h3>
<p *ngFor="let log of logs">{{ log }}</p>
</div>
</div>
<p class="adf-toggle">
<p class="app-toggle">
<mat-slide-toggle
id="adf-toggle-editable"
id="app-toggle-editable"
[color]="'primary'"
(change)="toggleEditable()"
[checked]="isEditable">
Editable
</mat-slide-toggle><br>
<mat-slide-toggle
id="adf-toggle-clear-date"
id="app-toggle-clear-date"
[color]="'primary'"
(change)="toggleClearDate()"
[checked]="showClearDateAction">
Show clear date icon
</mat-slide-toggle><br>
<mat-slide-toggle
id="adf-toggle-none-option"
id="app-toggle-none-option"
[color]="'primary'"
(change)="toggleNoneOption()"
[checked]="showNoneOption">
@@ -1,13 +1,13 @@
.adf-main-content {
.app-main-content {
padding: 0 15px;
}
.adf-card-view {
.app-card-view {
width: 30%;
display: inline-block;
}
.adf-console {
.app-console {
width: 60%;
display: inline-block;
vertical-align: top;
@@ -28,7 +28,8 @@ import {
CardViewUpdateService,
CardViewMapItemModel,
UpdateNotification,
DecimalNumberPipe
DecimalNumberPipe,
CardViewArrayItemModel
} from '@alfresco/adf-core';
import { of, Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -148,6 +149,19 @@ export class CardViewComponent implements OnInit, OnDestroy {
clickCallBack: () => {
this.respondToCardClick();
}
}),
new CardViewArrayItemModel({
label: 'CardView Array of items',
value: of([
{ icon: 'directions_bike', value: 'Zlatan' },
{ icon: 'directions_bike', value: 'Lionel Messi'},
{ value: 'Mohamed', directions_bike: 'save'},
{ value: 'Ronaldo'}
]),
key: 'array',
icon: 'edit',
default: 'Empty',
noOfItemsToDisplay: 2
})
];
}
@@ -1,8 +1,8 @@
<adf-toolbar>
<div fxLayout="column" fxLayoutAlign="center">
<div fxLayout="row">
<div class="adf-app-crumb">{{appName + ' >'}} </div>
<div class="adf-filter-crumb"> {{filterName | translate}}</div>
<div class="app-crumb">{{appName + ' >'}} </div>
<div class="app-filter-crumb"> {{filterName | translate}}</div>
</div>
</div>
</adf-toolbar>
@@ -1,8 +1,8 @@
.adf-app-crumb {
.app-app-crumb {
opacity: 0.5;
}
.adf-filter-crumb {
.app-filter-crumb {
opacity: 0.8;
margin-left: 5px;
}
@@ -1,3 +1,3 @@
adf-cloud-task-filters .adf-filters__entry, adf-cloud-process-filters .adf-filters__entry {
app-cloud-task-filters .app-filters__entry, app-cloud-process-filters .app-filters__entry {
padding-left: 0 !important;
}
@@ -1,4 +1,4 @@
<mat-tab-group fxFill class="adf-cloud-layout-tab-body">
<mat-tab-group fxFill class="app-cloud-layout-tab-body">
<mat-tab label="{{'PS_CLOUD_TAB.APPS_TAB' | translate}}">
<div fxFill fxLayout>
<adf-sidenav-layout fxFlex [sidenavMin]="70" [sidenavMax]="270" [stepOver]="780">
@@ -1,7 +1,7 @@
.adf-cloud-layout-overflow {
.app-cloud-layout-overflow {
overflow: auto;
}
.adf-cloud-layout-tab-body .mat-tab-body-wrapper {
.app-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100%;
}
@@ -1,4 +1,4 @@
<mat-tab-group fxFill class="adf-cloud-layout-tab-body">
<mat-tab-group fxFill class="app-cloud-layout-tab-body">
<mat-tab label="{{'PS_CLOUD_TAB.APPS_TAB' | translate}}">
<div fxFill fxLayout>
<adf-sidenav-layout fxFlex [sidenavMin]="70" [sidenavMax]="270" [stepOver]="780">
@@ -21,11 +21,11 @@ import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-cloud.component.html',
styles: [`.adf-cloud-layout-overflow {
styles: [`.app-cloud-layout-overflow {
overflow: auto;
}
.adf-cloud-layout-tab-body .mat-tab-body-wrapper {
.app-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100% !important;
}
`],
@@ -33,8 +33,6 @@ import { CloudLayoutService } from '../services/cloud-layout.service';
})
export class CommunityCloudComponent {
appName: string = '';
constructor(
private router: Router,
private route: ActivatedRoute,
@@ -7,7 +7,6 @@
</mat-expansion-panel-header>
<adf-cloud-task-filters
*ngIf="expandTaskFilter"
[appName]="appName"
[showIcons]="true"
[filterParam]="currentTaskFilter$ | async"
(filterClick)="onTaskFilterSelected($event)">
@@ -22,7 +21,6 @@
</mat-expansion-panel-header>
<adf-cloud-process-filters
*ngIf="expandProcessFilter"
[appName]="appName"
[showIcons]="true"
[filterParam]="currentProcessFilter$ | async"
(filterClick)="onProcessFilterSelected($event)">
@@ -15,7 +15,7 @@
* limitations under the License.
*/
import { Component, ViewEncapsulation, Input, OnInit } from '@angular/core';
import { Component, ViewEncapsulation, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { Router, ActivatedRoute } from '@angular/router';
import { CloudLayoutService } from '../services/cloud-layout.service';
@@ -26,9 +26,6 @@ import { CloudLayoutService } from '../services/cloud-layout.service';
})
export class CommunityCloudFiltersDemoComponent implements OnInit {
@Input()
appName: string = 'community';
currentTaskFilter$: Observable<any>;
currentProcessFilter$: Observable<any>;
@@ -3,22 +3,20 @@
<mat-icon>arrow_back</mat-icon> Go Back
</button>
<h4 data-automation-id="process-details-header">Simple page to show the process instance: {{ processInstanceId }} of the app: {{ appName }}</h4>
<h4 data-automation-id="process-details-header">Simple page to show the process instance: {{ processInstanceId }}</h4>
<div class="adf-process-cloud-container">
<div class="app-process-cloud-container">
<adf-cloud-task-list
fxFlex
class="adf-cloud-layout-overflow"
[appName]="''"
class="app-cloud-layout-overflow"
[processInstanceId]="processInstanceId"
(rowClick)="onRowClick($event)"
#taskCloud>
</adf-cloud-task-list>
<adf-cloud-process-header
class="adf-process-cloud-header"
[appName]="''"
class="app-process-cloud-header"
[processInstanceId]="processInstanceId">
</adf-cloud-process-header>
</div>
@@ -1,4 +1,4 @@
.adf {
.app {
&-process-cloud-container {
display: flex;
}
@@ -25,16 +25,11 @@ import { ActivatedRoute, Router } from '@angular/router';
export class CommunityProcessDetailsCloudDemoComponent {
processInstanceId: string;
appName: string;
constructor(private route: ActivatedRoute, private router: Router) {
this.route.params.subscribe((params) => {
this.processInstanceId = params.processInstanceId;
});
this.route.parent.params.subscribe((params) => {
this.appName = params.appName;
});
}
onGoBack() {
@@ -1,7 +1,6 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-process-filter
[id]="filterId"
[appName]="'community'"
[filterProperties]="processFilterProperties.filterProperties"
[sortProperties]="processFilterProperties.sortProperties"
[actions]="processFilterProperties.actions"
@@ -11,8 +10,7 @@
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-process-list #processCloud
fxFlex
[appName]="''"
class="adf-cloud-layout-overflow"
class="app-cloud-layout-overflow"
[initiator]="editedFilter.initiator"
[processDefinitionId]="editedFilter.processDefinitionId"
[processDefinitionKey]="editedFilter.processDefinitionKey"
@@ -44,9 +44,7 @@ export class CommunityProcessesCloudDemoComponent implements OnInit, OnDestroy {
@ViewChild('processFiltersCloud')
processFiltersCloud: ProcessFiltersCloudComponent;
appName: string = '';
isFilterLoaded: boolean;
filterId: string = '';
sortArray: any = [];
selectedRow: any;
@@ -79,10 +77,6 @@ export class CommunityProcessesCloudDemoComponent implements OnInit, OnDestroy {
ngOnInit() {
this.isFilterLoaded = false;
this.route.parent.params.subscribe((params) => {
this.appName = params.appName;
});
this.route.queryParams.subscribe((params) => {
if (Object.keys(params).length > 0) {
this.isFilterLoaded = true;
@@ -1,6 +1,5 @@
<adf-cloud-start-process
[name]="processName"
[appName]="''"
(error)="openSnackMessage($event)"
(success)="onStartProcessSuccess()"
(cancel)="onCancelStartProcess()">
@@ -1,5 +1,4 @@
<adf-cloud-start-task
[appName]="''"
(error)="openSnackMessage($event)"
(success)="onStartTaskSuccess()"
(cancel)="onCancelStartTask()">
@@ -1,7 +1,6 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-task-filter
[id]="filterId"
[appName]="'community'"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
@@ -11,8 +10,7 @@
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-task-list #taskCloud
fxFlex
[appName]="''"
class="adf-cloud-layout-overflow"
class="app-cloud-layout-overflow"
[processDefinitionId]="editedFilter.processDefinitionId"
[processInstanceId]="editedFilter.processInstanceId"
[name]="editedFilter.taskName"
@@ -1,10 +1,9 @@
<h4 data-automation-id="task-details-header">Simple page to show the taskId: {{ taskId }} of the app: {{ appName }}</h4>
<h4 data-automation-id="task-details-header">Simple page to show the taskId: {{ taskId }}</h4>
<div fxLayout="column" fxFill fxLayoutGap="2px">
<div fxLayout="row" fxFill>
<div fxLayout="column" fxFlex="80%">
<adf-cloud-task-form
[appName]="''"
[taskId]="taskId"
(cancelClick)="goBack()"
(taskClaimed)="onClaimTask()"
@@ -14,7 +13,6 @@
</adf-cloud-task-form>
</div>
<adf-cloud-task-header fxFlex
[appName]="''"
[taskId]="taskId">
</adf-cloud-task-header>
</div>
@@ -1,5 +1,5 @@
.adf {
.app {
&-task-detail-container {
display: flex;
@@ -26,7 +26,6 @@ import { NotificationService } from '@alfresco/adf-core';
export class CommunityTaskDetailsCloudDemoComponent {
taskId: string;
appName: string;
constructor(
private route: ActivatedRoute,
@@ -36,13 +35,10 @@ export class CommunityTaskDetailsCloudDemoComponent {
this.route.params.subscribe((params) => {
this.taskId = params.taskId;
});
this.route.parent.params.subscribe((params) => {
this.appName = params.appName;
});
}
isTaskValid(): boolean {
return this.appName !== undefined && this.taskId !== undefined;
return this.taskId !== undefined;
}
goBack() {
@@ -1,4 +1,4 @@
<mat-card class="adf-section">
<mat-card class="app-section">
<mat-card-title>
{{ 'APP_LAYOUT.PEOPLE_CLOUD' | translate}}
</mat-card-title>
@@ -6,56 +6,70 @@
<mat-card-content>
<br>
<mat-radio-group (change)="onChangePeopleMode($event)">
<mat-radio-button checked="true" class="adf-people-single-mode" data-automation-id="adf-people-single-mode" value="{{ peopleSingleMode }}">{{
<mat-radio-button checked="true" class="app-people-single-mode" data-automation-id="app-people-single-mode" value="single">{{
'PEOPLE_GROUPS_CLOUD.SINGLE' | translate }}</mat-radio-button>
<mat-radio-button class="adf-people-multiple-mode" data-automation-id="adf-people-multiple-mode" value="{{ peopleMultipleMode }}">{{
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-people-multiple-mode" value="multiple">{{
'PEOPLE_GROUPS_CLOUD.MULTI' | translate }}</mat-radio-button>
</mat-radio-group>
<div class="people-control-options">
<div class="app-people-control-options">
<mat-radio-group (change)="onChangePeopleFilterMode($event)">
<mat-radio-button checked="true" class="adf-people-single-mode" value="appName">{{
<mat-radio-button checked="true" class="app-people-single-mode" value="appName">{{
'PEOPLE_GROUPS_CLOUD.APP_FILTER_MODE' | translate }}</mat-radio-button>
<mat-radio-button class="adf-people-multiple-mode" data-automation-id="adf-people-filter-role" value="role">{{
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-people-filter-role" value="role">{{
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
</mat-radio-group>
<mat-form-field *ngIf="!isPeopleAppNameSelected()" class="adf-preselect-value">
<mat-form-field *ngIf="!isPeopleAppNameSelected()" class="app-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.ROLE' | translate }} ["ACTIVITI_ADMIN", "ACTIVITI_USER"]</mat-label>
<input matInput (input)="setPeopleRoles($event)" data-automation-id="adf-people-roles-input" />
<input matInput (input)="setPeopleRoles($event.target?.value)" data-automation-id="app-people-roles-input" />
</mat-form-field>
<mat-form-field *ngIf="isPeopleAppNameSelected()" class="adf-preselect-value">
<mat-form-field *ngIf="isPeopleAppNameSelected()" class="app-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.APP_NAME' | translate }}</mat-label>
<input matInput (input)="setPeopleAppName($event)" data-automation-id="adf-people-app-input" />
<input matInput (input)="setPeopleAppName($event.target?.value)" data-automation-id="app-people-app-input" />
</mat-form-field>
<mat-form-field class="adf-preselect-value-full">
<mat-form-field class="app-preselect-value-full">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.PRESELECTED_VALUE' | translate }} {{ DEFAULT_PEOPLE_PLACEHOLDER }}</mat-label>
<input matInput (input)="setPeoplePreselectValue($event)" data-automation-id="adf-people-preselect-input" />
<input matInput (input)="setPeoplePreselectValue($event.target?.value)" data-automation-id="app-people-preselect-input" />
</mat-form-field>
<mat-checkbox class="adf-preselect-value" (change)="onChangePeopleValidation($event)">{{
<mat-checkbox class="app-preselect-value" (change)="onChangePeopleValidation($event)">{{
'PEOPLE_GROUPS_CLOUD.PRESELECT_VALIDATION' | translate }}</mat-checkbox>
<mat-checkbox data-automation-id="app-people-readonly" value="{{ peopleReadonly }}" (change)="onChangePeopleReadonly($event)">{{
'PEOPLE_GROUPS_CLOUD.READONLY_MODE' | translate }}</mat-checkbox>
</div>
<div>
<adf-cloud-people
[preSelectUsers]="preSelectUsers"
[readOnly]="peopleReadonly"
[validate]="peoplePreselectValidation"
[appName]="peopleAppName"
[roles]="peopleRoles"
[appName]="peopleAppName"
[title]="'ADF_TASK_LIST.START_TASK.FORM.LABEL.ASSIGNEE'"
[mode]="peopleMode"></adf-cloud-people>
[mode]="peopleMode"
(warning)="onUsersWarning($event)"></adf-cloud-people>
</div>
<div class="adf-people-list" *ngIf="canShowPeopleList()">
<div class="app-people-list" *ngIf="peopleMode === 'multiple'">
<h4>{{ 'PEOPLE_GROUPS_CLOUD.ALL_PRESELECTED_USERS' | translate }}</h4>
<mat-list role="list">
<mat-list-item *ngFor="let item of preSelectUsers" role="listitem">
<mat-icon mat-list-icon>person</mat-icon>
{{ item?.firstName }} {{ item?.lastName }}
{{item | fullName}}
</mat-list-item>
</mat-list>
<div *ngIf="invalidUsers.length > 0">
<h4>{{ 'PEOPLE_GROUPS_CLOUD.INVALID_USERS' | translate }} <mat-icon>warning</mat-icon> </h4>
<mat-list role="list">
<mat-list-item *ngFor="let invalidUser of invalidUsers" role="listitem">
<mat-icon mat-list-icon>person</mat-icon>
{{invalidUser | fullName}}
</mat-list-item>
</mat-list>
</div>
</div>
</mat-card-content>
</mat-card>
<mat-card class="adf-section">
<mat-card class="app-section">
<mat-card-title>
{{ 'APP_LAYOUT.GROUPS_CLOUD' | translate}}
</mat-card-title>
@@ -63,43 +77,75 @@
<mat-card-content>
<br>
<mat-radio-group (change)="onChangeGroupsMode($event)">
<mat-radio-button checked="true" class="adf-people-single-mode" data-automation-id="adf-group-single-mode" value="{{ groupSingleMode }}">{{
<mat-radio-button checked="true" class="app-people-single-mode" data-automation-id="app-group-single-mode" value="single">{{
'PEOPLE_GROUPS_CLOUD.SINGLE' | translate }}</mat-radio-button>
<mat-radio-button class="adf-people-multiple-mode" data-automation-id="adf-group-multiple-mode" value="{{ groupMultipleMode }}">{{
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-group-multiple-mode" value="multiple">{{
'PEOPLE_GROUPS_CLOUD.MULTI' | translate }}</mat-radio-button>
</mat-radio-group>
<div class="groups-control-options">
<div class="app-groups-control-options">
<mat-radio-group (change)="onChangeGroupsFilterMode($event)">
<mat-radio-button checked="true" class="adf-people-single-mode" value="appName">{{
<mat-radio-button checked="true" class="app-people-single-mode" value="appName">{{
'PEOPLE_GROUPS_CLOUD.APP_FILTER_MODE' | translate }}</mat-radio-button>
<mat-radio-button class="adf-people-multiple-mode" data-automation-id="adf-group-filter-role" value="role">{{
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-group-filter-role" value="role">{{
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
</mat-radio-group>
<mat-form-field *ngIf="!isGroupAppNameSelected()" class="adf-preselect-value">
<mat-form-field *ngIf="!isGroupAppNameSelected()" class="app-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.ROLE' | translate }} ["ACTIVITI_ADMIN", "ACTIVITI_USER"]</mat-label>
<input matInput (input)="setGroupRoles($event)" data-automation-id="adf-group-roles-input"/>
<input matInput
(input)="setGroupRoles($event.target?.value)"
data-automation-id="app-group-roles-input"/>
</mat-form-field>
<mat-form-field *ngIf="isGroupAppNameSelected()" class="adf-preselect-value">
<mat-form-field *ngIf="isGroupAppNameSelected()" class="app-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.APP_NAME' | translate }}</mat-label>
<input matInput (input)="setGroupAppName($event)" data-automation-id="adf-group-app-input"/>
<input matInput
(input)="setGroupAppName($event.target?.value)"
data-automation-id="app-group-app-input"/>
</mat-form-field>
<mat-form-field class="adf-preselect-value-full">
<mat-form-field class="app-preselect-value-full">
<mat-label>Preselect: {{ DEFAULT_GROUP_PLACEHOLDER }}</mat-label>
<input matInput (input)="setGroupsPreselectValue($event)" data-automation-id="adf-group-preselect-input" />
<input matInput
(input)="setGroupsPreselectValue($event.target?.value)"
data-automation-id="app-group-preselect-input" />
</mat-form-field>
<mat-checkbox class="app-preselect-value" (change)="onChangeGroupValidation($event)">
{{ 'PEOPLE_GROUPS_CLOUD.PRESELECT_VALIDATION' | translate }}
</mat-checkbox>
<mat-checkbox
data-automation-id="app-group-readonly"
value="{{ groupReadonly }}"
(change)="onChangeGroupReadonly($event)">
{{ 'PEOPLE_GROUPS_CLOUD.READONLY_MODE' | translate }}
</mat-checkbox>
</div>
<div>
<adf-cloud-group [mode]="groupMode" [roles]="groupRoles" [appName]="groupAppName" [preSelectGroups]="preSelectGroup"
(selectGroup)="onSelectGroup($event)" (removeGroup)="onRemoveGroup($event)"></adf-cloud-group>
<adf-cloud-group
[mode]="groupMode"
[readOnly]="groupReadonly"
[validate]="groupPreselectValidation"
[roles]="groupRoles"
[appName]="groupAppName"
[preSelectGroups]="preSelectGroup"
(warning)="onGroupsWarning($event)"></adf-cloud-group>
</div>
<div class="adf-group-list" *ngIf="canShowGroupList()">
<div class="app-group-list" *ngIf="groupMode === 'multiple'">
<h4>{{ 'PEOPLE_GROUPS_CLOUD.ALL_PRESELECTED_GROUPS' | translate }}</h4>
<mat-list role="list">
<mat-list-item *ngFor="let item of preSelectGroup" role="listitem">
<mat-icon mat-list-icon>group</mat-icon>
{{ item.name }}
</mat-list-item>
</mat-list>
<div *ngIf="invalidGroups.length > 0">
<h4>{{ 'PEOPLE_GROUPS_CLOUD.INVALID_GROUPS' | translate }} <mat-icon>warning</mat-icon> </h4>
<mat-list role="list">
<mat-list-item *ngFor="let invalidGroup of invalidGroups" role="listitem">
<mat-icon mat-list-icon>group</mat-icon>
{{invalidGroup?.name}}
</mat-list-item>
</mat-list>
</div>
</div>
</mat-card-content>
</mat-card>
@@ -1,4 +1,4 @@
.adf {
.app {
&-section {
mat-card-title {
font-size:18px;
@@ -14,7 +14,7 @@
mat-card-content {
.adf-preselect-value {
.app-preselect-value {
margin-right: 15px;
min-width: 25%;
@@ -16,9 +16,9 @@
*/
import { Component, ViewEncapsulation } from '@angular/core';
import { PeopleCloudComponent, GroupCloudComponent } from '@alfresco/adf-process-services-cloud';
import { ComponentSelectionMode } from '@alfresco/adf-process-services-cloud';
import { MatRadioChange, MatCheckboxChange } from '@angular/material';
import { IdentityGroupModel } from '@alfresco/adf-core';
import { IdentityGroupModel, IdentityUserModel } from '@alfresco/adf-core';
@Component({
selector: 'app-people-groups-cloud',
@@ -32,73 +32,83 @@ export class PeopleGroupCloudDemoComponent {
DEFAULT_GROUP_PLACEHOLDER: string = `[{"id": "1", "name":"activitiUserGroup"}]`;
DEFAULT_PEOPLE_PLACEHOLDER: string = `[{"id": "1", email": "user@user.com", "firstName":"user", "lastName": "lastName", "username": "user"}]`;
peopleMode: string = PeopleCloudComponent.MODE_SINGLE;
preSelectUsers: string[] = [];
peopleMode: ComponentSelectionMode = 'single';
preSelectUsers: IdentityUserModel[] = [];
invalidUsers: IdentityUserModel[] = [];
peopleRoles: string[] = [];
peopleAppName: string;
peopleFilterMode: string = this.DEFAULT_FILTER_MODE;
peoplePreselectValidation: Boolean = false;
peoplePreselectValidation = false;
groupPreselectValidation = false;
peopleReadonly = false;
groupReadonly = false;
groupMode: string = GroupCloudComponent.MODE_SINGLE;
groupMode: ComponentSelectionMode = 'single';
preSelectGroup: IdentityGroupModel[] = [];
selectedGroupList: IdentityGroupModel[] = [];
invalidGroups: IdentityGroupModel[] = [];
groupRoles: string[];
groupAppName: string;
groupFilterMode: string = this.DEFAULT_FILTER_MODE;
setPeoplePreselectValue(event: any) {
this.preSelectUsers = this.getArrayFromString(event.target.value);
setPeoplePreselectValue(value: string): void {
this.preSelectUsers = this.getArrayFromString(value);
}
setGroupsPreselectValue(event: any) {
this.preSelectGroup = this.getArrayFromString(event.target.value);
setGroupsPreselectValue(value: string): void {
this.preSelectGroup = this.getArrayFromString(value);
}
setPeopleRoles(event: any) {
this.peopleRoles = this.getArrayFromString(event.target.value);
setPeopleRoles(value: string): void {
this.peopleRoles = this.getArrayFromString(value);
}
setGroupRoles(event: any) {
this.groupRoles = this.getArrayFromString(event.target.value);
setGroupRoles(value: string): void {
this.groupRoles = this.getArrayFromString(value);
}
setPeopleAppName(event: any) {
this.peopleAppName = event.target.value;
setPeopleAppName(value: string): void {
this.peopleAppName = value;
}
setGroupAppName(event: any) {
this.groupAppName = event.target.value;
setGroupAppName(value: string): void {
this.groupAppName = value;
}
onChangePeopleMode(event: MatRadioChange) {
onChangePeopleMode(event: MatRadioChange): void {
this.peopleMode = event.value;
this.preSelectUsers = [...this.preSelectUsers];
}
onChangeGroupsMode(event: MatRadioChange) {
onChangePeopleReadonly(event: MatCheckboxChange): void {
this.peopleReadonly = event.checked;
}
onChangeGroupReadonly(event: MatCheckboxChange): void {
this.groupReadonly = event.checked;
}
onChangeGroupsMode(event: MatRadioChange): void {
this.groupMode = event.value;
this.preSelectGroup = [...this.preSelectGroup];
}
onChangePeopleFilterMode(event: MatRadioChange) {
onChangePeopleFilterMode(event: MatRadioChange): void {
this.peopleFilterMode = event.value;
this.resetPeopleFilter();
}
onChangeGroupsFilterMode(event: MatRadioChange) {
onChangeGroupsFilterMode(event: MatRadioChange): void {
this.groupFilterMode = event.value;
this.restGroupFilter();
}
isPeopleAppNameSelected() {
isPeopleAppNameSelected(): boolean {
return this.peopleFilterMode === 'appName';
}
isGroupAppNameSelected() {
isGroupAppNameSelected(): boolean {
return this.groupFilterMode === 'appName';
}
resetPeopleFilter() {
resetPeopleFilter(): void {
if (this.isPeopleAppNameSelected()) {
this.peopleRoles = [];
} else {
@@ -106,7 +116,7 @@ export class PeopleGroupCloudDemoComponent {
}
}
restGroupFilter() {
restGroupFilter(): void {
if (this.isGroupAppNameSelected()) {
this.groupRoles = [];
} else {
@@ -114,12 +124,23 @@ export class PeopleGroupCloudDemoComponent {
}
}
onChangePeopleValidation(event: MatCheckboxChange) {
onChangePeopleValidation(event: MatCheckboxChange): void {
this.peoplePreselectValidation = event.checked;
this.preSelectUsers = [...this.preSelectUsers];
}
isStringArray(str: string) {
onChangeGroupValidation(event: MatCheckboxChange): void {
this.groupPreselectValidation = event.checked;
}
onGroupsWarning(warning: any): void {
this.invalidGroups = warning.groups;
}
onUsersWarning(warning: any): void {
this.invalidUsers = warning.users;
}
isStringArray(str: string): boolean {
try {
const result = JSON.parse(str);
return Array.isArray(result);
@@ -128,46 +149,11 @@ export class PeopleGroupCloudDemoComponent {
}
}
private getArrayFromString(value: string) {
private getArrayFromString<T = any>(value: string): T[] {
if (this.isStringArray(value)) {
return JSON.parse(value);
} else {
return [];
}
}
canShowPeopleList() {
return this.peopleMode === GroupCloudComponent.MODE_MULTIPLE;
}
canShowGroupList() {
return this.groupMode === GroupCloudComponent.MODE_MULTIPLE;
}
onRemoveGroup(group: IdentityGroupModel) {
this.preSelectGroup = this.preSelectGroup.filter((value: any) => value.id !== group.id);
}
onSelectGroup(group: IdentityGroupModel) {
if (this.groupMode === GroupCloudComponent.MODE_MULTIPLE) {
this.preSelectGroup.push(group);
}
}
get peopleSingleMode() {
return PeopleCloudComponent.MODE_SINGLE;
}
get peopleMultipleMode() {
return PeopleCloudComponent.MODE_MULTIPLE;
}
get groupSingleMode() {
return GroupCloudComponent.MODE_SINGLE;
}
get groupMultipleMode() {
return GroupCloudComponent.MODE_MULTIPLE;
}
}
@@ -1,15 +1,14 @@
<button data-automation-id="go-back" mat-icon-button (click)="onGoBack()">
<mat-icon>arrow_back</mat-icon> Go Back
</button>
<h4 data-automation-id="process-details-header">Simple page to show the process instance: {{ processInstanceId }} of the app: {{ appName }}</h4>
<div class="adf-process-cloud-container">
<div class="app-process-cloud-container">
<adf-cloud-task-list
fxFlex
class="adf-cloud-layout-overflow"
class="app-cloud-layout-overflow"
[appName]="appName"
[processInstanceId]="processInstanceId"
(rowClick)="onRowClick($event)"
@@ -17,9 +16,8 @@
</adf-cloud-task-list>
<adf-cloud-process-header
class="adf-process-cloud-header"
class="app-process-cloud-header"
[appName]="appName"
[processInstanceId]="processInstanceId">
</adf-cloud-process-header>
</div>
@@ -1,4 +1,4 @@
.adf {
.app {
&-process-cloud-container {
display: flex;
}
@@ -11,4 +11,5 @@
margin-left: 10px;
width: 25%;
}
}
@@ -11,7 +11,7 @@
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-process-list #processCloud
fxFlex
class="adf-cloud-layout-overflow"
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[initiator]="editedFilter.initiator"
[processDefinitionId]="editedFilter.processDefinitionId"
@@ -24,7 +24,13 @@
[lastModifiedTo]="editedFilter.lastModifiedTo"
[sorting]="sortArray"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
[multiselect]="multiselect"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-process-list>
@@ -35,10 +41,28 @@
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
Selected rows:
<ul>
<li *ngFor="let row of selectedRows">{{ row.id }}</li>
</ul>
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows">{{ row.id }}</li>
</ul>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
</div>
</div>
</div>
@@ -24,7 +24,7 @@ import {
} from '@alfresco/adf-process-services-cloud';
import { ActivatedRoute, Router } from '@angular/router';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { UserPreferencesService, AppConfigService, DataCellEvent } from '@alfresco/adf-core';
import { CloudLayoutService, CloudServiceSettings } from './services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -55,11 +55,17 @@ export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
selectionMode: string;
selectedRows: string[] = [];
testingMode: boolean;
actionMenu: boolean;
contextMenu: boolean;
actions: any[] = [];
selectedAction: { id: number, name: string, actionType: string};
selectedContextAction: { id: number, name: string, actionType: string};
processFilterProperties: any = { filterProperties: [], sortProperties: [], actions: [] };
processDetailsRedirection: boolean;
editedFilter: ProcessFilterCloudModel;
private performAction$ = new Subject<any>();
private onDestroy$ = new Subject<boolean>();
constructor(
@@ -89,6 +95,7 @@ export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
this.cloudLayoutService.settings$
.pipe(takeUntil(this.onDestroy$))
.subscribe(settings => this.setCurrentSettings(settings));
this.performContextActions();
}
ngOnDestroy() {
@@ -102,6 +109,9 @@ export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
this.processDetailsRedirection = settings.processDetailsRedirection;
this.actionMenu = settings.actionMenu;
this.contextMenu = settings.contextMenu;
this.actions = settings.actions;
}
}
@@ -140,4 +150,41 @@ export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
this.resetSelectedRows();
this.selectedRows = nodes.map((node) => node.obj.entry);
}
onShowRowActionsMenu(event: DataCellEvent) {
event.value.actions = this.actions;
}
onShowRowContextMenu(event: DataCellEvent) {
event.value.actions = this.actions.map((action) => {
return {
data: event.value.row['obj'],
model: action,
subject: this.performAction$
};
});
}
onExecuteRowAction(row: any) {
const value = row.value.row['obj'].entry;
const action = row.value.action;
this.selectedAction = {id: value.id, name: value.name, actionType: action.title};
}
performContextActions() {
this.performAction$
.pipe(takeUntil(this.onDestroy$))
.subscribe((action: any) => {
if (action) {
this.onExecuteContextAction(action);
}
});
}
onExecuteContextAction(contextAction: any) {
const value = contextAction.data.entry;
const action = contextAction.model;
this.selectedContextAction = {id: value.id, name: value.name, actionType: action.title};
}
}
@@ -20,10 +20,13 @@ import { BehaviorSubject } from 'rxjs';
export interface CloudServiceSettings {
multiselect: boolean;
actionMenu: boolean;
contextMenu: boolean;
testingMode: boolean;
taskDetailsRedirection: boolean;
processDetailsRedirection: boolean;
selectionMode: string;
actions: any[];
}
export interface FilterSettings {
@@ -32,6 +35,17 @@ export interface FilterSettings {
key?: string;
}
export class ActionMenuModel {
constructor(
public key: string,
public icon: string,
public title: string,
public visible?: boolean,
public disabled?: boolean
) { }
}
@Injectable({
providedIn: 'root'
})
@@ -39,10 +53,13 @@ export class CloudLayoutService {
private settings: CloudServiceSettings = {
multiselect: false,
actionMenu: false,
contextMenu: false,
testingMode: false,
taskDetailsRedirection: true,
processDetailsRedirection: true,
selectionMode: 'single'
selectionMode: 'single',
actions: []
};
taskFilter$ = new BehaviorSubject<FilterSettings>({index: 0});
@@ -1,7 +1,13 @@
<div fxFlex fxLayout="column" class="adf-settings-container">
<div fxFlex fxLayout="column" class="app-settings-container">
<mat-slide-toggle [color]="'primary'" [checked]="multiselect" (change)="toggleMultiselect()" data-automation-id="multiSelection">
{{ 'SETTINGS_CLOUD.MULTISELECTION' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="actionMenu" (change)="toggleActionMenu()" data-automation-id="actionmenu">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="contextMenu" (change)="toggleContextMenu()" data-automation-id="contextmenu">
{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="testingMode" (change)="toggleTestingMode()" data-automation-id="testingMode">
{{ 'SETTINGS_CLOUD.TESTING_MODE' | translate }}
</mat-slide-toggle>
@@ -21,4 +27,45 @@
</mat-option>
</mat-select>
</mat-form-field>
<mat-card *ngIf="actionMenu || contextMenu">
<mat-card-header>
<mat-card-title>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TITLE' | translate }}</mat-card-title>
</mat-card-header>
<mat-card-content>
<form [formGroup]="actionMenuForm" fxLayout="row" fxLayoutAlign="space-around center" fxLayoutGap="20px">
<mat-form-field fxFlex="23%">
<input matInput formControlName="key" placeholder="{{ 'SETTINGS_CLOUD.ACTION.KEY' | translate }}">
</mat-form-field>
<mat-form-field fxFlex="23%">
<input matInput formControlName="title" placeholder="{{ 'SETTINGS_CLOUD.ACTION.TITLE' | translate }}">
</mat-form-field>
<mat-form-field fxFlex="23%">
<input matInput formControlName="icon" placeholder="{{ 'SETTINGS_CLOUD.ACTION.ICON' | translate }}"I>
</mat-form-field>
<mat-checkbox formControlName="visible">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_VISIBLE' | translate }}
</mat-checkbox>
<mat-checkbox formControlName="disabled">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_DISABLE' | translate }}
</mat-checkbox>
<button mat-raised-button (click)="addAction()">
{{ 'SETTINGS_CLOUD.ACTION.ADD_BUTTON' | translate }}
</button>
</form>
<div *ngIf="actions.length > 0">
<mat-chip-list #chipList>
<mat-chip *ngFor="let action of actions" [removable]="true">
{{action.title}}
<mat-icon
matChipRemove
(click)="removeAction(action)">
cancel
</mat-icon>
</mat-chip>
</mat-chip-list>
</div>
</mat-card-content>
</mat-card>
</div>
@@ -1,7 +1,7 @@
.adf-settings-container {
.app-settings-container {
padding: 20px 30px;
}
.adf-settings-container mat-form-field {
.app-settings-container mat-form-field {
max-width: 200px;
}
@@ -16,9 +16,10 @@
*/
import { Component, OnInit, OnDestroy } from '@angular/core';
import { CloudLayoutService } from '../services/cloud-layout.service';
import { CloudLayoutService, ActionMenuModel } from '../services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
import { FormGroup, FormControl } from '@angular/forms';
@Component({
selector: 'app-cloud-settings',
@@ -29,6 +30,9 @@ export class CloudSettingsComponent implements OnInit, OnDestroy {
private onDestroy$ = new Subject<boolean>();
multiselect: boolean;
actionMenu: boolean;
contextMenu: boolean;
actions: ActionMenuModel[] = [];
selectionMode: string;
testingMode: boolean;
taskDetailsRedirection: boolean;
@@ -40,6 +44,14 @@ export class CloudSettingsComponent implements OnInit, OnDestroy {
{ value: 'multiple', title: 'Multiple' }
];
actionMenuForm = new FormGroup({
key: new FormControl(''),
title: new FormControl(''),
icon: new FormControl(''),
visible: new FormControl(true),
disabled: new FormControl(false)
});
constructor(private cloudLayoutService: CloudLayoutService) { }
ngOnInit() {
@@ -61,6 +73,9 @@ export class CloudSettingsComponent implements OnInit, OnDestroy {
this.selectionMode = settings.selectionMode;
this.taskDetailsRedirection = settings.taskDetailsRedirection;
this.processDetailsRedirection = settings.processDetailsRedirection;
this.actionMenu = settings.actionMenu;
this.contextMenu = settings.contextMenu;
this.actions = settings.actions;
}
}
@@ -88,9 +103,35 @@ export class CloudSettingsComponent implements OnInit, OnDestroy {
this.setSetting();
}
toggleActionMenu() {
this.actionMenu = !this.actionMenu;
this.setSetting();
}
toggleContextMenu() {
this.contextMenu = !this.contextMenu;
this.setSetting();
}
addAction() {
this.actions.push(<ActionMenuModel> this.actionMenuForm.value);
this.actionMenuForm.get('key').reset();
this.actionMenuForm.get('title').reset();
this.actionMenuForm.get('icon').reset();
this.setSetting();
}
removeAction(removedAction: ActionMenuModel) {
this.actions = this.actions.filter((action: ActionMenuModel) => action.key !== removedAction.key);
this.setSetting();
}
setSetting() {
this.cloudLayoutService.setCurrentSettings({
multiselect: this.multiselect,
actionMenu: this.actionMenu,
contextMenu: this.contextMenu,
actions: this.actions,
testingMode: this.testingMode,
selectionMode: this.selectionMode,
taskDetailsRedirection: this.taskDetailsRedirection,
@@ -20,6 +20,7 @@ import { CommonModule } from '@angular/common';
import { CloudSettingsComponent } from './cloud-settings.component';
import { MatDialogModule, MatInputModule, MatSelectModule, MatSlideToggleModule } from '@angular/material';
import { CoreModule } from '@alfresco/adf-core';
import { FlexLayoutModule } from '@angular/flex-layout';
@NgModule({
imports: [
@@ -28,7 +29,8 @@ import { CoreModule } from '@alfresco/adf-core';
MatDialogModule,
MatInputModule,
MatSelectModule,
MatSlideToggleModule
MatSlideToggleModule,
FlexLayoutModule
],
declarations: [ CloudSettingsComponent ],
exports: [ CommonModule, CloudSettingsComponent]
@@ -5,5 +5,6 @@
[variables]="variables"
(error)="openSnackMessage($event)"
(success)="onStartProcessSuccess()"
(formContentClicked)="onFormContentClicked($event)"
(cancel)="onCancelStartProcess()">
</adf-cloud-start-process>
@@ -19,6 +19,7 @@ import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService, AppConfigService } from '@alfresco/adf-core';
import { CloudLayoutService } from './services/cloud-layout.service';
import { PreviewService } from 'app/services/preview.service';
@Component({
templateUrl: './start-process-cloud-demo.component.html',
@@ -34,6 +35,7 @@ export class StartProcessCloudDemoComponent implements OnInit {
constructor(private appConfig: AppConfigService,
private cloudLayoutService: CloudLayoutService,
private route: ActivatedRoute,
private previewService: PreviewService,
private notificationService: NotificationService,
private router: Router) {
}
@@ -61,4 +63,8 @@ export class StartProcessCloudDemoComponent implements OnInit {
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(event.response.body.entry.message);
}
onFormContentClicked(resourceClicked: any) {
this.previewService.showResource(resourceClicked.nodeId);
}
}
@@ -8,8 +8,7 @@
[taskId]="taskId"
(cancelClick)="goBack()"
(taskCompleted)="onTaskCompleted()"
(taskClaimed)="onTaskClaimed()"
(taskUnclaimed)="onTaskUnclaimed()"
(formContentClicked)="onFormContentClicked($event)"
(formSaved)="onFormSaved()">
</adf-cloud-task-form>
</div>
@@ -1,5 +1,5 @@
.adf {
.app {
&-task-detail-container {
display: flex;
@@ -19,6 +19,7 @@ import { Component, ViewChild } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
import { TaskHeaderCloudComponent } from '@alfresco/adf-process-services-cloud';
import { PreviewService } from 'app/services/preview.service';
@Component({
templateUrl: './task-details-cloud-demo.component.html',
@@ -35,7 +36,8 @@ export class TaskDetailsCloudDemoComponent {
constructor(
private route: ActivatedRoute,
private router: Router,
private notificationService: NotificationService
private notificationService: NotificationService,
private previewService: PreviewService
) {
this.route.params.subscribe((params) => {
this.taskId = params.taskId;
@@ -58,16 +60,8 @@ export class TaskDetailsCloudDemoComponent {
this.goBack();
}
onTaskClaimed() {
this.taskHeader.ngOnInit();
}
onTaskUnclaimed() {
this.taskHeader.ngOnInit();
}
onFormContentClicked(resourceId) {
this.router.navigate([`/cloud/${this.appName}/task-details/${this.taskId}/files/${resourceId.nodeId}/view`]);
onFormContentClicked(resourceClicked: any) {
this.previewService.showResource(resourceClicked.nodeId);
}
onFormSaved() {
@@ -0,0 +1,27 @@
<h2>{{ 'APP_LAYOUT.TASK_HEADER_CLOUD.COMPONENT_NAME' | translate }}</h2>
<mat-form-field class="app-appName-input">
{{ 'APP_LAYOUT.TASK_HEADER_CLOUD.APP_NAME_INPUT' | translate }}
<input matInput
[type]="'text'"
[formControl]="appNameFormControl"
(change)="updateTaskHeader()">
</mat-form-field>
<mat-form-field class="app-taskId-input">
{{ 'APP_LAYOUT.TASK_HEADER_CLOUD.TASK_ID_INPUT' | translate }}
<input matInput
[type]="'text'"
[formControl]="taskIdFormControl"
(change)="updateTaskHeader()">
</mat-form-field>
<mat-error *ngIf="errorMessage">{{errorMessage}}</mat-error>
<div>
<adf-cloud-task-header #taskHeader
[appName]="appName"
[taskId]="taskId"
(error)="onError($event)">
</adf-cloud-task-header>
</div>
@@ -0,0 +1,16 @@
.app {
&-appName-input {
width: 500px;
margin-right: 50px;
}
&-taskId-input {
width: 500px;
}
&-find-task-button {
background-color: #ff9800;
margin-left: 30px;
}
}
@@ -0,0 +1,49 @@
/*!
* @license
* Copyright 2019 Alfresco Software, Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { Component, ViewChild } from '@angular/core';
import { TaskHeaderCloudComponent } from '@alfresco/adf-process-services-cloud';
import { FormControl } from '@angular/forms';
@Component({
templateUrl: './task-header-cloud-demo.component.html',
styleUrls: ['./task-header-cloud-demo.component.scss']
})
export class TaskHeaderCloudDemoComponent {
@ViewChild('taskHeader')
taskHeader: TaskHeaderCloudComponent;
appName: string;
taskId: string;
errorMessage;
appNameFormControl = new FormControl('');
taskIdFormControl = new FormControl('');
constructor() {}
updateTaskHeader() {
this.errorMessage = undefined;
this.appName = this.appNameFormControl.value;
this.taskId = this.taskIdFormControl.value;
}
onError(error) {
this.errorMessage = error;
}
}
@@ -11,7 +11,7 @@
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-task-list #taskCloud
fxFlex
class="adf-cloud-layout-overflow"
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[processDefinitionId]="editedFilter.processDefinitionId"
[processInstanceId]="editedFilter.processInstanceId"
@@ -27,8 +27,15 @@
[createdDate]="editedFilter.createdDate"
[dueDate]="editedFilter.dueDate"
[sorting]="sortArray"
[standalone]="editedFilter.standalone"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)"
#taskCloud>
@@ -40,10 +47,28 @@
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
Selected rows:
<ul>
<li *ngFor="let row of selectedRows" [attr.data-automation-id]="row.id">{{ row.name }}</li>
</ul>
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows" [attr.data-automation-id]="row.id">{{ row.name }}</li>
</ul>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span [attr.data-automation-id]="selectedAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span [attr.data-automation-id]="selectedAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span [attr.data-automation-id]="selectedContextAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span [attr.data-automation-id]="selectedContextAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
</div>
</div>
</div>
@@ -17,7 +17,7 @@
import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';
import { TaskListCloudComponent, TaskListCloudSortingModel, TaskFilterCloudModel } from '@alfresco/adf-process-services-cloud';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { UserPreferencesService, AppConfigService, DataCellEvent } from '@alfresco/adf-core';
import { ActivatedRoute, Router } from '@angular/router';
import { CloudLayoutService } from './services/cloud-layout.service';
import { Subject } from 'rxjs';
@@ -48,10 +48,16 @@ export class TasksCloudDemoComponent implements OnInit, OnDestroy {
filterId;
multiselect: boolean;
selectedRows: string[] = [];
actionMenu: boolean;
contextMenu: boolean;
actions: any[] = [];
selectedAction: { id: number, name: string, actionType: string};
selectedContextAction: { id: number, name: string, actionType: string};
testingMode: boolean;
selectionMode: string;
taskDetailsRedirection: boolean;
private performAction$ = new Subject<any>();
private onDestroy$ = new Subject<boolean>();
constructor(
@@ -82,6 +88,7 @@ export class TasksCloudDemoComponent implements OnInit, OnDestroy {
this.cloudLayoutService.settings$
.pipe(takeUntil(this.onDestroy$))
.subscribe(settings => this.setCurrentSettings(settings));
this.performContextActions();
}
ngOnDestroy() {
@@ -95,6 +102,9 @@ export class TasksCloudDemoComponent implements OnInit, OnDestroy {
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
this.taskDetailsRedirection = settings.taskDetailsRedirection;
this.actionMenu = settings.actionMenu;
this.contextMenu = settings.contextMenu;
this.actions = settings.actions;
}
}
@@ -128,4 +138,41 @@ export class TasksCloudDemoComponent implements OnInit, OnDestroy {
this.router.navigate([`/cloud/${this.appName}/tasks/`], { queryParams: filterAction.filter });
}
}
onShowRowActionsMenu(event: DataCellEvent) {
event.value.actions = this.actions;
}
onShowRowContextMenu(event: DataCellEvent) {
event.value.actions = this.actions.map((action) => {
return {
data: event.value.row['obj'],
model: action,
subject: this.performAction$
};
});
}
onExecuteRowAction(row: any) {
const value = row.value.row['obj'].entry;
const action = row.value.action;
this.selectedAction = {id: value.id, name: value.name, actionType: action.title};
}
performContextActions() {
this.performAction$
.pipe(takeUntil(this.onDestroy$))
.subscribe((action: any) => {
if (action) {
this.onExecuteContextAction(action);
}
});
}
onExecuteContextAction(contextAction: any) {
const value = contextAction.data.entry;
const action = contextAction.model;
this.selectedContextAction = {id: value.id, name: value.name, actionType: action.title};
}
}
@@ -1,5 +1,5 @@
<div>
<mat-nav-list class="adf-list-confgurations">
<mat-nav-list class="app-list-confgurations">
<mat-list-item (click)="appConfigClick()">
<a matLine id="adf-app-conf">App Config Editor</a>
@@ -32,12 +32,12 @@
<div>
<ngx-monaco-editor id="adf-code-configuration-editor"
class="adf-file-editor"
class="app-file-editor"
[options]="editorOptions"
[(ngModel)]="code"
(onInit)="onInit($event)">
</ngx-monaco-editor>
<div class="adf-list-confgurations-buttons">
<div class="app-list-confgurations-buttons">
<button mat-raised-button id="adf-configuration-save" (click)="onSave()" color="primary">
Save
</button>
@@ -1,15 +1,15 @@
.adf-file-editor {
.app-file-editor {
height: 500px;
width: 65%;
float: left;
}
.adf-list-confgurations {
.app-list-configurations {
float: left;
width: 30%;
}
.adf-list-confgurations-buttons {
.app-list-configurations-buttons {
width: 200px;
margin-left: 30%;
float: left;
@@ -8,13 +8,13 @@
<h2>Plain picker</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
dropdownHideMyFiles: {{dropdownHideMyFiles}}
</label>
</mat-panel-description>
</mat-expansion-panel-header>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[currentFolderId]="'-root-'">
</adf-content-node-selector-panel>
@@ -26,13 +26,13 @@
<h2>Hide My files</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
My Files site will be hided from dropdown
</label>
</mat-panel-description>
</mat-expansion-panel-header>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[currentFolderId]="'-root-'"
[dropdownHideMyFiles]="true">
@@ -45,7 +45,7 @@
<h2>Custom Site List</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
Adding a custom site list
</label>
</mat-panel-description>
@@ -54,7 +54,7 @@
<div>
<mat-list>
<h3 mat-subheader>Add Site</h3>
<form class="adf-content-node-selector-demo-example-form">
<form class="app-content-node-selector-demo-example-form">
<mat-form-field>
<label>Site Guid</label>
<input matInput [(ngModel)]="customSideGuid" [ngModelOptions]="{standalone: true}">
@@ -79,7 +79,7 @@
</div>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[currentFolderId]="'-root-'"
[dropdownSiteList]="customSites">
@@ -92,7 +92,7 @@
<h2>Row Filtering</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
Will automatically filter the row on the list
</label>
</mat-panel-description>
@@ -105,7 +105,7 @@
Slide Folders
</mat-slide-toggle>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[rowFilter]="rowFilterFunction"
[currentFolderId]="'-root-'">
@@ -118,7 +118,7 @@
<h2>Exclude Site Content</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
The exclude site content is filtered out from the list
</label>
</mat-panel-description>
@@ -137,7 +137,7 @@
Show Folders
</mat-slide-toggle>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[rowFilter]="rowFilterFunction"
[excludeSiteContent]="excludeSiteContentList"
@@ -151,7 +151,7 @@
<h2>Custom Image Resolving</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
A function to manage the way folder/file icons and thumbnails are resolved
</label>
</mat-panel-description>
@@ -161,7 +161,7 @@
Add Custom Images Resolver
</mat-slide-toggle>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[imageResolver]="customImageResolver"
[currentFolderId]="'-root-'">
@@ -174,12 +174,12 @@
<h2>Set Page Size</h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
Number of items shown per page in the list. actual page {{actualPageSize}}
</label>
</mat-panel-description>
</mat-expansion-panel-header>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[currentFolderId]="'-root-'"
[pageSize]="actualPageSize"
@@ -193,14 +193,14 @@
<h2>Is Valid Selection Function </h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
Function used to decide if the selected node has permission to be selected
</label>
</mat-panel-description>
</mat-expansion-panel-header>
<label>Only folder starting with the letter 'a' or 'A' are valid selections</label>
<label>Actual Selection is : {{validSelection}}</label>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
(select)="onNodeSelect($event)"
[isSelectionValid]="customIsValidFunction"
@@ -214,13 +214,13 @@
<h2>BreadCrumb Transform Function </h2>
</mat-panel-title>
<mat-panel-description>
<label class="adf-content-node-selector-demo-basic-label">
<label class="app-content-node-selector-demo-basic-label">
Transformation to be performed on the chosen/folder node before building the breadcrumb UI
</label>
</mat-panel-description>
</mat-expansion-panel-header>
<label>Folder starting with letter 'd' or 'D' won't be displayed in the breadcrumb dropdown</label>
<div class="adf-content-node-selector-demo-basic-table">
<div class="app-content-node-selector-demo-basic-table">
<adf-content-node-selector-panel
[breadcrumbTransform]="customBreadcrumbFunction"
[currentFolderId]="'-root-'">
@@ -1,4 +1,4 @@
.adf-content-node-selector-demo {
.app-content-node-selector-demo {
&-main {
display: flex;
@@ -18,7 +18,7 @@
import { Component, ViewEncapsulation } from '@angular/core';
import { SitePaging, SiteEntry, MinimalNodeEntryEntity } from '@alfresco/js-api';
import { ContentNodeDialogService, ShareDataRow, RowFilter } from '@alfresco/adf-content-services';
import { DataRow, DataColumn, ThumbnailService } from '@alfresco/adf-core';
import { ThumbnailService } from '@alfresco/adf-core';
@Component({
templateUrl: './content-node-selector.component.html',
@@ -95,7 +95,7 @@ export class ContentNodeSelectorComponent {
return showNode;
}
customImageResolverExample(row: DataRow, col: DataColumn) {
customImageResolverExample() {
return this.thumbnailService.getMimeTypeIcon('video/quicktime');
}
@@ -16,7 +16,7 @@
[data]="dataForCopy">
<data-columns>
<data-column key="id" title="Id" [copyContent]="true"></data-column>
<data-column key="name" title="Name" class="adf-full-width name-column" [copyContent]="false"></data-column>
<data-column key="name" title="Name" class="app-full-width name-column" [copyContent]="false"></data-column>
<data-column key="createdBy" title="Created By"></data-column>
<data-column key="json" type="json" title="Json" [copyContent]="true"></data-column>
</data-columns>
@@ -16,8 +16,7 @@
*/
import { Component, Input } from '@angular/core';
import { DataColumn, DataRow } from '@alfresco/adf-core';
import { ObjectDataTableAdapter } from '@alfresco/adf-core';
import { DataColumn, DataRow, ObjectDataTableAdapter } from '@alfresco/adf-core';
export class FilteredDataAdapter extends ObjectDataTableAdapter {
@@ -18,9 +18,10 @@
[selectionMode]="selectionMode"
[multiselect]="multiselect"
[actions]="true"
[resolverFn]="resolver"
rowStyleClass="custom-row-style"
(showRowActionsMenu)="onShowRowActionsMenu($event)" (executeRowAction)="onExecuteRowAction($event)"
(row-click)="onRowClick($event)" (row-dblclick)="onRowDblClick($event)">
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(executeRowAction)="onExecuteRowAction($event)">
<!-- HTML column definition demo -->
<!--
<data-columns>
@@ -28,7 +29,11 @@
<data-column key="id" title="Id"></data-column>
<data-column key="createdOn" title="Created"></data-column>
<data-column key="name" title="Name" class="adf-full-width name-column"></data-column>
<data-column key="createdBy.name" title="Created By"></data-column>
<data-column type="text" key="createdBy.name" title="Created By"></data-column>
<data-column type="text" key="users" title="Users"></data-column>
<data-column key="status" title="Status">
<ng-template let-value="value">{{value | json }}</ng-template>
</data-column>
</data-columns>
-->
</adf-datatable>
@@ -16,8 +16,16 @@
*/
import { Component, Input } from '@angular/core';
import { LogService, DataColumn, DataRow } from '@alfresco/adf-core';
import { DataCellEvent, DataRowActionEvent, DataSorting, ObjectDataColumn, ObjectDataRow, ObjectDataTableAdapter } from '@alfresco/adf-core';
import {
DataCellEvent,
DataColumn,
DataRow,
DataRowActionEvent,
DataSorting,
ObjectDataColumn,
ObjectDataRow,
ObjectDataTableAdapter
} from '@alfresco/adf-core';
export class FilteredDataAdapter extends ObjectDataTableAdapter {
@@ -71,10 +79,24 @@ export class DataTableComponent {
email: 'admin@alfresco.com'
};
constructor(private logService: LogService) {
constructor() {
this.reset();
}
resolver(row: DataRow, col: DataColumn): any {
const value = row.getValue(col.key);
if (col.key === 'users') {
return (value || []).map(user => `${user.firstName} ${user.lastName}`).toString();
}
if (col.key === 'status') {
const users = row.getValue('users');
return (value || []).map((status, index) => ({ 'name': `${users[index].firstName} ${users[index].lastName}`, status }));
}
return value;
}
/* spellchecker: disable */
reset() {
this.data = new FilteredDataAdapter(
@@ -90,7 +112,21 @@ export class DataTableComponent {
createdOn: new Date(2016, 6, 2, 15, 8, 1),
createdBy: this._createdBy,
icon: 'material-icons://folder_open',
json: null
json: null,
users: [
{
firstName: 'Super',
lastName: 'Man'
},
{
firstName: 'Iron',
lastName: 'Man'
}
],
status: [
'I am here to save the world.. By world means AMERICA',
'That nobody is John Wick…'
]
},
{
id: 2,
@@ -98,7 +134,21 @@ export class DataTableComponent {
createdOn: new Date(2016, 6, 2, 15, 8, 2),
createdBy: this._createdBy,
icon: 'material-icons://accessibility',
json: null
json: null,
users: [
{
firstName: 'Mister',
lastName: 'Bean'
},
{
firstName: 'Doctor',
lastName: 'Strange'
}
],
status: [
'I am here to save the world.. By world means AMERICA',
'That nobody is John Wick…'
]
},
{
id: 3,
@@ -106,7 +156,21 @@ export class DataTableComponent {
createdOn: new Date(2016, 6, 2, 15, 8, 3),
createdBy: this._createdBy,
icon: 'material-icons://alarm',
json: null
json: null,
users: [
{
firstName: 'Thunder',
lastName: 'Thor'
},
{
firstName: 'Marvel',
lastName: 'Avenger'
}
],
status: [
'I am here to save the world.. By world means AMERICA',
'That nobody is John Wick…'
]
},
{
id: 4,
@@ -120,10 +184,45 @@ export class DataTableComponent {
createdOn: new Date(2016, 6, 2, 15, 8, 4),
createdBy: {
name: 'Felipe',
lastname: 'Melo'
lastName: 'Melo'
},
icon: 'material-icons://alarm'
}
},
users: [
{
firstName: 'Spider',
lastName: 'Man'
},
{
firstName: '17',
lastName: 'Again'
}
],
status: [
'I am here to save the world.. By world means AMERICA',
'That nobody is John Wick…'
]
},
{
id: 5,
name: 'I am using custom resolver',
createdOn: new Date(2016, 6, 2, 15, 8, 4),
createdBy: this._createdBy,
icon: 'material-icons://person_outline',
users: [
{
firstName: 'Captain',
lastName: 'America'
},
{
firstName: 'John',
lastName: 'Wick'
}
],
status: [
'I am here to save the world.. By world means AMERICA',
'That nobody is John Wick…'
]
}
],
[
@@ -132,7 +231,9 @@ export class DataTableComponent {
{ type: 'date', key: 'createdOn', title: 'Created On', sortable: true, cssClass: 'adf-ellipsis-cell adf-expand-cell-2' },
{ type: 'text', key: 'name', title: 'Name', cssClass: 'adf-ellipsis-cell', sortable: true },
{ type: 'text', key: 'createdBy.name', title: 'Created By', sortable: true, cssClass: ''},
{ type: 'json', key: 'json', title: 'Json', cssClass: 'adf-expand-cell-2'}
{ type: 'json', key: 'json', title: 'Json', cssClass: 'adf-expand-cell-2'},
{ type: 'text', key: 'users', title: 'Users', cssClass: 'adf-expand-cell-2'},
{ type: 'json', key: 'status', title: 'Status', cssClass: 'adf-expand-cell-2'}
]
);
@@ -209,19 +310,9 @@ export class DataTableComponent {
onExecuteRowAction(event: DataRowActionEvent) {
const args = event.value;
this.logService.log(args.row);
this.logService.log(args.action);
window.alert(`My custom action: ${args.action.title}`);
}
onRowClick(event) {
this.logService.log(event);
}
onRowDblClick(event) {
this.logService.log(event);
}
toggleStickyHeader() {
this.stickyHeader = !this.stickyHeader;
}
@@ -55,7 +55,7 @@ export class ExtensionPresetsComponent implements OnInit, OnDestroy {
this.onDestroy$.complete();
}
trackById(index: number, obj: { id: string }) {
trackById(_: number, obj: { id: string }) {
return obj.id;
}
}

Some files were not shown because too many files have changed in this diff Show More