mirror of
https://github.com/Alfresco/alfresco-content-app.git
synced 2025-09-17 14:21:14 +00:00
Code cleanup and optimisations (#3383)
* cleanup unused css * remove unused store/reducer blocks * fix typo in toolbar ("tool-bar") * toolbar action: break dependency on adf-core * unified toolbar component * break dependency on adf toolbar module * update e2e * update e2e * update e2e * update e2e * update e2e * fix search results toolbar spacing * cleanup unused app state * cleanup unused code * fix toolbar divider color * fix missing buttons in the info drawer * fix css nesting * fix search results css
This commit is contained in:
@@ -54,18 +54,6 @@ export async function checkToolbarPrimary(item: string, expectedToolbarPrimary:
|
||||
}
|
||||
}
|
||||
|
||||
export async function checkToolbarMoreActions(item: string, expectedToolbarMore: string[]): Promise<void> {
|
||||
await dataTable.selectItem(item);
|
||||
await toolbar.openMoreMenu();
|
||||
|
||||
const actualMoreActions = await toolbar.menu.getMenuItems();
|
||||
for (const action of expectedToolbarMore) {
|
||||
expect(actualMoreActions.includes(action)).toBe(true, `Expected to contain ${action}`);
|
||||
}
|
||||
|
||||
await toolbar.closeMoreMenu();
|
||||
}
|
||||
|
||||
export async function checkToolbarActions(item: string, expectedToolbarPrimary: string[], expectedToolbarMore: string[]): Promise<void> {
|
||||
await dataTable.selectItem(item);
|
||||
|
||||
|
@@ -63,7 +63,7 @@ describe('File preview', () => {
|
||||
const documentText = 'This is a small demonstration';
|
||||
await searchInput.searchUntilResult(fileName, 'URL');
|
||||
await dataTable.selectItem(fileName);
|
||||
await BrowserActions.click(browsingPage.toolbar.viewDetailsButton);
|
||||
await BrowserActions.click(infoDrawer.toolbar.viewDetailsButton);
|
||||
await infoDrawer.previewButton.click();
|
||||
await viewerPage.checkFileContent(pageNumber, documentText);
|
||||
});
|
||||
|
150
package-lock.json
generated
150
package-lock.json
generated
@@ -74,7 +74,6 @@
|
||||
"@typescript-eslint/eslint-plugin": "^5.59.0",
|
||||
"@typescript-eslint/parser": "^5.48.2",
|
||||
"ajv-cli": "^4.2.0",
|
||||
"cypress": "^12.14.0",
|
||||
"dotenv": "8.2.0",
|
||||
"dotenv-expand": "^5.1.0",
|
||||
"eslint": "^8.42.0",
|
||||
@@ -4586,6 +4585,8 @@
|
||||
"resolved": "https://registry.npmjs.org/@cypress/request/-/request-2.88.11.tgz",
|
||||
"integrity": "sha512-M83/wfQ1EkspjkE2lNWNV5ui2Cv7UCv1swW1DqljahbzLVWltcsexQh8jYtuS/vzFXP+HySntGM83ZXA9fn17w==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"aws-sign2": "~0.7.0",
|
||||
"aws4": "^1.8.0",
|
||||
@@ -4615,6 +4616,8 @@
|
||||
"resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
|
||||
"integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"asynckit": "^0.4.0",
|
||||
"combined-stream": "^1.0.6",
|
||||
@@ -4629,6 +4632,8 @@
|
||||
"resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.3.6.tgz",
|
||||
"integrity": "sha512-3adrsD6zqo4GsTqtO7FyrejHNv+NgiIfAfv68+jVlFmSr9OGy7zrxONceFRLKvnnZA5jbxQBX1u9PpB6Wi32Gw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"assert-plus": "^1.0.0",
|
||||
"jsprim": "^2.0.2",
|
||||
@@ -4646,6 +4651,8 @@
|
||||
"engines": [
|
||||
"node >=0.6.0"
|
||||
],
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"assert-plus": "1.0.0",
|
||||
"extsprintf": "1.3.0",
|
||||
@@ -4658,6 +4665,8 @@
|
||||
"resolved": "https://registry.npmjs.org/qs/-/qs-6.10.4.tgz",
|
||||
"integrity": "sha512-OQiU+C+Ds5qiH91qh/mg0w+8nwQuLjM4F4M/PbmhDOoYehPh+Fb0bDjtR1sOvy7YKxvj28Y/M0PhP5uVX0kB+g==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"side-channel": "^1.0.4"
|
||||
},
|
||||
@@ -4673,6 +4682,8 @@
|
||||
"resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
|
||||
"integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"bin": {
|
||||
"uuid": "dist/bin/uuid"
|
||||
}
|
||||
@@ -4682,6 +4693,8 @@
|
||||
"resolved": "https://registry.npmjs.org/@cypress/xvfb/-/xvfb-1.2.4.tgz",
|
||||
"integrity": "sha512-skbBzPggOVYCbnGgV+0dmBdW/s77ZkAOXIC1knS8NagwDjBrNC1LuXtQJeiN6l+m7lzmHtaoUw/ctJKdqkG57Q==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"debug": "^3.1.0",
|
||||
"lodash.once": "^4.1.1"
|
||||
@@ -4692,6 +4705,8 @@
|
||||
"resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
|
||||
"integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ms": "^2.1.1"
|
||||
}
|
||||
@@ -8066,13 +8081,17 @@
|
||||
"version": "8.1.1",
|
||||
"resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.1.tgz",
|
||||
"integrity": "sha512-0kSuKjAS0TrGLJ0M/+8MaFkGsQhZpB6pxOmvS3K8FYI72K//YmdfoW9X2qPsAKh1mkwxGD5zib9s1FIFed6E8g==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@types/sizzle": {
|
||||
"version": "2.3.3",
|
||||
"resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.3.tgz",
|
||||
"integrity": "sha512-JYM8x9EGF163bEyhdJBpR2QX1R5naCJHC8ucJylJ3w9/CVBaskdQ8WqBf8MmQrd1kRvp/a4TS8HJ+bxzR7ZJYQ==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/@types/sockjs": {
|
||||
"version": "0.3.33",
|
||||
@@ -8129,6 +8148,7 @@
|
||||
"integrity": "sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"@types/node": "*"
|
||||
}
|
||||
@@ -9425,7 +9445,9 @@
|
||||
"type": "consulting",
|
||||
"url": "https://feross.org/support"
|
||||
}
|
||||
]
|
||||
],
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/are-docs-informative": {
|
||||
"version": "0.0.2",
|
||||
@@ -9655,6 +9677,8 @@
|
||||
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
|
||||
"integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">= 4.0.0"
|
||||
}
|
||||
@@ -10177,7 +10201,9 @@
|
||||
"version": "2.0.2",
|
||||
"resolved": "https://registry.npmjs.org/blob-util/-/blob-util-2.0.2.tgz",
|
||||
"integrity": "sha512-T7JQa+zsXXEa6/8ZhHcQEW1UFfVM49Ts65uBkFL6fz2QmrElqmbajIDJvuA0tEhRe5eIjpV9ZF+0RfZR9voJFQ==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/blocking-proxy": {
|
||||
"version": "1.0.1",
|
||||
@@ -10198,7 +10224,9 @@
|
||||
"version": "3.7.2",
|
||||
"resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
|
||||
"integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/body-parser": {
|
||||
"version": "1.20.1",
|
||||
@@ -10423,6 +10451,8 @@
|
||||
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
|
||||
"integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": "*"
|
||||
}
|
||||
@@ -10465,6 +10495,8 @@
|
||||
"resolved": "https://registry.npmjs.org/cachedir/-/cachedir-2.3.0.tgz",
|
||||
"integrity": "sha512-A+Fezp4zxnit6FanDmv9EqXNAi3vt9DWp51/71UEhXukb7QUuvtv9344h91dyAxuTLoSYJFU299qzR3tzwPAhw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=6"
|
||||
}
|
||||
@@ -10642,6 +10674,8 @@
|
||||
"resolved": "https://registry.npmjs.org/check-more-types/-/check-more-types-2.24.0.tgz",
|
||||
"integrity": "sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">= 0.8.0"
|
||||
}
|
||||
@@ -10809,6 +10843,8 @@
|
||||
"resolved": "https://registry.npmjs.org/cli-table3/-/cli-table3-0.6.3.tgz",
|
||||
"integrity": "sha512-w5Jac5SykAeZJKntOxJCrm63Eg5/4dhMWIcuTbo9rpE+brgaSZo0RuNJZeOyMgsUdhDeojvgyQLmjI+K50ZGyg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"string-width": "^4.2.0"
|
||||
},
|
||||
@@ -10824,6 +10860,8 @@
|
||||
"resolved": "https://registry.npmjs.org/cli-truncate/-/cli-truncate-2.1.0.tgz",
|
||||
"integrity": "sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"slice-ansi": "^3.0.0",
|
||||
"string-width": "^4.2.0"
|
||||
@@ -12077,6 +12115,8 @@
|
||||
"integrity": "sha512-HiLIXKXZaIT1RT7sw1sVPt+qKtis3uYNm6KwC4qoYjabwLKaqZlyS/P+uVvvlBNcHIwL/BC6nQZajpbUd7hOgQ==",
|
||||
"dev": true,
|
||||
"hasInstallScript": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"@cypress/request": "^2.88.10",
|
||||
"@cypress/xvfb": "^1.2.4",
|
||||
@@ -12133,6 +12173,8 @@
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-convert": "^2.0.1"
|
||||
},
|
||||
@@ -12148,6 +12190,8 @@
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
|
||||
"integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.1.0",
|
||||
"supports-color": "^7.1.0"
|
||||
@@ -12164,6 +12208,8 @@
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
|
||||
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"has-flag": "^4.0.0"
|
||||
},
|
||||
@@ -12176,6 +12222,8 @@
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-name": "~1.1.4"
|
||||
},
|
||||
@@ -12187,13 +12235,17 @@
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/cypress/node_modules/execa": {
|
||||
"version": "4.1.0",
|
||||
"resolved": "https://registry.npmjs.org/execa/-/execa-4.1.0.tgz",
|
||||
"integrity": "sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"cross-spawn": "^7.0.0",
|
||||
"get-stream": "^5.0.0",
|
||||
@@ -12217,6 +12269,8 @@
|
||||
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz",
|
||||
"integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"at-least-node": "^1.0.0",
|
||||
"graceful-fs": "^4.2.0",
|
||||
@@ -12232,6 +12286,8 @@
|
||||
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
|
||||
"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"pump": "^3.0.0"
|
||||
},
|
||||
@@ -12247,6 +12303,8 @@
|
||||
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
|
||||
"integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
@@ -12256,6 +12314,8 @@
|
||||
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
|
||||
"integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=8.12.0"
|
||||
}
|
||||
@@ -12264,13 +12324,17 @@
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.0.0.tgz",
|
||||
"integrity": "sha512-F2JHgJQ1iqwnHDcQjVBsq3n/uoaFL+iPW/eAeL7kVxy/2RrWaN4WroKjjvbsoRtv0ftelNyC01bjRhn/bhcf4A==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/cypress/node_modules/supports-color": {
|
||||
"version": "8.1.1",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
|
||||
"integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"has-flag": "^4.0.0"
|
||||
},
|
||||
@@ -12286,6 +12350,8 @@
|
||||
"resolved": "https://registry.npmjs.org/tmp/-/tmp-0.2.1.tgz",
|
||||
"integrity": "sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"rimraf": "^3.0.0"
|
||||
},
|
||||
@@ -12358,7 +12424,9 @@
|
||||
"version": "1.11.7",
|
||||
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.7.tgz",
|
||||
"integrity": "sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/debug": {
|
||||
"version": "4.3.4",
|
||||
@@ -14460,7 +14528,9 @@
|
||||
"version": "6.4.7",
|
||||
"resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-6.4.7.tgz",
|
||||
"integrity": "sha512-tYUSVOGeQPKt/eC1ABfhHy5Xd96N3oIijJvN3O9+TsC28T5V9yX9oEfEK5faP0EFSNVOG97qtAS68GBrQB2hDg==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/eventemitter3": {
|
||||
"version": "4.0.7",
|
||||
@@ -14505,6 +14575,8 @@
|
||||
"resolved": "https://registry.npmjs.org/executable/-/executable-4.1.1.tgz",
|
||||
"integrity": "sha512-8iA79xD3uAch729dUG8xaaBBFGaEa0wdD2VkYLFHwlqosEj/jT66AzcreRDSgV7ehnNLBW2WR5jIXwGKjVdTLg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"pify": "^2.2.0"
|
||||
},
|
||||
@@ -14517,6 +14589,8 @@
|
||||
"resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
|
||||
"integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=0.10.0"
|
||||
}
|
||||
@@ -14761,6 +14835,8 @@
|
||||
"resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
|
||||
"integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"debug": "^4.1.1",
|
||||
"get-stream": "^5.1.0",
|
||||
@@ -14781,6 +14857,8 @@
|
||||
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
|
||||
"integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"pump": "^3.0.0"
|
||||
},
|
||||
@@ -14930,6 +15008,8 @@
|
||||
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
|
||||
"integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"pend": "~1.2.0"
|
||||
}
|
||||
@@ -15611,6 +15691,8 @@
|
||||
"resolved": "https://registry.npmjs.org/getos/-/getos-3.2.1.tgz",
|
||||
"integrity": "sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"async": "^3.2.0"
|
||||
}
|
||||
@@ -16788,6 +16870,8 @@
|
||||
"resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
|
||||
"integrity": "sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ci-info": "^3.2.0"
|
||||
},
|
||||
@@ -16881,6 +16965,8 @@
|
||||
"resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz",
|
||||
"integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"global-dirs": "^3.0.0",
|
||||
"is-path-inside": "^3.0.2"
|
||||
@@ -16897,6 +16983,8 @@
|
||||
"resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.1.tgz",
|
||||
"integrity": "sha512-NBcGGFbBA9s1VzD41QXDG+3++t9Mn5t1FpLdhESY6oKY4gYTFpX4wO3sqGUa0Srjtbfj3szX0RnemmrVRUdULA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ini": "2.0.0"
|
||||
},
|
||||
@@ -16912,6 +17000,8 @@
|
||||
"resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz",
|
||||
"integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=10"
|
||||
}
|
||||
@@ -20004,6 +20094,8 @@
|
||||
"resolved": "https://registry.npmjs.org/lazy-ass/-/lazy-ass-1.6.0.tgz",
|
||||
"integrity": "sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": "> 0.8"
|
||||
}
|
||||
@@ -20658,6 +20750,8 @@
|
||||
"resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz",
|
||||
"integrity": "sha512-TyWI8G99GX9GjE54cJ+RrNMcIFBfwMPxc3XTFiAYGN4s10hWROGtOg7+O6u6LE3mNkyld7RSLE6nrKBvTfcs3g==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"cli-truncate": "^2.1.0",
|
||||
"colorette": "^2.0.16",
|
||||
@@ -20685,6 +20779,8 @@
|
||||
"resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz",
|
||||
"integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"tslib": "^2.1.0"
|
||||
}
|
||||
@@ -20747,7 +20843,9 @@
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz",
|
||||
"integrity": "sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/lodash.truncate": {
|
||||
"version": "4.4.2",
|
||||
@@ -23633,7 +23731,9 @@
|
||||
"version": "1.2.2",
|
||||
"resolved": "https://registry.npmjs.org/ospath/-/ospath-1.2.2.tgz",
|
||||
"integrity": "sha512-o6E5qJV5zkAbIDNhGSIlyOhScKXgQrSRMilfph0clDfM0nEnBOlKlH4sWDmG95BW/CvwNz0vmm7dJVtU2KlMiA==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/p-limit": {
|
||||
"version": "2.3.0",
|
||||
@@ -24290,7 +24390,9 @@
|
||||
"version": "1.2.0",
|
||||
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
|
||||
"integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/performance-now": {
|
||||
"version": "2.1.0",
|
||||
@@ -26260,6 +26362,8 @@
|
||||
"resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
|
||||
"integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"end-of-stream": "^1.1.0",
|
||||
"once": "^1.3.1"
|
||||
@@ -26734,6 +26838,8 @@
|
||||
"resolved": "https://registry.npmjs.org/request-progress/-/request-progress-3.0.0.tgz",
|
||||
"integrity": "sha512-MnWzEHHaxHO2iWiQuHrUPBi/1WeBf5PkxQqNyNvLl9VAYSdXkP8tQ3pBSeCPD+yw0v0Aq1zosWLz0BdeXpWwZg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"throttleit": "^1.0.0"
|
||||
}
|
||||
@@ -27650,6 +27756,8 @@
|
||||
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-3.0.0.tgz",
|
||||
"integrity": "sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"ansi-styles": "^4.0.0",
|
||||
"astral-regex": "^2.0.0",
|
||||
@@ -27664,6 +27772,8 @@
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
|
||||
"integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-convert": "^2.0.1"
|
||||
},
|
||||
@@ -27679,6 +27789,8 @@
|
||||
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
|
||||
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"color-name": "~1.1.4"
|
||||
},
|
||||
@@ -27690,7 +27802,9 @@
|
||||
"version": "1.1.4",
|
||||
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
|
||||
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/slide": {
|
||||
"version": "1.1.6",
|
||||
@@ -29053,7 +29167,9 @@
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/throttleit/-/throttleit-1.0.0.tgz",
|
||||
"integrity": "sha512-rkTVqu6IjfQ/6+uNuuc3sZek4CEYxTJom3IktzgdSxcZqdARuebbA/f4QmAxMQIxqq9ZLEUkSYqvuk1I6VKq4g==",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true
|
||||
},
|
||||
"node_modules/through": {
|
||||
"version": "2.3.8",
|
||||
@@ -29707,6 +29823,8 @@
|
||||
"resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz",
|
||||
"integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"engines": {
|
||||
"node": ">=8"
|
||||
}
|
||||
@@ -30723,6 +30841,8 @@
|
||||
"resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
|
||||
"integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==",
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"peer": true,
|
||||
"dependencies": {
|
||||
"buffer-crc32": "~0.2.3",
|
||||
"fd-slicer": "~1.1.0"
|
||||
|
@@ -97,7 +97,6 @@
|
||||
"@typescript-eslint/eslint-plugin": "^5.59.0",
|
||||
"@typescript-eslint/parser": "^5.48.2",
|
||||
"ajv-cli": "^4.2.0",
|
||||
"cypress": "^12.14.0",
|
||||
"dotenv": "8.2.0",
|
||||
"dotenv-expand": "^5.1.0",
|
||||
"eslint": "^8.42.0",
|
||||
|
@@ -28,9 +28,7 @@
|
||||
</adf-viewer-open-with>
|
||||
|
||||
<adf-viewer-toolbar-actions *ngIf="!simplestMode">
|
||||
<ng-container *ngFor="let action of viewerToolbarActions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="action"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
<aca-toolbar [items]="viewerToolbarActions"></aca-toolbar>
|
||||
</adf-viewer-toolbar-actions>
|
||||
</adf-alfresco-viewer>
|
||||
</ng-container>
|
||||
|
@@ -83,7 +83,6 @@ export const INITIAL_APP_STATE: AppState = {
|
||||
infoDrawerMetadataAspect: '',
|
||||
showFacetFilter: true,
|
||||
fileUploadingDialog: true,
|
||||
documentDisplayMode: 'list',
|
||||
showLoader: false,
|
||||
repository: {
|
||||
status: {
|
||||
|
@@ -34,7 +34,7 @@ import {
|
||||
ContentApiService,
|
||||
InfoDrawerComponent,
|
||||
ToolbarMenuItemComponent,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { ContentActionRef, ViewerExtensionRef } from '@alfresco/adf-extensions';
|
||||
import { SearchRequest } from '@alfresco/js-api';
|
||||
@@ -44,7 +44,7 @@ import { AlfrescoViewerModule, NodesApiService } from '@alfresco/adf-content-ser
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, InfoDrawerComponent, ToolbarMenuItemComponent, ToolbarActionComponent],
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, InfoDrawerComponent, ToolbarMenuItemComponent, ToolbarComponent],
|
||||
selector: 'app-preview',
|
||||
templateUrl: './preview.component.html',
|
||||
styleUrls: ['./preview.component.scss'],
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<adf-breadcrumb [root]="title" [folderNode]="node" (navigate)="goBack()"> </adf-breadcrumb>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
|
@@ -24,11 +24,10 @@
|
||||
|
||||
import { Component, OnInit, ViewEncapsulation, OnDestroy } from '@angular/core';
|
||||
import { ActivatedRoute } from '@angular/router';
|
||||
import { ContentApiService, PageComponent, PageLayoutComponent, ToolbarActionComponent } from '@alfresco/aca-shared';
|
||||
import { ContentApiService, PageComponent, PageLayoutComponent, ToolbarComponent } from '@alfresco/aca-shared';
|
||||
import { NavigateToPreviousPage, SetSelectedNodesAction } from '@alfresco/aca-shared/store';
|
||||
import { Subject } from 'rxjs';
|
||||
import { BreadcrumbModule, PermissionManagerModule } from '@alfresco/adf-content-services';
|
||||
import { ToolbarModule } from '@alfresco/adf-core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { MatIconModule } from '@angular/material/icon';
|
||||
@@ -45,15 +44,14 @@ import { CommentsTabComponent } from '../info-drawer/comments-tab/comments-tab.c
|
||||
TranslateModule,
|
||||
PermissionManagerModule,
|
||||
BreadcrumbModule,
|
||||
ToolbarModule,
|
||||
MatIconModule,
|
||||
MatTabsModule,
|
||||
MatProgressBarModule,
|
||||
MatButtonModule,
|
||||
MetadataTabComponent,
|
||||
CommentsTabComponent,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent
|
||||
PageLayoutComponent,
|
||||
ToolbarComponent
|
||||
],
|
||||
selector: 'app-details-manager',
|
||||
templateUrl: './details.component.html',
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.LIBRARIES.MENU.FAVORITE_LIBRARIES.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[node]="$any(list)"
|
||||
[loading]="isLoading"
|
||||
[selectionMode]="'single'"
|
||||
|
@@ -31,10 +31,10 @@ import {
|
||||
InfoDrawerComponent,
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { NavigateLibraryAction } from '@alfresco/aca-shared/store';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule, UserPreferencesService } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, UserPreferencesService } from '@alfresco/adf-core';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
@@ -45,7 +45,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
@@ -54,9 +53,9 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
ExtensionsModule,
|
||||
PaginationModule,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent,
|
||||
TranslateModule
|
||||
TranslateModule,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './favorite-libraries.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.FAVORITES.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[currentFolderId]="'-favorites-'"
|
||||
[selectionMode]="'multiple'"
|
||||
[navigate]="false"
|
||||
|
@@ -29,7 +29,7 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { MinimalNodeEntity, MinimalNodeEntryEntity, PathElementEntity, PathInfo } from '@alfresco/js-api';
|
||||
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
|
||||
@@ -37,7 +37,7 @@ import { debounceTime, map } from 'rxjs/operators';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule } from '@alfresco/adf-core';
|
||||
import { DocumentListDirective } from '../../directives/document-list.directive';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@@ -45,7 +45,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
@@ -55,9 +54,9 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
PaginationModule,
|
||||
PaginationDirective,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent,
|
||||
TranslateModule
|
||||
TranslateModule,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './favorites.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout [hasError]="!isValidPath">
|
||||
<div class="aca-page-layout-header">
|
||||
<adf-breadcrumb [root]="title" [folderNode]="node" [maxItems]="isSmallScreen ? 1 : 0" (navigate)="onBreadcrumbNavigate($event)"> </adf-breadcrumb>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-error">
|
||||
@@ -20,7 +15,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[selectionMode]="'multiple'"
|
||||
[multiselect]="false"
|
||||
[currentFolderId]="node?.id"
|
||||
|
@@ -22,7 +22,7 @@
|
||||
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import { DataTableModule, PaginationModule, ShowHeaderMode, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, ShowHeaderMode } from '@alfresco/adf-core';
|
||||
import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
|
||||
import { ActivatedRoute, Params } from '@angular/router';
|
||||
import { MinimalNodeEntity, MinimalNodeEntryEntity, PathElement, PathElementEntity } from '@alfresco/js-api';
|
||||
@@ -35,7 +35,7 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { SetCurrentFolderAction, isAdmin, UploadFileVersionAction, showLoaderSelector } from '@alfresco/aca-shared/store';
|
||||
import { debounceTime, takeUntil } from 'rxjs/operators';
|
||||
@@ -52,7 +52,6 @@ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
||||
CommonModule,
|
||||
TranslateModule,
|
||||
BreadcrumbModule,
|
||||
ToolbarModule,
|
||||
GenericErrorComponent,
|
||||
UploadModule,
|
||||
DocumentListModule,
|
||||
@@ -63,9 +62,9 @@ import { MatProgressSpinnerModule } from '@angular/material/progress-spinner';
|
||||
PaginationModule,
|
||||
MatProgressSpinnerModule,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
PaginationDirective,
|
||||
PageLayoutComponent
|
||||
PageLayoutComponent,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './files.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.LIBRARIES.MENU.MY_LIBRARIES.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[currentFolderId]="'-mysites-'"
|
||||
[selectionMode]="'single'"
|
||||
[navigate]="false"
|
||||
|
@@ -32,12 +32,12 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule } from '@alfresco/adf-core';
|
||||
import { DocumentListDirective } from '../../directives/document-list.directive';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@@ -45,7 +45,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
@@ -55,9 +54,9 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
PaginationModule,
|
||||
PaginationDirective,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent,
|
||||
TranslateModule
|
||||
TranslateModule,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './libraries.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.RECENT.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[currentFolderId]="'-recent-'"
|
||||
[selectionMode]="'multiple'"
|
||||
[navigate]="false"
|
||||
|
@@ -31,12 +31,12 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule } from '@alfresco/adf-core';
|
||||
import { DocumentListDirective } from '../../directives/document-list.directive';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@@ -44,7 +44,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
@@ -54,9 +53,9 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
PaginationModule,
|
||||
PaginationDirective,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent,
|
||||
TranslateModule
|
||||
TranslateModule,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './recent-files.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,12 +1,8 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<aca-search-input></aca-search-input>
|
||||
<div class="adf-toolbar--spacer adf-toolbar-divider"></div>
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<div class="aca-search-toolbar-spacer"></div>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
|
@@ -1,6 +1,10 @@
|
||||
@import '../../../ui/mixins';
|
||||
|
||||
aca-search-results {
|
||||
.aca-search-toolbar-spacer {
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.adf-search-results {
|
||||
@include flex-row;
|
||||
|
||||
|
@@ -35,13 +35,13 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { SearchInputComponent } from '../search-input/search-input.component';
|
||||
import { DataTableModule, PaginationModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule } from '@alfresco/adf-core';
|
||||
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DocumentListDirective } from '../../../directives/document-list.directive';
|
||||
@@ -52,7 +52,6 @@ import { DocumentListDirective } from '../../../directives/document-list.directi
|
||||
CommonModule,
|
||||
TranslateModule,
|
||||
SearchInputComponent,
|
||||
ToolbarModule,
|
||||
MatProgressBarModule,
|
||||
DocumentListModule,
|
||||
DataTableModule,
|
||||
@@ -61,9 +60,9 @@ import { DocumentListDirective } from '../../../directives/document-list.directi
|
||||
InfoDrawerComponent,
|
||||
ContextActionsDirective,
|
||||
DocumentListDirective,
|
||||
ToolbarActionComponent,
|
||||
PaginationDirective,
|
||||
PageLayoutComponent
|
||||
PageLayoutComponent,
|
||||
ToolbarComponent
|
||||
],
|
||||
selector: 'aca-search-results',
|
||||
templateUrl: './search-libraries-results.component.html',
|
||||
|
@@ -1,12 +1,8 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<aca-search-input></aca-search-input>
|
||||
<div class="adf-toolbar--spacer adf-toolbar-divider"></div>
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<div class="aca-search-toolbar-spacer"></div>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
|
@@ -1,5 +1,11 @@
|
||||
@import '../../../ui/mixins';
|
||||
|
||||
aca-search-results {
|
||||
.aca-search-toolbar-spacer {
|
||||
width: 100%;
|
||||
}
|
||||
}
|
||||
|
||||
.adf-search-results {
|
||||
@include flex-row;
|
||||
|
||||
|
@@ -35,7 +35,7 @@ import {
|
||||
ShowInfoDrawerPreviewAction,
|
||||
SnackbarErrorAction
|
||||
} from '@alfresco/aca-shared/store';
|
||||
import { DataTableModule, PaginationModule, ToolbarModule, TranslationService, ViewerModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TranslationService, ViewerModule } from '@alfresco/adf-core';
|
||||
import { combineLatest } from 'rxjs';
|
||||
import {
|
||||
ContextActionsDirective,
|
||||
@@ -43,7 +43,7 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { SearchSortingDefinition } from '@alfresco/adf-content-services/lib/search/models/search-sorting-definition.interface';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
@@ -66,7 +66,6 @@ import { SearchResultsRowComponent } from '../search-results-row/search-results-
|
||||
CommonModule,
|
||||
TranslateModule,
|
||||
SearchInputComponent,
|
||||
ToolbarModule,
|
||||
MatProgressBarModule,
|
||||
SearchModule,
|
||||
MatDividerModule,
|
||||
@@ -85,8 +84,8 @@ import { SearchResultsRowComponent } from '../search-results-row/search-results-
|
||||
SearchResultsRowComponent,
|
||||
PaginationDirective,
|
||||
ViewerModule,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent
|
||||
PageLayoutComponent,
|
||||
ToolbarComponent
|
||||
],
|
||||
selector: 'aca-search-results',
|
||||
templateUrl: './search-results.component.html',
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.SHARED.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[currentFolderId]="'-sharedlinks-'"
|
||||
[selectionMode]="'multiple'"
|
||||
[sorting]="['modifiedAt', 'desc']"
|
||||
|
@@ -32,12 +32,12 @@ import {
|
||||
PageComponent,
|
||||
PageLayoutComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent
|
||||
ToolbarComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule } from '@alfresco/adf-core';
|
||||
import { DocumentListDirective } from '../../directives/document-list.directive';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
|
||||
@@ -45,7 +45,6 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
@@ -55,9 +54,9 @@ import { TranslateModule } from '@ngx-translate/core';
|
||||
PaginationModule,
|
||||
InfoDrawerComponent,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent,
|
||||
TranslateModule
|
||||
TranslateModule,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './shared-files.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -1,9 +1,7 @@
|
||||
<ng-container *ngIf="sharedLinkId">
|
||||
<adf-alfresco-viewer [allowPrint]="false" [allowDownload]="false" [allowFullScreen]="false" [sharedLinkId]="sharedLinkId" [allowGoBack]="false">
|
||||
<adf-viewer-toolbar-actions>
|
||||
<ng-container *ngFor="let action of viewerToolbarActions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="action"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
<aca-toolbar [items]="viewerToolbarActions"></aca-toolbar>
|
||||
</adf-viewer-toolbar-actions>
|
||||
</adf-alfresco-viewer>
|
||||
</ng-container>
|
||||
|
@@ -31,13 +31,13 @@ import { ActivatedRoute } from '@angular/router';
|
||||
import { Store } from '@ngrx/store';
|
||||
import { forkJoin, from, of, Subject } from 'rxjs';
|
||||
import { catchError, mergeMap, takeUntil } from 'rxjs/operators';
|
||||
import { AppExtensionService, AppService, ToolbarActionComponent } from '@alfresco/aca-shared';
|
||||
import { AppExtensionService, AppService, ToolbarComponent } from '@alfresco/aca-shared';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { AlfrescoViewerModule } from '@alfresco/adf-content-services';
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, ToolbarActionComponent],
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, ToolbarComponent],
|
||||
selector: 'app-shared-link-view',
|
||||
templateUrl: './shared-link-view.component.html',
|
||||
styleUrls: ['shared-link-view.component.scss'],
|
||||
@@ -87,8 +87,4 @@ export class SharedLinkViewComponent implements OnInit, OnDestroy {
|
||||
this.onDestroy$.next(true);
|
||||
this.onDestroy$.complete();
|
||||
}
|
||||
|
||||
trackByActionId(_: number, action: ContentActionRef) {
|
||||
return action.id;
|
||||
}
|
||||
}
|
||||
|
@@ -14,8 +14,6 @@
|
||||
{{ appName$ | async | translate }}
|
||||
</div>
|
||||
|
||||
<ng-container *ngFor="let actionRef of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="actionRef"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
</div>
|
||||
|
@@ -22,13 +22,13 @@
|
||||
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import { Component, EventEmitter, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';
|
||||
import { Component, EventEmitter, inject, OnDestroy, OnInit, Output, ViewEncapsulation } from '@angular/core';
|
||||
import { Store } from '@ngrx/store';
|
||||
import { Observable, Subject } from 'rxjs';
|
||||
import { Subject } from 'rxjs';
|
||||
import { AppStore, getAppName, getLogoPath } from '@alfresco/aca-shared/store';
|
||||
import { AppConfigService } from '@alfresco/adf-core';
|
||||
import { ContentActionRef } from '@alfresco/adf-extensions';
|
||||
import { AppExtensionService, ToolbarActionComponent } from '@alfresco/aca-shared';
|
||||
import { AppExtensionService, ToolbarComponent } from '@alfresco/aca-shared';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
@@ -36,7 +36,7 @@ import { RouterModule } from '@angular/router';
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [CommonModule, TranslateModule, RouterModule, ToolbarActionComponent],
|
||||
imports: [CommonModule, TranslateModule, RouterModule, ToolbarComponent],
|
||||
selector: 'app-sidenav-header',
|
||||
templateUrl: `./sidenav-header.component.html`,
|
||||
encapsulation: ViewEncapsulation.None,
|
||||
@@ -44,21 +44,18 @@ import { RouterModule } from '@angular/router';
|
||||
})
|
||||
export class SidenavHeaderComponent implements OnInit, OnDestroy {
|
||||
private onDestroy$ = new Subject<boolean>();
|
||||
private store = inject<Store<AppStore>>(Store);
|
||||
private appConfigService = inject(AppConfigService);
|
||||
private appExtensions = inject(AppExtensionService);
|
||||
|
||||
appName$: Observable<string>;
|
||||
logo$: Observable<string>;
|
||||
landingPage: string;
|
||||
appName$ = this.store.select(getAppName);
|
||||
logo$ = this.store.select(getLogoPath);
|
||||
landingPage = this.appConfigService.get('landingPage', '/personal-files');
|
||||
actions: Array<ContentActionRef> = [];
|
||||
|
||||
@Output()
|
||||
toggleNavBar = new EventEmitter();
|
||||
|
||||
constructor(public store: Store<AppStore>, private appConfigService: AppConfigService, private appExtensions: AppExtensionService) {
|
||||
this.appName$ = store.select(getAppName);
|
||||
this.logo$ = store.select(getLogoPath);
|
||||
this.landingPage = this.appConfigService.get('landingPage', '/personal-files');
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
this.appExtensions
|
||||
.getHeaderActions()
|
||||
@@ -72,8 +69,4 @@ export class SidenavHeaderComponent implements OnInit, OnDestroy {
|
||||
this.onDestroy$.next(true);
|
||||
this.onDestroy$.complete();
|
||||
}
|
||||
|
||||
trackByActionId(_: number, action: ContentActionRef) {
|
||||
return action.id;
|
||||
}
|
||||
}
|
||||
|
@@ -1,12 +1,7 @@
|
||||
<aca-page-layout>
|
||||
<div class="aca-page-layout-header">
|
||||
<h1 class="aca-page-title">{{ 'APP.BROWSE.TRASHCAN.TITLE' | translate }}</h1>
|
||||
|
||||
<adf-toolbar class="adf-toolbar--inline">
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions"></aca-toolbar>
|
||||
</div>
|
||||
|
||||
<div class="aca-page-layout-content">
|
||||
@@ -15,7 +10,6 @@
|
||||
#documentList
|
||||
acaDocumentList
|
||||
acaContextActions
|
||||
[display]="documentDisplayMode$ | async"
|
||||
[currentFolderId]="'-trashcan-'"
|
||||
[selectionMode]="'multiple'"
|
||||
[multiselect]="false"
|
||||
|
@@ -25,11 +25,11 @@
|
||||
import { getUserProfile } from '@alfresco/aca-shared/store';
|
||||
import { DocumentListPresetRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { Component, OnInit, ViewEncapsulation } from '@angular/core';
|
||||
import { ContextActionsDirective, PageComponent, PageLayoutComponent, PaginationDirective, ToolbarActionComponent } from '@alfresco/aca-shared';
|
||||
import { ContextActionsDirective, PageComponent, PageLayoutComponent, PaginationDirective, ToolbarComponent } from '@alfresco/aca-shared';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { DocumentListModule } from '@alfresco/adf-content-services';
|
||||
import { DataTableModule, PaginationModule, TemplateModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { DataTableModule, PaginationModule, TemplateModule } from '@alfresco/adf-core';
|
||||
import { DocumentListDirective } from '../../directives/document-list.directive';
|
||||
|
||||
@Component({
|
||||
@@ -37,7 +37,6 @@ import { DocumentListDirective } from '../../directives/document-list.directive'
|
||||
imports: [
|
||||
CommonModule,
|
||||
TranslateModule,
|
||||
ToolbarModule,
|
||||
DocumentListModule,
|
||||
TemplateModule,
|
||||
PaginationModule,
|
||||
@@ -46,8 +45,8 @@ import { DocumentListDirective } from '../../directives/document-list.directive'
|
||||
DocumentListDirective,
|
||||
ContextActionsDirective,
|
||||
PaginationDirective,
|
||||
ToolbarActionComponent,
|
||||
PageLayoutComponent
|
||||
PageLayoutComponent,
|
||||
ToolbarComponent
|
||||
],
|
||||
templateUrl: './trashcan.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
|
@@ -51,7 +51,6 @@ export const INITIAL_APP_STATE: AppState = {
|
||||
infoDrawerMetadataAspect: '',
|
||||
showFacetFilter: true,
|
||||
fileUploadingDialog: true,
|
||||
documentDisplayMode: 'list',
|
||||
showLoader: false,
|
||||
repository: {
|
||||
status: {
|
||||
|
@@ -73,9 +73,6 @@ export function appReducer(state: AppState = INITIAL_APP_STATE, action: Action):
|
||||
case AppActionTypes.SetInfoDrawerMetadataAspect:
|
||||
newState = setInfoDrawerAspect(state, action as SetInfoDrawerMetadataAspectAction);
|
||||
break;
|
||||
case AppActionTypes.ToggleDocumentDisplayMode:
|
||||
newState = toggleDocumentDisplayMode(state);
|
||||
break;
|
||||
case AppActionTypes.SetRepositoryInfo:
|
||||
newState = updateRepositoryStatus(state, action as SetRepositoryInfoAction);
|
||||
break;
|
||||
@@ -173,11 +170,6 @@ function showInfoDrawerPreview(state: AppState) {
|
||||
return newState;
|
||||
}
|
||||
|
||||
const toggleDocumentDisplayMode = (state: AppState) => ({
|
||||
...state,
|
||||
documentDisplayMode: state.documentDisplayMode === 'list' ? 'gallery' : 'list'
|
||||
});
|
||||
|
||||
function updateSelectedNodes(state: AppState, action: SetSelectedNodesAction): AppState {
|
||||
const newState = { ...state };
|
||||
const nodes = [...action.payload];
|
||||
|
@@ -2,7 +2,6 @@
|
||||
@use '@angular/material' as mat;
|
||||
@import 'mixins';
|
||||
@import 'theme';
|
||||
@import 'variables/font-family';
|
||||
|
||||
$foreground: map-get($custom-theme, foreground);
|
||||
|
||||
@@ -11,7 +10,7 @@ body {
|
||||
@include flex-column;
|
||||
|
||||
font-size: 14px;
|
||||
font-family: $default-font-family;
|
||||
font-family: 'Open Sans', serif;
|
||||
color: mat.get-color-from-palette($foreground, text, 0.87);
|
||||
margin: 0;
|
||||
|
||||
|
@@ -1,14 +0,0 @@
|
||||
/* stylelint-disable scss/no-global-function-names */
|
||||
@function get-custom-background-color($background-color, $theme) {
|
||||
$background: map-get($theme, background);
|
||||
$card: map-get($background, card);
|
||||
$new-card-color: lighten($background-color, 10%);
|
||||
$new-selected-button: lighten($background-color, 5%);
|
||||
$background: map_merge($background, (background: $background-color));
|
||||
$background: map_merge($background, (card: $new-card-color));
|
||||
$background: map_merge($background, (modal: $new-card-color));
|
||||
$background: map_merge($background, (dialog: $new-card-color));
|
||||
$background: map_merge($background, (selected-button: $new-selected-button));
|
||||
|
||||
@return $background;
|
||||
}
|
@@ -1,132 +0,0 @@
|
||||
/* stylelint-disable scss/dollar-variable-pattern */
|
||||
/* stylelint-disable scss/no-global-function-names */
|
||||
/* stylelint-disable value-keyword-case */
|
||||
@use "sass:math";
|
||||
|
||||
@function multiply($fore, $back) {
|
||||
$red: red($back) * red($fore) / 255;
|
||||
$green: green($back) * green($fore) / 255;
|
||||
$blue: blue($back) * blue($fore) / 255;
|
||||
|
||||
@return rgb($red, $green, $blue);
|
||||
}
|
||||
|
||||
@function get-color-luminance($color) {
|
||||
$colors: (
|
||||
'red': red($color),
|
||||
'green': green($color),
|
||||
'blue': blue($color)
|
||||
);
|
||||
|
||||
@each $name, $value in $colors {
|
||||
$adjusted: 0;
|
||||
$value: $value / 255;
|
||||
|
||||
@if $value < 0.0393 {
|
||||
$value: $value / 12.92;
|
||||
} @else {
|
||||
$value: ($value + .055) / 1.055;
|
||||
$value: math.pow($value, 2.4);
|
||||
}
|
||||
|
||||
$colors: map-merge($colors, ($name: $value));
|
||||
}
|
||||
|
||||
@return (map-get($colors, 'red') * .2126) + (map-get($colors, 'green') * .7152) + (map-get($colors, 'blue') * .0722);
|
||||
}
|
||||
|
||||
@function create-text-color($color, $color-type: 'primary') {
|
||||
$red: red($color);
|
||||
$green: green($color);
|
||||
$blue: blue($color);
|
||||
$light-text: $light-primary-text;
|
||||
$dark-text: $dark-primary-text;
|
||||
|
||||
@if $color-type == 'accent' {
|
||||
$light-text: $light-secondary-text;
|
||||
$dark-text: $dark-secondary-text;
|
||||
}
|
||||
|
||||
$light-text-luminance: get-color-luminance($light-text);
|
||||
$dark-text-luminance: get-color-luminance($dark-text);
|
||||
$background-color-luminance: get-color-luminance($color);
|
||||
$light-text-luminance: $light-text-luminance + 0.5;
|
||||
$dark-text-luminance: $dark-text-luminance + 0.5;
|
||||
$background-color-luminance: $background-color-luminance + 0.5;
|
||||
$luminance-contrast-for-light-text: $light-text-luminance / $background-color-luminance;
|
||||
$luminance-contrast-for-dark-text: $background-color-luminance / $dark-text-luminance;
|
||||
$text-colour: $light-text;
|
||||
|
||||
@if $luminance-contrast-for-dark-text > $luminance-contrast-for-light-text {
|
||||
$text-colour: $dark-text;
|
||||
}
|
||||
|
||||
@return $text-colour;
|
||||
}
|
||||
|
||||
@function create-color-palette($color, $color-type: 'primary') {
|
||||
$light: #fff;
|
||||
$dark: multiply($color, $color);
|
||||
$color50: mix($light, $color, 88%);
|
||||
$color100: mix($light, $color, 70%);
|
||||
$color200: mix($light, $color, 50%);
|
||||
$color300: mix($light, $color, 30%);
|
||||
$color400: mix($light, $color, 15%);
|
||||
$color500: mix($light, $color, 0%);
|
||||
$color600: mix($dark, $color, 13%);
|
||||
$color700: mix($dark, $color, 30%);
|
||||
$color800: mix($dark, $color, 46%);
|
||||
$color900: mix($dark, $color, 75%);
|
||||
$colorA100: lighten(saturate(mix($dark, $color, 15%), 80%), 45.6%);
|
||||
$colorA200: lighten(saturate(mix($dark, $color, 15%), 80%), 35.6%);
|
||||
$colorA400: lighten(saturate(mix($dark, $color, 15%), 100%), 25.6%);
|
||||
$colorA700: lighten(saturate(mix($dark, $color, 15%), 100%), 20.5%);
|
||||
$contrast50: create-text-color($color50, $color-type);
|
||||
$contrast100: create-text-color($color100, $color-type);
|
||||
$contrast200: create-text-color($color200, $color-type);
|
||||
$contrast300: create-text-color($color300, $color-type);
|
||||
$contrast400: create-text-color($color400, $color-type);
|
||||
$contrast500: create-text-color($color500, $color-type);
|
||||
$contrast600: create-text-color($color600, $color-type);
|
||||
$contrast700: create-text-color($color700, $color-type);
|
||||
$contrast800: create-text-color($color800, $color-type);
|
||||
$contrast900: create-text-color($color900, $color-type);
|
||||
$contrastA100: create-text-color($colorA100, $color-type);
|
||||
$contrastA200: create-text-color($colorA200, $color-type);
|
||||
$contrastA400: create-text-color($colorA400, $color-type);
|
||||
$contrastA700: create-text-color($colorA700, $color-type);
|
||||
$palette: (
|
||||
50: $color50,
|
||||
100: $color50,
|
||||
200: $color50,
|
||||
300: $color50,
|
||||
400: $color400,
|
||||
500: $color500,
|
||||
600: $color600,
|
||||
700: $color700,
|
||||
800: $color800,
|
||||
900: $color900,
|
||||
A100: $colorA100,
|
||||
A200: $colorA200,
|
||||
A400: $colorA400,
|
||||
A700: $colorA700,
|
||||
contrast: (
|
||||
50: $contrast50,
|
||||
100: $contrast100,
|
||||
200: $contrast200,
|
||||
300: $contrast300,
|
||||
400: $contrast400,
|
||||
500: $contrast500,
|
||||
600: $contrast600,
|
||||
700: $contrast700,
|
||||
800: $contrast800,
|
||||
900: $contrast900,
|
||||
A100: $contrastA100,
|
||||
A200: $contrastA200,
|
||||
A400: $contrastA400,
|
||||
A700: $contrastA700
|
||||
)
|
||||
);
|
||||
|
||||
@return $palette;
|
||||
}
|
@@ -1,8 +0,0 @@
|
||||
/* stylelint-disable scss/no-global-function-names */
|
||||
@function get-custom-text-color($text-color, $theme) {
|
||||
$foreground: map-get($custom-theme, foreground);
|
||||
$foreground: map_merge($foreground, (text: $text-color));
|
||||
$foreground: map_merge($foreground, (secondary-text: $text-color));
|
||||
|
||||
@return $foreground;
|
||||
}
|
@@ -1,33 +0,0 @@
|
||||
/* stylelint-disable value-keyword-case */
|
||||
|
||||
@use '@angular/material' as mat;
|
||||
@import '../colors';
|
||||
@import './custom-palette-creator';
|
||||
|
||||
@function get-mat-palettes($primary-color, $accent-color) {
|
||||
$mat-primary-palette: null;
|
||||
|
||||
@if $primary-color {
|
||||
$custom-theme-primary-palette: create-color-palette($primary-color, 'primary');
|
||||
$mat-primary-palette: mat.define-palette($custom-theme-primary-palette, 500);
|
||||
} @else {
|
||||
$mat-primary-palette: mat.define-palette($aca-primary-blue, A100);
|
||||
}
|
||||
|
||||
$mat-accent-palette: null;
|
||||
|
||||
@if $accent-color {
|
||||
$custom-theme-accent-palette: create-color-palette($accent-color, 'accent');
|
||||
$mat-accent-palette: mat.define-palette($custom-theme-accent-palette, 500);
|
||||
} @else {
|
||||
$mat-accent-palette: mat.define-palette($aca-accent-green, A200);
|
||||
}
|
||||
|
||||
$mat-warn-palette: mat.define-palette($aca-warn, A100);
|
||||
|
||||
@return (
|
||||
primary: $mat-primary-palette,
|
||||
accent: $mat-accent-palette,
|
||||
warning: $mat-warn-palette,
|
||||
)
|
||||
}
|
@@ -1,72 +0,0 @@
|
||||
@import '@angular/material/theming';
|
||||
@import './overrides/adf-style-fixes.theme';
|
||||
@import './overrides/adf-pagination.theme';
|
||||
@import './overrides/adf-about.theme.scss';
|
||||
@import "./dynamic-theme/theme-configuration";
|
||||
@import "./dynamic-theme/typography";
|
||||
@import "./dynamic-theme/custom-theme-palettes";
|
||||
@import "./dynamic-theme/custom-background-color";
|
||||
@import "./dynamic-theme/custom-text-color";
|
||||
|
||||
$primary-color: map-get($theme-config, 'primaryColor');
|
||||
$accent-color: map-get($theme-config, 'accentColor');
|
||||
$background-color: map-get($theme-config, 'backgroundColor');
|
||||
$text-color: map-get($theme-config, 'textColor');
|
||||
$base-font-size: map-get($theme-config, 'baseFontSize');
|
||||
$font-family: map-get($theme-config, 'fontFamily');
|
||||
|
||||
$app-typography: get-mat-typography(
|
||||
$base-font-size,
|
||||
$font-family
|
||||
);
|
||||
|
||||
@include mat-core();
|
||||
|
||||
$palettes: get-mat-palettes($primary-color, $accent-color);
|
||||
$custom-theme: mat-light-theme(
|
||||
(
|
||||
color: (
|
||||
primary: map-get($palettes, primary),
|
||||
accent: map-get($palettes, accent),
|
||||
warn: map-get($palettes, warning)
|
||||
),
|
||||
typography: $app-typography
|
||||
)
|
||||
);
|
||||
|
||||
@if $background-color {
|
||||
$custom-background: get-custom-background-color($background-color, $custom-theme);
|
||||
$custom-theme: map_merge($custom-theme, (background: $custom-background));
|
||||
|
||||
$color: map_get($custom-theme, color);
|
||||
$new-color: map_merge($color, (background: $custom-background));
|
||||
$custom-theme: map_merge($custom-theme, (color: $new-color));
|
||||
}
|
||||
|
||||
@if $text-color {
|
||||
$custom-foreground: get-custom-text-color($text-color, $custom-theme);
|
||||
$custom-theme: map_merge($custom-theme, (foreground: $custom-foreground));
|
||||
|
||||
$color: map_get($custom-theme, color);
|
||||
$new-color: map_merge($color, (foreground: $custom-foreground));
|
||||
$custom-theme: map_merge($custom-theme, (color: $new-color));
|
||||
}
|
||||
|
||||
@mixin custom-theme($theme) {
|
||||
@include angular-material-theme($theme);
|
||||
|
||||
@if $base-font-size {
|
||||
@include adf-core-theme($theme, get-custom-adf-font-sizes());
|
||||
@include base-font-size($base-font-size);
|
||||
} @else {
|
||||
@include adf-core-theme($theme);
|
||||
}
|
||||
|
||||
@if $font-family {
|
||||
@include base-font-family($font-family);
|
||||
}
|
||||
|
||||
@include adf-style-fixes($theme);
|
||||
@include adf-pagination-theme($theme);
|
||||
@include adf-about-theme($theme);
|
||||
}
|
@@ -1 +0,0 @@
|
||||
@import '../theme';
|
@@ -1,14 +0,0 @@
|
||||
/*
|
||||
Specify theme parameters e.g.:
|
||||
|
||||
$theme-config: (
|
||||
primaryColor: #5175d2,
|
||||
backgroundColor: #FAFAFA,
|
||||
textColor: #793942,
|
||||
accentColor: #C64F73,
|
||||
baseFontSize: 26px,
|
||||
fontFamily: Cursive
|
||||
);
|
||||
*/
|
||||
|
||||
${THEME_CONFIGURATION}
|
@@ -1,94 +0,0 @@
|
||||
/* stylelint-disable scss/no-global-function-names */
|
||||
@use '@angular/material' as mat;
|
||||
@import '../variables/font-family';
|
||||
|
||||
@function get-mat-typography($base-font-size, $font-family) {
|
||||
$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),
|
||||
// Line-height must be unit-less fraction of the font-size.
|
||||
$input: mat.define-typography-level(16px, 1.25, 400)
|
||||
);
|
||||
|
||||
@if $base-font-size {
|
||||
$custom-typography: mat.define-typography-config(
|
||||
$display-4: mat.define-typography-level(8rem, 8rem, 300),
|
||||
$display-3: mat.define-typography-level(4rem, 4rem, 400),
|
||||
$display-2: mat.define-typography-level(3.21rem, 3.21rem, 400),
|
||||
$display-1: mat.define-typography-level(2.42rem, 2.85rem, 400),
|
||||
$headline: mat.define-typography-level(1.71rem, 2.28rem, 400),
|
||||
$title: mat.define-typography-level(1.42rem, 2.28rem, 500),
|
||||
$subheading-2: mat.define-typography-level(1.14rem, 2rem, 400),
|
||||
$subheading-1: mat.define-typography-level(1.07rem, 1.71rem, 400),
|
||||
$body-2: mat.define-typography-level(1rem, 1.71rem, 500),
|
||||
$body-1: mat.define-typography-level(1rem, 1.42rem, 400),
|
||||
$caption: mat.define-typography-level(0.86rem, 1.42rem, 400),
|
||||
$button: mat.define-typography-level(1rem, 1rem, 500),
|
||||
$font-family: $default-font-family,
|
||||
$input: mat.define-typography-level(1.14em, 1.25, 400)
|
||||
);
|
||||
}
|
||||
|
||||
@if $font-family {
|
||||
@each $key, $level in $custom-typography {
|
||||
@if type-of($level) == 'map' {
|
||||
$new-level: map-merge(
|
||||
$level,
|
||||
(
|
||||
font-family: $font-family
|
||||
)
|
||||
);
|
||||
$custom-typography: map-merge(
|
||||
$custom-typography,
|
||||
(
|
||||
$key: $new-level
|
||||
)
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
$custom-typography: map-merge(
|
||||
$custom-typography,
|
||||
(
|
||||
font-family: $font-family
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
@return $custom-typography;
|
||||
}
|
||||
|
||||
@function get-custom-adf-font-sizes() {
|
||||
@return (
|
||||
'theme-adf-icon-1-font-size': 1.2rem,
|
||||
'theme-adf-picture-1-font-size': 1.28rem,
|
||||
'theme-adf-task-footer-font-size': 1.28rem,
|
||||
'theme-adf-task-title-font-size': 1.28rem,
|
||||
'theme-adf-spacing': 16px
|
||||
);
|
||||
}
|
||||
|
||||
@mixin base-font-size($font-size) {
|
||||
html,
|
||||
body {
|
||||
font-size: $font-size;
|
||||
}
|
||||
}
|
||||
|
||||
@mixin base-font-family($font-family) {
|
||||
html,
|
||||
body {
|
||||
font-family: $font-family;
|
||||
}
|
||||
}
|
@@ -1 +0,0 @@
|
||||
$default-font-family: "Open Sans";
|
@@ -30,9 +30,7 @@
|
||||
</adf-viewer-open-with>
|
||||
|
||||
<adf-viewer-toolbar-actions>
|
||||
<ng-container *ngFor="let action of toolbarActions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="action"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
<aca-toolbar [items]="toolbarActions"></aca-toolbar>
|
||||
</adf-viewer-toolbar-actions>
|
||||
</adf-alfresco-viewer>
|
||||
</ng-container>
|
||||
|
@@ -27,7 +27,7 @@ import {
|
||||
AppHookService,
|
||||
ContentApiService,
|
||||
InfoDrawerComponent,
|
||||
ToolbarActionComponent,
|
||||
ToolbarComponent,
|
||||
ToolbarMenuItemComponent
|
||||
} from '@alfresco/aca-shared';
|
||||
import {
|
||||
@@ -56,7 +56,7 @@ import { CommonModule } from '@angular/common';
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, InfoDrawerComponent, AppConfigModule, ToolbarMenuItemComponent, ToolbarActionComponent],
|
||||
imports: [CommonModule, ViewerModule, AlfrescoViewerModule, InfoDrawerComponent, AppConfigModule, ToolbarMenuItemComponent, ToolbarComponent],
|
||||
selector: 'aca-viewer',
|
||||
templateUrl: './viewer.component.html',
|
||||
styleUrls: ['./viewer.component.scss'],
|
||||
|
@@ -25,7 +25,7 @@
|
||||
import { BaseComponent } from './base.component';
|
||||
import { Page } from '@playwright/test';
|
||||
export class AcaHeader extends BaseComponent {
|
||||
private static rootElement = 'adf-toolbar';
|
||||
private static rootElement = 'aca-toolbar';
|
||||
private moreActionsButton = this.getChild('button[id="app.viewer.toolbar.more"]');
|
||||
public createButton = this.getChild('[id="app.toolbar.create"]');
|
||||
public viewDetails = this.getChild('[title="View Details"]');
|
||||
|
@@ -36,7 +36,6 @@ import {
|
||||
ReloadDocumentListAction,
|
||||
getCurrentFolder,
|
||||
getAppSelection,
|
||||
getDocumentDisplayMode,
|
||||
isInfoDrawerOpened,
|
||||
getSharedUrl,
|
||||
ViewNodeAction,
|
||||
@@ -61,7 +60,6 @@ export abstract class PageComponent implements OnInit, OnDestroy, OnChanges {
|
||||
infoDrawerOpened$: Observable<boolean>;
|
||||
node: MinimalNodeEntryEntity;
|
||||
selection: SelectionState;
|
||||
documentDisplayMode$: Observable<string>;
|
||||
sharedPreviewUrl$: Observable<string>;
|
||||
actions: Array<ContentActionRef> = [];
|
||||
viewerToolbarActions: Array<ContentActionRef> = [];
|
||||
@@ -94,8 +92,6 @@ export abstract class PageComponent implements OnInit, OnDestroy, OnChanges {
|
||||
this.sharedPreviewUrl$ = this.store.select(getSharedUrl);
|
||||
this.infoDrawerOpened$ = this.store.select(isInfoDrawerOpened).pipe(map((infoDrawerState) => !this.isOutletPreviewUrl() && infoDrawerState));
|
||||
|
||||
this.documentDisplayMode$ = this.store.select(getDocumentDisplayMode);
|
||||
|
||||
this.store
|
||||
.select(getAppSelection)
|
||||
.pipe(takeUntil(this.onDestroy$))
|
||||
|
@@ -66,7 +66,6 @@ export const INITIAL_APP_STATE: AppState = {
|
||||
infoDrawerMetadataAspect: '',
|
||||
showFacetFilter: true,
|
||||
fileUploadingDialog: true,
|
||||
documentDisplayMode: 'list',
|
||||
showLoader: false,
|
||||
repository: {
|
||||
status: {
|
||||
|
@@ -3,11 +3,7 @@
|
||||
</div>
|
||||
<ng-container *ngIf="!isLoading && !!displayNode">
|
||||
<adf-info-drawer [title]="'APP.INFO_DRAWER.TITLE'" cdkTrapFocus cdkTrapFocusAutoCapture>
|
||||
<adf-toolbar class="adf-toolbar--inline" info-drawer-buttons>
|
||||
<ng-container *ngFor="let entry of actions; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="entry" [color]="getEntryColor(entry)"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</adf-toolbar>
|
||||
<aca-toolbar [items]="actions" info-drawer-buttons></aca-toolbar>
|
||||
|
||||
<adf-info-drawer-tab *ngFor="let tab of tabs" [icon]="tab.icon" [label]="tab.title">
|
||||
<adf-dynamic-tab [node]="$any(displayNode)" [id]="tab.component" [attr.data-automation-id]="tab.component"> </adf-dynamic-tab>
|
||||
|
@@ -31,26 +31,16 @@ import { AppExtensionService } from '../../services/app.extension.service';
|
||||
import { ContentApiService } from '../../services/content-api.service';
|
||||
import { takeUntil } from 'rxjs/operators';
|
||||
import { Subject } from 'rxjs';
|
||||
import { ThemePalette } from '@angular/material/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { MatProgressBarModule } from '@angular/material/progress-bar';
|
||||
import { InfoDrawerModule, ToolbarModule } from '@alfresco/adf-core';
|
||||
import { InfoDrawerModule } from '@alfresco/adf-core';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { A11yModule } from '@angular/cdk/a11y';
|
||||
import { ToolbarActionComponent } from '../tool-bar/toolbar-action/toolbar-action.component';
|
||||
import { ToolbarComponent } from '../toolbar/toolbar.component';
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [
|
||||
CommonModule,
|
||||
TranslateModule,
|
||||
MatProgressBarModule,
|
||||
InfoDrawerModule,
|
||||
ExtensionsModule,
|
||||
ToolbarModule,
|
||||
A11yModule,
|
||||
ToolbarActionComponent
|
||||
],
|
||||
imports: [CommonModule, TranslateModule, MatProgressBarModule, InfoDrawerModule, ExtensionsModule, A11yModule, ToolbarComponent],
|
||||
selector: 'aca-info-drawer',
|
||||
templateUrl: './info-drawer.component.html',
|
||||
encapsulation: ViewEncapsulation.None
|
||||
@@ -114,14 +104,6 @@ export class InfoDrawerComponent implements OnChanges, OnInit, OnDestroy {
|
||||
}
|
||||
}
|
||||
|
||||
trackByActionId(_: number, action: ContentActionRef) {
|
||||
return action.id;
|
||||
}
|
||||
|
||||
getEntryColor(entry: any): ThemePalette {
|
||||
return entry?.color;
|
||||
}
|
||||
|
||||
private close() {
|
||||
this.store.dispatch(new ToggleInfoDrawerAction());
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@
|
||||
<app-toolbar-button [type]="data?.buttonType || type" [actionRef]="actionRef" [color]="color" [data]="actionRef.data"> </app-toolbar-button>
|
||||
</ng-container>
|
||||
|
||||
<adf-toolbar-divider *ngSwitchCase="'separator'" [id]="actionRef.id"></adf-toolbar-divider>
|
||||
<div *ngSwitchCase="'separator'" [id]="actionRef.id" class="aca-toolbar-divider"></div>
|
||||
|
||||
<ng-container *ngSwitchCase="'menu'">
|
||||
<app-toolbar-menu [actionRef]="actionRef" [color]="color" [data]="actionRef.data"></app-toolbar-menu>
|
@@ -27,12 +27,11 @@ import { ContentActionRef, ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { ToolbarButtonComponent, ToolbarButtonType } from '../toolbar-button/toolbar-button.component';
|
||||
import { ThemePalette } from '@angular/material/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { ToolbarModule } from '@alfresco/adf-core';
|
||||
import { ToolbarMenuComponent } from '../toolbar-menu/toolbar-menu.component';
|
||||
|
||||
@Component({
|
||||
standalone: true,
|
||||
imports: [CommonModule, ExtensionsModule, ToolbarModule, ToolbarButtonComponent, ToolbarMenuComponent],
|
||||
imports: [CommonModule, ExtensionsModule, ToolbarButtonComponent, ToolbarMenuComponent],
|
||||
selector: 'aca-toolbar-action',
|
||||
templateUrl: './toolbar-action.component.html',
|
||||
styleUrls: ['./toolbar-action.component.scss'],
|
@@ -0,0 +1,5 @@
|
||||
<mat-toolbar>
|
||||
<ng-container *ngFor="let item of items; trackBy: trackByActionId">
|
||||
<aca-toolbar-action [actionRef]="item"></aca-toolbar-action>
|
||||
</ng-container>
|
||||
</mat-toolbar>
|
@@ -0,0 +1,27 @@
|
||||
aca-toolbar {
|
||||
.mat-toolbar {
|
||||
min-height: 48px;
|
||||
color: var(--adf-theme-foreground-text-color-054);
|
||||
background-color: inherit;
|
||||
border: none;
|
||||
padding: 0;
|
||||
}
|
||||
|
||||
.mat-toolbar-row {
|
||||
height: 48px;
|
||||
font-size: var(--theme-body-1-font-size);
|
||||
white-space: normal;
|
||||
}
|
||||
|
||||
.mat-toolbar-single-row {
|
||||
height: 64px;
|
||||
}
|
||||
|
||||
.aca-toolbar-divider {
|
||||
height: 24px;
|
||||
width: 1px;
|
||||
background: var(--adf-theme-foreground-text-color-025);
|
||||
margin-left: 5px;
|
||||
margin-right: 5px;
|
||||
}
|
||||
}
|
@@ -0,0 +1,45 @@
|
||||
/*!
|
||||
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
|
||||
*
|
||||
* Alfresco Example Content Application
|
||||
*
|
||||
* This file is part of the Alfresco Example Content Application.
|
||||
* If the software was purchased under a paid Alfresco license, the terms of
|
||||
* the paid license agreement will prevail. Otherwise, the software is
|
||||
* provided under the following open source license terms:
|
||||
*
|
||||
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU Lesser General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public License
|
||||
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
import { Component, Input, ViewEncapsulation } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { ContentActionRef } from '@alfresco/adf-extensions';
|
||||
import { ToolbarActionComponent } from './toolbar-action/toolbar-action.component';
|
||||
import { MatToolbarModule } from '@angular/material/toolbar';
|
||||
|
||||
@Component({
|
||||
selector: 'aca-toolbar',
|
||||
standalone: true,
|
||||
imports: [CommonModule, ToolbarActionComponent, MatToolbarModule],
|
||||
templateUrl: './toolbar.component.html',
|
||||
styleUrls: ['./toolbar.component.scss'],
|
||||
encapsulation: ViewEncapsulation.None
|
||||
})
|
||||
export class ToolbarComponent {
|
||||
@Input() items: ContentActionRef[];
|
||||
|
||||
trackByActionId(_: number, action: ContentActionRef) {
|
||||
return action.id;
|
||||
}
|
||||
}
|
@@ -26,10 +26,10 @@ import { NgModule } from '@angular/core';
|
||||
import { CommonModule } from '@angular/common';
|
||||
import { CoreModule } from '@alfresco/adf-core';
|
||||
import { ExtensionsModule } from '@alfresco/adf-extensions';
|
||||
import { ToolbarButtonComponent } from '../components/tool-bar/toolbar-button/toolbar-button.component';
|
||||
import { ToolbarActionComponent } from '../components/tool-bar/toolbar-action/toolbar-action.component';
|
||||
import { ToolbarMenuItemComponent } from '../components/tool-bar/toolbar-menu-item/toolbar-menu-item.component';
|
||||
import { ToolbarMenuComponent } from '../components/tool-bar/toolbar-menu/toolbar-menu.component';
|
||||
import { ToolbarButtonComponent } from '../components/toolbar/toolbar-button/toolbar-button.component';
|
||||
import { ToolbarActionComponent } from '../components/toolbar/toolbar-action/toolbar-action.component';
|
||||
import { ToolbarMenuItemComponent } from '../components/toolbar/toolbar-menu-item/toolbar-menu-item.component';
|
||||
import { ToolbarMenuComponent } from '../components/toolbar/toolbar-menu/toolbar-menu.component';
|
||||
|
||||
// @deprecated
|
||||
@NgModule({
|
||||
|
@@ -64,7 +64,6 @@ export const initialState = {
|
||||
infoDrawerOpened: false,
|
||||
infoDrawerMetadataAspect: '',
|
||||
showFacetFilter: true,
|
||||
documentDisplayMode: 'list',
|
||||
repository: {
|
||||
status: {
|
||||
isQuickShareEnabled: true
|
||||
|
@@ -30,10 +30,11 @@ export * from './lib/components/page-layout/page-layout.component';
|
||||
export * from './lib/components/page-layout/page-layout.module';
|
||||
export * from './lib/components/locked-by/locked-by.component';
|
||||
export * from './lib/components/generic-error/generic-error.component';
|
||||
export * from './lib/components/tool-bar/toolbar-action/toolbar-action.component';
|
||||
export * from './lib/components/tool-bar/toolbar-button/toolbar-button.component';
|
||||
export * from './lib/components/tool-bar/toolbar-menu/toolbar-menu.component';
|
||||
export * from './lib/components/tool-bar/toolbar-menu-item/toolbar-menu-item.component';
|
||||
export * from './lib/components/toolbar/toolbar.component';
|
||||
export * from './lib/components/toolbar/toolbar-action/toolbar-action.component';
|
||||
export * from './lib/components/toolbar/toolbar-button/toolbar-button.component';
|
||||
export * from './lib/components/toolbar/toolbar-menu/toolbar-menu.component';
|
||||
export * from './lib/components/toolbar/toolbar-menu-item/toolbar-menu-item.component';
|
||||
export * from './lib/components/info-drawer/info-drawer.component';
|
||||
export * from './lib/components/document-base-page/document-base-page.component';
|
||||
export * from './lib/components/document-base-page/document-base-page.service';
|
||||
|
@@ -23,7 +23,6 @@
|
||||
*/
|
||||
|
||||
export enum AppActionTypes {
|
||||
SetSettingsParameter = 'SET_SETTINGS_PARAMETER',
|
||||
SetInitialState = 'SET_INITIAL_STATE',
|
||||
SetCurrentFolder = 'SET_CURRENT_FOLDER',
|
||||
SetCurrentVersion = 'SET_CURRENT_VERSION',
|
||||
@@ -31,7 +30,6 @@ export enum AppActionTypes {
|
||||
SetUserProfile = 'SET_USER_PROFILE',
|
||||
SetRepositoryInfo = 'SET_REPOSITORY_INFO',
|
||||
ToggleInfoDrawer = 'TOGGLE_INFO_DRAWER',
|
||||
ToggleDocumentDisplayMode = 'TOGGLE_DOCUMENT_DISPLAY_MODE',
|
||||
Logout = 'LOGOUT',
|
||||
ReloadDocumentList = 'RELOAD_DOCUMENT_LIST',
|
||||
ResetSelection = 'RESET_SELECTION',
|
||||
|
@@ -27,12 +27,6 @@ import { Node, Person, Group, RepositoryInfo, VersionEntry } from '@alfresco/js-
|
||||
import { AppState } from '../states/app.state';
|
||||
import { AppActionTypes } from './app-action-types';
|
||||
|
||||
export class SetSettingsParameterAction implements Action {
|
||||
readonly type = AppActionTypes.SetSettingsParameter;
|
||||
|
||||
constructor(public payload: { name: string; value: any }) {}
|
||||
}
|
||||
|
||||
export class SetInitialStateAction implements Action {
|
||||
readonly type = AppActionTypes.SetInitialState;
|
||||
|
||||
@@ -67,10 +61,6 @@ export class ToggleInfoDrawerAction implements Action {
|
||||
readonly type = AppActionTypes.ToggleInfoDrawer;
|
||||
}
|
||||
|
||||
export class ToggleDocumentDisplayMode implements Action {
|
||||
readonly type = AppActionTypes.ToggleDocumentDisplayMode;
|
||||
}
|
||||
|
||||
export class LogoutAction implements Action {
|
||||
readonly type = AppActionTypes.Logout;
|
||||
}
|
||||
|
@@ -40,7 +40,6 @@ export const getNavigationState = createSelector(selectApp, (state) => state.nav
|
||||
export const isInfoDrawerOpened = createSelector(selectApp, (state) => state.infoDrawerOpened);
|
||||
export const infoDrawerPreview = createSelector(selectApp, (state) => state.infoDrawerPreview);
|
||||
export const showFacetFilter = createSelector(selectApp, (state) => state.showFacetFilter);
|
||||
export const getDocumentDisplayMode = createSelector(selectApp, (state) => state.documentDisplayMode);
|
||||
export const getRepositoryStatus = createSelector(selectApp, (state) => state.repository);
|
||||
export const isQuickShareEnabled = createSelector(getRepositoryStatus, (info) => info.status.isQuickShareEnabled);
|
||||
export const isAdmin = createSelector(selectApp, (state) => state.user.isAdmin);
|
||||
|
@@ -42,7 +42,6 @@ export interface AppState {
|
||||
infoDrawerPreview: boolean;
|
||||
infoDrawerMetadataAspect: string;
|
||||
showFacetFilter: boolean;
|
||||
documentDisplayMode: string;
|
||||
repository: RepositoryInfo;
|
||||
fileUploadingDialog: boolean;
|
||||
showLoader: boolean;
|
||||
|
@@ -29,6 +29,7 @@ import { CommentsTab } from './info-drawer-comments-tab';
|
||||
import { LibraryMetadata } from './info-drawer-metadata-library';
|
||||
import { ContentMetadata } from './info-drawer-metadata-content';
|
||||
import { waitForPresence } from '../../utilities/utils';
|
||||
import { Toolbar } from '../toolbar/toolbar';
|
||||
|
||||
export class InfoDrawer extends Component {
|
||||
commentsTab = new CommentsTab('adf-info-drawer');
|
||||
@@ -43,6 +44,7 @@ export class InfoDrawer extends Component {
|
||||
selectedTab = TestElement.byCss(`.mat-tab-list [aria-selected='true'] div`);
|
||||
expandedDetailsPermissionsTab = TestElement.byText('.acs-details-container .mat-tab-label-content', 'Permissions');
|
||||
previewButton = TestElement.byCss(`button[title='Preview File']`);
|
||||
toolbar = new Toolbar('adf-info-drawer');
|
||||
|
||||
constructor(ancestor?: string) {
|
||||
super('adf-info-drawer', ancestor);
|
||||
@@ -113,9 +115,7 @@ export class InfoDrawer extends Component {
|
||||
try {
|
||||
await BrowserActions.click(this.getTabByTitle('Comments'));
|
||||
await this.commentsTab.waitForCommentsContainer();
|
||||
await Promise.all([
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentsTab.component),
|
||||
]);
|
||||
await Promise.all([BrowserVisibility.waitUntilElementIsVisible(this.commentsTab.component)]);
|
||||
} catch (error) {
|
||||
Logger.error('--- info-drawer clickCommentsTab catch error: ', error);
|
||||
}
|
||||
|
@@ -48,7 +48,7 @@ export class Toolbar extends Component {
|
||||
viewerDownloadButton = element(By.css('[id="app.viewer.download"]'));
|
||||
|
||||
constructor(ancestor?: string) {
|
||||
super('.adf-toolbar', ancestor);
|
||||
super('aca-toolbar', ancestor);
|
||||
}
|
||||
|
||||
async isEmpty(): Promise<boolean> {
|
||||
@@ -118,11 +118,6 @@ export class Toolbar extends Component {
|
||||
await BrowserActions.click(this.menu.createFolderAction);
|
||||
}
|
||||
|
||||
async openCreateLibraryDialog(): Promise<void> {
|
||||
await this.openCreateMenu();
|
||||
await BrowserActions.click(this.menu.createLibraryAction);
|
||||
}
|
||||
|
||||
async openCreateFileFromTemplateDialog(): Promise<void> {
|
||||
await this.openCreateMenu();
|
||||
await BrowserActions.click(this.menu.createFileFromTemplateAction);
|
||||
|
@@ -29,7 +29,7 @@ import { Page } from './page';
|
||||
export class BrowsingPage extends Page {
|
||||
header = new Header(this.appRoot);
|
||||
sidenav = new Sidenav(this.appRoot);
|
||||
toolbar = new Toolbar(this.appRoot);
|
||||
toolbar = new Toolbar('.aca-page-layout');
|
||||
breadcrumb = new Breadcrumb(this.appRoot);
|
||||
pageLayoutHeader = new PageLayoutHeader(this.appRoot);
|
||||
dataTable = new DataTable(this.appRoot);
|
||||
|
Reference in New Issue
Block a user