mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-16 18:13:06 +00:00
Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c96f57d1c6 | ||
|
|
16998924f5 | ||
|
|
d355f76499 | ||
|
|
16d9d9e356 | ||
|
|
9dabdcac61 | ||
|
|
beeb3ad080 | ||
|
|
a4632cf9a5 | ||
|
|
0e8b28dc49 | ||
|
|
7cfb95da9d | ||
|
|
bba8ab1839 | ||
|
|
e7044dda0e | ||
|
|
6384b8148c | ||
|
|
4bf7a758ca | ||
|
|
bf72fd6c9e | ||
|
|
d5d9e70e60 | ||
|
|
9d11aed9fa | ||
|
|
d71d34b87d | ||
|
|
be33270199 | ||
|
|
e99a5088c6 | ||
|
|
67f559bc42 | ||
|
|
5850f4c929 | ||
|
|
f5378a61ff | ||
|
|
466b309cd8 | ||
|
|
66a2a676d1 | ||
|
|
b3d6604426 | ||
|
|
53463bce7c | ||
|
|
04b6d841d1 | ||
|
|
5f5867370c | ||
|
|
322587921c | ||
|
|
5577e0e9be | ||
|
|
eb5d0da079 | ||
|
|
418202cb24 | ||
|
|
9ec04d33d4 | ||
|
|
268cf7af21 | ||
|
|
8a6358ef44 | ||
|
|
9b3efb5502 | ||
|
|
47883a3504 | ||
|
|
58ec56a3b8 | ||
|
|
edd172dc9b | ||
|
|
8fbcb4731f | ||
|
|
4aa936bb9c | ||
|
|
a0aaf0ea58 | ||
|
|
16d74ccf05 | ||
|
|
0a935acf23 | ||
|
|
ff8cfb1d05 | ||
|
|
4f97067c77 | ||
|
|
499b50c76c | ||
|
|
fb24c572fa | ||
|
|
e2958b9988 | ||
|
|
0df4f86292 | ||
|
|
644885becc | ||
|
|
aeff60a1b5 | ||
|
|
83786bf271 | ||
|
|
9b0db0a82e | ||
|
|
7b7c996fab | ||
|
|
61cac20ab3 | ||
|
|
c559898f02 | ||
|
|
89b37067ff | ||
|
|
e58367fb77 | ||
|
|
486a002023 | ||
|
|
700c06521b | ||
|
|
5e19d488ce | ||
|
|
486a1d2c9d | ||
|
|
5bd012deef | ||
|
|
fcb6dc0059 | ||
|
|
5f5bedd1fc | ||
|
|
d312809811 | ||
|
|
732a34f69b | ||
|
|
1dec2ba7c8 | ||
|
|
88433fe4b9 | ||
|
|
1ade912e64 | ||
|
|
c66ad49f03 | ||
|
|
f740364e3a | ||
|
|
76e8a5d52d | ||
|
|
85183ead0d | ||
|
|
bfbb66ea8e | ||
|
|
3b4ce819f0 | ||
|
|
dc912aea5b | ||
|
|
4ea73ec8f3 | ||
|
|
0c712ae260 | ||
|
|
c027d0b82b | ||
|
|
6f5ff737dd | ||
|
|
1e8c146ab2 | ||
|
|
b8a3afce01 | ||
|
|
d553c71b1e | ||
|
|
1e692252a5 | ||
|
|
0afbe36787 | ||
|
|
ff9d29affb | ||
|
|
e987fba5af | ||
|
|
6dde9779cd | ||
|
|
bf7a0902c6 | ||
|
|
46f3f0f1d1 | ||
|
|
f6bf60eb49 | ||
|
|
f1a98cc6d6 | ||
|
|
c7237486df | ||
|
|
506f0dfbb1 | ||
|
|
54df083311 | ||
|
|
1581cfc662 | ||
|
|
efc6432d1c | ||
|
|
b331c1422d | ||
|
|
c7a3fdab8e | ||
|
|
01a068550f | ||
|
|
76727e954b | ||
|
|
7399704d57 | ||
|
|
6fa62fd62d | ||
|
|
7c09fb1fb9 | ||
|
|
8d43155c14 | ||
|
|
ef73d812c4 | ||
|
|
d745308cf3 | ||
|
|
aa3d890342 | ||
|
|
154ca07aad | ||
|
|
1dde6bb1c5 | ||
|
|
5a820cbecd | ||
|
|
a2a2f8c93c | ||
|
|
30c5c58d40 | ||
|
|
a5972e753a | ||
|
|
7b1da04f77 | ||
|
|
5257917258 | ||
|
|
826bd32e60 | ||
|
|
94c99574f8 | ||
|
|
3b7f3a5762 | ||
|
|
44c5472fa2 | ||
|
|
6358f4b318 | ||
|
|
c31efa85af | ||
|
|
746d9fa696 | ||
|
|
59c2cb7df6 | ||
|
|
f75151d6c6 | ||
|
|
c3b5d1734f | ||
|
|
90820a08df | ||
|
|
581a0ec7bf | ||
|
|
721fc74a4d | ||
|
|
b69fdb9370 | ||
|
|
b9dc285d2b | ||
|
|
33965d0a41 | ||
|
|
389a65860c | ||
|
|
e293aa048e | ||
|
|
dace956aa0 | ||
|
|
b968e8702e | ||
|
|
00c839cc9f | ||
|
|
9f7a73e5cf | ||
|
|
38440670b3 | ||
|
|
18600ab724 | ||
|
|
f1bab75a79 | ||
|
|
586562c4dd | ||
|
|
d1672596ba | ||
|
|
8ac683d164 | ||
|
|
81d3247c87 | ||
|
|
b33ecbe606 | ||
|
|
f3ecfb5c2d | ||
|
|
db8981ffc4 | ||
|
|
a0f865b83b | ||
|
|
e98927284d | ||
|
|
5edab26f8e | ||
|
|
270020f561 | ||
|
|
1be59630c8 | ||
|
|
f52f86e4c2 | ||
|
|
c6dc046eab | ||
|
|
3fc7b0d95f | ||
|
|
50daa0ef7b | ||
|
|
1f58c2d64b | ||
|
|
42d88fdaa9 | ||
|
|
179ce2e8eb | ||
|
|
681e94a921 | ||
|
|
6d56cd991a | ||
|
|
cc31c90563 | ||
|
|
be83676a8e | ||
|
|
2ec7fad019 | ||
|
|
934b51f4c7 | ||
|
|
33f4c01c2e | ||
|
|
05a478e317 | ||
|
|
d7dc6d7230 | ||
|
|
529aea77b1 | ||
|
|
1e4e58abe0 | ||
|
|
30e980837a | ||
|
|
ed12b13c87 | ||
|
|
4ae484c617 | ||
|
|
a5a984164c | ||
|
|
a9e8b18972 | ||
|
|
21b881e655 | ||
|
|
d7f6ec1a9c | ||
|
|
6001ff801e | ||
|
|
a1077756fc | ||
|
|
298fec08c1 | ||
|
|
f691dc90dc | ||
|
|
93d5dcbc30 | ||
|
|
3f49a96c2c | ||
|
|
b8418e6e07 | ||
|
|
cd2b489100 | ||
|
|
2f0a585273 | ||
|
|
14ce05c799 | ||
|
|
90133b3bef | ||
|
|
19840b3def | ||
|
|
270efc8bb1 | ||
|
|
e05c111c43 | ||
|
|
2547f9692d | ||
|
|
bd21c5ca7b | ||
|
|
be91bec05d | ||
|
|
af47361f15 | ||
|
|
5180493aa8 | ||
|
|
0183f9e7f7 | ||
|
|
1aa1f12c64 | ||
|
|
238521e9be | ||
|
|
3106786a9a | ||
|
|
e589fdc3bf | ||
|
|
0fcff58c04 | ||
|
|
bd074c83e1 | ||
|
|
663d7fefc6 | ||
|
|
de975d22b8 | ||
|
|
ed68ebb751 | ||
|
|
c0d1ef2216 | ||
|
|
f76e0cd0bb | ||
|
|
094f247889 | ||
|
|
9fd10687e4 | ||
|
|
5ea7b19c20 | ||
|
|
46e4daeef3 | ||
|
|
1daffc050c | ||
|
|
9a156fa4fe | ||
|
|
adfa9e2d80 | ||
|
|
75b6c436d3 | ||
|
|
20eaae5257 | ||
|
|
b62794e385 | ||
|
|
af70e22cd9 | ||
|
|
9a6fd0125b | ||
|
|
29d953e2d1 | ||
|
|
5a0ba6666d | ||
|
|
2baae61cc5 | ||
|
|
8ba36ea21c | ||
|
|
2a5fa954bd | ||
|
|
b7815e6006 | ||
|
|
01244b1250 | ||
|
|
71205a704c | ||
|
|
e9350bd297 | ||
|
|
dc2060fe49 | ||
|
|
c5d71c09e7 | ||
|
|
fe95673e0a | ||
|
|
61d52bd8cd | ||
|
|
b92aa7dfd8 | ||
|
|
6fc97895ab | ||
|
|
baab211790 | ||
|
|
5dc3e4c46b | ||
|
|
3651cc0235 | ||
|
|
0349280d42 | ||
|
|
904c7eff7c | ||
|
|
8fb93fe1c0 | ||
|
|
7b52da55cb | ||
|
|
6a20a7acef | ||
|
|
fec1b813e6 | ||
|
|
6e732ee9a4 | ||
|
|
d56bca3765 | ||
|
|
8025434de9 | ||
|
|
98774395d2 | ||
|
|
3409cca8b8 | ||
|
|
c86b1937fe | ||
|
|
ea62b1e3bd | ||
|
|
77bbecea8e | ||
|
|
d263ee7142 | ||
|
|
295cb21043 | ||
|
|
8a36e7fd3f | ||
|
|
b161ceab26 | ||
|
|
fffa97c7f8 | ||
|
|
76d391669c | ||
|
|
a37423b74a | ||
|
|
5e09bbc252 | ||
|
|
4b53c0e3be | ||
|
|
6412697d96 | ||
|
|
482c3023f8 | ||
|
|
ffcd16aeaf | ||
|
|
cafedf29f6 | ||
|
|
8e241a9e8f | ||
|
|
0257cf5748 | ||
|
|
1c030d7b48 | ||
|
|
6f2ec24851 | ||
|
|
c3ac45303f | ||
|
|
492fba5f4e | ||
|
|
a78f24ada1 | ||
|
|
f0df6b3a5f | ||
|
|
13066a9a32 | ||
|
|
d667c93ff3 | ||
|
|
6890dea819 | ||
|
|
439e3c7a7c | ||
|
|
6b06fd6364 | ||
|
|
0a4f792854 | ||
|
|
2372710f3d | ||
|
|
3649e9239f | ||
|
|
d782b5c4d2 | ||
|
|
084dacde26 | ||
|
|
1565a49f68 | ||
|
|
84607de277 | ||
|
|
a9a801c34d | ||
|
|
75f2165f3f | ||
|
|
e715997a2d | ||
|
|
6810f7a7a2 | ||
|
|
66c2b0b125 | ||
|
|
d8367b2655 | ||
|
|
3a0efea65d | ||
|
|
0f5fd3574b | ||
|
|
63a9c1a5be | ||
|
|
f4ee057193 | ||
|
|
97b8e995be | ||
|
|
a8251fa7ef | ||
|
|
7a6a86e27e | ||
|
|
1f0a5ac87c | ||
|
|
467d2b0f17 | ||
|
|
04114eeac5 | ||
|
|
7b2d2677c3 | ||
|
|
df6627a658 | ||
|
|
ae3ac440bc | ||
|
|
9f2faee027 | ||
|
|
ac847313e3 | ||
|
|
08811c7c60 | ||
|
|
654be10dd2 | ||
|
|
4cb3a876d9 | ||
|
|
531d1d7345 | ||
|
|
6f67c43f8c | ||
|
|
a23f000e53 | ||
|
|
7b823834bc | ||
|
|
347e64fd91 | ||
|
|
1def8000f0 | ||
|
|
22acd3f6e6 | ||
|
|
5133705469 | ||
|
|
1043748765 | ||
|
|
7d4a956833 | ||
|
|
78332449a5 | ||
|
|
c26b8e046c | ||
|
|
bf729f60a2 | ||
|
|
0186d11fe8 | ||
|
|
5621dbbb05 | ||
|
|
a8c252db8b | ||
|
|
f6801b1997 | ||
|
|
2b7943919d | ||
|
|
b76bb750dc | ||
|
|
6da489a7ff | ||
|
|
78a91f9424 | ||
|
|
63d59f7ffd | ||
|
|
f850d7ed38 | ||
|
|
171089d1d6 | ||
|
|
da82180814 | ||
|
|
24786b54e3 | ||
|
|
f5fe125c9e | ||
|
|
6793c5c466 | ||
|
|
b32f3f7f01 | ||
|
|
d331e32174 | ||
|
|
9b42a07de2 | ||
|
|
f72f82ed4a | ||
|
|
27fd18c40e | ||
|
|
8ef91ce98d | ||
|
|
c2a95d9394 | ||
|
|
85457d60d8 | ||
|
|
c5b4888126 | ||
|
|
0fe8f4d11e | ||
|
|
9e0b28b350 | ||
|
|
f46182a5a5 | ||
|
|
742c103cc0 | ||
|
|
851e41eae2 | ||
|
|
48b48e7b06 | ||
|
|
ef9dfead59 | ||
|
|
68db414cf8 | ||
|
|
e139b4c218 | ||
|
|
94e2e83e73 | ||
|
|
2db9fb0aa9 | ||
|
|
5bc7887cd4 |
@@ -0,0 +1,17 @@
|
||||
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
|
||||
# For additional information regarding the format and rule options, please see:
|
||||
# https://github.com/browserslist/browserslist#queries
|
||||
|
||||
# For the full list of supported browsers by the Angular framework, please see:
|
||||
# https://angular.io/guide/browser-support
|
||||
|
||||
# You can see what browsers were selected by your queries by running:
|
||||
# npx browserslist
|
||||
|
||||
last 1 Chrome version
|
||||
last 1 Firefox version
|
||||
last 2 Edge major versions
|
||||
last 2 Safari major version
|
||||
last 2 iOS major versions
|
||||
Firefox ESR
|
||||
not IE 9-11 # For IE 9-11 support, remove 'not'.
|
||||
@@ -0,0 +1,8 @@
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: npm
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: daily
|
||||
open-pull-requests-limit: 10
|
||||
target-branch: develop
|
||||
@@ -0,0 +1,54 @@
|
||||
name: "CodeQL"
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [develop, master]
|
||||
pull_request:
|
||||
# The branches below must be a subset of the branches above
|
||||
branches: [develop]
|
||||
schedule:
|
||||
- cron: '0 5 * * 0'
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
# We must fetch at least the immediate parents so that if this is
|
||||
# a pull request then we can checkout the head.
|
||||
fetch-depth: 2
|
||||
|
||||
# If this run was triggered by a pull request event, then checkout
|
||||
# the head of the pull request instead of the merge commit.
|
||||
- run: git checkout HEAD^2
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v1
|
||||
# Override language selection by uncommenting this and choosing your languages
|
||||
with:
|
||||
languages: javascript
|
||||
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@v1
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
|
||||
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
|
||||
# and modify them (or add more) to build your code if your project
|
||||
# uses a compiled language
|
||||
|
||||
#- run: |
|
||||
# make bootstrap
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v1
|
||||
@@ -0,0 +1,18 @@
|
||||
on:
|
||||
issue_comment:
|
||||
types: [created]
|
||||
name: Automatic Rebase
|
||||
jobs:
|
||||
rebase:
|
||||
name: Rebase
|
||||
if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/rebase')
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout the latest code
|
||||
uses: actions/checkout@v2
|
||||
with:
|
||||
fetch-depth: 0
|
||||
- name: Automatic Rebase
|
||||
uses: cirrus-actions/rebase@1.3.1
|
||||
env:
|
||||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|
||||
@@ -23,3 +23,4 @@ e2e-output/
|
||||
coverage/
|
||||
/desktop.ini
|
||||
out-tsc
|
||||
!/.protractor-smartrunner/
|
||||
|
||||
+49
-37
@@ -3,42 +3,40 @@ git:
|
||||
quiet: true
|
||||
|
||||
language: node_js
|
||||
dist: trusty
|
||||
dist: bionic
|
||||
node_js:
|
||||
- '12.13.1'
|
||||
- '12.16.3'
|
||||
|
||||
before_install: . ./scripts/ci/job_hooks/before_install.sh
|
||||
install:
|
||||
echo "no install"
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- development
|
||||
- develop
|
||||
- /.*old-env.*/
|
||||
- /.*next-release.*/
|
||||
- /.*beta.*/
|
||||
- /.*greenkeeper.*/
|
||||
|
||||
# TRAVIS_PULL_REQUEST == false means is running on dev branch and is not a PR
|
||||
stages:
|
||||
- name: Lint & Build Dist
|
||||
if: type = pull_request OR type = api
|
||||
- name: Lint & Build Dist & Release
|
||||
if: (type = push OR type = cron) AND tag IS blank
|
||||
- name: Update Rancher
|
||||
if: (type = push AND tag IS blank) OR type = api
|
||||
- name: Deploy PR
|
||||
if: type = pull_request && commit_message =~ /\[create preview\]/
|
||||
- name: Check bundle
|
||||
if: type = push AND tag IS blank
|
||||
- name: Unit test
|
||||
if: (type != cron AND tag IS blank) OR type = api
|
||||
- name: e2e Test
|
||||
if: (type != cron AND tag IS blank) OR type = api
|
||||
- name: Update Children Projects
|
||||
if: branch = master AND type = push OR (tag =~ .*beta.*)
|
||||
- name: Release beta tag
|
||||
if: type = cron OR branch = master
|
||||
- name: Trigger ADF child build
|
||||
if: (branch = development AND type = push) OR type = api
|
||||
if: (branch = develop AND type = push) OR type = api
|
||||
- name: Unit test
|
||||
if: (branch != master AND type != cron AND tag IS blank) OR type = api
|
||||
- name: e2e Test
|
||||
if: (branch != master AND type != cron AND tag IS blank) OR type = api
|
||||
- name: Update Children Projects
|
||||
if: tag =~ .*beta.*
|
||||
- name: Release tag
|
||||
if: type = cron OR branch = master
|
||||
|
||||
addons:
|
||||
chrome: stable
|
||||
@@ -46,30 +44,21 @@ before_script:
|
||||
- "sudo chown root /opt/google/chrome/chrome-sandbox"
|
||||
- "sudo chmod 4755 /opt/google/chrome/chrome-sandbox"
|
||||
- export GIT_HASH=`git rev-parse HEAD`
|
||||
|
||||
before_install:
|
||||
- export CHROME_BIN=chromium-browser
|
||||
- export DISPLAY=:99.0
|
||||
- sh -e /etc/init.d/xvfb start
|
||||
- sleep 3 # give xvfb some time to start
|
||||
services:
|
||||
- xvfb
|
||||
|
||||
jobs:
|
||||
include:
|
||||
# Run Only for any PR
|
||||
- stage: Lint & Build Dist
|
||||
name: Lint & Build Dist
|
||||
script:
|
||||
- ./scripts/travis/build/build.sh || exit 1;
|
||||
- ./scripts/lint.sh || exit 1;
|
||||
|
||||
# Run Only on Development and master
|
||||
- stage: Lint & Build Dist & Release
|
||||
name: Lint & Build Dist & Release
|
||||
name: Build
|
||||
script:
|
||||
- ./scripts/travis/build/build.sh || exit 1;
|
||||
- ./scripts/lint.sh || exit 1;
|
||||
- ./scripts/travis/build/build.sh
|
||||
- ./scripts/lint.sh
|
||||
- ./scripts/travis/release/release-npm.sh
|
||||
|
||||
after_success:
|
||||
- ./scripts/ci/utils/artifact-to-s3.sh -a ./dist/demo-shell -o "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2"
|
||||
- ./scripts/ci/utils/artifact-to-s3.sh -a ./lib/dist -o "$S3_DBP_FOLDER/alfresco-libs.tar.bz2"
|
||||
|
||||
- stage: Unit test
|
||||
name: Unit test content
|
||||
@@ -78,44 +67,68 @@ jobs:
|
||||
name: Unit test core extension demo
|
||||
script: ./scripts/travis/unit-test/core-extension.sh
|
||||
- stage: Unit test
|
||||
name: Unit test process process-cloud insights
|
||||
name: Unit test process insights
|
||||
script: ./scripts/travis/unit-test/process.sh
|
||||
- stage: Unit test
|
||||
name: Unit test process-cloud
|
||||
script: ./scripts/travis/unit-test/process-cloud.sh
|
||||
|
||||
|
||||
- stage: Update Children Projects
|
||||
script: ./scripts/travis/update/update-children.sh
|
||||
|
||||
- stage: Release beta tag
|
||||
- stage: Release tag
|
||||
script: ./scripts/travis/release/git-tag.sh
|
||||
|
||||
|
||||
- stage: e2e Test
|
||||
name: core
|
||||
before_script:
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-libs.tar.bz2" -o "./lib/dist"
|
||||
script: ./scripts/travis/e2e/core-e2e.sh
|
||||
- stage: e2e Test
|
||||
name: content
|
||||
before_script:
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-libs.tar.bz2" -o "./lib/dist"
|
||||
script: ./scripts/travis/e2e/content-services-e2e.sh
|
||||
- stage: e2e Test
|
||||
name: search
|
||||
before_script:
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-libs.tar.bz2" -o "./lib/dist"
|
||||
script: ./scripts/travis/e2e/search-e2e.sh
|
||||
- stage: e2e Test
|
||||
name: process
|
||||
before_script:
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-libs.tar.bz2" -o "./lib/dist"
|
||||
script: ./scripts/travis/e2e/process-services-e2e.sh
|
||||
- stage: e2e Test
|
||||
name: process Cloud
|
||||
before_script:
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
- ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-libs.tar.bz2" -o "./lib/dist"
|
||||
script: ./scripts/travis/e2e/process-services-cloud-e2e.sh
|
||||
|
||||
|
||||
- stage: Update Rancher
|
||||
name: Update Rancher
|
||||
before_script: ./scripts/ci/utils/artifact-from-s3.sh -a "$S3_DBP_FOLDER/alfresco-demoshell.tar.bz2" -o "./dist/demo-shell"
|
||||
script: ./scripts/travis/deploy/deploy.sh
|
||||
|
||||
- stage: Deploy PR
|
||||
name: Deploy PR
|
||||
script: ./scripts/travis/deploy/deploy-pr.sh
|
||||
|
||||
|
||||
- stage: Check bundle
|
||||
script:
|
||||
- ADF_VERSION=$(npm view @alfresco/adf-core@${TAG_NPM} version)
|
||||
- ./scripts/npm-check-bundles.sh -v ${ADF_VERSION}
|
||||
|
||||
|
||||
- stage: Trigger ADF child build
|
||||
name: Trigger ADF child build
|
||||
script: ./scripts/travis/update/trigger-travis-children.sh --branch $TRAVIS_BRANCH Alfresco $TRAVIS_ACCESS_TOKEN
|
||||
@@ -135,5 +148,4 @@ notifications:
|
||||
cache:
|
||||
directories:
|
||||
- node_modules
|
||||
- demo-shell/dist
|
||||
- tmp
|
||||
|
||||
Vendored
+1
-1
@@ -10,7 +10,7 @@
|
||||
"name": "e2e",
|
||||
"program": "${workspaceFolder}/node_modules/protractor/bin/protractor",
|
||||
"args": [
|
||||
"`${workspaceFolder}/.vscode/closest-config-finder.sh ${file} protractor.conf.ts`",
|
||||
"`${workspaceFolder}/.vscode/closest-config-finder.sh ${file} e2e/protractor.conf.js`",
|
||||
"--specs=${file}"
|
||||
],
|
||||
"envFile": "${workspaceFolder}/.env",
|
||||
|
||||
+5
-5
@@ -13,10 +13,10 @@ Before you submit a pull request please follow the steps below:
|
||||
* Search in the [GitHub release history](https://github.com/Alfresco/alfresco-ng2-components/releases) to see if your
|
||||
issue has already been solved in a new version of ADF.
|
||||
* Fork our repository (if you don't know how to do this, read [this GitHub document](https://help.github.com/articles/creating-a-pull-request-from-a-fork/)).
|
||||
* Make your changes in a new git branch starting from development and following our [naming convention](https://github.com/Alfresco/alfresco-ng2-components/wiki/Branching-Strategy)
|
||||
* Make your changes in a new git branch starting from develop and following our [naming convention](https://github.com/Alfresco/alfresco-ng2-components/wiki/Branching-Strategy)
|
||||
|
||||
```shell
|
||||
git checkout -b dev-{developerName}-{GitIssuedId/JiraIssueId} development
|
||||
git checkout -b dev-{developerName}-{GitIssuedId/JiraIssueId} develop
|
||||
```
|
||||
|
||||
* Create your PR **including appropriate test cases** following the [code contribution acceptance criteria](https://github.com/Alfresco/alfresco-ng2-components/wiki/Code-contribution-acceptance-criteria)
|
||||
@@ -28,16 +28,16 @@ Before you submit a pull request please follow the steps below:
|
||||
git push origin dev-{developerName}-{GitIssuedId/JiraIssueId}
|
||||
```
|
||||
|
||||
* In GitHub, send a pull request to `development`.
|
||||
* In GitHub, send a pull request to `develop`.
|
||||
* If we suggest changes then:
|
||||
* Make the required updates.
|
||||
* Re-run the tests.
|
||||
* Rebase your branch and force push to your GitHub repository (this will update your Pull Request):
|
||||
|
||||
```shell
|
||||
git fetch development
|
||||
git fetch develop
|
||||
git checkout dev-my-branch
|
||||
git rebase development -i
|
||||
git rebase develop -i
|
||||
git push -f
|
||||
```
|
||||
Note: If you need more information about how to sync your fork, see [this page](https://help.github.com/articles/syncing-a-fork/).
|
||||
|
||||
+2
-31
@@ -1,41 +1,12 @@
|
||||
# 1. Generate licenses
|
||||
|
||||
FROM node:12.16.2-alpine3.9 AS builder
|
||||
WORKDIR /usr/src/alfresco
|
||||
COPY package.json package.json
|
||||
|
||||
RUN mkdir -p ./licenses && \
|
||||
yarn licenses list > ./licenses/licenses.txt && \
|
||||
yarn licenses generate-disclaimer > ./licenses/disclaimer.txt
|
||||
|
||||
# 2. Generate image
|
||||
|
||||
FROM nginx:stable-alpine
|
||||
LABEL version="3.0.0"
|
||||
|
||||
ARG GROUPNAME=Alfresco
|
||||
ARG GROUPID=1000
|
||||
ARG USERNAME=adf
|
||||
ARG USERID=33011
|
||||
|
||||
ARG BUILD_NUMBER
|
||||
ARG PROJECT_NAME=demo-shell
|
||||
|
||||
COPY ./docker/nginx.conf /etc/nginx/nginx.conf
|
||||
COPY ./docker/entrypoint.sh /
|
||||
|
||||
WORKDIR /usr/share/nginx/html
|
||||
COPY demo-shell/dist/ .
|
||||
COPY --from=builder /usr/src/alfresco/licenses ./licenses
|
||||
COPY dist/$PROJECT_NAME .
|
||||
|
||||
RUN addgroup -g ${GROUPID} ${GROUPNAME} && \
|
||||
adduser -S -u ${USERID} -G ${GROUPNAME} -s "/bin/bash" ${USERNAME} && \
|
||||
chown -R ${USERNAME}:${GROUPNAME} ./${BUILD_NUMBER}/app.config.json && \
|
||||
chown -R ${USERNAME}:${GROUPNAME} /var/cache/nginx && \
|
||||
touch /var/run/nginx.pid && \
|
||||
chown -R ${USERNAME}:${GROUPNAME} /var/run/nginx.pid && \
|
||||
chmod +x /entrypoint.sh && \
|
||||
chown -R ${USERNAME}:${GROUPNAME} /entrypoint.sh
|
||||
|
||||
EXPOSE 8080
|
||||
USER ${USERNAME}
|
||||
ENTRYPOINT [ "/entrypoint.sh" ]
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
|
||||
| branch | status |
|
||||
| --- | --- |
|
||||
| master | [](https://travis-ci.org/Alfresco/alfresco-ng2-components) |
|
||||
| development | [](https://travis-ci.org/Alfresco/alfresco-ng2-components) |
|
||||
| master | [](https://travis-ci.com/Alfresco/alfresco-ng2-components) |
|
||||
| develop | [](https://travis-ci.com/Alfresco/alfresco-ng2-components) |
|
||||
|
||||
[](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)
|
||||
[](https://gitter.im/Alfresco/alfresco-ng2-components?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
||||
@@ -65,4 +65,5 @@ All components are supported in the following browsers:
|
||||
|
||||
* Due to a [known issue](https://bugzilla.mozilla.org/show_bug.cgi?id=1188880) in Firefox, the Alfresco Upload Component does not currently support folder upload functionality on Firefox.
|
||||
|
||||
See the [Browser Support](BROWSER-SUPPORT.md) article for more details.
|
||||
See the [Browser Support](BROWSER-SUPPORT.md) article for more details.
|
||||
|
||||
|
||||
+72
-304
@@ -3,7 +3,7 @@
|
||||
"version": 1,
|
||||
"newProjectRoot": "lib",
|
||||
"projects": {
|
||||
"dist": {
|
||||
"demoshell": {
|
||||
"root": "demo-shell",
|
||||
"sourceRoot": "demo-shell/src",
|
||||
"projectType": "application",
|
||||
@@ -11,257 +11,29 @@
|
||||
"build": {
|
||||
"builder": "@angular-devkit/build-angular:browser",
|
||||
"options": {
|
||||
"outputPath": "demo-shell/dist",
|
||||
"aot": true,
|
||||
"allowedCommonJsDependencies": [
|
||||
"minimatch",
|
||||
"minimatch-browser",
|
||||
"moment-es6",
|
||||
"superagent",
|
||||
"event-emitter",
|
||||
"brace-expansion",
|
||||
"d",
|
||||
"chart.js"
|
||||
],
|
||||
"outputPath": "dist/demo-shell",
|
||||
"index": "demo-shell/src/index.html",
|
||||
"main": "demo-shell/src/main.ts",
|
||||
"tsConfig": "demo-shell/src/tsconfig.app.json",
|
||||
"tsConfig": "tsconfig.dev.json",
|
||||
"polyfills": "demo-shell/src/polyfills.ts",
|
||||
"stylePreprocessorOptions": {
|
||||
"includePaths": [
|
||||
"demo-shell/src/node_modules"
|
||||
]
|
||||
"includePaths": ["lib"]
|
||||
},
|
||||
"assets": [
|
||||
"demo-shell/src/assets",
|
||||
"demo-shell/src/favicon-96x96.png",
|
||||
"demo-shell/src/app.config.json",
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "demo-shell/resources",
|
||||
"output": "/resources"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "demo-shell/src/app/components/lazy-loading/i18n",
|
||||
"output": "/resources/lazy-loading/i18n"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-core/prebuilt-themes",
|
||||
"output": "/assets/prebuilt-themes"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-core/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-insights/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-process-services/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-process-services-cloud/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-content-services/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "pdf.worker.min.js",
|
||||
"input": "node_modules/pdfjs-dist/build",
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/ngx-monaco-editor/assets/monaco",
|
||||
"output": "/assets/monaco/"
|
||||
}
|
||||
],
|
||||
"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.scss"
|
||||
],
|
||||
"scripts": [
|
||||
"node_modules/pdfjs-dist/build/pdf.js",
|
||||
"node_modules/pdfjs-dist/web/pdf_viewer.js",
|
||||
"node_modules/raphael/raphael.min.js",
|
||||
"node_modules/moment/min/moment.min.js"
|
||||
]
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"optimization": true,
|
||||
"outputHashing": "all",
|
||||
"sourceMap": false,
|
||||
"extractCss": true,
|
||||
"namedChunks": false,
|
||||
"aot": true,
|
||||
"extractLicenses": true,
|
||||
"vendorChunk": true,
|
||||
"buildOptimizer": true,
|
||||
"verbose": false,
|
||||
"budgets": [
|
||||
{
|
||||
"type": "bundle",
|
||||
"name": "vendor",
|
||||
"baseline": "4.2MB",
|
||||
"warning": "4.5MB",
|
||||
"error": "5.0MB"
|
||||
}
|
||||
],
|
||||
"fileReplacements": [
|
||||
{
|
||||
"replace": "demo-shell/src/environments/environment.ts",
|
||||
"with": "demo-shell/src/environments/environment.prod.ts"
|
||||
}
|
||||
]
|
||||
},
|
||||
"e2e": {
|
||||
"fileReplacements": [
|
||||
{
|
||||
"replace": "demo-shell/src/environments/environment.ts",
|
||||
"with": "demo-shell/src/environments/environment.e2e.ts"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
"serve": {
|
||||
"builder": "@angular-devkit/build-angular:dev-server",
|
||||
"options": {
|
||||
"browserTarget": "dist:build",
|
||||
"host": "0.0.0.0",
|
||||
"port": 3000,
|
||||
"proxyConfig": "demo-shell/proxy.conf.js",
|
||||
"disableHostCheck": true
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"browserTarget": "dist:build:production"
|
||||
},
|
||||
"e2e": {
|
||||
"browserTarget": "dist:build:e2e"
|
||||
}
|
||||
}
|
||||
},
|
||||
"extract-i18n": {
|
||||
"builder": "@angular-devkit/build-angular:extract-i18n",
|
||||
"options": {
|
||||
"browserTarget": "dist:build"
|
||||
}
|
||||
},
|
||||
"test": {
|
||||
"builder": "@angular-devkit/build-angular:karma",
|
||||
"options": {
|
||||
"main": "demo-shell/src/test.ts",
|
||||
"karmaConfig": "./demo-shell/karma.conf.js",
|
||||
"polyfills": "demo-shell/src/polyfills.ts",
|
||||
"tsConfig": "demo-shell/src/tsconfig.spec.json",
|
||||
"scripts": [
|
||||
"node_modules/pdfjs-dist/build/pdf.js",
|
||||
"node_modules/pdfjs-dist/web/pdf_viewer.js",
|
||||
"node_modules/raphael/raphael.min.js",
|
||||
"node_modules/moment/min/moment.min.js"
|
||||
],
|
||||
"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.scss"
|
||||
],
|
||||
"assets": [
|
||||
"demo-shell/src/assets",
|
||||
"demo-shell/src/favicon-96x96.png",
|
||||
"demo-shell/src/app.config.json",
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "demo-shell/resources",
|
||||
"output": "/resources"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "demo-shell/src/app/components/lazy-loading/i18n",
|
||||
"output": "/resources/lazy-loading/i18n"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-core/prebuilt-themes",
|
||||
"output": "/assets/prebuilt-themes"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-core/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-insights/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-process-services/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-process-services-cloud/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "node_modules/@alfresco/adf-content-services/bundles/assets",
|
||||
"output": "/assets"
|
||||
},
|
||||
{
|
||||
"glob": "pdf.worker.min.js",
|
||||
"input": "node_modules/pdfjs-dist/build",
|
||||
"output": "/"
|
||||
},
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": ".node_modules/ngx-monaco-editor/assets/monaco",
|
||||
"output": "/assets/monaco/"
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
"builder": "@angular-devkit/build-angular:tslint",
|
||||
"options": {
|
||||
"tsConfig": [
|
||||
"./demo-shell/src/tsconfig.app.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**/*",
|
||||
"package.json"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"dev": {
|
||||
"root": "demo-shell",
|
||||
"sourceRoot": "demo-shell/src",
|
||||
"projectType": "application",
|
||||
"architect": {
|
||||
"build": {
|
||||
"builder": "@angular-devkit/build-angular:browser",
|
||||
"options": {
|
||||
"outputPath": "demo-shell/dist",
|
||||
"index": "demo-shell/src/index.html",
|
||||
"main": "demo-shell/src/main.ts",
|
||||
"tsConfig": "demo-shell/src/tsconfig.dev.json",
|
||||
"polyfills": "demo-shell/src/polyfills.ts",
|
||||
"stylePreprocessorOptions": {
|
||||
"includePaths": [
|
||||
"lib"
|
||||
]
|
||||
},
|
||||
"assets": [
|
||||
"demo-shell/src/assets",
|
||||
"demo-shell/src/app.config.json",
|
||||
{
|
||||
"glob": "**/*",
|
||||
"input": "demo-shell/src/assets",
|
||||
@@ -358,6 +130,12 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"budgets": [
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "6kb"
|
||||
}
|
||||
],
|
||||
"optimization": true,
|
||||
"outputHashing": "all",
|
||||
"sourceMap": false,
|
||||
@@ -376,6 +154,12 @@
|
||||
]
|
||||
},
|
||||
"e2e": {
|
||||
"budgets": [
|
||||
{
|
||||
"type": "anyComponentStyle",
|
||||
"maximumWarning": "6kb"
|
||||
}
|
||||
],
|
||||
"fileReplacements": [
|
||||
{
|
||||
"replace": "demo-shell/src/environments/environment.ts",
|
||||
@@ -388,7 +172,7 @@
|
||||
"serve": {
|
||||
"builder": "@angular-devkit/build-angular:dev-server",
|
||||
"options": {
|
||||
"browserTarget": "dev:build",
|
||||
"browserTarget": "demoshell:build",
|
||||
"host": "0.0.0.0",
|
||||
"port": 3000,
|
||||
"proxyConfig": "demo-shell/proxy.conf.js",
|
||||
@@ -396,19 +180,13 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"browserTarget": "dev:build:production"
|
||||
"browserTarget": "demoshell:build:production"
|
||||
},
|
||||
"e2e": {
|
||||
"browserTarget": "dev:build:e2e"
|
||||
"browserTarget": "demoshell:build:e2e"
|
||||
}
|
||||
}
|
||||
},
|
||||
"extract-i18n": {
|
||||
"builder": "@angular-devkit/build-angular:extract-i18n",
|
||||
"options": {
|
||||
"browserTarget": "dev:build"
|
||||
}
|
||||
},
|
||||
"test": {
|
||||
"builder": "@angular-devkit/build-angular:karma",
|
||||
"options": {
|
||||
@@ -430,6 +208,7 @@
|
||||
],
|
||||
"assets": [
|
||||
"demo-shell/src/assets",
|
||||
"demo-shell/src/favicon-96x96.png",
|
||||
"demo-shell/src/app.config.json",
|
||||
{
|
||||
"glob": "**/*",
|
||||
@@ -517,18 +296,13 @@
|
||||
"lint": {
|
||||
"builder": "@angular-devkit/build-angular:tslint",
|
||||
"options": {
|
||||
"tsConfig": [
|
||||
"./demo-shell/src/tsconfig.app.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**/*",
|
||||
"package.json"
|
||||
]
|
||||
"tsConfig": ["tsconfig.dev.json"],
|
||||
"exclude": ["**/node_modules/**/*", "package.json"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"lib-e2e-test": {
|
||||
"demoshell-e2e": {
|
||||
"root": "demo-shell",
|
||||
"sourceRoot": "./demo-shell",
|
||||
"projectType": "application",
|
||||
@@ -549,19 +323,15 @@
|
||||
"e2e": {
|
||||
"builder": "@angular-devkit/build-angular:protractor",
|
||||
"options": {
|
||||
"protractorConfig": "./protractor.conf.ts",
|
||||
"protractorConfig": "./e2e/protractor.conf.js",
|
||||
"devServerTarget": "lib-e2e-test:serve"
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
"builder": "@angular-devkit/build-angular:tslint",
|
||||
"options": {
|
||||
"tsConfig": [
|
||||
"./e2e/tsconfig.e2e.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**/*"
|
||||
]
|
||||
"tsConfig": ["./e2e/tsconfig.e2e.json"],
|
||||
"exclude": ["**/node_modules/**/*"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -580,7 +350,8 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"project": "lib/core/ng-package.json"
|
||||
"project": "lib/core/ng-package.json",
|
||||
"tsConfig": "lib/core/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -599,11 +370,9 @@
|
||||
"options": {
|
||||
"tsConfig": [
|
||||
"lib/core/tsconfig.lib.json",
|
||||
"lib/core/tsconfig.lib.json"
|
||||
"lib/core/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -622,7 +391,8 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"project": "lib/content-services/ng-package.json"
|
||||
"project": "lib/content-services/ng-package.json",
|
||||
"tsConfig": "lib/content-services/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -643,9 +413,7 @@
|
||||
"lib/content-services/tsconfig.lib.json",
|
||||
"lib/content-services/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -664,7 +432,8 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"project": "lib/process-services/ng-package.json"
|
||||
"project": "lib/process-services/ng-package.json",
|
||||
"tsConfig": "lib/process-services/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -685,9 +454,7 @@
|
||||
"lib/process-services/tsconfig.lib.json",
|
||||
"lib/process-services/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -706,7 +473,8 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"project": "lib/process-services-cloud/ng-package.json"
|
||||
"project": "lib/process-services-cloud/ng-package.json",
|
||||
"tsConfig": "lib/process-services-cloud/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -727,9 +495,7 @@
|
||||
"lib/process-services-cloud/tsconfig.lib.json",
|
||||
"lib/process-services-cloud/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -748,7 +514,8 @@
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"project": "lib/insights/ng-package.json"
|
||||
"project": "lib/insights/ng-package.json",
|
||||
"tsConfig": "lib/insights/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
@@ -769,16 +536,14 @@
|
||||
"lib/insights/tsconfig.lib.json",
|
||||
"lib/insights/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"extensions": {
|
||||
"root": "lib/extensions",
|
||||
"sourceRoot": "lib/extensions/src/lib",
|
||||
"sourceRoot": "lib/extensions/src",
|
||||
"projectType": "library",
|
||||
"prefix": "adf",
|
||||
"architect": {
|
||||
@@ -787,6 +552,11 @@
|
||||
"options": {
|
||||
"tsConfig": "lib/extensions/tsconfig.lib.json",
|
||||
"project": "lib/extensions/ng-package.json"
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"tsConfig": "lib/extensions/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"test": {
|
||||
@@ -806,9 +576,7 @@
|
||||
"lib/extensions/tsconfig.lib.json",
|
||||
"lib/extensions/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -824,14 +592,11 @@
|
||||
"options": {
|
||||
"tsConfig": "lib/testing/tsconfig.lib.json",
|
||||
"project": "lib/testing/ng-package.json"
|
||||
}
|
||||
},
|
||||
"test": {
|
||||
"builder": "@angular-devkit/build-angular:karma",
|
||||
"options": {
|
||||
"main": "lib/testing/src/test.ts",
|
||||
"tsConfig": "lib/testing/tsconfig.spec.json",
|
||||
"karmaConfig": "lib/testing/karma.conf.js"
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"tsConfig": "lib/testing/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
@@ -841,9 +606,7 @@
|
||||
"lib/testing/tsconfig.lib.json",
|
||||
"lib/testing/tsconfig.spec.json"
|
||||
],
|
||||
"exclude": [
|
||||
"**/node_modules/**"
|
||||
]
|
||||
"exclude": ["**/node_modules/**"]
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -858,10 +621,15 @@
|
||||
"builder": "@angular-devkit/build-ng-packagr:build",
|
||||
"options": {
|
||||
"tsConfig": "lib/cli/tsconfig.json"
|
||||
},
|
||||
"configurations": {
|
||||
"production": {
|
||||
"tsConfig": "lib/cli/tsconfig.lib.prod.json"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"defaultProject": "dist"
|
||||
"defaultProject": "demoshell"
|
||||
}
|
||||
|
||||
+4
-13
@@ -6,10 +6,8 @@
|
||||
"CSRF",
|
||||
"glyphicon",
|
||||
"sharedlinks",
|
||||
"Redistributable",
|
||||
"fullscreen",
|
||||
"sidenav",
|
||||
"injectable",
|
||||
"truthy",
|
||||
"cryptodoc",
|
||||
"mysites",
|
||||
@@ -33,16 +31,7 @@
|
||||
"SOLR",
|
||||
"unshare",
|
||||
"validators",
|
||||
"guid",
|
||||
"polyfill",
|
||||
"polyfills",
|
||||
"jsonp",
|
||||
"hammerjs",
|
||||
"pdfjs",
|
||||
"xpath",
|
||||
"tooltip",
|
||||
"tooltips",
|
||||
"unindent",
|
||||
"exif",
|
||||
"cardview",
|
||||
"webm",
|
||||
@@ -140,13 +129,15 @@
|
||||
"uploadfileform",
|
||||
"processwithstarteventform",
|
||||
"processstring",
|
||||
"typeahed"
|
||||
"typeahed",
|
||||
"minmax"
|
||||
],
|
||||
"dictionaries": [
|
||||
"html",
|
||||
"en-gb",
|
||||
"en_US",
|
||||
"softwareTerms"
|
||||
"softwareTerms",
|
||||
"node"
|
||||
],
|
||||
"ignorePaths": [
|
||||
"lib/{content-services,core,extensions,insights,process-services}/**/*.spec.ts",
|
||||
|
||||
@@ -0,0 +1,95 @@
|
||||
/**
|
||||
* This file decorates the Angular CLI with the Nx CLI to enable features such as computation caching
|
||||
* and faster execution of tasks.
|
||||
*
|
||||
* It does this by:
|
||||
*
|
||||
* - Patching the Angular CLI to warn you in case you accidentally use the undecorated ng command.
|
||||
* - Symlinking the ng to nx command, so all commands run through the Nx CLI
|
||||
* - Updating the package.json postinstall script to give you control over this script
|
||||
*
|
||||
* The Nx CLI decorates the Angular CLI, so the Nx CLI is fully compatible with it.
|
||||
* Every command you run should work the same when using the Nx CLI, except faster.
|
||||
*
|
||||
* Because of symlinking you can still type `ng build/test/lint` in the terminal. The ng command, in this case,
|
||||
* will point to nx, which will perform optimizations before invoking ng. So the Angular CLI is always invoked.
|
||||
* The Nx CLI simply does some optimizations before invoking the Angular CLI.
|
||||
*
|
||||
* To opt out of this patch:
|
||||
* - Replace occurrences of nx with ng in your package.json
|
||||
* - Remove the script from your postinstall script in your package.json
|
||||
* - Delete and reinstall your node_modules
|
||||
*/
|
||||
|
||||
const fs = require("fs");
|
||||
const os = require("os");
|
||||
const cp = require("child_process");
|
||||
const isWindows = os.platform() === "win32";
|
||||
const { output } = require("@nrwl/workspace");
|
||||
|
||||
/**
|
||||
* Paths to files being patched
|
||||
*/
|
||||
const angularCLIInitPath = "node_modules/@angular/cli/lib/cli/index.js";
|
||||
|
||||
/**
|
||||
* Patch index.js to warn you if you invoke the undecorated Angular CLI.
|
||||
*/
|
||||
function patchAngularCLI(initPath) {
|
||||
const angularCLIInit = fs.readFileSync(initPath, "utf-8").toString();
|
||||
|
||||
if (!angularCLIInit.includes("NX_CLI_SET")) {
|
||||
fs.writeFileSync(
|
||||
initPath,
|
||||
`
|
||||
if (!process.env['NX_CLI_SET']) {
|
||||
const { output } = require('@nrwl/workspace');
|
||||
output.warn({ title: 'The Angular CLI was invoked instead of the Nx CLI. Use "npx ng [command]" or "nx [command]" instead.' });
|
||||
}
|
||||
${angularCLIInit}
|
||||
`
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Symlink of ng to nx, so you can keep using `ng build/test/lint` and still
|
||||
* invoke the Nx CLI and get the benefits of computation caching.
|
||||
*/
|
||||
function symlinkNgCLItoNxCLI() {
|
||||
try {
|
||||
const ngPath = "./node_modules/.bin/ng";
|
||||
const nxPath = "./node_modules/.bin/nx";
|
||||
if (isWindows) {
|
||||
/**
|
||||
* This is the most reliable way to create symlink-like behavior on Windows.
|
||||
* Such that it works in all shells and works with npx.
|
||||
*/
|
||||
["", ".cmd", ".ps1"].forEach(ext => {
|
||||
fs.writeFileSync(ngPath + ext, fs.readFileSync(nxPath + ext));
|
||||
});
|
||||
} else {
|
||||
// If unix-based, symlink
|
||||
cp.execSync(`ln -sf ./nx ${ngPath}`);
|
||||
}
|
||||
} catch (e) {
|
||||
output.error({
|
||||
title:
|
||||
"Unable to create a symlink from the Angular CLI to the Nx CLI:" +
|
||||
e.message
|
||||
});
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
|
||||
try {
|
||||
symlinkNgCLItoNxCLI();
|
||||
patchAngularCLI(angularCLIInitPath);
|
||||
output.log({
|
||||
title: "Angular CLI has been decorated to enable computation caching."
|
||||
});
|
||||
} catch (e) {
|
||||
output.error({
|
||||
title: "Decoration of the Angular CLI did not complete successfully"
|
||||
});
|
||||
}
|
||||
+1
-1
@@ -27,7 +27,7 @@ var server = http.createServer(function (req, res) {
|
||||
req.on('end', function() {
|
||||
if (req.url === '/') {
|
||||
log('Received message: ' + body);
|
||||
} else if (req.url = '/scheduled') {
|
||||
} else if (req.url === '/scheduled') {
|
||||
log('Received task ' + req.headers['x-aws-sqsd-taskname'] + ' scheduled at ' + req.headers['x-aws-sqsd-scheduled-at']);
|
||||
}
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
"target": "es5",
|
||||
"types":[
|
||||
"jasmine",
|
||||
"jasminewd2",
|
||||
"node"
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "Alfresco-ADF-Angular-Demo",
|
||||
"description": "Demo shell for Alfresco Angular components",
|
||||
"version": "3.8.0",
|
||||
"version": "4.0.0",
|
||||
"author": "Alfresco Software, Ltd.",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "إظهار التعليقات على الإصدارات",
|
||||
"ALLOW_DOWNLOAD": "تمكين تنزيل الإصدار",
|
||||
"READ_ONLY": "للقراءة فقط",
|
||||
"COMMENTS": "إظهار التعليقات"
|
||||
"COMMENTS": "إظهار التعليقات",
|
||||
"VERSION_COMPARISON": "إظهار مقارنة الإصدار"
|
||||
},
|
||||
"PERSONAL-FILES": "الملفات الشخصية",
|
||||
"WARN-MULTIPLE-UPLOADS": "عرض تحذير للتحميلات المتعددة.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "تطبيق",
|
||||
"APP_NAME": "تطبيق ADF التوضيحي",
|
||||
"FILTERED_SEARCH": "رأس عامل التصفية",
|
||||
"HOME": "رئيسية",
|
||||
"NODE-SELECTOR": "محدد العقدة",
|
||||
"SITES": "المواقع",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "تحديد متعدد (مع خانات اختيارات)",
|
||||
"THUMBNAILS": "تمكين الصور المصغرة",
|
||||
"ALLOW_DROP_FILES": "تمكين إسقاط ملفات في مجلد",
|
||||
"ALLOW_DROP_FILES": "تمكين إسقاط الملفات في مجلد أو ملف",
|
||||
"MULTIPLE_FILE_UPLOAD": "تحميل ملفات متعددة",
|
||||
"FOLDER_UPLOAD": "تحميل مجلد",
|
||||
"CUSTOM_FILTER": "عامل تصفية امتدادات مخصص",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Zobrazit komentáře k verzím",
|
||||
"ALLOW_DOWNLOAD": "Povolit stažení verze",
|
||||
"READ_ONLY": "Pouze ke čtení",
|
||||
"COMMENTS": "Zobrazit komentáře"
|
||||
"COMMENTS": "Zobrazit komentáře",
|
||||
"VERSION_COMPARISON": "Zobrazit porovnání verzí"
|
||||
},
|
||||
"PERSONAL-FILES": "Osobní soubory",
|
||||
"WARN-MULTIPLE-UPLOADS": "Zobrazit upozornění v případě hromadného odesílání",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Aplikace",
|
||||
"APP_NAME": "Ukázková aplikace ADF",
|
||||
"FILTERED_SEARCH": "Záhlaví filtrů",
|
||||
"HOME": "Domů",
|
||||
"NODE-SELECTOR": "Selektor uzlu",
|
||||
"SITES": "Místa",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Hromadný výběr (pomocí zaškrtávacích polí)",
|
||||
"THUMBNAILS": "Povolit miniatury",
|
||||
"ALLOW_DROP_FILES": "Povolit přetažení souborů do složky",
|
||||
"ALLOW_DROP_FILES": "Povolit přetahování souborů do složky nebo souboru",
|
||||
"MULTIPLE_FILE_UPLOAD": "Odeslání více souborů",
|
||||
"FOLDER_UPLOAD": "Odeslat složku",
|
||||
"CUSTOM_FILTER": "Vlastní filtr rozšíření",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Vis kommentarer til versioner",
|
||||
"ALLOW_DOWNLOAD": "Aktivér versionsdownload",
|
||||
"READ_ONLY": "Skrivebeskyttet",
|
||||
"COMMENTS": "Vis kommentarer"
|
||||
"COMMENTS": "Vis kommentarer",
|
||||
"VERSION_COMPARISON": "Vis sammenligningsversion"
|
||||
},
|
||||
"PERSONAL-FILES": "Personlige filer",
|
||||
"WARN-MULTIPLE-UPLOADS": "Vis advarsler for flere uploads.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "App",
|
||||
"APP_NAME": "ADF-demoapp",
|
||||
"FILTERED_SEARCH": "Filtre",
|
||||
"HOME": "Hjem",
|
||||
"NODE-SELECTOR": "Nodevælger",
|
||||
"SITES": "Websteder",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Vælg flere (med afkrydsningsfelter)",
|
||||
"THUMBNAILS": "Aktivér miniaturevisninger",
|
||||
"ALLOW_DROP_FILES": "Aktivér Slip filer i en mappe",
|
||||
"ALLOW_DROP_FILES": "Aktiver dropfiler i en mappe eller som en fil",
|
||||
"MULTIPLE_FILE_UPLOAD": "Upload af flere filer",
|
||||
"FOLDER_UPLOAD": "Upload af mappe",
|
||||
"CUSTOM_FILTER": "Filter for brugerdefinerede udvidelser",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Anmerkungen zu Versionen einblenden",
|
||||
"ALLOW_DOWNLOAD": "Herunterladen von Version aktivieren",
|
||||
"READ_ONLY": "Schreibgeschützt",
|
||||
"COMMENTS": "Kommentare anzeigen"
|
||||
"COMMENTS": "Kommentare anzeigen",
|
||||
"VERSION_COMPARISON": "Versionsvergleich anzeigen"
|
||||
},
|
||||
"PERSONAL-FILES": "Persönliche Dateien",
|
||||
"WARN-MULTIPLE-UPLOADS": "Warnung bei Mehrfach-Uploads anzeigen.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Anwendung",
|
||||
"APP_NAME": "ADF-Demoanwendung",
|
||||
"FILTERED_SEARCH": "Filterzeile",
|
||||
"HOME": "Startseite",
|
||||
"NODE-SELECTOR": "Node-Auswahl",
|
||||
"SITES": "Sites",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Mehrfachauswahl (mit Kontrollkästchen)",
|
||||
"THUMBNAILS": "Miniaturansichten aktivieren",
|
||||
"ALLOW_DROP_FILES": "Ablegen von Dateien in Ordner aktivieren",
|
||||
"ALLOW_DROP_FILES": "Ablegen von Dateien in einem Ordner oder einer Datei aktivieren",
|
||||
"MULTIPLE_FILE_UPLOAD": "Mehrere Dateien hochladen",
|
||||
"FOLDER_UPLOAD": "Ordner hochladen",
|
||||
"CUSTOM_FILTER": "Filter für benutzerdefinierte Erweiterungen",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Show comments on versions",
|
||||
"ALLOW_DOWNLOAD": "Enable version download",
|
||||
"READ_ONLY": "Read-only",
|
||||
"COMMENTS": "Show comments"
|
||||
"COMMENTS": "Show comments",
|
||||
"VERSION_COMPARISON": "Show version comparison"
|
||||
},
|
||||
"PERSONAL-FILES": "Personal Files",
|
||||
"WARN-MULTIPLE-UPLOADS": "Display warning for multiple uploads.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "App",
|
||||
"APP_NAME": "ADF Demo Application",
|
||||
"FILTERED_SEARCH": "Filter Header",
|
||||
"HOME": "Home",
|
||||
"NODE-SELECTOR": "Node Selector",
|
||||
"SITES": "Sites",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Multiselect (with checkboxes)",
|
||||
"THUMBNAILS": "Enable Thumbnails",
|
||||
"ALLOW_DROP_FILES": "Enable Drop Files in a folder",
|
||||
"ALLOW_DROP_FILES": "Enable Drop Files in a folder or a file",
|
||||
"MULTIPLE_FILE_UPLOAD": "Multiple File Upload",
|
||||
"FOLDER_UPLOAD": "Folder upload",
|
||||
"CUSTOM_FILTER": "Custom extensions filter",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Mostrar comentarios en las versiones",
|
||||
"ALLOW_DOWNLOAD": "Habilitar descarga de versión",
|
||||
"READ_ONLY": "Solo lectura",
|
||||
"COMMENTS": "Mostrar comentarios"
|
||||
"COMMENTS": "Mostrar comentarios",
|
||||
"VERSION_COMPARISON": "Mostrar versión comparada"
|
||||
},
|
||||
"PERSONAL-FILES": "Ficheros personales",
|
||||
"WARN-MULTIPLE-UPLOADS": "Mostrar advertencia de múltiples cargas.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Aplicación",
|
||||
"APP_NAME": "Aplicación ADF Demo",
|
||||
"FILTERED_SEARCH": "Filtros",
|
||||
"HOME": "Inicio",
|
||||
"NODE-SELECTOR": "Selector de nodo",
|
||||
"SITES": "Sitios",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Selección múltiple (con casillas)",
|
||||
"THUMBNAILS": "Habilitar miniaturas",
|
||||
"ALLOW_DROP_FILES": "Habilitar arrastre de ficheros en una carpeta",
|
||||
"ALLOW_DROP_FILES": "Habilitar arrastre de ficheros a una carpeta o fichero",
|
||||
"MULTIPLE_FILE_UPLOAD": "Carga de varios ficheros",
|
||||
"FOLDER_UPLOAD": "Carga de carpetas",
|
||||
"CUSTOM_FILTER": "Filtro de extensiones personalizado",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Näytä kommentit versioissa",
|
||||
"ALLOW_DOWNLOAD": "Ota version lataaminen käyttöön",
|
||||
"READ_ONLY": "Vain luku",
|
||||
"COMMENTS": "Näytä kommentit"
|
||||
"COMMENTS": "Näytä kommentit",
|
||||
"VERSION_COMPARISON": "Näytä versiovertailu"
|
||||
},
|
||||
"PERSONAL-FILES": "Omat tiedostot",
|
||||
"WARN-MULTIPLE-UPLOADS": "Näytä varoitus useille latauksille.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Sovellus",
|
||||
"APP_NAME": "ADF-demosovellus",
|
||||
"FILTERED_SEARCH": "Suodattimet",
|
||||
"HOME": "Aloitussivu",
|
||||
"NODE-SELECTOR": "Solmuvalitsin",
|
||||
"SITES": "Sivustot",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Monivalinta (valintaruuduilla)",
|
||||
"THUMBNAILS": "Ota pikkukuvat käyttöön",
|
||||
"ALLOW_DROP_FILES": "Ota tiedostojen kansioon pudottaminen käyttöön",
|
||||
"ALLOW_DROP_FILES": "Ota tiedostojen kansioon tai tiedostoon pudottaminen käyttöön",
|
||||
"MULTIPLE_FILE_UPLOAD": "Useiden tiedostojen lataaminen",
|
||||
"FOLDER_UPLOAD": "Kansion lataaminen",
|
||||
"CUSTOM_FILTER": "Mukautettu tiedostomuotosuodatin",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Afficher les commentaires sur les versions",
|
||||
"ALLOW_DOWNLOAD": "Activer le téléchargement de la version",
|
||||
"READ_ONLY": "Lecture seule",
|
||||
"COMMENTS": "Afficher les commentaires"
|
||||
"COMMENTS": "Afficher les commentaires",
|
||||
"VERSION_COMPARISON": "Afficher la comparaison des versions"
|
||||
},
|
||||
"PERSONAL-FILES": "Fichiers personnels",
|
||||
"WARN-MULTIPLE-UPLOADS": "Avertir en cas de téléchargements multiples.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Application",
|
||||
"APP_NAME": "Application Démo ADF",
|
||||
"FILTERED_SEARCH": "Filtres",
|
||||
"HOME": "Accueil",
|
||||
"NODE-SELECTOR": "Sélecteur de nœud",
|
||||
"SITES": "Sites",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Sélection multiple (avec cases à cocher)",
|
||||
"THUMBNAILS": "Activer les miniatures",
|
||||
"ALLOW_DROP_FILES": "Activer l'option déposer des fichiers dans un dossier",
|
||||
"ALLOW_DROP_FILES": "Activer la fonctionnalité Déposer les fichiers dans un dossier ou un fichier",
|
||||
"MULTIPLE_FILE_UPLOAD": "Importation de fichiers multiples",
|
||||
"FOLDER_UPLOAD": "Importation de dossier",
|
||||
"CUSTOM_FILTER": "Filtre d'extensions personnalisées",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Mostra commenti sulle versioni",
|
||||
"ALLOW_DOWNLOAD": "Abilita scaricamento versioni",
|
||||
"READ_ONLY": "Sola lettura",
|
||||
"COMMENTS": "Mostra commenti"
|
||||
"COMMENTS": "Mostra commenti",
|
||||
"VERSION_COMPARISON": "Mostra confronto versioni"
|
||||
},
|
||||
"PERSONAL-FILES": "File personali",
|
||||
"WARN-MULTIPLE-UPLOADS": "Mostra avviso per caricamenti multipli.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Applicazione",
|
||||
"APP_NAME": "Applicazione demo ADF",
|
||||
"FILTERED_SEARCH": "Intestazione filtri",
|
||||
"HOME": "Home",
|
||||
"NODE-SELECTOR": "Selezione nodo",
|
||||
"SITES": "Siti",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Selezione multipla (con caselle di spunta)",
|
||||
"THUMBNAILS": "Abilita miniature",
|
||||
"ALLOW_DROP_FILES": "Abilita trascinamento di file in una cartella",
|
||||
"ALLOW_DROP_FILES": "Abilita Rilascio file in una cartella o file",
|
||||
"MULTIPLE_FILE_UPLOAD": "Caricamento di file multipli",
|
||||
"FOLDER_UPLOAD": "Caricamento cartelle",
|
||||
"CUSTOM_FILTER": "Filtro estensioni personalizzato",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "バージョンに関するコメントを表示",
|
||||
"ALLOW_DOWNLOAD": "バージョンのダウンロードを許可",
|
||||
"READ_ONLY": "読取り専用",
|
||||
"COMMENTS": "コメントを表示する"
|
||||
"COMMENTS": "コメントを表示する",
|
||||
"VERSION_COMPARISON": "バージョンの比較を表示"
|
||||
},
|
||||
"PERSONAL-FILES": "個人的なファイル",
|
||||
"WARN-MULTIPLE-UPLOADS": "複数のアップロードの警告を表示します。",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "アプリ",
|
||||
"APP_NAME": "ADF デモアプリケーション",
|
||||
"FILTERED_SEARCH": "フィルタ",
|
||||
"HOME": "ホーム",
|
||||
"NODE-SELECTOR": "ノードセレクター",
|
||||
"SITES": "サイト",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "複数選択 (チェックボックスを使用)",
|
||||
"THUMBNAILS": "サムネイルを有効にする",
|
||||
"ALLOW_DROP_FILES": "フォルダへのドラッグ&ドロップを許可",
|
||||
"ALLOW_DROP_FILES": "ファイルのドロップを許可",
|
||||
"MULTIPLE_FILE_UPLOAD": "複数ファイルのアップロード",
|
||||
"FOLDER_UPLOAD": "フォルダのアップロード",
|
||||
"CUSTOM_FILTER": "カスタム拡張子フィルタ",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Vis kommentarer om versjoner",
|
||||
"ALLOW_DOWNLOAD": "Aktiver versjonsnedlasting",
|
||||
"READ_ONLY": "Skrivebeskyttet",
|
||||
"COMMENTS": "Vis kommentarer"
|
||||
"COMMENTS": "Vis kommentarer",
|
||||
"VERSION_COMPARISON": "Vis sammenligning av versjoner"
|
||||
},
|
||||
"PERSONAL-FILES": "Personlige filer",
|
||||
"WARN-MULTIPLE-UPLOADS": "Vis advarsel for flere opplastinger.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "App",
|
||||
"APP_NAME": "ADF-demoprogam",
|
||||
"FILTERED_SEARCH": "Filtertittel",
|
||||
"HOME": "Hjem",
|
||||
"NODE-SELECTOR": "Nodevelger",
|
||||
"SITES": "Områder",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Multivalg (med avskrysningsbokser)",
|
||||
"THUMBNAILS": "Aktiver miniatyrbilder",
|
||||
"ALLOW_DROP_FILES": "Aktiver Slipp filer i en mappe",
|
||||
"ALLOW_DROP_FILES": "Aktiver Slipp filer i en mappe eller en fil",
|
||||
"MULTIPLE_FILE_UPLOAD": "Opplasting av flere filer",
|
||||
"FOLDER_UPLOAD": "Opplasting av mappe",
|
||||
"CUSTOM_FILTER": "Tilpasset utvidelsesfilter",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Opmerkingen over versies tonen",
|
||||
"ALLOW_DOWNLOAD": "Versiedownload inschakelen",
|
||||
"READ_ONLY": "Alleen-lezen",
|
||||
"COMMENTS": "Opmerkingen weergeven"
|
||||
"COMMENTS": "Opmerkingen weergeven",
|
||||
"VERSION_COMPARISON": "Versievergelijking tonen"
|
||||
},
|
||||
"PERSONAL-FILES": "Persoonlijke bestanden",
|
||||
"WARN-MULTIPLE-UPLOADS": "Waarschuwing weergeven bij meerdere uploads.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "App",
|
||||
"APP_NAME": "ADF-demotoepassing",
|
||||
"FILTERED_SEARCH": "Filterkoptekst",
|
||||
"HOME": "Home",
|
||||
"NODE-SELECTOR": "Selectiefunctie voor node",
|
||||
"SITES": "Sites",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Multiselect (met selectievakjes)",
|
||||
"THUMBNAILS": "Miniaturen inschakelen",
|
||||
"ALLOW_DROP_FILES": "Bestanden neerzetten in een map inschakelen",
|
||||
"ALLOW_DROP_FILES": "Bestanden neerzetten in een map of een bestand inschakelen",
|
||||
"MULTIPLE_FILE_UPLOAD": "Meerdere bestanden uploaden",
|
||||
"FOLDER_UPLOAD": "Map uploaden",
|
||||
"CUSTOM_FILTER": "Aangepast extensiefilter",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Pokaż komentarze do wersji",
|
||||
"ALLOW_DOWNLOAD": "Włącz pobieranie wersji",
|
||||
"READ_ONLY": "Tylko do odczytu",
|
||||
"COMMENTS": "Pokaż komentarze"
|
||||
"COMMENTS": "Pokaż komentarze",
|
||||
"VERSION_COMPARISON": "Pokaż porównanie wersji"
|
||||
},
|
||||
"PERSONAL-FILES": "Pliki osobiste",
|
||||
"WARN-MULTIPLE-UPLOADS": "Wyświetl ostrzeżenie dla wielu operacji przesyłania.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Aplikacja",
|
||||
"APP_NAME": "Wersja demonstracyjna aplikacji ADF",
|
||||
"FILTERED_SEARCH": "Tytuły filtra",
|
||||
"HOME": "Strona główna",
|
||||
"NODE-SELECTOR": "Selektor węzłów",
|
||||
"SITES": "Witryny",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Wybór wielokrotny (przy użyciu pól wyboru)",
|
||||
"THUMBNAILS": "Włącz miniatury",
|
||||
"ALLOW_DROP_FILES": "Włącz upuszczanie plików w folderze",
|
||||
"ALLOW_DROP_FILES": "Włącz upuszczanie plików w folderze lub pliku",
|
||||
"MULTIPLE_FILE_UPLOAD": "Przesyłanie wielu plików",
|
||||
"FOLDER_UPLOAD": "Przesyłanie folderu",
|
||||
"CUSTOM_FILTER": "Niestandardowy filtr rozszerzeń",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Mostrar comentários em versões",
|
||||
"ALLOW_DOWNLOAD": "Ativar download da versão",
|
||||
"READ_ONLY": "Somente leitura",
|
||||
"COMMENTS": "Mostrar comentários"
|
||||
"COMMENTS": "Mostrar comentários",
|
||||
"VERSION_COMPARISON": "Mostrar comparação de versões"
|
||||
},
|
||||
"PERSONAL-FILES": "Arquivos pessoais",
|
||||
"WARN-MULTIPLE-UPLOADS": "Exibir alerta para vários uploads.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Aplicativo",
|
||||
"APP_NAME": "Aplicativo Demo ADF",
|
||||
"FILTERED_SEARCH": "Filtros",
|
||||
"HOME": "Página Inicial",
|
||||
"NODE-SELECTOR": "Seletor de nó",
|
||||
"SITES": "Sites",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Seleção Múltipla (com caixas de seleção)",
|
||||
"THUMBNAILS": "Ativar Miniaturas",
|
||||
"ALLOW_DROP_FILES": "Ativar Soltar Arquivos em uma pasta",
|
||||
"ALLOW_DROP_FILES": "Ativar soltar arquivos em uma pasta ou um arquivo",
|
||||
"MULTIPLE_FILE_UPLOAD": "Carregamento de Vários Arquivos",
|
||||
"FOLDER_UPLOAD": "Carregamento de Pasta",
|
||||
"CUSTOM_FILTER": "Filtro de extensões personalizado",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Показать комментарии к версиям",
|
||||
"ALLOW_DOWNLOAD": "Включить загрузку версий",
|
||||
"READ_ONLY": "Только чтение",
|
||||
"COMMENTS": "Показать комментарии"
|
||||
"COMMENTS": "Показать комментарии",
|
||||
"VERSION_COMPARISON": "Показать сравнение версий"
|
||||
},
|
||||
"PERSONAL-FILES": "Личные файлы",
|
||||
"WARN-MULTIPLE-UPLOADS": "Показывать предупреждение для нескольких загрузок.",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Приложение",
|
||||
"APP_NAME": "Демонстрационное приложение ADF",
|
||||
"FILTERED_SEARCH": "Заголовок фильтра",
|
||||
"HOME": "Домашняя",
|
||||
"NODE-SELECTOR": "Селектор узлов",
|
||||
"SITES": "Сайты",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Выбор нескольких вариантов (с флажками)",
|
||||
"THUMBNAILS": "Включить эскизы",
|
||||
"ALLOW_DROP_FILES": "Включить перетаскивание файлов в папку",
|
||||
"ALLOW_DROP_FILES": "Включите перетаскивание файлов в папке или файле",
|
||||
"MULTIPLE_FILE_UPLOAD": "Загрузка нескольких файлов",
|
||||
"FOLDER_UPLOAD": "Загрузка папки",
|
||||
"CUSTOM_FILTER": "Пользовательский фильтр расширений",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "Visa kommentarer om versioner",
|
||||
"ALLOW_DOWNLOAD": "Aktivera version nedladdning",
|
||||
"READ_ONLY": "Skrivskyddad",
|
||||
"COMMENTS": "Visa kommentarer"
|
||||
"COMMENTS": "Visa kommentarer",
|
||||
"VERSION_COMPARISON": "Visa versionsjämförelse"
|
||||
},
|
||||
"PERSONAL-FILES": "Personliga filer",
|
||||
"WARN-MULTIPLE-UPLOADS": "Visa varning för flera uppladdningar",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "Program",
|
||||
"APP_NAME": "ADF-demoprogram",
|
||||
"FILTERED_SEARCH": "Filter",
|
||||
"HOME": "Hem",
|
||||
"NODE-SELECTOR": "Nodväljare",
|
||||
"SITES": "Webbplatser",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "Flerval (med kryssrutor)",
|
||||
"THUMBNAILS": "Aktivera miniatyrbilder",
|
||||
"ALLOW_DROP_FILES": "Aktivera släpp filer i en mapp",
|
||||
"ALLOW_DROP_FILES": "Gör det möjligt att dra in filer i en mapp eller en fil",
|
||||
"MULTIPLE_FILE_UPLOAD": "Uppladdning av flera filer",
|
||||
"FOLDER_UPLOAD": "Mappuppladdning",
|
||||
"CUSTOM_FILTER": "Anpassade tilläggsfilter",
|
||||
|
||||
@@ -21,7 +21,8 @@
|
||||
"SHOW_COMMENTS": "显示有关版本的注释",
|
||||
"ALLOW_DOWNLOAD": "启用版本下载",
|
||||
"READ_ONLY": "只读",
|
||||
"COMMENTS": "显示注释"
|
||||
"COMMENTS": "显示注释",
|
||||
"VERSION_COMPARISON": "显示版本对比"
|
||||
},
|
||||
"PERSONAL-FILES": "个人文件",
|
||||
"WARN-MULTIPLE-UPLOADS": "针对多个上传显示警告。",
|
||||
@@ -55,6 +56,7 @@
|
||||
"APP_LAYOUT": {
|
||||
"APP": "APP",
|
||||
"APP_NAME": "ADF 演示应用程序",
|
||||
"FILTERED_SEARCH": "筛选标头",
|
||||
"HOME": "主页",
|
||||
"NODE-SELECTOR": "节点选择器",
|
||||
"SITES": "站点",
|
||||
@@ -119,7 +121,7 @@
|
||||
"DOCUMENT_LIST": {
|
||||
"MULTISELECT_CHECKBOXES": "多选(含复选框)",
|
||||
"THUMBNAILS": "启用缩略图",
|
||||
"ALLOW_DROP_FILES": "在文件夹中启用“文件拖放”",
|
||||
"ALLOW_DROP_FILES": "在文件夹或文件中启用拖动文件",
|
||||
"MULTIPLE_FILE_UPLOAD": "上传多个文件",
|
||||
"FOLDER_UPLOAD": "文件夹上传",
|
||||
"CUSTOM_FILTER": "自定义扩展过滤器",
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
"$schema": "../../lib/core/app-config/schema.json",
|
||||
"ecmHost": "{protocol}//{hostname}{:port}",
|
||||
"bpmHost": "{protocol}//{hostname}{:port}",
|
||||
"identityHost": "{protocol}//{hostname}{:port}/auth/realms/alfresco",
|
||||
"identityHost": "{protocol}//{hostname}{:port}/auth/admin/realms/alfresco",
|
||||
"loginRoute": "login",
|
||||
"providers": "ALL",
|
||||
"contextRootBpm": "activiti-app",
|
||||
@@ -104,6 +104,7 @@
|
||||
}
|
||||
],
|
||||
"search": {
|
||||
"filterWithContains": true,
|
||||
"app:fields": [
|
||||
"cm:name",
|
||||
"cm:title",
|
||||
@@ -434,6 +435,169 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"search-headers": {
|
||||
"filterWithContains": true,
|
||||
"app:fields": [
|
||||
"cm:name",
|
||||
"cm:title",
|
||||
"cm:description",
|
||||
"ia:whatEvent",
|
||||
"ia:descriptionEvent",
|
||||
"lnk:title",
|
||||
"lnk:description",
|
||||
"TEXT",
|
||||
"TAG"
|
||||
],
|
||||
"categories": [
|
||||
{
|
||||
"id": "queryName",
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.NAME.TITLE",
|
||||
"columnKey": "name",
|
||||
"enabled": true,
|
||||
"component": {
|
||||
"selector": "text",
|
||||
"settings": {
|
||||
"pattern": "cm:name:'(.*?)'",
|
||||
"field": "cm:name",
|
||||
"placeholder": "SEARCH.SEARCH_HEADER.FILTERS.NAME.PLACEHOLDER",
|
||||
"searchSuffix" : "*",
|
||||
"allowUpdateOnChange" : false
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "checkList",
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.TYPE.TITLE",
|
||||
"columnKey":"$thumbnail",
|
||||
"enabled": true,
|
||||
"component": {
|
||||
"selector": "check-list",
|
||||
"settings": {
|
||||
"pageSize": 5,
|
||||
"allowUpdateOnChange" : false,
|
||||
"operator": "OR",
|
||||
"options": [
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.TYPE.FOLDER",
|
||||
"value": "TYPE:'cm:folder'"
|
||||
},
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.TYPE.DOCUMENT",
|
||||
"value": "TYPE:'cm:content'"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "contentSize",
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.SIZE.TITLE",
|
||||
"columnKey":"content.sizeInBytes",
|
||||
"enabled": true,
|
||||
"component": {
|
||||
"selector": "check-list",
|
||||
"settings": {
|
||||
"allowUpdateOnChange" : false,
|
||||
"options": [
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.SIZE.SMALL",
|
||||
"value": "content.size:[0 TO 1048576] OR TYPE:'cm:folder'"
|
||||
},
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.SIZE.MEDIUM",
|
||||
"value": "content.size:[1048576 TO 52428800] OR TYPE:'cm:folder'"
|
||||
},
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.SIZE.LARGE",
|
||||
"value": "content.size:<52428800 TO 524288000] OR TYPE:'cm:folder'"
|
||||
},
|
||||
{
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.SIZE.HUGE",
|
||||
"value": "content.size:<524288000 TO MAX] OR TYPE:'cm:folder'"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"id": "createdDateRange",
|
||||
"name": "SEARCH.SEARCH_HEADER.FILTERS.DATE.TITLE",
|
||||
"columnKey": "createdAt",
|
||||
"enabled": true,
|
||||
"component": {
|
||||
"selector": "date-range",
|
||||
"settings": {
|
||||
"allowUpdateOnChange" : false,
|
||||
"field": "cm:created",
|
||||
"dateFormat": "DD-MMM-YY",
|
||||
"maxDate": "today"
|
||||
}
|
||||
}
|
||||
}
|
||||
],
|
||||
"highlight": {
|
||||
"prefix": " ",
|
||||
"postfix": " ",
|
||||
"mergeContiguous": true,
|
||||
"fields": [
|
||||
{
|
||||
"field": "cm:title"
|
||||
},
|
||||
{
|
||||
"field": "description",
|
||||
"prefix": "(",
|
||||
"postfix": ")"
|
||||
}
|
||||
]
|
||||
},
|
||||
"sorting": {
|
||||
"options": [
|
||||
{
|
||||
"key": "name",
|
||||
"label": "Name",
|
||||
"type": "FIELD",
|
||||
"field": "cm:name",
|
||||
"ascending": true
|
||||
},
|
||||
{
|
||||
"key": "content.sizeInBytes",
|
||||
"label": "Size",
|
||||
"type": "FIELD",
|
||||
"field": "content.size",
|
||||
"ascending": true
|
||||
},
|
||||
{
|
||||
"key": "createdByUser.displayName",
|
||||
"label": "Author",
|
||||
"type": "FIELD",
|
||||
"field": "cm:creator",
|
||||
"ascending": true
|
||||
},
|
||||
{
|
||||
"key": "createdAt",
|
||||
"label": "Created",
|
||||
"type": "FIELD",
|
||||
"field": "cm:created",
|
||||
"ascending": true
|
||||
},
|
||||
{
|
||||
"key": "score",
|
||||
"label": "Relevance",
|
||||
"type": "FIELD",
|
||||
"field": "score",
|
||||
"ascending": false
|
||||
}
|
||||
],
|
||||
"defaults": [
|
||||
{
|
||||
"key": "score",
|
||||
"type": "FIELD",
|
||||
"field": "score",
|
||||
"ascending": false
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"pagination": {
|
||||
"size": 20,
|
||||
"supportedPageSizes": [
|
||||
@@ -552,7 +716,8 @@
|
||||
"type": "text",
|
||||
"title": "ADF-DOCUMENT-LIST.LAYOUT.NAME",
|
||||
"cssClass": "full-width ellipsis-cell",
|
||||
"sortable": true
|
||||
"sortable": true,
|
||||
"sortingKey": "name"
|
||||
},
|
||||
{
|
||||
"key": "visibility",
|
||||
@@ -847,7 +1012,8 @@
|
||||
},
|
||||
"multi-value-pipe-separator": ", ",
|
||||
"multi-value-chips": true,
|
||||
"copy-to-clipboard-action": true
|
||||
"copy-to-clipboard-action": true,
|
||||
"selectFilterLimit": 5
|
||||
},
|
||||
"sideNav": {
|
||||
"expandedSidenav": true,
|
||||
|
||||
@@ -22,7 +22,7 @@ import {
|
||||
PageTitleService
|
||||
} from '@alfresco/adf-core';
|
||||
import { Router } from '@angular/router';
|
||||
import { MatDialog } from '@angular/material';
|
||||
import { MatDialog } from '@angular/material/dialog';
|
||||
|
||||
@Component({
|
||||
selector: 'app-root',
|
||||
|
||||
@@ -22,7 +22,7 @@ import { FlexLayoutModule } from '@angular/flex-layout';
|
||||
import { ChartsModule } from 'ng2-charts';
|
||||
import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http';
|
||||
import { BrowserAnimationsModule, NoopAnimationsModule } from '@angular/platform-browser/animations';
|
||||
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { AppConfigService, TRANSLATION_PROVIDER, DebugAppConfigService, CoreModule, CoreAutomationService, AuthBearerInterceptor } from '@alfresco/adf-core';
|
||||
import { ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { AppComponent } from './app.component';
|
||||
@@ -47,21 +47,17 @@ import { AppsViewComponent } from './components/process-service/apps-view.compon
|
||||
import { FilesComponent } from './components/files/files.component';
|
||||
import { VersionManagerDialogAdapterComponent } from './components/files/version-manager-dialog-adapter.component';
|
||||
import { MetadataDialogAdapterComponent } from './components/files/metadata-dialog-adapter.component';
|
||||
|
||||
import { ThemePickerModule } from './components/theme-picker/theme-picker';
|
||||
|
||||
import { routing } from './app.routes';
|
||||
import { appRoutes } from './app.routes';
|
||||
import { TaskAttachmentsComponent } from './components/process-service/task-attachments.component';
|
||||
import { ProcessAttachmentsComponent } from './components/process-service/process-attachments.component';
|
||||
import { SharedLinkViewComponent } from './components/shared-link-view/shared-link-view.component';
|
||||
import { DemoPermissionComponent } from './components/permissions/demo-permissions.component';
|
||||
import { PreviewService } from './services/preview.service';
|
||||
import { ReportIssueComponent } from './components/report-issue/report-issue.component';
|
||||
import { MonacoEditorModule } from 'ngx-monaco-editor';
|
||||
import { ContentModule } from '@alfresco/adf-content-services';
|
||||
import { InsightsModule } from '@alfresco/adf-insights';
|
||||
import { ProcessModule } from '@alfresco/adf-process-services';
|
||||
import { AppExtensionsModule } from './app-extension.module';
|
||||
import { TreeViewSampleComponent } from './components/tree-view/tree-view-sample.component';
|
||||
import { CloudLayoutComponent } from './components/cloud/cloud-layout.component';
|
||||
import { AppsCloudDemoComponent } from './components/cloud/apps-cloud-demo.component';
|
||||
@@ -82,9 +78,9 @@ import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/
|
||||
import { environment } from '../environments/environment';
|
||||
import { AppCloudSharedModule } from './components/cloud/shared/cloud.shared.module';
|
||||
import { DemoErrorComponent } from './components/error/demo-error.component';
|
||||
import {
|
||||
ProcessServicesCloudModule
|
||||
} from '@alfresco/adf-process-services-cloud';
|
||||
import { ProcessServicesCloudModule } from '@alfresco/adf-process-services-cloud';
|
||||
import { FilteredSearchComponent } from './components/files/filtered-search.component';
|
||||
import { RouterModule } from '@angular/router';
|
||||
|
||||
import { registerLocaleData } from '@angular/common';
|
||||
import localeFr from '@angular/common/locales/fr';
|
||||
@@ -126,17 +122,17 @@ registerLocaleData(localeSv);
|
||||
BrowserModule,
|
||||
environment.e2e ? NoopAnimationsModule : BrowserAnimationsModule,
|
||||
ReactiveFormsModule,
|
||||
routing,
|
||||
RouterModule.forRoot(appRoutes, { initialNavigation: true }),
|
||||
FormsModule,
|
||||
HttpClientModule,
|
||||
MaterialModule,
|
||||
AppExtensionsModule,
|
||||
FlexLayoutModule,
|
||||
TranslateModule.forRoot(),
|
||||
CoreModule.forRoot(),
|
||||
ContentModule.forRoot(),
|
||||
InsightsModule.forRoot(),
|
||||
ProcessModule.forRoot(),
|
||||
ProcessServicesCloudModule,
|
||||
ProcessServicesCloudModule.forRoot(),
|
||||
ExtensionsModule.forRoot(),
|
||||
ThemePickerModule,
|
||||
ChartsModule,
|
||||
@@ -158,6 +154,7 @@ registerLocaleData(localeSv);
|
||||
FormNodeViewerComponent,
|
||||
AppsViewComponent,
|
||||
FilesComponent,
|
||||
FilteredSearchComponent,
|
||||
FormComponent,
|
||||
FormListComponent,
|
||||
VersionManagerDialogAdapterComponent,
|
||||
@@ -211,13 +208,7 @@ registerLocaleData(localeSv);
|
||||
name: 'lazy-loading',
|
||||
source: 'resources/lazy-loading'
|
||||
}
|
||||
},
|
||||
PreviewService,
|
||||
CoreAutomationService
|
||||
],
|
||||
entryComponents: [
|
||||
VersionManagerDialogAdapterComponent,
|
||||
MetadataDialogAdapterComponent
|
||||
}
|
||||
],
|
||||
bootstrap: [AppComponent]
|
||||
})
|
||||
|
||||
@@ -15,15 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { ModuleWithProviders } from '@angular/core';
|
||||
import { RouterModule, Routes } from '@angular/router';
|
||||
import {
|
||||
AuthGuard,
|
||||
AuthGuardEcm,
|
||||
ErrorContentComponent,
|
||||
AuthGuardBpm,
|
||||
AuthGuardSsoRoleService
|
||||
} from '@alfresco/adf-core';
|
||||
import { Routes } from '@angular/router';
|
||||
import { AuthGuard, AuthGuardEcm, ErrorContentComponent, AuthGuardBpm, AuthGuardSsoRoleService } from '@alfresco/adf-core';
|
||||
import { AppLayoutComponent } from './components/app-layout/app-layout.component';
|
||||
import { HomeComponent } from './components/home/home.component';
|
||||
import { LogoutComponent } from './components/logout/logout.component';
|
||||
@@ -59,12 +52,14 @@ import { FormCloudDemoComponent } from './components/app-layout/cloud/form-demo/
|
||||
import { ConfirmDialogExampleComponent } from './components/confirm-dialog/confirm-dialog-example.component';
|
||||
import { DemoErrorComponent } from './components/error/demo-error.component';
|
||||
import { TaskHeaderCloudDemoComponent } from './components/cloud/task-header-cloud-demo.component';
|
||||
import { FilteredSearchComponent } from './components/files/filtered-search.component';
|
||||
|
||||
export const appRoutes: Routes = [
|
||||
{ path: 'login', loadChildren: 'app/components/login/login.module#AppLoginModule' },
|
||||
{ path: 'login', loadChildren: () => import('./components/login/login.module').then(m => m.AppLoginModule) },
|
||||
{ path: 'logout', component: LogoutComponent },
|
||||
{
|
||||
path: 'settings',
|
||||
loadChildren: 'app/components/settings/settings.module#AppSettingsModule'
|
||||
loadChildren: () => import('./components/settings/settings.module').then(m => m.AppSettingsModule)
|
||||
},
|
||||
{
|
||||
path: 'files/:nodeId/view',
|
||||
@@ -75,7 +70,20 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/file-view/file-view.module#FileViewModule'
|
||||
loadChildren: () => import('./components/file-view/file-view.module').then(m => m.FileViewModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
path: 'files/:nodeId/:versionId/view',
|
||||
component: AppComponent,
|
||||
canActivate: [AuthGuardEcm],
|
||||
canActivateChild: [AuthGuardEcm],
|
||||
outlet: 'overlay',
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: () => import('./components/file-view/file-view.module').then(m => m.FileViewModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -87,7 +95,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/file-view/file-view.module#FileViewModule'
|
||||
loadChildren: () => import('./components/file-view/file-view.module').then(m => m.FileViewModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -100,14 +108,14 @@ export const appRoutes: Routes = [
|
||||
{
|
||||
path: 'breadcrumb',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/breadcrumb-demo/breadcrumb-demo.module#AppBreadcrumbModule'
|
||||
loadChildren: () => import('./components/breadcrumb-demo/breadcrumb-demo.module').then(m => m.AppBreadcrumbModule)
|
||||
},
|
||||
{
|
||||
path: 'notifications',
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/notifications/notifications.module#AppNotificationsModule'
|
||||
loadChildren: () => import('./components/notifications/notifications.module').then(m => m.AppNotificationsModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -116,7 +124,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/config-editor/config-editor.module#AppConfigEditorModule'
|
||||
loadChildren: () => import('./components/config-editor/config-editor.module').then(m => m.AppConfigEditorModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -125,7 +133,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/pipes/pipes.module#AppPipesModule'
|
||||
loadChildren: () => import('./components/pipes/pipes.module').then(m => m.AppPipesModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -134,7 +142,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/card-view/card-view.module#AppCardViewModule'
|
||||
loadChildren: () => import('./components/card-view/card-view.module').then(m => m.AppCardViewModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -143,7 +151,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/sites/sites.module#SitesModule'
|
||||
loadChildren: () => import('./components/sites/sites.module').then(m => m.SitesModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -152,7 +160,7 @@ export const appRoutes: Routes = [
|
||||
children: [
|
||||
{
|
||||
path: '',
|
||||
loadChildren: 'app/components/header-data/header-data.module#AppHeaderDataModule'
|
||||
loadChildren: () => import('./components/header-data/header-data.module').then(m => m.AppHeaderDataModule)
|
||||
}
|
||||
]
|
||||
},
|
||||
@@ -183,7 +191,7 @@ export const appRoutes: Routes = [
|
||||
},
|
||||
{
|
||||
path: 'community',
|
||||
loadChildren: 'app/components/cloud/community/community.module#AppCommunityModule'
|
||||
loadChildren: () => import('./components/cloud/community/community.module').then(m => m.AppCommunityModule)
|
||||
},
|
||||
{
|
||||
path: ':appName',
|
||||
@@ -231,7 +239,7 @@ export const appRoutes: Routes = [
|
||||
},
|
||||
{
|
||||
path: 'node-selector',
|
||||
loadChildren: 'app/components/content-node-selector/content-node-selector.module#AppContentNodeSelectorModule'
|
||||
loadChildren: () => import('./components/content-node-selector/content-node-selector.module').then(m => m.AppContentNodeSelectorModule)
|
||||
},
|
||||
{
|
||||
path: 'confirm-dialog',
|
||||
@@ -239,22 +247,37 @@ export const appRoutes: Routes = [
|
||||
},
|
||||
{
|
||||
path: 'settings-layout',
|
||||
loadChildren: 'app/components/settings/settings.module#AppSettingsModule'
|
||||
loadChildren: () => import('./components/settings/settings.module').then(m => m.AppSettingsModule)
|
||||
},
|
||||
{
|
||||
path: 'trashcan',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/trashcan/trashcan.module#AppTrashcanModule'
|
||||
loadChildren: () => import('./components/trashcan/trashcan.module').then(m => m.AppTrashcanModule)
|
||||
},
|
||||
{
|
||||
path: 'files',
|
||||
component: FilesComponent,
|
||||
canActivate: [AuthGuardEcm]
|
||||
},
|
||||
{
|
||||
path: 'filtered-search',
|
||||
component: FilteredSearchComponent,
|
||||
canActivate: [AuthGuardEcm]
|
||||
},
|
||||
{
|
||||
path: 'filtered-search/:id',
|
||||
component: FilteredSearchComponent,
|
||||
canActivate: [AuthGuardEcm]
|
||||
},
|
||||
{
|
||||
path: 'filtered-search/:id/display/:mode',
|
||||
component: FilteredSearchComponent,
|
||||
canActivate: [AuthGuardEcm]
|
||||
},
|
||||
{
|
||||
path: 'extensions/document-list/presets',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: './components/document-list/extension-presets/extension-presets.module#ExtensionPresetsModule'
|
||||
loadChildren: () => import('./components/document-list/extension-presets/extension-presets.module').then(m => m.ExtensionPresetsModule)
|
||||
},
|
||||
{
|
||||
path: 'files/:id',
|
||||
@@ -269,16 +292,16 @@ export const appRoutes: Routes = [
|
||||
{
|
||||
path: 'dl-custom-sources',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/files/custom-sources.module#AppCustomSourcesModule'
|
||||
loadChildren: () => import('./components/files/custom-sources.module').then(m => m.AppCustomSourcesModule)
|
||||
|
||||
},
|
||||
{
|
||||
path: 'datatable',
|
||||
loadChildren: 'app/components/datatable/datatable.module#AppDataTableModule'
|
||||
loadChildren: () => import('./components/datatable/datatable.module').then(m => m.AppDataTableModule)
|
||||
},
|
||||
{
|
||||
path: 'datatable/dnd',
|
||||
loadChildren: './components/datatable/drag-and-drop/datatable-dnd.module#AppDataTableDndModule'
|
||||
loadChildren: () => import('./components/datatable/drag-and-drop/datatable-dnd.module').then(m => m.AppDataTableDndModule)
|
||||
},
|
||||
{
|
||||
path: 'search',
|
||||
@@ -352,17 +375,17 @@ export const appRoutes: Routes = [
|
||||
{
|
||||
path: 'webscript',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/webscript/webscript.module#AppWebScriptModule'
|
||||
loadChildren: () => import('./components/webscript/webscript.module').then(m => m.AppWebScriptModule)
|
||||
},
|
||||
{
|
||||
path: 'tag',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/tag/tag.module#AppTagModule'
|
||||
loadChildren: () => import('./components/tag/tag.module').then(m => m.AppTagModule)
|
||||
},
|
||||
{
|
||||
path: 'social',
|
||||
canActivate: [AuthGuardEcm],
|
||||
loadChildren: 'app/components/social/social.module#AppSocialModule'
|
||||
loadChildren: () => import('./components/social/social.module').then(m => m.AppSocialModule)
|
||||
},
|
||||
{
|
||||
path: 'permissions/:id',
|
||||
@@ -376,11 +399,11 @@ export const appRoutes: Routes = [
|
||||
},
|
||||
{
|
||||
path: 'about',
|
||||
loadChildren: 'app/components/about/about.module#AppAboutModule'
|
||||
loadChildren: () => import('./components/about/about.module').then(m => m.AppAboutModule)
|
||||
},
|
||||
{
|
||||
path: 'icons',
|
||||
loadChildren: './components/icons/icons.module#AppIconsModule'
|
||||
loadChildren: () => import('./components/icons/icons.module').then(m => m.AppIconsModule)
|
||||
},
|
||||
{ path: 'form-cloud', component: FormCloudDemoComponent },
|
||||
{ path: 'form', component: FormComponent },
|
||||
@@ -397,11 +420,11 @@ export const appRoutes: Routes = [
|
||||
},
|
||||
{
|
||||
path: 'datatable-lazy',
|
||||
loadChildren: 'app/components/lazy-loading/lazy-loading.module#LazyLoadingModule'
|
||||
loadChildren: () => import('./components/lazy-loading/lazy-loading.module').then(m => m.LazyLoadingModule)
|
||||
},
|
||||
{
|
||||
path: 'copy-content',
|
||||
loadChildren: 'app/components/datatable/copy-content/datatable.module#AppDataTableCopyModule'
|
||||
loadChildren: () => import('./components/datatable/copy-content/datatable.module').then(m => m.AppDataTableCopyModule)
|
||||
},
|
||||
{
|
||||
path: 'template-list',
|
||||
@@ -410,12 +433,12 @@ export const appRoutes: Routes = [
|
||||
{
|
||||
path: 'task-list',
|
||||
canActivate: [AuthGuardBpm],
|
||||
loadChildren: 'app/components/task-list-demo/task-list.module#AppTaskListModule'
|
||||
loadChildren: () => import('./components/task-list-demo/task-list.module').then(m => m.AppTaskListModule)
|
||||
},
|
||||
{
|
||||
path: 'process-list',
|
||||
canActivate: [AuthGuardBpm],
|
||||
loadChildren: 'app/components/process-list-demo/process-list.module#AppProcessListModule'
|
||||
loadChildren: () => import('./components/process-list-demo/process-list.module').then(m => m.AppProcessListModule)
|
||||
},
|
||||
{
|
||||
path: 'error/no-authorization',
|
||||
@@ -443,5 +466,3 @@ export const appRoutes: Routes = [
|
||||
redirectTo: 'error/404'
|
||||
}
|
||||
];
|
||||
|
||||
export const routing: ModuleWithProviders = RouterModule.forRoot(appRoutes, { initialNavigation: true });
|
||||
|
||||
@@ -1,12 +1,11 @@
|
||||
<adf-about-github-link
|
||||
[url]="url"
|
||||
[version]="version">
|
||||
</adf-about-github-link>
|
||||
<adf-about-github-link [application]="application" [url]="url" [version]="version"></adf-about-github-link>
|
||||
|
||||
<adf-about-product-version>
|
||||
</adf-about-product-version>
|
||||
<adf-about-server-settings></adf-about-server-settings>
|
||||
|
||||
<adf-about-product-version> </adf-about-product-version>
|
||||
|
||||
<adf-about-application-modules
|
||||
[dependencies]="dependencies"
|
||||
[showExtensions]="showExtensions">
|
||||
[showExtensions]="showExtensions"
|
||||
>
|
||||
</adf-about-application-modules>
|
||||
|
||||
@@ -15,22 +15,32 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Component } from '@angular/core';
|
||||
import { name, version, commit, dependencies } from '../../../../../package.json';
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import {
|
||||
name,
|
||||
version,
|
||||
commit,
|
||||
dependencies
|
||||
} from '../../../../../package.json';
|
||||
import { AppConfigService } from '@alfresco/adf-core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-about-page',
|
||||
templateUrl: './about.component.html',
|
||||
styleUrls: ['about.component.scss']
|
||||
})
|
||||
export class AboutComponent {
|
||||
|
||||
export class AboutComponent implements OnInit {
|
||||
url = `https://github.com/Alfresco/${name}/commits/${commit}`;
|
||||
version = version;
|
||||
dependencies = dependencies;
|
||||
showExtensions = true;
|
||||
application = '';
|
||||
|
||||
constructor() {
|
||||
constructor(private appConfigService: AppConfigService) {}
|
||||
|
||||
ngOnInit() {
|
||||
this.application = this.appConfigService.get<string>(
|
||||
'application.name'
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes)
|
||||
],
|
||||
declarations: [AboutComponent]
|
||||
|
||||
@@ -40,6 +40,7 @@ export class AppLayoutComponent implements OnInit, OnDestroy {
|
||||
]
|
||||
},
|
||||
{ href: '/files', icon: 'folder_open', title: 'APP_LAYOUT.CONTENT_SERVICES' },
|
||||
{ href: '/filtered-search', icon: 'rowing', title: 'APP_LAYOUT.FILTERED_SEARCH' },
|
||||
{ href: '/breadcrumb', icon: 'label', title: 'APP_LAYOUT.BREADCRUMB' },
|
||||
{ href: '/notifications', icon: 'alarm', title: 'APP_LAYOUT.NOTIFICATIONS' },
|
||||
{ href: '/card-view', icon: 'view_headline', title: 'APP_LAYOUT.CARD_VIEW' },
|
||||
|
||||
+6
-3
@@ -16,13 +16,16 @@
|
||||
*/
|
||||
|
||||
import { Component, OnDestroy, OnInit } from '@angular/core';
|
||||
import { FormFieldModel, NotificationService, CoreAutomationService, FormModel } from '@alfresco/adf-core';
|
||||
import { FormCloudService } from '@alfresco/adf-process-services-cloud';
|
||||
import { FormFieldModel, NotificationService, CoreAutomationService, FormModel, FormRenderingService } from '@alfresco/adf-core';
|
||||
import { FormCloudService, CloudFormRenderingService } from '@alfresco/adf-process-services-cloud';
|
||||
import { Subscription } from 'rxjs';
|
||||
|
||||
@Component({
|
||||
templateUrl: 'cloud-form-demo.component.html',
|
||||
styleUrls: ['cloud-form-demo.component.scss']
|
||||
styleUrls: ['cloud-form-demo.component.scss'],
|
||||
providers: [
|
||||
{ provide: FormRenderingService, useClass: CloudFormRenderingService }
|
||||
]
|
||||
})
|
||||
export class FormCloudDemoComponent implements OnInit, OnDestroy {
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
ContentModule.forChild()
|
||||
],
|
||||
|
||||
@@ -40,7 +40,7 @@ import { takeUntil } from 'rxjs/operators';
|
||||
})
|
||||
export class CardViewComponent implements OnInit, OnDestroy {
|
||||
|
||||
@ViewChild('console') console: ElementRef;
|
||||
@ViewChild('console', { static: true }) console: ElementRef;
|
||||
|
||||
isEditable = true;
|
||||
properties: any;
|
||||
|
||||
@@ -31,7 +31,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes)
|
||||
],
|
||||
declarations: [CardViewComponent]
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { Params } from '@angular/router/src/shared';
|
||||
import { ActivatedRoute, Params } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
selector: 'app-cloud-viewer',
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@
|
||||
[id]="editedFilter.processInstanceId"
|
||||
[status]="editedFilter.status"
|
||||
[name]="editedFilter.processName"
|
||||
[businessKey]="editedFilter.businessKey"
|
||||
[businessKey]="editedFilter['businessKey']"
|
||||
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
|
||||
[lastModifiedTo]="editedFilter.lastModifiedTo"
|
||||
[sorting]="sortArray"
|
||||
|
||||
+1
-1
@@ -50,7 +50,7 @@ export class CommunityProcessesCloudDemoComponent implements OnInit, OnDestroy {
|
||||
selectedRow: any;
|
||||
multiselect: boolean;
|
||||
selectionMode: string;
|
||||
selectedRows: string[] = [];
|
||||
selectedRows: any[] = [];
|
||||
testingMode: boolean;
|
||||
processFilterProperties: any = { filterProperties: [], sortProperties: [], actions: [] };
|
||||
|
||||
|
||||
+1
-1
@@ -34,7 +34,7 @@ export class CommunityStartProcessCloudDemoComponent implements OnInit {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.processName = this.appConfig.get<string>('adf-start-process.name');
|
||||
this.processName = this.appConfig.get<string>('adf-start-process-cloud.name');
|
||||
}
|
||||
|
||||
onStartProcessSuccess() {
|
||||
|
||||
@@ -73,7 +73,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
ProcessServicesCloudModule,
|
||||
RouterModule.forChild(routes),
|
||||
AppCloudSharedModule,
|
||||
|
||||
@@ -6,14 +6,14 @@
|
||||
<mat-card-content>
|
||||
<br>
|
||||
<mat-radio-group (change)="onChangePeopleMode($event)">
|
||||
<mat-radio-button checked="true" class="app-people-single-mode" data-automation-id="app-people-single-mode" value="single">{{
|
||||
<mat-radio-button [checked]="true" class="app-people-single-mode" data-automation-id="app-people-single-mode" value="single">{{
|
||||
'PEOPLE_GROUPS_CLOUD.SINGLE' | translate }}</mat-radio-button>
|
||||
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-people-multiple-mode" value="multiple">{{
|
||||
'PEOPLE_GROUPS_CLOUD.MULTI' | translate }}</mat-radio-button>
|
||||
</mat-radio-group>
|
||||
<div class="app-people-control-options">
|
||||
<mat-radio-group (change)="onChangePeopleFilterMode($event)">
|
||||
<mat-radio-button checked="true" class="app-people-single-mode" value="appName">{{
|
||||
<mat-radio-button [checked]="true" class="app-people-single-mode" value="appName">{{
|
||||
'PEOPLE_GROUPS_CLOUD.APP_FILTER_MODE' | translate }}</mat-radio-button>
|
||||
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-people-filter-role" value="role">{{
|
||||
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
|
||||
@@ -77,14 +77,14 @@
|
||||
<mat-card-content>
|
||||
<br>
|
||||
<mat-radio-group (change)="onChangeGroupsMode($event)">
|
||||
<mat-radio-button checked="true" class="app-people-single-mode" data-automation-id="app-group-single-mode" value="single">{{
|
||||
<mat-radio-button [checked]="true" class="app-people-single-mode" data-automation-id="app-group-single-mode" value="single">{{
|
||||
'PEOPLE_GROUPS_CLOUD.SINGLE' | translate }}</mat-radio-button>
|
||||
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-group-multiple-mode" value="multiple">{{
|
||||
'PEOPLE_GROUPS_CLOUD.MULTI' | translate }}</mat-radio-button>
|
||||
</mat-radio-group>
|
||||
<div class="app-groups-control-options">
|
||||
<mat-radio-group (change)="onChangeGroupsFilterMode($event)">
|
||||
<mat-radio-button checked="true" class="app-people-single-mode" value="appName">{{
|
||||
<mat-radio-button [checked]="true" class="app-people-single-mode" value="appName">{{
|
||||
'PEOPLE_GROUPS_CLOUD.APP_FILTER_MODE' | translate }}</mat-radio-button>
|
||||
<mat-radio-button class="app-people-multiple-mode" data-automation-id="app-group-filter-role" value="role">{{
|
||||
'PEOPLE_GROUPS_CLOUD.ROLE_FILTER_MODE' | translate }}</mat-radio-button>
|
||||
|
||||
@@ -17,7 +17,8 @@
|
||||
|
||||
import { Component, ViewEncapsulation } from '@angular/core';
|
||||
import { ComponentSelectionMode } from '@alfresco/adf-process-services-cloud';
|
||||
import { MatRadioChange, MatCheckboxChange } from '@angular/material';
|
||||
import { MatCheckboxChange } from '@angular/material/checkbox';
|
||||
import { MatRadioChange } from '@angular/material/radio';
|
||||
import { IdentityGroupModel, IdentityUserModel } from '@alfresco/adf-core';
|
||||
|
||||
@Component({
|
||||
|
||||
@@ -15,11 +15,12 @@
|
||||
[appName]="editedFilter.appName"
|
||||
[initiator]="editedFilter.initiator"
|
||||
[processDefinitionId]="editedFilter.processDefinitionId"
|
||||
[processDefinitionName]="editedFilter.processDefinitionName"
|
||||
[processDefinitionKey]="editedFilter.processDefinitionKey"
|
||||
[id]="editedFilter.processInstanceId"
|
||||
[status]="editedFilter.status"
|
||||
[name]="editedFilter.processName"
|
||||
[businessKey]="editedFilter.businessKey"
|
||||
[businessKey]="editedFilter['businessKey']"
|
||||
[lastModifiedFrom]="editedFilter.lastModifiedFrom"
|
||||
[lastModifiedTo]="editedFilter.lastModifiedTo"
|
||||
[sorting]="sortArray"
|
||||
|
||||
@@ -54,7 +54,7 @@ export class ProcessesCloudDemoComponent implements OnInit, OnDestroy {
|
||||
selectedRow: any;
|
||||
multiselect: boolean;
|
||||
selectionMode: string;
|
||||
selectedRows: string[] = [];
|
||||
selectedRows: any[] = [];
|
||||
testingMode: boolean;
|
||||
actionMenu: boolean;
|
||||
contextMenu: boolean;
|
||||
|
||||
@@ -18,14 +18,17 @@
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { CloudSettingsComponent } from './cloud-settings.component';
|
||||
import { MatDialogModule, MatInputModule, MatSelectModule, MatSlideToggleModule } from '@angular/material';
|
||||
import { MatDialogModule } from '@angular/material/dialog';
|
||||
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: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
MatDialogModule,
|
||||
MatInputModule,
|
||||
MatSelectModule,
|
||||
|
||||
@@ -17,13 +17,17 @@
|
||||
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { NotificationService, AppConfigService } from '@alfresco/adf-core';
|
||||
import { NotificationService, AppConfigService, FormRenderingService } from '@alfresco/adf-core';
|
||||
import { CloudLayoutService } from './services/cloud-layout.service';
|
||||
import { PreviewService } from 'app/services/preview.service';
|
||||
import { PreviewService } from '../../services/preview.service';
|
||||
import { CloudFormRenderingService } from '@alfresco/adf-process-services-cloud';
|
||||
|
||||
@Component({
|
||||
templateUrl: './start-process-cloud-demo.component.html',
|
||||
styleUrls: ['./start-process-cloud-demo.component.scss']
|
||||
styleUrls: ['./start-process-cloud-demo.component.scss'],
|
||||
providers: [
|
||||
{ provide: FormRenderingService, useClass: CloudFormRenderingService }
|
||||
]
|
||||
})
|
||||
export class StartProcessCloudDemoComponent implements OnInit {
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@ import { Component, ViewChild } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { NotificationService } from '@alfresco/adf-core';
|
||||
import { TaskHeaderCloudComponent } from '@alfresco/adf-process-services-cloud';
|
||||
import { PreviewService } from 'app/services/preview.service';
|
||||
import { PreviewService } from '../../services/preview.service';
|
||||
|
||||
@Component({
|
||||
templateUrl: './task-details-cloud-demo.component.html',
|
||||
@@ -27,7 +27,7 @@ import { PreviewService } from 'app/services/preview.service';
|
||||
})
|
||||
export class TaskDetailsCloudDemoComponent {
|
||||
|
||||
@ViewChild('taskHeader')
|
||||
@ViewChild('taskHeader', { static: true })
|
||||
taskHeader: TaskHeaderCloudComponent;
|
||||
|
||||
taskId: string;
|
||||
|
||||
@@ -24,7 +24,7 @@ import { FormControl } from '@angular/forms';
|
||||
styleUrls: ['./task-header-cloud-demo.component.scss']
|
||||
})
|
||||
export class TaskHeaderCloudDemoComponent {
|
||||
@ViewChild('taskHeader')
|
||||
@ViewChild('taskHeader', { static: true })
|
||||
taskHeader: TaskHeaderCloudComponent;
|
||||
|
||||
appName: string;
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
MonacoEditorModule
|
||||
],
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component } from '@angular/core';
|
||||
import { MatDialog } from '@angular/material';
|
||||
import { MatDialog } from '@angular/material/dialog';
|
||||
import { ConfirmDialogComponent } from '@alfresco/adf-content-services';
|
||||
|
||||
@Component({
|
||||
|
||||
@@ -33,7 +33,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
ContentModule.forChild()
|
||||
],
|
||||
declarations: [ContentNodeSelectorComponent]
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
ContentModule.forChild()
|
||||
],
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
ContentModule.forChild()
|
||||
],
|
||||
|
||||
@@ -33,7 +33,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
ContentModule.forChild()
|
||||
],
|
||||
declarations: [DataTableDnDComponent]
|
||||
|
||||
+2
-5
@@ -34,17 +34,14 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
ContentModule.forChild(),
|
||||
ExtensionsModule.forChild()
|
||||
ExtensionsModule
|
||||
],
|
||||
declarations: [
|
||||
ExtensionPresetsComponent,
|
||||
NameColumnComponent
|
||||
],
|
||||
entryComponents: [
|
||||
NameColumnComponent
|
||||
]
|
||||
})
|
||||
export class ExtensionPresetsModule {
|
||||
|
||||
@@ -108,7 +108,8 @@
|
||||
<mat-card>
|
||||
<mat-card-content>
|
||||
<adf-version-manager [node]="node"
|
||||
(uploadError)="uploadError($event)">
|
||||
(uploadError)="onUploadError($event)"
|
||||
(viewVersion)="onViewVersion($event)">
|
||||
</adf-version-manager>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
@@ -318,6 +319,7 @@
|
||||
<adf-viewer
|
||||
[blobFile]="content"
|
||||
[nodeId]="nodeId"
|
||||
[versionId]="versionId"
|
||||
[showRightSidebar]="showRightSidebar"
|
||||
[showLeftSidebar]="showLeftSidebar"
|
||||
[allowGoBack]="allowGoBack"
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
|
||||
import { ActivatedRoute, Router, PRIMARY_OUTLET } from '@angular/router';
|
||||
import { ContentService, AllowableOperationsEnum, PermissionsEnum, NodesApiService } from '@alfresco/adf-core';
|
||||
import { MatSnackBar } from '@angular/material';
|
||||
import { MatSnackBar } from '@angular/material/snack-bar';
|
||||
import { PreviewService } from '../../services/preview.service';
|
||||
|
||||
@Component({
|
||||
@@ -30,6 +30,7 @@ import { PreviewService } from '../../services/preview.service';
|
||||
export class FileViewComponent implements OnInit {
|
||||
|
||||
nodeId: string = null;
|
||||
versionId: string = null;
|
||||
displayEmptyMetadata = false;
|
||||
expanded: boolean;
|
||||
multi = false;
|
||||
@@ -72,6 +73,7 @@ export class FileViewComponent implements OnInit {
|
||||
ngOnInit() {
|
||||
this.route.params.subscribe((params) => {
|
||||
const id = params.nodeId;
|
||||
this.versionId = params.versionId;
|
||||
if (id) {
|
||||
this.nodeApiService.getNode(id).subscribe(
|
||||
(node) => {
|
||||
@@ -92,6 +94,10 @@ export class FileViewComponent implements OnInit {
|
||||
});
|
||||
}
|
||||
|
||||
onViewVersion(versionId: string) {
|
||||
this.preview.showResource(this.nodeId, versionId);
|
||||
}
|
||||
|
||||
onViewerVisibilityChanged() {
|
||||
const primaryUrl = this.router.parseUrl(this.router.url).root.children[PRIMARY_OUTLET].toString();
|
||||
this.router.navigateByUrl(primaryUrl);
|
||||
|
||||
@@ -33,7 +33,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
InfoDrawerModule,
|
||||
ContentDirectiveModule,
|
||||
ContentMetadataModule,
|
||||
|
||||
@@ -27,7 +27,7 @@ export class CustomSourcesComponent {
|
||||
@Input()
|
||||
selectedSource = '-recent-';
|
||||
|
||||
@ViewChild('customSourcesDocumentList')
|
||||
@ViewChild('customSourcesDocumentList', { static: true })
|
||||
documentList: DocumentListComponent;
|
||||
|
||||
sources = [
|
||||
|
||||
@@ -33,7 +33,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
ContentModule.forChild()
|
||||
],
|
||||
declarations: [CustomSourcesComponent]
|
||||
|
||||
@@ -41,7 +41,8 @@
|
||||
[versioning]="versioning"
|
||||
[adf-check-allowable-operation]="'create'"
|
||||
[adf-nodes]="disableDragArea ? getCurrentDocumentListNode() : []"
|
||||
(beginUpload)="onBeginUpload($event)">
|
||||
(beginUpload)="onBeginUpload($event)"
|
||||
(updateFileVersion)="onUploadNewVersion($event)">
|
||||
<div *ngIf="errorMessage" class="app-error-message">
|
||||
<button (click)="resetError()" mat-icon-button>
|
||||
<mat-icon>highlight_off</mat-icon>
|
||||
@@ -199,13 +200,6 @@
|
||||
<mat-icon>create</mat-icon>
|
||||
<span>{{ 'DOCUMENT_LIST.TOOLBAR.EDIT_FOLDER' | translate }}</span>
|
||||
</button>
|
||||
<button mat-menu-item
|
||||
[disabled]="!hasSelection(documentList.selection)"
|
||||
title="Download"
|
||||
(click)="downloadNodes(documentList.selection)">
|
||||
<mat-icon>get_app</mat-icon>
|
||||
<span>{{ 'DOCUMENT_LIST.TOOLBAR.DOWNLOAD' | translate }}</span>
|
||||
</button>
|
||||
<button mat-menu-item
|
||||
adf-check-allowable-operation="delete"
|
||||
[adf-nodes]="documentList.selection"
|
||||
@@ -243,6 +237,20 @@
|
||||
(folderChange)="onFolderChange($event)"
|
||||
(permissionError)="handlePermissionError($event)"
|
||||
(name-click)="documentList.onNodeDblClick($event.detail?.node)">
|
||||
<adf-custom-header-filter-template *ngIf="enableCustomHeaderFilter">
|
||||
<ng-template let-col>
|
||||
<adf-search-header [col]="col"
|
||||
[value]="paramValues? paramValues[col.key] : null"
|
||||
[currentFolderNodeId]="currentFolderId"
|
||||
[sorting]="filterSorting"
|
||||
[maxItems]="pagination?.maxItems"
|
||||
[skipCount]="pagination?.skipCount"
|
||||
(update)="onFilterUpdate($event)"
|
||||
(clear)="onAllFilterCleared()"
|
||||
(selection)="onFilterSelected($event)">
|
||||
</adf-search-header>
|
||||
</ng-template>
|
||||
</adf-custom-header-filter-template>
|
||||
<adf-custom-no-permission-template *ngIf="enableCustomPermissionMessage">
|
||||
<h1>You don't have permissions</h1>
|
||||
</adf-custom-no-permission-template>
|
||||
@@ -262,6 +270,7 @@
|
||||
<data-column
|
||||
*ngIf="showNameColumn && hyperlinkNavigation"
|
||||
key="name"
|
||||
sortingKey="name"
|
||||
class="app-ellipsis-cell"
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.DISPLAY_NAME' | translate}}"
|
||||
[formatTooltip]="getNodeNameTooltip">
|
||||
@@ -272,6 +281,7 @@
|
||||
<data-column
|
||||
*ngIf="showNameColumn && !hyperlinkNavigation"
|
||||
key="name"
|
||||
sortingKey="name"
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.DISPLAY_NAME' | translate}}"
|
||||
[formatTooltip]="getNodeNameTooltip"
|
||||
class="app-ellipsis-cell adf-expand-cell-5">
|
||||
@@ -289,6 +299,7 @@
|
||||
key="content.sizeInBytes"
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.SIZE' | translate}}"
|
||||
type="fileSize"
|
||||
sortingKey="sizeInBytes"
|
||||
class="app-desktop-only adf-ellipsis-cell">
|
||||
</data-column>
|
||||
<data-column
|
||||
@@ -315,12 +326,15 @@
|
||||
<data-column
|
||||
class="app-full-width adf-ellipsis-cell adf-desktop-only"
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.NODE_ID' | translate}}"
|
||||
[sortable]="false"
|
||||
key="id">
|
||||
</data-column>
|
||||
|
||||
<data-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.IS_LOCKED' | translate}}"
|
||||
key="id"
|
||||
key="lock"
|
||||
[focus]="false"
|
||||
[sortable]="false"
|
||||
class="app-desktop-only adf-ellipsis-cell">
|
||||
<ng-template let-entry="$implicit">
|
||||
<button mat-icon-button [adf-node-lock]="entry.row.node.entry" class="app-lock-button">
|
||||
@@ -332,11 +346,13 @@
|
||||
<data-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.CREATED_BY' | translate}}"
|
||||
key="createdByUser.displayName"
|
||||
sortingKey="createdByUser"
|
||||
class="app-desktop-only adf-ellipsis-cell">
|
||||
</data-column>
|
||||
<data-column
|
||||
title="{{'DOCUMENT_LIST.COLUMNS.CREATED' | translate}}"
|
||||
key="createdAt"
|
||||
sortingKey="createdAt"
|
||||
type="date"
|
||||
[format]="enableMediumTimeFormat ? 'medium' : 'timeAgo'"
|
||||
class="app-desktop-only adf-ellipsis-cell">
|
||||
@@ -446,7 +462,7 @@
|
||||
<adf-infinite-pagination
|
||||
[hidden]="!infiniteScrolling"
|
||||
[target]="documentList"
|
||||
[loading]="documentList.infiniteLoading">
|
||||
[loading]="documentList.loading">
|
||||
{{ 'ADF-DOCUMENT-LIST.LAYOUT.LOAD_MORE' | translate }}
|
||||
</adf-infinite-pagination>
|
||||
</adf-upload-drag-area>
|
||||
@@ -528,7 +544,7 @@
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<mat-slide-toggle [color]="'primary'" [(ngModel)]="multiselect">
|
||||
<mat-slide-toggle data-automation-id="multiSelectToggle" [color]="'primary'" [(ngModel)]="multiselect">
|
||||
{{'DOCUMENT_LIST.MULTISELECT_CHECKBOXES' | translate}}
|
||||
</mat-slide-toggle>
|
||||
</section>
|
||||
@@ -565,8 +581,8 @@
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<mat-slide-toggle id="adf-document-list-enable-drop-files" [color]="'primary'" [(ngModel)]="allowDropFiles"
|
||||
(click)="toggleAllowDropFiles()">
|
||||
<mat-slide-toggle id="adf-document-list-enable-drop-files" [color]="'primary'" [checked]="allowDropFiles"
|
||||
(change)="toggleAllowDropFiles()">
|
||||
{{'DOCUMENT_LIST.ALLOW_DROP_FILES' | translate}}
|
||||
</mat-slide-toggle>
|
||||
</section>
|
||||
|
||||
@@ -21,15 +21,15 @@ import {
|
||||
} from '@angular/core';
|
||||
import { Location } from '@angular/common';
|
||||
|
||||
import { MatDialog } from '@angular/material';
|
||||
import { MatDialog } from '@angular/material/dialog';
|
||||
import { ActivatedRoute, Params, Router } from '@angular/router';
|
||||
import { MinimalNodeEntity, NodePaging, Pagination, MinimalNodeEntryEntity, SiteEntry, SearchEntry } from '@alfresco/js-api';
|
||||
import {
|
||||
AlfrescoApiService, AuthenticationService, AppConfigService, AppConfigValues, ContentService, TranslationService,
|
||||
FileUploadEvent, FolderCreatedEvent, LogService, NotificationService,
|
||||
AlfrescoApiService, AuthenticationService, AppConfigService, AppConfigValues, ContentService, TranslationService, FolderCreatedEvent, LogService, NotificationService,
|
||||
UploadService, DataRow, UserPreferencesService,
|
||||
PaginationComponent, FormValues, DisplayMode, InfinitePaginationComponent, HighlightDirective,
|
||||
SharedLinksApiService
|
||||
PaginationComponent, FormValues, DisplayMode, ShowHeaderMode, InfinitePaginationComponent, HighlightDirective,
|
||||
SharedLinksApiService,
|
||||
FormRenderingService
|
||||
} from '@alfresco/adf-core';
|
||||
|
||||
import {
|
||||
@@ -41,20 +41,23 @@ import {
|
||||
ContentMetadataService
|
||||
} from '@alfresco/adf-content-services';
|
||||
|
||||
import { SelectAppsDialogComponent } from '@alfresco/adf-process-services';
|
||||
import { SelectAppsDialogComponent, ProcessFormRenderingService } from '@alfresco/adf-process-services';
|
||||
|
||||
import { VersionManagerDialogAdapterComponent } from './version-manager-dialog-adapter.component';
|
||||
import { MetadataDialogAdapterComponent } from './metadata-dialog-adapter.component';
|
||||
import { Subject } from 'rxjs';
|
||||
import { PreviewService } from '../../services/preview.service';
|
||||
import { debounceTime, takeUntil } from 'rxjs/operators';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
|
||||
const DEFAULT_FOLDER_TO_SHOW = '-my-';
|
||||
|
||||
@Component({
|
||||
selector: 'app-files-component',
|
||||
templateUrl: './files.component.html',
|
||||
styleUrls: ['./files.component.scss']
|
||||
styleUrls: ['./files.component.scss'],
|
||||
providers: [
|
||||
{ provide: FormRenderingService, useClass: ProcessFormRenderingService }
|
||||
]
|
||||
})
|
||||
export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
|
||||
@@ -66,7 +69,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
showVersions = false;
|
||||
allowDropFiles = true;
|
||||
displayMode = DisplayMode.List;
|
||||
includeFields = ['isFavorite', 'isLocked', 'aspectNames'];
|
||||
includeFields = ['isFavorite', 'isLocked', 'aspectNames', 'definition'];
|
||||
|
||||
baseShareUrl = (
|
||||
this.appConfig.get<string>(AppConfigValues.BASESHAREURL) ||
|
||||
@@ -75,9 +78,9 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
toolbarColor = 'default';
|
||||
|
||||
selectionModes = [
|
||||
{ value: 'none', viewValue: 'None' },
|
||||
{ value: 'single', viewValue: 'Single' },
|
||||
{ value: 'multiple', viewValue: 'Multiple' }
|
||||
{value: 'none', viewValue: 'None'},
|
||||
{value: 'single', viewValue: 'Single'},
|
||||
{value: 'multiple', viewValue: 'Multiple'}
|
||||
];
|
||||
|
||||
// The identifier of a node. You can also use one of these well-known aliases: -my- | -shared- | -root-
|
||||
@@ -89,10 +92,10 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
processId;
|
||||
|
||||
@Input()
|
||||
sorting = ['name', 'asc'];
|
||||
sorting = ['name', 'ASC'];
|
||||
|
||||
@Input()
|
||||
sortingMode = 'client';
|
||||
sortingMode = 'server';
|
||||
|
||||
@Input()
|
||||
showRecentFiles = true;
|
||||
@@ -104,7 +107,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
showSettingsPanel = true;
|
||||
|
||||
@Input()
|
||||
showHeader = true;
|
||||
showHeader: string = ShowHeaderMode.Always;
|
||||
|
||||
@Input()
|
||||
selectionMode = 'multiple';
|
||||
@@ -157,6 +160,18 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
@Input()
|
||||
searchTerm = '';
|
||||
|
||||
@Input()
|
||||
navigationRoute = '/files';
|
||||
|
||||
@Input()
|
||||
enableCustomHeaderFilter = false;
|
||||
|
||||
@Input()
|
||||
paramValues: Map<any, any> = null;
|
||||
|
||||
@Input()
|
||||
filterSorting: string = null;
|
||||
|
||||
@Output()
|
||||
documentListReady: EventEmitter<any> = new EventEmitter();
|
||||
|
||||
@@ -178,13 +193,13 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
@Output()
|
||||
deleteElementSuccess: EventEmitter<any> = new EventEmitter();
|
||||
|
||||
@ViewChild('documentList')
|
||||
@ViewChild('documentList', { static: true })
|
||||
documentList: DocumentListComponent;
|
||||
|
||||
@ViewChild('standardPagination')
|
||||
standardPagination: PaginationComponent;
|
||||
|
||||
@ViewChild(InfinitePaginationComponent)
|
||||
@ViewChild(InfinitePaginationComponent, { static: true })
|
||||
infinitePaginationComponent: InfinitePaginationComponent;
|
||||
|
||||
@ViewChild(HighlightDirective)
|
||||
@@ -195,6 +210,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
stickyHeader: boolean;
|
||||
warnOnMultipleUploads = false;
|
||||
thumbnails = false;
|
||||
|
||||
enableCustomPermissionMessage = false;
|
||||
enableMediumTimeFormat = false;
|
||||
displayEmptyMetadata = false;
|
||||
@@ -237,6 +253,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
}
|
||||
|
||||
toggleAllowDropFiles() {
|
||||
this.allowDropFiles = !this.allowDropFiles;
|
||||
this.documentList.reload();
|
||||
}
|
||||
|
||||
@@ -260,17 +277,6 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
});
|
||||
}
|
||||
|
||||
this.uploadService.fileUploadComplete
|
||||
.pipe(
|
||||
debounceTime(300),
|
||||
takeUntil(this.onDestroy$)
|
||||
)
|
||||
.subscribe(value => this.onFileUploadEvent(value));
|
||||
|
||||
this.uploadService.fileUploadDeleted
|
||||
.pipe(takeUntil(this.onDestroy$))
|
||||
.subscribe(value => this.onFileUploadEvent(value));
|
||||
|
||||
this.contentService.folderCreated
|
||||
.pipe(takeUntil(this.onDestroy$))
|
||||
.subscribe(value => this.onFolderCreated(value));
|
||||
@@ -322,7 +328,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
|
||||
getCurrentDocumentListNode(): MinimalNodeEntity[] {
|
||||
if (this.documentList.folderNode) {
|
||||
return [{ entry: this.documentList.folderNode }];
|
||||
return [{entry: this.documentList.folderNode}];
|
||||
} else {
|
||||
return [];
|
||||
}
|
||||
@@ -338,12 +344,6 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
this.errorMessage = null;
|
||||
}
|
||||
|
||||
onFileUploadEvent(event: FileUploadEvent) {
|
||||
if (event && event.file.options.parentId === this.documentList.currentFolderId) {
|
||||
this.documentList.reload();
|
||||
}
|
||||
}
|
||||
|
||||
onFolderCreated(event: FolderCreatedEvent) {
|
||||
this.logService.log('FOLDER CREATED');
|
||||
this.logService.log(event);
|
||||
@@ -360,7 +360,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
}
|
||||
|
||||
onFolderChange($event) {
|
||||
this.router.navigate(['/files', $event.value.id, 'display', this.displayMode]);
|
||||
this.router.navigate([this.navigationRoute, $event.value.id, 'display', this.displayMode]);
|
||||
}
|
||||
|
||||
handlePermissionError(event: any) {
|
||||
@@ -427,7 +427,7 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
|
||||
if (this.contentService.hasAllowableOperations(contentEntry, 'update')) {
|
||||
this.dialog.open(VersionManagerDialogAdapterComponent, {
|
||||
data: { contentEntry: contentEntry, showComments: showComments, allowDownload: allowDownload },
|
||||
data: {contentEntry: contentEntry, showComments: showComments, allowDownload: allowDownload},
|
||||
panelClass: 'adf-version-manager-dialog',
|
||||
width: '630px'
|
||||
});
|
||||
@@ -518,22 +518,32 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
|
||||
onChangePageSize(event: Pagination): void {
|
||||
this.preference.paginationSize = event.maxItems;
|
||||
this.pagination.maxItems = event.maxItems;
|
||||
this.pagination.skipCount = event.skipCount;
|
||||
this.changedPageSize.emit(event);
|
||||
}
|
||||
|
||||
onChangePageNumber(event: Pagination): void {
|
||||
this.pagination.maxItems = event.maxItems;
|
||||
this.pagination.skipCount = event.skipCount;
|
||||
this.changedPageNumber.emit(event);
|
||||
}
|
||||
|
||||
onNextPage(event: Pagination): void {
|
||||
this.pagination.maxItems = event.maxItems;
|
||||
this.pagination.skipCount = event.skipCount;
|
||||
this.turnedNextPage.emit(event);
|
||||
}
|
||||
|
||||
loadNextBatch(event: Pagination): void {
|
||||
this.pagination.maxItems = event.maxItems;
|
||||
this.pagination.skipCount = event.skipCount;
|
||||
this.loadNext.emit(event);
|
||||
}
|
||||
|
||||
onPrevPage(event: Pagination): void {
|
||||
this.pagination.maxItems = event.maxItems;
|
||||
this.pagination.skipCount = event.skipCount;
|
||||
this.turnedPreviousPage.emit(event);
|
||||
}
|
||||
|
||||
@@ -581,16 +591,34 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
}
|
||||
|
||||
isCustomActionDisabled(node: MinimalNodeEntity): boolean {
|
||||
if (node && node.entry && node.entry.name === 'custom') {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
return !(node && node.entry && node.entry.name === 'custom');
|
||||
}
|
||||
|
||||
runCustomAction(event: any) {
|
||||
this.logService.log(event);
|
||||
}
|
||||
|
||||
onUploadNewVersion(ev) {
|
||||
const contentEntry = ev.detail.data.node.entry;
|
||||
const showComments = this.showVersionComments;
|
||||
const allowDownload = this.allowVersionDownload;
|
||||
const newFileVersion = ev.detail.files[0].file;
|
||||
|
||||
if (this.contentService.hasAllowableOperations(contentEntry, 'update')) {
|
||||
this.dialog.open(VersionManagerDialogAdapterComponent, {
|
||||
data: {
|
||||
contentEntry: contentEntry, showComments: showComments, allowDownload: allowDownload,
|
||||
newFileVersion: newFileVersion, showComparison: true
|
||||
},
|
||||
panelClass: 'adf-version-manager-dialog',
|
||||
width: '630px'
|
||||
});
|
||||
} else {
|
||||
const translatedErrorMessage: any = this.translateService.instant('OPERATION.ERROR.PERMISSION');
|
||||
this.openSnackMessage(translatedErrorMessage);
|
||||
}
|
||||
}
|
||||
|
||||
getFileFiltering(): string {
|
||||
return this.acceptedFilesTypeShow ? this.acceptedFilesType : '*';
|
||||
}
|
||||
@@ -611,4 +639,34 @@ export class FilesComponent implements OnInit, OnChanges, OnDestroy {
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
onFilterUpdate(newNodePaging: NodePaging) {
|
||||
this.nodeResult = newNodePaging;
|
||||
}
|
||||
|
||||
onAllFilterCleared() {
|
||||
this.documentList.node = null;
|
||||
if (this.currentFolderId === '-my-') {
|
||||
this.router.navigate([this.navigationRoute, '']);
|
||||
} else {
|
||||
this.router.navigate([this.navigationRoute, this.currentFolderId, 'display', this.displayMode]);
|
||||
}
|
||||
this.documentList.reload();
|
||||
}
|
||||
|
||||
onFilterSelected(currentActiveFilters: Map<string, string>) {
|
||||
const objectFromMap = {};
|
||||
currentActiveFilters.forEach((value: any, key) => {
|
||||
let paramValue = null;
|
||||
if (value && value.from && value.to) {
|
||||
paramValue = `${value.from}||${value.to}`;
|
||||
} else {
|
||||
paramValue = value;
|
||||
}
|
||||
objectFromMap[key] = paramValue;
|
||||
});
|
||||
|
||||
this.router.navigate([], { relativeTo: this.route, queryParams: objectFromMap });
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
<app-files-component [sortingMode]="'server'"
|
||||
[showRecentFiles]="false"
|
||||
[showSitePicker]="true"
|
||||
[showSettingsPanel]="false"
|
||||
[navigationRoute]="navigationRoute"
|
||||
[currentFolderId]="currentFolderId"
|
||||
[filterSorting]="filterSorting"
|
||||
[enableCustomHeaderFilter]="true"
|
||||
[paramValues]="queryParams"
|
||||
(sorting-changed)="onSortingChanged($event)">
|
||||
</app-files-component>
|
||||
@@ -0,0 +1,54 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2019 Alfresco Software, Ltd.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Component, Optional } from '@angular/core';
|
||||
import { SEARCH_QUERY_SERVICE_TOKEN, SearchHeaderQueryBuilderService } from '@alfresco/adf-content-services';
|
||||
import { ActivatedRoute, Params } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
selector: 'app-filtered-search-component',
|
||||
templateUrl: './filtered-search.component.html',
|
||||
providers: [{ provide: SEARCH_QUERY_SERVICE_TOKEN, useClass: SearchHeaderQueryBuilderService}]
|
||||
})
|
||||
export class FilteredSearchComponent {
|
||||
|
||||
navigationRoute = '/filtered-search';
|
||||
currentFolderId = '-my-';
|
||||
|
||||
queryParams = null;
|
||||
filterSorting: string = 'name-asc';
|
||||
|
||||
constructor(@Optional() private route: ActivatedRoute) {
|
||||
|
||||
if (this.route) {
|
||||
this.route.params.forEach((params: Params) => {
|
||||
if (params['id'] && this.currentFolderId !== params['id']) {
|
||||
this.currentFolderId = params['id'];
|
||||
}
|
||||
});
|
||||
|
||||
this.route.queryParamMap.subscribe((queryMap: Params) => {
|
||||
this.queryParams = queryMap.params;
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
onSortingChanged(event) {
|
||||
this.filterSorting = event.detail.key + '-' + event.detail.direction;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component, Inject, ViewEncapsulation } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { MinimalNodeEntryEntity } from '@alfresco/js-api';
|
||||
|
||||
@Component({
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
</section>
|
||||
|
||||
<section>
|
||||
<mat-slide-toggle id="adf-version-manager-switch-download"color="primary" [(ngModel)]="allowDownload">
|
||||
<mat-slide-toggle id="adf-version-manager-switch-download" color="primary" [(ngModel)]="allowDownload">
|
||||
{{'APP.ADF_VERSION_MANAGER.ALLOW_DOWNLOAD' | translate}}
|
||||
</mat-slide-toggle>
|
||||
</section>
|
||||
@@ -18,11 +18,26 @@
|
||||
</mat-slide-toggle>
|
||||
</section>
|
||||
|
||||
<section *ngIf="newFileVersion">
|
||||
<mat-slide-toggle id="adf-version-manager-switch-comparison" color="primary" [(ngModel)]="showVersionComparison">
|
||||
{{'APP.ADF_VERSION_MANAGER.VERSION_COMPARISON' | translate}}
|
||||
</mat-slide-toggle>
|
||||
</section>
|
||||
|
||||
<section mat-dialog-content *ngIf="!readOnly">
|
||||
<adf-version-manager [node]="contentEntry" [allowDownload]="allowDownload" [showComments]="showComments" (uploadError)="uploadError($event)"></adf-version-manager>
|
||||
<adf-version-manager [node]="contentEntry"
|
||||
(uploadCancel)="hideVersionComparison($event)"
|
||||
(uploadSuccess)="hideVersionComparison($event)"
|
||||
[showVersionComparison]="showVersionComparison"
|
||||
[newFileVersion]="newFileVersion"
|
||||
[allowDownload]="allowDownload"
|
||||
[showComments]="showComments"
|
||||
(uploadError)="uploadError($event)"
|
||||
(viewVersion)="onViewVersion($event)"
|
||||
></adf-version-manager>
|
||||
</section>
|
||||
<section mat-dialog-content *ngIf="readOnly">
|
||||
<adf-version-list [node]="contentEntry" [showActions]="false" ></adf-version-list>
|
||||
<adf-version-list [node]="contentEntry" [showActions]="false"></adf-version-list>
|
||||
</section>
|
||||
|
||||
<footer mat-dialog-actions fxLayout="row" fxLayoutAlign="end center">
|
||||
|
||||
@@ -19,6 +19,7 @@ import { Component, Inject, ViewEncapsulation } from '@angular/core';
|
||||
import { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';
|
||||
import { MinimalNodeEntryEntity } from '@alfresco/js-api';
|
||||
import { MatSnackBar } from '@angular/material/snack-bar';
|
||||
import { PreviewService } from '../../services/preview.service';
|
||||
|
||||
@Component({
|
||||
templateUrl: './version-manager-dialog-adapter.component.html',
|
||||
@@ -27,24 +28,40 @@ import { MatSnackBar } from '@angular/material/snack-bar';
|
||||
export class VersionManagerDialogAdapterComponent {
|
||||
|
||||
public contentEntry: MinimalNodeEntryEntity;
|
||||
public newFileVersion: File;
|
||||
|
||||
showComments = true;
|
||||
allowDownload = true;
|
||||
readOnly = false;
|
||||
showVersionComparison = false;
|
||||
|
||||
constructor(@Inject(MAT_DIALOG_DATA) data: any,
|
||||
constructor(private previewService: PreviewService,
|
||||
@Inject(MAT_DIALOG_DATA) data: any,
|
||||
private snackBar: MatSnackBar,
|
||||
private containingDialog?: MatDialogRef<VersionManagerDialogAdapterComponent>) {
|
||||
this.contentEntry = data.contentEntry;
|
||||
this.newFileVersion = data.hasOwnProperty('newFileVersion') ? data.newFileVersion : this.newFileVersion;
|
||||
this.showComments = data.hasOwnProperty('showComments') ? data.showComments : this.showComments;
|
||||
this.allowDownload = data.hasOwnProperty('allowDownload') ? data.allowDownload : this.allowDownload;
|
||||
}
|
||||
|
||||
uploadError(errorMessage: string) {
|
||||
this.snackBar.open(errorMessage, '', { duration: 4000 });
|
||||
this.snackBar.open(errorMessage, '', {duration: 4000});
|
||||
}
|
||||
|
||||
close() {
|
||||
this.containingDialog.close();
|
||||
}
|
||||
|
||||
onViewVersion(versionId: string) {
|
||||
this.previewService.showResource(this.contentEntry.id, versionId);
|
||||
this.close();
|
||||
}
|
||||
|
||||
hideVersionComparison(isCancelled: boolean | Node) {
|
||||
if (isCancelled) {
|
||||
this.showVersionComparison = false;
|
||||
this.newFileVersion = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -16,7 +16,8 @@
|
||||
*/
|
||||
|
||||
import { Component, Inject, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
|
||||
import { FormModel, FormFieldModel, FormService, FormOutcomeEvent, NotificationService, CoreAutomationService } from '@alfresco/adf-core';
|
||||
import { FormModel, FormFieldModel, FormService, FormOutcomeEvent, NotificationService, CoreAutomationService, FormRenderingService } from '@alfresco/adf-core';
|
||||
import { ProcessFormRenderingService } from '@alfresco/adf-process-services';
|
||||
import { InMemoryFormService } from '../../services/in-memory-form.service';
|
||||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
@@ -26,7 +27,8 @@ import { takeUntil } from 'rxjs/operators';
|
||||
templateUrl: 'form.component.html',
|
||||
styleUrls: ['form.component.scss'],
|
||||
providers: [
|
||||
{ provide: FormService, useClass: InMemoryFormService }
|
||||
{ provide: FormService, useClass: InMemoryFormService },
|
||||
{ provide: FormRenderingService, useClass: ProcessFormRenderingService }
|
||||
],
|
||||
encapsulation: ViewEncapsulation.None
|
||||
})
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild()
|
||||
CoreModule
|
||||
],
|
||||
declarations: [HeaderDataComponent]
|
||||
})
|
||||
|
||||
@@ -20,6 +20,7 @@ import { Injectable, Output, EventEmitter } from '@angular/core';
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
// tslint:disable-next-line: directive-class-suffix
|
||||
export class HeaderDataService {
|
||||
|
||||
show = true;
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { MatIconRegistry } from '@angular/material';
|
||||
import { MatIconRegistry } from '@angular/material/icon';
|
||||
import { DomSanitizer } from '@angular/platform-browser';
|
||||
|
||||
@Component({
|
||||
|
||||
@@ -31,7 +31,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes)
|
||||
],
|
||||
declarations: [IconsComponent]
|
||||
|
||||
@@ -23,7 +23,7 @@ import { LazyLoadingComponent } from './lazy-loading.component';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
LazyLoadingRoutes
|
||||
],
|
||||
declarations: [
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<p class="app-toggle">
|
||||
<mat-slide-toggle
|
||||
id="switch3"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleCSRF()"
|
||||
[checked]="!disableCsrf">
|
||||
CSRF
|
||||
@@ -13,7 +13,7 @@
|
||||
<p class="app-toggle">
|
||||
<mat-slide-toggle
|
||||
id="switch4"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleFooter()"
|
||||
[checked]="showFooter">
|
||||
{{ 'LOGIN.LOGIN_FOOTER'| translate }}
|
||||
@@ -22,7 +22,7 @@
|
||||
<p class="app-toggle">
|
||||
<mat-slide-toggle
|
||||
id="adf-toggle-show-rememberme"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleRememberMe()"
|
||||
[checked]="showRememberMe">
|
||||
{{ 'LOGIN.SHOW_REMEMBERME'| translate }}
|
||||
@@ -31,7 +31,7 @@
|
||||
<p class="app-toggle">
|
||||
<mat-slide-toggle
|
||||
id="adf-toggle-show-successRoute"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleSuccessRoute()"
|
||||
[checked]="customSuccessRoute">
|
||||
{{ 'LOGIN.SHOW_SUCCESS_ROUTE'| translate }}
|
||||
@@ -51,7 +51,7 @@
|
||||
<p class="app-toggle">
|
||||
<mat-slide-toggle
|
||||
id="adf-toggle-logo"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleLogo()"
|
||||
[checked]="customLogoImage">
|
||||
{{ 'LOGIN.CUSTOM_LOGO'| translate }}
|
||||
@@ -77,13 +77,10 @@
|
||||
</a>
|
||||
|
||||
<adf-login
|
||||
#alfrescoLogin
|
||||
[successRoute]="customSuccessRouteURI"
|
||||
[logoImageUrl]="customLogoImageURL"
|
||||
[fieldsValidation]="customValidation"
|
||||
[showLoginActions]="showFooter"
|
||||
[showRememberMe]="showFooter && showRememberMe"
|
||||
(executeSubmit)="checkForm($event)"
|
||||
copyrightText="{{ 'application.copyright' | adfAppConfig }}"
|
||||
(success)="onLogin()"
|
||||
(error)="onError($event)">
|
||||
@@ -91,7 +88,7 @@
|
||||
<p>
|
||||
<mat-slide-toggle
|
||||
id="switch3-mobile"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleCSRF()"
|
||||
[checked]="!disableCsrf">
|
||||
CSRF
|
||||
@@ -100,14 +97,19 @@
|
||||
<p>
|
||||
<mat-slide-toggle
|
||||
id="switch4-mobile"
|
||||
[color]="'primary'"
|
||||
color="primary"
|
||||
(change)="toggleFooter()"
|
||||
[checked]="showFooter">
|
||||
{{ 'LOGIN.LOGIN_FOOTER'| translate }}
|
||||
</mat-slide-toggle>
|
||||
</p>
|
||||
<button type="button" mat-raised-button color="accent" class="app-mobile-setting-button" routerLink="/settings"
|
||||
data-automation-id="settings">{{ 'APP_LAYOUT.SETTINGS'| translate }}
|
||||
<button
|
||||
type="button"
|
||||
mat-raised-button
|
||||
color="accent"
|
||||
class="app-mobile-setting-button"
|
||||
routerLink="/settings"
|
||||
data-automation-id="settings">{{ 'APP_LAYOUT.SETTINGS'| translate }}
|
||||
</button>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -15,8 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Component, OnInit, ViewChild } from '@angular/core';
|
||||
import { Validators } from '@angular/forms';
|
||||
import { Component } from '@angular/core';
|
||||
import { Router } from '@angular/router';
|
||||
import { LogService } from '@alfresco/adf-core';
|
||||
|
||||
@@ -25,12 +24,8 @@ import { LogService } from '@alfresco/adf-core';
|
||||
templateUrl: './login.component.html',
|
||||
styleUrls: ['./login.component.scss']
|
||||
})
|
||||
export class LoginComponent implements OnInit {
|
||||
export class LoginComponent {
|
||||
|
||||
@ViewChild('alfrescoLogin')
|
||||
alfrescoLogin: any;
|
||||
|
||||
customValidation: any;
|
||||
customSuccessRouteURI = '';
|
||||
customLogoImageURL = './assets/images/alfresco-logo.svg';
|
||||
|
||||
@@ -39,28 +34,17 @@ export class LoginComponent implements OnInit {
|
||||
showRememberMe = true;
|
||||
customSuccessRoute = false;
|
||||
customLogoImage = false;
|
||||
customMinLength = 2;
|
||||
|
||||
constructor(private router: Router,
|
||||
private logService: LogService) {
|
||||
this.customValidation = {
|
||||
username: ['', Validators.compose([Validators.required, Validators.minLength(this.customMinLength)])],
|
||||
password: ['', Validators.required]
|
||||
};
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.alfrescoLogin.addCustomValidationError('username', 'required', 'LOGIN.MESSAGES.USERNAME-REQUIRED');
|
||||
this.alfrescoLogin.addCustomValidationError('username', 'minlength', 'LOGIN.MESSAGES.USERNAME-MIN', { minLength: this.customMinLength });
|
||||
this.alfrescoLogin.addCustomValidationError('password', 'required', 'LOGIN.MESSAGES.PASSWORD-REQUIRED');
|
||||
}
|
||||
|
||||
onLogin() {
|
||||
this.router.navigate(['/home']);
|
||||
}
|
||||
|
||||
onError($event) {
|
||||
this.logService.error($event);
|
||||
onError(err: any) {
|
||||
this.logService.error(err);
|
||||
}
|
||||
|
||||
toggleCSRF() {
|
||||
@@ -88,9 +72,4 @@ export class LoginComponent implements OnInit {
|
||||
this.customLogoImageURL = null;
|
||||
}
|
||||
}
|
||||
|
||||
checkForm(event: any) {
|
||||
const values = event.values;
|
||||
this.logService.log(values);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
ContentModule.forChild()
|
||||
],
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
import { Component, OnInit, OnDestroy } from '@angular/core';
|
||||
import { NotificationService } from '@alfresco/adf-core';
|
||||
import { MatSnackBarConfig } from '@angular/material';
|
||||
import { MatSnackBarConfig } from '@angular/material/snack-bar';
|
||||
import { FormBuilder, FormGroup, FormControl } from '@angular/forms';
|
||||
import { Subject } from 'rxjs';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
|
||||
@@ -32,7 +32,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes),
|
||||
MatButtonModule
|
||||
],
|
||||
|
||||
@@ -28,7 +28,7 @@ import { NodesApiService, NotificationService } from '@alfresco/adf-core';
|
||||
})
|
||||
export class DemoPermissionComponent implements OnInit {
|
||||
|
||||
@ViewChild('permissionList')
|
||||
@ViewChild('permissionList', { static: true })
|
||||
displayPermissionComponent: PermissionListComponent;
|
||||
|
||||
nodeId: string;
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
<div>{{ number | adfDecimalNumber : decimalValues }} </div>
|
||||
<br>
|
||||
<h3>AdfDecimalNumber Pipe - Custom locale</h3>
|
||||
<div>{{ number | adfDecimalNumber : {} : locale }} </div>
|
||||
<div>{{ number | adfDecimalNumber : null : locale }} </div>
|
||||
<br>
|
||||
<h3>AdfDecimalNumber Pipe - Custom digits config and locale</h3>
|
||||
<div>{{ number | adfDecimalNumber : decimalValues : locale }} </div>
|
||||
|
||||
@@ -31,7 +31,7 @@ const routes: Routes = [
|
||||
@NgModule({
|
||||
imports: [
|
||||
CommonModule,
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
RouterModule.forChild(routes)
|
||||
],
|
||||
declarations: [PipesComponent]
|
||||
|
||||
@@ -37,7 +37,7 @@ const routes: Routes = [
|
||||
imports: [
|
||||
CommonModule,
|
||||
RouterModule.forChild(routes),
|
||||
CoreModule.forChild(),
|
||||
CoreModule,
|
||||
ProcessModule.forChild()
|
||||
],
|
||||
declarations: [ProcessListDemoComponent]
|
||||
|
||||
+1
-2
@@ -46,8 +46,7 @@ export class CustomStencil01 extends WidgetComponent {
|
||||
|
||||
@NgModule({
|
||||
declarations: [ CustomEditorComponent, CustomStencil01 ],
|
||||
exports: [ CustomEditorComponent, CustomStencil01 ],
|
||||
entryComponents: [ CustomEditorComponent, CustomStencil01 ]
|
||||
exports: [ CustomEditorComponent, CustomStencil01 ]
|
||||
})
|
||||
export class CustomEditorsModule {
|
||||
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component, OnInit } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { Params } from '@angular/router/src/shared';
|
||||
import { ActivatedRoute, Params } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
selector: 'app-form-viewer',
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
</div>
|
||||
</adf-sidebar-action-menu>
|
||||
</div>
|
||||
<mat-accordion class="app-accordion-panel" [displayMode]="flat">
|
||||
<mat-accordion class="app-accordion-panel" displayMode="flat">
|
||||
<mat-expansion-panel class="mat-elevation-z0" [expanded]="true">
|
||||
<mat-expansion-panel-header>
|
||||
<mat-panel-title>
|
||||
@@ -118,7 +118,7 @@
|
||||
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 class="app-grid-item app-processes-menu" fxFlex.gt-md="225px">
|
||||
<div id="app-processes-menu" class="app-grid-item app-processes-menu" fxFlex.gt-md="225px">
|
||||
<div class="app-list-buttons">
|
||||
<adf-sidebar-action-menu [expanded]="true" [width]="205"
|
||||
title="{{'ADF_SIDEBAR_ACTION_MENU.BUTTON.CREATE' | translate}}">
|
||||
@@ -132,7 +132,7 @@
|
||||
</div>
|
||||
</adf-sidebar-action-menu>
|
||||
</div>
|
||||
<mat-accordion class="app-accordion-panel" [displayMode]="flat">
|
||||
<mat-accordion class="app-accordion-panel" displayMode="flat">
|
||||
<mat-expansion-panel class="mat-elevation-z0" [expanded]="true">
|
||||
<mat-expansion-panel-header>
|
||||
<mat-panel-title>
|
||||
@@ -217,13 +217,15 @@
|
||||
*ngIf="isStartProcessMode()">
|
||||
<adf-start-process
|
||||
#activitiStartProcess
|
||||
[appId]="appId"
|
||||
[appId]="applicationId"
|
||||
[processDefinitionName]="processDefinitionName"
|
||||
[showSelectApplicationDropdown]="showApplications"
|
||||
[title]="'ADF_PROCESS_LIST.START_PROCESS.FORM.TITLE'"
|
||||
[name]="defaultProcessName"
|
||||
[processDefinitionName]="defaultProcessDefinitionName"
|
||||
(formContentClicked)="onContentClick($event)"
|
||||
(start)="onStartProcessInstance($event)"
|
||||
(cancel)="onCancelProcessInstance()">
|
||||
(cancel)="onCancelProcessInstance()"
|
||||
(error)="onStartProcessError($event)">
|
||||
</adf-start-process>
|
||||
</div>
|
||||
</div>
|
||||
@@ -235,12 +237,12 @@
|
||||
<div class="app-grid-item app-reports-menu" fxFlex.gt-md="300px">
|
||||
<span><h5>Report List</h5></span>
|
||||
<mat-divider></mat-divider>
|
||||
<adf-analytics-report-list
|
||||
<!-- <adf-analytics-report-list
|
||||
[appId]="appId"
|
||||
[selectFirst]="selectFirstReport"
|
||||
(reportClick)="onReportClick($event)"
|
||||
#analyticsReportList>
|
||||
</adf-analytics-report-list>
|
||||
</adf-analytics-report-list> -->
|
||||
</div>
|
||||
<div class="app-grid-item app-reports-details" fxFlex.gt-md="1 1 auto">
|
||||
<adf-analytics
|
||||
@@ -291,6 +293,24 @@
|
||||
<div>
|
||||
<mat-slide-toggle id="adf-process-context-menu" [(ngModel)]="processContextMenu" >Show Process list Context menu</mat-slide-toggle>
|
||||
</div>
|
||||
<div>
|
||||
<mat-slide-toggle id="adf-start-process-app-drop-down" [(ngModel)]="showApplications" >Show Application dropdown on start process</mat-slide-toggle>
|
||||
<mat-card class="example-card" *ngIf="showApplications">
|
||||
<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-form-field>
|
||||
<mat-label>ApplicationId</mat-label>
|
||||
<input matInput [(ngModel)]="applicationId">
|
||||
</mat-form-field>
|
||||
<mat-form-field>
|
||||
<mat-label>ProcessDefinitionName</mat-label>
|
||||
<input matInput [(ngModel)]="processDefinitionName">
|
||||
</mat-form-field>
|
||||
</mat-card-content>
|
||||
</mat-card>
|
||||
</div>
|
||||
<br>
|
||||
<mat-radio-group [(ngModel)]="selectionMode">
|
||||
<mat-radio-button value="multiple">multiple</mat-radio-button>
|
||||
|
||||
@@ -36,7 +36,7 @@ import {
|
||||
import {
|
||||
FORM_FIELD_VALIDATORS, FormRenderingService, FormService,
|
||||
DynamicTableRow, ValidateDynamicTableRowEvent, AppConfigService, PaginationComponent, UserPreferenceValues,
|
||||
AlfrescoApiService, UserPreferencesService, LogService, DataCellEvent
|
||||
AlfrescoApiService, UserPreferencesService, LogService, DataCellEvent, NotificationService
|
||||
} from '@alfresco/adf-core';
|
||||
|
||||
import { AnalyticsReportListComponent } from '@alfresco/adf-insights';
|
||||
@@ -52,7 +52,8 @@ import {
|
||||
TaskDetailsComponent,
|
||||
TaskDetailsEvent,
|
||||
TaskFiltersComponent,
|
||||
TaskListComponent
|
||||
TaskListComponent,
|
||||
ProcessFormRenderingService
|
||||
} from '@alfresco/adf-process-services';
|
||||
import { Subject } from 'rxjs';
|
||||
import { /*CustomEditorComponent*/ CustomStencil01 } from './custom-editor/custom-editor.component';
|
||||
@@ -72,7 +73,10 @@ const REPORT_ROUTE = 2;
|
||||
selector: 'app-process-service',
|
||||
templateUrl: './process-service.component.html',
|
||||
styleUrls: ['./process-service.component.scss'],
|
||||
encapsulation: ViewEncapsulation.None
|
||||
encapsulation: ViewEncapsulation.None,
|
||||
providers: [
|
||||
{ provide: FormRenderingService, useClass: ProcessFormRenderingService }
|
||||
]
|
||||
})
|
||||
export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit {
|
||||
|
||||
@@ -103,7 +107,7 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
@ViewChild('activitiStartProcess')
|
||||
activitiStartProcess: StartProcessInstanceComponent;
|
||||
|
||||
@ViewChild('analyticsReportList')
|
||||
@ViewChild('analyticsReportList', { static: true })
|
||||
analyticsReportList: AnalyticsReportListComponent;
|
||||
|
||||
@Input()
|
||||
@@ -153,6 +157,9 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
|
||||
showProcessFilterIcon: boolean;
|
||||
showTaskFilterIcon: boolean;
|
||||
showApplications: boolean;
|
||||
applicationId: number;
|
||||
processDefinitionName: string;
|
||||
|
||||
fieldValidators = [
|
||||
...FORM_FIELD_VALIDATORS,
|
||||
@@ -171,12 +178,13 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
formRenderingService: FormRenderingService,
|
||||
formService: FormService,
|
||||
private location: Location,
|
||||
private notificationService: NotificationService,
|
||||
private preferenceService: UserPreferencesService) {
|
||||
|
||||
this.defaultProcessName = this.appConfig.get<string>('adf-start-process.name');
|
||||
this.defaultProcessDefinitionName = this.appConfig.get<string>('adf-start-process.processDefinitionName');
|
||||
this.defaultTaskName = this.appConfig.get<string>('adf-start-task.name');
|
||||
|
||||
this.processDefinitionName = this.defaultProcessDefinitionName;
|
||||
// Uncomment this line to replace all 'text' field editors with custom component
|
||||
// formRenderingService.setComponentTypeResolver('text', () => CustomEditorComponent, true);
|
||||
|
||||
@@ -251,6 +259,7 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
|
||||
if (applicationId && applicationId !== '0') {
|
||||
this.appId = params['appId'];
|
||||
this.applicationId = this.appId;
|
||||
}
|
||||
|
||||
this.taskFilter = null;
|
||||
@@ -399,6 +408,10 @@ export class ProcessServiceComponent implements AfterViewInit, OnDestroy, OnInit
|
||||
this.reloadProcessFilters();
|
||||
}
|
||||
|
||||
onStartProcessError(event: any) {
|
||||
this.notificationService.showError(event.message);
|
||||
}
|
||||
|
||||
isStartProcessMode(): boolean {
|
||||
return this.currentProcessInstanceId === currentProcessIdNew;
|
||||
}
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
*/
|
||||
|
||||
import { Component } from '@angular/core';
|
||||
import { ActivatedRoute, Router } from '@angular/router';
|
||||
import { Params } from '@angular/router/src/shared';
|
||||
import { ActivatedRoute, Router, Params } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
selector: 'app-show-diagram',
|
||||
|
||||
@@ -17,12 +17,11 @@
|
||||
|
||||
import { QueryBody } from '@alfresco/js-api';
|
||||
import { SearchConfigurationInterface } from '@alfresco/adf-core';
|
||||
import { Injectable } from '@angular/core';
|
||||
|
||||
@Injectable()
|
||||
export class TestSearchConfigurationService implements SearchConfigurationInterface {
|
||||
|
||||
constructor() {
|
||||
}
|
||||
|
||||
public generateQueryBody(searchTerm: string, maxResults: number, skipCount: number): QueryBody {
|
||||
const defaultQueryBody: QueryBody = {
|
||||
query: {
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
class="app-example-card-search-container">
|
||||
<ng-template let-data>
|
||||
<mat-card class="app-example-card"
|
||||
*ngFor="let item of data?.list?.entries; let idx = index" (click)="onClick(item)">
|
||||
*ngFor="let item of data?.list?.entries; let idx = index">
|
||||
<mat-card-header>
|
||||
<div mat-card-avatar class="app-example-header-image"></div>
|
||||
<mat-card-title>{{ item?.entry.name }}</mat-card-title>
|
||||
|
||||
@@ -27,7 +27,7 @@ import { takeUntil } from 'rxjs/operators';
|
||||
selector: 'app-search-result-component',
|
||||
templateUrl: './search-result.component.html',
|
||||
styleUrls: ['./search-result.component.scss'],
|
||||
providers: [SearchService, SearchQueryBuilderService]
|
||||
providers: [SearchService]
|
||||
})
|
||||
export class SearchResultComponent implements OnInit, OnDestroy {
|
||||
|
||||
@@ -53,6 +53,7 @@ export class SearchResultComponent implements OnInit, OnDestroy {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.queryBuilder.resetToDefaults();
|
||||
|
||||
this.sorting = this.getSorting();
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user