Compare commits

..
148 Commits
Author SHA1 Message Date
Denys Vuika 1940d3e81b Release-6.2.0 (#8705)
* bump versions to 6.2.0

* release reports

* changelog

* update lock file
2023-06-26 12:24:30 -04:00
dependabot[bot] 970ceeb280 Bump semver from 7.3.8 to 7.5.3 in /tools/doc (#8699)
Bumps [semver](https://github.com/npm/node-semver) from 7.3.8 to 7.5.3.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.3.8...v7.5.3)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-26 04:04:34 -04:00
Tomasz Gnyp 43feb814fd Fix ADF cronjob slackbot warning message (#8698) 2023-06-23 17:14:43 +02:00
Amedeo Lepore 74fd03b553 [AAE-15436] Fix init-aae-env await for apps to be deployed (#8697)
* [AAE-15436] Await for the applications to be deployed, add logger infos

* [AAE-15436] Updated README with the envs usage
2023-06-23 09:13:55 -04:00
MichalKinas 0fc904eee2 Use latest js-api in each lib package json (#8690)
* Use latest js-api in each lib package json

* Fix lib paths

* Sed save changes
2023-06-22 04:31:29 -04:00
Denys Vuika 66f060a018 use latest JS-API library (#8684) 2023-06-20 13:02:57 -04:00
Gloria Camino 58ef531c6b LOC-447 - Updated UI files in 16 languages for ADF 6.2 release based on EN file of 2023-06-20 (#8685) 2023-06-20 12:06:40 -04:00
Denys Vuika 6f5a419dd3 [ACS-5166] use published version of material icons (#8681)
* use published version of material icons

* add support for custom font set
2023-06-20 06:55:03 -04:00
Denys Vuika 10a5f89b24 [ACS-5166] update MS icons (#8683) 2023-06-20 06:54:32 -04:00
MichalKinas 9f7c6258ad [ADF-5550] Remove verions.json (#8676) 2023-06-20 06:51:16 -04:00
Eugenio Romano b987898ebe possible different e2e-host (#8680)
* possible different e2e-host for ps-cloud
2023-06-20 09:34:40 +02:00
Denys Vuika 90aab8e5e8 fix typo in cron yml 2023-06-19 08:38:45 +01:00
Eugenio Romano b84ea22622 add E2E_IDENTITY_HOST_APA env var (#8677) 2023-06-16 13:07:30 -04:00
Yasa-NataliyaandDenys Vuika 13f4f62608 [ACS-5308] Highlight the selected filter in ADW (#8649)
* changes for highlight the selected filter

* implemented the changes as per review comments

* added test cases and implemented review comments

* fix code and linting errors

* e2e fixes

* linting fix

* lint fix

* minor fixes

* fix for unit test case

* e2e fix for process

---------

Co-authored-by: Denys Vuika <denys.vuika@gmail.com>
2023-06-16 05:50:08 -04:00
Vito Albano ac694cd7a2 Fixing the end slash for the url otherwise the call will fail (#8674) 2023-06-16 11:32:33 +02:00
Ehsan Rezaei f915370bc0 [AAE-15251] Making header component more customizable (#8670) 2023-06-15 18:23:55 +02:00
Mykyta Maliarchuk eda42a69ef [ACS-5341] accessibility fix (#8668) 2023-06-15 04:18:31 -04:00
Ehsan Rezaei c072fa7955 [AAE-15240] Making package list component styles configurable (#8667) 2023-06-14 19:57:52 +02:00
Ehsan Rezaei 5c9ff5b36c [AAE-15239] Making about settings component styles configurable (#8666) 2023-06-14 16:01:12 +02:00
MichalKinas afbf87788f [ACS-5347] New styles for facets and filters states (#8661)
* [ACS-5347] New styles for facets and filters states

* [ACS-5347] Move ACA specific colors to ACA

* [ACS-5347] CR fixes
2023-06-14 13:37:43 +02:00
MichalKinas 0a3cc5634e Fix js-api version in adf-cli (#8665)
* Fix js-api version in adf-cli

* Add caret to js-api version

* CR fix
2023-06-14 06:31:41 -04:00
Mykyta Maliarchuk 61d5aa965b [ACS-4986] Advanced Search - New component for Tags and Location filters (#8655)
* [ACS-4986] SearchChipsAutocompleteComponent - minimal state

* [ACS-4986] refactored components

* [ACS-4986] documentation

* [ACS-4986] i18n

* [ACS-4986] versionIndex.md

* [ACS-4986] unit tests

* [ACS-4986] replaced function calls on pipe

* [ACS-4986] linting

* [ACS-4986] slight correction

* [ACS-4986] missing types

* [ACS-4986] space

* [ACS-4986] moved pipe + docs & tests

* [ACS-4986] changed pipe type

* [ACS-4986] versionIndex.md

* [ACS-4986] removed 'important' in styles

* [ACS-4986] fixed code smell

* [ACS-4986] linting
2023-06-14 06:29:43 -04:00
Michał Fidor 5fafb0ea6f [AAE-14070] Update permission for user to app (#8663) 2023-06-14 06:28:06 -04:00
Jatin Chugh 479c96eabb [PRODSEC-6575] Shared link not accessible now after the expiry date which was earlier accessible even after that expiration date (#8540)
* Shared link expiry date code implementation

* test case updated

* removed unsed code

* design changes as per the new design of Share dialog

* test cases modification as per new design changes

* placeholder modified for expiration date

* look and feel changes for share dialog as per Shane comments

* boolean name changed as per naming convention

* review comments addressed

* review comments addressed

* type specified for node object

* linting corrections

* resolved nested ternary date operation into an independent statement

* review comments addressed

* used date-fns instead of moment.js in code as well as in test cases

* review comments for date-fns addressed

* removed extra line

* removed extra empty lines in template

* import changes and indentation correction

* error in console resolved which was occuring after selecting date and time

* used mat-datepicker instead of mat-datetimepicker

* package-lock.json file updated for date-fns implementation

* made type  'date' as default and removed the settings coming from the ACA

* unit test case modifications as per calender changes

* e2e modifications as per new calendar component
2023-06-14 15:30:08 +05:30
Alfresco Buildandmauriziovitale 95927c6319 [ci:force][auto-commit] Update dependencies JS:6.2.0-982 (#8664)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-14 10:20:29 +01:00
Alfresco Buildandmauriziovitale 53c3d6a90a [ci:force][auto-commit] Update dependencies JS:6.2.0-982 (#8662)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-14 10:01:33 +01:00
Ehsan Rezaei caaf04b5ea [AAE-15228] process filter component styles configurable (#8657)
* Rebasing

* AAE-15228: Removed unused style
2023-06-14 10:07:50 +02:00
Ehsan Rezaei 64f9d0414d [AAE-15236] Making about component panel styles configurable (#8660)
* Rebasing

* AAE-15236: Fixing syntax
2023-06-14 08:15:49 +02:00
tomasz hanajandVito Albano 18c3eff472 [AAE-14714] added design tokens to CardViewComponent (#8619)
* [AAE-14714] added design tokens to styles

* Rebasing

* [AAE-14714] - fixing naming for reference variables

---------

Co-authored-by: Vito Albano <vito.albano@hyland.com>
2023-06-13 19:37:01 +02:00
dependabot[bot] 20e378c4be Bump glob-parent and mdast in /tools/doc (#8658)
Removes [glob-parent](https://github.com/gulpjs/glob-parent). It's no longer used after updating ancestor dependency [mdast](https://github.com/wooorm/mdast). These dependencies need to be updated together.


Removes `glob-parent`

Updates `mdast` from 2.3.2 to 3.0.0
- [Release notes](https://github.com/wooorm/mdast/releases)
- [Commits](https://github.com/wooorm/mdast/commits/3.0.0)

---
updated-dependencies:
- dependency-name: glob-parent
  dependency-type: indirect
- dependency-name: mdast
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 17:55:11 +01:00
Denys Vuika 9210d679ad fix update-version to use ">=" by default (#8653) 2023-06-13 17:50:24 +01:00
Alfresco Buildandmauriziovitale ae945faed3 [ci:force][auto-commit] Update dependencies JS:6.2.0-981 (#8654)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-13 17:30:11 +01:00
Ehsan Rezaei fa063465d3 [AAE-15223] Removing Material native classes modifications (#8656) 2023-06-13 18:12:01 +02:00
Denys Vuika dd3285511e [ACS-5416] remove internal notification icon pipe (#8659) 2023-06-13 17:09:05 +01:00
MichalKinas b39ff6bab9 [ACS-5197] Disable empty facets (#8650)
* [ACS-5197] Disable empty facets

* [ACS-5197] CR fixes
2023-06-13 18:01:39 +02:00
dependabot[bot] a2b1b54f86 Bump nth-check and unist-util-select in /tools/doc (#8652)
Bumps [nth-check](https://github.com/fb55/nth-check) to 2.1.1 and updates ancestor dependency [unist-util-select](https://github.com/syntax-tree/unist-util-select). These dependencies need to be updated together.


Updates `nth-check` from 1.0.2 to 2.1.1
- [Release notes](https://github.com/fb55/nth-check/releases)
- [Commits](https://github.com/fb55/nth-check/compare/v1.0.2...v2.1.1)

Updates `unist-util-select` from 2.0.0 to 4.0.3
- [Release notes](https://github.com/syntax-tree/unist-util-select/releases)
- [Commits](https://github.com/syntax-tree/unist-util-select/compare/2.0.0...4.0.3)

---
updated-dependencies:
- dependency-name: nth-check
  dependency-type: indirect
- dependency-name: unist-util-select
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-13 09:19:33 -04:00
Ehsan Rezaei 1870214bac [AAE-15198] - Using reference vars to style form fields in base task (#8651)
* [AAE-15198] - Using reference vars to style form fields in base task filter component

* AAE-15198: Fixed lint errors
2023-06-12 17:54:02 +02:00
dependabot[bot] 924cc37c79 Bump marked and typedoc in /tools/doc (#8573)
Bumps [marked](https://github.com/markedjs/marked) to 4.3.0 and updates ancestor dependency [typedoc](https://github.com/TypeStrong/TypeDoc). These dependencies need to be updated together.


Updates `marked` from 0.8.2 to 4.3.0
- [Release notes](https://github.com/markedjs/marked/releases)
- [Changelog](https://github.com/markedjs/marked/blob/master/.releaserc.json)
- [Commits](https://github.com/markedjs/marked/compare/v0.8.2...v4.3.0)

Updates `typedoc` from 0.15.8 to 0.24.7
- [Release notes](https://github.com/TypeStrong/TypeDoc/releases)
- [Changelog](https://github.com/TypeStrong/typedoc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/TypeStrong/TypeDoc/compare/v0.15.8...v0.24.7)

---
updated-dependencies:
- dependency-name: marked
  dependency-type: indirect
- dependency-name: typedoc
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-12 11:08:24 -04:00
MichalKinas ecf191f559 [ADF-5546] Fix cron-run input (#8646) 2023-06-12 10:01:08 -04:00
Gloria Camino a762c19a5c LOC-440 - UI updated as per https://alfresco.atlassian.net/browse/AAE-14405 All strings updated as per source of 2023-06-09 (#8641) 2023-06-12 09:54:41 -04:00
Ehsan Rezaei c66fb5f6ec [AAE-15149] Added reference variables to edit task filter component (#8636)
* AAE-15149: Added reference variables to edit task filter component

* AAE-15149: Added component variables

* AAE-15149: updated variable names

* AAE-15149: updated class names targeting directly the elements

* AAE-15149: updated class names targeting directly the elements

* AAE-15149: Fixed lint errors
2023-06-12 15:31:38 +02:00
Alfresco Buildandmauriziovitale 6c6f7613b4 [ci:force][auto-commit] Update dependencies JS:6.2.0-974 (#8637)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-12 09:20:26 -04:00
Eugenio Romano 4618901031 Update pull-request.yml (#8648) 2023-06-12 07:00:06 -04:00
Eugenio Romano e176009be7 Update pull-request.yml (#8639) 2023-06-09 10:35:37 -04:00
Denys Vuika 7865650d00 fix upgrade script (#8638) 2023-06-08 08:59:07 -04:00
AleksanderSklorz 63e87c4bf1 ACS-5290 Fixed script (#8635) 2023-06-07 10:18:40 -04:00
MichalKinas a612263762 [ADF-5546] Don't run forbidden labels job when cron runs e2es (#8632)
* [ADF-5546] Don't run forbidden labels job when cron runs e2es

* [ADF-5546] Correct wording

* [ADF-5546] Fix forbidden labels job condition
2023-06-07 15:45:13 +02:00
Eugenio Romano 826cdf52b9 add slack message on cron fail (#8633) 2023-06-07 15:31:39 +02:00
AleksanderSklorz 2ea82946fd ACS-5290 Remove comma (#8634) 2023-06-07 09:06:02 -04:00
Alfresco Buildandmauriziovitale 9f3f6d0399 [ci:force][auto-commit] Update dependencies JS:6.2.0-972 (#8617)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-07 15:03:52 +02:00
AleksanderSklorz 7a33a4e19d [ACS-5290] Corrected path (#8631)
* ACS-5290 Corrected path

* ACS-5290 Fixed for publishing
2023-06-07 14:50:18 +02:00
Eugenio Romano e073d8369c Update angular.json (#8630)
fix wrong publish folder dist eslint-plugin-eslint-angular
2023-06-07 00:34:40 +02:00
Eugenio Romano 860adaaf4c Update update-version.sh (#8629) 2023-06-06 23:46:53 +02:00
Eugenio Romano dce30c06ef Update update-version.sh (#8628)
remove comma in list
2023-06-06 22:48:07 +02:00
MichalKinas 66b5ca90dc [ACS-5342] Accessibility fixes for filters and facets (#8626) 2023-06-06 21:29:22 +02:00
Eugenio Romano 7eebdb8b11 Update release.yml
increase release timeout
2023-06-06 21:16:15 +02:00
Ardit Domi 06de32ed03 Fix dry run flag (#8627) 2023-06-06 17:06:43 +01:00
dependabot[bot] 30f2299de1 Bump @typescript-eslint/eslint-plugin from 5.59.0 to 5.59.8 (#8622)
Bumps [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) from 5.59.0 to 5.59.8.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.8/packages/eslint-plugin)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-06 11:05:54 +02:00
Ehsan Rezaei dca9ea4cba [AAE-14699] Improved unit test description (#8625) 2023-06-06 09:43:13 +01:00
tomasz hanaj f549a19fb9 [AAE-14469] added constraint for typed value (#8611)
* [AAE-14469] added constraint for typed value

* [AAE-14469] removed obsolete input property
2023-06-06 09:41:13 +01:00
Eugenio Romano 2c5a6e50e2 [AAE-15126] App.config.service should log an error when the app.config.json is invalid (#8624) 2023-06-06 09:04:51 +01:00
Ehsan Rezaei 6ec394da5f [AAE-14699] Improved card view text item component update (#8597)
* AAE-14699: Improved card view text item component update

* AAE-14699: updated unit tests
2023-06-06 07:28:26 +02:00
dependabot[bot] 9bf30a6b66 Bump dotenv from 16.0.3 to 16.1.3 (#8623)
Bumps [dotenv](https://github.com/motdotla/dotenv) from 16.0.3 to 16.1.3.
- [Changelog](https://github.com/motdotla/dotenv/blob/master/CHANGELOG.md)
- [Commits](https://github.com/motdotla/dotenv/compare/v16.0.3...v16.1.3)

---
updated-dependencies:
- dependency-name: dotenv
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 19:45:49 +02:00
Denys Vuika f5abce8baa Optimise imports using inject function (#8557)
* optimise AuthGuard

* optimise UploadBase

* optimise BaseAuthenticationService

* optimise FormComponent

* optimise BaseCloudService

* optimise card view
2023-06-05 17:31:44 +01:00
dependabot[bot] 991f11178d Bump webpack-cli from 5.1.1 to 5.1.2 (#8621)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@5.1.1...webpack-cli@5.1.2)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-05 17:00:48 +01:00
MichalKinas 85fd98874a [ACS-5181] Logical search components (#8616)
* [ACS-5181] Add logical search component

* [ACS-5181] Add unit tests to logical search components

* [ACS-5181] Logical filter components docs

* [ACS-5181] CR fixes

* [ACS-5181] CR and accessibility fixes
2023-06-05 16:23:41 +01:00
Tomasz Gnyp 9845b1e2a0 [AAE-14851] Convert manual tests to unit for C587091, C587092 (#8608)
* [AAE-14851] Convert manual tests to unit for C587091, C587092

* remove useless unit test

* implement suggestions
2023-06-05 12:23:30 +02:00
AleksanderSklorz 21281cafe9 [ACS-5290] Corrected version of adding custom eslint rule (#8620)
* ACS-5290 Corrected version of adding custom eslint rule

* ACS-5290 Corrected version of adding custom eslint rule
2023-06-02 08:41:14 -04:00
Denys Vuika 654acd553f [ACS-5279] enhanced oath2 configuration handling (#8575)
* [ACS-5279] enhanced oath2 configuration handling

* fix tests

* fix schema
2023-06-02 07:02:50 -04:00
Denys Vuika ea5c3466ef [ACS-5305] fix name column link alignment (#8593) 2023-06-02 05:40:22 -04:00
AleksanderSklorz 86e9f3f22e [ACS-5290] create eslint rule to ensure components use none value for encapsulation (#8585)
* ACS-5290 Create rule which prevent using different encapsulation in components than None

* ACS-5290 Added documentation

* ACS-5290 Updated scripts

* ACS-5290 Updated documentation

* ACS-5290 Added autofix

* ACS-5290 Formated code

* ACS-5290 Fixed lint - removed redundant comma

* ACS-5290 Renaming

* ACS-5290 Renaming
2023-06-02 08:04:50 +02:00
Eugenio Romano 959f20b3a5 fix tag work flow (#8618)
upgrade docker build to 18
2023-06-01 18:16:29 +02:00
Bartosz Sekula 3afe323840 [AAE-14430] Release 6.1.0 (#8614) 2023-06-01 17:18:27 +02:00
Eugenio Romano 07e96965aa Update git-tag.yml (#8615)
use Github bot token to add the tag
2023-06-01 16:49:57 +02:00
swapnil-verma-gl 727365025d [ACS-5310] Removed dead link from angular.json for demo-shell (#8596) 2023-06-01 16:39:30 +05:30
Alfresco Buildandmauriziovitale 8178bda158 [ci:force][auto-commit] Update dependencies JS:6.1.0-952 (#8612)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-06-01 10:46:25 +02:00
Ehsan Rezaei 7355216034 [AAE-14759] Fixed image viewer when going to full screen mode (#8609) 2023-05-31 12:12:09 +01:00
Robert Duda 46efc4f7ea [AAE-14850] Fix outcome buttons position (#8610)
* [AAE-14850] Fix outcome buttons position

* delete NX file
2023-05-31 10:16:34 +02:00
Alfresco Buildandmauriziovitale 772ac4106c [ci:force][auto-commit] Update dependencies JS:6.1.0-951 (#8607)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-31 10:14:39 +02:00
Bartosz Sekula be9a0a08a4 [ADF-5544] Missing Vulnerabilities in adf-cli audit (#8604)
* [ADF-5544] Missing Vulnerabilities in adf-cli audit

* ensure back compatibility
2023-05-29 16:53:33 +02:00
dependabot[bot] 1e87264fbf Bump rimraf from 4.4.1 to 5.0.1 (#8601)
Bumps [rimraf](https://github.com/isaacs/rimraf) from 4.4.1 to 5.0.1.
- [Changelog](https://github.com/isaacs/rimraf/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/rimraf/compare/v4.4.1...v5.0.1)

---
updated-dependencies:
- dependency-name: rimraf
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-29 16:12:30 +02:00
AleksanderSklorz 32f244d934 [ADF-5517] Reverted extra bug fixes changes (#8605)
* ADF-5517 Reverted extra bug fixes changes

* ADF-5517 Reverted extra bug fixes changes
2023-05-29 12:49:25 +02:00
Alfresco Buildandmauriziovitale 7bcb74662b [ci:force][auto-commit] Update dependencies JS:6.1.0-948 (#8598)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-29 10:22:49 +02:00
Bartosz Sekula 3ee2b387ae [AAE-14030] Fix header custom color (#8595) 2023-05-26 12:22:10 +02:00
Alfresco Buildandmauriziovitale fb3dee86bf [ci:force][auto-commit] Update dependencies JS:6.1.0-944 (#8594)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-26 05:15:03 -04:00
Raviraj Bahirsheth 2f8b7b2bd3 [ADF-5532] ADF Upgrade guide(upgrade411-50.md) (#8516) 2023-05-26 05:14:39 -04:00
Bartosz Sekula 2429bb4266 [AAE-14030] Custom header text color is not working on apa (#8592)
* [AAE-14030] Custom header text color is not working on apa

* CR

* Fix for demo app
2023-05-25 16:56:26 +02:00
Ketevani Kvirikashvili 507c6498a1 [AAE-14376] Spinner is not aligned after opening task details (#8591) 2023-05-25 12:43:27 +02:00
Alfresco Buildandmauriziovitale 6e7ca50406 [ci:force][auto-commit] Update dependencies JS:6.1.0-942 (#8590)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-25 09:42:56 +02:00
Alfresco Buildandmauriziovitale 90cc562cb6 [ci:force][auto-commit] Update dependencies JS:6.1.0-941 (#8589)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-24 12:35:39 +02:00
Nikita Maliarchuk a799743bb5 [ADF-5540] Enable C277288 e2e (#8587)
* [ADF-5540] enable C277288 e2e

* [ADF-5540] deleted NX file
2023-05-24 11:47:29 +02:00
dependabot[bot] 78453b48db Bump socket.io-parser from 4.2.2 to 4.2.3 (#8588)
Bumps [socket.io-parser](https://github.com/socketio/socket.io-parser) from 4.2.2 to 4.2.3.
- [Release notes](https://github.com/socketio/socket.io-parser/releases)
- [Changelog](https://github.com/socketio/socket.io-parser/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io-parser/compare/4.2.2...4.2.3)

---
updated-dependencies:
- dependency-name: socket.io-parser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 09:11:26 +02:00
Ehsan Rezaei 3660f7347e [AAE-14168] Fixed outcome buttons position in start process (#8586)
* AAE-14168: Fixed outcome buttons position in startprocess

* AAE-14168: Removed unused css
2023-05-23 14:55:00 +02:00
Alfresco Buildandmauriziovitale fc8b76fa0b [ci:force][auto-commit] Update dependencies JS:6.1.0-936 (#8579)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-23 13:00:22 +02:00
Robert Duda 5abb6fbee9 [AAE-14061] Fix spinner disappearing too early in task lists (#8577) 2023-05-23 11:31:55 +02:00
dependabot[bot] c9e79e0f9f Bump markdown-it and markdownlint-cli in /tools/doc (#8576)
Bumps [markdown-it](https://github.com/markdown-it/markdown-it) to 13.0.1 and updates ancestor dependency [markdownlint-cli](https://github.com/igorshubovych/markdownlint-cli). These dependencies need to be updated together.


Updates `markdown-it` from 8.4.2 to 13.0.1
- [Changelog](https://github.com/markdown-it/markdown-it/blob/master/CHANGELOG.md)
- [Commits](https://github.com/markdown-it/markdown-it/compare/8.4.2...13.0.1)

Updates `markdownlint-cli` from 0.16.0 to 0.34.0
- [Release notes](https://github.com/igorshubovych/markdownlint-cli/releases)
- [Commits](https://github.com/igorshubovych/markdownlint-cli/compare/v0.16.0...v0.34.0)

---
updated-dependencies:
- dependency-name: markdown-it
  dependency-type: indirect
- dependency-name: markdownlint-cli
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-22 09:08:50 +01:00
dependabot[bot] db46e17ebd Bump css-loader from 6.7.3 to 6.7.4 (#8580)
Bumps [css-loader](https://github.com/webpack-contrib/css-loader) from 6.7.3 to 6.7.4.
- [Release notes](https://github.com/webpack-contrib/css-loader/releases)
- [Changelog](https://github.com/webpack-contrib/css-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/css-loader/compare/v6.7.3...v6.7.4)

---
updated-dependencies:
- dependency-name: css-loader
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-22 09:08:13 +01:00
Alfresco Buildandmauriziovitale e7ca89788a [ci:force][auto-commit] Update dependencies JS:6.1.0-928 (#8568)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-19 14:25:43 +02:00
dependabot[bot] b189025931 Bump shelljs from 0.8.4 to 0.8.5 in /tools/doc (#8572)
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-19 14:25:12 +02:00
Thomas HunterandAleksander Sklorz e4965ece6b [ADF-5517] Add unit test to test clicking anywhere on a row in a datatable (#8287)
* [ADF-5517] Add unit test to test clicking anywhere on a row in a datatable

* Fix unit tests

* ADF-5517 Fixed failed jobs

* ADF-5517 Removed some duplications

* ADF-5517 Removed some duplications

* ADF-5517 Removed some duplications

* ADF-5517 Removed some duplications

* ADF-5517 Fixed failed test

* ADF-5517 Small correction

---------

Co-authored-by: Aleksander Sklorz <Aleksander.Sklorz@hyland.com>
2023-05-19 14:00:09 +02:00
MichalKinas 65dfd446fd [ADF-5542] Update JS-API and ADF libs versions to use caret (#8570)
* [ADF-5542] Update JS-API and ADF libs versions to use caret

* [ADF-5542] Corrected versions
2023-05-18 12:01:11 -04:00
Denys Vuika b3e8241430 [ACS-5272] security fixes for ADF CLI (#8567) 2023-05-18 15:12:24 +01:00
Eugenio Romano 7e1ff20069 Update datatable.component.md documentation (#8525) 2023-05-18 09:19:46 +01:00
Nikita Maliarchuk c431d0c6f5 [ACS-5171] Facets section - UI changes (#8563) 2023-05-18 09:18:42 +01:00
Vito Albano b10a4370c1 [AAE-14032] - fixed style for attach button (#8566) 2023-05-18 09:46:54 +02:00
Nikita Maliarchuk b5d410b75c [ACS-5137] Fixed navigation between images (#8534)
* [ACS-5137] fixed navigation between images

* [ACS-5137] disable navigation while file is saving

* [ACS-5137] moved mocked tested components

* [ACS-5137] code improvements

* [ACS-5137] small fix

* Empty commit

* [ACS-5137] linting

* Empty commit
2023-05-17 17:47:04 +01:00
Alfresco Buildandmauriziovitale 4301cb0933 [ci:force][auto-commit] Update dependencies JS:6.1.0-926 (#8564)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-17 17:43:02 +01:00
AleksanderSklorz 3b1842f038 [ADF-5505] deprecate angular flex layout library (#8562)
* ADF-5505 Removed some angular flex usages

* ADF-5505 Deprecated usage of angular flex layout in demo shell

* ADF-5505 Deprecated usage of angular flex layout in core files

* ADF-5505 Removed usage of angular flex layout from files from process services

* ADF-5505 Removed usage of angular flex layout from files from process services cloud

* ADF-5505 Removed usage of fxflex and fxlayout from left files

* ADF-5505 Removed usage of fxhide from left files

* ADF-5505 Fixed issue with incorrect colors

* ADF-5505 Fixed some lint issues

* ADF-5505 Removed imports of FlexLayoutModule

* ADF-5505 Uninstalled angular flex layout dependency

* ADF-5505 Removed usage of ngClass with gt-md

* ADF-5505 Removed duplicated selector

* ADF-5505 Removed empty line

* ADF-5505 Changed encapsulation
2023-05-17 08:44:59 -04:00
Robert Duda 7e2a7f5b2c [AAE-14332] Fix export in FormCloudModule (#8565) 2023-05-17 12:13:40 +02:00
Denys Vuika baf010db61 cleanup ADF readme (#8543) 2023-05-16 17:37:50 +01:00
Alfresco Buildandmauriziovitale 39aebd505b [ci:force][auto-commit] Update dependencies JS:6.1.0-925 (#8561)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-16 13:52:09 +02:00
MichalKinas d0b74cfbce [ACS-5165] Remove old upstream workflow (#8559) 2023-05-15 23:07:39 +01:00
Rafal Szmit 4bd05bb46e [AAE-12764] simpleapp widget name fix (#8560)
* trigger ci

* [AAE-12764] widget name update
2023-05-15 18:26:43 +02:00
Diogo Bastos d24726c884 [AAE-13661] Modify init-aae-env file to accept env parameter (#8489)
* [AAE-13661] Modify init-aae-env file to accept env parameter

* [AAE-13661] Add multiple env support
2023-05-15 16:31:28 +01:00
Rafal Szmit a729852f34 [AAE-12764] Add new process and form to simpleapp (#8558)
* [AAE-12764] Add new process and form to simpleapp

* trigger ci

* bring back file variable process
2023-05-15 17:20:26 +02:00
dependabot[bot] 4299f9ffcf Bump webpack-cli from 5.0.2 to 5.1.1 (#8556)
Bumps [webpack-cli](https://github.com/webpack/webpack-cli) from 5.0.2 to 5.1.1.
- [Release notes](https://github.com/webpack/webpack-cli/releases)
- [Changelog](https://github.com/webpack/webpack-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack/webpack-cli/compare/webpack-cli@5.0.2...webpack-cli@5.1.1)

---
updated-dependencies:
- dependency-name: webpack-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-15 15:57:45 +02:00
Alfresco Buildandmauriziovitale fca06ac0ca [ci:force][auto-commit] Update dependencies JS:6.1.0-922 (#8549)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-15 11:55:16 +02:00
dependabot[bot] 6392f8d372 Bump graphql-request from 5.2.0 to 6.0.0 (#8555)
Bumps [graphql-request](https://github.com/jasonkuhrt/graphql-request) from 5.2.0 to 6.0.0.
- [Release notes](https://github.com/jasonkuhrt/graphql-request/releases)
- [Commits](https://github.com/jasonkuhrt/graphql-request/compare/5.2.0...6.0.0)

---
updated-dependencies:
- dependency-name: graphql-request
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-15 11:52:38 +02:00
Denys Vuika d5e1ca45f7 fix JS-API peer dependencies for libs (#8551)
* fix JS-API peer dependencies for libs

* Trigger Build
2023-05-12 13:34:55 +01:00
AleksanderSklorz 3dc1f1149f [ACS-5155] tags message about required field displayed after discarding changes (#8550)
* ACS-5155 Hide required error after discarding changes

* ACS-5155 Removed redundant variables
2023-05-11 09:05:51 +02:00
tomasz hanaj 42322f8a9f [AAE-13566] changed select input's position (#8471)
* [AAE-13566] changed select input's position

* [AAE-13566] removed obsolete code
2023-05-09 17:57:13 +01:00
tomasz hanaj 2b8f81dfe4 [AAE-11270] replaced error message with shorter version (#8487)
* [AAE-11270] replaced error message with shorter version

* [AAE-11270] updated failing e2e test
2023-05-08 15:39:56 +02:00
dependabot[bot] d8c398fc79 Bump @angular-eslint/template-parser from 14.0.2 to 16.0.1 (#8545)
Bumps [@angular-eslint/template-parser](https://github.com/angular-eslint/angular-eslint/tree/HEAD/packages/template-parser) from 14.0.2 to 16.0.1.
- [Release notes](https://github.com/angular-eslint/angular-eslint/releases)
- [Changelog](https://github.com/angular-eslint/angular-eslint/blob/main/packages/template-parser/CHANGELOG.md)
- [Commits](https://github.com/angular-eslint/angular-eslint/commits/v16.0.1/packages/template-parser)

---
updated-dependencies:
- dependency-name: "@angular-eslint/template-parser"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 12:57:44 +02:00
dependabot[bot] 53af427062 Bump @typescript-eslint/typescript-estree from 5.55.0 to 5.59.2 (#8548)
Bumps [@typescript-eslint/typescript-estree](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-estree) from 5.55.0 to 5.59.2.
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-estree/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v5.59.2/packages/typescript-estree)

---
updated-dependencies:
- dependency-name: "@typescript-eslint/typescript-estree"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 12:57:38 +02:00
Alfresco Buildandmauriziovitale 46b4c84b72 [ci:force][auto-commit] Update dependencies JS:6.1.0-912 (#8542)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-08 12:30:39 +02:00
Tomasz Gnyp 5d5fb299e7 [AAE-12763] Unit test - C588832 Should not be able to upload a file … (#8512)
* [AAE-12763] Unit test -  C588832 Should not be able to upload a file whilst a search is still running

* [AAE-12763] Remove test rail case ID
2023-05-08 11:49:46 +02:00
tomasz hanaj 50f9a2776d [AAE-13971] changed color to accent contrast (#8501) 2023-05-08 11:12:50 +02:00
Robert Duda 00ede54e3a [AAE-14184] App key as parameter when fetching roles (#8541) 2023-05-08 08:40:30 +02:00
Denys Vuika 88d4408db6 [ADF-5509] fix core dependency on datetimepicker (#8539) 2023-05-05 13:17:14 +01:00
dependabot[bot] 41e8421c78 Bump shelljs from 0.8.4 to 0.8.5 in /lib/cli (#8538)
Bumps [shelljs](https://github.com/shelljs/shelljs) from 0.8.4 to 0.8.5.
- [Release notes](https://github.com/shelljs/shelljs/releases)
- [Changelog](https://github.com/shelljs/shelljs/blob/master/CHANGELOG.md)
- [Commits](https://github.com/shelljs/shelljs/compare/v0.8.4...v0.8.5)

---
updated-dependencies:
- dependency-name: shelljs
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-05 12:13:49 +02:00
dependabot[bot] 6726b13289 Bump sass-loader from 10.1.1 to 13.2.2 (#8454)
Bumps [sass-loader](https://github.com/webpack-contrib/sass-loader) from 10.1.1 to 13.2.2.
- [Release notes](https://github.com/webpack-contrib/sass-loader/releases)
- [Changelog](https://github.com/webpack-contrib/sass-loader/blob/master/CHANGELOG.md)
- [Commits](https://github.com/webpack-contrib/sass-loader/compare/v10.1.1...v13.2.2)

---
updated-dependencies:
- dependency-name: sass-loader
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-05 11:52:59 +02:00
dependabot[bot] 46230d31a4 Bump minimatch from 3.1.2 to 9.0.0 (#8469)
Bumps [minimatch](https://github.com/isaacs/minimatch) from 3.1.2 to 9.0.0.
- [Release notes](https://github.com/isaacs/minimatch/releases)
- [Changelog](https://github.com/isaacs/minimatch/blob/main/changelog.md)
- [Commits](https://github.com/isaacs/minimatch/compare/v3.1.2...v9.0.0)

---
updated-dependencies:
- dependency-name: minimatch
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-05 11:52:51 +02:00
Alfresco Buildandmauriziovitale cb84834037 [ci:force][auto-commit] Update dependencies JS:6.1.0-907 (#8533)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-05 11:52:39 +02:00
dependabot[bot] ec689f24e3 Bump cross-fetch from 3.0.6 to 3.1.5 in /tools/doc (#8536)
Bumps [cross-fetch](https://github.com/lquixada/cross-fetch) from 3.0.6 to 3.1.5.
- [Release notes](https://github.com/lquixada/cross-fetch/releases)
- [Commits](https://github.com/lquixada/cross-fetch/compare/v3.0.6...v3.1.5)

---
updated-dependencies:
- dependency-name: cross-fetch
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-05 11:52:21 +02:00
AleksanderSklorz 9cf166c3a2 [ACS-5148] Corrected first tag position and removed extra scrollbar when spinner is visible (#8535) 2023-05-05 11:12:30 +02:00
Ehsan Rezaei 23149cae58 [AAE-13800] - Avoid reloading task/process list when column visibility changes (#8499)
* Fixing rebase conflicts

* AAE-13310: Fixing lint issues

* AAE-13800: Avoid reloading tasks list component when column visibility changes, improved unit tests

* AAE-13800: Avoid reloading process list when column visibility changes, improving unit tests

* AAE-13800: Removing extra code from unit tests

* AAE-13800: updated obserable and unit tests in service tasks component

* AAE-13800: Updated service tasks reload method

* AAE-13800: Improved unit test

* AAE-13800: Removed unnecessary unit test

* AAE-13800: Removed extra subscription from a unit test

* AAE-13800: Replacing component reload with ngOnChanges as suggested in PR review

* AAE-13800: Adding done to the unit tests with a subscription

* AAE-13800: Removing extra spy

* AAE-13800: using ngHooks instead of calling directly component methods

* AAE-13800: code clean-up

* AAE-13800: making onDestroy subject private to each component

* AAE-13800: Code improvements

* AAE-13800: Code refactoring

* AAE-13800: Added more unit tests

* AAE-13800: Fixing lint issues
2023-05-05 10:45:29 +02:00
dependabot[bot] c26915ae3f Bump jasmine-core from 4.5.0 to 4.6.0 (#8457)
Bumps [jasmine-core](https://github.com/jasmine/jasmine) from 4.5.0 to 4.6.0.
- [Release notes](https://github.com/jasmine/jasmine/releases)
- [Changelog](https://github.com/jasmine/jasmine/blob/main/RELEASE.md)
- [Commits](https://github.com/jasmine/jasmine/compare/v4.5.0...v4.6.0)

---
updated-dependencies:
- dependency-name: jasmine-core
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-05 09:43:22 +01:00
Denys Vuika 94c23171db [ADF-5509] Migrate to Node 18 (#8531)
* generate lock file

* gha: use node 18

* upgrade lock file and remove old migrations cache

* use npx instead of sudo link for nx commands

* fix dependencies

* migrate commands to node 18

* fix dependencies

* try building storybook sequentially

* fix affected libs

* disable failing test
2023-05-04 22:51:19 +01:00
Vito Albano 42a2a3cd1f [AAE-14166] - fixing script for version (#8532)
* [AAE-14166] - fixing script for version

* [AAE-14166] - fixing script for version
2023-05-04 21:34:17 +01:00
Alfresco Buildandmauriziovitale a0d39c24f1 [ci:force][auto-commit] Update dependencies JS:6.1.0-899 (#8521)
Co-authored-by: mauriziovitale <mauriziovitale@users.noreply.github.com>
2023-05-04 15:41:19 +02:00
dependabot[bot] bccc3c1528 Bump engine.io and socket.io (#8527)
Bumps [engine.io](https://github.com/socketio/engine.io) and [socket.io](https://github.com/socketio/socket.io). These dependencies needed to be updated together.

Updates `engine.io` from 6.2.1 to 6.4.2
- [Release notes](https://github.com/socketio/engine.io/releases)
- [Changelog](https://github.com/socketio/engine.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/engine.io/compare/6.2.1...6.4.2)

Updates `socket.io` from 4.5.4 to 4.6.1
- [Release notes](https://github.com/socketio/socket.io/releases)
- [Changelog](https://github.com/socketio/socket.io/blob/main/CHANGELOG.md)
- [Commits](https://github.com/socketio/socket.io/compare/4.5.4...4.6.1)

---
updated-dependencies:
- dependency-name: engine.io
  dependency-type: indirect
- dependency-name: socket.io
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-04 15:40:59 +02:00
MichalKinas 5d6a1ea6a4 [ACS-5143] Tree component expand/collapse fix (#8528)
* [ACS-5143] Tree component expand/collapse fix

* [ACS-5143] Remove extra empty space
2023-05-04 13:10:02 +02:00
Vito Albano 895d4189f2 [AAE-14166] - fixing dependencies for editorjs (#8526) 2023-05-04 10:18:21 +01:00
Dawid L Jablonski 4966bb2d42 [HXOR-200] Standardize dry run flags as dry-run-flag: ${{ inputs.dry-run-flag }} (#8506)
* First change

* new commit
2023-05-03 14:53:10 +02:00
AleksanderSklorz 74a33e9d89 ACS-5147 Fixed typo (#8522) 2023-05-03 07:15:36 -04:00
dependabot[bot] 7a60e0815a Bump webpack from 5.76.0 to 5.81.0 (#8524)
Bumps [webpack](https://github.com/webpack/webpack) from 5.76.0 to 5.81.0.
- [Release notes](https://github.com/webpack/webpack/releases)
- [Commits](https://github.com/webpack/webpack/compare/v5.76.0...v5.81.0)

---
updated-dependencies:
- dependency-name: webpack
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-03 07:15:14 -04:00
Ehsan Rezaei 2d55bbf58a AAE-12240: Form save button enable/disable management (#8502)
* AAE-12240: Form save button enable/disable management

* AAE-12240: Code improvement
2023-05-03 13:03:08 +02:00
MichalKinas bcd0b66c96 [ACS-5135] Tree component emit pagination only when top level entries change (#8519) 2023-04-28 16:39:47 +02:00
434 changed files with 54297 additions and 41698 deletions
+4 -2
View File
@@ -52,6 +52,8 @@ runs:
if [[ -n "${{ inputs.apa-proxy }}" ]]; then
echo "APA proxy set."
echo "PROXY_HOST_BPM=${E2E_HOST_APA}" >> $GITHUB_ENV
echo "PROXY_HOST_ECM=${E2E_IDENTITY_HOST_APA}" >> $GITHUB_ENV
echo "HOST_SSO=${E2E_IDENTITY_HOST_APA}" >> $GITHUB_ENV
fi
- name: install aws cli
@@ -111,7 +113,7 @@ runs:
run: |
set -u;
./node_modules/@alfresco/adf-cli/bin/adf-cli init-aae-env \
--oauth "$E2E_HOST" \
--oauth "$E2E_IDENTITY_HOST_APA" \
--host "$E2E_HOST_APA" \
--modelerUsername "$E2E_MODELER_USERNAME" \
--modelerPassword "$E2E_MODELER_PASSWORD" \
@@ -119,7 +121,7 @@ runs:
--devopsPassword "$E2E_DEVOPS_PASSWORD" \
--clientId 'alfresco' || exit 1
- name: variables sanification
- name: variables sanitization
env:
FOLDER: "${{ inputs.e2e-test-folder }}"
PROVIDER: "${{ inputs.e2e-test-provider }}"
+1 -4
View File
@@ -22,7 +22,7 @@ runs:
- name: install NPM
uses: actions/setup-node@v3
with:
node-version: 14
node-version-file: '.nvmrc'
cache-dependency-path: package-lock.json
- name: get latest tag sha
id: tag-sha
@@ -56,6 +56,3 @@ runs:
uses: ./.github/actions/before-install
with:
act: ${{ inputs.act }}
- name: link nx executable
run: sudo ln -s $(npm bin)/nx /usr/bin/nx
shell: bash
-98
View File
@@ -1,98 +0,0 @@
name: "upstream adf"
on:
workflow_call:
inputs:
repo_to_update:
description: Repository to update
type: string
required: false
default: alfresco-applications
workflow_dispatch:
inputs:
cluster_operation:
description: trigger adf test
type: choice
required: true
options:
- TRIGGER_ALPHA_ADF
default: TRIGGER_ALPHA_ADF
repo_to_update:
description: Repository to update
type: choice
required: true
options:
- all
- alfresco-content-app
- alfresco-applications
- alfresco-apps
default: all
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
GITHUB_BRANCH: ${{ github.ref_name }}
GH_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
GH_BUILD_DIR: ${{ github.workspace }}
GH_COMMIT: ${{ github.sha }}
BUILD_ID: ${{ github.run_id }}
GH_RUN_NUMBER: ${{ github.run_attempt }}
GH_BUILD_NUMBER: ${{ github.run_id }}
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
E2E_PASSWORD: ${{ secrets.E2E_PASSWORD }}
E2E_ADMIN_EMAIL_IDENTITY: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
E2E_ADMIN_PASSWORD_IDENTITY: ${{ secrets.E2E_ADMIN_PASSWORD_IDENTITY }}
USERNAME_ADF: ${{ secrets.E2E_USERNAME }}
PASSWORD_ADF: ${{ secrets.E2E_PASSWORD }}
URL_HOST_ADF: ${{ secrets.URL_HOST_ADF }}
IDENTITY_ADMIN_EMAIL: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
IDENTITY_ADMIN_PASSWORD: ${{ secrets.E2E_ADMIN_PASSWORD_IDENTITY }}
AWS_S3_BUCKET_ACTIVITI_LICENSE: ${{ secrets.AWS_S3_BUCKET_ACTIVITI_LICENSE }}
HOST_SSO: ${{ secrets.HOST_SSO }}
LOG_LEVEL: "ERROR"
E2E_LOG_LEVEL: "ERROR"
E2E_MODELER_USERNAME: ${{ secrets.E2E_MODELER_USERNAME }}
E2E_MODELER_PASSWORD: ${{ secrets.E2E_MODELER_PASSWORD }}
EXTERNAL_ACS_HOST: ${{ secrets.EXTERNAL_ACS_HOST }}
E2E_DEVOPS_USERNAME: ${{ secrets.E2E_DEVOPS_USERNAME }}
E2E_DEVOPS_PASSWORD: ${{ secrets.E2E_DEVOPS_PASSWORD }}
USERNAME_SUPER_ADMIN_ADF: ${{ secrets.USERNAME_SUPER_ADMIN_ADF }}
PASSWORD_SUPER_ADMIN_ADF: ${{ secrets.PASSWORD_SUPER_ADMIN_ADF }}
HR_USER: ${{ secrets.HR_USER }}
HR_USER_PASSWORD: ${{ secrets.HR_USER_PASSWORD }}
NPM_REGISTRY_ADDRESS: ${{ secrets.NPM_REGISTRY_ADDRESS }}
NPM_REGISTRY_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }}
DOCKER_REPOSITORY_USER: ${{ secrets.DOCKER_REPOSITORY_USER }}
DOCKER_REPOSITORY_PASSWORD: ${{ secrets.DOCKER_REPOSITORY_PASSWORD }}
DOCKER_REPOSITORY_DOMAIN: ${{ secrets.DOCKER_REPOSITORY_DOMAIN }}
DOCKER_REPOSITORY_STORYBOOK: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/storybook"
DOCKER_REPOSITORY: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/demo-shell"
NODE_OPTIONS: "--max-old-space-size=5120"
GH_PACKAGES_READ_ONLY_TOKEN: "${{ secrets.HYLAND_GH_PACKAGES_READ_ONLY_TOKEN }}"
jobs:
trigger_adf:
name: trigger adf
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: install NPM
uses: actions/setup-node@v3
with:
node-version: 14
cache-dependency-path: package-lock.json
- name: Trigger Alpha ADF child build
shell: bash
if: ${{ contains(github.event.head_commit.message, '[trigger adf]') || inputs.cluster_operation == 'TRIGGER_ALPHA_ADF' || github.event.schedule == '0 12 * * *' }}
run: |
npm install github-api
./scripts/github/update/update-project.sh -p $GH_BUILD_NUMBER -t $GH_TOKEN -v alpha -c $GH_COMMIT -r ${{ inputs.repo_to_update }}
exit $?
+3
View File
@@ -18,6 +18,7 @@ env:
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_IDENTITY_HOST_APA: ${{ secrets.E2E_IDENTITY_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
E2E_PASSWORD: ${{ secrets.E2E_PASSWORD }}
@@ -70,4 +71,6 @@ jobs:
run-e2e:
name: run e2e
uses: ./.github/workflows/pull-request.yml
with:
cron-run: true
secrets: inherit
-20
View File
@@ -1,20 +0,0 @@
name: "cron upstream daily"
on:
schedule:
- cron: '0 12 * * *'
jobs:
adf-upstream-alpha-alfresco-aca:
name: trigger upstream alpha for alfresco-content-app
uses: ./.github/workflows/adf_alpha.yml
secrets: inherit
with:
repo_to_update: alfresco-content-app
adf-upstream-alpha-alfresco-apps:
name: trigger upstream alpha for alfresco-applications
uses: ./.github/workflows/adf_alpha.yml
secrets: inherit
with:
repo_to_update: alfresco-applications
+7 -6
View File
@@ -3,7 +3,7 @@ name: "git-tag"
on:
workflow_call:
inputs:
dry-run-release:
dry-run-flag:
description: 'enable dry-run on artifact push'
required: false
type: boolean
@@ -26,6 +26,7 @@ env:
GH_BUILD_NUMBER: ${{ github.run_id }}
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_IDENTITY_HOST_APA: ${{ secrets.E2E_IDENTITY_HOST_APA }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
@@ -61,7 +62,7 @@ env:
DOCKER_REPOSITORY: "${{ secrets.DOCKER_REPOSITORY_DOMAIN }}/alfresco/demo-shell"
NPM_REGISTRY_ADDRESS: ${{ secrets.NPM_REGISTRY_ADDRESS }}
NPM_REGISTRY_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }}
GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
BOT_GITHUB_TOKEN: ${{ secrets.BOT_GITHUB_TOKEN }}
REPO_OWNER: "Alfresco"
REPO_NAME: "alfresco-ng2-components"
DEMO_SHELL_DIR: "./dist/demo-shell"
@@ -84,7 +85,7 @@ jobs:
uses: ./.github/workflows/release.yml
secrets: inherit
with:
dry-run-release: false
dry-run-flag: false
setup:
needs: release
@@ -92,18 +93,18 @@ jobs:
name: "Release tag"
runs-on: ubuntu-22.04
env:
GITHUB_TOKEN: $GH_TOKEN
GITHUB_TOKEN: $BOT_GITHUB_TOKEN
steps:
- name: Checkout repository
uses: actions/checkout@v3
- id: set-dryrun
uses: ./.github/actions/enable-dryrun
with:
dry-run-flag: ${{ inputs.dry-run-release }}
dry-run-flag: ${{ inputs.dry-run-flag }}
- name: install NPM
uses: actions/setup-node@v3
with:
node-version: 14
node-version-file: '.nvmrc'
- name: "Release tag"
run: |
git fetch --all --quiet
+34 -18
View File
@@ -3,7 +3,7 @@ name: "pull-request"
on:
workflow_call:
inputs:
dry-run-release:
dry-run-flag:
description: 'enable dry-run on artifact push'
required: false
type: boolean
@@ -13,6 +13,11 @@ on:
required: false
type: string
default: false
cron-run:
description: 'disables jobs which should not run when cron runs e2es'
required: false
type: boolean
default: false
pull_request:
types: [opened, synchronize, reopened]
branches:
@@ -38,6 +43,7 @@ env:
GH_BUILD_NUMBER: ${{ github.run_id }}
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_IDENTITY_HOST_APA: ${{ secrets.E2E_IDENTITY_HOST_APA }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
@@ -96,11 +102,11 @@ jobs:
- name: Check package-lock.json version
run: |
if [[ $(jq '.lockfileVersion == 2' package-lock.json) == "true" ]] ; then
echo -e "\033[31mpackage-lock must be version 1\033[0m"
exit 1
if [[ $(jq '.lockfileVersion == 3' package-lock.json) == "true" ]] ; then
echo "package-lock.json has a correct version"
else
echo -e "\033[32mpackage-lock.json has a correct version\033[0m"
echo "package-lock must be version 3"
exit 1
fi
check-if-pr-is-approved:
@@ -197,9 +203,9 @@ jobs:
- name: install
run: |
npm ci
nx run cli:bundle
nx run testing:bundle
- run: nx print-affected $NX_CALCULATION_FLAGS
npx nx run cli:bundle
npx nx run testing:bundle
- run: npx nx print-affected $NX_CALCULATION_FLAGS
- uses: ./.github/actions/upload-node-modules-and-artifacts
unit-tests:
@@ -213,15 +219,15 @@ jobs:
matrix:
unit-tests:
- name: content-services
exclude: "insights,core,extensions,process-services,process-services-cloud"
exclude: "insights,core,extensions,process-services,process-services-cloud,eslint-plugin-eslint-angular"
- name: core
exclude: "insights,content-services,process-services,process-services-cloud"
exclude: "insights,content-services,process-services,process-services-cloud,eslint-plugin-eslint-angular"
- name: insights
exclude: "core,extensions,content-services,process-services-cloud,process-services"
exclude: "core,extensions,content-services,process-services-cloud,process-services,eslint-plugin-eslint-angular"
- name: process-services
exclude: "core,extensions,content-services,process-services-cloud,insights"
exclude: "core,extensions,content-services,process-services-cloud,insights,eslint-plugin-eslint-angular"
- name: process-cloud
exclude: "insights,core,extensions,content-services,process-services"
exclude: "insights,core,extensions,content-services,process-services,eslint-plugin-eslint-angular"
steps:
- name: Checkout repository
uses: actions/checkout@v3
@@ -231,7 +237,7 @@ jobs:
- uses: ./.github/actions/download-node-modules-and-artifacts
- name: Run unit tests
run: |
/usr/bin/xvfb-run --auto-servernum nx affected:test $NX_CALCULATION_FLAGS --exclude=${{ matrix.unit-tests.exclude }}
/usr/bin/xvfb-run --auto-servernum npx nx affected:test $NX_CALCULATION_FLAGS --exclude=${{ matrix.unit-tests.exclude }}
lint:
# long timeout required when cache has to be recreated
@@ -246,7 +252,7 @@ jobs:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-node-modules-and-artifacts
- run: nx affected --target=lint $NX_CALCULATION_FLAGS
- run: npx nx affected --target=lint $NX_CALCULATION_FLAGS
build-libs:
# long timeout required when cache has to be recreated
@@ -261,9 +267,9 @@ jobs:
fetch-depth: 0 # Fetch all history for all tags and branches
- uses: ./.github/actions/setup
- uses: ./.github/actions/download-node-modules-and-artifacts
- run: nx affected:build $NX_CALCULATION_FLAGS --prod
- run: nx build demoshell --configuration production
- run: nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration ci
- run: npx nx affected:build $NX_CALCULATION_FLAGS --prod
- run: npx nx build demoshell --configuration production
- run: npx nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration=ci --parallel=1
- uses: ./.github/actions/upload-node-modules-and-artifacts
e2e-storybook:
@@ -450,6 +456,7 @@ jobs:
deps: ${{ matrix.e2e-test.deps }}
PR-forbidden-labels:
if: ${{ inputs.cron-run == '' || inputs.cron-run == 'false' }}
runs-on: ubuntu-latest
steps:
- id: checkoutRepo
@@ -481,6 +488,14 @@ jobs:
name: Final Results
needs: [check-if-pr-is-approved, check-package-lock, setup, unit-tests, lint, build-libs, e2e, e2e-storybook]
steps:
- uses: slackapi/slack-github-action@v1.23.0
name: Nofify QA failure
if: ${{ github.event_name == 'schedule' && contains(needs.*.result, 'failure') }}
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
with:
channel-id: 'C016SMNNL8L' #guild-channel
slack-message: "🔴 Warning: The daily ADF cronjob failed\nWorkflow run : <https://github.com/Alfresco/alfresco-ng2-components/actions/runs/${{ github.run_id }}| here>\n"
- name: workflow failure
run: exit 1
if: ${{ contains(needs.*.result, 'failure') }}
@@ -490,3 +505,4 @@ jobs:
- name: workflow success
run: exit 0
if: ${{ contains(needs.*.result, 'success') }}
+17 -16
View File
@@ -3,7 +3,7 @@ name: "release"
on:
workflow_call:
inputs:
dry-run-release:
dry-run-flag:
description: 'enable dry-run on artifact push'
required: false
type: boolean
@@ -29,6 +29,7 @@ env:
GH_BUILD_NUMBER: ${{ github.run_id }}
JOB_ID: ${{ github.run_id }}
PROXY_HOST_BPM: ${{ secrets.E2E_HOST }}
E2E_IDENTITY_HOST_APA: ${{ secrets.E2E_IDENTITY_HOST_APA }}
E2E_HOST_APA: ${{ secrets.E2E_HOST_APA }}
E2E_HOST: ${{ secrets.E2E_HOST }}
E2E_USERNAME: ${{ secrets.E2E_ADMIN_EMAIL_IDENTITY }}
@@ -97,8 +98,8 @@ jobs:
- name: install
run: |
npm ci
nx run cli:bundle
nx run testing:bundle
npx nx run cli:bundle
npx nx run testing:bundle
- uses: ./.github/actions/upload-node-modules-and-artifacts
release-demoshell:
@@ -115,7 +116,7 @@ jobs:
- id: set-dryrun
uses: ./.github/actions/enable-dryrun
with:
dry-run-flag: ${{ inputs.dry-run-release }}
dry-run-flag: ${{ inputs.dry-run-flag }}
- uses: ./.github/actions/setup
with:
enable-cache: false
@@ -123,7 +124,7 @@ jobs:
- uses: ./.github/actions/download-node-modules-and-artifacts
- name: release Demoshell docker
run: |
nx build demoshell --configuration production
npx nx build demoshell --configuration production
. ./scripts/github/release/docker-tag.sh
./scripts/github/release/release-demoshell-docker.sh ${{ steps.set-dryrun.outputs.dryrun }}
@@ -141,22 +142,22 @@ jobs:
- id: set-dryrun
uses: ./.github/actions/enable-dryrun
with:
dry-run-flag: ${{ inputs.dry-run-release }}
dry-run-flag: ${{ inputs.dry-run-flag }}
- uses: ./.github/actions/setup
with:
enable-cache: false
enable-node-modules-cache: false
act: ${{ inputs.dry-run-release }}
act: ${{ inputs.dry-run-flag }}
- uses: ./.github/actions/download-node-modules-and-artifacts
- name: release Storybook docker
run: |
nx run stories:build-storybook --configuration ci
npx nx run stories:build-storybook --configuration ci
. ./scripts/github/release/docker-tag.sh
./scripts/github/release/release-storybook-docker.sh ${{ steps.set-dryrun.outputs.dryrun }}
release-npm:
needs: [setup]
timeout-minutes: 15
timeout-minutes: 30
if: github.event.pull_request.merged == true || github.ref_name == 'master' || github.ref_name == 'master-patch-*'
runs-on: ubuntu-22.04
permissions:
@@ -174,7 +175,7 @@ jobs:
- id: set-dryrun
uses: ./.github/actions/enable-dryrun
with:
dry-run-flag: ${{ inputs.dry-run-release }}
dry-run-flag: ${{ inputs.dry-run-flag }}
- uses: ./.github/actions/download-node-modules-and-artifacts
- name: check PR number
id: action
@@ -191,24 +192,24 @@ jobs:
run: |
set -u;
./scripts/github/build/bumpversion.sh
nx affected:build $NX_CALCULATION_FLAGS --prod --exclude="demoshell" --skip-nx-cache
nx affected $NX_CALCULATION_FLAGS --target=pretheme
npx nx affected:build $NX_CALCULATION_FLAGS --prod --exclude="demoshell" --skip-nx-cache
npx nx affected $NX_CALCULATION_FLAGS --target=pretheme
- uses: actions/setup-node@v3
name: release libraries GH registry
with:
node-version: 14
node-version-file: '.nvmrc'
registry-url: 'https://npm.pkg.github.com'
scope: '@alfresco'
- run: nx affected --target=npm-publish $NX_CALCULATION_FLAGS --tag=$TAG_NPM || exit 1
- run: npx nx affected --target=npm-publish $NX_CALCULATION_FLAGS --tag=$TAG_NPM || exit 1
env:
NODE_AUTH_TOKEN: ${{ secrets.PAT_WRITE_PKG }}
- uses: actions/setup-node@v3
name: release libraries Npm registry
with:
node-version: 14
node-version-file: '.nvmrc'
registry-url: 'https://${{ vars.NPM_REGISTRY_ADDRESS }}'
scope: '@alfresco'
- run: nx affected --target=npm-publish $NX_CALCULATION_FLAGS --tag=$TAG_NPM || exit 1
- run: npx nx affected --target=npm-publish $NX_CALCULATION_FLAGS --tag=$TAG_NPM || exit 1
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }}
+26 -6
View File
@@ -38,7 +38,7 @@ jobs:
const tagVersion = process.env.TAG_VERSION;
console.log('tagVersion:',tagVersion);
const getLatestVersionOf = require('./scripts/github/update/latest-version-of.js');
const { hasVersionNew: hasVersionNewJS, latestVersion: latestVersionJS } = await getLatestVersionOf({github, context, dependencyName: 'js-api', tagVersion});
console.log('hasVersionNewJS', hasVersionNewJS)
console.log('latestVersionJS', latestVersionJS)
@@ -99,7 +99,7 @@ jobs:
- name: setup NPM
uses: actions/setup-node@v3
with:
node-version: 14.15.4
node-version-file: '.nvmrc'
cache-dependency-path: package-lock.json
- name: "General :: dbpci-install"
run: |
@@ -113,10 +113,29 @@ jobs:
run: |
migrateDependenciesJS() {
echo "Update JS dependencies to: ${PACKAGE_VERSION_JS}"
echo "Calling migration JS"
npx nx migrate @alfresco/js-api@${PACKAGE_VERSION_JS}
echo "Migration JS done"
echo "Update JS dependencies to: ${PACKAGE_VERSION_JS}"
echo "Calling migration JS"
npx nx migrate @alfresco/js-api@${PACKAGE_VERSION_JS}
echo "Migration JS done"
}
migrateLibDependenciesJS() {
eval projects=( "cli"
"core"
"content-services"
"process-services"
"process-services-cloud"
"insights"
"testing"
"extensions" )
projectslength=${#projects[@]}
for (( i=0; i<${projectslength}; i++ ));
do
echo "Update JS dependencies in adf-${projects[$i]} to: ${PACKAGE_VERSION_JS}"
DESTDIR="lib/${projects[$i]}"
sed -i "${sedi[@]}" "s/\"@alfresco\/js-api\": \".*\"/\"@alfresco\/js-api\": \">=${PACKAGE_VERSION_JS}\"/g" ${DESTDIR}/package.json
done
}
regeneratePackageLock() {
@@ -132,6 +151,7 @@ jobs:
if [[ "$IS_JS_AFFECTED" == "true" ]]; then
migrateDependenciesJS
migrateLibDependenciesJS
fi
regeneratePackageLock
+1 -1
View File
@@ -32,5 +32,5 @@ out-tsc
e2e-result-*
licenses.txt
.DS_Store
.angular
NX
+1 -1
View File
@@ -1 +1 @@
14
18
-46
View File
@@ -1,46 +0,0 @@
# Snyk (https://snyk.io) policy file, patches or ignores known vulnerabilities.
version: v1.14.1
ignore: {}
# patches apply the minimum changes required to fix a vulnerability
patch:
SNYK-JS-HTTPSPROXYAGENT-469131:
- '@alfresco/adf-cli > npm-registry-fetch > make-fetch-happen > https-proxy-agent':
patched: '2019-11-20T10:48:59.194Z'
- '@alfresco/js-api > @alfresco/adf-cli > npm-registry-fetch > make-fetch-happen > https-proxy-agent':
patched: '2019-11-20T10:48:59.194Z'
SNYK-JS-TREEKILL-536781:
- snyk > snyk-sbt-plugin > tree-kill:
patched: '2019-12-12T00:35:06.820Z'
SNYK-JS-LODASH-567746:
- snyk > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/dep-graph > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > inquirer > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-config > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-mvn-plugin > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-nodejs-lockfile-parser > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-nuget-plugin > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/dep-graph > graphlib > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-go-plugin > graphlib > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-nodejs-lockfile-parser > graphlib > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/snyk-cocoapods-plugin > @snyk/dep-graph > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-nuget-plugin > dotnet-deps-parser > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > snyk-php-plugin > @snyk/composer-lockfile-parser > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/snyk-cocoapods-plugin > @snyk/dep-graph > graphlib > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/snyk-cocoapods-plugin > @snyk/cocoapods-lockfile-parser > @snyk/ruby-semver > lodash:
patched: '2020-05-01T00:35:43.233Z'
- snyk > @snyk/snyk-cocoapods-plugin > @snyk/cocoapods-lockfile-parser > @snyk/dep-graph > graphlib > lodash:
patched: '2020-05-01T00:35:43.233Z'
-54
View File
@@ -1,54 +0,0 @@
# Browser Support
This page gives a guide to Browser support and polyfills.
Browser compatibility and support depends on targeted browsers and 3rd party libraries. ADF is based on the following libraries and components:
- Angular (all ADF components)
- Moment.js (many ADF components)
- PDF.js (`ng2-alfresco-viewer` component)
- Raphael.js (`ng2-alfresco-diagrams`, `ng2-alfresco-analytics`)
- Chart.js (`ng2-alfresco-analytics`)
## Browser polyfills
### Angular
Please refer to the [official guide](https://angular.io/docs/ts/latest/guide/browser-support.html) for Angular browser support.
ADF (demo shell) imports by default the following set of recommended polyfills:
- [core-js](https://www.npmjs.com/package/core-js) (ES6 standard support)
### 3rd party libraries
Please refer to the following list of [popular polyfills](https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills) for HTML5 cross-browser compatibility.
ADF (demo shell) imports by default the following set of recommended polyfills:
- [intl](https://www.npmjs.com/package/intl), Polyfill the ECMA-402 Intl API (except collation), **IE**/**Safari**
- [pdfjs compatibility](https://www.npmjs.com/package/pdfjs-dist), Portable Document Format (PDF) library that is built with HTML5, **IE**
## Example
```html
<!-- Polyfill(s) for Safari (pre-10.x) -->
<script src="node_modules/intl/dist/Intl.min.js"></script>
<script src="node_modules/intl/locale-data/jsonp/en.js"></script>
<!-- Polyfill(s) for older browsers -->
<script src="node_modules/core-js/client/shim.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/dom4/1.8.3/dom4.js"></script>
<script src="node_modules/element.scrollintoviewifneeded-polyfill/index.js"></script>
<!-- Polyfill(s) for pdf support -->
<script src="node_modules/pdfjs-dist/web/compatibility.js"></script>
<!-- Polyfill(s) for dialogs -->
<script src="node_modules/dialog-polyfill/dialog-polyfill.js"></script>
<link rel="stylesheet" type="text/css" href="node_modules/dialog-polyfill/dialog-polyfill.css" />
```
See the [demo shell](demo-shell/index.html) example project for
further information and source code.
+1 -1
View File
@@ -1,6 +1,6 @@
# 1. Generate licenses
FROM node:16.20-alpine3.17 AS builder
FROM node:18.16-alpine3.17 AS builder
WORKDIR /usr/src/alfresco
COPY package.json package.json
-5
View File
@@ -1,5 +0,0 @@
# Introduction
See the [introduction page](docs/user-guide/adf-introduction.md) in our
[documentation](docs/README.md) for an overview of ADF along with links
to useful starting points.
View File
-11
View File
@@ -1,11 +0,0 @@
# Prerequisites for building and running apps with the Alfresco Application Development Framework
See our tutorial
[Creating your first ADF Application](docs/tutorials/creating-your-first-adf-application.md)
for full details of what you need to install before using ADF.
If you experience [CORS](https://en.wikipedia.org/wiki/Cross-origin_resource_sharing)
issues then you should also read our
[CORS guide](ALFRESCOCORS.md)
to see the full range of solutions available.
+25 -40
View File
@@ -1,34 +1,29 @@
# Alfresco Application Development Framework (ADF)
| branch | status |
| --- | --- |
| master | [![git-tag](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/git-tag.yml/badge.svg)](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/git-tag.yml) |
| develop | [![cron schedule](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/cron.yml/badge.svg)](https://github.com/Alfresco/alfresco-ng2-components/actions/workflows/cron.yml)|
[![Codacy Badge](https://api.codacy.com/project/badge/Grade/d9eb873741da403bb3284778102372e7)](https://www.codacy.com/app/Alfresco/alfresco-ng2-components?utm_source=github.com&utm_medium=referral&utm_content=Alfresco/alfresco-ng2-components&utm_campaign=badger)
[![Join the chat at https://gitter.im/Alfresco/alfresco-ng2-components](https://badges.gitter.im/Alfresco/alfresco-ng2-components.svg)](https://gitter.im/Alfresco/alfresco-ng2-components?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
<p>
<a href='https://github.com/Alfresco/alfresco-ng2-components/blob/master/LICENSE'>
<img src='https://img.shields.io/hexpm/l/plug.svg' alt='license' />
</a>
</p
## Introduction
See the [Introduction page](INTRODUCTION.md) to get started with the Alfresco Application Development Framework.
See the [introduction page](docs/user-guide/adf-introduction.md) in our
[documentation](docs/README.md) for an overview of ADF along with links
to useful starting points.
## Prerequisites
Before you start using this development framework, make sure you have installed all required software and done all the necessary configuration. see the prerequisites section in [creating your first ADF Application](./docs/tutorials/creating-your-first-adf-application.md) for full details.
```text
Node: 18.x
NPM: 9.x
```
Also, check out the tutorial [Creating your first ADF Application](docs/tutorials/creating-your-first-adf-application.md)
for full details on what you may need to install before using ADF.
### See also
- [Node Version Manager](docs/tutorials/nvm.md)
- [CORS guide](ALFRESCOCORS.md)
## Components
You can find the sources for all ADF components in the
[`lib`](/lib) folder.
Full documentation for all components is available at the
[ADF Component Catalog](https://alfresco.github.io/adf-component-catalog/).
You can find the sources for all ADF components in the [`lib`](/lib) folder.
## Libraries
@@ -47,28 +42,18 @@ A separate application showcasing integration of components can be found
[here](https://github.com/Alfresco/alfresco-ng2-components/tree/master/demo-shell).
The app has examples of basic interaction for both APS and ACS components.
## Yeoman generators
## Application generator for Yeoman
To speed up the development of your ADF application, use the
[Yeoman Generator](https://github.com/Alfresco/generator-ng2-alfresco-app).
This will create a full working project with all the right libraries and tools.
<p align="center">
<img title="yeoman generator" src='https://github.com/yeoman/media/blob/master/optimized/yeoman-150x150-opaque.png' alt='yeoman logo' />
</p>
To speed up the development, you can use the
[Generator for Yeoman](https://github.com/Alfresco/generator-ng2-alfresco-app).
## Browser Support
All components are supported in the following browsers:
|**Browser** |**Version** |
|--- |--- |
|Chrome |Latest |
|Safari (OS X) |9.x |
|Firefox* |Latest |
|Edge |13, 14 |
|Internet Explorer |11 |
* Due to a [known issue](https://bugzilla.mozilla.org/show_bug.cgi?id=1188880) in Firefox, the Alfresco Upload Component does not currently support folder upload functionality on Firefox.
See the [Browser Support](BROWSER-SUPPORT.md) article for more details.
|**Browser** |**Version** |
|--- |--- |
| Chrome | Latest |
| Safari | Latest |
| Firefox | Latest |
| Edge | Latest |
+78 -31
View File
@@ -56,11 +56,6 @@
"input": "demo-shell/src/app/components/lazy-loading/i18n",
"output": "/resources/lazy-loading/i18n"
},
{
"glob": "**/*",
"input": "dist/libs/core/lib/prebuilt-themes",
"output": ""
},
{
"glob": "**/*",
"input": "lib/core/src/lib/assets",
@@ -163,7 +158,6 @@
"input": "lib/core/src/lib/styles/prebuilt/adf-purple-green.scss",
"bundleName": "adf-purple-green"
},
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -272,7 +266,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'demo-shell/**/*.ts'"
"command": "npx cspell 'demo-shell/**/*.ts'"
}
]
}
@@ -339,7 +333,7 @@
"sourceMap": true,
"codeCoverage": true,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css"
"demo-shell/src/styles.scss"
]
}
},
@@ -366,7 +360,6 @@
"configDir": "lib/core/.storybook",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -388,7 +381,6 @@
"outputDir": "dist/storybook/core",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -407,7 +399,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/core/**/*.ts'"
"command": "npx cspell 'lib/core/**/*.ts'"
}
]
}
@@ -417,7 +409,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/core/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/core/**/*.scss --config stylelint-config.json"
}
]
}
@@ -427,7 +419,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/license-checker --production --failOn 'GPL;GPL-2.0' > licenses.txt"
"command": "npx license-checker --production --failOn 'GPL;GPL-2.0' > licenses.txt"
}
]
}
@@ -437,7 +429,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/webpack -- --config ./lib/config/webpack.style.js --progress --profile --bail"
"command": "npx webpack -- --config ./lib/config/webpack.style.js --progress --profile --bail"
}
]
}
@@ -506,7 +498,6 @@
"configDir": "lib/content-services/.storybook",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -528,7 +519,6 @@
"outputDir": "dist/storybook/content-services",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -547,7 +537,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/content-services/**/*.ts'"
"command": "npx cspell 'lib/content-services/**/*.ts'"
}
]
}
@@ -557,7 +547,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/content-services/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/content-services/**/*.scss --config stylelint-config.json"
}
]
}
@@ -623,7 +613,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/process-services/**/*.ts'"
"command": "npx cspell 'lib/process-services/**/*.ts'"
}
]
},
@@ -632,7 +622,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/process-services/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/process-services/**/*.scss --config stylelint-config.json"
}
]
}
@@ -643,7 +633,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/process-services-cloud/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/process-services-cloud/**/*.scss --config stylelint-config.json"
}
]
}
@@ -712,7 +702,6 @@
"configDir": "lib/process-services-cloud/.storybook",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -734,7 +723,6 @@
"outputDir": "dist/storybook/process-services-cloud",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -754,7 +742,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/playwright test --config='e2e-playwright/playwright.config.ts'"
"command": "npx playwright test --config='e2e-playwright/playwright.config.ts'"
}
]
}
@@ -764,7 +752,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/process-services-cloud/**/*.ts'"
"command": "npx cspell 'lib/process-services-cloud/**/*.ts'"
}
]
}
@@ -774,7 +762,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/process-services-cloud/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/process-services-cloud/**/*.scss --config stylelint-config.json"
}
]
}
@@ -840,7 +828,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/insights/**/*.ts'"
"command": "npx cspell 'lib/insights/**/*.ts'"
}
]
}
@@ -850,7 +838,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/stylelint lib/insights/**/*.scss --config stylelint-config.json"
"command": "npx stylelint lib/insights/**/*.scss --config stylelint-config.json"
}
]
}
@@ -916,7 +904,7 @@
"options": {
"commands": [
{
"command": "$(npm bin)/cspell 'lib/extensions/**/*.ts'"
"command": "npx cspell 'lib/extensions/**/*.ts'"
}
]
}
@@ -1025,6 +1013,67 @@
}
}
},
"eslint-angular": {
"root": "lib/eslint-angular",
"sourceRoot": "lib/eslint-angular/src",
"projectType": "library",
"prefix": "adf",
"architect": {
"build": {
"builder": "@nrwl/node:webpack",
"options": {
"projectRoot": "lib/eslint-angular",
"outputPath": "dist/libs/eslint-plugin-eslint-angular",
"main": "lib/eslint-angular/index.ts",
"generatePackageJson" : true,
"tsConfig": "lib/eslint-angular/tsconfig.lib.prod.json"
},
"configurations": {
"production": {
"projectRoot": "lib/eslint-angular",
"outputPath": "dist/libs/eslint-plugin-eslint-angular",
"main": "lib/eslint-angular/index.ts",
"generatePackageJson" : true,
"tsConfig": "lib/eslint-angular/tsconfig.lib.prod.json"
}
},
"defaultConfiguration": "production"
},
"lint": {
"builder": "@nrwl/linter:eslint",
"options": {
"lintFilePatterns": [
"lib/eslint-angular/**/*.ts"
]
}
},
"bundle": {
"executor": "nx:run-commands",
"options": {
"commands": [
{
"command": "echo testing bundle created"
}
]
}
},
"npm-publish": {
"executor": "nx:run-commands",
"dependsOn": [
"build"
],
"options": {
"cwd": "dist/libs/eslint-plugin-eslint-angular",
"commands": [
{
"command": "npm publish --tag {args.tag}",
"forwardAllArgs": true
}
]
}
}
}
},
"cli": {
"root": "lib/cli",
"sourceRoot": "lib/cli",
@@ -1113,7 +1162,6 @@
"configDir": "lib/stories/.storybook",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
@@ -1135,7 +1183,6 @@
"outputDir": "dist/storybook/stories",
"compodoc": false,
"styles": [
"demo-shell/src/assets/fonts/material-icons/material-icons.css",
"demo-shell/src/assets/fonts/muli/muli.css",
"demo-shell/src/styles.scss",
"demo-shell/src/custom-style-dev.scss",
+1
View File
@@ -5,6 +5,7 @@
"activiti",
"adhoc",
"afts",
"appkey",
"Arial",
"arrowdown",
"arrowup",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "Alfresco-ADF-Angular-Demo",
"description": "Demo shell for Alfresco Angular components",
"version": "6.0.0",
"version": "6.2.0",
"author": "Hyland Software, Inc. and its affiliates",
"repository": {
"type": "git",
-2
View File
@@ -18,7 +18,6 @@
import { BrowserModule } from '@angular/platform-browser';
import { APP_INITIALIZER, NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { FlexLayoutModule } from '@angular/flex-layout';
import { ChartsModule } from 'ng2-charts';
import { HttpClientModule } from '@angular/common/http';
import { BrowserAnimationsModule, NoopAnimationsModule } from '@angular/platform-browser/animations';
@@ -144,7 +143,6 @@ registerLocaleData(localeSv);
FormsModule,
HttpClientModule,
MaterialModule,
FlexLayoutModule,
TranslateModule.forRoot(),
CoreModule.forRoot(),
ContentModule.forRoot(),
@@ -18,7 +18,7 @@
<div class="app-layout-menu-spacer"></div>
<app-search-bar fxFlex="0 1 auto"></app-search-bar>
<app-search-bar></app-search-bar>
<div class="app-header-delimiexpandedSidenavter"></div>
@@ -138,7 +138,7 @@ export class AppLayoutComponent implements OnInit, OnDestroy {
this.headerService.headerTextColor
.pipe(takeUntil(this.onDestroy$))
.subscribe(headerTextColor => {
document.documentElement.style.setProperty('--theme-primary-color-default-contrast', headerTextColor);
document.documentElement.style.setProperty('--theme-header-text-color', headerTextColor);
});
this.headerService.logo
@@ -58,28 +58,25 @@
</small>
<adf-toolbar class="app-full-content-toolbar">
<adf-toolbar-title fxFlex="0 1 auto">
<adf-toolbar-title>
<adf-breadcrumb root="APP.PERSONAL-FILES" [target]="documentList" [folderNode]="documentList.folderNode">
</adf-breadcrumb>
</adf-toolbar-title>
<adf-toolbar-divider fxFlex="0 0 auto"></adf-toolbar-divider>
<div fxFlex="0 0 auto">
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.NEW_FOLDER_LABEL' | translate">
<mat-icon>create_new_folder</mat-icon>
</button>
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.EDIT_NODE_LABEL' | translate">
<mat-icon>create</mat-icon>
</button>
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.DELETE_NODE_LABEL' | translate">
<mat-icon>delete</mat-icon>
</button>
</div>
<adf-toolbar-divider></adf-toolbar-divider>
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.NEW_FOLDER_LABEL' | translate">
<mat-icon>create_new_folder</mat-icon>
</button>
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.EDIT_NODE_LABEL' | translate">
<mat-icon>create</mat-icon>
</button>
<button mat-icon-button [attr.aria-label]="'BREADCRUMB_DEMO.DELETE_NODE_LABEL' | translate">
<mat-icon>delete</mat-icon>
</button>
</adf-toolbar>
<h2>6. Dropdown Breadcrumb</h2>
<adf-dropdown-breadcrumb fxHide fxShow.lt-sm="true"
class="app-files-breadcrumb"
<adf-dropdown-breadcrumb class="app-files-breadcrumb"
[target]="documentList">
</adf-dropdown-breadcrumb>
@@ -1,13 +1,21 @@
.app-breadcrumb-container-restricted {
width: 800px;
max-width: 800px;
border: 1px solid lightgray;
}
app-breadcrumb-demo {
.app-breadcrumb-container-restricted {
width: 800px;
max-width: 800px;
border: 1px solid lightgray;
}
.app-content {
margin: 10px 0;
}
.app-content {
margin: 10px 0;
}
.app-full-content-toolbar .app-toolbar-title .app-breadcrumb {
width: 0;
.app-full-content-toolbar .app-toolbar-title .app-breadcrumb {
width: 0;
}
@media screen and (min-width: 600px) {
.app-files-breadcrumb {
display: none;
}
}
}
@@ -15,11 +15,13 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
@Component({
selector: 'app-breadcrumb-demo',
templateUrl: './breadcrumb-demo.component.html',
styleUrls: [`./breadcrumb-demo.component.scss`]
styleUrls: [`./breadcrumb-demo.component.scss`],
encapsulation: ViewEncapsulation.None
})
export class BreadcrumbDemoComponent {
@@ -1,8 +1,4 @@
<adf-toolbar>
<div fxLayout="column" fxLayoutAlign="center">
<div fxLayout="row">
<div class="app-crumb">{{appName + ' >'}} </div>
<div class="app-filter-crumb"> {{filterName | translate}}</div>
</div>
</div>
<div class="app-crumb">{{appName + ' >'}} </div>
<div class="app-filter-crumb"> {{filterName | translate}}</div>
</adf-toolbar>
@@ -1,8 +1,14 @@
.app-app-crumb {
opacity: 0.5;
}
app-cloud-breadcrumbs {
.app-app-crumb {
opacity: 0.5;
}
.app-filter-crumb {
opacity: 0.8;
margin-left: 5px;
.app-filter-crumb {
opacity: 0.8;
margin-left: 5px;
}
adf-toolbar {
display: flex;
}
}
@@ -15,13 +15,14 @@
* limitations under the License.
*/
import { Component, OnInit } from '@angular/core';
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
@Component({
selector: 'app-cloud-breadcrumbs',
templateUrl: './cloud-breadcrumb-component.html',
styleUrls: ['./cloud-breadcrumb-component.scss']
styleUrls: ['./cloud-breadcrumb-component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CloudBreadcrumbsComponent implements OnInit {
appName: string;
@@ -1,39 +1,37 @@
<mat-tab-group fxFill class="app-cloud-layout-tab-body">
<mat-tab-group class="app-cloud-layout-tab-body">
<mat-tab label="{{'PS_CLOUD_TAB.APPS_TAB' | translate}}">
<div fxFill fxLayout>
<adf-sidenav-layout fxFlex [sidenavMin]="70" [sidenavMax]="270" [stepOver]="780">
<adf-sidenav-layout-header>
<ng-template>
<app-cloud-breadcrumbs></app-cloud-breadcrumbs>
</ng-template>
</adf-sidenav-layout-header>
<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-cloud-filters-demo [appName]="appName"></app-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>
<adf-sidenav-layout [sidenavMin]="70" [sidenavMax]="270" [stepOver]="780">
<adf-sidenav-layout-header>
<ng-template>
<app-cloud-breadcrumbs></app-cloud-breadcrumbs>
</ng-template>
</adf-sidenav-layout-header>
<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-cloud-filters-demo [appName]="appName"></app-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>
</mat-tab>
<mat-tab label="{{'PS_CLOUD_TAB.SETTINGS_TAB' | translate}}">
<app-cloud-settings></app-cloud-settings>
@@ -5,3 +5,18 @@
.app-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100%;
}
app-cloud-layout {
.app-cloud-layout-tab-body {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
adf-sidenav-layout {
flex-direction: row;
box-sizing: border-box;
display: flex;
}
}
}
@@ -1,36 +1,34 @@
<mat-tab-group fxFill class="app-cloud-layout-tab-body">
<mat-tab label="{{'PS_CLOUD_TAB.APPS_TAB' | translate}}">
<div fxFill fxLayout>
<adf-sidenav-layout fxFlex [sidenavMin]="70" [sidenavMax]="270" [stepOver]="780">
<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>
<mat-tab-group class="app-cloud-layout-tab-body">
<mat-tab label="{{'PS_CLOUD_TAB.APPS_TAB' | translate}}">
<adf-sidenav-layout [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>
</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,20 @@
.app-cloud-layout-overflow {
overflow: auto;
}
.app-cloud-layout-tab-body {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
.mat-tab-body-wrapper {
height: 100%;
}
adf-sidenav-layout {
min-height: 100%;
min-width: 100%;
}
}
@@ -21,14 +21,7 @@ import { CloudLayoutService } from '../services/cloud-layout.service';
@Component({
templateUrl: './community-cloud.component.html',
styles: [`.app-cloud-layout-overflow {
overflow: auto;
}
.app-cloud-layout-tab-body .mat-tab-body-wrapper {
height: 100% !important;
}
`],
styleUrls: ['./community-cloud.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CommunityCloudComponent implements OnInit {
@@ -8,11 +8,9 @@
<div class="app-process-cloud-container">
<adf-cloud-task-list
fxFlex
class="app-cloud-layout-overflow"
[processInstanceId]="processInstanceId"
(rowClick)="onRowClick($event)"
#taskCloud>
(rowClick)="onRowClick($event)">
</adf-cloud-task-list>
<adf-cloud-process-header
@@ -1,14 +1,17 @@
.app {
&-process-cloud-container {
display: flex;
}
app-community-process-details-cloud {
.app {
&-process-cloud-container {
display: flex;
}
&-cloud-layout-overflow {
width: 67%;
}
&-cloud-layout-overflow {
width: 67%;
flex: 1;
}
&-process-cloud-header {
margin-left: 10px;
width: 25%;
&-process-cloud-header {
margin-left: 10px;
width: 25%;
}
}
}
@@ -15,12 +15,14 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
@Component({
selector: 'app-community-process-details-cloud',
templateUrl: './community-process-details-cloud.component.html',
styleUrls: ['./community-process-details-cloud.component.scss']
styleUrls: ['./community-process-details-cloud.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CommunityProcessDetailsCloudDemoComponent {
@@ -1,42 +1,42 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-process-filter
[id]="filterId"
[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
class="app-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>
<adf-cloud-edit-process-filter
[id]="filterId"
[filterProperties]="processFilterProperties.filterProperties"
[sortProperties]="processFilterProperties.sortProperties"
[actions]="processFilterProperties.actions"
(filterChange)="onFilterChange($event)"
(action)="onProcessFilterAction($event)">
</adf-cloud-edit-process-filter>
<div
class="app-cloud-process-list-container"
*ngIf="editedFilter">
<adf-cloud-process-list
#processCloud
class="app-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>
@@ -0,0 +1,21 @@
app-community-processes-cloud-demo {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
.app-cloud-process-list-container {
place-content: stretch space-between;
align-items: stretch;
margin-top: 2px;
}
&, .app-cloud-process-list-container {
flex-direction: column;
display: flex;
}
.app-cloud-layout-overflow, .app-cloud-process-list-container {
flex: 1;
}
}
@@ -15,17 +15,17 @@
* limitations under the License.
*/
import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';
import { Component, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
ProcessListCloudComponent,
ProcessFilterCloudModel,
ProcessListCloudSortingModel,
ProcessFilterCloudService,
ProcessFiltersCloudComponent,
ProcessFilterCloudService
ProcessListCloudComponent,
ProcessListCloudSortingModel
} from '@alfresco/adf-process-services-cloud';
import { ActivatedRoute, Router } from '@angular/router';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
import { CloudLayoutService } from '../services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -35,7 +35,10 @@ const PROCESS_FILTER_PROPERTY_KEYS = 'adf-edit-process-filter';
const ACTION_SAVE_AS = 'saveAs';
@Component({
templateUrl: './community-processes-cloud.component.html'
selector: 'app-community-processes-cloud-demo',
templateUrl: './community-processes-cloud.component.html',
styleUrls: ['./community-processes-cloud.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CommunityProcessesCloudDemoComponent implements OnInit, OnDestroy {
@ViewChild('processCloud')
@@ -1,46 +1,46 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-task-filter
[id]="filterId"
[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
class="app-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>
<adf-cloud-edit-task-filter
[id]="filterId"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
(action)="onTaskFilterAction($event)"
(filterChange)="onFilterChange($event)">
</adf-cloud-edit-task-filter>
<div
class="app-cloud-task-list-container"
*ngIf="editedFilter">
<adf-cloud-task-list
#taskCloud
class="app-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>
@@ -0,0 +1,27 @@
app-community-tasks-cloud-demo {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
.adf-cloud-layout-tab-body {
.mat-tab-body-wrapper {
height: 100%;
}
}
.app-cloud-task-list-container {
place-content: stretch space-between;
align-items: stretch;
margin-top: 2px;
}
&, .app-cloud-task-list-container {
flex-direction: column;
display: flex;
}
.app-cloud-layout-overflow, .app-cloud-task-list-container {
flex: 1;
}
}
@@ -15,9 +15,14 @@
* limitations under the License.
*/
import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';
import { TaskListCloudComponent, TaskListCloudSortingModel, TaskFilterCloudModel, TaskFilterCloudService } from '@alfresco/adf-process-services-cloud';
import { UserPreferencesService, AppConfigService } from '@alfresco/adf-core';
import { Component, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
TaskFilterCloudModel,
TaskFilterCloudService,
TaskListCloudComponent,
TaskListCloudSortingModel
} from '@alfresco/adf-process-services-cloud';
import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
import { ActivatedRoute, Router } from '@angular/router';
import { CloudLayoutService } from '../services/cloud-layout.service';
import { Subject } from 'rxjs';
@@ -28,8 +33,10 @@ const ACTION_SAVE_AS = 'saveAs';
const TASK_FILTER_PROPERTY_KEYS = 'adf-edit-task-filter';
@Component({
selector: 'app-community-tasks-cloud-demo',
templateUrl: './community-task-cloud.component.html',
styles: [`.adf-cloud-layout-tab-body .mat-tab-body-wrapper { height: 100%; }`]
styleUrls: ['./community-task-cloud.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CommunityTasksCloudDemoComponent implements OnInit, OnDestroy {
@ViewChild('taskCloud')
@@ -1,20 +1,16 @@
<h4 data-automation-id="task-details-header">Simple page to show the taskId: {{ taskId }}</h4>
<div fxLayout="column" fxFill fxLayoutGap="2px">
<div fxLayout="row" fxFill>
<div fxLayout="column" fxFlex="80%">
<adf-cloud-task-form
[taskId]="taskId"
(cancelClick)="goBack()"
(taskClaimed)="onClaimTask()"
(taskCompleted)="onTaskCompleted()"
(taskUnclaimed)="onUnclaimTask()"
(formSaved)="onFormSaved()"
(error)="onError($event)">
</adf-cloud-task-form>
</div>
<adf-cloud-task-header fxFlex
[taskId]="taskId">
</adf-cloud-task-header>
<div class="app-community-task-details-cloud-column">
<div class="app-community-task-details-cloud-row">
<adf-cloud-task-form
[taskId]="taskId"
(cancelClick)="goBack()"
(taskClaimed)="onClaimTask()"
(taskCompleted)="onTaskCompleted()"
(taskUnclaimed)="onUnclaimTask()"
(formSaved)="onFormSaved()"
(error)="onError($event)">
</adf-cloud-task-form>
<adf-cloud-task-header [taskId]="taskId"></adf-cloud-task-header>
</div>
</div>
@@ -1,18 +1,48 @@
.app {
&-task-detail-container {
display: flex;
}
app-community-task-details-cloud {
.app {
&-task-detail-container {
display: flex;
}
&-task-title {
margin-left: 15px;
}
&-task-title {
margin-left: 15px;
}
&-task-control {
width: 70%;
}
&-task-control {
width: 70%;
}
&-demop-card-container {
width: 30%;
font-family: inherit;
&-demop-card-container {
width: 30%;
font-family: inherit;
}
&-community-task-details-cloud-column {
margin: 0;
flex-direction: column;
.app-community-task-details-cloud-row {
flex-direction: row;
adf-cloud-task-form {
flex: 1 1 100%;
flex-direction: column;
display: flex;
max-width: 80%;
}
adf-cloud-task-header {
flex: 1;
}
}
}
&-community-task-details-cloud-column, &-community-task-details-cloud-row {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
display: flex;
}
}
}
@@ -15,13 +15,15 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
@Component({
selector: 'app-community-task-details-cloud',
templateUrl: './community-task-details-cloud.component.html',
styleUrls: ['./community-task-details-cloud.component.scss']
styleUrls: ['./community-task-details-cloud.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CommunityTaskDetailsCloudDemoComponent {
@@ -19,7 +19,6 @@ import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { FlexLayoutModule } from '@angular/flex-layout';
import {
ProcessServicesCloudModule,
LocalPreferenceCloudService,
@@ -76,8 +75,7 @@ const routes: Routes = [
CoreModule,
ProcessServicesCloudModule,
RouterModule.forChild(routes),
AppCloudSharedModule,
FlexLayoutModule
AppCloudSharedModule
],
declarations: [
CommunityCloudComponent,
@@ -7,12 +7,10 @@
<div class="app-process-cloud-container">
<adf-cloud-task-list
fxFlex
class="app-cloud-layout-overflow"
[appName]="appName"
[processInstanceId]="processInstanceId"
(rowClick)="onRowClick($event)"
#taskCloud>
(rowClick)="onRowClick($event)">
</adf-cloud-task-list>
<adf-cloud-process-header
@@ -1,14 +1,17 @@
.app {
&-process-cloud-container {
display: flex;
}
app-process-details-cloud-demo {
.app {
&-process-cloud-container {
display: flex;
}
&-cloud-layout-overflow {
width: 67%;
}
&-cloud-layout-overflow {
width: 67%;
flex: 1;
}
&-process-cloud-header {
margin-left: 10px;
width: 25%;
&-process-cloud-header {
margin-left: 10px;
width: 25%;
}
}
}
@@ -15,12 +15,14 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
@Component({
selector: 'app-process-details-cloud-demo',
templateUrl: './process-details-cloud-demo.component.html',
styleUrls: ['./process-details-cloud-demo.component.scss']
styleUrls: ['./process-details-cloud-demo.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class ProcessDetailsCloudDemoComponent {
@@ -1,70 +1,70 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-process-filter
[appName]="appName"
[id]="filterId"
[filterProperties]="filterProperties"
[sortProperties]="filterSortProperties"
[actions]="filterActions"
[processFilter]="editedFilter"
(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
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[appVersion]="editedFilter.appVersion"
[initiator]="editedFilter.initiator"
[processDefinitionId]="editedFilter.processDefinitionId"
[processDefinitionName]="editedFilter.processDefinitionName"
[processDefinitionKey]="editedFilter.processDefinitionKey"
[id]="editedFilter.processInstanceId"
[status]="editedFilter.status"
[name]="editedFilter.processName"
[businessKey]="editedFilter['businessKey']"
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
[lastModifiedTo]="editedFilter.lastModifiedTo"
[sorting]="[{orderBy: editedFilter.sort, direction: editedFilter.order}]"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
[multiselect]="multiselect"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-process-list>
<adf-pagination
[target]="processCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows">{{ row.id }}</li>
</ul>
<adf-cloud-edit-process-filter
[appName]="appName"
[id]="filterId"
[filterProperties]="filterProperties"
[sortProperties]="filterSortProperties"
[actions]="filterActions"
[processFilter]="editedFilter"
(filterChange)="onFilterChange($event)"
(action)="onProcessFilterAction($event)">
</adf-cloud-edit-process-filter>
<div
*ngIf="editedFilter"
class="app-processes-list-container">
<adf-cloud-process-list
#processCloud
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[appVersion]="editedFilter.appVersion"
[initiator]="editedFilter.initiator"
[processDefinitionId]="editedFilter.processDefinitionId"
[processDefinitionName]="editedFilter.processDefinitionName"
[processDefinitionKey]="editedFilter.processDefinitionKey"
[id]="editedFilter.processInstanceId"
[status]="editedFilter.status"
[name]="editedFilter.processName"
[businessKey]="editedFilter['businessKey']"
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
[lastModifiedTo]="editedFilter.lastModifiedTo"
[sorting]="[{orderBy: editedFilter.sort, direction: editedFilter.order}]"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
[multiselect]="multiselect"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-process-list>
<adf-pagination
[target]="processCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows">{{ row.id }}</li>
</ul>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span>{{ 'SETTINGS_CLOUD.ACTION.PROCESS_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
</div>
@@ -0,0 +1,22 @@
app-processes-cloud-demo {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
.app-processes-list-container {
box-sizing: border-box;
place-content: stretch space-between;
align-items: stretch;
margin-top: 2px;
}
&, .app-processes-list-container {
flex-direction: column;
display: flex;
}
.app-processes-list-container, .app-cloud-layout-overflow {
flex: 1;
}
}
@@ -15,10 +15,16 @@
* limitations under the License.
*/
import { Component, OnInit, OnDestroy } from '@angular/core';
import { ProcessFilterAction, ProcessFilterCloudModel, PROCESS_FILTER_ACTION_DELETE, PROCESS_FILTER_ACTION_SAVE, PROCESS_FILTER_ACTION_SAVE_AS } from '@alfresco/adf-process-services-cloud';
import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import {
PROCESS_FILTER_ACTION_DELETE,
PROCESS_FILTER_ACTION_SAVE,
PROCESS_FILTER_ACTION_SAVE_AS,
ProcessFilterAction,
ProcessFilterCloudModel
} from '@alfresco/adf-process-services-cloud';
import { ActivatedRoute, Router } from '@angular/router';
import { UserPreferencesService, DataCellEvent } from '@alfresco/adf-core';
import { DataCellEvent, UserPreferencesService } from '@alfresco/adf-core';
import { CloudLayoutService, CloudServiceSettings } from './services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -26,7 +32,10 @@ import { Pagination } from '@alfresco/js-api';
import { CloudProcessFiltersService } from './services/cloud-process-filters.service';
@Component({
templateUrl: './processes-cloud-demo.component.html'
selector: 'app-processes-cloud-demo',
templateUrl: './processes-cloud-demo.component.html',
styleUrls: ['./processes-cloud-demo.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
appName: string = '';
@@ -1,42 +1,38 @@
<div fxLayout
fxFill>
<adf-cloud-service-task-filters [appName]="appName"
[filterParam]="{index: 0}"
(filterClicked)="onTaskFilterSelected($event)"
(filterSelected)="onTaskFilterSelected($event)">
</adf-cloud-service-task-filters>
<div fxLayout="column"
fxFlex>
<adf-cloud-edit-service-task-filter [id]="filterId"
[appName]="appName"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
(filterChange)="onFilterChange($event)">
</adf-cloud-edit-service-task-filter>
<div fxLayout="column"
fxFlex
fxFill
fxLayoutAlign="space-between"
*ngIf="editedFilter">
<adf-cloud-service-task-list #taskCloud
fxFlex
[queryParams]="editedFilter"
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[sorting]="sortArray"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu">
</adf-cloud-service-task-list>
<adf-pagination [target]="taskCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
</div>
<adf-cloud-service-task-filters
[appName]="appName"
[filterParam]="{index: 0}"
(filterClicked)="onTaskFilterSelected($event)"
(filterSelected)="onTaskFilterSelected($event)">
</adf-cloud-service-task-filters>
<div class="app-task-list-with-filter">
<adf-cloud-edit-service-task-filter
[id]="filterId"
[appName]="appName"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
(filterChange)="onFilterChange($event)">
</adf-cloud-edit-service-task-filter>
<div
class="app-task-list-container"
*ngIf="editedFilter">
<adf-cloud-service-task-list
#taskCloud
[queryParams]="editedFilter"
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[sorting]="sortArray"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu">
</adf-cloud-service-task-list>
<adf-pagination
[target]="taskCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
</div>
</div>
@@ -0,0 +1,25 @@
app-service-task-list-cloud-demo {
min-height: 100%;
min-width: 100%;
display: flex;
.app-task-list-with-filter, .app-task-list-container {
flex-direction: column;
display: flex;
flex: 1;
}
&, .app-task-list-container {
height: 100%;
width: 100%;
}
.app-task-list-container {
place-content: stretch space-between;
align-items: stretch;
.app-cloud-layout-overflow {
flex: 1;
}
}
}
@@ -15,9 +15,13 @@
* limitations under the License.
*/
import { Component, OnInit, OnDestroy, ViewChild } from '@angular/core';
import { TaskListCloudSortingModel, ServiceTaskListCloudComponent, ServiceTaskFilterCloudModel } from '@alfresco/adf-process-services-cloud';
import { UserPreferencesService, AppConfigService, PaginationModel } from '@alfresco/adf-core';
import { Component, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
ServiceTaskFilterCloudModel,
ServiceTaskListCloudComponent,
TaskListCloudSortingModel
} from '@alfresco/adf-process-services-cloud';
import { AppConfigService, PaginationModel, UserPreferencesService } from '@alfresco/adf-core';
import { CloudLayoutService, CloudServiceSettings } from './services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -25,7 +29,10 @@ import { takeUntil } from 'rxjs/operators';
const TASK_FILTER_PROPERTY_KEYS = 'adf-edit-service-task-filter';
@Component({
templateUrl: './service-task-list-cloud-demo.component.html'
selector: 'app-service-task-list-cloud-demo',
templateUrl: './service-task-list-cloud-demo.component.html',
styleUrls: ['./service-task-list-cloud-demo.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class ServiceTaskListCloudDemoComponent implements OnInit, OnDestroy {
@ViewChild('taskCloud')
@@ -1,71 +1,67 @@
<div fxFlex fxLayout="column" class="app-settings-container">
<mat-slide-toggle [color]="'primary'" [checked]="multiselect" (change)="toggleMultiselect()" data-automation-id="multiSelection">
{{ 'SETTINGS_CLOUD.MULTISELECTION' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="actionMenu" (change)="toggleActionMenu()" data-automation-id="actionmenu">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="contextMenu" (change)="toggleContextMenu()" data-automation-id="contextmenu">
{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="testingMode" (change)="toggleTestingMode()" data-automation-id="testingMode">
{{ 'SETTINGS_CLOUD.TESTING_MODE' | translate }}
</mat-slide-toggle>
<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 }}
</mat-label>
<mat-select [(ngModel)]="selectionMode" (selectionChange)="onSelectionModeChange()">
<mat-option *ngFor="let option of selectionModeOptions" [value]="option.value">
{{ option.title }}
</mat-option>
</mat-select>
</mat-form-field>
<mat-card *ngIf="actionMenu || contextMenu">
<mat-card-header>
<mat-card-title>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TITLE' | translate }}</mat-card-title>
</mat-card-header>
<mat-card-content>
<form [formGroup]="actionMenuForm" fxLayout="row" fxLayoutAlign="space-around center" fxLayoutGap="20px">
<mat-form-field fxFlex="23%">
<input matInput formControlName="key" placeholder="{{ 'SETTINGS_CLOUD.ACTION.KEY' | translate }}">
</mat-form-field>
<mat-form-field fxFlex="23%">
<input matInput formControlName="title" placeholder="{{ 'SETTINGS_CLOUD.ACTION.TITLE' | translate }}">
</mat-form-field>
<mat-form-field fxFlex="23%">
<input matInput formControlName="icon" placeholder="{{ 'SETTINGS_CLOUD.ACTION.ICON' | translate }}"I>
</mat-form-field>
<mat-checkbox formControlName="visible">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_VISIBLE' | translate }}
</mat-checkbox>
<mat-checkbox formControlName="disabled">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_DISABLE' | translate }}
</mat-checkbox>
<button mat-raised-button (click)="addAction()">
{{ 'SETTINGS_CLOUD.ACTION.ADD_BUTTON' | translate }}
</button>
</form>
<div *ngIf="actions.length > 0">
<mat-chip-list #chipList>
<mat-chip *ngFor="let action of actions" [removable]="true">
{{action.title}}
<mat-icon
matChipRemove
(click)="removeAction(action)">
cancel
</mat-icon>
</mat-chip>
</mat-chip-list>
</div>
</mat-card-content>
</mat-card>
</div>
<mat-slide-toggle [color]="'primary'" [checked]="multiselect" (change)="toggleMultiselect()" data-automation-id="multiSelection">
{{ 'SETTINGS_CLOUD.MULTISELECTION' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="actionMenu" (change)="toggleActionMenu()" data-automation-id="actionmenu">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="contextMenu" (change)="toggleContextMenu()" data-automation-id="contextmenu">
{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}
</mat-slide-toggle>
<mat-slide-toggle [color]="'primary'" [checked]="testingMode" (change)="toggleTestingMode()" data-automation-id="testingMode">
{{ 'SETTINGS_CLOUD.TESTING_MODE' | translate }}
</mat-slide-toggle>
<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 }}
</mat-label>
<mat-select [(ngModel)]="selectionMode" (selectionChange)="onSelectionModeChange()">
<mat-option *ngFor="let option of selectionModeOptions" [value]="option.value">
{{ option.title }}
</mat-option>
</mat-select>
</mat-form-field>
<mat-card *ngIf="actionMenu || contextMenu">
<mat-card-header>
<mat-card-title>{{ 'SETTINGS_CLOUD.ACTION.ACTION_TITLE' | translate }}</mat-card-title>
</mat-card-header>
<mat-card-content>
<form class="app-cloud-settings-form" [formGroup]="actionMenuForm">
<mat-form-field>
<input matInput formControlName="key" placeholder="{{ 'SETTINGS_CLOUD.ACTION.KEY' | translate }}">
</mat-form-field>
<mat-form-field>
<input matInput formControlName="title" placeholder="{{ 'SETTINGS_CLOUD.ACTION.TITLE' | translate }}">
</mat-form-field>
<mat-form-field>
<input matInput formControlName="icon" placeholder="{{ 'SETTINGS_CLOUD.ACTION.ICON' | translate }}">
</mat-form-field>
<mat-checkbox formControlName="visible">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_VISIBLE' | translate }}
</mat-checkbox>
<mat-checkbox formControlName="disabled">
{{ 'SETTINGS_CLOUD.ACTION.ACTION_DISABLE' | translate }}
</mat-checkbox>
<button mat-raised-button (click)="addAction()">
{{ 'SETTINGS_CLOUD.ACTION.ADD_BUTTON' | translate }}
</button>
</form>
<div *ngIf="actions.length > 0">
<mat-chip-list>
<mat-chip *ngFor="let action of actions" [removable]="true">
{{action.title}}
<mat-icon
matChipRemove
(click)="removeAction(action)">
cancel
</mat-icon>
</mat-chip>
</mat-chip-list>
</div>
</mat-card-content>
</mat-card>
@@ -1,7 +1,25 @@
.app-settings-container {
app-cloud-settings {
padding: 20px 30px;
}
flex-direction: column;
display: flex;
flex: 1;
.app-settings-container mat-form-field {
max-width: 200px;
mat-form-field {
max-width: 200px;
}
.app-cloud-settings-form {
display: flex;
place-content: center space-around;
align-items: center;
mat-form-field {
flex: 1 1 100%;
max-width: 23%;
}
mat-form-field, mat-checkbox {
margin-right: 20px;
}
}
}
@@ -15,16 +15,17 @@
* limitations under the License.
*/
import { Component, OnInit, OnDestroy } from '@angular/core';
import { CloudLayoutService, ActionMenuModel } from '../services/cloud-layout.service';
import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { ActionMenuModel, CloudLayoutService } from '../services/cloud-layout.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
import { UntypedFormGroup, UntypedFormControl } from '@angular/forms';
import { UntypedFormControl, UntypedFormGroup } from '@angular/forms';
@Component({
selector: 'app-cloud-settings',
templateUrl: './cloud-settings.component.html',
styleUrls: ['./cloud-settings.component.scss']
styleUrls: ['./cloud-settings.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class CloudSettingsComponent implements OnInit, OnDestroy {
private onDestroy$ = new Subject<boolean>();
@@ -23,7 +23,6 @@ import { MatInputModule } from '@angular/material/input';
import { MatSelectModule } from '@angular/material/select';
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
import { CoreModule } from '@alfresco/adf-core';
import { FlexLayoutModule } from '@angular/flex-layout';
@NgModule({
imports: [
@@ -32,8 +31,7 @@ import { FlexLayoutModule } from '@angular/flex-layout';
MatDialogModule,
MatInputModule,
MatSelectModule,
MatSlideToggleModule,
FlexLayoutModule
MatSlideToggleModule
],
declarations: [ CloudSettingsComponent ],
exports: [ CommonModule, CloudSettingsComponent]
@@ -1,19 +1,18 @@
<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]="appName"
[taskId]="taskId"
(cancelClick)="goBack()"
(taskCompleted)="onTaskCompleted()"
(formContentClicked)="onFormContentClicked($event)"
(formSaved)="onFormSaved()"
(error)="onError($event)">
</adf-cloud-task-form>
</div>
<adf-cloud-task-header #taskHeader fxFlex
<div class="app-task-details-cloud-column">
<div class="app-task-details-cloud-row">
<adf-cloud-task-form
[appName]="appName"
[taskId]="taskId"
(cancelClick)="goBack()"
(taskCompleted)="onTaskCompleted()"
(formContentClicked)="onFormContentClicked($event)"
(formSaved)="onFormSaved()"
(error)="onError($event)">
</adf-cloud-task-form>
<adf-cloud-task-header
#taskHeader
[appName]="appName"
[taskId]="taskId">
</adf-cloud-task-header>
@@ -1,18 +1,48 @@
.app {
&-task-detail-container {
display: flex;
}
app-task-details-cloud-demo {
.app {
&-task-detail-container {
display: flex;
}
&-task-title {
margin-left: 15px;
}
&-task-title {
margin-left: 15px;
}
&-task-control {
width: 70%;
}
&-task-control {
width: 70%;
}
&-demop-card-container {
width: 30%;
font-family: inherit;
&-demop-card-container {
width: 30%;
font-family: inherit;
}
&-task-details-cloud-column {
margin: 0;
flex-direction: column;
.app-task-details-cloud-row {
flex-direction: row;
adf-cloud-task-form {
flex: 1 1 100%;
flex-direction: column;
display: flex;
max-width: 80%;
}
adf-cloud-task-header {
flex: 1;
}
}
}
&-task-details-cloud-column, &-task-details-cloud-row {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
display: flex;
}
}
}
@@ -15,15 +15,17 @@
* limitations under the License.
*/
import { Component, ViewChild } from '@angular/core';
import { Component, ViewChild, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router';
import { NotificationService } from '@alfresco/adf-core';
import { TaskHeaderCloudComponent } from '@alfresco/adf-process-services-cloud';
import { PreviewService } from '../../services/preview.service';
@Component({
selector: 'app-task-details-cloud-demo',
templateUrl: './task-details-cloud-demo.component.html',
styleUrls: ['./task-details-cloud-demo.component.scss']
styleUrls: ['./task-details-cloud-demo.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class TaskDetailsCloudDemoComponent {
@@ -1,72 +1,70 @@
<div fxLayout="column" fxFill fxLayoutGap="2px">
<adf-cloud-edit-task-filter
[appName]="appName"
[id]="filterId"
[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
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[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"
[standalone]="editedFilter.standalone"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-task-list>
<adf-pagination
[target]="taskCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows" [attr.data-automation-id]="row.id">{{ row.name }}</li>
</ul>
<adf-cloud-edit-task-filter
[appName]="appName"
[id]="filterId"
[filterProperties]="taskFilterProperties.filterProperties"
[sortProperties]="taskFilterProperties.sortProperties"
[actions]="taskFilterProperties.actions"
(action)="onTaskFilterAction($event)"
(filterChange)="onFilterChange($event)">
</adf-cloud-edit-task-filter>
<div class="adf-cloud-task-list-container" *ngIf="editedFilter">
<adf-cloud-task-list
#taskCloud
class="app-cloud-layout-overflow"
[appName]="editedFilter.appName"
[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"
[standalone]="editedFilter.standalone"
[multiselect]="multiselect"
[selectionMode]="selectionMode"
[stickyHeader]="true"
[showActions]="actionMenu"
[showContextMenu]="contextMenu"
(showRowActionsMenu)="onShowRowActionsMenu($event)"
(showRowContextMenu)="onShowRowContextMenu($event)"
(executeRowAction)="onExecuteRowAction($event)"
(rowClick)="onRowClick($event)"
(rowsSelected)="onRowsSelected($event)">
</adf-cloud-task-list>
<adf-pagination
[target]="taskCloud"
(changePageSize)="onChangePageSize($event)"
(nextPage)="resetSelectedRows()"
(prevPage)="resetSelectedRows()">
</adf-pagination>
<div *ngIf="testingMode">
<div *ngIf="multiselect">
{{ 'SETTINGS_CLOUD.SELECTED_ROWS' | translate }}:
<ul>
<li *ngFor="let row of selectedRows" [attr.data-automation-id]="row.id">{{ row.name }}</li>
</ul>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span [attr.data-automation-id]="selectedAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span [attr.data-automation-id]="selectedAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
<div *ngIf="actionMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.ACTION_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedAction">
<span [attr.data-automation-id]="selectedAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedAction.id }}</span><br>
<span [attr.data-automation-id]="selectedAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span [attr.data-automation-id]="selectedContextAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span [attr.data-automation-id]="selectedContextAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
<div *ngIf="contextMenu">
<span>{{ 'SETTINGS_CLOUD.ACTION.CONTEX_MENU' | translate }}:</span>
<br>
<div *ngIf="selectedContextAction">
<span [attr.data-automation-id]="selectedContextAction.id">{{ 'SETTINGS_CLOUD.ACTION.TASK_ID' | translate }}: {{ selectedContextAction.id }}</span><br>
<span [attr.data-automation-id]="selectedContextAction.actionType">{{ 'SETTINGS_CLOUD.ACTION.ACTION_TYPE' | translate }}: {{ selectedContextAction.actionType }}</span>
</div>
</div>
</div>
@@ -0,0 +1,22 @@
app-tasks-cloud-demo {
height: 100%;
min-height: 100%;
min-width: 100%;
width: 100%;
.adf-cloud-task-list-container {
box-sizing: border-box;
place-content: stretch space-between;
align-items: stretch;
margin-top: 2px;
}
&, .adf-cloud-task-list-container {
flex-direction: column;
display: flex;
}
.adf-cloud-task-list-container, .app-cloud-layout-overflow {
flex: 1;
}
}
@@ -15,9 +15,13 @@
* limitations under the License.
*/
import { Component, ViewChild, OnInit, OnDestroy } from '@angular/core';
import { TaskListCloudComponent, TaskListCloudSortingModel, TaskFilterCloudModel } from '@alfresco/adf-process-services-cloud';
import { UserPreferencesService, AppConfigService, DataCellEvent } from '@alfresco/adf-core';
import { Component, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
TaskFilterCloudModel,
TaskListCloudComponent,
TaskListCloudSortingModel
} from '@alfresco/adf-process-services-cloud';
import { AppConfigService, DataCellEvent, UserPreferencesService } from '@alfresco/adf-core';
import { ActivatedRoute, Router } from '@angular/router';
import { CloudLayoutService } from './services/cloud-layout.service';
import { Subject } from 'rxjs';
@@ -28,7 +32,10 @@ const ACTION_DELETE = 'delete';
const TASK_FILTER_PROPERTY_KEYS = 'adf-edit-task-filter';
@Component({
templateUrl: './tasks-cloud-demo.component.html'
selector: 'app-tasks-cloud-demo',
templateUrl: './tasks-cloud-demo.component.html',
styleUrls: ['./tasks-cloud-demo.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class TasksCloudDemoComponent implements OnInit, OnDestroy {
@ViewChild('taskCloud')
@@ -8,7 +8,7 @@
</mat-select>
</mat-form-field>
</adf-toolbar-title>
<adf-toolbar-divider fxFlex="0 0 auto"></adf-toolbar-divider>
<adf-toolbar-divider></adf-toolbar-divider>
<button mat-icon-button
[disabled]="!hasSelection(customSourcesDocumentList.selection)"
title="{{ 'DOCUMENT_LIST.TOOLBAR.DOWNLOAD' | translate }}"
@@ -15,12 +15,13 @@
* limitations under the License.
*/
import { Component, Input, ViewChild } from '@angular/core';
import { Component, Input, ViewChild, ViewEncapsulation } from '@angular/core';
import { DocumentListComponent } from '@alfresco/adf-content-services';
@Component({
selector: 'app-custom-sources',
templateUrl: './custom-sources.component.html'
templateUrl: './custom-sources.component.html',
encapsulation: ViewEncapsulation.None
})
export class CustomSourcesComponent {
@@ -33,9 +33,10 @@
</adf-sites-dropdown>
</div>
<div id="document-list-container" class="app-document-list-container" fxLayout="row" fxLayoutAlign="start stretch"
fxLayoutGap="16px">
<adf-upload-drag-area fxFlex="1 1 auto"
<div
id="document-list-container"
class="app-document-list-container">
<adf-upload-drag-area
[disabled]="disableDragArea"
[acceptedFilesType]="getFileFiltering()"
[rootFolderId]="currentFolderId"
@@ -51,21 +52,21 @@
<span class="app-error-message--text">{{errorMessage}}</span>
</div>
<adf-toolbar *ngIf="!disableDragArea" [color]="toolbarColor" class="app-files-toolbar">
<adf-toolbar-title fxFlex="0 1 auto">
<adf-breadcrumb fxShow fxHide.lt-sm="true"
<adf-toolbar-title>
<adf-breadcrumb
class="app-files-breadcrumb"
root="APP.PERSONAL-FILES"
[target]="documentList">
</adf-breadcrumb>
<adf-dropdown-breadcrumb fxHide fxShow.lt-sm="true"
<adf-dropdown-breadcrumb
class="app-files-breadcrumb"
[target]="documentList">
</adf-dropdown-breadcrumb>
</adf-toolbar-title>
<adf-toolbar-divider fxFlex="0 0 auto"></adf-toolbar-divider>
<adf-toolbar-divider></adf-toolbar-divider>
<div fxFlex="0 0 auto" class="app-document-action-buttons" fxShow fxHide.lt-sm="true">
<div class="app-document-action-buttons">
<button
mat-icon-button
data-automation-id="document-list-grid-view"
@@ -150,7 +151,7 @@
</button>
</div>
<button fxFlex="1 0 auto" mat-icon-button [matMenuTriggerFor]="themePicker"
<button mat-icon-button [matMenuTriggerFor]="themePicker"
matTooltip="{{ 'DOCUMENT_LIST.TOOLBAR.THEME' | translate }}">
<mat-icon>format_color_fill</mat-icon>
</button>
@@ -171,9 +172,9 @@
</mat-icon>
</button>
<adf-toolbar-divider fxFlex="0 0 auto" fxHide fxShow.lt-sm="true"></adf-toolbar-divider>
<adf-toolbar-divider class="app-toolbar-divider-before-more-menu"></adf-toolbar-divider>
<button fxFlex="0 0 auto" mat-icon-button [matMenuTriggerFor]="menu" fxHide fxShow.lt-sm="true">
<button class="app-toolbar-more-menu-button" mat-icon-button [matMenuTriggerFor]="menu">
<mat-icon>more_vert</mat-icon>
</button>
<mat-menu #menu="matMenu">
@@ -212,7 +213,7 @@
</mat-menu>
</adf-toolbar>
<div class="app-document-list-container" [ngClass]="{'adf-sticky-document-list': stickyHeader }">
<div class="app-document-list-container-in-upload-drag-area app-document-list-container" [ngClass]="{'adf-sticky-document-list': stickyHeader }">
<adf-document-list
#documentList
class="app-file-list-container"
@@ -464,7 +465,7 @@
</adf-infinite-pagination>
</adf-upload-drag-area>
<adf-info-drawer-layout *ngIf="showVersions" class="app-manage-versions-sidebar" fxFlex="0 0 auto">
<adf-info-drawer-layout *ngIf="showVersions" class="app-manage-versions-sidebar">
<div info-drawer-content>
<adf-info-drawer [title]="'Details'" *ngIf="documentList.selection[0]">
@@ -26,6 +26,37 @@
.app-datatable-list {
min-height: 400px;
}
adf-upload-drag-area {
margin-right: 16px;
adf-toolbar-title {
flex: 0 1 auto;
}
.app-document-action-buttons {
flex: 0 0 auto;
}
@media screen and (max-width: 600px) {
adf-breadcrumb, .app-document-action-buttons {
display: none;
}
}
@media screen and (min-width: 600px) {
adf-dropdown-breadcrumb, .app-toolbar-divider-before-more-menu, .app-toolbar-more-menu-button {
display: none;
}
}
}
&:not(.app-document-list-container-in-upload-drag-area) {
display: flex;
place-content: stretch flex-start;
align-items: stretch;
max-height: 100%;
}
}
.adf-datatable-card .app-lock-button {
@@ -45,10 +76,10 @@
}
.app-manage-versions-sidebar {
width: 360px !important;
flex: 0 0 auto;
& .app-info-drawer-layout-header {
display: none !important;
&.adf-info-drawer-layout {
width: 360px;
}
}
@@ -3,6 +3,6 @@
<adf-content-metadata-card [node]="contentEntry"
[displayEmpty]="displayEmptyMetadata"></adf-content-metadata-card>
</section>
<footer mat-dialog-actions fxLayout="row" fxLayoutAlign="end center">
<footer mat-dialog-actions class="adf-metadata-dialog-actions">
<button mat-button (click)="close()">{{'METADATA.DIALOG.CLOSE' | translate}}</button>
</footer>
@@ -0,0 +1,6 @@
.adf-metadata-dialog-actions {
display: flex;
max-height: 100%;
place-content: center flex-end;
align-items: center;
}
@@ -40,6 +40,6 @@
<adf-version-list [node]="contentEntry" [showActions]="false"></adf-version-list>
</section>
<footer mat-dialog-actions fxLayout="row" fxLayoutAlign="end center">
<footer mat-dialog-actions class="adf-version-manager-dialog-actions">
<button mat-button (click)="close()">{{'VERSION.DIALOG.CLOSE' | translate}}</button>
</footer>
@@ -0,0 +1,6 @@
.adf-version-manager-dialog-actions {
display: flex;
max-height: 100%;
place-content: center flex-end;
align-items: center;
}
@@ -1,3 +1,9 @@
adf-create-process-attachment ::ng-deep button {
app-process-attachments adf-create-process-attachment button {
float: right;
}
@media screen and (max-width: 960px) {
app-process-attachments .app-empty-list-drag_drop, app-process-attachments .app-empty-list__any-files-here-to-add {
display: none;
}
}
@@ -11,18 +11,17 @@
[processInstanceId]="processInstanceId"
(attachmentClick)="onAttachmentClick($event)">
<adf-empty-list>
<div adf-empty-list-header class="app-empty-list-header">
{{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.HEADER' | translate}}
</div>
<div adf-empty-list-body *ngIf="!isCompletedProcess()">
<div fxHide.lt-md="true" class="app-empty-list-drag_drop">
{{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.DRAG-AND-DROP.TITLE' | translate}}
</div>
<div fxHide.lt-md="true" class="app-empty-list__any-files-here-to-add">
<div adf-empty-list-header class="app-empty-list-header">
{{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.HEADER' | translate}}
</div>
<div adf-empty-list-body *ngIf="!isCompletedProcess()">
<div class="app-empty-list-drag_drop">
{{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.DRAG-AND-DROP.TITLE' | translate}}
</div>
<div class="app-empty-list__any-files-here-to-add">
{{'ADF_PROCESS_LIST.PROCESS-ATTACHMENT.EMPTY.DRAG-AND-DROP.SUBTITLE' | translate}}
</div>
</div>
</div>
</div>
</adf-empty-list>
</adf-process-attachment-list>
@@ -15,11 +15,15 @@
* limitations under the License.
*/
import { Component, Input, OnChanges, OnInit, ViewChild, OnDestroy } from '@angular/core';
import { ProcessInstance, ProcessService ,
ProcessAttachmentListComponent, ProcessUploadService } from '@alfresco/adf-process-services';
import { Component, Input, OnChanges, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
ProcessAttachmentListComponent,
ProcessInstance,
ProcessService,
ProcessUploadService
} from '@alfresco/adf-process-services';
import { AlfrescoApiService, AppConfigService } from '@alfresco/adf-core';
import { UploadService, DiscoveryApiService } from '@alfresco/adf-content-services';
import { DiscoveryApiService, UploadService } from '@alfresco/adf-content-services';
import { PreviewService } from '../../services/preview.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -38,7 +42,8 @@ export function processUploadServiceFactory(api: AlfrescoApiService, config: App
useFactory: (processUploadServiceFactory),
deps: [AlfrescoApiService, AppConfigService, DiscoveryApiService]
}
]
],
encapsulation: ViewEncapsulation.None
})
export class ProcessAttachmentsComponent implements OnInit, OnChanges, OnDestroy {
@@ -2,8 +2,8 @@
data-automation-id="navigation-bar">
<mat-tab id="app-tasks-header" href="#tasks" label="{{'PS-TAB.TASKS-TAB' | translate}}">
<div class="app-page-content" *ngIf="showTaskTab">
<div class="app-grid" fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div class="app-grid-item app-tasks-menu" fxFlex.gt-md="265px">
<div class="app-grid">
<div class="app-grid-item app-tasks-menu">
<div class="app-list-buttons">
<adf-sidebar-action-menu [expanded]="true" [width]="205"
title="{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.CREATE' | translate}}">
@@ -36,9 +36,9 @@
</mat-expansion-panel>
</mat-accordion>
</div>
<div class="app-grid-item app-tasks-list" fxFlex.gt-md="380px"
[ngClass.gt-md]="{'adf-small-pagination': true}"
*ngIf="taskFilter && !isStartTaskMode()">
<div
class="app-grid-item app-tasks-list"
*ngIf="taskFilter && !isStartTaskMode()">
<adf-tasklist
[appId]="taskFilter?.appId"
[presetColumn]="presetColumn"
@@ -74,8 +74,10 @@
#taskListPagination>
</adf-pagination>
</div>
<div class="app-grid-item app-tasks-details" *ngIf="!isStartTaskMode()" fxFlex.gt-md="1 1 auto"
data-automation-id="app-tasks-details">
<div
class="app-grid-item app-tasks-details"
*ngIf="!isStartTaskMode()"
data-automation-id="app-tasks-details">
<adf-task-details #activitiDetails
[debugMode]="true"
[taskId]="currentTaskId"
@@ -106,7 +108,9 @@
</mat-card-content>
</mat-card>
</div>
<div class="app-grid-item app-tasks-start" *ngIf="isStartTaskMode()" fxFlex.gt-md="1 1 auto">
<div
class="app-grid-item app-tasks-start"
*ngIf="isStartTaskMode()">
<adf-start-task
[appId]="appId"
[name]="defaultTaskName"
@@ -120,8 +124,10 @@
<mat-tab id="processes-header" href="#processes"
label="{{'PS-TAB.PROCESSES-TAB' | translate}}">
<div class="app-page-content" *ngIf="showProcessTab">
<div class="app-grid" fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div id="app-processes-menu" class="app-grid-item app-processes-menu" fxFlex.gt-md="225px">
<div class="app-grid">
<div
id="app-processes-menu"
class="app-grid-item app-processes-menu">
<div class="app-list-buttons">
<adf-sidebar-action-menu [expanded]="true" [width]="205"
title="{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.CREATE' | translate}}">
@@ -157,9 +163,9 @@
</mat-expansion-panel>
</mat-accordion>
</div>
<div class="app-grid-item app-processes-list app-list" fxFlex.gt-md="380px"
[ngClass.gt-md]="{'adf-small-pagination': true}"
*ngIf="processFilter && !isStartProcessMode()">
<div
class="app-grid-item app-processes-list app-list"
*ngIf="processFilter && !isStartProcessMode()">
<adf-process-instance-list
#processList
*ngIf="processFilter?.filter" [appId]="processFilter?.appId"
@@ -190,7 +196,9 @@
#processListPagination>
</adf-pagination>
</div>
<div class="app-grid-item app-processes-details" *ngIf="!isStartProcessMode()" fxFlex.gt-md="1 1 auto">
<div
class="app-grid-item app-processes-details"
*ngIf="!isStartProcessMode()">
<adf-process-instance-details
#activitiProcessDetails
[processInstanceId]="currentProcessInstanceId"
@@ -218,8 +226,9 @@
</mat-card-content>
</mat-card>
</div>
<div class="app-grid-item app-processes-start" fxFlex.gt-md="1 1 auto"
*ngIf="isStartProcessMode()">
<div
class="app-grid-item app-processes-start"
*ngIf="isStartProcessMode()">
<adf-start-process
#activitiStartProcess
[appId]="applicationId"
@@ -238,18 +247,12 @@
</mat-tab>
<mat-tab id="report-header" href="#report"
label="{{'PS-TAB.REPORTS-TAB' | translate}}">
<div class="app-grid" fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div class="app-grid-item app-reports-menu" fxFlex.gt-md="300px">
<div class="app-grid">
<div class="app-grid-item app-reports-menu">
<span><h5>Report List</h5></span>
<mat-divider></mat-divider>
<!-- <adf-analytics-report-list
[appId]="appId"
[selectFirst]="selectFirstReport"
(reportClick)="onReportClick($event)"
#analyticsReportList>
</adf-analytics-report-list> -->
</div>
<div class="app-grid-item app-reports-details" fxFlex.gt-md="1 1 auto">
<div class="app-grid-item app-reports-details">
<adf-analytics
*ngIf="report"
[appId]="appId"
@@ -267,11 +270,11 @@
</mat-tab>
<mat-tab id="settings-header" href="#settings"
label="{{'PS-TAB.SETTINGS-TAB' | translate}}">
<div class="app-grid" fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div class="app-grid-item app-settings-menu" fxFlex.gt-md="300px">
<div class="app-grid">
<div class="app-grid-item app-settings-menu">
<span><h3>Settings Menu</h3></span>
</div>
<div class="app-grid-item app-settings-details" fxFlex.gt-md="1 1 auto">
<div class="app-grid-item app-settings-details">
<div>
<mat-slide-toggle id="adf-show-task-filter-icon" [(ngModel)]="showTaskFilterIcon">Show task filters icons
</mat-slide-toggle>
@@ -304,7 +307,7 @@
<mat-card-header >
<mat-card-title>Filter Process definitions</mat-card-title>
</mat-card-header>
<mat-card-content fxLayout="column" fxLayoutAlign="space-around stretch">
<mat-card-content class="app-filter-process-definitions-inputs">
<mat-form-field>
<mat-label>ApplicationId</mat-label>
<input matInput [(ngModel)]="applicationId">
@@ -5,13 +5,28 @@
}
.app-grid {
flex-direction: row;
display: flex;
max-height: 100%;
place-content: stretch flex-start;
align-items: stretch;
.app-grid-item {
flex: 1;
margin: 4px;
box-shadow:
0 2px 2px 0 rgba(0, 0, 0, 0.14),
0 3px 1px -2px rgba(0, 0, 0, 0.2),
0 1px 5px 0 rgba(0, 0, 0, 0.12);
padding: 10px;
.app-filter-process-definitions-inputs {
flex-direction: column;
display: flex;
max-width: 100%;
place-content: stretch space-around;
align-items: stretch;
}
}
.app-list-buttons {
@@ -70,6 +85,37 @@
margin: 10px;
}
@media screen and (min-width: 1280px) {
.app-tasks-menu {
flex: 1 1 265px;
max-width: 265px;
min-width: 265px;
}
.app-tasks-list, .app-processes-list {
flex: 1 1 380px;
max-width: 380px;
min-width: 380px;
}
.app-processes-menu {
flex: 1 1 225px;
max-width: 225px;
min-width: 225px;
}
.app-reports-menu, .app-settings-menu {
flex: 1 1 300px;
max-width: 300px;
min-width: 300px;
}
.app-tasks-details, .app-tasks-start, .app-processes-details, .app-processes-start, .app-reports-details, .app-settings-details {
flex: 1 1 auto;
min-width: auto;
}
}
@media screen and (max-width: 959px) {
container-widget .app-grid-list {
flex-direction: column;
@@ -77,6 +123,14 @@
}
}
@media screen and (max-width: 1279px) {
.app-grid {
flex-direction: column;
max-width: 100%;
max-height: initial;
}
}
.app-accordion-panel {
.mat-expansion-panel {
background: inherit;
@@ -1,3 +1,9 @@
adf-create-task-attachment ::ng-deep button {
app-task-attachments adf-create-task-attachment button {
float: right;
}
@media screen and (max-width: 960px) {
app-task-attachments .app-empty-list-drag_drop, app-task-attachments .app-empty-list__any-files-here-to-add {
display: none;
}
}
@@ -13,10 +13,10 @@
<div adf-empty-list-header class="app-empty-list-header">{{'ADF_TASK_LIST.ATTACHMENT.EMPTY.HEADER' | translate}}
</div>
<div adf-empty-list-body *ngIf="!isCompletedTask()">
<div fxHide.lt-md="true" class="app-empty-list-drag_drop">
<div class="app-empty-list-drag_drop">
{{'ADF_TASK_LIST.ATTACHMENT.EMPTY.DRAG-AND-DROP.TITLE' | translate}}
</div>
<div fxHide.lt-md="true" class="app-empty-list__any-files-here-to-add">
<div class="app-empty-list__any-files-here-to-add">
{{'ADF_TASK_LIST.ATTACHMENT.EMPTY.DRAG-AND-DROP.SUBTITLE' | translate}}
</div>
</div>
@@ -15,15 +15,15 @@
* limitations under the License.
*/
import { Component, Input, OnChanges, OnInit, ViewChild, OnDestroy } from '@angular/core';
import { Component, Input, OnChanges, OnDestroy, OnInit, ViewChild, ViewEncapsulation } from '@angular/core';
import {
TaskListService,
TaskAttachmentListComponent,
TaskUploadService,
TaskDetailsModel
TaskDetailsModel,
TaskListService,
TaskUploadService
} from '@alfresco/adf-process-services';
import { AlfrescoApiService, AppConfigService } from '@alfresco/adf-core';
import { UploadService, DiscoveryApiService } from '@alfresco/adf-content-services';
import { DiscoveryApiService, UploadService } from '@alfresco/adf-content-services';
import { PreviewService } from '../../services/preview.service';
import { Subject } from 'rxjs';
import { takeUntil } from 'rxjs/operators';
@@ -36,6 +36,7 @@ export function taskUploadServiceFactory(api: AlfrescoApiService, config: AppCon
selector: 'app-task-attachments',
templateUrl: './task-attachments.component.html',
styleUrls: ['./task-attachments.component.css'],
encapsulation: ViewEncapsulation.None,
providers: [
{
provide: UploadService,
@@ -1,12 +1,10 @@
<div class="app-rich-text-editor-container" fxLayout="row wrap" fxLayoutAlign="center start">
<div fxFlex="50" class="app-rich-text-editor-col app-rich-text-editor-col-sx">
<div class="app-rich-text-editor-container" >
<div class="app-rich-text-editor-col app-rich-text-editor-col-sx">
<h1 class="app-rich-text-editor-col-title">Rich Text Editor</h1>
<adf-cloud-rich-text-editor [data]="sampleData" #textEditor></adf-cloud-rich-text-editor>
</div>
<div fxFlex="50" class="app-rich-text-editor-col app-rich-text-editor-col-rx">
<div class="app-rich-text-editor-col app-rich-text-editor-col-rx">
<h1 class="app-rich-text-editor-col-title">Output Data</h1>
<pre class="app-rich-text-editor-output">{{editorOutputData | json}}</pre>
</div>
</div>
@@ -1,19 +1,26 @@
.app-rich-text-editor-container {
.app-rich-text-editor-col {
padding: 20px;
app-rich-text-editor {
.app-rich-text-editor-container {
display: flex;
&-rx {
border-left: 1px dashed var(--theme-primary-color);
border-spacing: 5px;
.app-rich-text-editor-col {
padding: 20px;
flex: 1 1 50%;
max-width: 50%;
box-sizing: border-box;
&-rx {
border-left: 1px dashed var(--theme-primary-color);
border-spacing: 5px;
}
&-title {
text-align: center;
}
}
&-title {
text-align: center;
.app-rich-text-editor-output {
max-width: 30vw;
overflow-x: scroll;
}
}
.app-rich-text-editor-output {
max-width: 30vw;
overflow-x: scroll;
}
}
@@ -15,7 +15,7 @@
* limitations under the License.
*/
import { AfterViewInit, Component, OnDestroy, ViewChild } from '@angular/core';
import { AfterViewInit, Component, OnDestroy, ViewChild, ViewEncapsulation } from '@angular/core';
import { OutputData } from '@editorjs/editorjs';
import { RichTextEditorComponent as AdfRichTextEditorComponent } from '@alfresco/adf-process-services-cloud';
import { takeUntil } from 'rxjs/operators';
@@ -24,7 +24,8 @@ import { Subject } from 'rxjs';
@Component({
selector: 'app-rich-text-editor',
templateUrl: './rich-text-editor.component.html',
styleUrls: ['./rich-text-editor.component.scss']
styleUrls: ['./rich-text-editor.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class RichTextEditorComponent implements AfterViewInit, OnDestroy {
@@ -22,7 +22,6 @@ import { ContentModule } from '@alfresco/adf-content-services';
import { RichTextEditorModule } from '@alfresco/adf-process-services-cloud';
import { CoreModule } from '@alfresco/adf-core';
import { RouterModule, Routes } from '@angular/router';
import { FlexLayoutModule } from '@angular/flex-layout';
const routes: Routes = [
{
@@ -38,7 +37,6 @@ const routes: Routes = [
CoreModule,
RouterModule.forChild(routes),
ContentModule.forChild(),
FlexLayoutModule,
RichTextEditorModule
]
})
@@ -17,7 +17,7 @@
import { Component, EventEmitter, Output, ViewEncapsulation, OnInit, Input } from '@angular/core';
import { Validators, UntypedFormGroup, UntypedFormBuilder, UntypedFormControl } from '@angular/forms';
import { AppConfigService, AppConfigValues, StorageService, AlfrescoApiService, OauthConfigModel, AuthenticationService } from '@alfresco/adf-core';
import { AppConfigService, AppConfigValues, StorageService, AlfrescoApiService, AuthenticationService } from '@alfresco/adf-core';
import { ENTER } from '@angular/cdk/keycodes';
export const HOST_REGEX = '^(http|https):\/\/.*[^/]$';
@@ -137,7 +137,7 @@ export class HostSettingsComponent implements OnInit {
}
private createOAuthFormGroup(): UntypedFormGroup {
const oauth = this.appConfig.get<OauthConfigModel>(AppConfigValues.OAUTHCONFIG, {} as any);
const oauth = this.appConfig.oauth2;
return this.formBuilder.group({
host: [oauth.host, [Validators.required, Validators.pattern(HOST_REGEX)]],
@@ -1,21 +1,17 @@
<label for="nodeId"><b>Insert Node Id</b></label><br>
<input id="nodeId" type="text" size="48" [(ngModel)]="nodeId"><br>
<div fxLayout="row" fxLayout.lt-lg="column" fxLayoutAlign="stretch">
<div class="app-social-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
<div class="app-social-title">
{{'SOCIAL.LIKE' | translate }}
</div>
<adf-like [nodeId]="nodeId"></adf-like>
</mat-card>
</div>
<div class="app-social-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
<div class="app-social-title">
{{'SOCIAL.RATING' | translate }}
</div>
<adf-rating [nodeId]="nodeId"></adf-rating>
</mat-card>
</div>
<div class="app-social-example-areas">
<mat-card class="app-social-example-area">
<div class="app-social-title">
{{'SOCIAL.LIKE' | translate }}
</div>
<adf-like [nodeId]="nodeId"></adf-like>
</mat-card>
<mat-card class="app-social-example-area">
<div class="app-social-title">
{{'SOCIAL.RATING' | translate }}
</div>
<adf-rating [nodeId]="nodeId"></adf-rating>
</mat-card>
</div>
@@ -1,7 +1,25 @@
.app-social-example-area {
margin: 10px;
}
app-social {
.app-social-example-areas {
flex-direction: column;
box-sizing: border-box;
display: flex;
place-content: stretch flex-start;
align-items: stretch;
.app-social-example-title {
padding-bottom: 12px;
.app-social-example-area {
margin: 10px;
.app-social-example-title {
padding-bottom: 12px;
}
}
@media screen and (min-width: 1280px) {
flex-direction: row;
.app-social-example-area {
flex: 1 1 auto;
}
}
}
}
@@ -15,12 +15,13 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
@Component({
selector: 'app-social',
templateUrl: './social.component.html',
styleUrls: ['./social.component.scss']
styleUrls: ['./social.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class SocialComponent {
@@ -3,22 +3,18 @@
<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="app-tag-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
<adf-tag-node-actions-list [nodeId]="nodeId"></adf-tag-node-actions-list>
</mat-card>
</div>
<div class="app-tag-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
<div class="app-tag-example-title">
{{'TAG.LIST' | translate }}
</div>
<adf-tag-list></adf-tag-list>
</mat-card>
</div>
<div class="app-tag-example-area" fxFlex.gt-md="1 1 auto">
<mat-card>
<div class="app-tag-example-areas">
<mat-card class="app-tag-example-area">
<adf-tag-node-actions-list [nodeId]="nodeId"></adf-tag-node-actions-list>
</mat-card>
<mat-card class="app-tag-example-area">
<div class="app-tag-example-title">
{{'TAG.LIST' | translate }}
</div>
<adf-tag-list></adf-tag-list>
</mat-card>
<div class="app-tag-example-area">
<mat-card class="app-tag-example-area">
<div class="app-tag-example-title">
{{'TAG.NODE_LIST' | translate }}
</div>
@@ -1,7 +1,25 @@
.app-tag-example-area {
margin: 10px;
}
app-tag {
.app-tag-example-areas {
flex-direction: column;
box-sizing: border-box;
display: flex;
place-content: stretch flex-start;
align-items: stretch;
.app-tag-example-title {
padding-bottom: 12px;
.app-tag-example-area {
margin: 10px;
.app-tag-example-title {
padding-bottom: 12px;
}
}
@media screen and (min-width: 1280px) {
flex-direction: row;
.app-tag-example-area {
flex: 1 1 auto;
}
}
}
}
@@ -15,12 +15,13 @@
* limitations under the License.
*/
import { Component } from '@angular/core';
import { Component, ViewEncapsulation } from '@angular/core';
@Component({
selector: 'app-tag',
templateUrl: './tag.component.html',
styleUrls: ['./tag.component.scss']
styleUrls: ['./tag.component.scss'],
encapsulation: ViewEncapsulation.None
})
export class TagComponent {
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 268 KiB

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