mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2026-09-16 18:13:06 +00:00
Compare commits
213
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c86fd49990 | ||
|
|
11d1e774bd | ||
|
|
a6e0b3b42c | ||
|
|
15ae7bf274 | ||
|
|
31c2cb2162 | ||
|
|
2c4764f89e | ||
|
|
e2693f9304 | ||
|
|
5d9acaec0d | ||
|
|
0c7bf62097 | ||
|
|
84116ad2bf | ||
|
|
cd6c41305a | ||
|
|
0c147513cc | ||
|
|
ac14541c2e | ||
|
|
920b7d3585 | ||
|
|
643b5f723a | ||
|
|
a6ab5fcbdd | ||
|
|
35970b4278 | ||
|
|
6f8762f46e | ||
|
|
379fbbb508 | ||
|
|
342f165b41 | ||
|
|
ecba77dfa9 | ||
|
|
a5b55c5861 | ||
|
|
2347ca68c4 | ||
|
|
cdb65bf204 | ||
|
|
8cb7a1719f | ||
|
|
1971980216 | ||
|
|
467a19f3ec | ||
|
|
d1e48f9c33 | ||
|
|
79163cbae0 | ||
|
|
5bbb5c5716 | ||
|
|
0018cd7f8f | ||
|
|
06921783bf | ||
|
|
1462560e6e | ||
|
|
ecbfae5648 | ||
|
|
413fce8cb7 | ||
|
|
f2fa458fe5 | ||
|
|
e37ef279e4 | ||
|
|
2cc3ba4d6b | ||
|
|
3fea334468 | ||
|
|
541ae4a266 | ||
|
|
8633641235 | ||
|
|
206d83e84a | ||
|
|
4a1e4544f4 | ||
|
|
f70ba30b46 | ||
|
|
b3900b96ed | ||
|
|
2fd960bf5c | ||
|
|
8b47434c37 | ||
|
|
fe53c5d5a8 | ||
|
|
deefa948cd | ||
|
|
051b82684f | ||
|
|
b4eee9d631 | ||
|
|
9c6a1901c6 | ||
|
|
3ad13d3e38 | ||
|
|
efd6e5b1b0 | ||
|
|
6257510056 | ||
|
|
28137d8a09 | ||
|
|
81822a119d | ||
|
|
43d0c00feb | ||
|
|
7c127888db | ||
|
|
d342643bd8 | ||
|
|
58a5732043 | ||
|
|
685bc387b5 | ||
|
|
f0c90594ca | ||
|
|
65f6e8f4de | ||
|
|
ec47d8eac8 | ||
|
|
ca6e3969d8 | ||
|
|
b4e8e4943a | ||
|
|
71b8dae86d | ||
|
|
84e5a0fa4b | ||
|
|
f2845a36c6 | ||
|
|
acf9e3e11c | ||
|
|
adeb82c137 | ||
|
|
48defa2b5f | ||
|
|
9ee0e5ee3e | ||
|
|
61a1fb64bf | ||
|
|
0f1200b5a2 | ||
|
|
2c438760ea | ||
|
|
56adef9d92 | ||
|
|
60a8cdb8b8 | ||
|
|
997e82a6b0 | ||
|
|
b1113c51a7 | ||
|
|
dc35ef8a6f | ||
|
|
cb220968cf | ||
|
|
50ad04aeb3 | ||
|
|
b1fca8dd4b | ||
|
|
3d598cd0c2 | ||
|
|
7b67c7cf3a | ||
|
|
f34bbf59be | ||
|
|
9575fe633b | ||
|
|
c6652f32b2 | ||
|
|
d6317a7b87 | ||
|
|
d829d8eefb | ||
|
|
4cfda763b6 | ||
|
|
ff0885c265 | ||
|
|
5c99139e4d | ||
|
|
068bcc89d3 | ||
|
|
69f92bcc61 | ||
|
|
6a04484fa4 | ||
|
|
76309e3e7a | ||
|
|
d0b2915c88 | ||
|
|
fdd4f6c081 | ||
|
|
0dc45e95af | ||
|
|
1f73f7fe40 | ||
|
|
6fb9474d46 | ||
|
|
ca90461345 | ||
|
|
3e9ac6687f | ||
|
|
014fb9cfa8 | ||
|
|
677e21d004 | ||
|
|
a426338f94 | ||
|
|
c8f9bd21ea | ||
|
|
d09b8daa3a | ||
|
|
baf0e4552e | ||
|
|
659805ab20 | ||
|
|
f6c446498a | ||
|
|
137088d4f6 | ||
|
|
8eef4e6eec | ||
|
|
82175bad80 | ||
|
|
2e75c164fc | ||
|
|
8c51134ef2 | ||
|
|
406192976a | ||
|
|
cd63f67e0a | ||
|
|
2d21340947 | ||
|
|
500d4be4a3 | ||
|
|
a58a6a5369 | ||
|
|
5e9ef9c8a9 | ||
|
|
8e0ea373f0 | ||
|
|
c85245b241 | ||
|
|
90f5951cd8 | ||
|
|
555e6c027f | ||
|
|
28d8052726 | ||
|
|
142c6ae754 | ||
|
|
abaf7df9c6 | ||
|
|
9bbbc8193d | ||
|
|
3c2d890a1e | ||
|
|
3743dc6fba | ||
|
|
2114ae75a1 | ||
|
|
730033b78e | ||
|
|
5f7d47fd9f | ||
|
|
0597fbded0 | ||
|
|
3415472110 | ||
|
|
eb2f543822 | ||
|
|
6703b8b7da | ||
|
|
3475098f32 | ||
|
|
4249a856c9 | ||
|
|
ce90117e28 | ||
|
|
083755b41a | ||
|
|
015ce8a99e | ||
|
|
b643054a15 | ||
|
|
838b3e78b7 | ||
|
|
e8d1328244 | ||
|
|
25f7351b63 | ||
|
|
d5bd97e3d2 | ||
|
|
5912423f96 | ||
|
|
f1c3141d52 | ||
|
|
f692c1620f | ||
|
|
1f0f8dc6fd | ||
|
|
677150e9d3 | ||
|
|
34c0d88bbe | ||
|
|
dc41fef117 | ||
|
|
4ebb1537db | ||
|
|
a74388513e | ||
|
|
08fd1f3d12 | ||
|
|
fe372dba59 | ||
|
|
e48e8344f6 | ||
|
|
ab04a68ec5 | ||
|
|
946fe889e1 | ||
|
|
f8f72edeb9 | ||
|
|
f7e521607c | ||
|
|
97970735fe | ||
|
|
e862862fb9 | ||
|
|
b1ff467b9a | ||
|
|
32341f0b86 | ||
|
|
cc9eca6bea | ||
|
|
8dceb5fb1d | ||
|
|
1f4cc9757c | ||
|
|
1422604991 | ||
|
|
ac11fa8a65 | ||
|
|
58fa965d3f | ||
|
|
0c725a1c90 | ||
|
|
1e83be9194 | ||
|
|
ba322b70b2 | ||
|
|
ec70dccc9f | ||
|
|
b17c42d57c | ||
|
|
63401dce49 | ||
|
|
1e98f2f472 | ||
|
|
d3445df535 | ||
|
|
7bfe27dda9 | ||
|
|
f39f104d45 | ||
|
|
70d899f5ba | ||
|
|
3c7e8e84ff | ||
|
|
ca4dcf85f4 | ||
|
|
5e7494cf42 | ||
|
|
fbc1a184f6 | ||
|
|
332cec6a49 | ||
|
|
3186ed278d | ||
|
|
e4feb68381 | ||
|
|
c8aa27a87b | ||
|
|
b6dfa44217 | ||
|
|
28b67701f5 | ||
|
|
808f836259 | ||
|
|
430ca84c77 | ||
|
|
ca1842e93f | ||
|
|
5d64c7f0ed | ||
|
|
2284ede0c7 | ||
|
|
287519ee24 | ||
|
|
ddd81d8806 | ||
|
|
445c89a2c6 | ||
|
|
33c2c98f35 | ||
|
|
3ac560dd94 | ||
|
|
d5d2784eab | ||
|
|
2784310556 | ||
|
|
0edbae8c59 | ||
|
|
97fdeb4d34 |
@@ -10,3 +10,4 @@ scripts
|
||||
docs/**/*.md
|
||||
lib/js-api/docs/**/*.md
|
||||
.storybook
|
||||
webpack.config.js
|
||||
|
||||
@@ -0,0 +1,23 @@
|
||||
name: Git tag creation
|
||||
description: 'Creates a git tag in the specified repository for a given commit.'
|
||||
|
||||
inputs:
|
||||
tagName:
|
||||
description: 'The github tag to be created'
|
||||
required: true
|
||||
releaseNote:
|
||||
description: 'The github release note to be created'
|
||||
required: false
|
||||
|
||||
runs:
|
||||
using: 'composite'
|
||||
steps:
|
||||
- uses: actions/github-script@60a0d83039c74a4aee543508d2ffcb1c3799cdea # v7.0.1
|
||||
name: Create git tag
|
||||
env:
|
||||
TAG_NAME: ${{ inputs.tagName }}
|
||||
RELEASE_NOTE: ${{ inputs.releaseNote }}
|
||||
with:
|
||||
script: |
|
||||
const createGitTag = require('./.github/actions/create-git-tag/create-git-tag.js');
|
||||
await createGitTag({ core, github, context, tagName: process.env.TAG_NAME });
|
||||
@@ -0,0 +1,42 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
|
||||
*
|
||||
* 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.
|
||||
*/
|
||||
|
||||
module.exports = async ({ github, context, core, tagName }) => {
|
||||
const tagSHA = context.payload?.after ?? context.sha;
|
||||
|
||||
core.notice(`Creating tag with title: ${tagName}, and SHA: ${tagSHA}`);
|
||||
|
||||
const createdTag = await github.rest.git.createTag({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
tag: tagName,
|
||||
message: 'Release note',
|
||||
object: tagSHA,
|
||||
type: 'commit'
|
||||
});
|
||||
|
||||
const createdRef = await github.rest.git.createRef({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
ref: 'refs/tags/' + tagName,
|
||||
sha: createdTag.data.sha
|
||||
});
|
||||
|
||||
if (createdRef.status === 201) {
|
||||
core.notice(`Tag ${tagName} was created successfully`);
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1 @@
|
||||
dist
|
||||
+260
-215
@@ -11,7 +11,7 @@
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.10.0",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/github": "^5.1.1"
|
||||
"@actions/github": "^6.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vercel/ncc": "^0.36.1"
|
||||
@@ -35,22 +35,25 @@
|
||||
}
|
||||
},
|
||||
"node_modules/@actions/github": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@actions/github/-/github-5.1.1.tgz",
|
||||
"integrity": "sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==",
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@actions/github/-/github-6.0.0.tgz",
|
||||
"integrity": "sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@actions/http-client": "^2.0.1",
|
||||
"@octokit/core": "^3.6.0",
|
||||
"@octokit/plugin-paginate-rest": "^2.17.0",
|
||||
"@octokit/plugin-rest-endpoint-methods": "^5.13.0"
|
||||
"@actions/http-client": "^2.2.0",
|
||||
"@octokit/core": "^5.0.1",
|
||||
"@octokit/plugin-paginate-rest": "^9.0.0",
|
||||
"@octokit/plugin-rest-endpoint-methods": "^10.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@actions/http-client": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.1.0.tgz",
|
||||
"integrity": "sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw==",
|
||||
"version": "2.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.3.tgz",
|
||||
"integrity": "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"tunnel": "^0.0.6"
|
||||
"tunnel": "^0.0.6",
|
||||
"undici": "^5.25.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@actions/io": {
|
||||
@@ -58,105 +61,171 @@
|
||||
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz",
|
||||
"integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q=="
|
||||
},
|
||||
"node_modules/@fastify/busboy": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz",
|
||||
"integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">=14"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/auth-token": {
|
||||
"version": "2.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz",
|
||||
"integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==",
|
||||
"dependencies": {
|
||||
"@octokit/types": "^6.0.3"
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz",
|
||||
"integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/core": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz",
|
||||
"integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==",
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.0.tgz",
|
||||
"integrity": "sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/auth-token": "^2.4.4",
|
||||
"@octokit/graphql": "^4.5.8",
|
||||
"@octokit/request": "^5.6.3",
|
||||
"@octokit/request-error": "^2.0.5",
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/auth-token": "^4.0.0",
|
||||
"@octokit/graphql": "^7.1.0",
|
||||
"@octokit/request": "^8.3.1",
|
||||
"@octokit/request-error": "^5.1.0",
|
||||
"@octokit/types": "^13.0.0",
|
||||
"before-after-hook": "^2.2.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/endpoint": {
|
||||
"version": "6.0.12",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz",
|
||||
"integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==",
|
||||
"version": "9.0.6",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz",
|
||||
"integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/types": "^6.0.3",
|
||||
"is-plain-object": "^5.0.0",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/graphql": {
|
||||
"version": "4.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz",
|
||||
"integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==",
|
||||
"version": "7.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.0.tgz",
|
||||
"integrity": "sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/request": "^5.6.0",
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/request": "^8.3.0",
|
||||
"@octokit/types": "^13.0.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/openapi-types": {
|
||||
"version": "12.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
|
||||
"integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ=="
|
||||
"version": "23.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz",
|
||||
"integrity": "sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@octokit/plugin-paginate-rest": {
|
||||
"version": "2.21.3",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz",
|
||||
"integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==",
|
||||
"version": "9.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.2.2.tgz",
|
||||
"integrity": "sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/types": "^6.40.0"
|
||||
"@octokit/types": "^12.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@octokit/core": ">=2"
|
||||
"@octokit/core": "5"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/openapi-types": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz",
|
||||
"integrity": "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@octokit/plugin-paginate-rest/node_modules/@octokit/types": {
|
||||
"version": "12.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz",
|
||||
"integrity": "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/openapi-types": "^20.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/plugin-rest-endpoint-methods": {
|
||||
"version": "5.16.2",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz",
|
||||
"integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==",
|
||||
"version": "10.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-10.4.1.tgz",
|
||||
"integrity": "sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/types": "^6.39.0",
|
||||
"deprecation": "^2.3.1"
|
||||
"@octokit/types": "^12.6.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"@octokit/core": ">=3"
|
||||
"@octokit/core": "5"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/openapi-types": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz",
|
||||
"integrity": "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==",
|
||||
"license": "MIT"
|
||||
},
|
||||
"node_modules/@octokit/plugin-rest-endpoint-methods/node_modules/@octokit/types": {
|
||||
"version": "12.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz",
|
||||
"integrity": "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/openapi-types": "^20.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/request": {
|
||||
"version": "5.6.3",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz",
|
||||
"integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==",
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.0.tgz",
|
||||
"integrity": "sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/endpoint": "^6.0.1",
|
||||
"@octokit/request-error": "^2.1.0",
|
||||
"@octokit/types": "^6.16.1",
|
||||
"is-plain-object": "^5.0.0",
|
||||
"node-fetch": "^2.6.7",
|
||||
"@octokit/endpoint": "^9.0.1",
|
||||
"@octokit/request-error": "^5.1.0",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/request-error": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz",
|
||||
"integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==",
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz",
|
||||
"integrity": "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"deprecation": "^2.0.0",
|
||||
"once": "^1.4.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">= 18"
|
||||
}
|
||||
},
|
||||
"node_modules/@octokit/types": {
|
||||
"version": "6.41.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
|
||||
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
|
||||
"version": "13.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz",
|
||||
"integrity": "sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@octokit/openapi-types": "^12.11.0"
|
||||
"@octokit/openapi-types": "^23.0.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@vercel/ncc": {
|
||||
@@ -171,53 +240,24 @@
|
||||
"node_modules/before-after-hook": {
|
||||
"version": "2.2.3",
|
||||
"resolved": "https://registry.npmjs.org/before-after-hook/-/before-after-hook-2.2.3.tgz",
|
||||
"integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ=="
|
||||
"integrity": "sha512-NzUnlZexiaH/46WDhANlyR2bXRopNg4F/zuSA3OpZnllCUgRaOF2znDioDWrmbNVsuZk6l9pMquQB38cfBZwkQ==",
|
||||
"license": "Apache-2.0"
|
||||
},
|
||||
"node_modules/deprecation": {
|
||||
"version": "2.3.1",
|
||||
"resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
|
||||
"integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="
|
||||
},
|
||||
"node_modules/is-plain-object": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
|
||||
"integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
},
|
||||
"node_modules/node-fetch": {
|
||||
"version": "2.6.11",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.11.tgz",
|
||||
"integrity": "sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==",
|
||||
"dependencies": {
|
||||
"whatwg-url": "^5.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": "4.x || >=6.0.0"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"encoding": "^0.1.0"
|
||||
},
|
||||
"peerDependenciesMeta": {
|
||||
"encoding": {
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
"integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
"integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
|
||||
"license": "ISC",
|
||||
"dependencies": {
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"node_modules/tr46": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
|
||||
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
|
||||
},
|
||||
"node_modules/tunnel": {
|
||||
"version": "0.0.6",
|
||||
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
|
||||
@@ -226,10 +266,23 @@
|
||||
"node": ">=0.6.11 <=0.7.0 || >=0.7.3"
|
||||
}
|
||||
},
|
||||
"node_modules/undici": {
|
||||
"version": "5.29.0",
|
||||
"resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
|
||||
"integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@fastify/busboy": "^2.0.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0"
|
||||
}
|
||||
},
|
||||
"node_modules/universal-user-agent": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz",
|
||||
"integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
|
||||
"integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==",
|
||||
"license": "ISC"
|
||||
},
|
||||
"node_modules/uuid": {
|
||||
"version": "8.3.2",
|
||||
@@ -239,24 +292,11 @@
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
},
|
||||
"node_modules/webidl-conversions": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
|
||||
},
|
||||
"node_modules/whatwg-url": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
|
||||
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
|
||||
"dependencies": {
|
||||
"tr46": "~0.0.3",
|
||||
"webidl-conversions": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ=="
|
||||
"integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==",
|
||||
"license": "ISC"
|
||||
}
|
||||
},
|
||||
"dependencies": {
|
||||
@@ -278,22 +318,23 @@
|
||||
}
|
||||
},
|
||||
"@actions/github": {
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@actions/github/-/github-5.1.1.tgz",
|
||||
"integrity": "sha512-Nk59rMDoJaV+mHCOJPXuvB1zIbomlKS0dmSIqPGxd0enAXBnOfn4VWF+CGtRCwXZG9Epa54tZA7VIRlJDS8A6g==",
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@actions/github/-/github-6.0.0.tgz",
|
||||
"integrity": "sha512-alScpSVnYmjNEXboZjarjukQEzgCRmjMv6Xj47fsdnqGS73bjJNDpiiXmp8jr0UZLdUB6d9jW63IcmddUP+l0g==",
|
||||
"requires": {
|
||||
"@actions/http-client": "^2.0.1",
|
||||
"@octokit/core": "^3.6.0",
|
||||
"@octokit/plugin-paginate-rest": "^2.17.0",
|
||||
"@octokit/plugin-rest-endpoint-methods": "^5.13.0"
|
||||
"@actions/http-client": "^2.2.0",
|
||||
"@octokit/core": "^5.0.1",
|
||||
"@octokit/plugin-paginate-rest": "^9.0.0",
|
||||
"@octokit/plugin-rest-endpoint-methods": "^10.0.0"
|
||||
}
|
||||
},
|
||||
"@actions/http-client": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.1.0.tgz",
|
||||
"integrity": "sha512-BonhODnXr3amchh4qkmjPMUO8mFi/zLaaCeCAJZqch8iQqyDnVIkySjB38VHAC8IJ+bnlgfOqlhpyCUZHlQsqw==",
|
||||
"version": "2.2.3",
|
||||
"resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.2.3.tgz",
|
||||
"integrity": "sha512-mx8hyJi/hjFvbPokCg4uRd4ZX78t+YyRPtnKWwIl+RzNaVuFpQHfmlGVfsKEJN8LwTCvL+DfVgAM04XaHkm6bA==",
|
||||
"requires": {
|
||||
"tunnel": "^0.0.6"
|
||||
"tunnel": "^0.0.6",
|
||||
"undici": "^5.25.4"
|
||||
}
|
||||
},
|
||||
"@actions/io": {
|
||||
@@ -301,99 +342,127 @@
|
||||
"resolved": "https://registry.npmjs.org/@actions/io/-/io-1.1.3.tgz",
|
||||
"integrity": "sha512-wi9JjgKLYS7U/z8PPbco+PvTb/nRWjeoFlJ1Qer83k/3C5PHQi28hiVdeE2kHXmIL99mQFawx8qt/JPjZilJ8Q=="
|
||||
},
|
||||
"@fastify/busboy": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz",
|
||||
"integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA=="
|
||||
},
|
||||
"@octokit/auth-token": {
|
||||
"version": "2.5.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-2.5.0.tgz",
|
||||
"integrity": "sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g==",
|
||||
"requires": {
|
||||
"@octokit/types": "^6.0.3"
|
||||
}
|
||||
"version": "4.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-4.0.0.tgz",
|
||||
"integrity": "sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA=="
|
||||
},
|
||||
"@octokit/core": {
|
||||
"version": "3.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-3.6.0.tgz",
|
||||
"integrity": "sha512-7RKRKuA4xTjMhY+eG3jthb3hlZCsOwg3rztWh75Xc+ShDWOfDDATWbeZpAHBNRpm4Tv9WgBMOy1zEJYXG6NJ7Q==",
|
||||
"version": "5.2.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/core/-/core-5.2.0.tgz",
|
||||
"integrity": "sha512-1LFfa/qnMQvEOAdzlQymH0ulepxbxnCYAKJZfMci/5XJyIHWgEYnDmgnKakbTh7CH2tFQ5O60oYDvns4i9RAIg==",
|
||||
"requires": {
|
||||
"@octokit/auth-token": "^2.4.4",
|
||||
"@octokit/graphql": "^4.5.8",
|
||||
"@octokit/request": "^5.6.3",
|
||||
"@octokit/request-error": "^2.0.5",
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/auth-token": "^4.0.0",
|
||||
"@octokit/graphql": "^7.1.0",
|
||||
"@octokit/request": "^8.3.1",
|
||||
"@octokit/request-error": "^5.1.0",
|
||||
"@octokit/types": "^13.0.0",
|
||||
"before-after-hook": "^2.2.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"@octokit/endpoint": {
|
||||
"version": "6.0.12",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-6.0.12.tgz",
|
||||
"integrity": "sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA==",
|
||||
"version": "9.0.6",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-9.0.6.tgz",
|
||||
"integrity": "sha512-H1fNTMA57HbkFESSt3Y9+FBICv+0jFceJFPWDePYlR/iMGrwM5ph+Dd4XRQs+8X+PUFURLQgX9ChPfhJ/1uNQw==",
|
||||
"requires": {
|
||||
"@octokit/types": "^6.0.3",
|
||||
"is-plain-object": "^5.0.0",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"@octokit/graphql": {
|
||||
"version": "4.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-4.8.0.tgz",
|
||||
"integrity": "sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg==",
|
||||
"version": "7.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-7.1.0.tgz",
|
||||
"integrity": "sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==",
|
||||
"requires": {
|
||||
"@octokit/request": "^5.6.0",
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/request": "^8.3.0",
|
||||
"@octokit/types": "^13.0.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"@octokit/openapi-types": {
|
||||
"version": "12.11.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
|
||||
"integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ=="
|
||||
"version": "23.0.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-23.0.1.tgz",
|
||||
"integrity": "sha512-izFjMJ1sir0jn0ldEKhZ7xegCTj/ObmEDlEfpFrx4k/JyZSMRHbO3/rBwgE7f3m2DHt+RrNGIVw4wSmwnm3t/g=="
|
||||
},
|
||||
"@octokit/plugin-paginate-rest": {
|
||||
"version": "2.21.3",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.21.3.tgz",
|
||||
"integrity": "sha512-aCZTEf0y2h3OLbrgKkrfFdjRL6eSOo8komneVQJnYecAxIej7Bafor2xhuDJOIFau4pk0i/P28/XgtbyPF0ZHw==",
|
||||
"version": "9.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-9.2.2.tgz",
|
||||
"integrity": "sha512-u3KYkGF7GcZnSD/3UP0S7K5XUFT2FkOQdcfXZGZQPGv3lm4F2Xbf71lvjldr8c1H3nNbF+33cLEkWYbokGWqiQ==",
|
||||
"requires": {
|
||||
"@octokit/types": "^6.40.0"
|
||||
"@octokit/types": "^12.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@octokit/openapi-types": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz",
|
||||
"integrity": "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA=="
|
||||
},
|
||||
"@octokit/types": {
|
||||
"version": "12.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz",
|
||||
"integrity": "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==",
|
||||
"requires": {
|
||||
"@octokit/openapi-types": "^20.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@octokit/plugin-rest-endpoint-methods": {
|
||||
"version": "5.16.2",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.16.2.tgz",
|
||||
"integrity": "sha512-8QFz29Fg5jDuTPXVtey05BLm7OB+M8fnvE64RNegzX7U+5NUXcOcnpTIK0YfSHBg8gYd0oxIq3IZTe9SfPZiRw==",
|
||||
"version": "10.4.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-10.4.1.tgz",
|
||||
"integrity": "sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==",
|
||||
"requires": {
|
||||
"@octokit/types": "^6.39.0",
|
||||
"deprecation": "^2.3.1"
|
||||
"@octokit/types": "^12.6.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@octokit/openapi-types": {
|
||||
"version": "20.0.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-20.0.0.tgz",
|
||||
"integrity": "sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA=="
|
||||
},
|
||||
"@octokit/types": {
|
||||
"version": "12.6.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-12.6.0.tgz",
|
||||
"integrity": "sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==",
|
||||
"requires": {
|
||||
"@octokit/openapi-types": "^20.0.0"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"@octokit/request": {
|
||||
"version": "5.6.3",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-5.6.3.tgz",
|
||||
"integrity": "sha512-bFJl0I1KVc9jYTe9tdGGpAMPy32dLBXXo1dS/YwSCTL/2nd9XeHsY616RE3HPXDVk+a+dBuzyz5YdlXwcDTr2A==",
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request/-/request-8.4.0.tgz",
|
||||
"integrity": "sha512-9Bb014e+m2TgBeEJGEbdplMVWwPmL1FPtggHQRkV+WVsMggPtEkLKPlcVYm/o8xKLkpJ7B+6N8WfQMtDLX2Dpw==",
|
||||
"requires": {
|
||||
"@octokit/endpoint": "^6.0.1",
|
||||
"@octokit/request-error": "^2.1.0",
|
||||
"@octokit/types": "^6.16.1",
|
||||
"is-plain-object": "^5.0.0",
|
||||
"node-fetch": "^2.6.7",
|
||||
"@octokit/endpoint": "^9.0.1",
|
||||
"@octokit/request-error": "^5.1.0",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"universal-user-agent": "^6.0.0"
|
||||
}
|
||||
},
|
||||
"@octokit/request-error": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-2.1.0.tgz",
|
||||
"integrity": "sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg==",
|
||||
"version": "5.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-5.1.1.tgz",
|
||||
"integrity": "sha512-v9iyEQJH6ZntoENr9/yXxjuezh4My67CBSu9r6Ve/05Iu5gNgnisNWOsoJHTP6k0Rr0+HQIpnH+kyammu90q/g==",
|
||||
"requires": {
|
||||
"@octokit/types": "^6.0.3",
|
||||
"@octokit/types": "^13.1.0",
|
||||
"deprecation": "^2.0.0",
|
||||
"once": "^1.4.0"
|
||||
}
|
||||
},
|
||||
"@octokit/types": {
|
||||
"version": "6.41.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
|
||||
"integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
|
||||
"version": "13.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@octokit/types/-/types-13.8.0.tgz",
|
||||
"integrity": "sha512-x7DjTIbEpEWXK99DMd01QfWy0hd5h4EN+Q7shkdKds3otGQP+oWE/y0A76i1OvH9fygo4ddvNf7ZvF0t78P98A==",
|
||||
"requires": {
|
||||
"@octokit/openapi-types": "^12.11.0"
|
||||
"@octokit/openapi-types": "^23.0.1"
|
||||
}
|
||||
},
|
||||
"@vercel/ncc": {
|
||||
@@ -412,19 +481,6 @@
|
||||
"resolved": "https://registry.npmjs.org/deprecation/-/deprecation-2.3.1.tgz",
|
||||
"integrity": "sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ=="
|
||||
},
|
||||
"is-plain-object": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
|
||||
"integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q=="
|
||||
},
|
||||
"node-fetch": {
|
||||
"version": "2.6.11",
|
||||
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.11.tgz",
|
||||
"integrity": "sha512-4I6pdBY1EthSqDmJkiNk3JIT8cswwR9nfeW/cPdUagJYEQG7R95WRH74wpz7ma8Gh/9dI9FP+OU+0E4FvtA55w==",
|
||||
"requires": {
|
||||
"whatwg-url": "^5.0.0"
|
||||
}
|
||||
},
|
||||
"once": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
|
||||
@@ -433,40 +489,29 @@
|
||||
"wrappy": "1"
|
||||
}
|
||||
},
|
||||
"tr46": {
|
||||
"version": "0.0.3",
|
||||
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
|
||||
"integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw=="
|
||||
},
|
||||
"tunnel": {
|
||||
"version": "0.0.6",
|
||||
"resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz",
|
||||
"integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg=="
|
||||
},
|
||||
"undici": {
|
||||
"version": "5.29.0",
|
||||
"resolved": "https://registry.npmjs.org/undici/-/undici-5.29.0.tgz",
|
||||
"integrity": "sha512-raqeBD6NQK4SkWhQzeYKd1KmIG6dllBOTt55Rmkt4HtI9mwdWtJljnrXjAFUBLTSN67HWrOIZ3EPF4kjUw80Bg==",
|
||||
"requires": {
|
||||
"@fastify/busboy": "^2.0.0"
|
||||
}
|
||||
},
|
||||
"universal-user-agent": {
|
||||
"version": "6.0.0",
|
||||
"resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.0.tgz",
|
||||
"integrity": "sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w=="
|
||||
"version": "6.0.1",
|
||||
"resolved": "https://registry.npmjs.org/universal-user-agent/-/universal-user-agent-6.0.1.tgz",
|
||||
"integrity": "sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ=="
|
||||
},
|
||||
"uuid": {
|
||||
"version": "8.3.2",
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg=="
|
||||
},
|
||||
"webidl-conversions": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
|
||||
"integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ=="
|
||||
},
|
||||
"whatwg-url": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
|
||||
"integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
|
||||
"requires": {
|
||||
"tr46": "~0.0.3",
|
||||
"webidl-conversions": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"dependencies": {
|
||||
"@actions/core": "^1.10.0",
|
||||
"@actions/exec": "^1.1.1",
|
||||
"@actions/github": "^5.1.1"
|
||||
"@actions/github": "^6.0.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@vercel/ncc": "^0.36.1"
|
||||
|
||||
@@ -20,18 +20,18 @@ runs:
|
||||
using: "composite"
|
||||
steps:
|
||||
- name: install NPM
|
||||
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
cache-dependency-path: package-lock.json
|
||||
- name: get latest tag sha
|
||||
id: tag-sha
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/git-latest-tag@4b0ea0ccff236b931a3cb94f4e8640525439361a # v8.12.1
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/git-latest-tag@f37c44cc085236178ebb8834eb634b0b4b550a40 # v8.23.0
|
||||
# CACHE
|
||||
- name: Node Modules cache
|
||||
id: node-modules-cache
|
||||
if: ${{ inputs.enable-node-modules-cache == 'true' }}
|
||||
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
|
||||
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
||||
env:
|
||||
cache-name: node-modules-cache
|
||||
with:
|
||||
@@ -43,7 +43,7 @@ runs:
|
||||
node_modules-${{ runner.os }}-build-
|
||||
node_modules-${{ runner.os }}-
|
||||
- name: pip cache
|
||||
uses: actions/cache@1bd1e32a3bdc45362d1e726936510720a7c30a57 # v4.2.0
|
||||
uses: actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
|
||||
if: ${{ inputs.enable-cache == 'true' }}
|
||||
with:
|
||||
path: ~/.cache/pip
|
||||
|
||||
@@ -30,7 +30,7 @@ jobs:
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
|
||||
uses: github/codeql-action/init@fca7ace96b7d713c7035871441bd52efbe39e27e # v3.28.19
|
||||
# Override language selection by uncommenting this and choosing your languages
|
||||
with:
|
||||
languages: javascript
|
||||
@@ -39,7 +39,7 @@ jobs:
|
||||
# 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@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
|
||||
uses: github/codeql-action/autobuild@fca7ace96b7d713c7035871441bd52efbe39e27e # v3.28.19
|
||||
|
||||
# ℹ️ Command-line programs to run using the OS shell.
|
||||
# 📚 https://git.io/JvXDl
|
||||
@@ -53,4 +53,4 @@ jobs:
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@dd746615b3b9d728a6a37ca2045b68ca76d4841a # v3.28.8
|
||||
uses: github/codeql-action/analyze@fca7ace96b7d713c7035871441bd52efbe39e27e # v3.28.19
|
||||
|
||||
@@ -65,7 +65,7 @@ jobs:
|
||||
with:
|
||||
dry-run-flag: ${{ inputs.dry-run-flag }}
|
||||
- name: install NPM
|
||||
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
- name: "Release tag"
|
||||
|
||||
@@ -10,7 +10,7 @@ jobs:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
- name: Pull translations from Crowdin
|
||||
uses: crowdin/github-action@b811e495831e49ff516e7c801f7c5546879b9ee7 # v2.5.2
|
||||
uses: crowdin/github-action@f214c8723025f41fc55b2ad26e67b60b80b1885d # v2.7.1
|
||||
with:
|
||||
upload_sources: false
|
||||
download_translations: true
|
||||
|
||||
@@ -64,7 +64,7 @@ jobs:
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Ensure SHA pinned actions
|
||||
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@c3a2b64f69b7a1542a68f44d9edbd9ec3fc1455e # v3.0.20
|
||||
uses: zgosalvez/github-actions-ensure-sha-pinned-actions@fc87bb5b5a97953d987372e74478de634726b3e5 # v3.0.25
|
||||
|
||||
- name: Check package-lock.json version
|
||||
run: |
|
||||
@@ -84,10 +84,10 @@ jobs:
|
||||
fetch-depth: 0
|
||||
|
||||
- name: Get branch name
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/get-branch-name@4b0ea0ccff236b931a3cb94f4e8640525439361a # v8.12.1
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/get-branch-name@f37c44cc085236178ebb8834eb634b0b4b550a40 # v8.23.0
|
||||
|
||||
- name: Save commit message
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/get-commit-message@4b0ea0ccff236b931a3cb94f4e8640525439361a # v8.12.1
|
||||
uses: Alfresco/alfresco-build-tools/.github/actions/get-commit-message@f37c44cc085236178ebb8834eb634b0b4b550a40 # v8.23.0
|
||||
|
||||
- name: ci:force flag parser
|
||||
shell: bash
|
||||
@@ -192,8 +192,8 @@ jobs:
|
||||
exclude: "core,extensions,content-services,process-services-cloud,process-services,eslint-plugin-eslint-angular,js-api"
|
||||
- name: process-services
|
||||
exclude: "core,extensions,content-services,process-services-cloud,insights,eslint-plugin-eslint-angular,js-api"
|
||||
- name: process-cloud
|
||||
exclude: "insights,core,extensions,content-services,process-services,eslint-plugin-eslint-angular,js-api"
|
||||
- name: process-services-cloud
|
||||
exclude: "insights,core,extensions,content-services,process-services$,eslint-plugin-eslint-angular,js-api"
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
@@ -234,7 +234,7 @@ jobs:
|
||||
- uses: ./.github/actions/setup
|
||||
- uses: ./.github/actions/download-node-modules-and-artifacts
|
||||
- run: NX_REJECT_UNKNOWN_LOCAL_CACHE=0 npx nx affected:build $NX_CALCULATION_FLAGS --prod
|
||||
- run: NX_REJECT_UNKNOWN_LOCAL_CACHE=0 npx nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration=ci --parallel=1
|
||||
- run: NX_REJECT_UNKNOWN_LOCAL_CACHE=0 npx nx affected --target=build-storybook $NX_CALCULATION_FLAGS --configuration=ci
|
||||
- uses: ./.github/actions/upload-node-modules-and-artifacts
|
||||
|
||||
PR-forbidden-labels:
|
||||
@@ -277,7 +277,7 @@ jobs:
|
||||
uses: ./.github/actions/slack-group-area
|
||||
with:
|
||||
affected: ${{ steps.e2e-result.outputs.result }}
|
||||
- uses: slackapi/slack-github-action@485a9d42d3a73031f12ec201c457e2162c45d02d # v2.0.0
|
||||
- uses: slackapi/slack-github-action@b0fa283ad8fea605de13dc3f449259339835fc52 # v2.1.0
|
||||
name: Nofify QA failure
|
||||
if: ${{ github.event_name == 'schedule' && contains(needs.*.result, 'failure') }}
|
||||
env:
|
||||
|
||||
@@ -97,10 +97,9 @@ jobs:
|
||||
setMigrations();
|
||||
- name: Build libraries
|
||||
run: |
|
||||
npx nx run-many --target=build --prod --exclude="demoshell" --skip-nx-cache
|
||||
npx nx run-many --target=pretheme
|
||||
npx nx run-many --target=build-schematics
|
||||
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
npx nx run-many --target=build --prod --skip-nx-cache
|
||||
npx nx run-many --target=build-schematics
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
name: release libraries GH registry
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -109,7 +108,7 @@ jobs:
|
||||
- run: npx nx run-many --target=npm-publish --tag=branch|| exit 1
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.PAT_WRITE_PKG }}
|
||||
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
name: release libraries Npm registry
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
|
||||
@@ -100,6 +100,8 @@ jobs:
|
||||
|
||||
release-npm:
|
||||
needs: [setup]
|
||||
outputs:
|
||||
release_version: ${{ steps.set-version.outputs.release_version }}
|
||||
timeout-minutes: 30
|
||||
if: github.event.pull_request.merged == true || github.ref_name == 'master' || github.ref_name == 'master-patch-*'
|
||||
runs-on: ubuntu-latest
|
||||
@@ -121,6 +123,7 @@ jobs:
|
||||
dry-run-flag: ${{ inputs.dry-run-flag }}
|
||||
- uses: ./.github/actions/download-node-modules-and-artifacts
|
||||
- name: Set libraries versions
|
||||
id: set-version
|
||||
run: |
|
||||
set -u;
|
||||
./scripts/github/build/bumpversion.sh
|
||||
@@ -133,9 +136,8 @@ jobs:
|
||||
- name: build libraries
|
||||
run: |
|
||||
npx nx run-many -t build --prod --skip-nx-cache
|
||||
npx nx run-many -t pretheme
|
||||
npx nx run-many -t build-schematics
|
||||
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
name: release libraries GH registry
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -144,7 +146,7 @@ jobs:
|
||||
- run: npx nx run-many -t npm-publish --tag=$TAG_NPM || exit 1
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.PAT_WRITE_PKG }}
|
||||
- uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
|
||||
- uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
||||
name: release libraries Npm registry
|
||||
with:
|
||||
node-version-file: '.nvmrc'
|
||||
@@ -154,6 +156,21 @@ jobs:
|
||||
env:
|
||||
NODE_AUTH_TOKEN: ${{ secrets.NPM_REGISTRY_TOKEN }}
|
||||
|
||||
create-git-tag:
|
||||
runs-on: ubuntu-latest
|
||||
needs: [setup, release-npm]
|
||||
name: Create github tag
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- name: Checkout repository
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- uses: './.github/actions/create-git-tag'
|
||||
with:
|
||||
tagName: ${{ needs.release-npm.outputs.release_version }}
|
||||
|
||||
propagate:
|
||||
needs: [release-npm]
|
||||
if: ${{ contains(toJson(github.event.pull_request.labels.*.name), 'hxp-upstream') }}
|
||||
@@ -198,7 +215,7 @@ jobs:
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
|
||||
- name: Push Source Files to Crowdin
|
||||
uses: crowdin/github-action@b811e495831e49ff516e7c801f7c5546879b9ee7 # v2.5.2
|
||||
uses: crowdin/github-action@f214c8723025f41fc55b2ad26e67b60b80b1885d # v2.7.1
|
||||
with:
|
||||
upload_sources: true
|
||||
upload_sources_args: --delete-obsolete
|
||||
@@ -212,7 +229,7 @@ jobs:
|
||||
needs: [release-storybook, release-npm, npm-check-bundle]
|
||||
steps:
|
||||
|
||||
- uses: slackapi/slack-github-action@485a9d42d3a73031f12ec201c457e2162c45d02d # v2.0.0
|
||||
- uses: slackapi/slack-github-action@b0fa283ad8fea605de13dc3f449259339835fc52 # v2.1.0
|
||||
name: Nofify FE eng-guild-front-end workflow failed
|
||||
if: ${{ contains(toJson(needs.*.result), 'failure') }}
|
||||
env:
|
||||
|
||||
+3
-12
@@ -1,33 +1,24 @@
|
||||
/.angular/cache
|
||||
*.log
|
||||
node_modules
|
||||
bundles
|
||||
workspace.xml
|
||||
.idea/
|
||||
*.iml
|
||||
.env.*
|
||||
.env
|
||||
dist
|
||||
!./.github/actions/**/dist
|
||||
e2e/.env.cloud
|
||||
tmp
|
||||
temp
|
||||
/nxcache
|
||||
*.npmrc
|
||||
.history
|
||||
/ng2-components/ng2-alfresco-core/prebuilt-themes/
|
||||
.ng_pkg_build/
|
||||
/lib/export-new.json
|
||||
/lib/config/exportCheck.js
|
||||
/docs/sourceinfo
|
||||
/docs/docs.json
|
||||
coverage/
|
||||
/desktop.ini
|
||||
out-tsc
|
||||
/reports/
|
||||
e2e-result-*
|
||||
licenses.txt
|
||||
.DS_Store
|
||||
desktop.ini
|
||||
.angular
|
||||
NX
|
||||
.nx
|
||||
nxcache
|
||||
.husky
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#!/bin/sh
|
||||
. "$(dirname "$0")/_/husky.sh"
|
||||
|
||||
export NODE_OPTIONS=--max_old_space_size=8192
|
||||
npx lint-staged
|
||||
|
||||
+1
-1
@@ -151,7 +151,7 @@ See the [Alfresco community page](https://community.alfresco.com/community/appli
|
||||
If you want to completely enable CORS calls in your Content Services and Process Services,
|
||||
please refer to the following Alfresco documents:
|
||||
|
||||
* [Enable Cross Origin Resource Sharing (CORS) in Alfresco Process Services](http://docs.alfresco.com/process-services1.6/topics/enabling-cors.html)
|
||||
* [Enable Cross Origin Resource Sharing (CORS) in Alfresco Process Services](https://support.hyland.com/r/Alfresco/Alfresco-Process-Services/24.4/Alfresco-Process-Services/Configure/Overview/CORS)
|
||||
|
||||
* Enable Cross Origin Resource Sharing (CORS) in Alfresco Content Services
|
||||
|
||||
|
||||
+1
-1
@@ -8,6 +8,6 @@
|
||||
"source": "/**/**/i18n/en.json",
|
||||
"translation": "/%original_path%/%two_letters_code%.%file_extension%",
|
||||
"export_only_approved": "true",
|
||||
"update_option": "update_as_unapproved"
|
||||
"update_option": "update_without_changes"
|
||||
}
|
||||
]
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
sourceinfo
|
||||
docs.json
|
||||
@@ -61,7 +61,6 @@ A few other pages of information are also available:
|
||||
- [Localization in ADF](user-guide/localization.md)
|
||||
- [Theming](user-guide/theming.md)
|
||||
- [Transclusion](user-guide/transclusion.md)
|
||||
- [Typography](user-guide/typography.md)
|
||||
- [Walkthrough - adding indicators to highlight information about a node](user-guide/metadata-indicators.md)
|
||||
|
||||
<!--guide end-->
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
# Migrating from Angular 15 to Angular 16
|
||||
|
||||
This guide for migrating ADF from Angular version 15 to version 16. Follow these steps to ensure a smooth transition.
|
||||
|
||||
## 1. Update Nx
|
||||
|
||||
First, update the Nx development dependencies. Use the `nx migrate` command for this purpose.
|
||||
|
||||
```bash
|
||||
npx nx migrate 16.10.0
|
||||
```
|
||||
|
||||
Updated Nx dependencies:
|
||||
|
||||
```json
|
||||
{
|
||||
"nx": "16.10.0",
|
||||
"@nx/angular": "16.10.0",
|
||||
"@nx/eslint-plugin": "16.10.0",
|
||||
"@nx/js": "16.10.0",
|
||||
"@nx/node": "16.10.0",
|
||||
"@nx/storybook": "19.6.2",
|
||||
"@nx/workspace": "16.10.0"
|
||||
}
|
||||
```
|
||||
|
||||
**As of Nx 16 package scope has changed from `@nrwl/*` to `@nx/*`.**
|
||||
Nx's migration scripts will replace all `@nrwl` references in the project with `@nx`. This includes any imports, configuration files, and scripts.
|
||||
|
||||
## 2. Run Nx migrations
|
||||
|
||||
After the initial update a `migrations.json` file will be created containing all the additional changes that need to be made. You can run the migration script to apply these changes.
|
||||
|
||||
```bash
|
||||
npx nx migrate --run-migrations
|
||||
```
|
||||
|
||||
Those migrations should update required packages to the Angular 16 compatible version including Angular itself, Storybook, and others.
|
||||
|
||||
```json
|
||||
{
|
||||
"@angular/animations": "16.2.9",
|
||||
"@angular/cdk": "16.2.9",
|
||||
"@angular/common": "16.2.9",
|
||||
"@angular/compiler": "16.2.9",
|
||||
"@angular/core": "16.2.9",
|
||||
"@angular/forms": "16.2.9",
|
||||
"@angular/material": "16.2.9",
|
||||
"@angular/material-date-fns-adapter": "16.2.9",
|
||||
"@angular/platform-browser": "16.2.9",
|
||||
"@angular/platform-browser-dynamic": "16.2.9",
|
||||
"@angular/router": "16.2.9",
|
||||
"@schematics/angular": "16.2.9",
|
||||
"ng-packagr": "16.2.3"
|
||||
}
|
||||
```
|
||||
|
||||
Reference `storybook-migration-summary.md` file for more details on Storybook migration.
|
||||
|
||||
## 3. Manually update other dependencies
|
||||
|
||||
There are a few dependencies that require manual update, here is the list:
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"angular-oauth2-oidc": "16.0.0",
|
||||
"@apollo/client": "3.11.4",
|
||||
"chart.js": "4.4.4",
|
||||
"@mat-datetimepicker/core": "12.0.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@editorjs/editorjs": "2.30.5"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
```bash
|
||||
npm install --save angular-oauth2-oidc@16.0.0 @apollo/client@3.11.4 chart.js@4.4.4 @mat-datetimepicker/core@12.0.1
|
||||
npm install --save-dev @editorjs/editorjs@2.30.5
|
||||
```
|
||||
|
||||
## 4. Fixing CI/CD issues
|
||||
|
||||
### General migration issues
|
||||
|
||||
After running the migration script, you may need to manually fix some issues. Run common build targets to identify any problems.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=build --skip-nx-cache
|
||||
```
|
||||
|
||||
Work through all the problems topic by topic. If blocked by linting issues, disable the linting rules in the affected files. You can re-enable them in the next step.
|
||||
|
||||
### Lint jobs
|
||||
|
||||
After getting the build to work, run the lint jobs. Re-enable previously disabled linting rules and fix any issues that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=lint --skip-nx-cache
|
||||
```
|
||||
|
||||
### Unit tests
|
||||
|
||||
Despite Angular 16 not introducing major breaking changes, you may still encounter issues with unit tests. Run the unit tests and fix any problems that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=test --skip-nx-cache
|
||||
```
|
||||
@@ -0,0 +1,144 @@
|
||||
# Migrating from Angular 16 to Angular 17
|
||||
|
||||
This guide for migrating ADF from Angular version 16 to version 17. Follow these steps to ensure a smooth transition.
|
||||
|
||||
## 1. Run Nx migrate
|
||||
|
||||
Use the `nx migrate` command to automatically update Nx and Angular dependencies.
|
||||
|
||||
```bash
|
||||
npx nx migrate 17.3.1
|
||||
```
|
||||
|
||||
Updated Nx dependencies:
|
||||
|
||||
```json
|
||||
{
|
||||
"nx": "^20.0.0",
|
||||
"@nx/angular": "17.3.1",
|
||||
"@nx/eslint-plugin": "17.3.1",
|
||||
"@nx/js": "17.3.1",
|
||||
"@nx/node": "17.3.1",
|
||||
"@nx/storybook": "17.3.1",
|
||||
"@nx/workspace": "17.3.1"
|
||||
}
|
||||
```
|
||||
|
||||
Updated Angular dependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"@angular/animations": "17.1.3",
|
||||
"@angular/cdk": "17.1.2",
|
||||
"@angular/common": "17.1.3",
|
||||
"@angular/compiler": "17.1.3",
|
||||
"@angular/core": "17.1.3",
|
||||
"@angular/forms": "17.1.3",
|
||||
"@angular/material": "17.1.2",
|
||||
"@angular/material-date-fns-adapter": "17.1.2",
|
||||
"@angular/platform-browser": "17.1.3",
|
||||
"@angular/platform-browser-dynamic": "17.1.3",
|
||||
"@angular/router": "17.1.3",
|
||||
"zone.js": "0.14.8",
|
||||
"ng-packagr": "17.1.2",
|
||||
"@schematics/angular": "17.1.4"
|
||||
}
|
||||
```
|
||||
|
||||
## 2. Manually update other dependencies
|
||||
|
||||
There are a few dependencies that require manual update, here is the list:
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"apollo-angular": "6.0.0",
|
||||
"@mat-datetimepicker/core": "13.0.2"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@typescript-eslint/eslint-plugin": "6.21.0",
|
||||
"@typescript-eslint/parser": "6.21.0",
|
||||
"@typescript-eslint/typescript-estree": "7.1.1",
|
||||
"eslint-config-prettier": "9.1.0"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
```bash
|
||||
npm install --save apollo-angular@6.0.0 @mat-datetimepicker/core@13.0.2
|
||||
npm install --save-dev @typescript-eslint/eslint-plugin@6.21.0 @typescript-eslint/parser@6.21.0 @typescript-eslint/typescript-estree@7.1.1 eslint-config-prettier@9.1.0
|
||||
```
|
||||
|
||||
## 3. Migrating js-api from mocha to jest
|
||||
|
||||
In order to simplify the migration process, we are migrating the test runner from mocha to jest.
|
||||
|
||||
### Installing dependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"jest": "^29.7.0",
|
||||
"jest-environment-jsdom": "^29.7.0",
|
||||
"jest-preset-angular": "14.4.2",
|
||||
"@types/jest": "^29.5.14"
|
||||
}
|
||||
```
|
||||
|
||||
```bash
|
||||
npm install --save-dev jest jest-environment-jsdom jest-preset-angular@14 @types/jest
|
||||
```
|
||||
|
||||
### Performing the migration
|
||||
|
||||
It's recommended to use both test runners in parallel during the migration process. Nx project test jobs configuration:
|
||||
|
||||
```json
|
||||
{
|
||||
"test-old-mocha": {
|
||||
"executor": "nx:run-commands",
|
||||
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
||||
"options": {
|
||||
"codeCoverage": true
|
||||
}
|
||||
},
|
||||
"test": {
|
||||
"executor": "@nx/jest:jest",
|
||||
"outputs": ["{workspaceRoot}/coverage/{projectRoot}"],
|
||||
"options": {
|
||||
"jestConfig": "lib/js-api/jest.config.ts",
|
||||
"passWithNoTests": true
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
- delete `.mocharc.json`
|
||||
- delete `test-old-mocha` job from the project configuration
|
||||
|
||||
## 4. Fixing CI/CD issues
|
||||
|
||||
### General migration issues
|
||||
|
||||
After running the migration script, you may need to manually fix some issues. Run common build targets to identify any problems.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=build --skip-nx-cache
|
||||
```
|
||||
|
||||
Work through all the problems topic by topic. If blocked by linting issues, disable the linting rules in the affected files. You can re-enable them in the next step.
|
||||
|
||||
### Lint jobs
|
||||
|
||||
After getting the build to work, run the lint jobs. Re-enable previously disabled linting rules and fix any issues that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=lint --skip-nx-cache
|
||||
```
|
||||
|
||||
### Unit tests
|
||||
|
||||
Despite Angular 16 not introducing major breaking changes, you may still encounter issues with unit tests. Run the unit tests and fix any problems that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=test --skip-nx-cache
|
||||
```
|
||||
@@ -0,0 +1,102 @@
|
||||
# Migrating from Angular 17 to Angular 18
|
||||
|
||||
This guide describes how to migrate ADF from Angular version 17 to version 18. Follow these steps to ensure a smooth transition.
|
||||
|
||||
## 1. Update changed dependencies
|
||||
|
||||
Update the following packages in your `package.json`:
|
||||
|
||||
### dependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"@angular/animations": "18.2.13",
|
||||
"@angular/cdk": "18.2.14",
|
||||
"@angular/common": "18.2.13",
|
||||
"@angular/compiler": "18.2.13",
|
||||
"@angular/core": "18.2.13",
|
||||
"@angular/forms": "18.2.13",
|
||||
"@angular/material": "18.2.14",
|
||||
"@angular/material-date-fns-adapter": "18.2.14",
|
||||
"@angular/platform-browser": "18.2.13",
|
||||
"@angular/platform-browser-dynamic": "18.2.13",
|
||||
"@angular/router": "18.2.13",
|
||||
"@apollo/client": "3.13.1",
|
||||
"@mat-datetimepicker/core": "14.0.0",
|
||||
"apollo-angular": "10.0.3",
|
||||
"minimatch-browser": "1.0.0",
|
||||
"node-fetch": "^3.3.2",
|
||||
"zone.js": "0.14.10"
|
||||
}
|
||||
```
|
||||
|
||||
### devDependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"@angular-devkit/architect": "0.1802.13",
|
||||
"@angular-devkit/build-angular": "18.2.14",
|
||||
"@angular-devkit/core": "18.2.13",
|
||||
"@angular-devkit/schematics": "18.2.13",
|
||||
"@angular/compiler-cli": "18.2.13",
|
||||
"@nx/angular": "19.2.0",
|
||||
"@nx/js": "18.3.5",
|
||||
"@nx/workspace": "18.3.5",
|
||||
"@storybook/angular": "8.4.7",
|
||||
"ng-packagr": "18.2.1",
|
||||
"npm-run-all": "^4.1.5",
|
||||
"postcss": "8.4.41",
|
||||
"postcss-sass": "^0.5.0",
|
||||
"tsconfig-paths": "^4.1.1",
|
||||
"typescript": "5.5.4",
|
||||
"webpack-cli": "^5.1.4"
|
||||
}
|
||||
```
|
||||
|
||||
## 2. Material mixins update
|
||||
|
||||
Angular Material 18 introduced Material 3 mixins as new default. As we are still using Material 2, we need to ensure that we are still using the Material 2 version.
|
||||
|
||||
In order to use Material 2 mixins, you need to add a `m2-` prefix to the mixins in your stylesheets. For example:
|
||||
|
||||
```scss
|
||||
mat.define-typography-config()
|
||||
mat.get-color-from-palette()
|
||||
```
|
||||
|
||||
should be changed to:
|
||||
|
||||
```scss
|
||||
mat.m2-define-typography-config()
|
||||
mat.m2-get-color-from-palette()
|
||||
```
|
||||
|
||||
## 3. Fixing CI/CD issues
|
||||
|
||||
After running the migration script, you may need to manually fix some issues. Run common build targets to identify any problems.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=build --skip-nx-cache
|
||||
```
|
||||
|
||||
If blocked by linting issues, disable the linting rules in the affected files. You can re-enable them in the next step.
|
||||
|
||||
### Lint jobs
|
||||
|
||||
After getting the build to work, run the lint jobs. Re-enable previously disabled linting rules and fix any issues that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=lint --skip-nx-cache
|
||||
```
|
||||
|
||||
### Unit tests
|
||||
|
||||
Run the unit tests and fix any problems that arise.
|
||||
|
||||
```bash
|
||||
npx nx run-many --target=test --skip-nx-cache
|
||||
```
|
||||
|
||||
## 4. Review Angular 18 breaking changes
|
||||
|
||||
Angular 18 is a minor update with no major breaking changes for most projects. However, always review the [Angular 18 changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md) and [official update guide](https://angular.dev/update-guide?v=17.0-18.0).
|
||||
@@ -200,7 +200,7 @@ The viewer component consists of separate Views that handle particular file type
|
||||
|
||||
For those extensions and mime types that cannot be natively displayed in the browser, the Viewer will try to fetch the corresponding rendition using the [renditions service api](../services/renditions.service.md).
|
||||
|
||||
For the full list of supported types please refer to: [File types that support preview and thumbnail generation](http://docs.alfresco.com/5.2/references/valid-transformations-preview.html).
|
||||
For the full list of supported types please refer to: [File types that support preview and thumbnail generation](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Administer/Transformation/File-types-that-support-preview-and-thumbnail-generation).
|
||||
|
||||
### Configuring PDF.js library
|
||||
|
||||
@@ -245,16 +245,17 @@ The Viewer supports dynamically-loaded viewer preview extensions, to know more a
|
||||
|
||||
You can define your own custom handler to override supported file formats or handle other file formats that are not yet supported by
|
||||
the component. Below is an example that shows how to use the `adf-viewer-extension`
|
||||
to handle 3D data files:
|
||||
to handle 3D data files. `contentLoaded` should be an `EventEmitter` that will emit as soon as the component responsible for rendering finishes.
|
||||
|
||||
```html
|
||||
<adf-alfresco-viewer [nodeId]="nodeId">
|
||||
<ng-template #viewerExtensions>
|
||||
<adf-viewer-extension [supportedExtensions]="['obj','3ds']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent" let-extension="extension">
|
||||
<ng-template let-urlFileContent="urlFileContent" let-extension="extension" let-markAsLoaded="markAsLoaded">
|
||||
<threed-viewer
|
||||
[urlFile]="urlFileContent"
|
||||
[extension]="extension">
|
||||
[extension]="extension"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</threed-viewer>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
@@ -270,17 +271,19 @@ You need to keep all instances of `adf-viewer-extension` inside `viewerExtension
|
||||
<adf-alfresco-viewer [nodeId]="nodeId">
|
||||
<ng-template #viewerExtensions>
|
||||
<adf-viewer-extension [supportedExtensions]="['xls','xlsx']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent">
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded">
|
||||
<my-custom-xls-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-xls-component>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
|
||||
<adf-viewer-extension [supportedExtensions]="['txt']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent" >
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded">
|
||||
<my-custom-txt-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-txt-component>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
|
||||
@@ -67,6 +67,7 @@ Displays the documents from a repository.
|
||||
| contextMenuActions | `boolean` | false | Toggles context menus for each row |
|
||||
| currentFolderId | `string` | null | The ID of the folder node to display or a reserved string alias for special sources |
|
||||
| displayCheckboxesOnHover | `boolean` | false | Enables checkboxes in datatable rows being displayed on hover only. |
|
||||
| displayDragAndDropHint | `boolean` | true | Display drag and drop hint. |
|
||||
| emptyFolderImageUrl | `string` | | Custom image for empty folder. Default value: './assets/images/empty_doc_lib.svg' |
|
||||
| filterValue | `any` | | Initial value for filter. |
|
||||
| headerFilters | `boolean` | false | Toggles the header filters mode. |
|
||||
|
||||
@@ -39,7 +39,7 @@ Implements a [search widget](../../../lib/content-services/src/lib/search/models
|
||||
| Name | Type | Description |
|
||||
| ---- | ---- | ----------- |
|
||||
| field | string | Field to to use |
|
||||
| format | string | Value format. Uses string substitution to allow all sorts of [range queries](https://docs.alfresco.com/5.2/concepts/rm-searchsyntax-ranges.html). |
|
||||
| format | string | Value format. Uses string substitution to allow all sorts of [range queries](https://support.hyland.com/r/Alfresco/Alfresco-Search-Services/2.0/Alfresco-Search-Services/Using/Full-text-search-reference/Search-for-ranges). |
|
||||
| hideDefaultAction | boolean | Show/hide the widget actions. By default is false. |
|
||||
|
||||
## Details
|
||||
@@ -50,7 +50,7 @@ in a search query.
|
||||
|
||||
#### Range query format
|
||||
|
||||
See the [Search for ranges](https://docs.alfresco.com/5.2/concepts/rm-searchsyntax-ranges.html) page in the ACS docs for more information about the date range format.
|
||||
See the [Search for ranges](https://support.hyland.com/r/Alfresco/Alfresco-Governance-Services/23.4/Alfresco-Governance-Services/Using/Searching-records/Advanced-search-options) page in the ACS docs for more information about the date range format.
|
||||
|
||||
The `format` setting specifies how the date is displayed textually. Most of the format is
|
||||
displayed as-is but you can use `{FROM}` and `{TO}` markers to interpolate the range limits
|
||||
|
||||
@@ -34,7 +34,7 @@ Creates a new Content Services document library/site.
|
||||
|
||||
This component lets the user create a new document library/site with the usual
|
||||
name, ID, description and access restrictions. See the
|
||||
[Sites](https://docs.alfresco.com/6.0/concepts/sites-intro.html)
|
||||
[Sites](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Using/Sites)
|
||||
section of the Content Services documentation for more information.
|
||||
|
||||
## See also
|
||||
|
||||
@@ -23,10 +23,10 @@ Manages tags in Content Services.
|
||||
- _nodeId:_ `string` - Id of node to which tags should be assigned.
|
||||
- _tags:_ `TagBody[]` - List of tags to create and assign or just assign if they already exist.
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TagPaging`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-core-rest-api/docs/TagPaging.md)`|`[`TagEntry`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-core-rest-api/docs/TagEntry.md)`>` - Just linked tags to node or single tag if linked only one tag.
|
||||
- **createTags**(tags: `TagBody[]`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TagEntry`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-core-rest-api/docs/TagEntry.md)`[]>`<br/>
|
||||
- **createTags**(tags: `TagBody[]`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TagEntry`](../../../lib/js-api/src/api/content-rest-api/docs/TagsApi.md#TagEntry) `|` [`TagPaging`](../../../lib/js-api/src/api/content-rest-api/docs/TagsApi.md#TagPaging)`>`<br/>
|
||||
Creates tags.
|
||||
- _tags:_ `TagBody[]` - list of tags to create.
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TagEntry`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-core-rest-api/docs/TagEntry.md)`[]>` - Created tags.
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TagEntry`](../../../lib/js-api/src/api/content-rest-api/docs/TagsApi.md#TagEntry) `|` [`TagPaging`](../../../lib/js-api/src/api/content-rest-api/docs/TagsApi.md#TagPaging)`>` - Created tags.
|
||||
- **deleteTag**(tagId: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<void>`<br/>
|
||||
Deletes a tag with tagId. This will cause the tag to be removed from all nodes. You must have admin rights to delete a tag.
|
||||
- _tagId:_ `string` - of the tag to be deleted
|
||||
@@ -69,7 +69,7 @@ Manages tags in Content Services.
|
||||
## Details
|
||||
|
||||
Content Services supports
|
||||
[tagging](http://docs.alfresco.com/5.2/tasks/site-content-tag.html)
|
||||
[tagging](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Develop/REST-API-Guide/Searching-for-Content)
|
||||
of file and folder nodes to assist with searches. A tag is a short
|
||||
text string added to an item, rather like a hashtag in social media.
|
||||
|
||||
|
||||
@@ -69,7 +69,7 @@ Displays the Start [`Form`](../../../lib/process-services/src/lib/task-list/mode
|
||||
|
||||
The [Start Process component](../../process-services/components/start-process.component.md) uses the Start [`Form`](../../../lib/process-services/src/lib/task-list/models/form.model.ts) component
|
||||
to display the
|
||||
[start form](http://docs.alfresco.com/process-services1.6/topics/none_start_event.html)
|
||||
[start form](https://support.hyland.com/r/Alfresco/Alfresco-Process-Services/24.3/Alfresco-Process-Services/Using/Process-Services/BPMN-Editor)
|
||||
for the process.
|
||||
|
||||
The `outcomeClick` event is passed a string containing the ID of the outcome button that
|
||||
|
||||
@@ -64,6 +64,7 @@ Using with file [`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob):
|
||||
| urlFile | `string` | "" | If you want to load an external file that does not come from ACS you can use this URL to specify where to load the file from. |
|
||||
| viewerTemplateExtensions | [`TemplateRef`](https://angular.io/api/core/TemplateRef)`<any>` | null | Template containing ViewerExtensionDirective instances providing different viewer extensions based on supported file extension. |
|
||||
| nodeId | `string` | null | Identifier of a node opened by a viewer. |
|
||||
| customError | `string` | undefined | Custom error message to be displayed in the viewer. |
|
||||
|
||||
### Events
|
||||
|
||||
@@ -205,22 +206,24 @@ The Viewer supports dynamically-loaded viewer preview extensions, to know more a
|
||||
#### Code extension mechanism
|
||||
|
||||
You can define your own custom handler to override supported file formats or handle other file formats that are not yet supported by
|
||||
the [Viewer render component](viewer.component.md). In order to do that first you need to define a template containing at least one `adf-viewer-extension`:
|
||||
the [Viewer render component](viewer.component.md). In order to do that first you need to define a template containing at least one `adf-viewer-extension`. `contentLoaded` should be an `EventEmitter` that will emit as soon as the component responsible for rendering finishes.
|
||||
|
||||
```html
|
||||
<ng-template #viewerExtensions>
|
||||
<adf-viewer-extension [supportedExtensions]="['xls','xlsx']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent">
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded">
|
||||
<my-custom-xls-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-xls-component>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
|
||||
<adf-viewer-render-extension [supportedExtensions]="['txt']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent" >
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded">
|
||||
<my-custom-txt-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-txt-component>
|
||||
</ng-template>
|
||||
</adf-viewer-render-extension>
|
||||
|
||||
@@ -90,6 +90,7 @@ See the [Custom layout](#custom-layout) section for full details of all availabl
|
||||
| viewerExtensions | [`TemplateRef`](https://angular.io/api/core/TemplateRef)`<any>` | null | Template containing ViewerExtensionDirective instances providing different viewer extensions based on supported file extension. |
|
||||
| nodeId | `string` | null | Identifier of a node opened by a viewer. |
|
||||
| nodeMimeType | `string` | undefined | Original node mime type, should be provided when renditiona mime type is different. |
|
||||
| customError | `string` | undefined | Custom error message to be displayed in the viewer. |
|
||||
|
||||
### Events
|
||||
|
||||
@@ -185,10 +186,9 @@ npm install pdfjs-dist
|
||||
|
||||
```ts
|
||||
// PDF.js
|
||||
require('pdfjs-dist/web/compatibility.js');
|
||||
const pdfjsLib = require('pdfjs-dist');
|
||||
pdfjsLib.PDFJS.workerSrc = './pdf.worker.js';
|
||||
require('pdfjs-dist/web/pdf_viewer.js');
|
||||
pdfjsLib.PDFJS.workerSrc = './pdf.worker.min.mjs';
|
||||
require('pdfjs-dist/web/pdf_viewer.mjs');
|
||||
```
|
||||
|
||||
- Update the `plugins` section of the `webpack.common.js` file with the following lines:
|
||||
@@ -197,8 +197,8 @@ require('pdfjs-dist/web/pdf_viewer.js');
|
||||
new CopyWebpackPlugin([
|
||||
...
|
||||
{
|
||||
from: 'node_modules/pdfjs-dist/build/pdf.worker.js',
|
||||
to: 'pdf.worker.js'
|
||||
from: 'node_modules/pdfjs-dist/build/pdf.worker.min.mjs',
|
||||
to: 'pdf.worker.min.mjs'
|
||||
}
|
||||
])
|
||||
```
|
||||
@@ -215,16 +215,17 @@ The Viewer supports dynamically-loaded viewer preview extensions, to know more a
|
||||
|
||||
You can define your own custom handler to override supported file formats or handle other file formats that are not yet supported by
|
||||
the [Viewer component](viewer.component.md). Below is an example that shows how to use the `adf-viewer-extension`
|
||||
to handle 3D data files:
|
||||
to handle 3D data files. `contentLoaded` should be an `EventEmitter` that will emit as soon as the component responsible for rendering finishes.
|
||||
|
||||
```html
|
||||
<adf-viewer [urlFile]="urlFile">
|
||||
<ng-template #viewerExtensions>
|
||||
<adf-viewer-extension [supportedExtensions]="['obj','3ds']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent" let-extension="extension">
|
||||
<ng-template let-urlFileContent="urlFileContent" let-extension="extension" let-markAsLoaded="markAsLoaded">
|
||||
<threed-viewer
|
||||
[urlFile]="urlFileContent"
|
||||
[extension]="extension">
|
||||
[extension]="extension"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</threed-viewer>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
@@ -239,17 +240,19 @@ You need to keep all instances of `adf-viewer-extension` inside `viewerExtension
|
||||
<adf-viewer [urlFile]="urlFile">
|
||||
<ng-template #viewerExtensions>
|
||||
<adf-viewer-extension [supportedExtensions]="['xls','xlsx']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent">
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded">
|
||||
<my-custom-xls-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-xls-component>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
|
||||
<adf-viewer-extension [supportedExtensions]="['txt']" #extension>
|
||||
<ng-template let-urlFileContent="urlFileContent" >
|
||||
<ng-template let-urlFileContent="urlFileContent" let-markAsLoaded="markAsLoaded" >
|
||||
<my-custom-txt-component
|
||||
urlFileContent="urlFileContent">
|
||||
urlFileContent="urlFileContent"
|
||||
(contentLoaded)="markAsLoaded()">
|
||||
</my-custom-txt-component>
|
||||
</ng-template>
|
||||
</adf-viewer-extension>
|
||||
|
||||
@@ -0,0 +1,114 @@
|
||||
---
|
||||
Title: Form model
|
||||
Added: 2025-02-19
|
||||
Status: Active
|
||||
Last reviewed: 2025-02-19
|
||||
---
|
||||
|
||||
# [Form model](../../../lib/core/src/lib/form/components/widgets/core/form.model.ts "Defined in form.model.ts")
|
||||
|
||||
Contains the value and metadata for a form.
|
||||
|
||||
## Properties
|
||||
|
||||
| Name | Type | Default | Description |
|
||||
| ---- | ---- | ------- | ----------- |
|
||||
|UNSET_TASK_NAME| string | 'Nameless task'|static property|
|
||||
|SAVE_OUTCOME| string | '$save'|static property|
|
||||
|COMPLETE_OUTCOME| string | '$complete'|static property|
|
||||
|START_PROCESS_OUTCOME| string | '$startProcess'|static property|
|
||||
|id| string | number||id of form|
|
||||
|name| string||form name|
|
||||
|taskId| string||task id|
|
||||
|confirmMessage| ConfirmMessage||confirmation message|
|
||||
|taskName |string| FormModel.UNSET_TASK_NAME|task name|
|
||||
|processDefinitionId| string||Process definition id |
|
||||
|selectedOutcome| string||selected outcome|
|
||||
|enableFixedSpace| boolean||should fixed space be enabled|
|
||||
|displayMode| any||which mode should be displayed|
|
||||
|fieldsCache| FormFieldModel[] | []|cache for fields|
|
||||
|json| any||json with form configuration|
|
||||
|nodeId| string||id of node|
|
||||
|values| FormValues | {}|form values|
|
||||
|tabs| TabModel[] | []|tabs|
|
||||
|fields| (ContainerModel | FormFieldModel)[] | []|form fields|
|
||||
|outcomes| FormOutcomeModel[] | []|set of outcomes|
|
||||
|fieldValidators| FormFieldValidator[] | []|validators for fields|
|
||||
|customFieldTemplates| FormFieldTemplates | {}|custom templates|
|
||||
|theme?| ThemeModel||theme|
|
||||
|className| string||class name|
|
||||
|readOnly | false||is form read only|
|
||||
|isValid | true||is form valid|
|
||||
|processVariables| ProcessVariableModel[] | []|process variables|
|
||||
|variables| FormVariableModel[] | []|variables|
|
||||
|
||||
## Methods
|
||||
|
||||
- `onFormFieldChanged(field: FormFieldModel)`
|
||||
Triggered when field is changed. Validates field and calls FormService
|
||||
- `validateForm(): void`
|
||||
Validates entire form and all form fields.
|
||||
- `validateField(field: FormFieldModel): void`
|
||||
Validates a specific form field, triggers form validation.
|
||||
- `parseRootFields(json: any): (ContainerModel | FormFieldModel)[]`
|
||||
Activiti supports 3 types of root fields: container|group|dynamic-table
|
||||
- `loadData(formValues: FormValues)`
|
||||
Loads external data and overrides field values. Typically used when form definition and form data coming from different sources
|
||||
- `canOverrideFieldValueWithProcessValue(field: FormFieldModel, variableId: string, formValues: FormValues): boolean`
|
||||
Checks if field value can be overriden with process value
|
||||
- `isDefined(value: string): boolean`
|
||||
Check if variable is defined
|
||||
- `getFormVariable(identifier: string): FormVariableModel`
|
||||
Returns a form variable that matches the identifier.
|
||||
- `getDefaultFormVariableValue(identifier: string): any`
|
||||
Returns a value of the form variable that matches the identifier. Provides additional conversion of types (date, boolean).
|
||||
- `getProcessVariableValue(name: string): any`
|
||||
Returns a process variable value. When mapping a process variable with a form variable the mapping is already resolved by the rest API with the name of variables.formVariableName.
|
||||
- `parseValue(type: string, value: any): any`
|
||||
Parse value data and boolean
|
||||
- `hasTabs(): boolean`
|
||||
Check if form has tabs
|
||||
- `hasFields(): boolean`
|
||||
Check if there are any fields
|
||||
- `hasOutcomes(): boolean`
|
||||
Check if form has outcomes
|
||||
- `getFieldById(fieldId: string): FormFieldModel`
|
||||
Find field by id
|
||||
- `getFormFields(filterTypes?: string[]): FormFieldModel[]`
|
||||
Get form fields
|
||||
- `processFields(fields: (ContainerModel | FormFieldModel)[], formFieldModel: FormFieldModel[]): void`
|
||||
Process fields
|
||||
- `isContainerField(field: ContainerModel | FormFieldModel): field is ContainerModel`
|
||||
Check if it is container
|
||||
- `isSectionField(field: ContainerModel | FormFieldModel): field is FormFieldModel`
|
||||
Check if it is section
|
||||
- `handleSectionField(section: FormFieldModel, formFieldModel: FormFieldModel[]): void`
|
||||
Handle section
|
||||
- `handleContainerField(container: ContainerModel, formFieldModel: FormFieldModel[]): void`
|
||||
Handle container
|
||||
- `handleSingleField(field: FormFieldModel, formFieldModel: FormFieldModel[]): void`
|
||||
Handle single field
|
||||
- `filterFieldsByType(fields: FormFieldModel[], types?: string[]): FormFieldModel[]`
|
||||
Filter fields based on type
|
||||
- `markAsInvalid(): void`
|
||||
Set form as invalid
|
||||
- `parseOutcomes()`
|
||||
Parse outcomes from json
|
||||
- `addValuesNotPresent(valuesToSetIfNotPresent: FormValues)`
|
||||
Set values if they are not present
|
||||
- `isValidDropDown(key: string): boolean`
|
||||
Validates dropdown
|
||||
- `setNodeIdValueForViewersLinkedToUploadWidget(linkedUploadWidgetContentSelected: UploadWidgetContentLinkModel)`
|
||||
Set node id
|
||||
- `changeFieldVisibility(fieldId: string, visibility: boolean): void`
|
||||
Changes field visibility
|
||||
- `changeFieldDisabled(fieldId: string, disabled: boolean): void`
|
||||
Changes disabled status of field
|
||||
- `changeFieldRequired(fieldId: string, required: boolean): void`
|
||||
Changes required status of field
|
||||
- `changeFieldValue(fieldId: string, value: any): void`
|
||||
Changes field value
|
||||
- `changeVariableValue(variableId: string, value: any): void`
|
||||
Changes variable value
|
||||
- `loadInjectedFieldValidators(injectedFieldValidators: FormFieldValidator[]): void`
|
||||
Checks it there are any injectedValidators and adds them to the array of field validators.
|
||||
@@ -191,3 +191,32 @@ class MyComponent {
|
||||
- `handleError(error: any):`[`Observable`](http://reactivex.io/documentation/observable.html)`<any>`
|
||||
Reports an error message.
|
||||
- `error` - Data object with optional \`message\` and \`status\` fields for the error
|
||||
|
||||
### Properties
|
||||
| Name | Type | Description |
|
||||
| ---- | --------- | ----------- |
|
||||
| fieldValidators | FormFieldValidator[] | Array of Field Validators injected with token and then passed to FormModel |
|
||||
|
||||
|
||||
### Inject Preference service
|
||||
|
||||
Token: [`FORM_SERVICE_FIELD_VALIDATORS_TOKEN`]
|
||||
A DI token that allows to inject additional form field validators.
|
||||
|
||||
```ts
|
||||
import { NgModule } from '@angular/core';
|
||||
import { FORM_SERVICE_FIELD_VALIDATORS_TOKEN } from '@alfresco/adf-core';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
...Import Required Modules
|
||||
],
|
||||
providers: [
|
||||
{
|
||||
provide: FORM_SERVICE_FIELD_VALIDATORS_TOKEN,
|
||||
useValue: [new AdditionalFormFieldValidator()]
|
||||
}
|
||||
]
|
||||
})
|
||||
export class ExampleModule {}
|
||||
```
|
||||
|
||||
@@ -40,6 +40,10 @@ Manipulates content related to a Process Instance or Task Instance in APS.
|
||||
Gets the thumbnail for a related content file.
|
||||
- _contentId:_ `number` - ID of the related content
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob)`>` - Binary data of the thumbnail image
|
||||
- **getContentRenditionTypePreview**(contentId: `number`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob)`>`<br/>
|
||||
Gets the preview rendition for a related content file.
|
||||
- _contentId:_ `number` - ID of the related content
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`Blob`](https://developer.mozilla.org/en-US/docs/Web/API/Blob)`>` - Binary data of the related content
|
||||
- **getFileContent**(contentId: `number`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`RelatedContentRepresentation`](https://github.com/Alfresco/alfresco-js-api/blob/master/src/alfresco-activiti-rest-api/docs/RelatedContentRepresentation.md)`>`<br/>
|
||||
Gets the metadata for a related content item.
|
||||
- _contentId:_ `number` - ID of the content item
|
||||
@@ -325,6 +329,26 @@ The response looks like in this sample:
|
||||
|
||||
See `getProcessRelatedContent` and `getTaskRelatedContent` for how to get to the `contentId`.
|
||||
|
||||
#### getContentRenditionTypePreview(contentId: number): Observable`<Blob>`
|
||||
|
||||
Get the preview type rendition for a related content file. A content file might be for example an
|
||||
MS Word document. This method would give you the PDF preview for this document,
|
||||
if it has been generated:
|
||||
|
||||
```ts
|
||||
const contentId = 1;
|
||||
this.contentService.getContentRenditionTypePreview(contentId).subscribe(
|
||||
res => {
|
||||
console.log('Response Preview BLOB: ', res);
|
||||
}, error => {
|
||||
console.log('Error: ', error);
|
||||
});
|
||||
```
|
||||
|
||||
The preview BLOB response looks something like this:
|
||||
|
||||
`Blob(44101) {size: 44101, type: "application/pdf"}`
|
||||
|
||||
#### getProcessRelatedContent(processId: string): Observable`<any>`
|
||||
|
||||
Get related content items for passed in Process Instance ID, only metadata for related content is returned:
|
||||
|
||||
@@ -65,7 +65,7 @@ For example, a raw text file might be converted to HTML to enable better formatt
|
||||
in a web browser or a PDF might be converted to an equivalent bitmap image. A
|
||||
_rendition_ is a prearranged conversion that is set up for an item for convenient
|
||||
repeated use. More information about renditions is available in the
|
||||
[Content Services documentation](https://docs.alfresco.com/5.2/references/dev-extension-points-content-transformer.html).
|
||||
[Content Services documentation](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Develop/In-Process-Platform-Extension-Points/Content-Transformers-and-Renditions?tocId=MzBswf2LNNDFaGmBgO1hfg).
|
||||
|
||||
In the [Renditions service](renditions.service.md) methods, the `nodeId` is a string identifying the content
|
||||
node that the rendition applies to. This can be obtained from
|
||||
|
||||
@@ -54,3 +54,4 @@ The pages linked below contain the licenses for all third party dependencies of
|
||||
- [ADF 7.0.0-alpha.4](license-info-7.0.0-alpha.4.md)
|
||||
- [ADF 7.0.0-alpha.6](license-info-7.0.0-alpha.6.md)
|
||||
- [ADF 7.0.0-alpha.7](license-info-7.0.0-alpha.7.md)
|
||||
- [ADF 7.0.0](license-info-7.0.0.md)
|
||||
|
||||
@@ -0,0 +1,56 @@
|
||||
---
|
||||
Title: License info, alfresco-ng2-components 7.0.0
|
||||
---
|
||||
|
||||
# License information for alfresco-ng2-components 7.0.0
|
||||
|
||||
This page lists all third party libraries the project depends on.
|
||||
|
||||
## Libraries
|
||||
|
||||
| Name | Version | License |
|
||||
| --- | --- | --- |
|
||||
| [@angular/animations](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/cdk](https://github.com/angular/components) | 17.1.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/common](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/compiler](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/core](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/forms](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/material-date-fns-adapter](https://github.com/angular/components) | 17.1.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/material](https://github.com/angular/components) | 17.1.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/platform-browser-dynamic](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/platform-browser](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@angular/router](https://github.com/angular/angular) | 17.1.3 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@apollo/client](https://github.com/apollographql/apollo-client) | 3.11.4 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@cspell/eslint-plugin](https://github.com/streetsidesoftware/cspell) | 8.16.1 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@mat-datetimepicker/core](https://github.com/kuhnroyal/mat-datetimepicker) | 13.0.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@ngx-translate/core](https://github.com/ngx-translate/core) | 14.0.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@nx/webpack](https://github.com/nrwl/nx) | 20.4.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [@valano/change-font-size](https://github.com/VitoAlbano/change-font-size) | 1.0.1 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [angular-oauth2-oidc-jwks](https://github.com/manfredsteyer/angular-oauth2-oidc) | 17.0.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [angular-oauth2-oidc](https://github.com/manfredsteyer/angular-oauth2-oidc) | 17.0.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [apollo-angular](https://github.com/kamilkisiela/apollo-angular) | 6.0.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [chart.js](https://github.com/chartjs/Chart.js) | 4.4.4 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [cropperjs](https://github.com/fengyuanchen/cropperjs) | 1.6.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [date-fns](https://github.com/date-fns/date-fns) | 2.30.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [dotenv-expand](https://github.com/motdotla/dotenv-expand) | 11.0.7 | [BSD-2-Clause](http://www.opensource.org/licenses/BSD-2-Clause) |
|
||||
| dotenv-expand | 5.1.0 | [BSD-2-Clause](http://www.opensource.org/licenses/BSD-2-Clause) |
|
||||
| [event-emitter](https://github.com/medikoo/event-emitter) | 0.3.5 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [graphql-ws](https://github.com/enisdenjo/graphql-ws) | 5.16.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [material-icons](https://github.com/marella/material-icons) | 1.13.13 | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 10.0.1 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 3.1.2 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 5.1.6 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 7.4.6 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 9.0.3 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [minimatch](https://github.com/isaacs/minimatch) | 9.0.5 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [ng2-charts](https://github.com/valor-software/ng2-charts) | 4.1.1 | [ISC](https://www.isc.org/downloads/software-support-policy/isc-license/) |
|
||||
| [pdfjs-dist](https://github.com/mozilla/pdfjs-dist) | 3.3.122 | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) |
|
||||
| [raphael](https://github.com/DmitryBaranovskiy/raphael) | 2.3.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [rxjs](https://github.com/reactivex/rxjs) | 7.8.1 | [Apache-2.0](http://www.apache.org/licenses/LICENSE-2.0) |
|
||||
| [subscriptions-transport-ws](https://github.com/apollostack/subscriptions-transport-ws) | 0.11.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [superagent](https://github.com/ladjs/superagent) | 9.0.2 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [ts-morph](https://github.com/dsherret/ts-morph) | 20.0.0 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
| [tslib](https://github.com/Microsoft/tslib) | 2.8.1 | [0BSD](http://landley.net/toybox/license.html) |
|
||||
| [zone.js](https://github.com/angular/angular) | 0.14.8 | [MIT](http://www.opensource.org/licenses/MIT) |
|
||||
|
||||
@@ -85,11 +85,13 @@ The template defined inside `empty-form` will be shown when no form definition i
|
||||
| fieldValidators | [`FormFieldValidator`](../../../lib/core/src/lib/form/components/widgets/core/form-field-validator.ts)`[]` | | [FormFieldValidator](../../../lib/core/src/lib/form/components/widgets/core/form-field-validator.ts) allow to override the form field validators provided. |
|
||||
| form | [`FormModel`](../../../lib/core/src/lib/form/components/widgets/core/form.model.ts) | | Underlying form model instance. |
|
||||
| formId | `string` | | Task id to fetch corresponding form and values. |
|
||||
| isNextTaskCheckboxChecked | `boolean` | false | Whether the `Open next task` checkbox is checked by default or not. |
|
||||
| nameNode | `string` | | Name to assign to the new node where the metadata are stored. |
|
||||
| path | `string` | | Path of the folder where the metadata will be stored. |
|
||||
| processInstanceId | `string` | | ProcessInstanceId id to fetch corresponding form and values. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the form. Forces all form widgets to render as readonly if enabled. |
|
||||
| showCompleteButton | `boolean` | true | Toggle rendering of the `Complete` outcome button. |
|
||||
| showNextTaskCheckbox | `boolean` | false | Toggle rendering of the `Open next task` checkbox. |
|
||||
| showRefreshButton | `boolean` | true | Toggle rendering of the `Refresh` button. |
|
||||
| showSaveButton | `boolean` | true | Toggle rendering of the `Save` outcome button. |
|
||||
| showTitle | `boolean` | true | Toggle rendering of the form title. |
|
||||
@@ -111,6 +113,7 @@ The template defined inside `empty-form` will be shown when no form definition i
|
||||
| formSaved | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormModel`](../../../lib/core/src/lib/form/components/widgets/core/form.model.ts)`>` | Emitted when the form is submitted with the `Save` or custom outcomes. |
|
||||
| displayModeOn | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloudDisplayModeConfiguration`](../../../lib/process-services-cloud/src/lib/services/form-fields.interfaces.ts)`>` | Emitted when a display mode configuration is turned on. |
|
||||
| displayModeOff | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`FormCloudDisplayModeConfiguration`](../../../lib/process-services-cloud/src/lib/services/form-fields.interfaces.ts)`>` | Emitted when a display mode configuration is turned off. |
|
||||
| nextTaskCheckboxCheckedChanged | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`MatCheckboxChange`](https://material.angular.io/components/checkbox/api#MatCheckboxChange)`>` | Emitted when the `Open next task` checkbox was toggled. |
|
||||
|
||||
## Details
|
||||
|
||||
@@ -252,13 +255,29 @@ There are two other functions that can be very useful when you need to control f
|
||||
|
||||
### Field Validators
|
||||
|
||||
You can supply a set of validator objects to the form using the `fieldValidators`
|
||||
property. Each validator implements a check for a particular type of data (eg, a
|
||||
date validator might check that the date in the field falls between 1980 and 2017).
|
||||
You can supply a set of validator objects to the form using the `fieldValidators` property. To do this you must use Token `FORM_CLOUD_FIELD_VALIDATORS_TOKEN`. This is a A DI token that allows to inject additional form field validators. Each validator implements a check for a particular type of data (eg, a date validator might check that the date in the field falls between 1980 and 2017).
|
||||
ADF supplies a standard set of validators that handle most common cases but you can
|
||||
also implement your own custom validators to replace or extend the set. See the
|
||||
[Form Field Validator](../../core/interfaces/form-field-validator.interface.md) interface for full details and examples.
|
||||
|
||||
```ts
|
||||
import { NgModule } from '@angular/core';
|
||||
import { FORM_SERVICE_FIELD_VALIDATORS_TOKEN } from '@alfresco/adf-core';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
...Import Required Modules
|
||||
],
|
||||
providers: [
|
||||
{
|
||||
provide: FORM_SERVICE_FIELD_VALIDATORS_TOKEN,
|
||||
useValue: [new AdditionalFormFieldValidator()]
|
||||
}
|
||||
]
|
||||
})
|
||||
export class ExampleModule {}
|
||||
```
|
||||
|
||||
### Common scenarios
|
||||
|
||||
#### Rendering a form using form definition JSON
|
||||
|
||||
@@ -37,6 +37,7 @@ export class YourService extends ScreenRenderingService {
|
||||
[canClaimTask]="canClaimTask()"
|
||||
[canUnclaimTask]="canUnclaimTask()"
|
||||
[processInstanceId]="taskDetails.processInstanceId"
|
||||
[rootProcessInstanceId]="taskDetails.rootProcessInstanceId"
|
||||
[screenId]="screenId"
|
||||
[showCancelButton]="showCancelButton"
|
||||
[taskName]="taskDetails.name"
|
||||
@@ -60,6 +61,7 @@ export class YourService extends ScreenRenderingService {
|
||||
| canClaimTask | `boolean` | | Boolean informing if a task can be claimed. |
|
||||
| canUnclaimTask | `boolean` | | Boolean informing if a task can be unclaimed. |
|
||||
| processInstanceId | `string` | | Process Instance Id to fetch corresponding data. |
|
||||
| rootProcessInstanceId | `string` | | Root Process Instance Id to fetch corresponding data. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the task. |
|
||||
| showCancelButton | `boolean` | true | Toggle rendering of the `Cancel` button. |
|
||||
| screenId | `string` | | Screen id to create dynamic component |
|
||||
@@ -94,6 +96,7 @@ Dynamic component must implement logic for method switchToDisplayMode.
|
||||
[canClaimTask]="canClaimTask()"
|
||||
[canUnclaimTask]="canUnclaimTask()"
|
||||
[processInstanceId]="taskDetails.processInstanceId"
|
||||
[rootProcessInstanceId]="taskDetails.rootProcessInstanceId"
|
||||
[screenId]="screenId"
|
||||
[showCancelButton]="showCancelButton"
|
||||
[taskName]="taskDetails.name"
|
||||
|
||||
@@ -37,9 +37,11 @@ Starts a process.
|
||||
| Name | Type | Default value | Description |
|
||||
| ---- | ---- | ------------- | ----------- |
|
||||
| appName | `string` | "" | (required) Name of the app. |
|
||||
| isNextTaskCheckboxChecked | `boolean` | false | Whether the `Open next task` checkbox is checked by default or not. |
|
||||
| maxNameLength | `number` | MAX_NAME_LENGTH | Maximum length of the process name. |
|
||||
| name | `string` | "" | Name of the process. |
|
||||
| processDefinitionName | `string` | | Name of the process definition. |
|
||||
| showNextTaskCheckbox | `boolean` | false | Toggle rendering of the `Open next task` checkbox. |
|
||||
| showSelectProcessDropdown | `boolean` | true | Show/hide the process dropdown list. |
|
||||
| showTitle | `boolean` | true | Show/hide title. |
|
||||
| values | [`TaskVariableCloud`](../../../lib/process-services-cloud/src/lib/form/models/task-variable-cloud.model.ts)`[]` | | Parameter to pass form field values in the start form if one is associated. |
|
||||
@@ -52,6 +54,7 @@ Starts a process.
|
||||
| cancel | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when the starting process is cancelled |
|
||||
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when an error occurs. |
|
||||
| formContentClicked | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ContentLinkModel`](../../../lib/core/src/lib/form/components/widgets/core/content-link.model.ts)`>` | Emitted when form content is clicked. |
|
||||
| nextTaskCheckboxCheckedChanged | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`MatCheckboxChange`](https://material.angular.io/components/checkbox/api#MatCheckboxChange)`>` | Emitted when the `Open next task` checkbox was toggled. |
|
||||
| processDefinitionSelection | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`>` | Emitted when process definition selection changes. |
|
||||
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when the process is successfully started. |
|
||||
|
||||
|
||||
@@ -33,34 +33,37 @@ Save and Complete buttons get disabled when at least one of the form's inputs ar
|
||||
|
||||
### Properties
|
||||
|
||||
| Name | Type | Default value | Description |
|
||||
|---------------------------|---------------------------------------|---------------|---------------------------------------------------|
|
||||
| appName | `string` | "" | App id to fetch corresponding form and values. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the task. |
|
||||
| showCancelButton | `boolean` | true | Toggle rendering of the `Cancel` button. |
|
||||
| showCompleteButton | `boolean` | true | Toggle rendering of the `Complete` button. |
|
||||
| showRefreshButton | `boolean` | false | Toggle rendering of the `Refresh` button. |
|
||||
| showTitle | `boolean` | true | Toggle rendering of the form title. |
|
||||
| showValidationIcon | `boolean` | true | Toggle rendering of the `Validation` icon. |
|
||||
| taskId | `string` | | Task id to fetch corresponding form and values. |
|
||||
| displayModeConfigurations | `FormCloudDisplayModeConfiguration[]` | | The available display configurations for the form |
|
||||
| Name | Type | Default value | Description |
|
||||
| ------------------------- | ------------------------------------- | ------------- | ------------------------------------------------------------------- |
|
||||
| appName | `string` | "" | App id to fetch corresponding form and values. |
|
||||
| isNextTaskCheckboxChecked | `boolean` | false | Whether the `Open next task` checkbox is checked by default or not. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the task. |
|
||||
| showCancelButton | `boolean` | true | Toggle rendering of the `Cancel` button. |
|
||||
| showCompleteButton | `boolean` | true | Toggle rendering of the `Complete` button. |
|
||||
| showNextTaskCheckbox | `boolean` | false | Toggle rendering of the `Open next task` checkbox. |
|
||||
| showRefreshButton | `boolean` | false | Toggle rendering of the `Refresh` button. |
|
||||
| showTitle | `boolean` | true | Toggle rendering of the form title. |
|
||||
| showValidationIcon | `boolean` | true | Toggle rendering of the `Validation` icon. |
|
||||
| taskId | `string` | | Task id to fetch corresponding form and values. |
|
||||
| displayModeConfigurations | `FormCloudDisplayModeConfiguration[]` | | The available display configurations for the form |
|
||||
|
||||
### Events
|
||||
|
||||
| Name | Type | Description |
|
||||
|--------------------|---------------------------------------------------|--------------------------------------------------------------------------------------------------------|
|
||||
| cancelClick | `EventEmitter<string>` | Emitted when the cancel button is clicked. |
|
||||
| error | `EventEmitter<any>` | Emitted when any error occurs. |
|
||||
| executeOutcome | `EventEmitter<FormOutcomeEvent>` | Emitted when any outcome is executed. Default behaviour can be prevented via `event.preventDefault()`. |
|
||||
| formCompleted | `EventEmitter<FormModel>` | Emitted when the form is submitted with the `Complete` outcome. |
|
||||
| formContentClicked | `EventEmitter<ContentLinkModel>` | Emitted when form content is clicked. |
|
||||
| formSaved | `EventEmitter<FormModel>` | Emitted when the form is saved. |
|
||||
| onTaskLoaded | `EventEmitter<TaskDetailsCloudModel>` | Emitted when a task is loaded. |
|
||||
| taskClaimed | `EventEmitter<string>` | Emitted when the task is claimed. |
|
||||
| taskCompleted | `EventEmitter<string>` | Emitted when the task is completed. |
|
||||
| taskUnclaimed | `EventEmitter<string>` | Emitted when the task is unclaimed. |
|
||||
| displayModeOn | `EventEmitter<FormCloudDisplayModeConfiguration>` | Emitted when a display mode configuration is turned on. |
|
||||
| displayModeOff | `EventEmitter<FormCloudDisplayModeConfiguration>` | Emitted when a display mode configuration is turned off. |
|
||||
| Name | Type | Description |
|
||||
| ------------------------------ | ------------------------------------------------- | ------------------------------------------------------------------------------------------------------ |
|
||||
| cancelClick | `EventEmitter<string>` | Emitted when the cancel button is clicked. |
|
||||
| error | `EventEmitter<any>` | Emitted when any error occurs. |
|
||||
| executeOutcome | `EventEmitter<FormOutcomeEvent>` | Emitted when any outcome is executed. Default behaviour can be prevented via `event.preventDefault()`. |
|
||||
| formCompleted | `EventEmitter<FormModel>` | Emitted when the form is submitted with the `Complete` outcome. |
|
||||
| formContentClicked | `EventEmitter<ContentLinkModel>` | Emitted when form content is clicked. |
|
||||
| formSaved | `EventEmitter<FormModel>` | Emitted when the form is saved. |
|
||||
| nextTaskCheckboxCheckedChanged | `EventEmitter<MatCheckboxChange>` | Emitted when the `Open next task` checkbox was toggled. |
|
||||
| onTaskLoaded | `EventEmitter<TaskDetailsCloudModel>` | Emitted when a task is loaded. |
|
||||
| taskClaimed | `EventEmitter<string>` | Emitted when the task is claimed. |
|
||||
| taskCompleted | `EventEmitter<string>` | Emitted when the task is completed. |
|
||||
| taskUnclaimed | `EventEmitter<string>` | Emitted when the task is unclaimed. |
|
||||
| displayModeOn | `EventEmitter<FormCloudDisplayModeConfiguration>` | Emitted when a display mode configuration is turned on. |
|
||||
| displayModeOff | `EventEmitter<FormCloudDisplayModeConfiguration>` | Emitted when a display mode configuration is turned off. |
|
||||
|
||||
#### Enabling fullscreen display for the form of the task
|
||||
|
||||
|
||||
@@ -15,7 +15,6 @@ Based on property taskDetails: TaskDetailsCloudModel shows a form or a screen.
|
||||
<adf-cloud-user-task
|
||||
[appName]="appName"
|
||||
[displayModeConfigurations]="displayConfigurations"
|
||||
[fieldValidators]="formFieldValidators"
|
||||
[showTitle]="false"
|
||||
[showValidationIcon]="false"
|
||||
[taskId]="taskId"
|
||||
@@ -34,32 +33,33 @@ Based on property taskDetails: TaskDetailsCloudModel shows a form or a screen.
|
||||
|
||||
### Properties
|
||||
|
||||
| Name | Type | Default value | Description |
|
||||
|---------------------------|---------------------------------------|---------------|---------------------------------------------------|
|
||||
| appName | `string` | "" | App id to fetch corresponding form and values. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the task. |
|
||||
| fieldValidators | `FormFieldValidator[]` | | Allows to provide additional validators to the form field. |
|
||||
| showCancelButton | `boolean` | true | Toggle rendering of the `Cancel` button. |
|
||||
| showCompleteButton | `boolean` | true | Toggle rendering of the `Complete` button. |
|
||||
| showTitle | `boolean` | true | Toggle rendering of the form title. |
|
||||
| showValidationIcon | `boolean` | true | Toggle rendering of the `Validation` icon. |
|
||||
| taskId | `string` | | Task id to fetch corresponding form and values. |
|
||||
| displayModeConfigurations | `FormCloudDisplayModeConfiguration[]` | | The available display configurations for the form |
|
||||
| Name | Type | Default value | Description |
|
||||
| ------------------------- | ------------------------------------- | ------------- | ------------------------------------------------------------------- |
|
||||
| appName | `string` | "" | App id to fetch corresponding form and values. |
|
||||
| isNextTaskCheckboxChecked | `boolean` | false | Whether the `Open next task` checkbox is checked by default or not. |
|
||||
| readOnly | `boolean` | false | Toggle readonly state of the task. |
|
||||
| showCancelButton | `boolean` | true | Toggle rendering of the `Cancel` button. |
|
||||
| showCompleteButton | `boolean` | true | Toggle rendering of the `Complete` button. |
|
||||
| showNextTaskCheckbox | `boolean` | false | Toggle rendering of the `Open next task` checkbox. |
|
||||
| showTitle | `boolean` | true | Toggle rendering of the form title. |
|
||||
| showValidationIcon | `boolean` | true | Toggle rendering of the `Validation` icon. |
|
||||
| taskId | `string` | | Task id to fetch corresponding form and values. |
|
||||
| displayModeConfigurations | `FormCloudDisplayModeConfiguration[]` | | The available display configurations for the form |
|
||||
|
||||
### Events
|
||||
|
||||
| Name | Type | Description |
|
||||
|--------------------|---------------------------------------------------|--------------------------------------------------------------------------------------------------------|
|
||||
| cancelClick | `EventEmitter<string>` | Emitted when the cancel button is clicked. |
|
||||
| error | `EventEmitter<any>` | Emitted when any error occurs. |
|
||||
| executeOutcome | `EventEmitter<FormOutcomeEvent>` | Emitted when any outcome is executed. Default behaviour can be prevented via `event.preventDefault()`. |
|
||||
| formContentClicked | `EventEmitter<ContentLinkModel>` | Emitted when form content is clicked. |
|
||||
| formSaved | `EventEmitter<FormModel>` | Emitted when the form is saved. |
|
||||
| onTaskLoaded | `EventEmitter<TaskDetailsCloudModel>` | Emitted when a task is loaded. |
|
||||
| taskClaimed | `EventEmitter<string>` | Emitted when the task is claimed. |
|
||||
| taskCompleted | `EventEmitter<string>` | Emitted when the task is completed. |
|
||||
| taskUnclaimed | `EventEmitter<string>` | Emitted when the task is unclaimed. |
|
||||
|
|
||||
| Name | Type | Description |
|
||||
| ------------------------------ | ------------------------------------- | ------------------------------------------------------------------------------------------------------ |
|
||||
| cancelClick | `EventEmitter<string>` | Emitted when the cancel button is clicked. |
|
||||
| error | `EventEmitter<any>` | Emitted when any error occurs. |
|
||||
| executeOutcome | `EventEmitter<FormOutcomeEvent>` | Emitted when any outcome is executed. Default behaviour can be prevented via `event.preventDefault()`. |
|
||||
| formContentClicked | `EventEmitter<ContentLinkModel>` | Emitted when form content is clicked. |
|
||||
| formSaved | `EventEmitter<FormModel>` | Emitted when the form is saved. |
|
||||
| nextTaskCheckboxCheckedChanged | `EventEmitter<MatCheckboxChange>` | Emitted when the `Open next task` checkbox was toggled. |
|
||||
| onTaskLoaded | `EventEmitter<TaskDetailsCloudModel>` | Emitted when a task is loaded. |
|
||||
| taskClaimed | `EventEmitter<string>` | Emitted when the task is claimed. |
|
||||
| taskCompleted | `EventEmitter<string>` | Emitted when the task is completed. |
|
||||
| taskUnclaimed | `EventEmitter<string>` | Emitted when the task is unclaimed. |
|
||||
|
||||
#### Enabling fullscreen display for the form of the task
|
||||
|
||||
|
||||
@@ -92,6 +92,36 @@ class MyComponent {
|
||||
- _values:_ [`FormValues`](../../../lib/core/src/lib/form/components/widgets/core/form-values.ts) - [Form](../../../lib/process-services/src/lib/task-list/models/form.model.ts) values object
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`TaskDetailsCloudModel`](../../../lib/process-services-cloud/src/lib/task/models/task-details-cloud.model.ts)`>` - Updated task details
|
||||
|
||||
### Properties
|
||||
| Name | Type | Description |
|
||||
| ---- | --------- | ----------- |
|
||||
| fieldValidators | FormFieldValidator[] | Array of Field Validators injected with token and then passed to FormModel |
|
||||
|
||||
|
||||
### Inject Preference service
|
||||
|
||||
Token: [`FORM_CLOUD_SERVICE_FIELD_VALIDATORS_TOKEN`]
|
||||
A DI token that allows to inject additional form field validators.
|
||||
|
||||
```ts
|
||||
import { NgModule } from '@angular/core';
|
||||
import { FORM_CLOUD_SERVICE_FIELD_VALIDATORS_TOKEN } from '@alfresco/adf-process-services-cloud';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
...Import Required Modules
|
||||
],
|
||||
providers: [
|
||||
{
|
||||
provide: FORM_CLOUD_SERVICE_FIELD_VALIDATORS_TOKEN,
|
||||
useValue: [new AdditionalFormFieldValidator()]
|
||||
}
|
||||
]
|
||||
})
|
||||
export class ExampleModule {}
|
||||
```
|
||||
|
||||
|
||||
## See also
|
||||
|
||||
- [Form cloud component](../components/form-cloud.component.md)
|
||||
|
||||
@@ -30,8 +30,8 @@ Manage Task Filters, which are pre-configured Task Instance queries.
|
||||
- _appId:_ `number` - ID of the target app
|
||||
- _index:_ `number` - (Optional) of the filter (optional)
|
||||
- **Returns** `UserTaskFilterRepresentation` - The newly created filter
|
||||
- **getInvolvedTasksFilterInstance**(appId: `number`, index?: `number`): `UserTaskFilterRepresentation`<br/>
|
||||
Creates and returns a filter for "Involved" task instances.
|
||||
- **getOverdueTasksFilterInstance**(appId: `number`, index?: `number`): `UserTaskFilterRepresentation`<br/>
|
||||
Creates and returns a filter for "Overdue" task instances.
|
||||
- _appId:_ `number` - ID of the target app
|
||||
- _index:_ `number` - (Optional) of the filter (optional)
|
||||
- **Returns** `UserTaskFilterRepresentation` - The newly created filter
|
||||
@@ -40,8 +40,8 @@ Manage Task Filters, which are pre-configured Task Instance queries.
|
||||
- _appId:_ `number` - ID of the target app
|
||||
- _index:_ `number` - (Optional) of the filter (optional)
|
||||
- **Returns** `UserTaskFilterRepresentation` - The newly created filter
|
||||
- **getQueuedTasksFilterInstance**(appId: `number`, index?: `number`): `UserTaskFilterRepresentation`<br/>
|
||||
Creates and returns a filter for "Queued Tasks" task instances.
|
||||
- **getUnassignedTasksFilterInstance**(appId: `number`, index?: `number`): `UserTaskFilterRepresentation`<br/>
|
||||
Creates and returns a filter for "Unassigned Tasks" task instances.
|
||||
- _appId:_ `number` - ID of the target app
|
||||
- _index:_ `number` - (Optional) of the filter (optional)
|
||||
- **Returns** `UserTaskFilterRepresentation` - The newly created filter
|
||||
@@ -55,6 +55,11 @@ Manage Task Filters, which are pre-configured Task Instance queries.
|
||||
- _taskName:_ `string` - Name of the filter
|
||||
- _appId:_ `number` - (Optional) ID of the app for the filter
|
||||
- **Returns** `ObservableUserTaskFilterRepresentation>` - Details of task filter
|
||||
- **updateTaskFilter**(filterId: `number`, updatedFilter: `UserTaskFilterRepresentation`): `Observable<UserTaskFilterRepresentation>`<br/>
|
||||
Updates the instance of the filter.
|
||||
- filterId:_ `number` - ID of a filter to update
|
||||
- updatedFilter:_ `UserTaskFilterRepresentation` - new filter body
|
||||
- **Returns** `Observable<UserTaskFilterRepresentation>` - Updated filter instance.
|
||||
- **getTaskListFilters**(appId?: `number`): `UserTaskFilterRepresentation[]>`<br/>
|
||||
Gets all task filters for a process app.
|
||||
- _appId:_ `number` - (Optional) Optional ID for a specific app
|
||||
@@ -84,16 +89,16 @@ The response is an array of `UserTaskFilterRepresentation` objects:
|
||||
filters:
|
||||
0: {id: 10, appId: 2, name: "Involved Tasks", recent: true, icon: "glyphicon-align-left", …}
|
||||
1: {id: 9, appId: 2, name: "My Tasks", recent: false, icon: "glyphicon-inbox", …}
|
||||
2: {id: 11, appId: 2, name: "Queued Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
2: {id: 11, appId: 2, name: "Unassigned Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
3: {id: 12, appId: 2, name: "Completed Tasks", recent: false, icon: "glyphicon-ok-sign", …}
|
||||
4: {id: 4004, appId: 2, name: "Completed Tasks", recent: false, icon: "glyphicon-ok-sign", …}
|
||||
5: {id: 4005, appId: 2, name: "My Tasks", recent: false, icon: "glyphicon-inbox", …}
|
||||
6: {id: 4006, appId: 2, name: "Queued Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
6: {id: 4006, appId: 2, name: "Unassigned Tasks", recent: false, icon: "glyphicon-record", …}
|
||||
7: {id: 4007, appId: 2, name: "Involved Tasks", recent: false, icon: "glyphicon-align-left", …}
|
||||
```
|
||||
|
||||
These filters can now be used to get matching task instances for the process app with ID 2,
|
||||
such as 'Involved Tasks', 'My Tasks', 'Queued Tasks', and 'Completed Tasks'.
|
||||
such as 'Involved Tasks', 'My Tasks', 'Unassigned Tasks', and 'Completed Tasks'.
|
||||
|
||||
### Importing
|
||||
|
||||
|
||||
@@ -9,6 +9,7 @@ The first **General Availability** release was v2.0.0.
|
||||
|
||||
## General Availability
|
||||
|
||||
- [7.0.0](RelNote-7.0.0.md)
|
||||
- [7.0.0-alpha.7](RelNote-7.0.0-alpha.7.md)
|
||||
- [7.0.0-alpha.6](RelNote-7.0.0-alpha.6.md)
|
||||
- [7.0.0-alpha.4](RelNote-7.0.0-alpha.4.md)
|
||||
|
||||
@@ -0,0 +1,74 @@
|
||||
---
|
||||
Title: Changelog for alfresco-ng2-components v7.0.0
|
||||
---
|
||||
|
||||
# Changelog
|
||||
|
||||
- [d5bd97e3d2](git@github.com:Alfresco/alfresco-ng2-components/commit/d5bd97e3d2) [AAE-27160] Fix the structure of data returned from service-tasks API (#10711)
|
||||
- [5912423f96](git@github.com:Alfresco/alfresco-ng2-components/commit/5912423f96) [AAE-32862] Unit Tests not triggered in pull request for alfresco-ng2-components (process-services-cloud) (#10718)
|
||||
- [f692c1620f](git@github.com:Alfresco/alfresco-ng2-components/commit/f692c1620f) AAE-28935 Add form-styling-process to simpleapp (#10713)
|
||||
- [1f0f8dc6fd](git@github.com:Alfresco/alfresco-ng2-components/commit/1f0f8dc6fd) [ACS-9371] Migrate docs from docs.alfresco to support.hyland (#10708)
|
||||
- [677150e9d3](git@github.com:Alfresco/alfresco-ng2-components/commit/677150e9d3) AAE 31996 refresh button on filters not working as expected (#10712)
|
||||
- [a74388513e](git@github.com:Alfresco/alfresco-ng2-components/commit/a74388513e) AAE-32255 Start Process button in start event is showing and failing for form with custom outcomes (#10697)
|
||||
- [08fd1f3d12](git@github.com:Alfresco/alfresco-ng2-components/commit/08fd1f3d12) Revert "AAE 31996 refresh button on filters not working as expected (#10698)" (#10709)
|
||||
- [fe372dba59](git@github.com:Alfresco/alfresco-ng2-components/commit/fe372dba59) AAE-30886 Upgrade editorjs-html version in process-services-cloud (#10707)
|
||||
- [946fe889e1](git@github.com:Alfresco/alfresco-ng2-components/commit/946fe889e1) AAE 31996 refresh button on filters not working as expected (#10698)
|
||||
- [f8f72edeb9](git@github.com:Alfresco/alfresco-ng2-components/commit/f8f72edeb9) AAE-32493 Add error handling for loading task (#10692)
|
||||
- [f7e521607c](git@github.com:Alfresco/alfresco-ng2-components/commit/f7e521607c) [MNT-24909] Check if property constraint is handled by validators available in ADF (#10696)
|
||||
- [97970735fe](git@github.com:Alfresco/alfresco-ng2-components/commit/97970735fe) AAE-32478 Asynchronous Form - update datatable on variable change (#10693)
|
||||
- [b1ff467b9a](git@github.com:Alfresco/alfresco-ng2-components/commit/b1ff467b9a) [AAE-30886] - Upgrade to latest editorjs (#10672)
|
||||
- [32341f0b86](git@github.com:Alfresco/alfresco-ng2-components/commit/32341f0b86) Fix/[ACS-9224] Revert fixed critical accessibility issues in datatable.component (#10694)
|
||||
- [cc9eca6bea](git@github.com:Alfresco/alfresco-ng2-components/commit/cc9eca6bea) Move Storybook under dev-dependencies (#10690)
|
||||
- [8dceb5fb1d](git@github.com:Alfresco/alfresco-ng2-components/commit/8dceb5fb1d) [ACS-9225] serious a11y testing side bar elements must meet minimum color contrast ratio thresholds (#10687)
|
||||
- [1422604991](git@github.com:Alfresco/alfresco-ng2-components/commit/1422604991) [ACS-9233] a11y testing: Edit Aspects - Interactive controls must not be nested (#10680)
|
||||
- [ac11fa8a65](git@github.com:Alfresco/alfresco-ng2-components/commit/ac11fa8a65) AAE-30141 Replace ngIf for asterix with style visibility (#10665)
|
||||
- [58fa965d3f](git@github.com:Alfresco/alfresco-ng2-components/commit/58fa965d3f) [ACS-9224] Fixed critical accessibility issues in datatable.component (#10679)
|
||||
- [0c725a1c90](git@github.com:Alfresco/alfresco-ng2-components/commit/0c725a1c90) [AAE-30863] updated validators to set proper button state (#10667)
|
||||
- [1e83be9194](git@github.com:Alfresco/alfresco-ng2-components/commit/1e83be9194) [ACS-9267] a11y testing: Datatable - columns settings menu (#10668)
|
||||
- [1e98f2f472](git@github.com:Alfresco/alfresco-ng2-components/commit/1e98f2f472) AAE-30777 Add process and form that allow checking all widget inputs in the e2e tests (#10678)
|
||||
- [7bfe27dda9](git@github.com:Alfresco/alfresco-ng2-components/commit/7bfe27dda9) [ACS-8782] list of frozen files under a hold (#10663)
|
||||
- [f39f104d45](git@github.com:Alfresco/alfresco-ng2-components/commit/f39f104d45) AAE-30864 Refactored services to accept injected validators (#10660)
|
||||
- [70d899f5ba](git@github.com:Alfresco/alfresco-ng2-components/commit/70d899f5ba) AAE-31453 Revert change to text cardview color (#10657)
|
||||
- [3c7e8e84ff](git@github.com:Alfresco/alfresco-ng2-components/commit/3c7e8e84ff) AAE-31712 Custom theme fix after ng17 update (#10661)
|
||||
- [ca4dcf85f4](git@github.com:Alfresco/alfresco-ng2-components/commit/ca4dcf85f4) [ACS-9223] a11y testing: Data Table - Form elements must have labels (#10659)
|
||||
- [e4feb68381](git@github.com:Alfresco/alfresco-ng2-components/commit/e4feb68381) [ACS-9266][ACS-9234] Make notification and user menu accessible with keyboard (#10647)
|
||||
- [808f836259](git@github.com:Alfresco/alfresco-ng2-components/commit/808f836259) [MNT-24456] aps with adw multi user and group fields do not accept multiple values (#10636)
|
||||
- [430ca84c77](git@github.com:Alfresco/alfresco-ng2-components/commit/430ca84c77) [AAE-0000] - bumping the prerelease version (#10645)
|
||||
- [ca1842e93f](git@github.com:Alfresco/alfresco-ng2-components/commit/ca1842e93f) AAE-30827 correction in simpleapp - removed invalid form outcome for previously added form (#10642)
|
||||
- [5d64c7f0ed](git@github.com:Alfresco/alfresco-ng2-components/commit/5d64c7f0ed) Ng17 migration (#10295)
|
||||
- [2284ede0c7](git@github.com:Alfresco/alfresco-ng2-components/commit/2284ede0c7) AAE-30110 Render sections in runtime (#10599)
|
||||
- [287519ee24](git@github.com:Alfresco/alfresco-ng2-components/commit/287519ee24) [ACS-9252] Create Button Not Enabled After Resolving Duplicate Folder Name Warning (#10635)
|
||||
- [d5d2784eab](git@github.com:Alfresco/alfresco-ng2-components/commit/d5d2784eab) AAE-30827 simpleapp upgrade (#10638)
|
||||
- [2784310556](git@github.com:Alfresco/alfresco-ng2-components/commit/2784310556) [ACS-9230] a11y testing: Search Page / Search Filters / Certain ARIA roles must contain particular children (#10627)
|
||||
- [0edbae8c59](git@github.com:Alfresco/alfresco-ng2-components/commit/0edbae8c59) AAE-25579 Toggle logs for skipped karma unit tests (#10601)
|
||||
- [97fdeb4d34](git@github.com:Alfresco/alfresco-ng2-components/commit/97fdeb4d34) [AAE-30888] - used updated package to handle change font size (#10624)
|
||||
- [265c8e8a56](git@github.com:Alfresco/alfresco-ng2-components/commit/265c8e8a56) AAE-28655 Fix for datatable not scrolling back up after paginations (#10605)
|
||||
- [e5281e7ff0](git@github.com:Alfresco/alfresco-ng2-components/commit/e5281e7ff0) HXPMNT-542 display email for people (#10622)
|
||||
- [dcb7e4067c](git@github.com:Alfresco/alfresco-ng2-components/commit/dcb7e4067c) AAE-25571 Add column title to widget (#10620)
|
||||
- [e62c0587b6](git@github.com:Alfresco/alfresco-ng2-components/commit/e62c0587b6) [ACS-9215] Update license headers (#10625)
|
||||
- [72a889241e](git@github.com:Alfresco/alfresco-ng2-components/commit/72a889241e) AAE-30901 Allow to use different saveSearch service (#10623)
|
||||
- [8e3bd154ed](git@github.com:Alfresco/alfresco-ng2-components/commit/8e3bd154ed) AAE-30336 Screens updates (#10619)
|
||||
- [a1a3f97ec8](git@github.com:Alfresco/alfresco-ng2-components/commit/a1a3f97ec8) [AAE-30879] - removed unsupported minimatch version in favor or a ESM… (#10617)
|
||||
- [6a6c1183a3](git@github.com:Alfresco/alfresco-ng2-components/commit/6a6c1183a3) AAE-0000 - removing protractor dependencies (#10618)
|
||||
- [0c753278e5](git@github.com:Alfresco/alfresco-ng2-components/commit/0c753278e5) AAE-27984 Fix fieldValueChanged called on init and blur for date widgets (#10621)
|
||||
- [1fc0f0a6a4](git@github.com:Alfresco/alfresco-ng2-components/commit/1fc0f0a6a4) AAE-30563 Fix for dropdown IsRequired validator (#10616)
|
||||
- [34855a840a](git@github.com:Alfresco/alfresco-ng2-components/commit/34855a840a) AAE-30563 Required Form Drop down with default selection (#10614)
|
||||
- [0c459227a8](git@github.com:Alfresco/alfresco-ng2-components/commit/0c459227a8) [ACS-8223] - Remove MomentDateTimePipe (#10602)
|
||||
- [43f3a5b55f](git@github.com:Alfresco/alfresco-ng2-components/commit/43f3a5b55f) AAE-30771 Show username on hover in people component (#10603)
|
||||
- [3b95e4ab25](git@github.com:Alfresco/alfresco-ng2-components/commit/3b95e4ab25) [ACS-9119] Fixed textOrientation getting reset on arabic after browser refresh (#10591)
|
||||
- [4124a49f41](git@github.com:Alfresco/alfresco-ng2-components/commit/4124a49f41) AAE-30141 Fix broken amount field (#10588)
|
||||
- [056268e6c7](git@github.com:Alfresco/alfresco-ng2-components/commit/056268e6c7) AAE-30170 uploading simpleapp version 62
|
||||
- [9d7b985f91](git@github.com:Alfresco/alfresco-ng2-components/commit/9d7b985f91) 30170 - update simpleapp for XAT-1209 - adding process and form
|
||||
- [cdd93dbe57](git@github.com:Alfresco/alfresco-ng2-components/commit/cdd93dbe57) AAE-30170 added : to readme
|
||||
- [ac29c2b294](git@github.com:Alfresco/alfresco-ng2-components/commit/ac29c2b294) updated simpleapp for AAE-30170
|
||||
- [91ffd96100](git@github.com:Alfresco/alfresco-ng2-components/commit/91ffd96100) AAE-30168 Form Display Value does not show date variable (#10593)
|
||||
- [40d9c750d6](git@github.com:Alfresco/alfresco-ng2-components/commit/40d9c750d6) Revert "updated simpleapp for AAE-30170" (#10597)
|
||||
- [eaa1008018](git@github.com:Alfresco/alfresco-ng2-components/commit/eaa1008018) [ACS-8824] Disable node properties save button if values are invalid (#10560)
|
||||
- [1634716bbe](git@github.com:Alfresco/alfresco-ng2-components/commit/1634716bbe) [ACS-4749] add button is enabled for comment contains only spaces (#10577)
|
||||
- [e6278109d8](git@github.com:Alfresco/alfresco-ng2-components/commit/e6278109d8) [ACS-8582] Introduce UnitTestingUtils class and transform existing tests in core library (#10571)
|
||||
- [c4b3b9f3d4](git@github.com:Alfresco/alfresco-ng2-components/commit/c4b3b9f3d4) AAE-30596 Fix required reactive widgets do not visibility conditions (#10595)
|
||||
- [35aec24c0f](git@github.com:Alfresco/alfresco-ng2-components/commit/35aec24c0f) Revert "Revert "[ACS-9166] Migrate Saved Searches to preferences API from con…" (#10594)
|
||||
- [78e527f7df](git@github.com:Alfresco/alfresco-ng2-components/commit/78e527f7df) AAE-30170 added : to readme
|
||||
- [86283f087f](git@github.com:Alfresco/alfresco-ng2-components/commit/86283f087f) updated simpleapp for AAE-30170
|
||||
- [35a1f0b885](git@github.com:Alfresco/alfresco-ng2-components/commit/35a1f0b885) Post release version bump (#10589)
|
||||
- [8b95829e95](git@github.com:Alfresco/alfresco-ng2-components/commit/8b95829e95) AAE-29996 Fix task filter counters in new API (#10590)
|
||||
@@ -354,7 +354,7 @@ Below you can find a brief list of references to help you starting to use the ne
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -293,7 +293,7 @@ Below you can find a brief list of references to help you starting to use the ne
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -428,7 +428,7 @@ Below you can find a brief list of references to help you start to use the new r
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -218,7 +218,7 @@ Below you can find a brief list of references to help you start to use the new r
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -568,7 +568,7 @@ Component catalog
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -327,7 +327,7 @@ Component catalog
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -124,7 +124,7 @@ In this release, the [Viewer component](../core/components/viewer.component.md)
|
||||
- Thumbnails for PDF view, with the option to provide your own Thumbnails template if needed
|
||||
- Image view now features a floating action toolbar with extra actions: zoom in/out, rotate, reset to default size
|
||||
- Image view now supports panning of the images. Hardware-accelerated styles were used to enable panning of zoomed in or large images with the highest performance and efficiency
|
||||
- The viewer has greatly improved maintenance of the Renditions (see possible conversion options here: [File types that support preview and thumbnail generation | Alfresco Documentation](https://docs.alfresco.com/5.2/references/valid-transformations-preview.html) )
|
||||
- The viewer has greatly improved maintenance of the Renditions (see possible conversion options here: [File types that support preview and thumbnail generation | Alfresco Documentation](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Administer/Transformation/File-types-that-support-preview-and-thumbnail-generation) )
|
||||
- Support for "carousel" modes and document navigation options (extra buttons you can enable and provide handlers for). This feature will be fully demonstrated in the upcoming "Alfresco Content Application" release.
|
||||
- It is now possible to provide custom menu buttons for the Viewer toolbar. See more details in the docs: [alfresco-ng2-components/viewer.component.md at development · Alfresco/alfresco-ng2-components · GitHub ](../core/components/viewer.component.md#custom-toolbar-buttons)
|
||||
|
||||
@@ -293,7 +293,7 @@ Component catalog
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -244,7 +244,7 @@ Component catalog
|
||||
|
||||
[ADF App Generator](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -222,7 +222,7 @@ Below you can find a brief list of references to help you start using the new re
|
||||
- [Alfresco-JS-API](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -207,7 +207,7 @@ Component catalog
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the
|
||||
[official documentation](http://docs.alfresco.com/)
|
||||
[official documentation](https://support.hyland.com/p/alfresco)
|
||||
for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
@@ -125,7 +125,7 @@ The **[`Form`](../../lib/process-services/src/lib/task-list/models/form.model.ts
|
||||
|
||||
### Share link with expiry date
|
||||
|
||||
Some extra information is now available for shared links: expiry date. The earliest date accepted is at least 24h after the time you created it (following the ACS specification : [here](https://docs.alfresco.com/5.2/concepts/repository-properties.html) is the link). This is embedded into the **[Share Dialog Component](../../lib/content-services/content-node-share/content-node-share.dialog.ts)** and will be automatically shown when the share dialog is displayed.
|
||||
Some extra information is now available for shared links: expiry date. The earliest date accepted is at least 24h after the time you created it (following the ACS specification : [here](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Administer/Content-stores) is the link). This is embedded into the **[Share Dialog Component](../../lib/content-services/content-node-share/content-node-share.dialog.ts)** and will be automatically shown when the share dialog is displayed.
|
||||
|
||||

|
||||
|
||||
@@ -159,7 +159,7 @@ Component catalog
|
||||
|
||||
[ADF App Generator ](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -227,7 +227,7 @@ Below is a brief list of references to help you start using the new release:
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
### Icon Component
|
||||
|
||||
|
||||
@@ -334,7 +334,7 @@ Below is a brief list of references to help you start using the new release:
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -308,7 +308,7 @@ Below is a brief list of references to help you start using the new release:
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -41,4 +41,4 @@ Below is a brief list of references to help you start using the new release:
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
@@ -144,7 +144,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -83,7 +83,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -75,7 +75,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## Issues addressed
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR Merged
|
||||
|
||||
|
||||
@@ -71,7 +71,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -145,7 +145,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -151,7 +151,7 @@ The following is a brief list of references to help you get started with the new
|
||||
- [Official GitHub Project - alfresco-js-api](https://github.com/Alfresco/alfresco-js-api)
|
||||
- [Official GitHub Project - generator-ng2-alfresco-app](https://github.com/Alfresco/generator-ng2-alfresco-app)
|
||||
|
||||
Please refer to the [official documentation](http://docs.alfresco.com/) for further details and suggestions.
|
||||
Please refer to the [official documentation](https://support.hyland.com/p/alfresco) for further details and suggestions.
|
||||
|
||||
## PR merged
|
||||
|
||||
|
||||
@@ -10,7 +10,6 @@ Github only: true
|
||||
| [**Prerequisites and the requirements**](creating-your-first-adf-application.md) | Basic | In this tutorial you are going to learn how to create a very basic (and almost “empty”) ADF-based application that you can start enriching with features, behaviors and customizations. The creation of this basic ADF-based application is possible through a scaffolding tool called [Yeoman]\(https://yeoman.io/ "https://yeoman.io/"), which makes this task very straightforward. |
|
||||
| [**Creating your Alfresco JavaScript application**](creating-javascript-app-using-alfresco-js-api.md) | Basic | In this tutorial you will learn how to create an application in JavaScript from scratch to interact with Alfresco. |
|
||||
| [**Using ADF Components**](using-components.md) | Basic | In this tutorial, you will learn how to extend, use, and configure ADF Components. |
|
||||
| [**Basic theming**](basic-theming.md) | Beginner | In this tutorial you will see how to theme an ADF app by modifying the CSS. |
|
||||
| [**Working with a Data Table**](working-with-data-table.md) | Intermediate | In this tutorial you will learn how to populate a DataTable component. |
|
||||
| [**Working with the Nodes API Service**](working-with-nodes-api-service.md) | Intermediate | In this tutorial you will learn how to use the [`NodesApiService`](../core/services/nodes-api.service.md). |
|
||||
| [**Working with Nodes using the JS API**](working-with-nodes-js-api.md) | Intermediate | In this tutorial you will learn how to use the [`AlfrescoCoreRestApi`](https://github.com/Alfresco/alfresco-js-api/tree/master/src/alfresco-core-rest-api). |
|
||||
|
||||
@@ -1,91 +0,0 @@
|
||||
---
|
||||
Title: Basic theming
|
||||
Level: Beginner
|
||||
---
|
||||
|
||||
# Basic theming
|
||||
|
||||
In this tutorial you will see how to theme an ADF app by modifying the CSS.
|
||||
|
||||
As detailed in the [user guide page about theming](../user-guide/theming.md), you can easily customize the [Cascading Style Sheets](https://en.wikipedia.org/wiki/Cascading_Style_Sheets) used by an ADF application. The focus of this tutorial is ADF apps built using Yeoman, but you can use the same principles to customize the themes in any ADF application.
|
||||
|
||||
## About the `adf-core` theming
|
||||
|
||||
As described in the [user guide about theming](../user-guide/theming.md), eveything happens in the `src/custom-style.scss` file defining the *primary*, the *accent* and the *warn* set of palettes. For a detailed description of the different types of palettes, check the [user guide about theming](../user-guide/theming.md).
|
||||
|
||||
As you can see directly in the `css` file, the sets of palettes are configured using some predefined variables used in the source code as described below.
|
||||
|
||||
$primary: mat-palette($alfresco-accent-orange);
|
||||
$accent: mat-palette($alfresco-accent-purple);
|
||||
$warn: mat-palette($alfresco-warn);
|
||||
|
||||
The `mat-palette` function is used to define the [Material Design](https://material.io/design/introduction/) Palettes from a collection of colors and `$alfresco-ecm-cyan`, `$alfresco-accent-purple` and `$alfresco-warn` are variables declared locally in the project to define the colors to be used in the application.
|
||||
|
||||
As you would expect, changing the parameter of the `mat-palette` function will change the colours of the entire application together.
|
||||
|
||||
All the available variables containing the set of palettes for the application can be found in the `node_modules/@alfresco/adf-core/_theming.css` file. In that file you can find:
|
||||
|
||||
- `$alfresco-ecm-cyan`
|
||||
- `$alfresco-dev-teal`
|
||||
- `$alfresco-ecm-blue`
|
||||
- `$alfresco-bpm-green`
|
||||
- `$alfresco-warn`
|
||||
- `$alfresco-accent-purple`
|
||||
- `$alfresco-accent-orange`
|
||||
|
||||
Check the `_theming.css` file to see the latest changes and how the variables are structured and defined.
|
||||
|
||||
## Changing the palette of your application
|
||||
|
||||
As an example, let's change the set of palettes for the primary colours. In the `src/custom-style.scss` file, change the `$primary` definition as follows.
|
||||
|
||||
$primary: mat-palette($alfresco-ecm-blue);
|
||||
|
||||
Once done, save the `custom-style.scss` file and you will see the application refreshed with different colours. That's all there is to it.
|
||||
|
||||
## Developing your own palette
|
||||
|
||||
In some cases you might want to do something more "customized", and you might want to choose your preferred colours for your application. In this case you simply need to develop your own palette in a local variable and use it as the primary, accent or warn palette.
|
||||
|
||||
As an example, let's edit the `src/custom-style.scss` file adding the following source code immediately before the definition of the `$primary` variable.
|
||||
|
||||
$my-own-brown: (
|
||||
50: #f9f2ec,
|
||||
100: #ecd9c6,
|
||||
200: #dfbf9f,
|
||||
300: #d2a679,
|
||||
400: #c68c53,
|
||||
500: #ac7339,
|
||||
600: #86592d,
|
||||
700: #604020,
|
||||
800: #392613,
|
||||
900: #130d06,
|
||||
A100: #e6ccb3,
|
||||
A200: #cc9966,
|
||||
A400: #996633,
|
||||
A700: #4d3319,
|
||||
contrast: (
|
||||
50: $black-87-opacity,
|
||||
100: $black-87-opacity,
|
||||
200: $black-87-opacity,
|
||||
300: $black-87-opacity,
|
||||
400: $black-87-opacity,
|
||||
500: white,
|
||||
600: white,
|
||||
700: white,
|
||||
800: $white-87-opacity,
|
||||
900: $white-87-opacity,
|
||||
A100: $black-87-opacity,
|
||||
A200: white,
|
||||
A400: white,
|
||||
A700: white,
|
||||
)
|
||||
);
|
||||
|
||||
When you have done this, replace the `$primary` definition as follows and save the `custom-style.scss` file:
|
||||
|
||||
$primary: mat-palette($my-own-brown);
|
||||
|
||||
After a few seconds you will see the application refreshing with different colours in the upper menu. In the following screenshot you can see how the new palette looks:
|
||||
|
||||

|
||||
@@ -165,9 +165,3 @@ Inside the `<adf-login-footer/>` or `<adf-login-header/>` tags, we can put anyth
|
||||
|
||||
Are you up for a challenge? Explore the [Login component](../core/components/login.component.md)
|
||||
docs to find out how you can change the logo and background image!
|
||||
|
||||
# Next steps
|
||||
|
||||
We have some tutorials for you to explore. Here are a few suggested ones to try next:
|
||||
|
||||
- [Basic theming](basic-theming.md)
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
---
|
||||
Title: Upgrading from ADF v5.0 to v6.0
|
||||
---
|
||||
|
||||
# Upgrading from ADF v6.0 to v6.9
|
||||
|
||||
This guide provides instructions on how to upgrade your v6.0.0 ADF projects to v6.9.0.
|
||||
|
||||
## Before you begin
|
||||
|
||||
Always perform upgrades on "clean" project state, backup your changes or make a project backup.
|
||||
|
||||
```shell
|
||||
# Recommended clean up
|
||||
nx reset && rm -rf .angular .nx dist node_modules nxcache tmp
|
||||
```
|
||||
|
||||
## .env file
|
||||
|
||||
If you are using .env file, make sure to update it with the latest configuration:
|
||||
|
||||
```yaml
|
||||
APP_CONFIG_OAUTH2_HOST="<oauth2_host>"
|
||||
APP_CONFIG_ENABLE_MOBILE_APP_SWITCH=false
|
||||
APP_CONFIG_PLUGIN_AOS=true
|
||||
APP_CONFIG_PLUGIN_CONTENT_SERVICE=true
|
||||
APP_CONFIG_PLUGIN_FOLDER_RULES=true
|
||||
APP_CONFIG_ENABLE_DOWNLOAD_PROMPT=false
|
||||
APP_CONFIG_ENABLE_DOWNLOAD_PROMPT_REMINDERS=false
|
||||
APP_CONFIG_DOWNLOAD_PROMPT_DELAY=30
|
||||
APP_CONFIG_DOWNLOAD_PROMPT_REMINDER_DELAY=30
|
||||
APP_CONFIG_ENABLE_FILE_AUTO_DOWNLOAD=false
|
||||
APP_CONFIG_FILE_AUTO_DOWNLOAD_SIZE_THRESHOLD_IN_MB=10
|
||||
```
|
||||
|
||||
> [!IMPORTANT]
|
||||
> The configuration values are for migration purposes only.
|
||||
> Please refer to the documentation for more details on the configuration settings and values.
|
||||
|
||||
## Library versions
|
||||
|
||||
Update the `package.json` file with the latest library versions:
|
||||
|
||||
- Angular: 14.1.3
|
||||
- Alfresco Component Libraries: 6.9.0
|
||||
- Alfresco JS-API: 7.6.1
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"@alfresco/adf-core": "6.9.0",
|
||||
"@alfresco/adf-content-services": "6.9.0",
|
||||
"@alfresco/adf-process-services-cloud": "6.9.0",
|
||||
"@alfresco/adf-insights": "6.9.0",
|
||||
"@alfresco/js-api": "7.6.1"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
> [!NOTE]
|
||||
> You can also refer to the Alfresco Content Application [4.4.1 release](https://github.com/Alfresco/alfresco-content-app/blob/4.4.1/package.json) for the latest version of the libraries.
|
||||
|
||||
### Remove old dependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"@angular/material-moment-adapter": "14.1.3",
|
||||
"@mat-datetimepicker/moment": "^9.0.68",
|
||||
"moment": "^2.29.4",
|
||||
"moment-es6": "1.0.0",
|
||||
"@angular/flex-layout": "^14.0.0-beta.40"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Add extra dependencies
|
||||
|
||||
```json
|
||||
{
|
||||
"dependencies": {
|
||||
"@angular/material-date-fns-adapter": "14.1.3",
|
||||
"date-fns": "^2.30.0"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
Reinstall your dependencies and make initial build
|
||||
|
||||
```sh
|
||||
npm i --legacy-peer-deps
|
||||
npm run build
|
||||
```
|
||||
|
||||
### Update code
|
||||
|
||||
If you are using the `@alfresco/js-api` library, make sure to update the code according to the latest version:
|
||||
|
||||
| Before | After |
|
||||
|------------------------|--------------------|
|
||||
| MinimalNodeEntity | NodeEntry |
|
||||
| SiteBody | SiteBodyCreate |
|
||||
| MinimalNodeEntryEntity | Node |
|
||||
| MinimalNode | Node |
|
||||
| PathInfoEntity | PathInfo |
|
||||
| SiteBody | SiteBodyCreate |
|
||||
| FavoriteBody | FavoriteBodyCreate |
|
||||
| PathElementEntity | PathElement |
|
||||
|
||||
#### NullInjectorError: No provider for RedirectAuthService!
|
||||
|
||||
If you are facing the `NullInjectorError: No provider for RedirectAuthService!` error, make sure to add the `AuthModule` to the `AppModule`:
|
||||
|
||||
```typescript
|
||||
import { AuthModule } from '@alfresco/adf-core';
|
||||
|
||||
@NgModule({
|
||||
imports: [
|
||||
// other imports
|
||||
AuthModule.forRoot({ useHash: true })
|
||||
]
|
||||
})
|
||||
export class AppModule {}
|
||||
```
|
||||
|
||||
For the development purposes, you may want to update the `app.config.json`:
|
||||
|
||||
```json5
|
||||
{
|
||||
"oauth2": {
|
||||
// other configurations
|
||||
"skipIssuerCheck": true,
|
||||
"strictDiscoveryDocumentValidation": false
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Document List component
|
||||
|
||||
For document list components, remove the `display` property if used:
|
||||
|
||||
```html
|
||||
[display]="documentDisplayMode$ | async"
|
||||
```
|
||||
|
||||
## Final steps
|
||||
|
||||
After you have updated the code, make sure to test your application thoroughly to ensure that everything is working as expected.
|
||||
|
||||
You can build and run your application using the following commands:
|
||||
|
||||
```sh
|
||||
npm run build
|
||||
npm start content-ce
|
||||
```
|
||||
@@ -0,0 +1,183 @@
|
||||
---
|
||||
Title: Upgrading from ADF v6.9 to v7.0
|
||||
---
|
||||
|
||||
# Upgrading from ADF v6.9 to v7.0
|
||||
|
||||
This guide provides instructions on how to upgrade your v6.9.0 ADF projects to v7.0.0.
|
||||
|
||||
## Before you begin
|
||||
|
||||
Always perform upgrades on "clean" project state, backup your changes or make a project backup.
|
||||
|
||||
```shell
|
||||
# Recommended clean up
|
||||
nx reset && rm -rf .angular .nx dist node_modules nxcache tmp
|
||||
```
|
||||
|
||||
## Libraries updates
|
||||
|
||||
Node version used is now 20.18.1.
|
||||
|
||||
### Breaking changes with libraries:
|
||||
|
||||
- Angular: 17.1.3
|
||||
- Angular Material: 17.1.2
|
||||
- Typescript: 5.3.3
|
||||
- RXJS: 7.8.1
|
||||
- NX: 20.0.0
|
||||
|
||||
Angular updates can be done with "Update Guide" from Angular documentation.
|
||||
|
||||
### Added libraries:
|
||||
- eslint-plugin-storybook
|
||||
- jasmine-marbles
|
||||
- @editorjs/paragraph
|
||||
- editorjs-text-alignment-blocktune
|
||||
- graphql-ws
|
||||
|
||||
### Deleted libraries:
|
||||
- protractor
|
||||
- selenium-webdriver
|
||||
- webdriver-manager
|
||||
- shx
|
||||
- monaco-editor
|
||||
- ngx-monaco-editor-v2
|
||||
- @types/selenium-webdriver
|
||||
- protractor-retry-angular-cli
|
||||
- protractor-screenshoter-plugin
|
||||
- protractor-smartrunner
|
||||
|
||||
Reinstall your dependencies and make initial build:
|
||||
|
||||
```shell
|
||||
npm i
|
||||
npm run build
|
||||
```
|
||||
|
||||
Review your applications as some styles and classes of Angular Material components might have changed.
|
||||
|
||||
## Demo-Shell and e2e
|
||||
Demo shell and its e2e tests have been deleted.
|
||||
|
||||
|
||||
## Material module
|
||||
Material module is deprecated and will be removed in a future release. Please import components and modules independently.
|
||||
|
||||
|
||||
## Standalone components
|
||||
Most components have been changed to "standalone" and their modules have been deleted. Please import components directly.
|
||||
|
||||
| Deleted modules |
|
||||
|--------------------------------|
|
||||
| AttachmentModule |
|
||||
| AppsListModule |
|
||||
| TaskListModule |
|
||||
| ProcessListModule |
|
||||
| ProcessUserInfoModule |
|
||||
| TaskCommentsModule |
|
||||
| ProcessCommentsModule |
|
||||
| PeopleModule |
|
||||
| DynamicTableModule |
|
||||
| ContentWidgetModule |
|
||||
| AnalyticsProcessModule |
|
||||
| DiagramsModule |
|
||||
| ButtonsMenuModule |
|
||||
| SitesDropdownModule |
|
||||
| DataColumnModule |
|
||||
| ContentUserInfoModule |
|
||||
| AppCardViewModule |
|
||||
| AppCloudSharedModule |
|
||||
| FileViewModule |
|
||||
| AppProcessListModule |
|
||||
| FolderDirectiveModule |
|
||||
| ContentTypeModule |
|
||||
| SortingPickerModule |
|
||||
| ProcessServicesCloudPipeModule |
|
||||
| StartTaskCloudModule |
|
||||
| ProcessDirectiveModule |
|
||||
| StartProcessCloudModule |
|
||||
| TaskDirectiveModule |
|
||||
|
||||
|
||||
|
||||
## Removed components, directives and pipes
|
||||
| Deleted components, directives and pipes |
|
||||
|------------------------------------------|
|
||||
| IsIncludedPipe |
|
||||
| TabLabelsPipe |
|
||||
| BooleanPipe |
|
||||
| FilterOutArrayObjectsByPropPipe |
|
||||
| LocalizedRolePipe |
|
||||
| MimeTypeIconPipe |
|
||||
| FilterStringPipe |
|
||||
| ProcessNameCloudPipe |
|
||||
| FormStylePipe |
|
||||
| CancelProcessDirective |
|
||||
| MomentDateTimePipe |
|
||||
| MomentDatePipe |
|
||||
|
||||
|
||||
## A11y changes
|
||||
Components have been reviewed and changed to fix most important issues with accessibility. Please test your application thoroughly to ensure that everything is working as expected, as some components have changed their structure, html roles or attributes.
|
||||
|
||||
| Components changed | Description of changes |
|
||||
|--------------------------------|----------------------------------------------------------------------|
|
||||
| Tooltips | Tooltips have been changed from Angular Material to standard tooltip |
|
||||
| Search Page and Search Filters | mat-chip-option replaced with mat-chip |
|
||||
| Columns Selector | role attribute changes |
|
||||
| DataTable | role attribute changes |
|
||||
| Aspect List | structure of html changed |
|
||||
|
||||
|
||||
## Guards
|
||||
All guards have been converted to functional guards (using the new Angular functional route guard pattern). Please review any custom guards in your application and adapt them to the functional pattern as needed.
|
||||
|
||||
Example of converting a class-based guard to a functional guard:
|
||||
|
||||
```typescript
|
||||
// Before (class-based)
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class AuthGuard implements CanActivate {
|
||||
constructor(private authService: AuthService, private router: Router) {}
|
||||
|
||||
canActivate() {
|
||||
if (this.authService.isLoggedIn()) {
|
||||
return true;
|
||||
}
|
||||
this.router.navigate(['/login']);
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// After (functional)
|
||||
export const authGuard = () => {
|
||||
const authService = inject(AuthService);
|
||||
const router = inject(Router);
|
||||
|
||||
if (authService.isLoggedIn()) {
|
||||
return true;
|
||||
}
|
||||
return router.parseUrl('/login');
|
||||
};
|
||||
```
|
||||
|
||||
## Model and interface changes
|
||||
|
||||
Some models and interfaces have changed:
|
||||
|
||||
| Before | After | Notes |
|
||||
|-------------------------------|-----------------------|------------------------------|
|
||||
| TaskDetailsModel | TaskRepresentation | Rename all instances |
|
||||
| IdentityUserFilterInterface | Removed | Use type definitions instead |
|
||||
| IdentityUserServiceInterface | Removed | Use type definitions instead |
|
||||
| TaskCloudServiceInterface | Removed | Use type definitions instead |
|
||||
|
||||
|
||||
## Final steps
|
||||
|
||||
After you have updated the code, make sure to test your application thoroughly to ensure that everything is working as expected. Pay special attention to areas that use the renamed models or interfaces, and make sure all components are properly imported as standalone components.
|
||||
|
||||
If you encounter any issues during the upgrade process, refer to the Angular update guide or the ADF community for assistance.
|
||||
@@ -20,7 +20,6 @@ on an item below to see the corresponding guide page.
|
||||
- [Theming](theming.md)
|
||||
- [Right-to-left language support](rtl-support.md)
|
||||
- [Transclusion](transclusion.md)
|
||||
- [Typography](typography.md)
|
||||
- [Walkthrough - adding indicators to highlight information about a node](metadata-indicators.md)
|
||||
- [kerberos](kerberos.md)
|
||||
|
||||
|
||||
@@ -4,16 +4,18 @@ Added: v4.1.0
|
||||
---
|
||||
|
||||
## Form Extensibility for APA Form Widget
|
||||
|
||||
This page describes how you can customize ADF forms to your own specification.
|
||||
|
||||
## Contents
|
||||
|
||||
There are two ways to customize the form
|
||||
- [Replace default form widgets with custom components](#replace-default-form-widgets-with-apa-form-widgets)
|
||||
- [Replace custom form widget with custom components](#replace-custom-form-widgets-with-custom-components)
|
||||
|
||||
## Replace default form widgets with APA form widgets
|
||||
|
||||
This is an example of replacing the standard `Text` [widget](../../lib/testing/src/lib/core/pages/form/widgets/widget.ts) with a custom component for all APA forms rendered within the `<adf-form>` component.
|
||||
This is an example of replacing the standard `Text` with a custom component for all APA forms rendered within the `<adf-form>` component.
|
||||
|
||||
1. Create a simple form with some `Text` widgets:
|
||||
|
||||
@@ -24,8 +26,10 @@ This is an example of replacing the standard `Text` [widget](../../lib/testing/s
|
||||
```ts
|
||||
import { Component } from '@angular/core';
|
||||
import { WidgetComponent } from '@alfresco/adf-core';
|
||||
|
||||
@Component({
|
||||
selector: 'custom-editor',
|
||||
standalone: true,
|
||||
template: `
|
||||
<div style="color: red">Look, I'm a APA custom editor!</div>
|
||||
`
|
||||
@@ -33,40 +37,14 @@ This is an example of replacing the standard `Text` [widget](../../lib/testing/s
|
||||
export class CustomEditorComponent extends WidgetComponent {}
|
||||
```
|
||||
|
||||
2. Add it to the application module or any custom module that is imported into the application one:
|
||||
2. Import the [`FormRenderingService`](../core/services/form-rendering.service.md) in the feature module, or application module (recommended: `ProcessServicesExtensionModule`), and override the default mapping:
|
||||
|
||||
```ts
|
||||
import { NgModule } from '@angular/core';
|
||||
import { CustomEditorComponent } from './custom-editor.component';
|
||||
@NgModule({
|
||||
declarations: [ CustomEditorComponent ],
|
||||
exports: [ CustomEditorComponent ]
|
||||
})
|
||||
export class CustomEditorsModule {}
|
||||
```
|
||||
|
||||
3. Every custom widget component should be added into the the collections `declarations` and `exports`. If you decided to store custom widgets in a separate dedicated module (and optionally as a separate re-distributable library) don't forget to import it into the main application:
|
||||
|
||||
```ts
|
||||
@NgModule({
|
||||
imports: [
|
||||
// ...
|
||||
CustomEditorsModule
|
||||
// ...
|
||||
],
|
||||
providers: [],
|
||||
bootstrap: [ AppComponent ]
|
||||
})
|
||||
export class AppModule {}
|
||||
```
|
||||
|
||||
4. Import the [`FormRenderingService`](../core/services/form-rendering.service.md) into any of your Views and override the default mapping, for example:
|
||||
|
||||
```ts
|
||||
import { Component } from '@angular/core';
|
||||
import { CustomEditorComponent } from './custom-editor.component';
|
||||
@Component({...})
|
||||
export class MyView {
|
||||
import { FormRenderingService } from '@alfresco/adf-core';
|
||||
|
||||
@NgModule({...})
|
||||
export class ProcessServicesExtensionModule {
|
||||
constructor(formRenderingService: FormRenderingService) {
|
||||
this.formRenderingService.register({
|
||||
'text': () => CustomEditorComponent
|
||||
@@ -75,10 +53,12 @@ This is an example of replacing the standard `Text` [widget](../../lib/testing/s
|
||||
}
|
||||
```
|
||||
|
||||
5. At runtime the form should look similar to the following:
|
||||
> [!IMPORTANT]
|
||||
> The widget should be registered outside the custom widget component, otherwise the widget will not be registered correctly.
|
||||
|
||||

|
||||
At runtime the form should look similar to the following:
|
||||
|
||||

|
||||
|
||||
## Replace custom form widgets with custom components
|
||||
|
||||
@@ -105,54 +85,30 @@ When displayed in a task, the field will look similar to the following:
|
||||
|
||||
To render the missing content:
|
||||
|
||||
1. Create an Angular component:
|
||||
1. Create a standalone Angular component:
|
||||
|
||||
```ts
|
||||
import { Component } from '@angular/core';
|
||||
import { WidgetComponent } from '@alfresco/adf-core';
|
||||
|
||||
@Component({
|
||||
selector: 'app-demo-widget',
|
||||
standalone: true,
|
||||
template: `<div style="color: green">ADF version of custom form widget</div>`
|
||||
})
|
||||
export class DemoWidgetComponent extends WidgetComponent {}
|
||||
```
|
||||
|
||||
2. Place it inside the custom module:
|
||||
2. Import the [`FormRenderingService`](../core/services/form-rendering.service.md) in the feature module, or application module (recommended: `ProcessServicesExtensionModule`), and override the default mapping:
|
||||
|
||||
```ts
|
||||
import { NgModule } from '@angular/core';
|
||||
import { DemoWidgetComponent } from './demo-widget.component';
|
||||
@NgModule({
|
||||
declarations: [ DemoWidgetComponent ],
|
||||
exports: [ DemoWidgetComponent ]
|
||||
})
|
||||
export class CustomWidgetsModule {}
|
||||
```
|
||||
|
||||
3. Import it into your Application Module:
|
||||
|
||||
```ts
|
||||
@NgModule({
|
||||
imports: [
|
||||
// ...
|
||||
CustomWidgetsModule
|
||||
// ...
|
||||
],
|
||||
providers: [],
|
||||
bootstrap: [ AppComponent ]
|
||||
})
|
||||
export class AppModule {}
|
||||
```
|
||||
|
||||
4. Import the [`FormRenderingService`](../core/services/form-rendering.service.md) in any of your Views and provide the new mapping:
|
||||
|
||||
```ts
|
||||
import { Component } from '@angular/core';
|
||||
import { DemoWidgetComponent } from './demo-widget.component';
|
||||
@Component({...})
|
||||
export class MyView {
|
||||
import { FormRenderingService } from '@alfresco/adf-core';
|
||||
|
||||
@NgModule({/*...*/})
|
||||
export class ProcessServicesExtensionModule {
|
||||
constructor(formRenderingService: FormRenderingService) {
|
||||
this.formRenderingService.register({
|
||||
formRenderingService.register({
|
||||
'custom-editor': () => DemoWidgetComponent
|
||||
});
|
||||
}
|
||||
@@ -163,6 +119,9 @@ At runtime you should now see your custom Angular component rendered in place of
|
||||
|
||||

|
||||
|
||||
> [!IMPORTANT]
|
||||
> The widget should be registered outside the custom widget component, otherwise the widget will not be registered correctly.
|
||||
|
||||
## See Also
|
||||
|
||||
- [Extensibility](./extensibility.md)
|
||||
|
||||
@@ -101,8 +101,8 @@ In the three steps you can specify the search configuration. i.e
|
||||
You may find it useful to check out the following resources for background information
|
||||
before customizing the search UI:
|
||||
|
||||
- [Search API](https://docs.alfresco.com/5.2/concepts/search-api.html)
|
||||
- [Alfresco Full Text Search Reference](https://docs.alfresco.com/5.2/concepts/rm-searchsyntax-intro.html)
|
||||
- [Search API](https://support.hyland.com/r/Alfresco/Alfresco-Content-Services/23.3/Alfresco-Content-Services/Develop/REST-API-Guide/Searching-for-Content)
|
||||
- [Alfresco Full Text Search Reference](https://support.hyland.com/r/Alfresco/Alfresco-Search-Services/2.0/Alfresco-Search-Services/Using/Full-text-search-reference)
|
||||
- [ACS API Explorer](https://api-explorer.alfresco.com/api-explorer/#!/search/search)
|
||||
|
||||
### Configuration
|
||||
|
||||
@@ -32,36 +32,6 @@ an [online palette design tool](http://mcg.mbitson.com/).
|
||||
See the [Material Design Style page](https://material.io/guidelines/style/color.html#) for
|
||||
more information about color concepts.
|
||||
|
||||
## Using a pre-built theme
|
||||
|
||||
Angular Material comes prepackaged with several pre-built theme css files. These theme files also
|
||||
include all of the styles for core (styles common to all components), so you only have to include a
|
||||
single css file for Angular Material in your app.
|
||||
|
||||
You can include a theme file directly into your application from
|
||||
`@alfresco/adf-core/prebuilt-themes`
|
||||
|
||||
Available pre-built themes:
|
||||
* `adf-blue-orange.css`
|
||||
* `adf-blue-purple.css`
|
||||
* `adf-cyan-orange.css`
|
||||
* `adf-cyan-purple.css`
|
||||
* `adf-green-orange.css`
|
||||
* `adf-green-purple.css`
|
||||
* `adf-indigo-pink.css`
|
||||
* `adf-pink-bluegrey.css`
|
||||
* `adf-purple-green.css`
|
||||
|
||||
If you're using Angular CLI you can include one of the prebuilt themes in your `styles.scss` file:
|
||||
```css
|
||||
@import '~@alfresco/adf-core/prebuilt-themes/adf-blue-orange.css';
|
||||
```
|
||||
Or you can add it directly in your index.html
|
||||
|
||||
```html
|
||||
<link href="node_modules/ng2-alfresco-core/prebuilt-themes/adf-blue-orange.css" rel="stylesheet">
|
||||
```
|
||||
|
||||
## Defining a custom theme
|
||||
|
||||
When you want more customization than a pre-built theme offers, you can create your own theme file. You only need to include the packages you actually use in your application.
|
||||
@@ -92,8 +62,6 @@ $theme: mat.define-light-theme((
|
||||
@include alfresco-material-theme($theme);
|
||||
```
|
||||
|
||||
Notes: if you are using the Generator or the demo shell you need only to change the`/src/custom-style.scss` with your set of colors
|
||||
|
||||
### Multiple themes
|
||||
|
||||
You can create multiple themes for your application:
|
||||
@@ -135,7 +103,7 @@ $dark-theme: mat.define-dark-theme((
|
||||
...like above
|
||||
}
|
||||
```
|
||||
Any component with the `add-dark-theme` class will use the dark theme, while other components will fall back to the default.
|
||||
Any component with the `add-dark-theme` class will use the dark theme, while other components will fall back to the default.
|
||||
|
||||
|
||||
## Default reusable class
|
||||
|
||||
@@ -1,90 +0,0 @@
|
||||
---
|
||||
Title: Typography
|
||||
Added: v2.0.0
|
||||
---
|
||||
|
||||
# ADF Typography
|
||||
|
||||
Typography configuration lets you change the style of the text in your ADF app.
|
||||
|
||||
## Customization
|
||||
|
||||
To get started you need to include your custom font in the `/src/index.html` header:
|
||||
|
||||
```html
|
||||
<link href="https://fonts.googleapis.com/css?family=Muli" rel="stylesheet">
|
||||
```
|
||||
When adding custom typography, please be aware of angular material version
|
||||
(there are two different versions of typography levels: 2014 and 2018). Current
|
||||
version is 14.
|
||||
After you need to change your `/src/custom-style.scss` to include the new font:
|
||||
|
||||
```scss
|
||||
/*
|
||||
* Include only packages that you are using (and core by default)
|
||||
*/
|
||||
@use '@angular/material' as mat;
|
||||
@import '~@angular/material/theming';
|
||||
@import '~ng2-alfresco-core/styles/theming';
|
||||
@import '~ng2-alfresco-core/styles/index';
|
||||
@import '~ng2-activiti-analytics/styles/index';
|
||||
@import '~ng2-activiti-diagrams/styles/index';
|
||||
@import '~ng2-activiti-form/styles/index';
|
||||
@import '~ng2-activiti-processlist/styles/index';
|
||||
@import '~ng2-activiti-tasklist/styles/index';
|
||||
@import '~ng2-alfresco-datatable/styles/index';
|
||||
@import '~ng2-alfresco-documentlist/styles/index';
|
||||
@import '~ng2-alfresco-login/styles/index';
|
||||
@import '~ng2-alfresco-upload/styles/index';
|
||||
@import '~ng2-alfresco-userinfo/styles/index';
|
||||
|
||||
$custom-typography: mat.define-typography-config(
|
||||
$font-family: 'Muli, Roboto, "Helvetica Neue", sans-serif',
|
||||
$display-4: mat.define-typography-level(112px, 112px, 300),
|
||||
$display-3: mat.define-typography-level(56px, 56px, 400),
|
||||
$display-2: mat.define-typography-level(45px, 48px, 400),
|
||||
$display-1: mat.define-typography-level(34px, 40px, 400),
|
||||
$headline: mat.define-typography-level(24px, 32px, 400),
|
||||
$title: mat.define-typography-level(20px, 32px, 500),
|
||||
$subheading-2: mat.define-typography-level(16px, 28px, 400),
|
||||
$subheading-1: mat.define-typography-level(15px, 24px, 400),
|
||||
$body-2: mat.define-typography-level(14px, 24px, 500),
|
||||
$body-1: mat.define-typography-level(14px, 20px, 400),
|
||||
$caption: mat.define-typography-level(12px, 20px, 400),
|
||||
$button: mat.define-typography-level(14px, 14px, 500),
|
||||
$input: mat.define-typography-level(16px, 1.25, 400)
|
||||
);
|
||||
|
||||
@include mat.core();
|
||||
|
||||
$primary: mat.define-palette($alfresco-accent-orange);
|
||||
$accent: mat.define-palette($alfresco-accent-purple);
|
||||
$warn: mat.define-palette($alfresco-warn);
|
||||
$theme: mat.define-light-theme(
|
||||
(
|
||||
color: (
|
||||
primary: $primary,
|
||||
accent: $accent,
|
||||
warn: $warn,
|
||||
),
|
||||
typography: $custom-typography
|
||||
)
|
||||
);
|
||||
|
||||
@include angular-material-theme($theme);
|
||||
|
||||
@include alfresco-core-theme($theme);
|
||||
@include adf-analytics-theme($theme);
|
||||
@include adf-diagrams-theme($theme);
|
||||
@include adf-form-theme($theme);
|
||||
@include adf-processlist-theme($theme);
|
||||
@include adf-tasklist-theme($theme);
|
||||
@include alfresco-datatable-theme($theme);
|
||||
@include alfresco-documentlist-theme($theme);
|
||||
@include alfresco-login-theme($theme);
|
||||
@include alfresco-upload-theme($theme);
|
||||
@include alfresco-userinfo-theme($theme);
|
||||
|
||||
```
|
||||
|
||||
for more details about typography refer to [Material 2 documentation](https://github.com/angular/material2/blob/master/guides/typography.md)
|
||||
@@ -51,3 +51,4 @@ The pages linked below contain the audit for all third party dependencies of ADF
|
||||
- [ADF 7.0.0-alpha.4](audit-info-7.0.0-alpha.4.md)
|
||||
- [ADF 7.0.0-alpha.6](audit-info-7.0.0-alpha.6.md)
|
||||
- [ADF 7.0.0-alpha.7](audit-info-7.0.0-alpha.7.md)
|
||||
- [ADF 7.0.0](audit-info-7.0.0.md)
|
||||
|
||||
@@ -0,0 +1,25 @@
|
||||
---
|
||||
Title: Audit info, alfresco-ng2-components 7.0.0
|
||||
---
|
||||
|
||||
# Audit information for alfresco-ng2-components 7.0.0
|
||||
|
||||
This page lists the security audit of the dependencies this project depends on.
|
||||
|
||||
## Risks
|
||||
|
||||
- Critical risk: 0
|
||||
- High risk: 1
|
||||
- Moderate risk: 1
|
||||
- Low risk: 0
|
||||
|
||||
Dependencies analyzed:
|
||||
|
||||
## Libraries
|
||||
|
||||
| Severity | Module | Vulnerable versions |
|
||||
| --- | --- | --- |
|
||||
|moderate | @babel/runtime | "<7.26.10" |
|
||||
|high | pdfjs-dist | "<=4.1.392" |
|
||||
|
||||
|
||||
Binary file not shown.
@@ -0,0 +1,4 @@
|
||||
// eslint-disable
|
||||
const nxPreset = require('@nx/jest/preset').default;
|
||||
|
||||
module.exports = {...nxPreset };
|
||||
@@ -37,14 +37,6 @@ process-services-cloud/**/*.d.ts
|
||||
!config/karma-test-shim.js!
|
||||
|
||||
*.tgzf
|
||||
core/prebuilt-themes/
|
||||
/package/
|
||||
/bundles/
|
||||
index.d.ts
|
||||
/.happypack
|
||||
|
||||
process-services/_theming.scss
|
||||
content-services/_theming.scss
|
||||
core/_theming.scss
|
||||
insights/_theming.scss
|
||||
process-services-cloud/_theming.scss
|
||||
|
||||
Generated
+32
-15
@@ -1,15 +1,15 @@
|
||||
{
|
||||
"name": "@alfresco/adf-cli",
|
||||
"version": "7.0.0-alpha.8",
|
||||
"version": "8.0.0",
|
||||
"lockfileVersion": 3,
|
||||
"requires": true,
|
||||
"packages": {
|
||||
"": {
|
||||
"name": "@alfresco/adf-cli",
|
||||
"version": "7.0.0-alpha.8",
|
||||
"version": "8.0.0",
|
||||
"license": "Apache-2.0",
|
||||
"dependencies": {
|
||||
"@alfresco/js-api": ">=8.0.0-alpha.7-0",
|
||||
"@alfresco/js-api": ">=8.0.0-alpha.7",
|
||||
"commander": "^6.2.1",
|
||||
"ejs": "^3.1.9",
|
||||
"license-checker": "^25.0.1",
|
||||
@@ -39,6 +39,27 @@
|
||||
"tslib": "^2.6.1"
|
||||
}
|
||||
},
|
||||
"node_modules/@noble/hashes": {
|
||||
"version": "1.8.0",
|
||||
"resolved": "https://registry.npmjs.org/@noble/hashes/-/hashes-1.8.0.tgz",
|
||||
"integrity": "sha512-jCs9ldd7NwzpgXDIf6P3+NrHh9/sD6CQdxHyjQI+h/6rDNo88ypBxxz45UDuZHz9r3tNz7N/VInSVoVdtXEI4A==",
|
||||
"license": "MIT",
|
||||
"engines": {
|
||||
"node": "^14.21.3 || >=16"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://paulmillr.com/funding/"
|
||||
}
|
||||
},
|
||||
"node_modules/@paralleldrive/cuid2": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/@paralleldrive/cuid2/-/cuid2-2.2.2.tgz",
|
||||
"integrity": "sha512-ZOBkgDwEdoYVlSeRbYYXs0S9MejQofiVYoTbKzy/6GQa39/q5tQU2IX46+shYnUkpEl3wc+J6wRlar7r2EK2xA==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@noble/hashes": "^1.1.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@types/ejs": {
|
||||
"version": "3.1.2",
|
||||
"resolved": "https://registry.npmjs.org/@types/ejs/-/ejs-3.1.2.tgz",
|
||||
@@ -435,14 +456,18 @@
|
||||
}
|
||||
},
|
||||
"node_modules/formidable": {
|
||||
"version": "3.5.1",
|
||||
"resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.1.tgz",
|
||||
"integrity": "sha512-WJWKelbRHN41m5dumb0/k8TeAx7Id/y3a+Z7QfhxP/htI9Js5zYaEDtG8uMgG0vM0lOlqnmjE99/kfpOYi/0Og==",
|
||||
"version": "3.5.4",
|
||||
"resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.4.tgz",
|
||||
"integrity": "sha512-YikH+7CUTOtP44ZTnUhR7Ic2UASBPOqmaRkRKxRbywPTe5VxF7RRCck4af9wutiZ/QKM5nME9Bie2fFaPz5Gug==",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@paralleldrive/cuid2": "^2.2.2",
|
||||
"dezalgo": "^1.0.4",
|
||||
"hexoid": "^1.0.0",
|
||||
"once": "^1.4.0"
|
||||
},
|
||||
"engines": {
|
||||
"node": ">=14.0.0"
|
||||
},
|
||||
"funding": {
|
||||
"url": "https://ko-fi.com/tunnckoCore/commissions"
|
||||
}
|
||||
@@ -576,14 +601,6 @@
|
||||
"node": ">= 0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/hexoid": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz",
|
||||
"integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==",
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
},
|
||||
"node_modules/hosted-git-info": {
|
||||
"version": "2.8.9",
|
||||
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@alfresco/adf-cli",
|
||||
"description": "Alfresco ADF cli and utils",
|
||||
"version": "7.0.0-alpha.8",
|
||||
"version": "8.0.0",
|
||||
"author": "Hyland Software, Inc. and its affiliates",
|
||||
"bin": {
|
||||
"adf-cli": "bin/adf-cli",
|
||||
@@ -20,12 +20,12 @@
|
||||
"dist": "rm -rf ../../dist/libs/cli && npm run build && cp -R ./bin ../../dist/libs/cli && cp -R ./resources ../../dist/libs/cli && cp -R ./templates ../../dist/libs/cli && cp ./package.json ../../dist/libs/cli"
|
||||
},
|
||||
"dependencies": {
|
||||
"@alfresco/js-api": ">=8.0.0-alpha.7-0",
|
||||
"@alfresco/js-api": ">=8.0.0-alpha.7",
|
||||
"commander": "^6.2.1",
|
||||
"ejs": "^3.1.9",
|
||||
"license-checker": "^25.0.1",
|
||||
"node-fetch": "^2.7.0",
|
||||
"rxjs": "^6.6.6",
|
||||
"rxjs": "7.8.2",
|
||||
"shelljs": "^0.8.3",
|
||||
"spdx-license-list": "^5.0.0"
|
||||
},
|
||||
|
||||
@@ -50,7 +50,7 @@
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
"executor": "@nrwl/linter:eslint",
|
||||
"executor": "@nx/eslint:lint",
|
||||
"options": {
|
||||
"lintFilePatterns": ["lib/cli/**/*.ts", "lib/cli/**/*.html"]
|
||||
}
|
||||
|
||||
Binary file not shown.
@@ -1,38 +0,0 @@
|
||||
function DisableOutputWebpackPlugin(options) {
|
||||
if (options && options.test && !Array.isArray(options.test))
|
||||
options.test = [options.test]
|
||||
|
||||
this.options = options
|
||||
}
|
||||
|
||||
DisableOutputWebpackPlugin.prototype.apply = function(compiler) {
|
||||
compiler.hooks.emit.tapAsync('DisableOutputWebpackPlugin', (compilation, callback) => {
|
||||
|
||||
if (this.options && this.options.test) {
|
||||
if (Object.keys(compilation.assets).length === 0 ) {
|
||||
throw Error ('Error: The asset pre-theme is not there!')
|
||||
}
|
||||
Object.keys(compilation.assets).forEach((asset) => {
|
||||
let output = true
|
||||
this.options.test.some((regex) => {
|
||||
if (asset.match(regex) != null) {
|
||||
output = false
|
||||
return true
|
||||
}
|
||||
return false
|
||||
})
|
||||
|
||||
if (!output)
|
||||
delete compilation.assets[asset]
|
||||
});
|
||||
} else {
|
||||
Object.keys(compilation.assets).forEach((asset) => {
|
||||
delete compilation.assets[asset]
|
||||
})
|
||||
}
|
||||
|
||||
callback();
|
||||
});
|
||||
};
|
||||
|
||||
module.exports = DisableOutputWebpackPlugin;
|
||||
@@ -1,51 +0,0 @@
|
||||
const MiniCssExtractPlugin = require('mini-css-extract-plugin');
|
||||
const DisableOutputWebpackPlugin = require('./index');
|
||||
const path = require("path");
|
||||
const CssMinimizerPlugin = require("css-minimizer-webpack-plugin");
|
||||
|
||||
module.exports = {
|
||||
|
||||
mode: 'production',
|
||||
|
||||
optimization: {
|
||||
minimizer: [new CssMinimizerPlugin({})],
|
||||
},
|
||||
|
||||
entry: {
|
||||
'adf-blue-orange': './lib/core/src/lib/styles/prebuilt/adf-blue-orange.scss',
|
||||
'adf-blue-purple': './lib/core/src/lib/styles/prebuilt/adf-blue-purple.scss',
|
||||
'adf-cyan-orange': './lib/core/src/lib/styles/prebuilt/adf-cyan-orange.scss',
|
||||
'adf-cyan-purple': './lib/core/src/lib/styles/prebuilt/adf-cyan-purple.scss',
|
||||
'adf-green-purple': './lib/core/src/lib/styles/prebuilt/adf-green-purple.scss',
|
||||
'adf-green-orange': './lib/core/src/lib/styles/prebuilt/adf-green-orange.scss',
|
||||
'adf-pink-bluegrey': './lib/core/src/lib/styles/prebuilt/adf-pink-bluegrey.scss',
|
||||
'adf-indigo-pink': './lib/core/src/lib/styles/prebuilt/adf-indigo-pink.scss',
|
||||
'adf-purple-green': './lib/core/src/lib/styles/prebuilt/adf-purple-green.scss'
|
||||
},
|
||||
|
||||
output: {
|
||||
path: path.resolve(__dirname, '../../dist/libs/core/lib/prebuilt-themes/'),
|
||||
},
|
||||
|
||||
module: {
|
||||
rules: [{
|
||||
test: /\.scss$/,
|
||||
use: [MiniCssExtractPlugin.loader, "css-loader", "sass-loader"]
|
||||
}]
|
||||
},
|
||||
plugins: [
|
||||
new MiniCssExtractPlugin({
|
||||
filename: "[name].css",
|
||||
chunkFilename: "[id].css"
|
||||
}),
|
||||
new DisableOutputWebpackPlugin({
|
||||
test: /\.js$/,
|
||||
})
|
||||
],
|
||||
|
||||
resolve: {
|
||||
alias: {
|
||||
'styles': path.resolve(__dirname, '../core/src/lib/styles'),
|
||||
}
|
||||
}
|
||||
};
|
||||
@@ -9,9 +9,8 @@ module.exports = function (config) {
|
||||
basePath: '../../',
|
||||
|
||||
files: [
|
||||
{ pattern: 'node_modules/pdfjs-dist/build/pdf.js', included: true, watched: false },
|
||||
{ pattern: 'node_modules/pdfjs-dist/build/pdf.worker.js', included: true, watched: false },
|
||||
{ pattern: 'node_modules/pdfjs-dist/web/pdf_viewer.js', included: true, watched: false },
|
||||
{ pattern: 'node_modules/pdfjs-dist/build/pdf.min.mjs', type: 'module', included: true, watched: false },
|
||||
{ pattern: 'node_modules/pdfjs-dist/build/pdf.worker.min.mjs', type: 'module', included: true, watched: false },
|
||||
{
|
||||
pattern: 'node_modules/@angular/material/prebuilt-themes/indigo-pink.css',
|
||||
included: true,
|
||||
@@ -62,6 +61,10 @@ module.exports = function (config) {
|
||||
suppressAll: true // removes the duplicated traces
|
||||
},
|
||||
|
||||
mochaReporter: {
|
||||
ignoreSkipped: process.env.KARMA_IGNORE_SKIPPED === 'true'
|
||||
},
|
||||
|
||||
coverageReporter: {
|
||||
dir: join(__dirname, './coverage/content-services'),
|
||||
subdir: '.',
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@alfresco/adf-content-services",
|
||||
"description": "Alfresco ADF content services",
|
||||
"version": "7.0.0-alpha.8",
|
||||
"version": "8.0.0",
|
||||
"author": "Hyland Software, Inc. and its affiliates",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
@@ -21,9 +21,9 @@
|
||||
"@angular/platform-browser": ">=14.1.3",
|
||||
"@angular/platform-browser-dynamic": ">=14.1.3",
|
||||
"@angular/router": ">=14.1.3",
|
||||
"@alfresco/js-api": ">=8.0.0-alpha.8-0",
|
||||
"@alfresco/js-api": ">=9.0.0",
|
||||
"@ngx-translate/core": ">=14.0.0",
|
||||
"@alfresco/adf-core": ">=7.0.0-alpha.8-0"
|
||||
"@alfresco/adf-core": ">=8.0.0"
|
||||
},
|
||||
"keywords": [
|
||||
"content-services",
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
}
|
||||
},
|
||||
"lint": {
|
||||
"executor": "@nrwl/linter:eslint",
|
||||
"executor": "@nx/eslint:lint",
|
||||
"options": {
|
||||
"lintFilePatterns": ["lib/content-services/**/*.ts", "lib/content-services/**/*.html"]
|
||||
}
|
||||
@@ -45,10 +45,7 @@
|
||||
"browserTarget": "content-services:storybook",
|
||||
"configDir": "lib/content-services/.storybook",
|
||||
"compodoc": false,
|
||||
"styles": [
|
||||
"node_modules/cropperjs/dist/cropper.min.css",
|
||||
"node_modules/pdfjs-dist/web/pdf_viewer.css"
|
||||
],
|
||||
"styles": ["node_modules/cropperjs/dist/cropper.min.css", "node_modules/pdfjs-dist/web/pdf_viewer.css"],
|
||||
"stylePreprocessorOptions": {
|
||||
"includePaths": ["lib", "lib/core/src/lib"]
|
||||
}
|
||||
@@ -66,10 +63,7 @@
|
||||
"configDir": "lib/content-services/.storybook",
|
||||
"outputDir": "dist/storybook/content-services",
|
||||
"compodoc": false,
|
||||
"styles": [
|
||||
"node_modules/cropperjs/dist/cropper.min.css",
|
||||
"node_modules/pdfjs-dist/web/pdf_viewer.css"
|
||||
],
|
||||
"styles": ["node_modules/cropperjs/dist/cropper.min.css", "node_modules/pdfjs-dist/web/pdf_viewer.css"],
|
||||
"stylePreprocessorOptions": {
|
||||
"includePaths": ["lib", "lib/core/src/lib"]
|
||||
}
|
||||
|
||||
@@ -23,18 +23,17 @@ import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||
|
||||
@Injectable()
|
||||
export class AlfrescoApiNoAuthService extends AlfrescoApiService {
|
||||
constructor(
|
||||
storage: StorageService,
|
||||
appConfig: AppConfigService,
|
||||
private readonly adfHttpClient: AdfHttpClient
|
||||
) {
|
||||
constructor(storage: StorageService, appConfig: AppConfigService, private readonly adfHttpClient: AdfHttpClient) {
|
||||
super(appConfig, storage);
|
||||
}
|
||||
|
||||
override createInstance(config: AlfrescoApiConfig) {
|
||||
return new AlfrescoApi({
|
||||
...config,
|
||||
oauthInit: false
|
||||
}, this.adfHttpClient);
|
||||
return new AlfrescoApi(
|
||||
{
|
||||
...config,
|
||||
oauthInit: false
|
||||
},
|
||||
this.adfHttpClient
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,7 +18,8 @@
|
||||
import { AlfrescoApiConfig } from '@alfresco/js-api';
|
||||
import { Injectable } from '@angular/core';
|
||||
import { AppConfigService, AppConfigValues, StorageService } from '@alfresco/adf-core';
|
||||
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||
import { AlfrescoApiService } from '../services/alfresco-api.service';
|
||||
import { SecurityOptionsLoaderService } from '../security-options-loader/security-options-loader.service';
|
||||
|
||||
/**
|
||||
* Create a factory to resolve an api service instance
|
||||
@@ -34,13 +35,15 @@ export function createAlfrescoApiInstance(angularAlfrescoApiService: AlfrescoApi
|
||||
providedIn: 'root'
|
||||
})
|
||||
export class AlfrescoApiLoaderService {
|
||||
constructor(private readonly appConfig: AppConfigService,
|
||||
private readonly apiService: AlfrescoApiService,
|
||||
private storageService: StorageService) {
|
||||
}
|
||||
constructor(
|
||||
private readonly appConfig: AppConfigService,
|
||||
private readonly apiService: AlfrescoApiService,
|
||||
private readonly securityOptionsLoaderService: SecurityOptionsLoaderService,
|
||||
private storageService: StorageService
|
||||
) {}
|
||||
|
||||
async init(): Promise<any> {
|
||||
await this.appConfig.load();
|
||||
await this.appConfig.load(this.securityOptionsLoaderService.load);
|
||||
return this.initAngularAlfrescoApi();
|
||||
}
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user