Compare commits

...
142 Commits
Author SHA1 Message Date
Denys Vuika 6cdae78cf2 extension loader accepts dynamic configurations 2019-05-16 12:43:22 +01:00
Marouan Bentaleb 39fe06ea1a [ADF-4541] Fix task-form-cloud-component.e2e.ts (#4731) 2019-05-16 11:49:45 +01:00
Denys Vuika 3aca244059 extensions: add missing service export 2019-05-16 10:46:11 +01:00
Marouan Bentaleb d8caf3b98c [ADF-4540] Fix task-list-properties.e2e.ts (#4730) 2019-05-16 10:27:37 +01:00
Silviu Popa cf68f656cf [NO_ISSUE] - fix unit test on process-services (#4732)
* [NO_ISSUE] - fix unit test on process-services

* [NO_ISSUE] - lint

* remove unused code
2019-05-16 10:09:26 +01:00
Marouan Bentaleb c9bc63bc3c [ADF-4538] Fix start-task-custom-app-cloud.e2e.ts (#4729) 2019-05-16 09:40:45 +01:00
Silviu Popa 55f920fbb4 [ADF-4521] Form - Multilingual support (#4715)
Maurizio says : YES
2019-05-15 15:59:50 +01:00
Silviu Popa b4e3a71bef [ADF-4269] ProcessCloud - fix start task with invalid Asignee or Candidat… (#4727)
* [ADF-4269] - prevent starting a task with invalid Asignee or CandidateUser

* [ADF-4269] - refractor people/group cloud

* [ADF-4269] - change docs
2019-05-15 15:49:46 +01:00
Silviu Popa 4a363c731b [ADF-4471] TaskCloud - disable editable fields when the task is unclaimed (#4680)
* [ADF-4471] TaskCloud - task header disabled when the task is unclaimed

* [ADF-4471] - fix unit test

* [ADF-4471] - pr changes

* [ADF-4471] - add return type
2019-05-14 15:30:35 +01:00
Silviu Popa d1bc5a608a [ADF-4389] StartProcessCloud - add validation for processName (#4707)
* [ADF-4389] StartProcessCloud - add validation for processName

* [ADF-4389] - change function definition name

* [ADF-4389] - add return type
2019-05-14 15:19:43 +01:00
Cilibiu Bogdan 164d398abc [ADF-4227] Material Dialog - change direction option based on textOrientation (#4716)
* change matDialog direction based on textOrientation

* move dialog providers to material.module

* extend initial options

* move UserPreferencesService from factory

* update module

* update test

* material dialog correct reference

* extend default global options

* tests
2019-05-14 12:52:03 +01:00
Cilibiu Bogdan de0f906163 [ADF-4543] Language Menu - set layout orientation (#4719)
* language entry interface

* pass language object

* set textOrientation

* tests

* update doc

* add rtl language
2019-05-14 12:45:05 +01:00
Cilibiu Bogdan 4f13dcc3e2 [ADF-4545] Context Menu - RTL support (#4722)
* set overlay direction

* test
2019-05-14 12:43:52 +01:00
Denys Vuika 1e4d024c08 Update site-permissions.e2e.ts 2019-05-14 12:26:56 +01:00
Denys Vuika ac224a0b82 [ADF-4489] metadata errors demoshell (#4720)
* raise errors in demo shell for metadata

* remove commented out code
2019-05-14 11:45:07 +01:00
Denys Vuika 60a122f844 disable flaky test 2019-05-14 11:02:09 +01:00
Denys Vuika 238a317f89 disable flaky test 2019-05-14 09:38:19 +01:00
Silviu Popa 96111f588a [ADF-4488] Form - Add dropdown-cloud widget (#4695)
* [ADF-4488] Form - Add dropdown cloud widget

* [ADF-4488] - add form style

* [ADF-4488] - revert formFieldOption change

* [ADF-4488] - PR changes

* [ADF-4488] - move dropdown widget into cloud module

* [ADF-4488] - PR changes and remove unused unit test

* [ADF-4488] - PR changes

* [ADF-4488] - PR changes

* [ADF-4488] - add multilingual support

* [ADF-4488] - PR changes
2019-05-14 09:15:15 +01:00
Denys Vuika 8985319f15 disable flaky e2e test 2019-05-13 15:43:08 +01:00
Denys Vuika cecc13093d disable flaky tests 2019-05-13 13:48:34 +01:00
Eugenio Romano 4d0b646717 Update protractor.conf.js 2019-05-13 08:06:22 +01:00
Eugenio Romano 00aac824c3 Update protractor.conf.js 2019-05-13 08:00:55 +01:00
Denys Vuika bbea17fe37 [ADF-4268] Info drawer fixes (#4709)
* show error popups

* proper error handling

* update tests

* update code as per review

* remove old implementation

* remove old code
2019-05-13 07:24:49 +01:00
davidcanonieto fc9f04c6c6 [ADF-4498] Disable Sticky header on Datatable if header is not visible (#4701)
* [ADF-4498] Disable Sticky header on Datatable if header is not visible

* [ADF-4498] Improve flag check
2019-05-13 07:02:36 +01:00
Eugenio Romano 898e3b5a80 [no-issue] Parallel run e2e and e2e common action refactoring (#4702) 2019-05-13 04:44:35 +02:00
Francesco Corti a48bfc3714 ADF 3.2.1 minor changes to documentation. (#4717) 2019-05-10 12:17:15 +01:00
Francesco Corti 9ebebbb860 Better descriptions into the release notes (#4718)
Better descriptions into the release notes about languages availability
2019-05-10 12:16:38 +01:00
Silviu Popa ead22d9e3c [ADF-4473] TaskCloud - add priority numeric validation (#4684)
* [ADF-4473] TaskCloud - add priority numeric validation

* [ADF-4473] - change validation conditiion

* [ADF-4473] - add return type

* [ADF-4473] - fix unit test
2019-05-09 17:48:23 +01:00
Eugenio Romano 028e2eb981 release note 3.2.1 2019-05-09 15:05:08 +01:00
Eugenio Romano 56982a02b8 Release 3.2.1 2019-05-09 14:34:00 +01:00
davidcanonieto 77109ae59a [ADF-4476] Unify layout for start process/task components (#4699) 2019-05-08 23:07:08 +01:00
Maurizio Vitale 32135e3cbc Fix the context name (#4710) 2019-05-08 19:57:20 +01:00
Maurizio Vitale c0e2429de3 Cloud script - Add users to the deploy phase (#4704)
* Add user and admin to the deploy phase

* Add user and admin to the deploy phase
E
2019-05-07 19:11:38 +01:00
davidcanonieto 7bc99d492a [ADF-4442] Show whole app config in config editor (#4700) 2019-05-07 17:34:59 +01:00
Silviu Popa 5bb8912651 [ADF-3192] Form - fix dropdown field alignment (#4685)
* [ADF-3192] Form - fix dropdown field alignment

* [ADF-3192] - reove unused style
2019-05-07 17:34:08 +01:00
davidcanonieto 9d0e9ec219 [ADF-4467] Fix Upload File Widget layout (#4675)
* [ADF-4467] Fix Upload File Widget layout

* [ADF-4467] Refactor content services upload button
2019-05-07 17:32:35 +01:00
Denys Vuika 0e2e5e35a0 [ADF-3126] i18n support for info drawer tabs (#4698)
* [ADF-3126] i18n support for info drawer tabs

* fix tests

* code fixes
2019-05-07 17:31:22 +01:00
Denys Vuika 58f7a2d0ee update docs 2019-05-07 16:59:48 +01:00
Eugenio Romano bc71efaab3 Merge pull request #4697 from Alfresco/dev-dcano-ADF-4495
[ADF-4495] Fix Remove dependencies script
2019-05-07 16:50:11 +01:00
Denys Vuika 8db915bd2a [ADF-4484] Quick notifications (#4688)
* quick notifications (info, error, warning)

* update code docs
2019-05-07 13:25:12 +01:00
davidcanonieto b7e50dd9eb [ADF-4495] Fix Remove dependencies script 2019-05-07 11:13:15 +01:00
Eugenio Romano 5d49b494fa bump 3.2.0 (#4690) 2019-05-03 17:07:05 +01:00
Maurizio Vitale 4cfc54ad60 Improve the release note with activiti features (#4692) 2019-05-03 15:24:47 +01:00
Eugenio Romano 42d02146fd [ADF-3.2.0] review link doc (#4689)
* review link doc
2019-05-03 14:30:35 +01:00
Eugenio Romano f40eb2560b Update RelNote320.md 2019-05-03 14:02:25 +01:00
Eugenio Romano 2e439bf076 Update RelNote320.md 2019-05-03 13:56:49 +01:00
Eugenio Romano 676efbf2fb Update RelNote320.md 2019-05-03 10:55:53 +01:00
Eugenio Romano f43789b7a7 Update RelNote320.md 2019-05-03 10:53:21 +01:00
Denys Vuika 2f126fe7fd minor a11y fix for header 2019-05-02 15:47:02 +01:00
davidcanonieto d6719c0b57 [ADF-4478] Fix layout container and empty template (#4683) 2019-05-02 15:00:09 +01:00
Eugenio Romano 6b1c60a5ae Update .travis.yml 2019-05-02 13:54:24 +01:00
Maurizio Vitale e88e0d9b45 [ADF-4409] ADF for Activiti Community - Be able to claim/release/complete task (#4677)
* Be able to claim/release/complete task for community
Be able to start a task/process
Fix unsubscribe on destroy

* Fix the construnctor
2019-05-02 14:30:38 +02:00
Eugenio Romano 9298e6762f Update package.json 2019-05-02 10:16:31 +01:00
Francesco Corti bbb28c9d68 Activiti 7 and ADF tutorial review. (#4681) 2019-05-02 10:15:06 +01:00
Francesco Corti 07da98e1bc Release Note for ADF 3.2 (initial version) (#4617)
* Release note for ADF 3.2.

* Release note for ADF 3.2.
2019-05-02 10:14:41 +01:00
Francesco Corti ad2fac15d8 Compatibility matrix for ADF 3.2. (#4679) 2019-05-02 10:14:03 +01:00
Francesco Corti 6eec485891 [ADF-4429] Process List Cloud - Remove the pagination parameters. (#4682) 2019-05-02 10:13:28 +01:00
Eugenio Romano 3afd2b24fc Update README.md 2019-05-02 10:12:41 +01:00
Eugenio Romano 0fa9b2fd6b Create license-info-v3.2.0.md 2019-05-02 10:11:47 +01:00
Eugenio Romano 1afcfa1d5a [LOC-119] i18n 3.2.0 (#4678)
* i18n 3.2.0

* i18n 3.2.0

* i18n 3.2.0
2019-05-01 15:52:06 +01:00
davidcanonieto a172543b8f [ADF-4455] Fix whitespaces trim in multivalue metadata field (#4663) 2019-05-01 14:12:09 +01:00
Deepak Paul 7016dabb6c [ADF-4454] Map upload field to UploadCloudWidget in task cloud form (#4672)
* [ADF-4454] Moved upload widget maping to task form

* Update community-task-details-cloud.component.ts
2019-05-01 13:02:16 +01:00
davidcanonieto 0c7581acba [ADF-4422] Fix unit/e2e tests (#4673)
* [ADF-4422] Unexclude C291783 e2e test

* [ADF-4422] Fix Edit process cloud unit test

* [ADF-4422] Fix spy not been called

* Fix unit test
2019-05-01 10:28:41 +01:00
Denys Vuika 55113f37b6 [ADF-4444] drag and drop fixes (#4674)
* more granular control over drag and drop

* fix performance, internal drop-zone directive
2019-04-30 14:53:36 +01:00
gmandakini 2edee23bdd automated ADF-4198 - Escape key doesn't work to close the user profile dialog. (#4671) 2019-04-30 14:51:29 +01:00
davidcanonieto a3487cd3b3 [ADF-4460] Fix for empty value upload widget on a form (#4670) 2019-04-30 11:05:25 +01:00
siva kumar 3291ecaccb [ADF-4432] TaskFormCloudComponent - should be read only if the task is unclaimed. (#4654)
* [ADF-4432] FormCloud - should be read only if the task is unclaimed.* Modifed formCloud component related claim/unclaim custom buttons.* Added unit tests to the recent changes* Created an component to project custom form outcomes.

* * Added documentation to the formcloudcustomoutcome component.
2019-04-30 10:21:37 +01:00
Silviu Popa 860529058c [ADF-4409] DemoShell - ADF compatibility with Activiti 7 (#4646)
* [ADF-4409] PorcessServicesCloud - add community page

* [ADF-4409] - add process and task details page

* [ADF-4409] fix lint and reset package-lock

* [ADF-4409] - PR changes

* [ADF-4409] -  PR changes

* [ADF-4409] - fix start task/process redirection

* [ADF-4409] - fix unit tests
2019-04-30 10:13:10 +01:00
Eugenio Romano 5f3d665ab5 improve check activiti log 2019-04-29 17:58:30 +01:00
davidcanonieto 2bc2f09525 [ADF-4445] Add showRefreshButton to TaskFormCloud component doc (#4666) 2019-04-29 14:55:45 +01:00
arditdomi 1658eb97e3 [ADF-4434] Remove unnecessary icon in custom empty content template (#4665)
* [ADF-4339] Fix documentList and ContentServices UI for IE11

* [ADF-4339] Fixed syntax mistake

* [ADF-4434] Remove unnecessary icon in custom empty content template
2019-04-29 14:54:17 +01:00
arditdomi 54a2b14285 [ADF-4339] Fix documentList and ContentServices UI for IE11 (#4660)
* [ADF-4339] Fix documentList and ContentServices UI for IE11

* [ADF-4339] Fixed syntax mistake
2019-04-29 11:20:09 +01:00
Eugenio Romano 8231a5a37e Improve recovery strategy Activiti 7 2019-04-26 18:15:31 +01:00
gmandakini f24245aa23 C307984 automated (#4657) 2019-04-26 17:22:22 +01:00
Eugenio Romano 934386fb16 fix update script travis configuration 2019-04-26 14:33:44 +01:00
davidcanonieto 669c64fb46 [ADF-4411] Keep js-api dependecy in remove script (#4661) 2019-04-26 13:37:30 +01:00
Marouan Bentaleb 9297c63a21 [ADF-4407] Automate test for user without permission redirection (#4612) 2019-04-26 02:37:14 +01:00
gmandakini 2ef34e2d89 C307975 automated (#4655) 2019-04-25 22:24:48 +01:00
davidcanonieto 2ae5452fe2 [ADF-4437][ADF-4445] Fix docs about Task Form Cloud component (#4656) 2019-04-25 22:23:42 +01:00
Eugenio Romano 7caf50b2a6 fix typeahead validation (#4653) 2019-04-25 19:57:58 +01:00
Eugenio Romano f94eb5872a [ADF-4405] [ADF-4423] Fix clipboard directive on json cell (#4643)
* [ADF-4405] [ADF-4423] Fix clipboard directive on json cell

* [ADF-4405] Fix unit tests

* [ADF-4405] Fix e2e test
2019-04-25 19:49:38 +01:00
davidcanonieto 37f52a139e [ADF-4411] Create script to remove Alfresco Dependencies from package (#4651)
* [ADF-4411] Create script to remove Alfresco Dependencies from package.json
2019-04-25 16:17:44 +01:00
Maurizio Vitale be49e72208 [ADF-4340] FormCloud - Be able to upload a file from the local source (#4647)
* Add a shiny upload button

* Fix tslint

* Enable the viewer on the content click

* Call the process storage in case the form has an upload

* Fix the lint

* Fix unit tests

* Fix tslint on unit tests

* Fix the lint

* Fix the lint
2019-04-25 15:23:07 +01:00
cristinaj b87c18bc13 [ADF-4388]Added edit task filter cloud component - taskId filter tests (#4596)
* Added edit task filter cloud component - taskId filter tests

* Update edit-task-filter-cloud-component.page.ts

* Fix tests

* Fix property test

* Fix lint issues
2019-04-25 10:41:59 +01:00
Cilibiu Bogdan 3b83539b13 [ADF-4227] Sidenav Layout - support direction (#4583)
* basic ui direction service

* direction property

* demo shell integration

* move the direction in up sidenav layout to allow also the header to reorganize
use the configuration editor to change rtl ltr
add documenation

* Update app.component.html

* fix unit tests

* fix overlay viewer e2e

* fix e2e
2019-04-25 00:48:41 +01:00
cristinaj 83cb98f435 Add complete task tests (#4639) 2019-04-25 00:27:45 +01:00
Eugenio Romano 0f63122a27 fix new merged process list selection test 2019-04-24 20:24:55 +01:00
cristinaj f2c954d911 [ADF-4028][ADF-4047]Add process list cloud selection tests (#4537)
* Add process list cloud selection tests

* Fix lint issues

* Fix lint issues

* Added columns to contentServicesPage

* Fix lint error.

* Add the possibility to test the selection mode for process details.
2019-04-24 18:00:52 +01:00
Eugenio Romano 453415d73b fix lint 2019-04-24 17:08:05 +01:00
Eugenio Romano 51e63d8f1c remove invalid test case 2019-04-24 15:34:27 +01:00
Eugenio Romano 90276dd498 improve recovery script 2019-04-24 14:13:08 +01:00
Eugenio Romano 88048e059b [ADF-4359] - Add the possibility to chose wich panel to show first in info-drawer (#4638)
* [ADF-4359] - Add the possibility to chose which panel to show first in info-drawer

* * docs added

* * e2e fixed
2019-04-24 13:56:38 +01:00
cristinaj db4d10137e [ADF-4310]Added sort tests for edit task filter cloud component (#4584)
* Added some tests

* Fix tests

* Add missing tests for sort properties.
2019-04-24 13:50:00 +01:00
dhrn 9866cf4d1d * fixing the existing behavior 2019-04-24 13:00:47 +05:30
dhrn 374da200d2 * e2e fixed 2019-04-24 12:02:59 +05:30
dhrn 262a038746 * docs added 2019-04-24 12:02:59 +05:30
dhrn c6933e169a [ADF-4359] - Add the possibility to chose which panel to show first in info-drawer 2019-04-24 12:02:59 +05:30
Eugenio Romano 32ba281b70 simpleapp upload 2019-04-23 23:41:44 +01:00
Eugenio Romano d4e7981b1d simpleapp rename 2019-04-23 23:41:19 +01:00
arditdomi a6552dbb17 [ADF-4387] Configuration option to change the dafault viewer zoom (#4645)
* [ADF-4387] Configuration option to change the dafault viewer zoom
2019-04-23 20:34:39 +01:00
Eugenio Romano d52671823e fix lint 2019-04-23 18:03:36 +01:00
Silviu Popa c9977c58fa [ADF-4198] - fix user info close on esc key (#4644) 2019-04-23 17:56:04 +01:00
arditdomi b371929170 [ADF-3876] StartTaskCloud - Be able to start a task with a form (#4590)
* [ADF-3876] Added form cloud model

* [ADF-3876] Added service to get forms

* [ADF-3876] Added form selection to start task

* [ADF-3876] Added tests

* [ADF-3876] StartTaskCloud - Be able to start a task with a form

* [ADF-3876] StartTaskCloud - Be able to start a task with a form

* [ADF-3876] StartTaskCloud - Be able to start a task with a form

* [ADF-3876] Added form cloud model

* [ADF-3876] Added service to get forms

* [ADF-3876] Added form selection to start task

* [ADF-3876] Added tests

* [ADF-3876] StartTaskCloud - Be able to start a task with a form

* [ADF-3876] StartTaskCloud - changed name to component

* [ADF-3876] StartTaskCloud - Renamed component

* Rename form-selector-cloud.component.md to form-definition-selector-cloud.component.md

* [ADF-3876] Improve and clean code and fix service

* [ADF-3876] Fix unit test

* Update app.module.ts

* fix module

* move components in the right folders

* fix e2e task list
2019-04-23 17:55:24 +01:00
Eugenio Romano 11688f5778 add 1 minute retry 2019-04-23 17:37:10 +01:00
Eugenio Romano d427e06136 Revert "[ADF-4405] [ADF-4423] Fix clipboard directive on json cell (#4623)" (#4642)
This reverts commit 630b1043a9.
2019-04-23 14:30:08 +01:00
Eugenio Romano 0dc28ad987 [NO-ISSUE] add check env is up also for CS ans PS (#4640)
* add check env is up also for CS ans PS

* remove logs
2019-04-23 14:27:45 +01:00
Andy Stark 2676fe6637 [ADF-4416] Added upgrade guide 3.1 -> 3.2 (#4641) 2019-04-23 14:27:01 +01:00
davidcanonieto 630b1043a9 [ADF-4405] [ADF-4423] Fix clipboard directive on json cell (#4623)
* [ADF-4405] [ADF-4423] Fix clipboard directive on json cell

* Update clipboard.directive.ts

* fix spell
2019-04-23 11:24:39 +01:00
Silviu Popa 834c32f23f [ADF-4403] ClipboardDirective - add default translation key and fix styling (#4610)
* [ADF-4403] ClipboardDirective - add default translation key and fix style on sticky header

* [ADF-4403] - lint

* [ADF-4403] - revert datatable style

* [ADF-4403] - fix unit tests

* [ADF-4403] - fix e2e tests
2019-04-23 11:00:46 +02:00
Eugenio Romano fafe80c021 less common priority value 2019-04-23 00:14:08 +01:00
Eugenio Romano 5c67547fd6 move metadata test in content service where they has to be 2019-04-23 00:01:30 +01:00
Eugenio Romano df26447701 Revert "[ADF-4359] - Add the possibility to chose wich panel to show first in info-drawer (#4632)" (#4637)
This reverts commit 6e4adfb09a.
2019-04-23 00:58:26 +02:00
dhrn 64391a48fa [ADF-4406] - Confirm Dialog doesn't support a third extra button option to be customised (#4608)
* [ADF-4406] - Confirm Dialog doesn't support a third extra button option to be customised

* * comments fixed

* * docs and test added
2019-04-23 00:43:10 +02:00
cristinaj b58e040d7e [ADF-4394]Add two more tests on copyContent (#4630)
* Add two more tests

* Update data-table-component.page.ts

* Fix lint issues
2019-04-22 23:43:56 +02:00
dhrn 6e4adfb09a [ADF-4359] - Add the possibility to chose wich panel to show first in info-drawer (#4632)
* [ADF-4359] - Add the possibility to chose which panel to show first in info-drawer

* * docs added
2019-04-22 19:38:35 +02:00
Silviu Popa 32647c8af5 [ADF-4430] Metadata- fix error message (#4635) 2019-04-22 19:19:39 +02:00
Eugenio Romano 54adfaa56f fail fast (#4633) 2019-04-22 02:49:28 +02:00
Eugenio Romano 46f7e98eca remove -bbinsights 2019-04-22 01:31:38 +01:00
Silviu Popa 03c9a1e5be [ADF-4420] TaskHeaderCloud - fix show endDate (#4631) 2019-04-22 02:31:00 +02:00
gmandakini e85b57876e Added a new LocalStorageUtil and using the setConfigMethod to set the local storage variables (#4575)
* added a new LocalStorageUtil and using the setConfigMethod to set the localstorage variables, instead of using hte settings ui page.

* linting fix

* fixing import paths

* update new path LocalStorageUtil

* fix problems after rebase

* fix async loadin and clear

* local storage fix

* fix lint

* fix cs tests

* fix tag navigation and rename file appNavigation to processTabNavigation

* fix lint

* fix process test

* fix lint

Signed-off-by: Eugenio Romano <eugenio.romano@alfresco.com>

* fix start process cloud

* inc timeout
2019-04-22 00:42:59 +02:00
Eugenio Romano 97ad54a4f8 [no-issue] fix test plus fix update script (#4629)
* fix test plus

* fix test lint

* increase timeout

* increase timeout
2019-04-19 19:53:45 +02:00
Eugenio Romano 01e4cf2871 speed up search test (#4626) 2019-04-18 18:12:49 +02:00
davidcanonieto 0b09af3ac6 [ADF-4291] Fix lastModifiedTo filter on processes (#4624) 2019-04-18 17:17:10 +02:00
Suzana Dirla 59eee6ebaf [ADF-4401] Fix DL issues because of nested 'adf-datatable-cell' items (#4615)
* [ADF-4401] remove classname from nested items - use 'adf-content-cell' instead

* [ADF-4401] some DL display fixes

- align header cells with content cells
- columns aligned on Trashcan DL
- ellipsis on long folder names inside the content node selector
- more width on highlight cell from search-results

* [ADF-4401] use 'adf-content-cell'

- to allow ellipsis to display when a parent has 'adf-ellipsis-cell' class

* [ADF-4401] remove not used styles

* [ADF-4401] rename scss classname to have 'adf-datatable' prefix

* [ADF-4401] Add documentation for datatable
2019-04-18 17:07:31 +02:00
Cilibiu Bogdan cc53d96698 [ADF-4410] Upload dialog - remove delete action of version upload (#4618)
* undo remove node version implementation

* clean up style

* version upload row style

* upload version row cells

* update tests

* fix aria label
2019-04-18 15:36:37 +02:00
Eugenio Romano 7826eea946 fix spell 2019-04-18 14:30:17 +01:00
Eugenio Romano 159e6a5c70 fix lint 2019-04-18 14:17:52 +01:00
Eugenio Romano 64be9e3624 [NO-ISSUE] Fix e2e test (#4621)
* fix sso, change timeout, parallel

* cange travis

* move name apps in resources file

* resources fix

* resources fix

* add sleep before search group

* add possibility to extend duration of snack-bar message from configuration

* fix unit test

* fix unit test

* remove timeout

* change timeout

* decrease message time

* add lint main branch travis

* reduce timeout

* add new check application presence

* change permission script
fix search selector

* fix travis conf

* check app environment and upload the app if abbsent

* fix cloud test

* remove duplicate

* restore ps test

* restore resources file

* fix e2e test

* process with variables missing

* test new conf travis

* fix lint

* fix spellcheck

* remove duplicate module

* fix ps module

* fix travis conf

* change check activiti env

* add concept of processes in resources
2019-04-18 13:31:42 +02:00
davidcanonieto 181cee72d6 [ADF-4364] Fix Back button action on Viewer Component (#4613)
* [ADF-3364] Fix Back button action on Viewer Component

* [ADF-4364] Fix Module providers

* [ADF-4364] Add unit tests

* [ADF-4364] Fix unit tests

* [ADF-4364] Fix lazy loading module of Viewer component
2019-04-18 11:34:16 +02:00
davidcanonieto 8395b0baa5 [ADF-4219] Multivalue Metadata Card View (#4600)
* [ADF-4219] Multivalue Metadata  Card View

* [ADF-4219] Add documentation

* [ADF-4219] Improve code, docs and tests

* [ADF-4219] Fix e2e tests
2019-04-17 18:04:27 +02:00
Deepak Paul 21fd0299bd [ADF-4349] Cloud - task-form-component - Create a new component (#4620)
* [ADF-4349] Created task form cloud

* [ADF-4349] Used task-form in demo shell

* [ADF-4349] Used task directives

* [ADF-4349] Added tests

* [ADF-4349] Added documentation

* [ADF-4349] Added translation for buttons
2019-04-17 16:04:59 +01:00
cristinaj bcdfcee397 [ADF-4390]Added copyContent datatable cell tests (#4614)
* Modified data-table page on demo-shell to make copyClipboard possible to test

* Add a new page in demo-shell.
Add copyContent automated tests.
2019-04-17 12:10:36 +02:00
Silviu Popa 550c0006c9 [ADF-4394] - add suport for copy clipboard on JSON cell type (#4611)
* [ADF-4394] - add suport for copy clipboard  on JSON cell type

* [ADF-4394] - lint

* [ADF-4394] - change translation keys
2019-04-17 10:23:36 +01:00
Marouan Bentaleb e1a0475dfc [ADF-4396] Automation test for cancelling new version upload (#4607) 2019-04-16 13:19:08 +02:00
Cilibiu Bogdan 36ce9bce0d [ADF-4400] Versioning - restore does not update the document list (#4605)
* emit NodeInfo data on restore

* update row data and cache on node update event

* tests

* fix metadatat e2e
2019-04-16 11:59:37 +02:00
arditdomi 74e918d916 [ADF-4043] Demo Shell- Fix roles display (#4606) 2019-04-16 03:59:21 +02:00
Eugenio Romano 5e9cbe5690 fix clean script 2019-04-15 09:12:13 +01:00
Eugenio Romano b806556453 [no-issue] improve e2e timeout and names apps (#4604)
* fix sso, change timeout, parallel

* cange travis

* split viewer test

* timeot fix

* move name apps in resources file

* resources fix

* resources fix

* fix search default

* fix sso test

* fix test
2019-04-15 01:01:47 +02:00
Eugenio Romano 9accfcfb6e Update ADF packages version 3.2.0-beta6 (#4602) 2019-04-14 23:03:16 +02:00
davidcanonieto 4cc449dfbb [ADF-4376] Fix Sticky Header in Datatable Component (#4582)
* [ADF-4376] Fix Sticky Header in Datatable Component

* [ADF-4374] Rebase branch

* remove search from permissions test

* remove search from permissions test
2019-04-12 17:27:51 +01:00
Denys Vuika 4215666a96 allow setting custom data for ProfileState 2019-04-12 16:54:27 +01:00
Denys Vuika 578f00d270 extend ProfileState interface with optional groups 2019-04-12 16:45:04 +01:00
771 changed files with 30151 additions and 8819 deletions
+31 -139
View File
@@ -15,6 +15,7 @@ branches:
only:
- master
- development
- /.*old-env.*/
- /.*next-release.*/
- /.*beta.*/
- /.*greenkeeper.*/
@@ -24,8 +25,7 @@ stages:
- name: Warm Up Cache & Lint & Build Dist
- name: Unit test
- name: e2e Test
- name: Create Docker PR
- name: Deploy Docker PR
- name: Deploy PR
addons:
chrome: stable
@@ -42,153 +42,45 @@ before_install:
jobs:
include:
- stage: Warm Up Cache & Lint & Build Dist
name: Warm Up Cache & Lint & Build Dist
script:
if [[ $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/npm-build-all.sh || exit 1);
else
(./scripts/update-version.sh -gnu -alpha || exit 1);
npm install;
(./scripts/lint.sh || exit 1);
(rm -rf tmp && mkdir tmp);
(git merge-base origin/$TRAVIS_BRANCH HEAD > ./tmp/devhead.txt);
(./scripts/smart-build.sh -b $TRAVIS_BRANCH -gnu || exit 1);
fi;
(npm run build:dist || exit 1);
(./scripts/license-list-generator.sh || exit 1);
./scripts/travis/build/build.sh
- stage: Unit test
name: core and extensions
name: Unit test content
script: ./scripts/travis/unit-test/content.sh
- stage: Unit test
name: Unit test core extension demo
script: ./scripts/travis/unit-test/core-extension-demo.sh
- stage: Unit test
name: Unit test process process-cloud insights
script: ./scripts/travis/unit-test/process.sh
- stage: Deploy PR
name: Deploy PR
script:
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "core$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test core --watch=false || exit 1;
fi;
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "extensions$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test extensions --watch=false || exit 1;
fi;
- stage: Unit test
name: process-services and insights
script:
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "process-services$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test process-services --watch=false || exit 1;
fi;
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "insights$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test insights --watch=false || exit 1;
fi;
- stage: Unit test
name: content-services
script:
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "content-services$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test content-services --watch=false || exit 1;
fi;
- stage: Unit test
name: process-services-cloud
script:
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "process-services-cloud$" || $TRAVIS_PULL_REQUEST == "false" ]];
then
ng test process-services-cloud --watch=false || exit 1;
fi;
- stage: Unit test
name: demo-shell
script: if ([ "$TRAVIS_BRANCH" = "master" ]); then
(./scripts/start.sh -t -ss -si || exit 1;);
else
(./scripts/start.sh -dev -t -ss -si || exit 1;);
fi;
- stage: Update children projects dependency #Update generator-ng2-alfresco-app
./scripts/travis/deploy/deploy.sh
- stage: Update children projects dependency #Update children projects dependency
name: Update Generator
if: tag =~ .*beta.*
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n generator-ng2-alfresco-app
- stage: Update children projects dependency # Test Update alfresco-content-app
name: Update ACA
if: tag =~ .*beta.*
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n alfresco-content-app
- stage: Update children projects dependency # Test Update adf-app-manager-ui
name: Update adf-app-manager-ui
if: tag =~ .*beta.*
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n adf-app-manager-ui
- stage: Update children projects dependency # Test Update alfresco-ng2-components
name: Update alfresco-ng2-components
if: tag =~ .*beta.*
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n alfresco-ng2-components
- stage: Update children projects dependency # Test Update alfresco-modeler-app
name: Update alfresco modeler app
if: tag =~ .*beta.*
script: ./scripts/update-project.sh -gnu -t $GITHUB_TOKEN -n alfresco-modeler-app
- stage: e2e Test # Test core
script: ./scripts/travis/e2e/update-project.sh
- stage: e2e Test
name: core
script: ./scripts/travis/e2e/core-e2e.sh
- stage: e2e Test
name: content
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "core$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder core --skip-lint -save --use-dist || exit 1;);
fi;
- stage: e2e Test # Test process-services
name: process-services
./scripts/travis/e2e/content-services-e2e.sh
- stage: e2e Test
name: search
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "process-services$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder process-services --skip-lint --use-dist || exit 1;);
fi;
- stage: e2e Test # Test content-services
name: content-services
./scripts/travis/e2e/search-e2e.sh
- stage: e2e Test
name: process
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "content-services$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder content-services --skip-lint --use-dist || exit 1;);
fi;
- stage: e2e Test # Test search
name: search
./scripts/travis/e2e/process-services-e2e.sh
- stage: e2e Test
name: process Cloud
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "content-services$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder search --skip-lint --use-dist || exit 1;);
fi;
- stage: e2e Test # Test process-services-cloud
name: process-services-cloud
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "process-services-cloud$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST_BPM" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder process-services-cloud --skip-lint --use-dist || exit 1;);
fi;
- stage: e2e Test # Test insights
name: insights
script:
AFFECTED_E2E="$(./scripts/affected-folder.sh -b $TRAVIS_BRANCH -f "e2e")";
AFFECTED_LIBS="$(./scripts/affected-libs.sh -gnu -b $TRAVIS_BRANCH)";
if [[ $AFFECTED_LIBS =~ "process-services-cloud$" || $AFFECTED_E2E = "e2e" || $TRAVIS_PULL_REQUEST == "false" ]];
then
(./scripts/test-e2e-lib.sh -host localhost:4200 -proxy "$E2E_HOST" -u "$E2E_USERNAME" -p "$E2E_PASSWORD" -e "$E2E_EMAIL" --folder insights --skip-lint --use-dist -b || exit 1;);
fi;
- stage: Create Docker and Deploy Docker PR
script:
- if [ "$TRAVIS_PULL_REQUEST" != "false" ];
then
node ./scripts/move-dist-folder.js --base-href $TRAVIS_BUILD_NUMBER && (./scripts/pr-publish.sh -n $TRAVIS_BUILD_NUMBER -r $REPO_DOCKER -u $USERNAME_DOCKER -p $PASSWORD_DOCKER || exit 1);
fi;
- if [ "$TRAVIS_PULL_REQUEST" != "false" ];
then
(node --no-deprecation ./scripts/pr-deploy.js -n $TRAVIS_BUILD_NUMBER -u $RANCHER_TOKEN -p $RANCHER_SECRET -s $REPO_RANCHER --image "docker:$REPO_DOCKER/adf/demo-shell:$TRAVIS_BUILD_NUMBER" --env $ENVIRONMENT_NAME -r $ENVIRONMENT_URL || exit 1);
fi;
./scripts/travis/e2e/process-services-cloud-e2e.sh
# Send coverage data to codecov
after_success:
+3 -1
View File
@@ -125,7 +125,9 @@
"filedata",
"uncheck",
"subfolders",
"ECMBPM"
"ECMBPM",
"candidateuserapp",
"processwithvariables"
],
"dictionaries": [
"html",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "Alfresco-ADF-Angular-Demo",
"description": "Demo shell for Alfresco Angular components",
"version": "3.2.0-beta3",
"version": "3.2.1",
"author": "Alfresco Software, Ltd.",
"repository": {
"type": "git",
+7 -4
View File
@@ -7,7 +7,7 @@
"VERSIONS": "الإصدارات"
},
"HOME": {
"TITLE": "Alfresco المكونات الزاوّية لـ",
"TITLE": "المكونات الزاوّية لـ Alfresco",
"DOCUMENTATION": "الوثائق"
},
"LOGOUT": {
@@ -57,6 +57,7 @@
"APP_NAME": "تطبيق ADF التوضيحي",
"HOME": "رئيسية",
"NODE-SELECTOR": "محدد العقدة",
"SITES": "المواقع",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "مسار التنقل",
"NOTIFICATIONS": "إعلامات",
@@ -93,7 +94,8 @@
"ICONS": "أيقونات",
"PEOPLE_GROUPS_CLOUD": "سحابة الأشخاص/المجموعة",
"PEOPLE_CLOUD": "مكون سحابة الأشخاص",
"GROUPS_CLOUD": "مكون سحابة المجموعة"
"GROUPS_CLOUD": "مكون سحابة المجموعة",
"CONFIRM-DIALOG": "مربع حوار التأكيد"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "تحديد متعدد",
"TESTING_MODE": "وضع الاختبار",
"SELECTION_MODE": "وضع التحديد",
"TASK_DETAILS_REDIRECTION": "عرض تفاصيل المهمة عند النقر فوق المهمة"
"TASK_DETAILS_REDIRECTION": "عرض تفاصيل المهمة عند النقر فوق المهمة",
"PROCESS_DETAILS_REDIRECTION": "عرض تفاصيل العملية عند النقر على العملية"
}
}
}
+324
View File
@@ -0,0 +1,324 @@
{
"APP": {
"INFO_DRAWER": {
"TITLE": "Podrobnosti",
"COMMENTS": "Poznámky",
"PROPERTIES": "Vlastnosti",
"VERSIONS": "Verze"
},
"HOME": {
"TITLE": "Součásti Angular pro produkty Alfresco",
"DOCUMENTATION": "Dokumentace"
},
"LOGOUT": {
"TITLE": "Stránka pro odhlášení",
"SUB_TITLE": "Byli jste odhlášeni",
"LOGIN": "Přihlášení",
"HOME": "Domů"
},
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Povolit odstranění",
"SHOW_COMMENTS": "Zobrazit komentáře k verzím",
"ALLOW_DOWNLOAD": "Povolit stažení verze",
"READ_ONLY": "Pouze ke čtení",
"COMMENTS": "Zobrazit komentáře"
},
"PERSONAL-FILES": "Osobní soubory",
"WARN-MULTIPLE-UPLOADS": "Zobrazit upozornění v případě hromadného odesílání",
"CUSTOM-PERMISSION-MESSAGE": "Povolit přizpůsobené oznámení o oprávnění",
"MEDIUM-TIME-FORMAT": "Povolit střední formát času v seznamu dokumentů",
"SEARCH": {
"RADIO": {
"NONE": "Žádné",
"ALL": "Vše",
"FOLDER": "Složka",
"DOCUMENT": "Dokument"
}
}
},
"title": "Vítejte",
"VERSION": {
"NO_PERMISSION": "Nemáte potřebná oprávnění pro správu verzí tohoto obsahu",
"NO_PERMISSION_EVENT": "Nemáte oprávnění „${event.permission}“ potřebná k použití akce „${event.action}“ pro „${event.type}“",
"CHOOSE_FILE": "Vyberte soubor, jehož verze si chcete prohlédnout",
"DIALOG": {
"CLOSE": "Zavřít",
"TITLE": "Spravovat verze"
}
},
"METADATA": {
"DIALOG": {
"CLOSE": "Zavřít",
"TITLE": "Metadata"
}
},
"APP_LAYOUT": {
"APP": "Aplikace",
"APP_NAME": "Ukázková aplikace ADF",
"HOME": "Domů",
"NODE-SELECTOR": "Selektor uzlu",
"SITES": "Místa",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Popis cesty",
"NOTIFICATIONS": "Upozornění",
"TASK_LIST": "Seznam úkolů",
"PROCESS_LIST": "Seznam procesů",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "Zobrazení karty",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Přihlášení",
"CUSTOM_SOURCES": "Vlastní zdroje",
"DATATABLE": "Datová tabulka",
"DATATABLE_LAZY": "Datová tabulka (jednoduchá)",
"DOCUMENT_LIST": "Seznam dokumentů",
"TEMPLATE": "Šablona",
"FORM": "Formulář",
"FORM_LIST": "Seznam formulářů",
"FORM_LOADING": "Načítání formuláře",
"UPLOADER": "Nástroj pro odesílání",
"WEBSCRIPT": "Webový skript",
"TAG": "Tag",
"TRASHCAN": "Koš",
"SOCIAL": "Sociální",
"SETTINGS": "Nastavení",
"CONFIG-EDITOR": "Editor konfigurace",
"OVERLAY_VIEWER": "Zobrazení překrytí",
"ABOUT": "O aplikaci",
"SEARCH": "Rozšířené hledání",
"EXTENDED_SEARCH_QUERY_BODY": "Rozšířené hledání s textem dotazu",
"WORD_TO_SEARCH": "Hledat slovo",
"SEARCH_CREATED_BY": "Vytvořil(a)",
"SEARCH_SERVICE_APPROACH": "Označením této možnosti zakážete vstupní vlastnost a ke konfiguraci použijete službu",
"HEADER_DATA": "Data záhlaví",
"TREE_VIEW": "Stromová struktura",
"ICONS": "Ikony",
"PEOPLE_GROUPS_CLOUD": "Cloud osob/skupin",
"PEOPLE_CLOUD": "Součást cloudu osob",
"GROUPS_CLOUD": "Součást cloudu skupin",
"CONFIRM-DIALOG": "Dialogové okno s potvrzením"
},
"TRASHCAN": {
"ACTIONS": {
"DELETE_PERMANENT": "Trvale odstranit",
"RESTORE": "Obnovit"
},
"EMPTY_STATE": {
"TITLE": "Koš je prázdný",
"FIRST_TEXT": "Odstraněné položky se přesunou do koše.",
"SECOND_TEXT": "Vysypáním koše můžete položky trvale odstranit."
}
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Hromadný výběr (pomocí zaškrtávacích polí)",
"THUMBNAILS": "Povolit miniatury",
"ALLOW_DROP_FILES": "Povolit přetažení souborů do složky",
"MULTIPLE_FILE_UPLOAD": "Odeslání více souborů",
"FOLDER_UPLOAD": "Odeslat složku",
"CUSTOM_FILTER": "Vlastní filtr rozšíření",
"MAX_SIZE": "Filtr max. velikosti",
"ENABLE_VERSIONING": "Povolit více verzí",
"DESCRIPTION_UPLOAD": "Povolit odeslání",
"ENABLE_INFINITE_SCROLL": "Povolit nekonečné procházení",
"MULTISELECT_DESCRIPTION": "Pomocí klávesy Ctrl (Windows) nebo Cmd (Mac) můžete přepínat výběr více položek",
"RECENT": {
"EMPTY_STATE": {
"TITLE": "Seznam nedávných souborů je prázdný"
},
"TITLE": "Nedávné soubory"
},
"COLUMNS": {
"DISPLAY_NAME": "Zobrazované jméno",
"IS_LOCKED": "Zamknout",
"TAG": "Tag",
"NODE_ID": "ID uzlu",
"CREATED_BY": "Vytvořil(a)",
"CREATED_ON": "Vytvořeno",
"CREATED": "Vytvořeno",
"SIZE": "Velikost",
"DELETED_ON": "Odstraněno",
"DELETED_BY": "Odstranil(a)"
},
"TOOLBAR": {
"CARDVIEW": "Režim zobrazení karet",
"SHARE_EDIT": "Upravit nastavení",
"NEW_FOLDER": "Nová složka",
"EDIT_FOLDER": "Upravit složku",
"DOWNLOAD": "Stáhnout",
"DELETE": "Odstranit",
"FAVORITES": "Přidat mezi oblíbené",
"SHARE": "Sdílet",
"THEME": "Vybrat motiv",
"SHOW_VERSION": "Zobrazit verzi",
"HIDE_VERSION": "Skrýt verzi",
"LISTVIEW": "Režim zobrazení seznamu",
"CREATE_LIBRARY": "Vytvořit knihovnu"
},
"ACTIONS": {
"VERSIONS": "Spravovat verze",
"LOCK": "Zamknout",
"METADATA": "Informace",
"DOWNLOAD": "Stáhnout",
"PERMISSION": "Oprávnění",
"FOLDER": {
"COPY": "Kopírovat",
"MOVE": "Přesunout",
"DELETE": "Odstranit"
},
"DOCUMENT": {
"COPY": "Kopírovat",
"MOVE": "Přesunout",
"DELETE": "Odstranit",
"PROCESS_ACTION": "Zahájit proces"
}
}
},
"DATATABLE": {
"RESET_DEFAULT": "Obnovit výchozí",
"ADD_ROW": "Přidat řádek",
"REPLACE_ROWS": "Nahradit řádky",
"REPLACE_COLUMNS": "Nahradit sloupce",
"LOAD_NODE": "Načíst uzel",
"MULTISELECT": "Hromadný výběr",
"MULTISELECT_DESCRIPTION": "Pomocí klávesy Ctrl (Windows) nebo Cmd (Mac) můžete přepínat výběr více položek"
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "Nebyly zvoleny žádné zprávy. Vyberte zprávu ze seznamu"
},
"PS-TAB": {
"TASKS-TAB": "Úkoly",
"PROCESSES-TAB": "Proces",
"REPORTS-TAB": "Protokoly",
"SETTINGS-TAB": "Nastavení",
"START-TASK": "Zahájit úkol",
"START-PROCESS": "Zahájit proces",
"PROCESS-AUDIT-LOG": "Protokol auditu pro proces",
"TASK-AUDIT-LOG": "Protokol auditu pro úkol",
"TASK-SHOW-HEADER": "Zobrazit záhlaví podrobností"
},
"PS_CLOUD_TAB": {
"APPS_TAB": "Aplikace",
"SETTINGS_TAB": "Nastavení"
},
"FORM-LIST": {
"STORE": "Uložit",
"RESTORE": "Obnovit"
},
"FORM-LOADING": {
"FORM_DATA": "Data formuláře",
"FORM_DATA_MESSAGE": "Zadejte hodnoty do formuláře",
"TYPEAHEAD_PLACEHOLDER": "Začněte psát",
"RADIO_PLACEHOLDER": "Přepínač",
"SELECT_PLACEHOLDER": "Rozevírací seznam"
},
"LOGIN": {
"CONTENT_SERVICES": "Content Services",
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Zápatí přihlašování",
"SHOW_REMEMBERME": "Zobrazit tlačítko „Zapamatovat přihlášení“",
"SHOW_SUCCESS_ROUTE": "Zobrazit okna pro úspěšné přihlášení",
"CUSTOM_LOGO": "Vlastní logo"
},
"SEARCH": {
"RESULTS": "Výsledky hledání",
"NO_RESULT": "Nebyly nalezeny žádné výsledky",
"FACET_FIELDS": {
"TYPE": "1:Typ",
"SIZE": "2:Velikost",
"CREATOR": "3:Autor",
"MODIFIER": "4:Upravil(a)",
"CREATED": "5:Vytvořeno"
},
"FACET_QUERIES": {
"MY_FACET_QUERIES": "Moje dotazy na aspekty",
"CREATED_THIS_YEAR": "1.Vytvořeno tento rok",
"MIMETYPE": "2.Typ: HTML",
"XTRASMALL": "3.Velikost: extra malé",
"SMALL": "3.Velikost: malé",
"MEDIUM": "3.Velikost: střední",
"LARGE": "3.Velikost: velké",
"XTRALARGE": "3.Velikost: extra velké",
"XXTRALARGE": "3.Velikost: XX velké"
}
},
"SOCIAL": {
"LIKE": "Komponenta pro Líbí se mi",
"RATING": "Komponenta pro Hodnocení"
},
"TAG": {
"LIST": "Uvádět tagy Content Services",
"INSERT": "Vložit ID uzlu",
"NODE_LIST": "Řadit tagy dle ID uzlu"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "Dědění oprávnění",
"INHERITED_PERMISSIONS_BUTTON": "Oprávnění bylo zděděno"
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Vložit ID aplikace",
"APP_ID_TYPE_ERROR": "ID aplikace musí být číslo",
"NUMBER_TYPE_ERROR": "Hodnota musí být číslo",
"NUMBER_GREATER_THAN": "Hodnota musí být rovna nebo větší než {{ value }}"
},
"TOOLTIP_MESSAGE": {
"START_INPUT": "Počáteční strana"
}
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Vložit ID aplikace",
"APP_ID_TYPE_ERROR": "ID aplikace musí být číslo",
"NUMBER_GREATER_THAN": "Hodnota musí být rovna nebo větší než {{ value }}"
}
},
"GROUP-TITLE1-TRANSLATION-KEY": "Vlastní překlad názvu 1",
"GROUP-TITLE2-TRANSLATION-KEY": "Vlastní překlad názvu 2",
"ERROR_CONTENT": {
"507": {
"TITLE": "Disk ACS plný",
"DESCRIPTION": "Obsah přesahuje celkovou kvótu úložiště nastavenou pro síť nebo systém",
"SECONDARY_BUTTON": {
"TEXT": ""
},
"RETURN_BUTTON": {
"TEXT": "Zpět domů"
}
}
},
"PROCESS_LIST_CLOUD_DEMO": {
"TITLE": "Cloudová ukázka seznamu procesů",
"CUSTOMIZE_FILTERS": "Přizpůsobit filtr"
},
"TASK_LIST_CLOUD_DEMO": {
"CUSTOMIZE_FILTERS": "Přizpůsobit filtr"
},
"PEOPLE_GROUPS_CLOUD": {
"SINGLE": "Volba jedné položky",
"MULTI": "Volba více položek",
"PRESELECTED_VALUE": "Předvolená hodnota: ",
"ROLE": "Role: ",
"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"
}
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Hromadný výběr",
"TESTING_MODE": "Testovací režim",
"SELECTION_MODE": "Režim výběru",
"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"
}
}
+324
View File
@@ -0,0 +1,324 @@
{
"APP": {
"INFO_DRAWER": {
"TITLE": "Detaljer",
"COMMENTS": "Kommentarer",
"PROPERTIES": "Egenskaber",
"VERSIONS": "Versioner"
},
"HOME": {
"TITLE": "Angular-komponenter til Alfresco",
"DOCUMENTATION": "Dokumentation"
},
"LOGOUT": {
"TITLE": "Side til at logge af",
"SUB_TITLE": "Du er nu logget af",
"LOGIN": "Log ind",
"HOME": "Hjem"
},
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Tillad sletning",
"SHOW_COMMENTS": "Vis kommentarer til versioner",
"ALLOW_DOWNLOAD": "Aktivér versionsdownload",
"READ_ONLY": "Skrivebeskyttet",
"COMMENTS": "Vis kommentarer"
},
"PERSONAL-FILES": "Personlige filer",
"WARN-MULTIPLE-UPLOADS": "Vis advarsler for flere uploads.",
"CUSTOM-PERMISSION-MESSAGE": "Tillad meddelelse om brugerdefineret tilladelse",
"MEDIUM-TIME-FORMAT": "Tillad mellemlangt tidsformat for dokumentliste",
"SEARCH": {
"RADIO": {
"NONE": "Ingen",
"ALL": "Alle",
"FOLDER": "Mappe",
"DOCUMENT": "Dokument"
}
}
},
"title": "Velkommen",
"VERSION": {
"NO_PERMISSION": "Du har ikke tilladelse til at administrere versioner af dette indhold",
"NO_PERMISSION_EVENT": "Du har ikke tilladelsen ${event.permission} til at ${event.action} ${event.type}",
"CHOOSE_FILE": "Vælg en fil for at få vist dens versioner",
"DIALOG": {
"CLOSE": "Luk",
"TITLE": "Administrer versioner"
}
},
"METADATA": {
"DIALOG": {
"CLOSE": "Luk",
"TITLE": "Metadata"
}
},
"APP_LAYOUT": {
"APP": "App",
"APP_NAME": "ADF-demoapp",
"HOME": "Hjem",
"NODE-SELECTOR": "Nodevælger",
"SITES": "Websteder",
"CONTENT_SERVICES": "Indholdstjenester",
"BREADCRUMB": "Brødkrumme",
"NOTIFICATIONS": "Meddelelser",
"TASK_LIST": "Opgaveliste",
"PROCESS_LIST": "Procesliste",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "Kortvisning",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Log ind",
"CUSTOM_SOURCES": "Brugerdefinerede kilder",
"DATATABLE": "Datatabel",
"DATATABLE_LAZY": "Datatabel (Lazy)",
"DOCUMENT_LIST": "Dokumentliste",
"TEMPLATE": "Skabelon",
"FORM": "Formular",
"FORM_LIST": "Formularliste",
"FORM_LOADING": "Formular indlæses",
"UPLOADER": "Uploader",
"WEBSCRIPT": "Webscript",
"TAG": "Tag",
"TRASHCAN": "Papirkurv",
"SOCIAL": "Social",
"SETTINGS": "Indstillinger",
"CONFIG-EDITOR": "Konfigurationseditor",
"OVERLAY_VIEWER": "Overlejringsfremviser",
"ABOUT": "Om",
"SEARCH": "Udvidet søgning",
"EXTENDED_SEARCH_QUERY_BODY": "Udvidet søgning med forespørgselstekst",
"WORD_TO_SEARCH": "Søg efter ord",
"SEARCH_CREATED_BY": "Oprettet af",
"SEARCH_SERVICE_APPROACH": "Vælg dette felt for at deaktivere inputegenskaben og konfigurere ved hjælp af tjenesten",
"HEADER_DATA": "Headerdata",
"TREE_VIEW": "Trævisning",
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Person/gruppecloud",
"PEOPLE_CLOUD": "Personcloudkomponent",
"GROUPS_CLOUD": "Gruppecloudkomponent",
"CONFIRM-DIALOG": "Bekræftelsesdialogboks"
},
"TRASHCAN": {
"ACTIONS": {
"DELETE_PERMANENT": "Slet permanent",
"RESTORE": "Gendan"
},
"EMPTY_STATE": {
"TITLE": "Papirkurven er tom",
"FIRST_TEXT": "De elementer, du sletter, flyttes til papirkurven.",
"SECOND_TEXT": "Tøm papirkurven for at slette elementerne permanent."
}
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Vælg flere (med afkrydsningsfelter)",
"THUMBNAILS": "Aktivér miniaturevisninger",
"ALLOW_DROP_FILES": "Aktivér Slip filer i en mappe",
"MULTIPLE_FILE_UPLOAD": "Upload af flere filer",
"FOLDER_UPLOAD": "Upload af mappe",
"CUSTOM_FILTER": "Filter for brugerdefinerede udvidelser",
"MAX_SIZE": "Filtrer efter maksimal størrelse",
"ENABLE_VERSIONING": "Aktivér versionering",
"DESCRIPTION_UPLOAD": "Tillad upload",
"ENABLE_INFINITE_SCROLL": "Aktivér uendelig rulning",
"MULTISELECT_DESCRIPTION": "Brug Kommando (Mac) eller Ctrl (Windows) for at vælge flere elementer",
"RECENT": {
"EMPTY_STATE": {
"TITLE": "Listen over de seneste filer er tom"
},
"TITLE": "Seneste filer"
},
"COLUMNS": {
"DISPLAY_NAME": "Visningsnavn",
"IS_LOCKED": "Lås",
"TAG": "Tag",
"NODE_ID": "Node-id",
"CREATED_BY": "Oprettet af",
"CREATED_ON": "Oprettet den",
"CREATED": "Oprettet",
"SIZE": "Størrelse",
"DELETED_ON": "Slettet",
"DELETED_BY": "Slettet af"
},
"TOOLBAR": {
"CARDVIEW": "Kortvisning",
"SHARE_EDIT": "Rediger indstillinger",
"NEW_FOLDER": "Ny mappe",
"EDIT_FOLDER": "Rediger mappe",
"DOWNLOAD": "Download",
"DELETE": "Slet",
"FAVORITES": "Angiv som favorit",
"SHARE": "Del",
"THEME": "Vælg et tema",
"SHOW_VERSION": "Vis version",
"HIDE_VERSION": "Skjul version",
"LISTVIEW": "Listevisning",
"CREATE_LIBRARY": "Opret bibliotek"
},
"ACTIONS": {
"VERSIONS": "Administrer versioner",
"LOCK": "Lås",
"METADATA": "Oplysninger",
"DOWNLOAD": "Download",
"PERMISSION": "Tilladelse",
"FOLDER": {
"COPY": "Kopiér",
"MOVE": "Flyt",
"DELETE": "Slet"
},
"DOCUMENT": {
"COPY": "Kopiér",
"MOVE": "Flyt",
"DELETE": "Slet",
"PROCESS_ACTION": "Start proces"
}
}
},
"DATATABLE": {
"RESET_DEFAULT": "Nulstil til standard",
"ADD_ROW": "Tilføj række",
"REPLACE_ROWS": "Erstat rækker",
"REPLACE_COLUMNS": "Erstat kolonner",
"LOAD_NODE": "Indlæs node",
"MULTISELECT": "Vælg flere",
"MULTISELECT_DESCRIPTION": "Brug Kommando (Mac) eller Ctrl (Windows) for at vælge flere elementer"
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "Du skal vælge en rapport på listen til venstre"
},
"PS-TAB": {
"TASKS-TAB": "Opgaver",
"PROCESSES-TAB": "Proces",
"REPORTS-TAB": "Rapporter",
"SETTINGS-TAB": "Indstillinger",
"START-TASK": "Start opgave",
"START-PROCESS": "Start proces",
"PROCESS-AUDIT-LOG": "Procesovervågningslog",
"TASK-AUDIT-LOG": "Opgaveovervågningslog",
"TASK-SHOW-HEADER": "Vis detaljer for header"
},
"PS_CLOUD_TAB": {
"APPS_TAB": "App",
"SETTINGS_TAB": "Indstillinger"
},
"FORM-LIST": {
"STORE": "Gem",
"RESTORE": "Gendan"
},
"FORM-LOADING": {
"FORM_DATA": "Formulardata",
"FORM_DATA_MESSAGE": "Indtast værdier for at udfylde formularen",
"TYPEAHEAD_PLACEHOLDER": "Automatisk fuldførelse",
"RADIO_PLACEHOLDER": "Alternativknap",
"SELECT_PLACEHOLDER": "Rulleliste"
},
"LOGIN": {
"CONTENT_SERVICES": "Indholdstjenester",
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Sidefod til login",
"SHOW_REMEMBERME": "Vis Husk mig",
"SHOW_SUCCESS_ROUTE": "Vis succesrute",
"CUSTOM_LOGO": "Brugerdefineret logo"
},
"SEARCH": {
"RESULTS": "Søgeresultater",
"NO_RESULT": "Der blev ikke fundet nogen resultater",
"FACET_FIELDS": {
"TYPE": "1: Type",
"SIZE": "2: Størrelse",
"CREATOR": "3: Opretter",
"MODIFIER": "4: Modifikator",
"CREATED": "5: Oprettet"
},
"FACET_QUERIES": {
"MY_FACET_QUERIES": "Mine facetforespørgsler",
"CREATED_THIS_YEAR": "1. Oprettet i år",
"MIMETYPE": "2. Type: HTML",
"XTRASMALL": "3. Størrelse: xtra small",
"SMALL": "4. Størrelse: small",
"MEDIUM": "5. Størrelse: medium",
"LARGE": "6. Størrelse: large",
"XTRALARGE": "7. Størrelse: xtra large",
"XXTRALARGE": "8. Størrelse: XX large"
}
},
"SOCIAL": {
"LIKE": "Synes om-komponent",
"RATING": "Bedømmelse-komponent"
},
"TAG": {
"LIST": "Vis indholdstjenester for tags",
"INSERT": "Indsæt node-id",
"NODE_LIST": "Tagliste efter node-id"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "Nedarv tilladelse",
"INHERITED_PERMISSIONS_BUTTON": "Tilladelsen er nedarvet"
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Indsæt app-id",
"APP_ID_TYPE_ERROR": "App-id'et skal være et tal",
"NUMBER_TYPE_ERROR": "Værdien skal være et tal",
"NUMBER_GREATER_THAN": "Værdien skal være større end eller lig med {{ value }}"
},
"TOOLTIP_MESSAGE": {
"START_INPUT": "Startside"
}
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Indsæt app-id",
"APP_ID_TYPE_ERROR": "App-id'et skal være et tal",
"NUMBER_GREATER_THAN": "Værdien skal være større end eller lig med {{ value }}"
}
},
"GROUP-TITLE1-TRANSLATION-KEY": "Brugerdefineret titel oversættelse et",
"GROUP-TITLE2-TRANSLATION-KEY": "Brugerdefineret titel oversættelse to",
"ERROR_CONTENT": {
"507": {
"TITLE": "ACS-disken er fuld",
"DESCRIPTION": "Indholdet overskrider den generelle lagerkvotegrænse, der er konfigureret for netværket eller systemet",
"SECONDARY_BUTTON": {
"TEXT": ""
},
"RETURN_BUTTON": {
"TEXT": "Tilbage til forsiden"
}
}
},
"PROCESS_LIST_CLOUD_DEMO": {
"TITLE": "CLOUDDEMO AF PROCESLISTE",
"CUSTOMIZE_FILTERS": "Tilpas dit filter"
},
"TASK_LIST_CLOUD_DEMO": {
"CUSTOMIZE_FILTERS": "Tilpas dit filter"
},
"PEOPLE_GROUPS_CLOUD": {
"SINGLE": "Enkeltvalg",
"MULTI": "Multivalg",
"PRESELECTED_VALUE": "Forudvælg: ",
"ROLE": "Roller: ",
"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"
}
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Multivalg",
"TESTING_MODE": "Testtilstand",
"SELECTION_MODE": "Valgtilstand",
"TASK_DETAILS_REDIRECTION": "Vis opgavedetaljer på opgave ved at klikke",
"PROCESS_DETAILS_REDIRECTION": "Vis behandlingsdetaljer for processen ved at klikke"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "ADF-Demoanwendung",
"HOME": "Startseite",
"NODE-SELECTOR": "Node-Auswahl",
"SITES": "Sites",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Breadcrumb",
"NOTIFICATIONS": "Benachrichtigungen",
@@ -93,7 +94,8 @@
"ICONS": "Symbole",
"PEOPLE_GROUPS_CLOUD": "Personen-/Gruppen-Cloud",
"PEOPLE_CLOUD": "Personen-Cloud-Komponente",
"GROUPS_CLOUD": "Gruppen-Cloud-Komponente"
"GROUPS_CLOUD": "Gruppen-Cloud-Komponente",
"CONFIRM-DIALOG": "Bestätigungsdialog"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Mehrfachauswahl",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Auswahlmodus",
"TASK_DETAILS_REDIRECTION": "Bei Klicken auf Aufgabe Aufgabendetails einblenden"
"TASK_DETAILS_REDIRECTION": "Bei Klicken auf Aufgabe Aufgabendetails einblenden",
"PROCESS_DETAILS_REDIRECTION": "Bei Klicken auf Prozess Prozessdetails anzeigen"
}
}
+5 -5
View File
@@ -95,7 +95,8 @@
"PEOPLE_GROUPS_CLOUD": "People/Group Cloud",
"PEOPLE_CLOUD": "People Cloud Component",
"GROUPS_CLOUD": "Groups Cloud Component",
"CONFIRM-DIALOG": "Confirmation Dialog"
"CONFIRM-DIALOG": "Confirmation Dialog",
"COMMUNITY": "Community"
},
"TRASHCAN": {
"ACTIONS": {
@@ -179,9 +180,7 @@
"REPLACE_COLUMNS": "Replace columns",
"LOAD_NODE": "Load Node",
"MULTISELECT": "Multiselect",
"MULTISELECT_DESCRIPTION": "Use Cmd (Mac) or Ctrl (Windows) to toggle selection of multiple items",
"CLICK_TO_COPY": "Click to copy",
"SUCCESS_COPY": "Text copied to clipboard"
"MULTISELECT_DESCRIPTION": "Use Cmd (Mac) or Ctrl (Windows) to toggle selection of multiple items"
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "No report selected. Choose a report from the list"
@@ -320,6 +319,7 @@
"MULTISELECTION": "Multiselection",
"TESTING_MODE": "Testing Mode",
"SELECTION_MODE": "Selection Mode",
"TASK_DETAILS_REDIRECTION": "Display task details on task click"
"TASK_DETAILS_REDIRECTION": "Display task details on task click",
"PROCESS_DETAILS_REDIRECTION": "Display process details on process click"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "Aplicación ADF Demo",
"HOME": "Inicio",
"NODE-SELECTOR": "Selector de nodo",
"SITES": "Sitios",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Ruta de navegación",
"NOTIFICATIONS": "Notificaciones",
@@ -93,7 +94,8 @@
"ICONS": "Iconos",
"PEOPLE_GROUPS_CLOUD": "Personas/Grupos en la nube",
"PEOPLE_CLOUD": "Componente en la nube de personas",
"GROUPS_CLOUD": "Componente en la nube de grupos"
"GROUPS_CLOUD": "Componente en la nube de grupos",
"CONFIRM-DIALOG": "Cuadro de diálogo de confirmación"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Selección múltiple",
"TESTING_MODE": "Modo de prueba",
"SELECTION_MODE": "Modo de selección",
"TASK_DETAILS_REDIRECTION": "Mostrar detalles de la tarea haciendo clic en la tarea"
"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"
}
}
+324
View File
@@ -0,0 +1,324 @@
{
"APP": {
"INFO_DRAWER": {
"TITLE": "Tiedot",
"COMMENTS": "Kommentit",
"PROPERTIES": "Ominaisuudet",
"VERSIONS": "Versiot"
},
"HOME": {
"TITLE": "Angular-komponentit Alfrescolle",
"DOCUMENTATION": "Dokumentaatio"
},
"LOGOUT": {
"TITLE": "Uloskirjautumissivu",
"SUB_TITLE": "Olet nyt kirjautunut ulos",
"LOGIN": "Kirjaudu sisään",
"HOME": "Aloitussivu"
},
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Salli poistaminen",
"SHOW_COMMENTS": "Näytä kommentit versioissa",
"ALLOW_DOWNLOAD": "Ota version lataaminen käyttöön",
"READ_ONLY": "Vain luku",
"COMMENTS": "Näytä kommentit"
},
"PERSONAL-FILES": "Omat tiedostot",
"WARN-MULTIPLE-UPLOADS": "Näytä varoitus useille latauksille.",
"CUSTOM-PERMISSION-MESSAGE": "Muokkaa omaa oikeusilmoitusta",
"MEDIUM-TIME-FORMAT": "Ota Medium-aikamuoto käyttöön asiakirjaluettelossa",
"SEARCH": {
"RADIO": {
"NONE": "Ei mitään",
"ALL": "Kaikki",
"FOLDER": "Kansio",
"DOCUMENT": "Asiakirja"
}
}
},
"title": "Tervetuloa",
"VERSION": {
"NO_PERMISSION": "Sinulla ei ole oikeutta hallita tämän sisällön versioita",
"NO_PERMISSION_EVENT": "Sinulla ei ole oikeutta ${event.permission} tapahtumalle ${event.action} tapahtumatyypissä ${event.type}",
"CHOOSE_FILE": "Jos haluat nähdä tiedoston versiot, valitse haluamasi tiedosto",
"DIALOG": {
"CLOSE": "Sulje",
"TITLE": "Hallitse versioita"
}
},
"METADATA": {
"DIALOG": {
"CLOSE": "Sulje",
"TITLE": "Metatiedot"
}
},
"APP_LAYOUT": {
"APP": "Sovellus",
"APP_NAME": "ADF-demosovellus",
"HOME": "Aloitussivu",
"NODE-SELECTOR": "Solmuvalitsin",
"SITES": "Sivustot",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Siirtymispolku",
"NOTIFICATIONS": "Ilmoitukset",
"TASK_LIST": "Tehtäväluettelo",
"PROCESS_LIST": "Prosessiluettelo",
"PROCESS_CLOUD": "Prosessipilvi",
"CARD_VIEW": "Korttinäkymä",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Kirjaudu sisään",
"CUSTOM_SOURCES": "Omat lähteet",
"DATATABLE": "Tietotaulukko",
"DATATABLE_LAZY": "Tietotaulukko (Lazy)",
"DOCUMENT_LIST": "Asiakirjaluettelo",
"TEMPLATE": "Malli",
"FORM": "Lomake",
"FORM_LIST": "Lomakeluettelo",
"FORM_LOADING": "Lomakelataus",
"UPLOADER": "Lataustoiminto",
"WEBSCRIPT": "Verkkokomentosarja",
"TAG": "Tunniste",
"TRASHCAN": "Roskakori",
"SOCIAL": "Sosiaalinen",
"SETTINGS": "Asetukset",
"CONFIG-EDITOR": "Määrityseditori",
"OVERLAY_VIEWER": "Peittokatselutoiminto",
"ABOUT": "Tietoja",
"SEARCH": "Laajennettu haku",
"EXTENDED_SEARCH_QUERY_BODY": "Laajennettu haku kyselyn rungon avulla",
"WORD_TO_SEARCH": "Hakusana",
"SEARCH_CREATED_BY": "Tekijä:",
"SEARCH_SERVICE_APPROACH": "Jos haluat poistaa käytöstä annetun ominaisuuden ja määrittää palvelun avulla, valitse tämä",
"HEADER_DATA": "Otsikkotiedot",
"TREE_VIEW": "Puunäkymä",
"ICONS": "Kuvakkeet",
"PEOPLE_GROUPS_CLOUD": "Ihmispilvi/Ryhmäpilvi",
"PEOPLE_CLOUD": "Ihmispilvi-komponentti",
"GROUPS_CLOUD": "Ryhmäpilvi-komponentti",
"CONFIRM-DIALOG": "Vahvistusvalintaikkuna"
},
"TRASHCAN": {
"ACTIONS": {
"DELETE_PERMANENT": "Poista pysyvästi",
"RESTORE": "Palauta"
},
"EMPTY_STATE": {
"TITLE": "Roskakori on tyhjä",
"FIRST_TEXT": "Poistamasi kohteet siirretään roskakoriin.",
"SECOND_TEXT": "Jos haluat poistaa kohteet pysyvästi, tyhjennä roskakori."
}
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Monivalinta (valintaruuduilla)",
"THUMBNAILS": "Ota pikkukuvat käyttöön",
"ALLOW_DROP_FILES": "Ota tiedostojen kansioon pudottaminen käyttöön",
"MULTIPLE_FILE_UPLOAD": "Useiden tiedostojen lataaminen",
"FOLDER_UPLOAD": "Kansion lataaminen",
"CUSTOM_FILTER": "Mukautettu tiedostomuotosuodatin",
"MAX_SIZE": "Enimmäiskoon suodatin",
"ENABLE_VERSIONING": "Ota versionhallinta käyttöön",
"DESCRIPTION_UPLOAD": "Ota lataus käyttöön",
"ENABLE_INFINITE_SCROLL": "Ota rajaton vieritys käyttöön",
"MULTISELECT_DESCRIPTION": "Voit valita useita kohteita Cmd- (Mac) tai Ctrl-näppäimen (Windows) avulla",
"RECENT": {
"EMPTY_STATE": {
"TITLE": "Viimeisimpien tiedostojen luettelo on tyhjä"
},
"TITLE": "Viimeisimmät tiedostot"
},
"COLUMNS": {
"DISPLAY_NAME": "Näyttönimi",
"IS_LOCKED": "Lukitse",
"TAG": "Tunniste",
"NODE_ID": "Solmutunnus",
"CREATED_BY": "Tekijä:",
"CREATED_ON": "Luotu",
"CREATED": "Luotu",
"SIZE": "Koko",
"DELETED_ON": "Poistettu",
"DELETED_BY": "Poistaja:"
},
"TOOLBAR": {
"CARDVIEW": "Korttinäkymätila",
"SHARE_EDIT": "Muokkaa asetuksia",
"NEW_FOLDER": "Uusi kansio",
"EDIT_FOLDER": "Muokkaa kansiota",
"DOWNLOAD": "Lataa",
"DELETE": "Poista",
"FAVORITES": "Lisää suosikkeihin",
"SHARE": "Jaa",
"THEME": "Valitse teema",
"SHOW_VERSION": "Näytä versio",
"HIDE_VERSION": "Piilota versio",
"LISTVIEW": "Luettelonäkymätila",
"CREATE_LIBRARY": "Luo kirjasto"
},
"ACTIONS": {
"VERSIONS": "Hallitse versioita",
"LOCK": "Lukitse",
"METADATA": "Tiedot",
"DOWNLOAD": "Lataa",
"PERMISSION": "Oikeus",
"FOLDER": {
"COPY": "Kopioi",
"MOVE": "Siirrä",
"DELETE": "Poista"
},
"DOCUMENT": {
"COPY": "Kopioi",
"MOVE": "Siirrä",
"DELETE": "Poista",
"PROCESS_ACTION": "Käynnistä prosessi"
}
}
},
"DATATABLE": {
"RESET_DEFAULT": "Palauta oletukseen",
"ADD_ROW": "Lisää rivi",
"REPLACE_ROWS": "Korvaa rivejä",
"REPLACE_COLUMNS": "Korvaa sarakkeita",
"LOAD_NODE": "Lataa solmu",
"MULTISELECT": "Monivalinta",
"MULTISELECT_DESCRIPTION": "Voit valita useita kohteita Cmd- (Mac) tai Ctrl-näppäimen (Windows) avulla"
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "Yhtään raporttia ei ole valittuna. Valitse raportti luettelosta."
},
"PS-TAB": {
"TASKS-TAB": "Tehtävät",
"PROCESSES-TAB": "Prosessi",
"REPORTS-TAB": "Raportit",
"SETTINGS-TAB": "Asetukset",
"START-TASK": "Aloita tehtävä",
"START-PROCESS": "Käynnistä prosessi",
"PROCESS-AUDIT-LOG": "Prosessitarkastusloki",
"TASK-AUDIT-LOG": "Tehtävätarkastusloki",
"TASK-SHOW-HEADER": "Näytä tieto-otsikko"
},
"PS_CLOUD_TAB": {
"APPS_TAB": "Sovellus",
"SETTINGS_TAB": "Asetukset"
},
"FORM-LIST": {
"STORE": "Tallenna",
"RESTORE": "Palauta"
},
"FORM-LOADING": {
"FORM_DATA": "Lomaketiedot",
"FORM_DATA_MESSAGE": "Anna lomakkeeseen lisättävät arvot",
"TYPEAHEAD_PLACEHOLDER": "Typeahead",
"RADIO_PLACEHOLDER": "Valintanappi",
"SELECT_PLACEHOLDER": "Avattava valikko"
},
"LOGIN": {
"CONTENT_SERVICES": "Content Services",
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Kirjautumisalatunniste",
"SHOW_REMEMBERME": "Näytä Muista minut -toiminto",
"SHOW_SUCCESS_ROUTE": "Näytä onnistumispolku",
"CUSTOM_LOGO": "Oma logo"
},
"SEARCH": {
"RESULTS": "Hakutulokset",
"NO_RESULT": "Tuloksia ei löydy",
"FACET_FIELDS": {
"TYPE": "1: tyyppi",
"SIZE": "2: koko",
"CREATOR": "3: tekijä",
"MODIFIER": "4: muokkaaja",
"CREATED": "5: luotu"
},
"FACET_QUERIES": {
"MY_FACET_QUERIES": "Omat kyselyt",
"CREATED_THIS_YEAR": "1. Luotu tänä vuonna",
"MIMETYPE": "2. Tyyppi: HTML",
"XTRASMALL": "3. Koko: XS",
"SMALL": "4. Koko: S",
"MEDIUM": "5. Koko: M",
"LARGE": "6. Koko: L",
"XTRALARGE": "7. Koko: XL",
"XXTRALARGE": "8. Koko: XXL"
}
},
"SOCIAL": {
"LIKE": "Tykkäyskomponentti",
"RATING": "Arviokomponentti"
},
"TAG": {
"LIST": "Luettelotunnisteet Content Services",
"INSERT": "Lisää solmutunnus",
"NODE_LIST": "Tunnisteluettelo solmutunnuksen mukaan"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "Peri oikeus",
"INHERITED_PERMISSIONS_BUTTON": "Oikeus peritty"
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Lisää sovellustunnus",
"APP_ID_TYPE_ERROR": "Sovellustunnuksen täytyy olla numero",
"NUMBER_TYPE_ERROR": "Arvon täytyy olla numero",
"NUMBER_GREATER_THAN": "Arvon täytyy olla yhtä suuri tai suurempi kuin {{ value }}"
},
"TOOLTIP_MESSAGE": {
"START_INPUT": "Aloitussivu"
}
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Lisää sovellustunnus",
"APP_ID_TYPE_ERROR": "Sovellustunnuksen täytyy olla numero",
"NUMBER_GREATER_THAN": "Arvon täytyy olla yhtä suuri tai suurempi kuin {{ value }}"
}
},
"GROUP-TITLE1-TRANSLATION-KEY": "Oma otsikkokäännös yksi",
"GROUP-TITLE2-TRANSLATION-KEY": "Oma otsikkokäännös kaksi",
"ERROR_CONTENT": {
"507": {
"TITLE": "ACS-levy täynnä",
"DESCRIPTION": "Sisältö ylittää verkolle tai järjestelmälle määritetyn tallennustilan kokonaisrajoituksen",
"SECONDARY_BUTTON": {
"TEXT": ""
},
"RETURN_BUTTON": {
"TEXT": "Takaisin aloitussivulle"
}
}
},
"PROCESS_LIST_CLOUD_DEMO": {
"TITLE": "PROCESS LIST CLOUD DEMO",
"CUSTOMIZE_FILTERS": "Muokkaa suodatinta"
},
"TASK_LIST_CLOUD_DEMO": {
"CUSTOMIZE_FILTERS": "Muokkaa suodatinta"
},
"PEOPLE_GROUPS_CLOUD": {
"SINGLE": "Yksittäinen valinta",
"MULTI": "Monivalinta",
"PRESELECTED_VALUE": "Esivalittu: ",
"ROLE": "Roolit: ",
"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"
}
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Monivalinta",
"TESTING_MODE": "Testaustila",
"SELECTION_MODE": "Valintatila",
"TASK_DETAILS_REDIRECTION": "Näytä tehtävätiedot tehtävää napsauttamalla",
"PROCESS_DETAILS_REDIRECTION": "Näyttää prosessin tiedot prosessia napsautettaessa"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "Application Démo ADF",
"HOME": "Accueil",
"NODE-SELECTOR": "Sélecteur de nœud",
"SITES": "Sites",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Fil d'Ariane",
"NOTIFICATIONS": "Notifications",
@@ -93,7 +94,8 @@
"ICONS": "Icônes",
"PEOPLE_GROUPS_CLOUD": "Cloud des personnes/groupes",
"PEOPLE_CLOUD": "Composant cloud des personnes",
"GROUPS_CLOUD": "Composant cloud des groupes"
"GROUPS_CLOUD": "Composant cloud des groupes",
"CONFIRM-DIALOG": "Boîte de dialogue de confirmation"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Multisélection",
"TESTING_MODE": "Mode de test",
"SELECTION_MODE": "Mode de sélection",
"TASK_DETAILS_REDIRECTION": "Afficher les détails de la tâche en cliquant dessus"
"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"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "Applicazione demo ADF",
"HOME": "Home",
"NODE-SELECTOR": "Selezione nodo",
"SITES": "Siti",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Breadcrumb",
"NOTIFICATIONS": "Notifiche",
@@ -93,7 +94,8 @@
"ICONS": "Icone",
"PEOPLE_GROUPS_CLOUD": "Cloud persone/gruppi",
"PEOPLE_CLOUD": "Componente Cloud persone",
"GROUPS_CLOUD": "Componente Cloud gruppi"
"GROUPS_CLOUD": "Componente Cloud gruppi",
"CONFIRM-DIALOG": "Finestra di conferma"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Selezione multipla",
"TESTING_MODE": "Modalità di test",
"SELECTION_MODE": "Modalità di selezione",
"TASK_DETAILS_REDIRECTION": "Mostra dettagli compito dopo clic su compito"
"TASK_DETAILS_REDIRECTION": "Mostra dettagli compito dopo clic su compito",
"PROCESS_DETAILS_REDIRECTION": "Mostra i dettagli dopo il clic sul processo"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "ADF デモアプリケーション",
"HOME": "ホーム",
"NODE-SELECTOR": "ノードセレクター",
"SITES": "サイト",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "階層リンク",
"NOTIFICATIONS": "通知",
@@ -93,7 +94,8 @@
"ICONS": "アイコン",
"PEOPLE_GROUPS_CLOUD": "メンバー/グループのクラウド",
"PEOPLE_CLOUD": "メンバーのクラウドコンポーネント",
"GROUPS_CLOUD": "グループのクラウドコンポーネント"
"GROUPS_CLOUD": "グループのクラウドコンポーネント",
"CONFIRM-DIALOG": "確認ダイアログ"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "複数選択",
"TESTING_MODE": "テストモード",
"SELECTION_MODE": "選択モード",
"TASK_DETAILS_REDIRECTION": "タスクのクリック時にタスクの詳細を表示"
"TASK_DETAILS_REDIRECTION": "タスクのクリック時にタスクの詳細を表示",
"PROCESS_DETAILS_REDIRECTION": "プロセスのクリックでプロセスの詳細を表示"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "ADF-demoprogam",
"HOME": "Hjem",
"NODE-SELECTOR": "Nodevelger",
"SITES": "Områder",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Søkebane",
"NOTIFICATIONS": "Varsler",
@@ -93,7 +94,8 @@
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Person-/gruppesky",
"PEOPLE_CLOUD": "Personsky-komponent",
"GROUPS_CLOUD": "Gruppesky-kompontent"
"GROUPS_CLOUD": "Gruppesky-kompontent",
"CONFIRM-DIALOG": "Bekreftelsesdialog"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Flervalg",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Valgmodus",
"TASK_DETAILS_REDIRECTION": "Vis oppgavedetaljer ved oppgaveklikk"
"TASK_DETAILS_REDIRECTION": "Vis oppgavedetaljer ved oppgaveklikk",
"PROCESS_DETAILS_REDIRECTION": "Vis prosessdetaljer ved prosessklikk"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "ADF-demotoepassing",
"HOME": "Home",
"NODE-SELECTOR": "Selectiefunctie voor node",
"SITES": "Sites",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Navigatiepad",
"NOTIFICATIONS": "Meldingen",
@@ -93,7 +94,8 @@
"ICONS": "Pictogrammen",
"PEOPLE_GROUPS_CLOUD": "Personen-/groepencloud",
"PEOPLE_CLOUD": "Component Personencloud",
"GROUPS_CLOUD": "Component Groepencloud"
"GROUPS_CLOUD": "Component Groepencloud",
"CONFIRM-DIALOG": "Bevestigingsdialoogvenster"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Multiselectie",
"TESTING_MODE": "Testmodus",
"SELECTION_MODE": "Selectiemodus",
"TASK_DETAILS_REDIRECTION": "Taakdetails weergeven bij klikken op taak"
"TASK_DETAILS_REDIRECTION": "Taakdetails weergeven bij klikken op taak",
"PROCESS_DETAILS_REDIRECTION": "Procesdetails weergeven bij klikken op proces"
}
}
+324
View File
@@ -0,0 +1,324 @@
{
"APP": {
"INFO_DRAWER": {
"TITLE": "Szczegóły",
"COMMENTS": "Komentarze",
"PROPERTIES": "Właściwości",
"VERSIONS": "Wersje"
},
"HOME": {
"TITLE": "Składniki Angular dla Alfresco",
"DOCUMENTATION": "Dokumentacja"
},
"LOGOUT": {
"TITLE": "Strona wylogowywania",
"SUB_TITLE": "Wylogowanie przebiegło pomyślnie.",
"LOGIN": "Zaloguj",
"HOME": "Strona główna"
},
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Zezwól na usunięcie",
"SHOW_COMMENTS": "Pokaż komentarze do wersji",
"ALLOW_DOWNLOAD": "Włącz pobieranie wersji",
"READ_ONLY": "Tylko do odczytu",
"COMMENTS": "Pokaż komentarze"
},
"PERSONAL-FILES": "Pliki osobiste",
"WARN-MULTIPLE-UPLOADS": "Wyświetl ostrzeżenie dla wielu operacji przesyłania.",
"CUSTOM-PERMISSION-MESSAGE": "Włącz komunikat o niestandardowych uprawnieniach",
"MEDIUM-TIME-FORMAT": "Włącz format czasu nośnika dla listy dokumentów",
"SEARCH": {
"RADIO": {
"NONE": "Brak",
"ALL": "Wszystkie",
"FOLDER": "Folder",
"DOCUMENT": "Dokument"
}
}
},
"title": "Witaj",
"VERSION": {
"NO_PERMISSION": "Nie masz uprawnień do zarządzania wersjami tej zawartości",
"NO_PERMISSION_EVENT": "Nie masz uprawnienia ${event.permission} do akcji ${event.action} typu ${event.type}.",
"CHOOSE_FILE": "Wybierz plik, aby wyświetlić jego wersje.",
"DIALOG": {
"CLOSE": "Zamknij",
"TITLE": "Zarządzaj wersjami"
}
},
"METADATA": {
"DIALOG": {
"CLOSE": "Zamknij",
"TITLE": "Metadane"
}
},
"APP_LAYOUT": {
"APP": "Aplikacja",
"APP_NAME": "Wersja demonstracyjna aplikacji ADF",
"HOME": "Strona główna",
"NODE-SELECTOR": "Selektor węzłów",
"SITES": "Witryny",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Ścieżka nawigacyjna",
"NOTIFICATIONS": "Powiadomienia",
"TASK_LIST": "Lista zadań",
"PROCESS_LIST": "Lista procesów",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "CardView",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Zaloguj",
"CUSTOM_SOURCES": "Źródła niestandardowe",
"DATATABLE": "Tabela danych",
"DATATABLE_LAZY": "Tabela danych (z opóźnieniem)",
"DOCUMENT_LIST": "Lista dokumentów",
"TEMPLATE": "Szablon",
"FORM": "Formularz",
"FORM_LIST": "Lista formularzy",
"FORM_LOADING": "Wczytywanie formularza",
"UPLOADER": "Program do przesyłania",
"WEBSCRIPT": "Skrypt internetowy",
"TAG": "Znacznik",
"TRASHCAN": "Kosz",
"SOCIAL": "Społecznościowy",
"SETTINGS": "Ustawienia",
"CONFIG-EDITOR": "Edytor konfiguracji",
"OVERLAY_VIEWER": "Przeglądarka nakładek",
"ABOUT": "Informacje",
"SEARCH": "Wyszukiwanie rozszerzone",
"EXTENDED_SEARCH_QUERY_BODY": "Wyszukiwanie rozszerzone z treścią zapytania",
"WORD_TO_SEARCH": "Szukany wyraz",
"SEARCH_CREATED_BY": "Utworzone przez",
"SEARCH_SERVICE_APPROACH": "Kliknij ten element, aby wyłączyć właściwość wejściową i skonfigurować korzystając z usługi",
"HEADER_DATA": "Dane nagłówka",
"TREE_VIEW": "Widok drzewa",
"ICONS": "Ikony",
"PEOPLE_GROUPS_CLOUD": "Chmura dla osób/grup",
"PEOPLE_CLOUD": "Składnik Chmura dla osób",
"GROUPS_CLOUD": "Składnik Chmura dla grup",
"CONFIRM-DIALOG": "Okno dialogowe potwierdzenia"
},
"TRASHCAN": {
"ACTIONS": {
"DELETE_PERMANENT": "Usuń trwale",
"RESTORE": "Przywróć"
},
"EMPTY_STATE": {
"TITLE": "Kosz jest pusty",
"FIRST_TEXT": "Usuwane elementy są przesyłane do kosza.",
"SECOND_TEXT": "Aby trwale usunąć elementy, opróżnij kosz."
}
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Wybór wielokrotny (przy użyciu pól wyboru)",
"THUMBNAILS": "Włącz miniatury",
"ALLOW_DROP_FILES": "Włącz upuszczanie plików w folderze",
"MULTIPLE_FILE_UPLOAD": "Przesyłanie wielu plików",
"FOLDER_UPLOAD": "Przesyłanie folderu",
"CUSTOM_FILTER": "Niestandardowy filtr rozszerzeń",
"MAX_SIZE": "Filtr rozmiaru maksymalnego",
"ENABLE_VERSIONING": "Włącz kontrolę wersji",
"DESCRIPTION_UPLOAD": "Włącz przesyłanie",
"ENABLE_INFINITE_SCROLL": "Włącz nieograniczone przewijanie",
"MULTISELECT_DESCRIPTION": "Używaj klawiszy Cmd (system Mac) lub Ctrl (system Windows), aby przełączać wybieranie wielu elementów.",
"RECENT": {
"EMPTY_STATE": {
"TITLE": "Lista bieżących plików jest pusta."
},
"TITLE": "Bieżące pliki"
},
"COLUMNS": {
"DISPLAY_NAME": "Nazwa wyświetlana",
"IS_LOCKED": "Blokada",
"TAG": "Znacznik",
"NODE_ID": "Identyfikator węzła",
"CREATED_BY": "Utworzone przez",
"CREATED_ON": "Data utworzenia",
"CREATED": "Utworzono",
"SIZE": "Rozmiar",
"DELETED_ON": "Usunięte",
"DELETED_BY": "Usunięte przez"
},
"TOOLBAR": {
"CARDVIEW": "Tryb widoku karty",
"SHARE_EDIT": "Edytuj ustawienia",
"NEW_FOLDER": "Nowy folder",
"EDIT_FOLDER": "Edytuj folder",
"DOWNLOAD": "Pobierz",
"DELETE": "Usuń",
"FAVORITES": "Dodaj do ulubionych",
"SHARE": "Udostępnij",
"THEME": "Wybierz motyw",
"SHOW_VERSION": "Pokaż wersję",
"HIDE_VERSION": "Ukryj wersję",
"LISTVIEW": "Tryb widoku listy",
"CREATE_LIBRARY": "Utwórz bibliotekę"
},
"ACTIONS": {
"VERSIONS": "Zarządzaj wersjami",
"LOCK": "Blokada",
"METADATA": "Informacje",
"DOWNLOAD": "Pobierz",
"PERMISSION": "Uprawnienie",
"FOLDER": {
"COPY": "Kopiuj",
"MOVE": "Przenieś",
"DELETE": "Usuń"
},
"DOCUMENT": {
"COPY": "Kopiuj",
"MOVE": "Przenieś",
"DELETE": "Usuń",
"PROCESS_ACTION": "Rozpocznij proces"
}
}
},
"DATATABLE": {
"RESET_DEFAULT": "Resetuj do domyślnych",
"ADD_ROW": "Dodaj wiersz",
"REPLACE_ROWS": "Zastąp wiersze",
"REPLACE_COLUMNS": "Zastąp kolumny",
"LOAD_NODE": "Wczytaj węzeł",
"MULTISELECT": "Wybór wielokrotny",
"MULTISELECT_DESCRIPTION": "Używaj klawiszy Cmd (system Mac) lub Ctrl (system Windows), aby przełączać wybieranie wielu elementów."
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "Nie wybrano raportu. Wybierz raport z listy."
},
"PS-TAB": {
"TASKS-TAB": "Zadania",
"PROCESSES-TAB": "Proces",
"REPORTS-TAB": "Raporty",
"SETTINGS-TAB": "Ustawienia",
"START-TASK": "Rozpocznij zadanie",
"START-PROCESS": "Rozpocznij proces",
"PROCESS-AUDIT-LOG": "Dziennik inspekcji procesu",
"TASK-AUDIT-LOG": "Dziennik inspekcji zadania",
"TASK-SHOW-HEADER": "Pokaż nagłówek szczegółów"
},
"PS_CLOUD_TAB": {
"APPS_TAB": "Aplikacja",
"SETTINGS_TAB": "Ustawienia"
},
"FORM-LIST": {
"STORE": "Magazyn",
"RESTORE": "Przywróć"
},
"FORM-LOADING": {
"FORM_DATA": "Dane formularza",
"FORM_DATA_MESSAGE": "Wprowadź wartości, aby wypełnić formularz.",
"TYPEAHEAD_PLACEHOLDER": "Wpisywanie z wyprzedzeniem",
"RADIO_PLACEHOLDER": "Przycisk radiowy",
"SELECT_PLACEHOLDER": "Menu rozwijane"
},
"LOGIN": {
"CONTENT_SERVICES": "Content Services",
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Stopka logowania",
"SHOW_REMEMBERME": "Pokaż opcję „Zapamiętaj mnie”",
"SHOW_SUCCESS_ROUTE": "Pokaż ścieżkę powodzenia",
"CUSTOM_LOGO": "Logo niestandardowe"
},
"SEARCH": {
"RESULTS": "Wyniki wyszukiwania",
"NO_RESULT": "Brak wyników",
"FACET_FIELDS": {
"TYPE": "1: Typ",
"SIZE": "2: Rozmiar",
"CREATOR": "3: Twórca",
"MODIFIER": "4: Modyfikator",
"CREATED": "5: Utworzono"
},
"FACET_QUERIES": {
"MY_FACET_QUERIES": "Moje zapytania dotyczące aspektu",
"CREATED_THIS_YEAR": "1. Utworzone w tym roku",
"MIMETYPE": "2. Typ: HTML",
"XTRASMALL": "3. Rozmiar: bardzo mały",
"SMALL": "4. Rozmiar: mały",
"MEDIUM": "5. Rozmiar: średni",
"LARGE": "6. Rozmiar: duży",
"XTRALARGE": "7. Rozmiar: bardzo duży",
"XXTRALARGE": "8. Rozmiar: wyjątkowo duży"
}
},
"SOCIAL": {
"LIKE": "Składnik Like",
"RATING": "Składnik Rating"
},
"TAG": {
"LIST": "Wyświetl znaczniki Content Services",
"INSERT": "Wstaw identyfikator węzła",
"NODE_LIST": "Lista znaczników według identyfikatora węzła"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "Dziedzicz uprawnienie",
"INHERITED_PERMISSIONS_BUTTON": "Odziedziczone uprawnienie"
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Wstaw identyfikator aplikacji",
"APP_ID_TYPE_ERROR": "Identyfikator aplikacji musi być liczbą.",
"NUMBER_TYPE_ERROR": "Wartość musi być liczbą.",
"NUMBER_GREATER_THAN": "Wartość musi być większa od lub równa wartości {{ value }}"
},
"TOOLTIP_MESSAGE": {
"START_INPUT": "Strona początkowa"
}
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Wstaw identyfikator aplikacji",
"APP_ID_TYPE_ERROR": "Identyfikator aplikacji musi być liczbą.",
"NUMBER_GREATER_THAN": "Wartość musi być większa od lub równa wartości {{ value }}"
}
},
"GROUP-TITLE1-TRANSLATION-KEY": "Tytuł niestandardowy — tłumaczenie pierwsze",
"GROUP-TITLE2-TRANSLATION-KEY": "Tytuł niestandardowy — tłumaczenie drugie",
"ERROR_CONTENT": {
"507": {
"TITLE": "Dysk ACS pełny",
"DESCRIPTION": "Zawartość przekracza limit łącznego przydziału miejsca w magazynie skonfigurowany w sieci lub systemie",
"SECONDARY_BUTTON": {
"TEXT": ""
},
"RETURN_BUTTON": {
"TEXT": "Powrót do strony głównej"
}
}
},
"PROCESS_LIST_CLOUD_DEMO": {
"TITLE": "PROCESS LIST CLOUD DEMO",
"CUSTOMIZE_FILTERS": "Dostosuj swój filtr"
},
"TASK_LIST_CLOUD_DEMO": {
"CUSTOMIZE_FILTERS": "Dostosuj swój filtr"
},
"PEOPLE_GROUPS_CLOUD": {
"SINGLE": "Wybór pojedynczy",
"MULTI": "Wybór wielokrotny",
"PRESELECTED_VALUE": "Wstępny wybór: ",
"ROLE": "Role: ",
"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"
}
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Wybór wielokrotny",
"TESTING_MODE": "Tryb testowania",
"SELECTION_MODE": "Tryb wyboru",
"TASK_DETAILS_REDIRECTION": "Wyświetlaj szczegóły zadania po kliknięciu zadania",
"PROCESS_DETAILS_REDIRECTION": "Wyświetlaj szczegóły procesu po kliknięciu procesu"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "Aplicativo Demo ADF",
"HOME": "Página Inicial",
"NODE-SELECTOR": "Seletor de nó",
"SITES": "Sites",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Trilha de navegação",
"NOTIFICATIONS": "Notificações",
@@ -93,7 +94,8 @@
"ICONS": "Ícones",
"PEOPLE_GROUPS_CLOUD": "Nuvem de Pessoas/Grupo",
"PEOPLE_CLOUD": "Componente da Nuvem de Pessoas",
"GROUPS_CLOUD": "Componente da Nuvem de Grupos"
"GROUPS_CLOUD": "Componente da Nuvem de Grupos",
"CONFIRM-DIALOG": "Caixa de diálogo de confirmação"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Seleção Múltipla",
"TESTING_MODE": "Modo de Teste",
"SELECTION_MODE": "Modo de Seleção",
"TASK_DETAILS_REDIRECTION": "Exibir detalhes da tarefa ao clicar na tarefa"
"TASK_DETAILS_REDIRECTION": "Exibir detalhes da tarefa ao clicar na tarefa",
"PROCESS_DETAILS_REDIRECTION": "Exibir detalhes do processo ao clicar no processo"
}
}
+6 -3
View File
@@ -12,7 +12,7 @@
},
"LOGOUT": {
"TITLE": "Страница выхода из системы",
"SUB_TITLE": "Вы не вышли из системы",
"SUB_TITLE": "Вы вышли из системы",
"LOGIN": "Войти",
"HOME": "Домашняя"
},
@@ -57,6 +57,7 @@
"APP_NAME": "Демонстрационное приложение ADF",
"HOME": "Домашняя",
"NODE-SELECTOR": "Селектор узлов",
"SITES": "Сайты",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Иерархия",
"NOTIFICATIONS": "Оповещения",
@@ -93,7 +94,8 @@
"ICONS": "Значки",
"PEOPLE_GROUPS_CLOUD": "Облако пользователей/групп",
"PEOPLE_CLOUD": "Компонент облака «Пользователи»",
"GROUPS_CLOUD": "Компонент облака «Группы»"
"GROUPS_CLOUD": "Компонент облака «Группы»",
"CONFIRM-DIALOG": "Диалоговое окно подтверждения"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "Выбор нескольких",
"TESTING_MODE": "Режим тестирования",
"SELECTION_MODE": "Режим выбора",
"TASK_DETAILS_REDIRECTION": "Отображать подробные сведения о задаче при нажатии на задачу"
"TASK_DETAILS_REDIRECTION": "Отображать подробные сведения о задаче при нажатии на задачу",
"PROCESS_DETAILS_REDIRECTION": "Показывать сведения о процессе при нажатии на процессе"
}
}
+324
View File
@@ -0,0 +1,324 @@
{
"APP": {
"INFO_DRAWER": {
"TITLE": "Detaljer",
"COMMENTS": "Kommentarer",
"PROPERTIES": "Egenskaper",
"VERSIONS": "Versioner"
},
"HOME": {
"TITLE": "Angular-komponenter till Alfresco",
"DOCUMENTATION": "Dokumentation"
},
"LOGOUT": {
"TITLE": "Utloggningssida",
"SUB_TITLE": "Du är nu utloggad",
"LOGIN": "Inloggning",
"HOME": "Hem"
},
"ADF_VERSION_MANAGER": {
"ALLOW_DELETE": "Tillåt radering",
"SHOW_COMMENTS": "Visa kommentarer om versioner",
"ALLOW_DOWNLOAD": "Aktivera version nedladdning",
"READ_ONLY": "Skrivskyddad",
"COMMENTS": "Visa kommentarer"
},
"PERSONAL-FILES": "Personliga filer",
"WARN-MULTIPLE-UPLOADS": "Visa varning för flera uppladningar",
"CUSTOM-PERMISSION-MESSAGE": "Aktivera anpassat behörighetersmeddelande",
"MEDIUM-TIME-FORMAT": "Aktivera mellantidsformat för dokumentlista",
"SEARCH": {
"RADIO": {
"NONE": "Ingen",
"ALL": "Alla",
"FOLDER": "Mapp",
"DOCUMENT": "Dokument"
}
}
},
"title": "Välkommen",
"VERSION": {
"NO_PERMISSION": "Du har inte behörighet att hantera versioner av det här innehållet",
"NO_PERMISSION_EVENT": "Du har inte ${event.permission} behörighet att ${event.action} ${event.type}",
"CHOOSE_FILE": "Välj en fil för att se dess versioner",
"DIALOG": {
"CLOSE": "Stäng",
"TITLE": "Hantera versioner"
}
},
"METADATA": {
"DIALOG": {
"CLOSE": "Stäng",
"TITLE": "Metadata"
}
},
"APP_LAYOUT": {
"APP": "Program",
"APP_NAME": "ADF-demoprogram",
"HOME": "Hem",
"NODE-SELECTOR": "Nodväljare",
"SITES": "Webbplatser",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "Brödsmula",
"NOTIFICATIONS": "Aviseringar",
"TASK_LIST": "Uppgiftslista",
"PROCESS_LIST": "Processlista",
"PROCESS_CLOUD": "Activiti Cloud",
"CARD_VIEW": "CardView",
"PROCESS_SERVICES": "Process Services",
"LOGIN": "Inloggning",
"CUSTOM_SOURCES": "Anpassade källor",
"DATATABLE": "Datatabell",
"DATATABLE_LAZY": "Datatabell (lat)",
"DOCUMENT_LIST": "Dokumentlista",
"TEMPLATE": "Mall",
"FORM": "Formulär",
"FORM_LIST": "Formulärlista",
"FORM_LOADING": "Formulär läses in",
"UPLOADER": "Uppladdare",
"WEBSCRIPT": "Webbskript",
"TAG": "Tagg",
"TRASHCAN": "Papperskorg",
"SOCIAL": "Social",
"SETTINGS": "Inställningar",
"CONFIG-EDITOR": "Konfigurationseditor",
"OVERLAY_VIEWER": "Överdragsvisare",
"ABOUT": "Om",
"SEARCH": "Utvidgad sökning",
"EXTENDED_SEARCH_QUERY_BODY": "Utvidgad sökning med frågetext",
"WORD_TO_SEARCH": "Sökord",
"SEARCH_CREATED_BY": "Skapad av",
"SEARCH_SERVICE_APPROACH": "Kontrollera den här för att avaktivera indataegenskap och konfigurera genom att använda tjänsten",
"HEADER_DATA": "Sidhuvuddata",
"TREE_VIEW": "Trädvy",
"ICONS": "Ikoner",
"PEOPLE_GROUPS_CLOUD": "Personer/grupp moln",
"PEOPLE_CLOUD": "Personer moln-komponent",
"GROUPS_CLOUD": "Grupper moln-komponent",
"CONFIRM-DIALOG": "Bekräftelsedialog"
},
"TRASHCAN": {
"ACTIONS": {
"DELETE_PERMANENT": "Radera permanent",
"RESTORE": "Återställ"
},
"EMPTY_STATE": {
"TITLE": "Papperskorgen är tom",
"FIRST_TEXT": "Objekt du raderar flyttas till papperskorgen.",
"SECOND_TEXT": "Töm papperskorgen för att radera objekt permanent"
}
},
"DOCUMENT_LIST": {
"MULTISELECT_CHECKBOXES": "Flera val (med kryssrutor)",
"THUMBNAILS": "Aktivera miniatyrbilder",
"ALLOW_DROP_FILES": "Aktivera släpp filer i en mapp",
"MULTIPLE_FILE_UPLOAD": "Uppladdning av flera filer",
"FOLDER_UPLOAD": "Mappuppladdning",
"CUSTOM_FILTER": "Anpassade tilläggsfilter",
"MAX_SIZE": "Maxstorlek filter",
"ENABLE_VERSIONING": "Aktivera versionering",
"DESCRIPTION_UPLOAD": "Aktivera uppladdning",
"ENABLE_INFINITE_SCROLL": "Aktivera oändlig skrollning",
"MULTISELECT_DESCRIPTION": "Använd Cmd (Mac) eller Ctrl (Windows) för att växla val av flera objekt",
"RECENT": {
"EMPTY_STATE": {
"TITLE": "Listan med de senaste filerna är tom"
},
"TITLE": "De senaste filerna"
},
"COLUMNS": {
"DISPLAY_NAME": "Visa namn",
"IS_LOCKED": "Lås",
"TAG": "Tagg",
"NODE_ID": "Nod-ID",
"CREATED_BY": "Skapad av",
"CREATED_ON": "Skapad den",
"CREATED": "Skapad",
"SIZE": "Storlek",
"DELETED_ON": "Raderad",
"DELETED_BY": "Raderad av"
},
"TOOLBAR": {
"CARDVIEW": "Kortvyläge",
"SHARE_EDIT": "Redigera inställningar",
"NEW_FOLDER": "Ny mapp",
"EDIT_FOLDER": "Redigera mapp",
"DOWNLOAD": "Ladda ner",
"DELETE": "Radera",
"FAVORITES": "Lägg till favoriter",
"SHARE": "Dela",
"THEME": "Välj ett tema",
"SHOW_VERSION": "Visa version",
"HIDE_VERSION": "Dölj version",
"LISTVIEW": "Listvyläge",
"CREATE_LIBRARY": "Skapa bibliotek"
},
"ACTIONS": {
"VERSIONS": "Hantera versioner",
"LOCK": "Lås",
"METADATA": "Info",
"DOWNLOAD": "Ladda ner",
"PERMISSION": "Behörighet",
"FOLDER": {
"COPY": "Kopiera",
"MOVE": "Flytta",
"DELETE": "Radera"
},
"DOCUMENT": {
"COPY": "Kopiera",
"MOVE": "Flytta",
"DELETE": "Radera",
"PROCESS_ACTION": "Starta process"
}
}
},
"DATATABLE": {
"RESET_DEFAULT": "Återställ till standard",
"ADD_ROW": "Lägg till rad",
"REPLACE_ROWS": "Ersätt rader",
"REPLACE_COLUMNS": "Ersätt kolumner",
"LOAD_NODE": "Ladda upp nod",
"MULTISELECT": "Flera val",
"MULTISELECT_DESCRIPTION": "Använd Cmd (Mac) eller Ctrl (Windows) för att växla val av flera objekt"
},
"ANALYTICS_REPORT": {
"NO_REPORT_MESSAGE": "Ingen rapport vald. Välj en rapport från listan"
},
"PS-TAB": {
"TASKS-TAB": "Uppgifter",
"PROCESSES-TAB": "Process",
"REPORTS-TAB": "Rapporter",
"SETTINGS-TAB": "Inställningar",
"START-TASK": "Starta uppgift",
"START-PROCESS": "Starta process",
"PROCESS-AUDIT-LOG": "Processgranskningslogg",
"TASK-AUDIT-LOG": "Uppgiftsgranskningslogg",
"TASK-SHOW-HEADER": "Visa detaljer rubrik"
},
"PS_CLOUD_TAB": {
"APPS_TAB": "Program",
"SETTINGS_TAB": "Inställningar"
},
"FORM-LIST": {
"STORE": "Lagra",
"RESTORE": "Återställ"
},
"FORM-LOADING": {
"FORM_DATA": "Formulärdata",
"FORM_DATA_MESSAGE": "Ange värden för att fylla formuläret",
"TYPEAHEAD_PLACEHOLDER": "Typeahead",
"RADIO_PLACEHOLDER": "Radioknapp",
"SELECT_PLACEHOLDER": "DropDown"
},
"LOGIN": {
"CONTENT_SERVICES": "Content Services",
"PROCESS_SERVICES": "Process Services",
"LOGIN_FOOTER": "Inloggningssidfot",
"SHOW_REMEMBERME": "Visa kom ihåg mig",
"SHOW_SUCCESS_ROUTE": "Visa framgångsväg",
"CUSTOM_LOGO": "Anpassad logotyp"
},
"SEARCH": {
"RESULTS": "Sökresultat",
"NO_RESULT": "Inga resultat hittades",
"FACET_FIELDS": {
"TYPE": "1:Typ",
"SIZE": "2:Storlek",
"CREATOR": "3:Skapat av",
"MODIFIER": "4:Ändrat av",
"CREATED": "5:Skapad den"
},
"FACET_QUERIES": {
"MY_FACET_QUERIES": "Mina facet-förfrågningar",
"CREATED_THIS_YEAR": "1.Skapad det här året",
"MIMETYPE": "2.Typ: HTML",
"XTRASMALL": "3.Storlek: extra small",
"SMALL": "4.Storlek: small",
"MEDIUM": "5.Storlek: medium",
"LARGE": "6.Storlek: large",
"XTRALARGE": "7.Storlek: extra large",
"XXTRALARGE": "8.Storlek: XX large"
}
},
"SOCIAL": {
"LIKE": "Som komponent",
"RATING": "Klassificeringskomponent"
},
"TAG": {
"LIST": "Lista taggar Content Services",
"INSERT": "Infoga nod-ID",
"NODE_LIST": "Tagglista per nod-ID"
},
"DEMO_PERMISSION": {
"INHERIT_PERMISSION_BUTTON": "Ärv behörighet",
"INHERITED_PERMISSIONS_BUTTON": "Behörighet ärvt"
},
"TASK_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Infoga program-ID",
"APP_ID_TYPE_ERROR": "Program-ID måste vara ett nummer",
"NUMBER_TYPE_ERROR": "Värdet måste vara ett nummer",
"NUMBER_GREATER_THAN": "Värdet måste vara större än eller lika med {{ value }}"
},
"TOOLTIP_MESSAGE": {
"START_INPUT": "Startsida"
}
},
"PROCESS_LIST_DEMO": {
"ERROR_MESSAGE": {
"APP_ID_REQUIRED_ERROR": "Infoga program-ID",
"APP_ID_TYPE_ERROR": "Program-ID måste vara ett nummer",
"NUMBER_GREATER_THAN": "Värdet måste vara större än eller lika med {{ value }}"
}
},
"GROUP-TITLE1-TRANSLATION-KEY": "Anpassad titelöversättning ett",
"GROUP-TITLE2-TRANSLATION-KEY": "Anpassad titelöversättning två",
"ERROR_CONTENT": {
"507": {
"TITLE": "ACS disk full",
"DESCRIPTION": "Innehållet överskrider övergripande kvotbegränsning som är konfigurerad för nätverket eller systemet",
"SECONDARY_BUTTON": {
"TEXT": ""
},
"RETURN_BUTTON": {
"TEXT": "Tillbaka hem"
}
}
},
"PROCESS_LIST_CLOUD_DEMO": {
"TITLE": "PROCESS LIST CLOUD DEMO",
"CUSTOMIZE_FILTERS": "Anpassa ditt filter"
},
"TASK_LIST_CLOUD_DEMO": {
"CUSTOMIZE_FILTERS": "Anpassa ditt filter"
},
"PEOPLE_GROUPS_CLOUD": {
"SINGLE": "Enskilt val",
"MULTI": "Flerval",
"PRESELECTED_VALUE": "Förvälj: ",
"ROLE": "Roller: ",
"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"
}
},
"SETTINGS_CLOUD": {
"MULTISELECTION": "Flerval",
"TESTING_MODE": "Testläge",
"SELECTION_MODE": "Urvalsläge",
"TASK_DETAILS_REDIRECTION": "Visa uppgiftsdetaljer vid klick på uppgift",
"PROCESS_DETAILS_REDIRECTION": "Visa processinformation vid processklick"
}
}
+5 -2
View File
@@ -57,6 +57,7 @@
"APP_NAME": "ADF 演示应用程序",
"HOME": "主页",
"NODE-SELECTOR": "节点选择器",
"SITES": "站点",
"CONTENT_SERVICES": "Content Services",
"BREADCRUMB": "面包屑",
"NOTIFICATIONS": "通知",
@@ -93,7 +94,8 @@
"ICONS": "图标",
"PEOPLE_GROUPS_CLOUD": "人员/一组云",
"PEOPLE_CLOUD": "人员云组件",
"GROUPS_CLOUD": "组云组件"
"GROUPS_CLOUD": "组云组件",
"CONFIRM-DIALOG": "确认对话"
},
"TRASHCAN": {
"ACTIONS": {
@@ -316,6 +318,7 @@
"MULTISELECTION": "多重选择",
"TESTING_MODE": "测试模式",
"SELECTION_MODE": "选择模式",
"TASK_DETAILS_REDIRECTION": "单击任务时显示任务详情"
"TASK_DETAILS_REDIRECTION": "单击任务时显示任务详情",
"PROCESS_DETAILS_REDIRECTION": "单击流程时显示流程详细信息"
}
}
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -1,4 +1,4 @@
<div [dir]="textOrientation" class="adf-demo-app-container" >
<div class="adf-demo-app-container">
<router-outlet></router-outlet>
<router-outlet name="overlay"></router-outlet>
</div>
-10
View File
@@ -17,7 +17,6 @@
import { Component, ViewEncapsulation, OnInit } from '@angular/core';
import {
UserPreferencesService,
AuthenticationService,
AlfrescoApiService,
PageTitleService
@@ -33,24 +32,15 @@ import { MatDialog } from '@angular/material';
})
export class AppComponent implements OnInit {
textOrientation: string = 'ltr';
constructor(private pageTitleService: PageTitleService,
private alfrescoApiService: AlfrescoApiService,
private authenticationService: AuthenticationService,
private userPreferencesService: UserPreferencesService,
private router: Router,
private dialogRef: MatDialog) {
this.userPreferencesService.set('textOrientation', this.textOrientation);
}
ngOnInit() {
this.userPreferencesService.select('textOrientation').subscribe((textOrientation) => {
this.textOrientation = textOrientation;
});
this.pageTitleService.setTitle('title');
this.alfrescoApiService.getInstance().on('error', (error) => {
+19 -3
View File
@@ -27,7 +27,6 @@ import { AppConfigService, TRANSLATION_PROVIDER, DebugAppConfigService, CoreModu
import { ExtensionsModule } from '@alfresco/adf-extensions';
import { AppComponent } from './app.component';
import { MaterialModule } from './material.module';
import { LoginComponent } from './components/login/login.component';
import { LogoutComponent } from './components/logout/logout.component';
import { AppLayoutComponent } from './components/app-layout/app-layout.component';
import { HomeComponent } from './components/home/home.component';
@@ -72,6 +71,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 { 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';
import { StartProcessCloudDemoComponent } from './components/cloud/start-process-cloud-demo.component';
@@ -83,6 +83,14 @@ import { CloudSettingsComponent } from './components/cloud/cloud-settings.compon
import { NestedMenuPositionDirective } from './components/cloud/directives/nested-menu-position.directive';
import { ConfirmDialogExampleComponent } from './components/confirm-dialog/confirm-dialog-example.component';
import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/cloud-form-demo.component';
import { CommunityCloudComponent } from './components/cloud/community/community-cloud.component';
import { CommunityTasksCloudDemoComponent } from './components/cloud/community/community-task-cloud.component';
import { CommunityCloudFiltersDemoComponent } from './components/cloud/community/community-filters.component';
import { CommunityStartProcessCloudDemoComponent } from './components/cloud/community/community-start-process-cloud.component';
import { CommunityStartTaskCloudDemoComponent } from './components/cloud/community/community-start-task-cloud.component';
import { CommunityProcessDetailsCloudDemoComponent } from './components/cloud/community/community-process-details-cloud.component';
import { CommunityProcessesCloudDemoComponent } from './components/cloud/community/community-processes-cloud.component';
import { CommunityTaskDetailsCloudDemoComponent } from './components/cloud/community/community-task-details-cloud.component';
@NgModule({
imports: [
@@ -107,7 +115,6 @@ import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/
],
declarations: [
AppComponent,
LoginComponent,
LogoutComponent,
AppLayoutComponent,
HomeComponent,
@@ -139,6 +146,7 @@ import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/
TasksCloudDemoComponent,
ProcessesCloudDemoComponent,
TaskDetailsCloudDemoComponent,
CloudViewerComponent,
ProcessDetailsCloudDemoComponent,
StartTaskCloudDemoComponent,
StartProcessCloudDemoComponent,
@@ -150,7 +158,15 @@ import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/
NestedMenuPositionDirective,
ConfirmDialogExampleComponent,
FormCloudDemoComponent,
ConfirmDialogExampleComponent
ConfirmDialogExampleComponent,
CommunityCloudComponent,
CommunityTasksCloudDemoComponent,
CommunityCloudFiltersDemoComponent,
CommunityProcessesCloudDemoComponent,
CommunityStartProcessCloudDemoComponent,
CommunityStartTaskCloudDemoComponent,
CommunityProcessDetailsCloudDemoComponent,
CommunityTaskDetailsCloudDemoComponent
],
providers: [
{
+109 -63
View File
@@ -17,9 +17,14 @@
import { ModuleWithProviders } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { AuthGuard, AuthGuardEcm, ErrorContentComponent, AuthGuardBpm, AuthGuardSsoRoleService } from '@alfresco/adf-core';
import {
AuthGuard,
AuthGuardEcm,
ErrorContentComponent,
AuthGuardBpm,
AuthGuardSsoRoleService
} from '@alfresco/adf-core';
import { AppLayoutComponent } from './components/app-layout/app-layout.component';
import { LoginComponent } from './components/login/login.component';
import { HomeComponent } from './components/home/home.component';
import { LogoutComponent } from './components/logout/logout.component';
import { ProcessServiceComponent } from './components/process-service/process-service.component';
@@ -47,13 +52,21 @@ import { ProcessesCloudDemoComponent } from './components/cloud/processes-cloud-
import { StartTaskCloudDemoComponent } from './components/cloud/start-task-cloud-demo.component';
import { StartProcessCloudDemoComponent } from './components/cloud/start-process-cloud-demo.component';
import { TaskDetailsCloudDemoComponent } from './components/cloud/task-details-cloud-demo.component';
import { CloudViewerComponent } from './components/cloud/cloud-viewer.component';
import { ProcessDetailsCloudDemoComponent } from './components/cloud/process-details-cloud-demo.component';
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 { CommunityTasksCloudDemoComponent } from './components/cloud/community/community-task-cloud.component';
import { CommunityCloudComponent } from './components/cloud/community/community-cloud.component';
import { CommunityStartProcessCloudDemoComponent } from './components/cloud/community/community-start-process-cloud.component';
import { CommunityStartTaskCloudDemoComponent } from './components/cloud/community/community-start-task-cloud.component';
import { CommunityProcessDetailsCloudDemoComponent } from './components/cloud/community/community-process-details-cloud.component';
import { CommunityProcessesCloudDemoComponent } from './components/cloud/community/community-processes-cloud.component';
import { CommunityTaskDetailsCloudDemoComponent } from './components/cloud/community/community-task-details-cloud.component';
export const appRoutes: Routes = [
{ path: 'login', component: LoginComponent },
{ path: 'login', loadChildren: 'app/components/login/login.module#AppLoginModule' },
{ path: 'logout', component: LogoutComponent },
{
path: 'settings',
@@ -62,8 +75,8 @@ export const appRoutes: Routes = [
{
path: 'files/:nodeId/view',
component: AppComponent,
canActivate: [ AuthGuardEcm ],
canActivateChild: [ AuthGuardEcm ],
canActivate: [AuthGuardEcm],
canActivateChild: [AuthGuardEcm],
outlet: 'overlay',
children: [
{
@@ -85,67 +98,61 @@ export const appRoutes: Routes = [
]
},
{ path: 'preview/s/:id', component: SharedLinkViewComponent },
{
path: 'breadcrumb',
canActivate: [AuthGuardEcm],
component: AppLayoutComponent,
loadChildren: 'app/components/breadcrumb-demo/breadcrumb-demo.module#AppBreadcrumbModule'
},
{
path: 'notifications',
component: AppLayoutComponent,
children: [
{
path: '',
loadChildren: 'app/components/notifications/notifications.module#AppNotificationsModule'
}
]
},
{
path: 'config-editor',
component: AppLayoutComponent,
children: [
{
path: '',
loadChildren: 'app/components/config-editor/config-editor.module#AppConfigEditorModule'
}
]
},
{
path: 'card-view',
component: AppLayoutComponent,
children: [
{
path: '',
loadChildren: 'app/components/card-view/card-view.module#AppCardViewModule'
}
]
},
{
path: 'sites',
component: AppLayoutComponent,
children: [
{
path: '',
loadChildren: 'app/components/sites/sites.module#SitesModule'
}
]
},
{
path: 'header-data',
component: AppLayoutComponent,
children: [
{
path: '',
loadChildren: 'app/components/header-data/header-data.module#AppHeaderDataModule'
}
]
},
{
path: '',
component: AppLayoutComponent,
canActivate: [AuthGuard],
children: [
{
path: 'breadcrumb',
canActivate: [AuthGuardEcm],
loadChildren: 'app/components/breadcrumb-demo/breadcrumb-demo.module#AppBreadcrumbModule'
},
{
path: 'notifications',
children: [
{
path: '',
loadChildren: 'app/components/notifications/notifications.module#AppNotificationsModule'
}
]
},
{
path: 'config-editor',
children: [
{
path: '',
loadChildren: 'app/components/config-editor/config-editor.module#AppConfigEditorModule'
}
]
},
{
path: 'card-view',
children: [
{
path: '',
loadChildren: 'app/components/card-view/card-view.module#AppCardViewModule'
}
]
},
{
path: 'sites',
children: [
{
path: '',
loadChildren: 'app/components/sites/sites.module#SitesModule'
}
]
},
{
path: 'header-data',
children: [
{
path: '',
loadChildren: 'app/components/header-data/header-data.module#AppHeaderDataModule'
}
]
},
{
path: '',
component: HomeComponent
@@ -157,7 +164,8 @@ export const appRoutes: Routes = [
{
path: 'cloud',
canActivate: [AuthGuardSsoRoleService],
data: { roles: ['ACTIVITI_USER'], redirectUrl: '/error/403'},
data: { roles: ['ACTIVITI_USER'], redirectUrl: '/error/403' },
children: [
{
path: '',
@@ -167,10 +175,40 @@ export const appRoutes: Routes = [
path: 'people-group-cloud',
component: PeopleGroupCloudDemoComponent
},
{
path: 'community',
component: CommunityCloudComponent,
children: [
{
path: 'tasks',
component: CommunityTasksCloudDemoComponent
},
{
path: 'processes',
component: CommunityProcessesCloudDemoComponent
},
{
path: 'start-task',
component: CommunityStartTaskCloudDemoComponent
},
{
path: 'start-process',
component: CommunityStartProcessCloudDemoComponent
},
{
path: 'task-details/:taskId',
component: CommunityTaskDetailsCloudDemoComponent
},
{
path: 'process-details/:processInstanceId',
component: CommunityProcessDetailsCloudDemoComponent
}
]
},
{
path: ':appName',
canActivate: [AuthGuardSsoRoleService],
data: { clientRoles: ['appName'], roles: ['ACTIVITI_USER'], redirectUrl: '/error/403'},
data: { clientRoles: ['appName'], roles: ['ACTIVITI_USER'], redirectUrl: '/error/403' },
children: [
{
path: '',
@@ -198,6 +236,10 @@ export const appRoutes: Routes = [
path: 'task-details/:taskId',
component: TaskDetailsCloudDemoComponent
},
{
path: 'task-details/:taskId/files/:nodeId/view',
component: CloudViewerComponent
},
{
path: 'process-details/:processInstanceId',
component: ProcessDetailsCloudDemoComponent
@@ -377,6 +419,10 @@ export const appRoutes: Routes = [
path: 'datatable-lazy',
loadChildren: 'app/components/lazy-loading/lazy-loading.module#LazyLoadingModule'
},
{
path: 'copy-content',
loadChildren: 'app/components/datatable/copy-content/datatable.module#AppDataTableCopyModule'
},
{
path: 'template-list',
component: TemplateDemoComponent
@@ -1,4 +1,4 @@
<adf-sidenav-layout [sidenavMin]="70" [sidenavMax]="220" [stepOver]="780" [hideSidenav]="hideSidenav"
<adf-sidenav-layout [sidenavMin]="70" [sidenavMax]="220" [stepOver]="780" [hideSidenav]="hideSidenav" [direction]="direction"
[expandedSidenav]="expandedSidenav" (expanded)="setState($event)" [position]="position">
<adf-sidenav-layout-header>
@@ -48,6 +48,7 @@ export class AppLayoutComponent implements OnInit {
{ 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' }
]},
@@ -64,7 +65,8 @@ export class AppLayoutComponent implements OnInit {
{ href: '/datatable', icon: 'view_module', title: 'APP_LAYOUT.DATATABLE', children: [
{ href: '/datatable', icon: 'view_module', title: 'APP_LAYOUT.DATATABLE' },
{ href: '/datatable-lazy', icon: 'view_module', title: 'APP_LAYOUT.DATATABLE_LAZY' },
{ href: '/datatable/dnd', icon: 'view_module', title: 'Drag and Drop' }
{ href: '/datatable/dnd', icon: 'view_module', title: 'Drag and Drop' },
{ href: '/copy-content', icon: 'view_module', title: 'Copy Content' }
]},
{ href: '/template-list', icon: 'list_alt', title: 'APP_LAYOUT.TEMPLATE' },
{ href: '/webscript', icon: 'extension', title: 'APP_LAYOUT.WEBSCRIPT' },
@@ -83,6 +85,7 @@ export class AppLayoutComponent implements OnInit {
expandedSidenav = false;
position = 'start';
direction = 'ltr';
hideSidenav = false;
showMenu = true;
@@ -112,16 +115,23 @@ export class AppLayoutComponent implements OnInit {
this.headerService.tooltip.subscribe((tooltip) => this.tooltip = tooltip);
this.headerService.position.subscribe((position) => this.position = position);
this.headerService.hideSidenav.subscribe((hideSidenav) => this.hideSidenav = hideSidenav);
this.userPreferencesService.select('textOrientation').subscribe((textOrientation) => {
this.direction = textOrientation;
});
}
constructor(
private userPreferences: UserPreferencesService,
private config: AppConfigService,
private alfrescoApiService: AlfrescoApiService,
private userPreferencesService: UserPreferencesService,
private headerService: HeaderDataService) {
if (this.alfrescoApiService.getInstance().isOauthConfiguration()) {
this.enableRedirect = false;
}
this.userPreferencesService.set('textOrientation', this.direction);
}
setState(state) {
@@ -82,10 +82,7 @@ export class FormCloudDemoComponent implements OnInit, OnDestroy {
try {
this.parseForm();
} catch (error) {
this.notificationService.openSnackMessage(
'Wrong form configuration',
4000
);
this.notificationService.openSnackMessage('Wrong form configuration');
}
}
@@ -8,6 +8,9 @@
<mat-slide-toggle [color]="'primary'" [checked]="taskDetailsRedirection" (change)="toggleTaskDetailsRedirection()" data-automation-id="taskDetailsRedirection">
{{ 'SETTINGS_CLOUD.TASK_DETAILS_REDIRECTION' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="processDetailsRedirection" (change)="toggleProcessDetailsRedirection()" data-automation-id="processDetailsRedirection">
{{ 'SETTINGS_CLOUD.PROCESS_DETAILS_REDIRECTION' | translate }}
</mat-slide-toggle>
<mat-form-field data-automation-id="selectionMode">
<mat-label>
{{ 'SETTINGS_CLOUD.SELECTION_MODE' | translate }}
@@ -29,6 +29,7 @@ export class CloudSettingsComponent implements OnInit {
selectionMode: string;
testingMode: boolean;
taskDetailsRedirection: boolean;
processDetailsRedirection: boolean;
selectionModeOptions = [
{ value: '', title: 'None' },
@@ -49,6 +50,7 @@ export class CloudSettingsComponent implements OnInit {
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
this.taskDetailsRedirection = settings.taskDetailsRedirection;
this.processDetailsRedirection = settings.processDetailsRedirection;
}
}
@@ -67,6 +69,11 @@ export class CloudSettingsComponent implements OnInit {
this.setSetting();
}
toggleProcessDetailsRedirection() {
this.processDetailsRedirection = !this.processDetailsRedirection;
this.setSetting();
}
onSelectionModeChange() {
this.setSetting();
}
@@ -76,7 +83,8 @@ export class CloudSettingsComponent implements OnInit {
multiselect: this.multiselect,
testingMode: this.testingMode,
selectionMode: this.selectionMode,
taskDetailsRedirection: this.taskDetailsRedirection
taskDetailsRedirection: this.taskDetailsRedirection,
processDetailsRedirection: this.processDetailsRedirection
});
}
}
@@ -0,0 +1,3 @@
.activiti-form-viewer {
margin: 10px;
}
@@ -0,0 +1,4 @@
<adf-viewer
[overlayMode]="true"
[nodeId]="nodeId">
</adf-viewer>
@@ -0,0 +1,46 @@
/*!
* @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, OnDestroy, OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { Subscription } from 'rxjs';
import { Params } from '@angular/router/src/shared';
@Component({
selector: 'app-cloud-viewer',
templateUrl: './cloud-viewer.component.html'
})
export class CloudViewerComponent implements OnInit, OnDestroy {
nodeId: string;
private sub: Subscription;
constructor(private route: ActivatedRoute) {
}
ngOnInit() {
this.sub = this.route.params.subscribe((params: Params) => {
this.nodeId = params['nodeId'];
});
}
ngOnDestroy() {
this.sub.unsubscribe();
}
}
@@ -0,0 +1,36 @@
<mat-tab-group fxFill class="adf-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">
<adf-sidenav-layout-navigation>
<ng-template>
<adf-sidebar-action-menu [expanded]="true" [width]="205" title="{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.CREATE' | translate}}">
<mat-icon adf-sidebar-menu-title-icon>arrow_drop_down</mat-icon>
<div adf-sidebar-menu-options>
<button mat-menu-item data-automation-id="btn-start-task" (click)="onStartTask()">
<mat-icon>assessment</mat-icon>
<span>{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.NEW_TASK' | translate}}</span>
</button>
</div>
<div adf-sidebar-menu-options>
<button mat-menu-item data-automation-id="btn-start-process" (click)="onStartProcess()">
<mat-icon>assessment</mat-icon>
<span>{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.NEW_PROCESS' | translate}}</span>
</button>
</div>
</adf-sidebar-action-menu>
<app-community-cloud-filters-demo></app-community-cloud-filters-demo>
</ng-template>
</adf-sidenav-layout-navigation>
<adf-sidenav-layout-content>
<ng-template>
<router-outlet></router-outlet>
</ng-template>
</adf-sidenav-layout-content>
</adf-sidenav-layout>
</div>
</mat-tab>
<mat-tab label="{{'PS_CLOUD_TAB.SETTINGS_TAB' | translate}}">
<app-cloud-settings></app-cloud-settings>
</mat-tab>
</mat-tab-group>
@@ -0,0 +1,68 @@
/*!
* @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, ViewEncapsulation } from '@angular/core';
import { Router, ActivatedRoute } from '@angular/router';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-cloud.component.html',
styles: [`.adf-cloud-layout-overflow {
overflow: auto;
}
.adf-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100% !important;
}
`],
encapsulation: ViewEncapsulation.None
})
export class CommunityCloudComponent {
appName: string = '';
constructor(
private router: Router,
private route: ActivatedRoute,
private cloudLayoutService: CloudLayoutService
) { }
ngOnInit() {
let root: string = '';
if (this.route.snapshot && this.route.snapshot.firstChild) {
root = this.route.snapshot.firstChild.url[0].path;
}
this.route.queryParams.subscribe((params) => {
if (root === 'tasks' && params.id) {
this.cloudLayoutService.setCurrentTaskFilterParam({ id: params.id });
}
if (root === 'processes' && params.id) {
this.cloudLayoutService.setCurrentProcessFilterParam({ id: params.id });
}
});
}
onStartTask() {
this.router.navigate([`/cloud/community/start-task/`]);
}
onStartProcess() {
this.router.navigate([`/cloud/community/start-process/`]);
}
}
@@ -0,0 +1,31 @@
<mat-accordion>
<mat-expansion-panel [expanded]="expandTaskFilter" (opened)="onTaskFilterOpen()" (closed)="onTaskFilterClose()" data-automation-id='Task Filters'>
<mat-expansion-panel-header>
<mat-panel-title>
Task Filters
</mat-panel-title>
</mat-expansion-panel-header>
<adf-cloud-task-filters
*ngIf="expandTaskFilter"
[appName]="appName"
[showIcons]="true"
[filterParam]="currentTaskFilter$ | async"
(filterClick)="onTaskFilterSelected($event)">
</adf-cloud-task-filters>
</mat-expansion-panel>
<mat-expansion-panel [expanded]="expandProcessFilter" (opened)="onProcessFilterOpen()" (closed)="onProcessFilterClose()" data-automation-id='Process Filters'>
<mat-expansion-panel-header>
<mat-panel-title>
Process Filters
</mat-panel-title>
</mat-expansion-panel-header>
<adf-cloud-process-filters
*ngIf="expandProcessFilter"
[appName]="appName"
[showIcons]="true"
[filterParam]="currentProcessFilter$ | async"
(filterClick)="onProcessFilterSelected($event)">
</adf-cloud-process-filters>
</mat-expansion-panel>
</mat-accordion>
@@ -0,0 +1,94 @@
/*!
* @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, ViewEncapsulation, Input, OnInit } from '@angular/core';
import { Observable } from 'rxjs';
import { Router, ActivatedRoute } from '@angular/router';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
selector: 'app-community-cloud-filters-demo',
templateUrl: './community-filters.component.html',
encapsulation: ViewEncapsulation.None
})
export class CommunityCloudFiltersDemoComponent implements OnInit {
@Input()
appName: string = 'community';
currentTaskFilter$: Observable<any>;
currentProcessFilter$: Observable<any>;
toggleTaskFilter = true;
toggleProcessFilter = true;
expandTaskFilter = true;
expandProcessFilter = false;
constructor(
private cloudLayoutService: CloudLayoutService,
private router: Router,
private route: ActivatedRoute
) {}
ngOnInit() {
this.currentTaskFilter$ = this.cloudLayoutService.getCurrentTaskFilterParam();
this.currentProcessFilter$ = this.cloudLayoutService.getCurrentProcessFilterParam();
let root = '';
if (this.route.snapshot && this.route.snapshot.firstChild) {
root = this.route.snapshot.firstChild.url[0].path;
if (root === 'tasks') {
this.expandTaskFilter = true;
this.expandProcessFilter = false;
} else if (root === 'processes') {
this.expandProcessFilter = true;
this.expandTaskFilter = false;
}
}
}
onTaskFilterSelected(filter) {
this.cloudLayoutService.setCurrentTaskFilterParam({id: filter.id});
const currentFilter = Object.assign({}, filter);
this.router.navigate([`/cloud/community/tasks/`], { queryParams: currentFilter });
}
onProcessFilterSelected(filter) {
this.cloudLayoutService.setCurrentProcessFilterParam({id: filter.id});
const currentFilter = Object.assign({}, filter);
this.router.navigate([`/cloud/community/processes/`], { queryParams: currentFilter });
}
onTaskFilterOpen(): boolean {
this.expandTaskFilter = true;
this.expandProcessFilter = false;
return this.toggleTaskFilter;
}
onTaskFilterClose(): boolean {
return !this.toggleTaskFilter;
}
onProcessFilterOpen(): boolean {
this.expandProcessFilter = true;
this.expandTaskFilter = false;
return this.toggleProcessFilter;
}
onProcessFilterClose(): boolean {
return !this.toggleProcessFilter;
}
}
@@ -0,0 +1,25 @@
<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">
<adf-cloud-task-list
fxFlex
class="adf-cloud-layout-overflow"
[appName]="''"
[processInstanceId]="processInstanceId"
(rowClick)="onRowClick($event)"
#taskCloud>
</adf-cloud-task-list>
<adf-cloud-process-header
class="adf-process-cloud-header"
[appName]="''"
[processInstanceId]="processInstanceId">
</adf-cloud-process-header>
</div>
@@ -0,0 +1,14 @@
.adf {
&-process-cloud-container {
display: flex;
}
&-cloud-layout-overflow {
width:67%;
}
&-process-cloud-header {
margin-left: 10px;
width: 25%;
}
}
@@ -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 } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
@Component({
templateUrl: './community-process-details-cloud.component.html',
styleUrls: ['./community-process-details-cloud.component.scss']
})
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() {
this.router.navigate([`/cloud/community/`]);
}
onRowClick(taskId: string) {
if (taskId) {
this.router.navigate([`/cloud/community/task-details/${taskId}`]);
}
}
}
@@ -0,0 +1,44 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-process-filter
[id]="filterId"
[appName]="'community'"
[filterProperties]="processFilterProperties.filterProperties"
[sortProperties]="processFilterProperties.sortProperties"
[actions]="processFilterProperties.actions"
(filterChange)="onFilterChange($event)"
(action)="onProcessFilterAction($event)">
</adf-cloud-edit-process-filter>
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-process-list #processCloud
fxFlex
[appName]="''"
class="adf-cloud-layout-overflow"
[initiator]="editedFilter.initiator"
[processDefinitionId]="editedFilter.processDefinitionId"
[processDefinitionKey]="editedFilter.processDefinitionKey"
[id]="editedFilter.processInstanceId"
[status]="editedFilter.status"
[name]="editedFilter.processName"
[businessKey]="editedFilter.businessKey"
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
[lastModifiedTo]="editedFilter.lastModifiedTo"
[sorting]="sortArray"
[selectionMode]="selectionMode"
[multiselect]="multiselect"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-process-list>
<adf-pagination
[target]="processCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
Selected rows:
<ul>
<li *ngFor="let row of selectedRows">{{ row.id }}</li>
</ul>
</div>
</div>
</div>
@@ -0,0 +1,134 @@
/*!
* @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, OnInit } from '@angular/core';
import {
ProcessListCloudComponent,
ProcessFilterCloudModel,
ProcessListCloudSortingModel,
ProcessFiltersCloudComponent,
ProcessFilterCloudService
} from '@alfresco/adf-process-services-cloud';
import { ActivatedRoute, Router } from '@angular/router';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-processes-cloud.component.html'
})
export class CommunityProcessesCloudDemoComponent implements OnInit {
public static ACTION_SAVE_AS = 'saveAs';
static PROCESS_FILTER_PROPERTY_KEYS = 'adf-edit-process-filter';
@ViewChild('processCloud')
processCloud: ProcessListCloudComponent;
@ViewChild('processFiltersCloud')
processFiltersCloud: ProcessFiltersCloudComponent;
appName: string = '';
isFilterLoaded: boolean;
filterId: string = '';
sortArray: any = [];
selectedRow: any;
multiselect: boolean;
selectionMode: string;
selectedRows: string[] = [];
testingMode: boolean;
processFilterProperties: any = { filterProperties: [], sortProperties: [], actions: [] };
editedFilter: ProcessFilterCloudModel;
constructor(
private route: ActivatedRoute,
private router: Router,
private cloudLayoutService: CloudLayoutService,
private userPreference: UserPreferencesService,
private processFilterCloudService: ProcessFilterCloudService,
private appConfig: AppConfigService) {
const properties = this.appConfig.get<Array<any>>(CommunityProcessesCloudDemoComponent.PROCESS_FILTER_PROPERTY_KEYS);
if (properties) {
this.processFilterProperties = properties;
}
}
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;
this.onFilterChange(params);
this.filterId = params.id;
} else {
this.loadDefaultFilters();
}
});
this.cloudLayoutService.getCurrentSettings()
.subscribe((settings) => this.setCurrentSettings(settings));
}
loadDefaultFilters() {
this.processFilterCloudService.getProcessFilters('community').subscribe( (filters: ProcessFilterCloudModel[]) => {
this.onFilterChange(filters[0]);
});
}
setCurrentSettings(settings) {
if (settings) {
this.multiselect = settings.multiselect;
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
}
}
onChangePageSize(event) {
this.userPreference.paginationSize = event.maxItems;
}
resetSelectedRows() {
this.selectedRows = [];
}
onRowClick(processInstanceId) {
this.router.navigate([`/cloud/community/process-details/${processInstanceId}`]);
}
onFilterChange(query: any) {
this.editedFilter = Object.assign({}, query);
this.sortArray = [new ProcessListCloudSortingModel({ orderBy: this.editedFilter.sort, direction: this.editedFilter.order })];
}
onProcessFilterAction(filterAction: any) {
this.cloudLayoutService.setCurrentProcessFilterParam({ id: filterAction.filter.id });
if (filterAction.actionType === CommunityProcessesCloudDemoComponent.ACTION_SAVE_AS) {
this.router.navigate([`/cloud/community/processes/`], { queryParams: filterAction.filter });
}
}
onRowsSelected(nodes) {
this.resetSelectedRows();
this.selectedRows = nodes.map((node) => node.obj.entry);
}
}
@@ -0,0 +1,7 @@
<adf-cloud-start-process
[name]="processName"
[appName]="''"
(error)="openSnackMessage($event)"
(success)="onStartProcessSuccess()"
(cancel)="onCancelStartProcess()">
</adf-cloud-start-process>
@@ -0,0 +1,56 @@
/*!
* @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, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { NotificationService, AppConfigService } from '@alfresco/adf-core';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-start-process-cloud.component.html'
})
export class CommunityStartProcessCloudDemoComponent implements OnInit {
processName: string;
constructor(private appConfig: AppConfigService,
private cloudLayoutService: CloudLayoutService,
private notificationService: NotificationService,
private router: Router) {
}
ngOnInit() {
this.processName = this.appConfig.get<string>('adf-start-process.name');
}
onStartProcessSuccess() {
this.cloudLayoutService.setCurrentProcessFilterParam({ key: 'running-processes' });
this.router.navigate([`/cloud/community/processes`]);
}
onCancelStartProcess() {
this.cloudLayoutService.setCurrentProcessFilterParam({ key: 'all-processes' });
this.router.navigate([`/cloud/community/processes`]);
}
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(
event.response.body.message,
4000
);
}
}
@@ -0,0 +1,6 @@
<adf-cloud-start-task
[appName]="''"
(error)="openSnackMessage($event)"
(success)="onStartTaskSuccess()"
(cancel)="onCancelStartTask()">
</adf-cloud-start-task>
@@ -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 } from '@angular/core';
import { Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-start-task-cloud.component.html'
})
export class CommunityStartTaskCloudDemoComponent {
constructor(
private cloudLayoutService: CloudLayoutService,
private notificationService: NotificationService,
private router: Router) {
}
onStartTaskSuccess() {
this.cloudLayoutService.setCurrentTaskFilterParam({key: 'community'});
this.router.navigate([`/cloud/community/tasks`]);
}
onCancelStartTask() {
this.cloudLayoutService.setCurrentTaskFilterParam({key: 'community'});
this.router.navigate([`/cloud/community/tasks`]);
}
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(
event.response.body.message,
4000
);
}
}
@@ -0,0 +1,48 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-task-filter
[id]="filterId"
[appName]="'community'"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
(action)="onTaskFilterAction($event)"
(filterChange)="onFilterChange($event)">
</adf-cloud-edit-task-filter>
<div fxLayout="column" fxFlex fxLayoutAlign="space-between" *ngIf="editedFilter">
<adf-cloud-task-list #taskCloud
fxFlex
[appName]="''"
class="adf-cloud-layout-overflow"
[processDefinitionId]="editedFilter.processDefinitionId"
[processInstanceId]="editedFilter.processInstanceId"
[name]="editedFilter.taskName"
[id]="editedFilter.taskId"
[parentTaskId]="editedFilter.parentTaskId"
[priority]="editedFilter.priority"
[owner]="editedFilter.owner"
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
[lastModifiedTo]="editedFilter.lastModifiedTo"
[status]="editedFilter.status"
[assignee]="editedFilter.assignee"
[createdDate]="editedFilter.createdDate"
[dueDate]="editedFilter.dueDate"
[sorting]="sortArray"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-task-list>
<adf-pagination
[target]="taskCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(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>
</div>
</div>
@@ -0,0 +1,131 @@
/*!
* @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, OnInit } from '@angular/core';
import { TaskListCloudComponent, TaskListCloudSortingModel, TaskFilterCloudModel, TaskFilterCloudService } from '@alfresco/adf-process-services-cloud';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { ActivatedRoute, Router } from '@angular/router';
import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-task-cloud.component.html',
styles: [`.adf-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100%;
}
`]
})
export class CommunityTasksCloudDemoComponent implements OnInit {
public static ACTION_SAVE_AS = 'saveAs';
static TASK_FILTER_PROPERTY_KEYS = 'adf-edit-task-filter';
@ViewChild('taskCloud')
taskCloud: TaskListCloudComponent;
isFilterLoaded = false;
selectedRow: any;
sortArray: TaskListCloudSortingModel[];
editedFilter: TaskFilterCloudModel;
taskFilterProperties: any = { filterProperties: [], sortProperties: [], actions: [] };
filterId;
multiselect: boolean;
selectedRows: string[] = [];
testingMode: boolean;
selectionMode: string;
taskDetailsRedirection: boolean;
constructor(
private cloudLayoutService: CloudLayoutService,
private route: ActivatedRoute,
private router: Router,
private taskFilterCloudService: TaskFilterCloudService,
private userPreference: UserPreferencesService,
private appConfig: AppConfigService) {
const properties = this.appConfig.get<Array<any>>(CommunityTasksCloudDemoComponent.TASK_FILTER_PROPERTY_KEYS);
if (properties) {
this.taskFilterProperties = properties;
}
}
ngOnInit() {
this.isFilterLoaded = false;
this.route.queryParams.subscribe((params) => {
if (Object.keys(params).length > 0) {
this.isFilterLoaded = true;
this.onFilterChange(params);
this.filterId = params.id;
} else {
setTimeout( () => {
this.loadDefaultFilters();
});
}
});
this.cloudLayoutService.getCurrentSettings()
.subscribe((settings) => this.setCurrentSettings(settings));
}
loadDefaultFilters() {
this.taskFilterCloudService.getTaskListFilters('community').subscribe( (filters: TaskFilterCloudModel[]) => {
this.onFilterChange(filters[0]);
});
}
setCurrentSettings(settings) {
if (settings) {
this.multiselect = settings.multiselect;
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
this.taskDetailsRedirection = settings.taskDetailsRedirection;
}
}
onChangePageSize(event) {
this.userPreference.paginationSize = event.maxItems;
}
resetSelectedRows() {
this.selectedRows = [];
}
onRowClick(taskId) {
if (!this.multiselect && this.selectionMode !== 'multiple' && this.taskDetailsRedirection) {
this.router.navigate([`/cloud/community/task-details/${taskId}`]);
}
}
onRowsSelected(nodes) {
this.resetSelectedRows();
this.selectedRows = nodes.map((node) => node.obj.entry);
}
onFilterChange(filter: any) {
this.editedFilter = Object.assign({}, filter);
this.sortArray = [new TaskListCloudSortingModel({ orderBy: this.editedFilter.sort, direction: this.editedFilter.order })];
}
onTaskFilterAction(filterAction: any) {
this.cloudLayoutService.setCurrentTaskFilterParam({ id: filterAction.filter.id });
if (filterAction.actionType === CommunityTasksCloudDemoComponent.ACTION_SAVE_AS) {
this.router.navigate([`/cloud/community/tasks/`], { queryParams: filterAction.filter });
}
}
}
@@ -0,0 +1,21 @@
<h4 data-automation-id="task-details-header">Simple page to show the taskId: {{ taskId }} of the app: {{ appName }}</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()"
(taskCompleted)="onTaskCompleted()"
(taskUnclaimed)="onUnclaimTask()"
(formSaved)="onFormSaved()">
</adf-cloud-task-form>
</div>
<adf-cloud-task-header fxFlex
[appName]="''"
[taskId]="taskId">
</adf-cloud-task-header>
</div>
</div>
@@ -0,0 +1,20 @@
.adf {
&-task-detail-container {
display: flex;
}
&-task-tiitle {
margin-left:15px;
}
&-task-control {
width:70%;
}
&-demop-card-container {
width:30%;
font-family: inherit;
}
}
@@ -0,0 +1,71 @@
/*!
* @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 } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
@Component({
templateUrl: './community-task-details-cloud.component.html',
styleUrls: ['./community-task-details-cloud.component.scss']
})
export class CommunityTaskDetailsCloudDemoComponent {
taskId: string;
appName: string;
constructor(
private route: ActivatedRoute,
private router: Router,
private notificationService: NotificationService
) {
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;
}
goBack() {
this.router.navigate([`/cloud/community/`]);
}
onCompletedTask() {
this.goBack();
}
onUnclaimTask() {
this.goBack();
}
onClaimTask() {
this.goBack();
}
onTaskCompleted() {
this.goBack();
}
onFormSaved() {
this.notificationService.openSnackMessage('Task has been saved successfully');
}
}
@@ -19,7 +19,7 @@
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
</mat-radio-group>
<mat-form-field *ngIf="!isPeopleAppNameSelected()" class="adf-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.ROLE' | translate }} ['ACTIVITI_ADMIN', "ACTIVITI_USER"]</mat-label>
<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" />
</mat-form-field>
<mat-form-field *ngIf="isPeopleAppNameSelected()" class="adf-preselect-value">
@@ -76,7 +76,7 @@
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
</mat-radio-group>
<mat-form-field *ngIf="!isGroupAppNameSelected()" class="adf-preselect-value">
<mat-label>{{ 'PEOPLE_GROUPS_CLOUD.ROLE' | translate }} ['ACTIVITI_ADMIN', "ACTIVITI_USER"]</mat-label>
<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"/>
</mat-form-field>
<mat-form-field *ngIf="isGroupAppNameSelected()" class="adf-preselect-value">
@@ -16,7 +16,7 @@
.adf-preselect-value {
margin-right: 15px;
min-width: 330px;
min-width: 25%;
&-big {
width:60%;
@@ -53,6 +53,7 @@ export class ProcessesCloudDemoComponent implements OnInit {
selectedRows: string[] = [];
testingMode: boolean;
processFilterProperties: any = { filterProperties: [], sortProperties: [], actions: [] };
processDetailsRedirection: boolean;
editedFilter: ProcessFilterCloudModel;
@@ -89,6 +90,7 @@ export class ProcessesCloudDemoComponent implements OnInit {
this.multiselect = settings.multiselect;
this.testingMode = settings.testingMode;
this.selectionMode = settings.selectionMode;
this.processDetailsRedirection = settings.processDetailsRedirection;
}
}
@@ -101,7 +103,9 @@ export class ProcessesCloudDemoComponent implements OnInit {
}
onRowClick(processInstanceId) {
this.router.navigate([`/cloud/${this.appName}/process-details/${processInstanceId}`]);
if (!this.multiselect && this.selectionMode !== 'multiple' && this.processDetailsRedirection) {
this.router.navigate([`/cloud/${this.appName}/process-details/${processInstanceId}`]);
}
}
onFilterChange(query: any) {
@@ -27,6 +27,7 @@ export class CloudLayoutService {
multiselect: false,
testingMode: false,
taskDetailsRedirection: true,
processDetailsRedirection: true,
selectionMode: 'single'
};
@@ -55,9 +55,6 @@ export class StartProcessCloudDemoComponent implements OnInit {
}
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(
event.response.body.message,
4000
);
this.notificationService.openSnackMessage(event.response.body.entry.message);
}
}
@@ -19,6 +19,7 @@ import { Component, OnInit } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
import { CloudLayoutService } from './services/cloud-layout.service';
@Component({
templateUrl: './start-task-cloud-demo.component.html',
styleUrls: ['./start-task-cloud-demo.component.scss']
@@ -41,19 +42,16 @@ export class StartTaskCloudDemoComponent implements OnInit {
}
onStartTaskSuccess() {
this.cloudLayoutService.setCurrentTaskFilterParam({key: 'my-tasks'});
this.cloudLayoutService.setCurrentTaskFilterParam({ key: 'my-tasks' });
this.router.navigate([`/cloud/${this.appName}/tasks`]);
}
onCancelStartTask() {
this.cloudLayoutService.setCurrentTaskFilterParam({key: 'my-tasks'});
this.cloudLayoutService.setCurrentTaskFilterParam({ key: 'my-tasks' });
this.router.navigate([`/cloud/${this.appName}/tasks`]);
}
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(
event.response.body.message,
4000
);
this.notificationService.openSnackMessage(event.response.body.message);
}
}
@@ -3,23 +3,15 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<div fxLayout="row" fxFill>
<div fxLayout="column" fxFlex="80%">
<div class="adf-task-control">
<button mat-button (click)="goBack()">Cancel</button>
<button mat-button color="primary" *ngIf="canCompleteTask()" adf-cloud-complete-task
(success)="onCompletedTask()">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.COMPLETE' | translate }}</button>
<button mat-button color="primary" *ngIf="canClaimTask()" adf-cloud-claim-task
(success)="onClaimTask()">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.CLAIM' | translate }}</button>
<button mat-button color="primary" *ngIf="canUnClaimTask()" adf-cloud-unclaim-task
(success)="onUnclaimTask()">{{ 'ADF_TASK_LIST.DETAILS.BUTTON.UNCLAIM' | translate }}</button>
</div>
<adf-cloud-form *ngIf="hasTaskForm()" fxFlex="100%"
<adf-cloud-task-form
[appName]="appName"
[taskId]="taskId"
(formCompleted)="onTaskCompleted()"
(cancelClick)="goBack()"
(taskClaimed)="onClaimTask()"
(taskCompleted)="onTaskCompleted()"
(taskUnclaimed)="onUnclaimTask()"
(formSaved)="onFormSaved()">
</adf-cloud-form>
</adf-cloud-task-form>
</div>
<adf-cloud-task-header fxFlex
[appName]="appName"
@@ -15,26 +15,22 @@
* limitations under the License.
*/
import { Component, OnInit } from '@angular/core';
import { Component } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { TaskDetailsCloudModel, TaskCloudService, UploadCloudWidgetComponent } from '@alfresco/adf-process-services-cloud';
import { NotificationService, FormRenderingService } from '@alfresco/adf-core';
import { NotificationService } from '@alfresco/adf-core';
@Component({
templateUrl: './task-details-cloud-demo.component.html',
styleUrls: ['./task-details-cloud-demo.component.scss']
})
export class TaskDetailsCloudDemoComponent implements OnInit {
export class TaskDetailsCloudDemoComponent {
taskDetails: TaskDetailsCloudModel;
taskId: string;
appName: string;
constructor(
private route: ActivatedRoute,
private router: Router,
private formRenderingService: FormRenderingService,
private taskCloudService: TaskCloudService,
private notificationService: NotificationService
) {
this.route.params.subscribe((params) => {
@@ -43,41 +39,13 @@ export class TaskDetailsCloudDemoComponent implements OnInit {
this.route.parent.params.subscribe((params) => {
this.appName = params.appName;
});
this.formRenderingService.setComponentTypeResolver('upload', () => UploadCloudWidgetComponent, true);
}
ngOnInit() {
this.loadTaskDetailsById(this.appName, this.taskId);
}
loadTaskDetailsById(appName: string, taskId: string) {
this.taskCloudService.getTaskById(appName, taskId).subscribe(
(taskDetails: TaskDetailsCloudModel ) => {
this.taskDetails = taskDetails;
});
}
isTaskValid(): boolean {
return this.appName !== undefined && this.taskId !== undefined;
}
canCompleteTask(): boolean {
return this.taskDetails && !this.taskDetails.formKey && this.taskCloudService.canCompleteTask(this.taskDetails);
}
canClaimTask(): boolean {
return this.taskDetails && this.taskCloudService.canClaimTask(this.taskDetails);
}
canUnClaimTask(): boolean {
return this.taskDetails && this.taskCloudService.canUnclaimTask(this.taskDetails);
}
hasTaskForm(): boolean {
return this.taskDetails && this.taskDetails.formKey;
}
goBack() {
this.router.navigate([`/cloud/${this.appName}/`]);
}
@@ -98,6 +66,10 @@ export class TaskDetailsCloudDemoComponent implements OnInit {
this.goBack();
}
onFormContentClicked(resourceId) {
this.router.navigate([`/cloud/${this.appName}/task-details/${this.taskId}/files/${resourceId.nodeId}/view`]);
}
onFormSaved() {
this.notificationService.openSnackMessage('Task has been saved successfully');
}
@@ -1,77 +1,8 @@
<div>
<mat-nav-list class="adf-list-confgurations">
<mat-list-item (click)="metadataConfClick()">
<a matLine id="adf-metadata-conf">Metadata App config editor</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="searchConfClick()">
<a matLine id="adf-search-conf" >Search App config editor</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="fileConfClick()">
<a matLine id="adf-file-conf" >Excluded config file</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="taskHeaderConfClick()">
<a matLine id="adf-task-conf" >Task header</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="processInstanceHeaderConfClick()">
<a matLine id="adf-process-conf" >Process instance Header</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="startProcessConfClick()">
<a matLine id="adf-start-process-conf">Start process</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="applicationListCloudConfClick()">
<a matLine id="adf-apps-cloud-conf">Application List Cloud</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="taskListCloudConfClick()">
<a matLine id="adf-task-list-cloud-conf">Task List Cloud</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="editProcessFilterConfClick()">
<a matLine id="adf-edit-process-filter-conf">Edit process filter</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="processListCloudConfClick()">
<a matLine id="adf-process-list-cloud-conf">Process List Cloud</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
</mat-list-item>
<mat-list-item (click)="editTaskFilterConfClick()">
<a matLine id="adf-edit-task-filter-conf">Edit task filter</a>
<mat-list-item (click)="appConfigClick()">
<a matLine id="adf-app-conf">App Config Editor</a>
<button mat-icon-button>
<mat-icon>info</mat-icon>
</button>
@@ -16,7 +16,12 @@
*/
import { Component } from '@angular/core';
import { AppConfigService, NotificationService, UserPreferencesService, UserPreferenceValues } from '@alfresco/adf-core';
import {
AppConfigService,
NotificationService,
UserPreferencesService,
UserPreferenceValues
} from '@alfresco/adf-core';
@Component({
selector: 'app-config-editor',
@@ -27,7 +32,7 @@ export class ConfigEditorComponent {
editor: any;
code: any;
field = 'content-metadata';
field: string;
invalidJson = false;
isUserPreference = false;
userPreferenceProperty: string;
@@ -48,7 +53,7 @@ export class ConfigEditorComponent {
constructor(private appConfig: AppConfigService,
private userPreferencesService: UserPreferencesService,
private notificationService: NotificationService) {
this.code = JSON.stringify(appConfig.config['content-metadata']);
this.code = JSON.stringify(appConfig.config);
}
onSave() {
@@ -56,20 +61,14 @@ export class ConfigEditorComponent {
if (this.isUserPreference) {
this.userPreferencesService.set(this.userPreferenceProperty, JSON.parse(this.editor.getValue()));
} else {
this.appConfig.config[this.field] = JSON.parse(this.editor.getValue());
this.appConfig.config = JSON.parse(this.editor.getValue());
}
} catch (error) {
this.invalidJson = true;
this.notificationService.openSnackMessage(
'Wrong Code configuration ' + error,
1000
);
this.notificationService.openSnackMessage('Wrong Code configuration ' + error);
} finally {
if (!this.invalidJson) {
this.notificationService.openSnackMessage(
'Saved',
1000
);
this.notificationService.openSnackMessage('Saved');
}
}
}
@@ -78,10 +77,9 @@ export class ConfigEditorComponent {
this.code = '';
}
fileConfClick() {
appConfigClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['files']);
this.field = 'files';
this.code = JSON.stringify(this.appConfig.config);
this.indentCode();
}
@@ -89,7 +87,7 @@ export class ConfigEditorComponent {
this.isUserPreference = true;
this.userPreferenceProperty = 'textOrientation';
this.userPreferencesService.select( this.userPreferenceProperty).subscribe((textOrientation: number) => {
this.userPreferencesService.select(this.userPreferenceProperty).subscribe((textOrientation: number) => {
this.code = JSON.stringify(textOrientation);
this.field = 'textOrientation';
this.indentCode();
@@ -98,69 +96,6 @@ export class ConfigEditorComponent {
this.indentCode();
}
searchConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['search']);
this.field = 'search';
this.indentCode();
}
metadataConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['content-metadata']);
this.field = 'content-metadata';
this.indentCode();
}
taskHeaderConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-task-header']);
this.field = 'adf-task-header';
this.indentCode();
}
processInstanceHeaderConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-process-instance-header']);
this.field = 'adf-process-instance-header';
this.indentCode();
}
startProcessConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-start-process']);
this.field = 'adf-start-process';
this.indentCode();
}
taskListCloudConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-cloud-task-list']);
this.field = 'adf-cloud-task-list';
this.indentCode();
}
editProcessFilterConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-edit-process-filter']);
this.field = 'adf-edit-process-filter';
this.indentCode();
}
editTaskFilterConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-edit-task-filter']);
this.field = 'adf-edit-task-filter';
this.indentCode();
}
processListCloudConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['adf-cloud-process-list']);
this.field = 'adf-cloud-process-list';
this.indentCode();
}
infinitePaginationConfClick() {
this.isUserPreference = true;
this.userPreferenceProperty = UserPreferenceValues.PaginationSize;
@@ -181,13 +116,6 @@ export class ConfigEditorComponent {
});
}
applicationListCloudConfClick() {
this.isUserPreference = false;
this.code = JSON.stringify(this.appConfig.config['alfresco-deployed-apps']);
this.field = 'alfresco-deployed-apps';
this.indentCode();
}
indentCode() {
setTimeout(() => {
this.editor.getAction('editor.action.formatDocument').run();
@@ -15,4 +15,15 @@
</mat-expansion-panel-header>
<button mat-raised-button (click)="openConfirmCustomDialog()">Open Custom Dialog</button>
</mat-expansion-panel>
<mat-expansion-panel>
<mat-expansion-panel-header>
<mat-panel-title>
Confirm Dialog Third Option
</mat-panel-title>
<mat-panel-description>
Provide extra button in the action section
</mat-panel-description>
</mat-expansion-panel-header>
<button mat-raised-button (click)="openConfirmCustomActionDialog()">Open Custom Dialog</button>
</mat-expansion-panel>
</mat-accordion>
@@ -48,4 +48,22 @@ export class ConfirmDialogExampleComponent {
minWidth: '250px'
});
}
openConfirmCustomActionDialog() {
const thirdOptionLabel = 'Yes. Don\'t Show it again';
const dialog = this.dialog.open(ConfirmDialogComponent, {
data: {
title: 'Upload',
thirdOptionLabel: thirdOptionLabel,
message: `This is the default message`
},
minWidth: '250px'
});
dialog.afterClosed().subscribe((status) => {
// do the third option label operation
if ( status === thirdOptionLabel) {
// console.log('third option clicked');
}
});
}
}
@@ -0,0 +1,24 @@
<div style="height: 310px; overflow-y: auto;" data-automation-id="datatable">
<adf-datatable
#dataTable
[data]="data">
</adf-datatable>
</div>
<div>
Paste clipboard:
<input data-automation-id="paste clipboard input">
</div>
<div style="height: 310px; overflow-y: auto;" data-automation-id="copyClipboard-datatable">
<adf-datatable
[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="createdBy" title="Created By"></data-column>
<data-column key="json" type="json" title="Json" [copyContent]="true"></data-column>
</data-columns>
</adf-datatable>
</div>
@@ -0,0 +1,134 @@
/*!
* @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, Input } from '@angular/core';
import { DataColumn, DataRow } from '@alfresco/adf-core';
import { ObjectDataTableAdapter } from '@alfresco/adf-core';
export class FilteredDataAdapter extends ObjectDataTableAdapter {
filterValue = '';
filterKey = 'name';
getRows(): Array<DataRow> {
let rows = super.getRows();
const filter = (this.filterValue || '').trim().toLowerCase();
if (this.filterKey && filter) {
rows = rows.filter((row) => {
const value = row.getValue(this.filterKey);
if (value !== undefined && value !== null) {
const stringValue: string = value.toString().trim().toLowerCase();
return stringValue.startsWith(filter);
}
return false;
});
}
return rows;
}
constructor(data?: any[], schema?: DataColumn[]) {
super(data, schema);
}
}
@Component({
selector: 'app-datatable',
templateUrl: './datatable.component.html'
})
export class DataTableComponent {
@Input()
selectionMode = 'single';
dataForCopy = new FilteredDataAdapter(
[
{
id: 1,
name: 'First',
createdBy: 'Created one',
json: null
},
{
id: 2,
name: 'Second',
createdBy: 'Created two',
json: {
id: 4
}
},
{
id: 3,
name: 'Third',
createdBy: 'Created three',
json: {
id: 4,
name: 'Image 8',
createdOn: new Date(2016, 6, 2, 15, 8, 4)
}
}
]
);
data = new FilteredDataAdapter(
[
{
id: 1,
name: 'Name 1',
createdBy: 'Created One',
icon: 'material-icons://folder_open',
json: null
},
{
id: 2,
name: 'Name 2',
createdBy: 'Created Two',
icon: 'material-icons://accessibility',
json: null
},
{
id: 3,
name: 'Name 3',
createdBy: 'Created Three',
icon: 'material-icons://alarm',
json: null
},
{
id: 4,
name: 'Image 8',
createdBy: 'Created Four',
icon: 'material-icons://alarm',
json: {
id: 4,
name: 'Image 8',
createdOn: new Date(2016, 6, 2, 15, 8, 4),
createdBy: {
name: 'Felipe',
lastname: 'Melo'
},
icon: 'material-icons://alarm'
}
}
],
[
{ type: 'image', key: 'icon', title: '', srTitle: 'Thumbnail' },
{ type: 'text', key: 'id', title: 'Id', sortable: true , cssClass: '', copyContent: true },
{ type: 'text', key: 'name', title: 'Name', cssClass: 'adf-ellipsis-cell', sortable: true, copyContent: false },
{ type: 'text', key: 'createdBy', title: 'Created By', sortable: true, cssClass: ''},
{ type: 'json', key: 'json', title: 'Json', cssClass: 'adf-expand-cell-2', copyContent: true}
]
);
}
@@ -0,0 +1,41 @@
/*!
* @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 { NgModule } from '@angular/core';
import { DataTableComponent } from './datatable.component';
import { Routes, RouterModule } from '@angular/router';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { ContentModule } from '@alfresco/adf-content-services';
const routes: Routes = [
{
path: '',
component: DataTableComponent
}
];
@NgModule({
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes),
ContentModule.forChild()
],
declarations: [DataTableComponent]
})
export class AppDataTableCopyModule {}
@@ -10,7 +10,7 @@
Sticky header
</mat-slide-toggle>
<div style="height: 310px; overflow-y: auto;">
<div style="height: 310px; overflow-y: auto;" data-automation-id="datatable">
<adf-datatable
#dataTable
[data]="data"
@@ -56,4 +56,4 @@
<button mat-raised-button (click)="addRow()">{{ 'DATATABLE.ADD_ROW'| translate }}</button>
<button mat-raised-button (click)="replaceRows()">{{ 'DATATABLE.REPLACE_ROWS'| translate }}</button>
<button mat-raised-button (click)="replaceColumns()">{{ 'DATATABLE.REPLACE_COLUMNS'| translate }}</button>
</div>
</div>
@@ -129,7 +129,7 @@ export class DataTableComponent {
[
{ type: 'image', key: 'icon', title: '', srTitle: 'Thumbnail' },
{ type: 'text', key: 'id', title: 'Id', sortable: true , cssClass: '' },
{ type: 'text', key: 'createdOn', title: 'Created On', sortable: true, cssClass: 'adf-ellipsis-cell adf-expand-cell-2' },
{ 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'}
@@ -1,6 +1,8 @@
<h1>DataTable Drag and Drop Demo</h1>
<div
<div data-automation-id="datatable"
(header-dragover)="onDragOver($event)"
(header-drop)="onDrop($event)"
(cell-dragover)="onDragOver($event)"
(cell-drop)="onDrop($event)">
<adf-datatable [data]="data"></adf-datatable>
</div>
@@ -88,6 +88,10 @@ export class DataTableDnDComponent implements OnInit {
this.data.setSorting(new DataSorting('id', 'asc'));
}
onDragOver(event: CustomEvent) {
event.preventDefault();
}
onDrop(event: DataTableDropEvent) {
event.preventDefault();
@@ -38,7 +38,7 @@ import { Node } from '@alfresco/js-api';
`,
changeDetection: ChangeDetectionStrategy.OnPush,
encapsulation: ViewEncapsulation.None,
host: { class: 'adf-datatable-cell adf-datatable-link adf-name-column' }
host: { class: 'adf-datatable-content-cell adf-datatable-link adf-name-column' }
})
export class NameColumnComponent implements OnInit, OnDestroy {
@Input()
@@ -3,21 +3,23 @@
<ng-template let-node="node" #sidebarRightTemplate>
<adf-info-drawer [title]="'APP.INFO_DRAWER.TITLE' | translate">
<adf-info-drawer-tab [label]="'APP.INFO_DRAWER.COMMENTS' | translate">
<adf-info-drawer-tab label="APP.INFO_DRAWER.COMMENTS">
<adf-comments [nodeId]="nodeId" [readOnly]="!isCommentEnabled"></adf-comments>
</adf-info-drawer-tab>
<adf-info-drawer-tab [label]="'APP.INFO_DRAWER.PROPERTIES' | translate">
<adf-info-drawer-tab label="APP.INFO_DRAWER.PROPERTIES">
<adf-content-metadata-card *ngIf="isPreset" [node]="node"
[multi]="multi"
[preset]="customPreset"
[readOnly]="isReadOnly"
[displayAspect]="showAspect"
[displayDefaultProperties]="displayDefaultProperties"
[displayEmpty]="displayEmptyMetadata"></adf-content-metadata-card>
<adf-content-metadata-card *ngIf="!isPreset" [node]="node"
[multi]="multi"
[readOnly]="isReadOnly"
[displayAspect]="showAspect"
[displayDefaultProperties]="displayDefaultProperties"
[displayEmpty]="displayEmptyMetadata"></adf-content-metadata-card>
@@ -71,6 +73,19 @@
</mat-slide-toggle>
</p>
<p class="toggle">
<mat-form-field floatPlaceholder="float">
<input matInput
placeholder="Display Aspect"
[(ngModel)]="desiredAspect">
</mat-form-field>
<button mat-raised-button (click)="applyAspect()" color="primary">
Apply Aspect
</button>
</p>
<p class="toggle">
<ng-container *ngIf="isPreset">
<mat-form-field floatPlaceholder="float">
@@ -89,7 +104,7 @@
</adf-info-drawer-tab>
<adf-info-drawer-tab [label]="'APP.INFO_DRAWER.VERSIONS' | translate">
<adf-info-drawer-tab label="APP.INFO_DRAWER.VERSIONS">
<mat-card>
<mat-card-content>
<adf-version-manager [node]="node"
@@ -105,7 +120,7 @@
<ng-template let-node="node" #sidebarLeftTemplate>
<adf-info-drawer [title]="'Viewer Options'">
<adf-info-drawer-tab [label]="'Settings'">
<adf-info-drawer-tab label="Settings">
<p class="toggle">
<mat-slide-toggle
id="adf-switch-custoname"
@@ -118,7 +133,7 @@
<p class="toggle">
<ng-container *ngIf="customName">
<mat-form-field floatPlaceholder="float">
<mat-form-field floatLabel="never">
<input matInput
placeholder="Custom Name"
[(ngModel)]="displayName"
@@ -55,6 +55,8 @@ export class FileViewComponent implements OnInit {
isCommentEnabled = false;
showTabWithIcon = false;
showTabWithIconAndLabel = false;
desiredAspect: string = null;
showAspect: string = null;
constructor(private router: Router,
private route: ActivatedRoute,
@@ -188,4 +190,8 @@ export class FileViewComponent implements OnInit {
this.isPreset = true;
}, 100);
}
applyAspect() {
this.showAspect = this.desiredAspect;
}
}
@@ -288,7 +288,7 @@
*ngIf="searchTerm"
key="search"
title="Search"
class="adf-desktop-only">
class="adf-desktop-only adf-expand-cell-3">
<ng-template let-entry="$implicit">
<div [innerHTML]="searchResultsHighlight(entry.row.node.entry.search) | highlight:searchTerm">
</div>
@@ -447,13 +447,13 @@
<div info-drawer-content>
<adf-info-drawer [title]="'Details'" *ngIf="documentList.selection[0]">
<adf-info-drawer-tab [label]="'Properties'">
<adf-info-drawer-tab label="Properties">
<adf-content-metadata-card
[node]="documentList.selection[0].entry"
[displayEmpty]="displayEmptyMetadata">
</adf-content-metadata-card>
</adf-info-drawer-tab>
<adf-info-drawer-tab [label]="'Versions'">
<adf-info-drawer-tab label="Versions">
<ng-container *ngIf="hasOneFileSelected();else choose_document_template">
<ng-container *ngIf="userHasPermissionToManageVersions(); else no_permission_to_versions">
<adf-version-manager
@@ -36,16 +36,17 @@ import {
PermissionStyleModel,
UploadFilesEvent,
ConfirmDialogComponent,
LibraryDialogComponent
LibraryDialogComponent,
ContentMetadataService
} from '@alfresco/adf-content-services';
import { SelectAppsDialogComponent } from '@alfresco/adf-process-services';
import { VersionManagerDialogAdapterComponent } from './version-manager-dialog-adapter.component';
import { MetadataDialogAdapterComponent } from './metadata-dialog-adapter.component';
import { Subscription } from 'rxjs';
import { Subscription, Subject } from 'rxjs';
import { PreviewService } from '../../services/preview.service';
import { debounceTime } from 'rxjs/operators';
import { debounceTime, takeUntil } from 'rxjs/operators';
import { SearchEntry } from '@alfresco/js-api';
const DEFAULT_FOLDER_TO_SHOW = '-my-';
@@ -57,6 +58,8 @@ const DEFAULT_FOLDER_TO_SHOW = '-my-';
})
export class FilesComponent implements OnInit, OnChanges, OnDestroy {
protected onDestroy$ = new Subject<boolean>();
errorMessage: string = null;
nodeId: any;
showViewer = false;
@@ -213,7 +216,8 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
private preview: PreviewService,
@Optional() private route: ActivatedRoute,
public authenticationService: AuthenticationService,
public alfrescoApiService: AlfrescoApiService) {
public alfrescoApiService: AlfrescoApiService,
private contentMetadataService: ContentMetadataService) {
}
showFile(event) {
@@ -258,7 +262,6 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
});
}
// this.disableDragArea = false;
this.uploadService.fileUploadComplete.asObservable()
.pipe(debounceTime(300))
.subscribe((value) => this.onFileUploadEvent(value));
@@ -267,13 +270,19 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
this.onCreateFolder = this.contentService.folderCreate.subscribe((value) => this.onFolderAction(value));
this.onEditFolder = this.contentService.folderEdit.subscribe((value) => this.onFolderAction(value));
// this.permissionsStyle.push(new PermissionStyleModel('document-list__create', AllowableOperationsEnum.CREATE));
// this.permissionsStyle.push(new PermissionStyleModel('document-list__disable', AllowableOperationsEnum.NOT_CREATE, false, true));
this.contentMetadataService.error
.pipe(takeUntil(this.onDestroy$))
.subscribe((err: { message: string }) => {
this.notificationService.showError(err.message);
});
}
ngOnDestroy() {
this.onCreateFolder.unsubscribe();
this.onEditFolder.unsubscribe();
this.onDestroy$.next(true);
this.onDestroy$.complete();
}
ngOnChanges(changes: SimpleChanges) {
@@ -349,10 +358,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
}
openSnackMessage(event: any) {
this.notificationService.openSnackMessage(
event,
4000
);
this.notificationService.openSnackMessage(event);
}
emitReadyEvent(event: NodePaging) {
@@ -579,10 +585,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
});
dialogInstance.componentInstance.error.subscribe((message) => {
this.notificationService.openSnackMessage(
message,
6000
);
this.notificationService.openSnackMessage(message);
});
}
@@ -26,7 +26,7 @@ import { Subscription } from 'rxjs';
templateUrl: 'form.component.html',
styleUrls: ['form.component.scss'],
providers: [
{provide: FormService, useClass: InMemoryFormService}
{ provide: FormService, useClass: InMemoryFormService }
],
encapsulation: ViewEncapsulation.None
})
@@ -87,10 +87,7 @@ export class FormComponent implements OnInit, OnDestroy {
try {
this.parseForm();
} catch (error) {
this.notificationService.openSnackMessage(
'Wrong form configuration',
4000
);
this.notificationService.openSnackMessage('Wrong form configuration');
}
}
@@ -0,0 +1,41 @@
/*!
* @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 { NgModule } from '@angular/core';
import { LoginComponent } from './login.component';
import { Routes, RouterModule } from '@angular/router';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { ContentModule } from '@alfresco/adf-content-services';
const routes: Routes = [
{
path: '',
component: LoginComponent
}
];
@NgModule({
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes),
ContentModule.forChild()
],
declarations: [LoginComponent]
})
export class AppLoginModule {}
@@ -65,4 +65,10 @@
{{snackBarConfigObject}}
</p>
</div>
<div>
<h3>Quick Messages</h3>
<button mat-button color="primary" (click)="quickInfo()">Info</button>
<button mat-button color="warn" (click)="quickError()">Error</button>
<button mat-button color="accent" (click)="quickWarning()">Warning</button>
</div>
</div>
@@ -117,4 +117,16 @@ export class NotificationsComponent implements OnInit {
dismissSnackBar() {
this.notificationService.dismissSnackMessageAction();
}
quickError() {
this.notificationService.showError(this.message, 'Fix');
}
quickInfo() {
this.notificationService.showInfo(this.message);
}
quickWarning() {
this.notificationService.showWarning(this.message, 'Undo');
}
}
@@ -20,6 +20,7 @@ import { NotificationsComponent } from './notifications.component';
import { Routes, RouterModule } from '@angular/router';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { MatButtonModule } from '@angular/material/button';
const routes: Routes = [
{
@@ -32,7 +33,8 @@ const routes: Routes = [
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes)
RouterModule.forChild(routes),
MatButtonModule
],
declarations: [NotificationsComponent]
})
@@ -70,10 +70,7 @@ export class DemoPermissionComponent implements OnInit {
showErrorMessage(error) {
const message = error.message ? error.message : error;
this.notificationService.openSnackMessage(
message,
4000
);
this.notificationService.openSnackMessage(message);
}
}
@@ -1,5 +1,8 @@
<label for="nodeId"><b>{{'TAG.INSERT' | translate }}</b></label><br>
<input id="nodeId" type="text" size="48" [(ngModel)]="nodeId"><br>
<input id="nodeId" type="text" size="48" [(ngModel)]="nodeIdInput">
<button mat-raised-button id="adf-tag-node-send" (click)="onSubmit()" color="primary">Confirm</button>
<br>
<div fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div class="adf-tag-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
@@ -25,9 +25,14 @@ import { Component } from '@angular/core';
export class TagComponent {
nodeId = '';
nodeIdInput = '';
showDelete = true;
toggleDeleteButton() {
this.showDelete = !this.showDelete;
}
onSubmit() {
this.nodeId = this.nodeIdInput;
}
}
@@ -22,6 +22,7 @@ import { debounceTime } from 'rxjs/operators';
import moment from 'moment-es6';
@Component({
selector: 'app-task-list-demo',
templateUrl: './task-list-demo.component.html',
styleUrls: [`./task-list-demo.component.scss`]
})
@@ -31,6 +31,5 @@
<adf-document-list #customEmptyDocumentList>
<adf-custom-empty-content-template>
<div>This is a custom no content template</div>
<mat-icon>cancel_presentation</mat-icon>
</adf-custom-empty-content-template>
</adf-document-list>
@@ -61,7 +61,8 @@
key="name"
title="DOCUMENT_LIST.COLUMNS.DISPLAY_NAME">
<ng-template let-value="value" let-context>
<span class="adf-datatable-cell" title="{{ context?.row?.obj | adfNodeNameTooltip }}">{{ value }}</span>
<span title="{{ context?.row?.obj | adfNodeNameTooltip }}"
class="adf-datatable-cell-value">{{ value }}</span>
</ng-template>
</data-column>
BIN
View File
Binary file not shown.
+6 -2
View File
@@ -98,7 +98,7 @@ for more information about installing and using the source code.
| [Info drawer layout component](core/components/info-drawer-layout.component.md) | Displays a sidebar-style information panel. | [Source](../lib/core/info-drawer/info-drawer-layout.component.ts) |
| [Info Drawer Tab component](core/components/info-drawer-tab.component.md) | Renders tabs in a Info drawer component. | [Source](../lib/core/info-drawer/info-drawer.component.ts) |
| [Info Drawer component](core/components/info-drawer.component.md) | Displays a sidebar-style information panel with tabs. | [Source](../lib/core/info-drawer/info-drawer.component.ts) |
| [JsonCell component](core/components/json-cell.component.md) | Show Json formated value inside datatable component. | [Source](../lib/core/datatable/components/datatable/json-cell.component.ts) |
| [Json Cell component](core/components/json-cell.component.md) | Shows a JSON-formatted value inside a datatable component. | [Source](../lib/core/datatable/components/datatable/json-cell.component.ts) |
| [Language Menu component](core/components/language-menu.component.md) | Displays all the languages that are present in "app.config.json" and the default (EN). | [Source](../lib/core/language-menu/language-menu.component.ts) |
| [Login Dialog Panel component](core/components/login-dialog-panel.component.md) | Shows and manages a login dialog. | [Source](../lib/core/login/components/login-dialog-panel.component.ts) |
| [Login Dialog component](core/components/login-dialog.component.md) | Allows a user to perform a login via a dialog. | [Source](../lib/core/login/components/login-dialog.component.ts) |
@@ -107,7 +107,7 @@ for more information about installing and using the source code.
| [Sidebar action menu component](core/components/sidebar-action-menu.component.md) | Displays a sidebar-action menu information panel. | [Source](../lib/core/layout/components/sidebar-action/sidebar-action-menu.component.ts) |
| [Sidenav Layout component](core/components/sidenav-layout.component.md) | Displays the standard three-region ADF application layout. | [Source](../lib/core/layout/components/sidenav-layout/sidenav-layout.component.ts) |
| [Sorting Picker Component](core/components/sorting-picker.component.md) | Selects from a set of predefined sorting definitions and directions. | [Source](../lib/core/sorting-picker/sorting-picker.component.ts) |
| [Start Form component](core/components/start-form.component.md) | Displays the Start Form for a process. | [Source](../lib/process-services/form/start-form.component.ts) |
| [Start Form component](core/components/start-form.component.md) | Displays the Start Form for a process. | [Source](../lib/core/form/components/start-form.component.ts) |
| [Text Mask directive](core/components/text-mask.component.md) | Implements text field input masks. | [Source](../lib/core/form/components/widgets/text/text-mask.component.ts) |
| [Toolbar Divider Component](core/components/toolbar-divider.component.md) | Divides groups of elements in a Toolbar with a visual separator. | [Source](../lib/core/toolbar/toolbar-divider.component.ts) |
| [Toolbar Title Component](core/components/toolbar-title.component.md) | Supplies custom HTML to be included in a Toolbar component title. | [Source](../lib/core/toolbar/toolbar-title.component.ts) |
@@ -158,6 +158,7 @@ for more information about installing and using the source code.
| [Format Space pipe](core/pipes/format-space.pipe.md) | Replaces all the white space in a string with a supplied character. | [Source](../lib/core/pipes/format-space.pipe.ts) |
| [Full name pipe](core/pipes/full-name.pipe.md) | Joins the first and last name properties from a UserProcessModel object into a single string. | [Source](../lib/core/pipes/full-name.pipe.ts) |
| [Mime Type Icon pipe](core/pipes/mime-type-icon.pipe.md) | Retrieves an icon to represent a MIME type. | [Source](../lib/core/pipes/mime-type-icon.pipe.ts) |
| [Multi Value pipe](core/pipes/multi-value.pipe.md) | Takes an array of strings and turns it into one string where items are separated by a separator. The default separator applied to the list is ', ', however, you can set your own separator in the params of the pipe. | [Source](../lib/core/pipes/multi-value.pipe.ts) |
| [Node Name Tooltip pipe](core/pipes/node-name-tooltip.pipe.md) | Formats the tooltip for a Node. | [Source](../lib/core/pipes/node-name-tooltip.pipe.ts) |
| [Text Highlight pipe](core/pipes/text-highlight.pipe.md) | Adds highlighting to words or sections of text that match a search string. | [Source](../lib/core/pipes/text-highlight.pipe.ts) |
| [Time Ago pipe](core/pipes/time-ago.pipe.md) | Converts a recent past date into a number of days ago. | [Source](../lib/core/pipes/time-ago.pipe.ts) |
@@ -407,7 +408,9 @@ for more information about installing and using the source code.
| [App List Cloud Component](process-services-cloud/components/app-list-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows all deployed cloud application instances. | [Source](../lib/process-services-cloud/src/lib/app/components/app-list-cloud.component.ts) |
| [Edit Process Filter Cloud component](process-services-cloud/components/edit-process-filter-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows/edits process filter details. | [Source](../lib/process-services-cloud/src/lib/process/process-filters/components/edit-process-filter-cloud.component.ts) |
| [Edit Task Filter Cloud component](process-services-cloud/components/edit-task-filter-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Edits task filter details. | [Source](../lib/process-services-cloud/src/lib/task/task-filters/components/edit-task-filter-cloud.component.ts) |
| [Form cloud custom outcomes component](process-services-cloud/components/form-cloud-custom-outcome.component.md) | Supplies custom outcome buttons to be included in Form cloud component. | [Source](../lib/process-services-cloud/src/lib/form/components/form-cloud-custom-outcomes.component.ts) |
| [Form cloud component](process-services-cloud/components/form-cloud.component.md) | Shows a form from Process Services. | [Source](../lib/process-services-cloud/src/lib/form/components/form-cloud.component.ts) |
| [Form definition selector Cloud componet](process-services-cloud/components/form-definition-selector-cloud.component.md) | Allows one form to be selected. | [Source](../lib/process-services-cloud/src/lib/form-definition-selector/components/form-definition-selector-cloud.component.ts) |
| [Group Cloud component](process-services-cloud/components/group-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Searches Groups. | [Source](../lib/process-services-cloud/src/lib/group/components/group-cloud.component.ts) |
| [People Cloud Component](process-services-cloud/components/people-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Allows one or more users to be selected (with auto-suggestion) based on the input parameters. | [Source](../lib/process-services-cloud/src/lib/task/start-task/components/people-cloud/people-cloud.component.ts) |
| [Process Filters Cloud Component](process-services-cloud/components/process-filters-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Lists all available process filters and allows to select a filter. | [Source](../lib/process-services-cloud/src/lib/process/process-filters/components/process-filters-cloud.component.ts) |
@@ -416,6 +419,7 @@ for more information about installing and using the source code.
| [Start Process Cloud Component](process-services-cloud/components/start-process-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Starts a process. | [Source](../lib/process-services-cloud/src/lib/process/start-process/components/start-process-cloud.component.ts) |
| [Start Task Cloud Component](process-services-cloud/components/start-task-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Creates/starts a new task for the specified app. | [Source](../lib/process-services-cloud/src/lib/task/start-task/components/start-task-cloud.component.ts) |
| [Task Filters Cloud component](process-services-cloud/components/task-filters-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows all available filters. | [Source](../lib/process-services-cloud/src/lib/task/task-filters/components/task-filters-cloud.component.ts) |
| [Form cloud component](process-services-cloud/components/task-form-cloud.component.md) | Shows a form for a task. | [Source](../lib/process-services-cloud/src/lib/form/components/task-form-cloud.component.ts) |
| [Task Header Cloud Component](process-services-cloud/components/task-header-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Shows all the information related to a task. | [Source](../lib/process-services-cloud/src/lib/task/task-header/components/task-header-cloud.component.ts) |
| [Task List Cloud component](process-services-cloud/components/task-list-cloud.component.md) ![Experimental](docassets/images/ExperimentalIcon.png) | Renders a list containing all the tasks matched by the parameters specified. | [Source](../lib/process-services-cloud/src/lib/task/task-list/components/task-list-cloud.component.ts) |
+1
View File
@@ -21,6 +21,7 @@ You can find further information about released versions of ADF in the
| ADF version | Content Services | Process Services |
| -- | -- | -- |
| [3.2.0](versionIndex.md#v320) - [3.2.1](versionIndex.md#v321) | **Full test:** v6.1.0 <br/> **Smoke test:** v5.2.4 | **Full test:** v7.1.0 (latest CI pipeline build), v1.9.0 <br/>**Smoke test:** v1.8.1 |
| [3.1.0](versionIndex.md#v310) | **Full test:** v6.1.0 RC7 <br/> **Smoke test:** v5.2.4 | **Full test:** v2.0.0 (latest CI pipeline build), v1.9.0 <br/>**Smoke test:** v1.8.1 |
| [3.0.0](versionIndex.md#v300) | **Full test:** v6.1.0 RC7 <br/> **Smoke test:** v5.2.4 | **Full test:** v2.0.0 (latest CI pipeline build), v1.9.0 <br/>**Smoke test:** v1.8.1 |
| [2.6.0](versionIndex.md#v260) | **Full test:** v6.0.0, v5.2.4 <br/> **Smoke test:** v5.2.3 | **Full test:** v1.9.0 <br/>**Smoke test:** v1.8.1, v1.7.0, v1.6.4 |
@@ -36,7 +36,7 @@ Indicates the current position within a navigation hierarchy.
| Name | Type | Description |
| ---- | ---- | ----------- |
| navigate | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the user clicks on a breadcrumb. |
| navigate | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`PathElement`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/PathElement.md)`>` | Emitted when the user clicks on a breadcrumb. |
## Details
@@ -11,6 +11,18 @@ Displays and edits metadata related to a node.
![Content metadata screenshot](../../docassets/images/ContentMetadata.png)
## Contents
- [Basic Usage](#basic-usage)
- [Class members](#class-members)
- [Properties](#properties)
- [Details](#details)
- [Application config presets](#application-config-presets)
- [Layout oriented config](#layout-oriented-config)
- [Displaying all properties](#displaying-all-properties)
- [What happens when there is a whitelisted aspect in the config but the given node doesn't relate to that aspect](#what-happens-when-there-is-a-whitelisted-aspect-in-the-config-but-the-given-node-doesnt-relate-to-that-aspect)
- [Multi value card properties](#multi-value-card-properties)
## Basic Usage
```html
@@ -28,6 +40,7 @@ Displays and edits metadata related to a node.
| Name | Type | Default value | Description |
| ---- | ---- | ------------- | ----------- |
| displayAspect | `string` | null | (optional) This flag displays desired aspect when open for the first time fields. |
| displayEmpty | `boolean` | false | (optional) This flag displays/hides empty metadata fields. |
| multi | `boolean` | false | (optional) This flag allows the component to display more than one accordion at a time. |
| node | [`Node`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) | | (required) The node entity to fetch metadata about |
@@ -216,7 +229,6 @@ The result of this config would be two accordion groups with the following prope
| kitten:favourite-food |
| kitten:recommended-food |
### Displaying all properties
You can list all the properties by simply adding the `includeAll: boolean` to your config. This config will display all the aspects and properties available for that specific file.
@@ -274,3 +286,22 @@ example below shows this with an aspect-oriented config:
Nothing - since this aspect is not related to the node, it will simply be ignored and not
displayed. The aspects to be displayed are calculated as an intersection of the preset's aspects and the aspects related to the node.
## Multi value card properties
Multi value properties are displayed one after another separated by a comma. This card makes use of the [Multi Value Pipe](../../core/pipes/multi-value.pipe.ts).
To customize the separator used by this card you can set it in your `app.config.json` inside your content-metadata configuration:
```json
"content-metadata": {
"presets": {
"default": {
"includeAll": true,
"exclude": "exif:exif",
"exif:exif": [ "exif:pixelXDimension", "exif:pixelYDimension"]
}
},
"multi-value-pipe-separator" : " - "
},
```
@@ -34,12 +34,12 @@ Opens a [Content Node Selector](content-node-selector.component.md) in its own
| currentFolderId | `string` | null | [Node](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) ID of the folder currently listed. |
| dropdownHideMyFiles | `boolean` | false | Hide the "My Files" option added to the site list by default. See the [Sites Dropdown component](sites-dropdown.component.md) for more information. |
| dropdownSiteList | [`SitePaging`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-core-rest-api/docs/SitePaging.md) | null | Custom site for site dropdown. This is the same as the `siteList`. property of the Sites Dropdown component (see its doc page for more information). |
| imageResolver | [`ImageResolver`](../../../lib/content-services/document-list/data/image-resolver.model.ts) | null | Custom image resolver function. See the [Image Resolver Model](../models/image-resolver.model.md) page for more information. |
| imageResolver | [`ImageResolver`](../../../lib/content-services/document-list/data/image-resolver.model.ts) | null | Custom image resolver function. See the [Image Resolver Model](image-resolver.model.md) page for more information. |
| isSelectionValid | [`ValidationFunction`](../../../lib/content-services/content-node-selector/content-node-selector-panel.component.ts) | defaultValidation | Function used to decide if the selected node has permission to be selected. Default value is a function that always returns true. |
| pageSize | `number` | | Number of items shown per page in the list. |
| where | `string` | | Custom _where_ filter function. See the [Document List component](../../content-services/components/document-list.component.md) for more information. |
| excludeSiteContent | `string[]` | | Custom list of site content componentIds. Used to filter out the corresponding items from the displayed nodes |
| rowFilter | [`RowFilter`](../../../lib/content-services/document-list/data/row-filter.model.ts) | | Custom row filter function. See the [Row Filter Model](../models/row-filter.model.md) page for more information. |
| rowFilter | [`RowFilter`](../../../lib/content-services/document-list/data/row-filter.model.ts) | | Custom row filter function. See the [Row Filter Model](row-filter.model.md) page for more information. |
### Events
@@ -62,7 +62,7 @@ Displays the documents from a repository.
| contextMenuActions | `boolean` | false | Toggles context menus for each row |
| display | `string` | DisplayMode.List | Change the display mode of the table. Can be "list" or "gallery". |
| emptyFolderImageUrl | `string` | | Custom image for empty folder. Default value: './assets/images/empty_doc_lib.svg' |
| imageResolver | `any \| null` | null | Custom function to choose image file paths to show. See the [Image Resolver Model](../models/image-resolver.model.md) page for more information. |
| imageResolver | `any \| null` | null | Custom function to choose image file paths to show. See the [Image Resolver Model](image-resolver.model.md) page for more information. |
| includeFields | `string[]` | | Include additional information about the node in the server request. For example: association, isLink, isLocked and others. |
| loading | `boolean` | false | Toggles the loading state and animated spinners for the component. Used in combination with `navigate=false` to perform custom navigation and loading state indication. |
| locationFormat | `string` | "/" | The default route for all the location-based columns (if declared). |
@@ -82,7 +82,7 @@ Displays the documents from a repository.
| thumbnails | `boolean` | false | Show document thumbnails rather than icons |
| where | `string` | | Filters the [`Node`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) list using the _where_ condition of the REST API (for example, isFolder=true). See the REST API documentation for more information. |
| currentFolderId | `string` | | The ID of the folder node to display or a reserved string alias for special sources |
| rowFilter | [`RowFilter`](../../../lib/content-services/document-list/data/row-filter.model.ts) | | Custom function to choose whether to show or hide rows. See the [Row Filter Model](../models/row-filter.model.md) page for more information. |
| rowFilter | [`RowFilter`](../../../lib/content-services/document-list/data/row-filter.model.ts) | | Custom function to choose whether to show or hide rows. See the [Row Filter Model](row-filter.model.md) page for more information. |
### Events
@@ -37,7 +37,7 @@ Indicates the current position within a navigation hierarchy using a dropdown me
| Name | Type | Description |
| ---- | ---- | ----------- |
| navigate | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<any>` | Emitted when the user clicks on a breadcrumb. |
| navigate | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`PathElement`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/PathElement.md)`>` | Emitted when the user clicks on a breadcrumb. |
## Details
@@ -19,8 +19,8 @@ Represents a main container component for custom search and faceted search setti
- [Categories and widgets](#categories-and-widgets)
- [Facet Fields](#facet-fields)
- [Facet Queries](#facet-queries)
- [Highlight](#highlight)
- [Facet Intervals](#facet-intervals)
- [Highlight](#highlight)
- [See also](#see-also)
## Basic usage
@@ -451,7 +451,6 @@ An example query for search highlighting could look like this:
}
}
}
```
The example above changes the highlighting prefix and postfix from the default to '¿?' for all
@@ -479,7 +478,8 @@ then be added in each node entry response. An example partial response is shown
}
]
},
```
```
## See also
- [Search Query Builder service](../services/search-query-builder.service.md)
@@ -10,7 +10,19 @@ Last reviewed: 2019-01-22
Requests a yes/no choice from the user.
![Confirm dialog](../../docassets/images/ConfirmDialog.png)
![Confirm dialog](../../docassets/images/ConfirmDialogYesAll.png)
## Dialog inputs
| Name | Type | Default value | Description |
| ---- | ---- | ---- | ----------- |
| title | `string` | `Confirm` | It will be placed in the dialog title section. |
| yesLabel | `string` | `yes` | It will be placed first in the dialog action section |
| noLabel | `string` | `no`| It will be placed last in the dialog action section |
| thirdOptionLabel (optional) | `string` | | It is not a mandatory input. it will be rendered in between yes and no label |
| message | `string` | `Do you want to proceed?` | It will be rendered in the dialog content area |
| htmlContent | `html` | | It will be rendered in the dialog content area |
*note*: `if input is not passed, default value will be rendered`
## Basic Usage
```ts
@@ -65,6 +77,26 @@ dialogRef.afterClosed().subscribe((result) => {
});
```
### Rendering with thirdOptionLabel
```
const thirdOptionLabel = "YES. DON'T SHOW IT AGAIN";
const dialog = this.dialog.open(ConfirmDialogComponent, {
data: {
title: 'Upload',
thirdOptionLabel: thirdOptionLabel,
message: `This is the default message`
},
minWidth: '250px'
});
dialog.afterClosed().subscribe((status) => {
// do the third option label operation
if ( status === thirdOptionLabel) {
// console.log('third option clicked');
}
});
```
## Details
This component lets the user make a yes/no choice to confirm an action. Use the
@@ -36,7 +36,7 @@ export interface SearchWidget {
| ---- | ---- | ------------- | ----------- |
| id | `string` | | Unique identifying value for the widget |
| settings | [`SearchWidgetSettings`](../../../lib/content-services/search/search-widget-settings.interface.ts) | | Settings for component properties |
| context | [`SearchQueryBuilderService`](../services/search-query-builder.service.md) | | Instance of the [Search Query Builder service](../services/search-query-builder.service.md) to process the query |
| context | [`SearchQueryBuilderService`](../../content-services/services/search-query-builder.service.md) | | Instance of the [Search Query Builder service](../services/search-query-builder.service.md) to process the query |
## Details
@@ -11,7 +11,7 @@ Defines the Image Resolver function used by the [Document List Component](../com
## Definitions
- `type` **ImageResolver** = (row: [`DataRow`](../../../lib/core/datatable/data/data-row.model.ts), column: [`DataColumn`](../../../lib/core/datatable/data/data-column.model.ts)) => `string`
- `type` **[ImageResolver](../../../lib/content-services/document-list/data/image-resolver.model.ts)** = (row: [`DataRow`](../../../lib/core/datatable/data/data-row.model.ts), column: [`DataColumn`](../../../lib/core/datatable/data/data-column.model.ts)) => `string`
- _row:_ [`DataRow`](../../../lib/core/datatable/data/data-row.model.ts) - Data that defines the row
- _column:_ [`DataColumn`](../../../lib/core/datatable/data/data-column.model.ts) - Data that defines the column
- **Returns** File path for the image
@@ -11,7 +11,7 @@ Defines the Row Filter function used by the [Document List Component](../compone
## Definitions
- `type` **RowFilter** = (value: [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts), index: `number`, array: [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts)`[]`) => any
- `type` **[RowFilter](../../../lib/content-services/document-list/data/row-filter.model.ts)** = (value: [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts), index: `number`, array: [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts)`[]`) => any
- _value:_ [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts) - Data that defines the row
- _index:_ `number` - Index of the row within the list
- _array:_ [`ShareDataRow`](../../../lib/content-services/document-list/data/share-data-row.model.ts)`[]` - The full set of rows for the list
@@ -23,10 +23,11 @@ Manages Document List information that is specific to a user.
- _node:_ `any` - [Node](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/Node.md) object
- _nodeId:_ `string` - ID of the node object
- **Returns** `string` - ID value
- **getRecentFiles**(personId: `string`, pagination: [`PaginationModel`](../../../lib/core/models/pagination.model.ts)): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`NodePaging`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/NodePaging.md)`>`<br/>
- **getRecentFiles**(personId: `string`, pagination: [`PaginationModel`](../../../lib/core/models/pagination.model.ts), filters?: `string[]`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`NodePaging`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/NodePaging.md)`>`<br/>
Gets files recently accessed by a user.
- _personId:_ `string` - ID of the user
- _pagination:_ [`PaginationModel`](../../../lib/core/models/pagination.model.ts) - Specifies how to paginate the results
- _filters:_ `string[]` - (Optional) Specifies additional filters to apply (joined with **AND**)
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`NodePaging`](https://github.com/Alfresco/alfresco-js-api/blob/development/src/api/content-rest-api/docs/NodePaging.md)`>` - List of nodes for the recently used files
- **hasCorrespondingNodeIds**(nodeId: `string`): `boolean`<br/>
Does the well-known alias have a corresponding node ID?

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