@alfresco/aca-playwright-shared 5.1.1-10706961491
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/api/api-client-factory.d.ts +63 -0
- package/api/categories-api.d.ts +32 -0
- package/api/favorites-api.d.ts +41 -0
- package/api/file-actions.d.ts +41 -0
- package/api/index.d.ts +37 -0
- package/api/node-content-tree.d.ts +32 -0
- package/api/nodes-api.d.ts +73 -0
- package/api/people-api-models.d.ts +42 -0
- package/api/queries-api.d.ts +32 -0
- package/api/rules-api.d.ts +79 -0
- package/api/search-api.d.ts +33 -0
- package/api/shared-links-api.d.ts +36 -0
- package/api/sites-api.d.ts +44 -0
- package/api/tags-api.d.ts +32 -0
- package/api/trashcan-api.d.ts +31 -0
- package/base-config/global-variables.d.ts +34 -0
- package/base-config/global.setup.d.ts +27 -0
- package/base-config/index.d.ts +26 -0
- package/base-config/playwright.config.d.ts +25 -0
- package/base-config/report-portal.config.d.ts +40 -0
- package/esm2020/alfresco-aca-playwright-shared.mjs +5 -0
- package/esm2020/api/api-client-factory.mjs +111 -0
- package/esm2020/api/categories-api.mjs +65 -0
- package/esm2020/api/favorites-api.mjs +129 -0
- package/esm2020/api/file-actions.mjs +166 -0
- package/esm2020/api/index.mjs +38 -0
- package/esm2020/api/node-content-tree.mjs +67 -0
- package/esm2020/api/nodes-api.mjs +427 -0
- package/esm2020/api/people-api-models.mjs +34 -0
- package/esm2020/api/queries-api.mjs +69 -0
- package/esm2020/api/rules-api.mjs +251 -0
- package/esm2020/api/search-api.mjs +74 -0
- package/esm2020/api/shared-links-api.mjs +136 -0
- package/esm2020/api/sites-api.mjs +155 -0
- package/esm2020/api/tags-api.mjs +61 -0
- package/esm2020/api/trashcan-api.mjs +54 -0
- package/esm2020/base-config/global-variables.mjs +36 -0
- package/esm2020/base-config/global.setup.mjs +66 -0
- package/esm2020/base-config/index.mjs +27 -0
- package/esm2020/base-config/playwright.config.mjs +78 -0
- package/esm2020/base-config/report-portal.config.mjs +48 -0
- package/esm2020/fixtures/index.mjs +25 -0
- package/esm2020/fixtures/page-initialization.mjs +83 -0
- package/esm2020/models/custom-config.mjs +25 -0
- package/esm2020/models/index.mjs +26 -0
- package/esm2020/models/user-model.mjs +55 -0
- package/esm2020/page-objects/components/aca-header.component.mjs +77 -0
- package/esm2020/page-objects/components/actions-dropdown.component.mjs +99 -0
- package/esm2020/page-objects/components/adf-info-drawer.component.mjs +83 -0
- package/esm2020/page-objects/components/base.component.mjs +69 -0
- package/esm2020/page-objects/components/breadcrumb/breadcrumb.component.mjs +46 -0
- package/esm2020/page-objects/components/conditions.component.mjs +75 -0
- package/esm2020/page-objects/components/dataTable/data-table.component.mjs +327 -0
- package/esm2020/page-objects/components/dataTable/index.mjs +27 -0
- package/esm2020/page-objects/components/dataTable/mat-menu.component.mjs +66 -0
- package/esm2020/page-objects/components/dataTable/toolbar.component.mjs +39 -0
- package/esm2020/page-objects/components/datetime-picker/datetime-picker.component.mjs +52 -0
- package/esm2020/page-objects/components/dialogs/adf-confirm-dialog.component.mjs +35 -0
- package/esm2020/page-objects/components/dialogs/adf-folder-dialog.component.mjs +56 -0
- package/esm2020/page-objects/components/dialogs/adf-library-dialog.component.mjs +63 -0
- package/esm2020/page-objects/components/dialogs/content-node-selector-dialog.mjs +67 -0
- package/esm2020/page-objects/components/dialogs/create-from-template-dialog-component.mjs +54 -0
- package/esm2020/page-objects/components/dialogs/delete-trash-dialog.component.mjs +53 -0
- package/esm2020/page-objects/components/dialogs/edit-dialog.component.mjs +38 -0
- package/esm2020/page-objects/components/dialogs/index.mjs +39 -0
- package/esm2020/page-objects/components/dialogs/link-rules.component.mjs +57 -0
- package/esm2020/page-objects/components/dialogs/manage-versions-dialog.component.mjs +35 -0
- package/esm2020/page-objects/components/dialogs/password-overlay-dialog.component.mjs +70 -0
- package/esm2020/page-objects/components/dialogs/share-dialog.component.mjs +84 -0
- package/esm2020/page-objects/components/dialogs/upload-dialog.component.mjs +35 -0
- package/esm2020/page-objects/components/dialogs/upload-new-version-dialog.component.mjs +37 -0
- package/esm2020/page-objects/components/dialogs/viewer-overlay-dialog.component.mjs +55 -0
- package/esm2020/page-objects/components/error.component.mjs +33 -0
- package/esm2020/page-objects/components/index.mjs +50 -0
- package/esm2020/page-objects/components/manageRules/index.mjs +26 -0
- package/esm2020/page-objects/components/manageRules/manage-rules-dialog.component.mjs +63 -0
- package/esm2020/page-objects/components/manageRules/manage-rules.component.mjs +69 -0
- package/esm2020/page-objects/components/pagination.component.mjs +173 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-categories.component.mjs +32 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-date.component.mjs +114 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-location.component.mjs +39 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-logic.component.mjs +35 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-properties.component.mjs +82 -0
- package/esm2020/page-objects/components/search/search-filters/search-filters-tags.component.mjs +39 -0
- package/esm2020/page-objects/components/search/search-filters.component.mjs +44 -0
- package/esm2020/page-objects/components/search/search-input.component.mjs +47 -0
- package/esm2020/page-objects/components/search/search-overlay.components.mjs +82 -0
- package/esm2020/page-objects/components/search/search-sorting-picker.components.mjs +71 -0
- package/esm2020/page-objects/components/sidenav.component.mjs +86 -0
- package/esm2020/page-objects/components/snackBar/snack-bar.component.mjs +53 -0
- package/esm2020/page-objects/components/spinner.component.mjs +40 -0
- package/esm2020/page-objects/components/viewer.component.mjs +92 -0
- package/esm2020/page-objects/index.mjs +26 -0
- package/esm2020/page-objects/pages/base.page.mjs +80 -0
- package/esm2020/page-objects/pages/favorites-libraries.page.mjs +42 -0
- package/esm2020/page-objects/pages/favorites.page.mjs +48 -0
- package/esm2020/page-objects/pages/index.mjs +35 -0
- package/esm2020/page-objects/pages/login.page.mjs +61 -0
- package/esm2020/page-objects/pages/my-libraries.page.mjs +53 -0
- package/esm2020/page-objects/pages/nodes.page.mjs +39 -0
- package/esm2020/page-objects/pages/personal-files.page.mjs +84 -0
- package/esm2020/page-objects/pages/recent-files.page.mjs +44 -0
- package/esm2020/page-objects/pages/search.page.mjs +78 -0
- package/esm2020/page-objects/pages/shared.page.mjs +44 -0
- package/esm2020/page-objects/pages/trash.page.mjs +44 -0
- package/esm2020/page-objects/playwright-base.mjs +31 -0
- package/esm2020/public-api.mjs +31 -0
- package/esm2020/resources/index.mjs +26 -0
- package/esm2020/resources/test-data/index.mjs +26 -0
- package/esm2020/resources/test-data/test-data-files-folders.mjs +53 -0
- package/esm2020/resources/test-data/test-data-permissions.mjs +331 -0
- package/esm2020/resources/test-files/index.mjs +78 -0
- package/esm2020/utils/api.mjs +43 -0
- package/esm2020/utils/config.mjs +70 -0
- package/esm2020/utils/error-strings.mjs +39 -0
- package/esm2020/utils/exclude-tests.mjs +35 -0
- package/esm2020/utils/index.mjs +34 -0
- package/esm2020/utils/library-errors.mjs +29 -0
- package/esm2020/utils/logger.mjs +69 -0
- package/esm2020/utils/paths.mjs +32 -0
- package/esm2020/utils/state-helper.mjs +29 -0
- package/esm2020/utils/timeouts.mjs +39 -0
- package/esm2020/utils/utils.mjs +144 -0
- package/fesm2015/alfresco-aca-playwright-shared.mjs +6251 -0
- package/fesm2015/alfresco-aca-playwright-shared.mjs.map +1 -0
- package/fesm2020/alfresco-aca-playwright-shared.mjs +6895 -0
- package/fesm2020/alfresco-aca-playwright-shared.mjs.map +1 -0
- package/fixtures/index.d.ts +24 -0
- package/fixtures/page-initialization.d.ts +47 -0
- package/index.d.ts +5 -0
- package/models/custom-config.d.ts +27 -0
- package/models/index.d.ts +25 -0
- package/models/user-model.d.ts +37 -0
- package/package.json +35 -0
- package/page-objects/components/aca-header.component.d.ts +53 -0
- package/page-objects/components/actions-dropdown.component.d.ts +71 -0
- package/page-objects/components/adf-info-drawer.component.d.ts +64 -0
- package/page-objects/components/base.component.d.ts +46 -0
- package/page-objects/components/breadcrumb/breadcrumb.component.d.ts +34 -0
- package/page-objects/components/conditions.component.d.ts +46 -0
- package/page-objects/components/dataTable/data-table.component.d.ts +185 -0
- package/page-objects/components/dataTable/index.d.ts +26 -0
- package/page-objects/components/dataTable/mat-menu.component.d.ts +41 -0
- package/page-objects/components/dataTable/toolbar.component.d.ts +33 -0
- package/page-objects/components/datetime-picker/datetime-picker.component.d.ts +36 -0
- package/page-objects/components/dialogs/adf-confirm-dialog.component.d.ts +33 -0
- package/page-objects/components/dialogs/adf-folder-dialog.component.d.ts +45 -0
- package/page-objects/components/dialogs/adf-library-dialog.component.d.ts +45 -0
- package/page-objects/components/dialogs/content-node-selector-dialog.d.ts +42 -0
- package/page-objects/components/dialogs/create-from-template-dialog-component.d.ts +39 -0
- package/page-objects/components/dialogs/delete-trash-dialog.component.d.ts +39 -0
- package/page-objects/components/dialogs/edit-dialog.component.d.ts +36 -0
- package/page-objects/components/dialogs/index.d.ts +38 -0
- package/page-objects/components/dialogs/link-rules.component.d.ts +40 -0
- package/page-objects/components/dialogs/manage-versions-dialog.component.d.ts +30 -0
- package/page-objects/components/dialogs/password-overlay-dialog.component.d.ts +42 -0
- package/page-objects/components/dialogs/share-dialog.component.d.ts +54 -0
- package/page-objects/components/dialogs/upload-dialog.component.d.ts +33 -0
- package/page-objects/components/dialogs/upload-new-version-dialog.component.d.ts +35 -0
- package/page-objects/components/dialogs/viewer-overlay-dialog.component.d.ts +43 -0
- package/page-objects/components/error.component.d.ts +31 -0
- package/page-objects/components/index.d.ts +49 -0
- package/page-objects/components/manageRules/index.d.ts +25 -0
- package/page-objects/components/manageRules/manage-rules-dialog.component.d.ts +51 -0
- package/page-objects/components/manageRules/manage-rules.component.d.ts +46 -0
- package/page-objects/components/pagination.component.d.ts +70 -0
- package/page-objects/components/search/search-filters/search-filters-categories.component.d.ts +30 -0
- package/page-objects/components/search/search-filters/search-filters-date.component.d.ts +73 -0
- package/page-objects/components/search/search-filters/search-filters-location.component.d.ts +32 -0
- package/page-objects/components/search/search-filters/search-filters-logic.component.d.ts +33 -0
- package/page-objects/components/search/search-filters/search-filters-properties.component.d.ts +42 -0
- package/page-objects/components/search/search-filters/search-filters-tags.component.d.ts +32 -0
- package/page-objects/components/search/search-filters.component.d.ts +42 -0
- package/page-objects/components/search/search-input.component.d.ts +40 -0
- package/page-objects/components/search/search-overlay.components.d.ts +45 -0
- package/page-objects/components/search/search-sorting-picker.components.d.ts +41 -0
- package/page-objects/components/sidenav.component.d.ts +45 -0
- package/page-objects/components/snackBar/snack-bar.component.d.ts +37 -0
- package/page-objects/components/spinner.component.d.ts +30 -0
- package/page-objects/components/viewer.component.d.ts +49 -0
- package/page-objects/index.d.ts +25 -0
- package/page-objects/pages/base.page.d.ts +52 -0
- package/page-objects/pages/favorites-libraries.page.d.ts +40 -0
- package/page-objects/pages/favorites.page.d.ts +44 -0
- package/page-objects/pages/index.d.ts +34 -0
- package/page-objects/pages/login.page.d.ts +48 -0
- package/page-objects/pages/my-libraries.page.d.ts +45 -0
- package/page-objects/pages/nodes.page.d.ts +37 -0
- package/page-objects/pages/personal-files.page.d.ts +57 -0
- package/page-objects/pages/recent-files.page.d.ts +42 -0
- package/page-objects/pages/search.page.d.ts +54 -0
- package/page-objects/pages/shared.page.d.ts +42 -0
- package/page-objects/pages/trash.page.d.ts +42 -0
- package/page-objects/playwright-base.d.ts +30 -0
- package/public-api.d.ts +30 -0
- package/resources/index.d.ts +25 -0
- package/resources/test-data/index.d.ts +25 -0
- package/resources/test-data/test-data-files-folders.d.ts +41 -0
- package/resources/test-data/test-data-permissions.d.ts +216 -0
- package/resources/test-files/index.d.ts +76 -0
- package/utils/api.d.ts +26 -0
- package/utils/config.d.ts +69 -0
- package/utils/error-strings.d.ts +38 -0
- package/utils/exclude-tests.d.ts +24 -0
- package/utils/index.d.ts +33 -0
- package/utils/library-errors.d.ts +28 -0
- package/utils/logger.d.ts +54 -0
- package/utils/paths.d.ts +30 -0
- package/utils/state-helper.d.ts +27 -0
- package/utils/timeouts.d.ts +38 -0
- package/utils/utils.d.ts +62 -0
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export const APP_ROUTES = {
|
|
25
|
+
FAVORITES: '/favorites',
|
|
26
|
+
MY_LIBRARIES: '/libraries',
|
|
27
|
+
FAVORITE_LIBRARIES: '/favorite/libraries',
|
|
28
|
+
LOGIN: '/login',
|
|
29
|
+
LOGOUT: '/logout',
|
|
30
|
+
PERSONAL_FILES: '/personal-files',
|
|
31
|
+
RECENT_FILES: '/recent-files',
|
|
32
|
+
SHARED_FILES: '/shared',
|
|
33
|
+
TRASHCAN: '/trashcan'
|
|
34
|
+
};
|
|
35
|
+
export const SIDEBAR_LABELS = {
|
|
36
|
+
PERSONAL_FILES: 'Personal Files',
|
|
37
|
+
MY_LIBRARIES: 'My Libraries',
|
|
38
|
+
FAVORITE_LIBRARIES: 'Favorite Libraries',
|
|
39
|
+
SHARED_FILES: 'Shared',
|
|
40
|
+
RECENT_FILES: 'Recent Files',
|
|
41
|
+
FAVORITES: 'Favorites',
|
|
42
|
+
TRASH: 'Trash'
|
|
43
|
+
};
|
|
44
|
+
export const SITE_ROLES = {
|
|
45
|
+
SITE_MANAGER: {
|
|
46
|
+
ROLE: 'SiteManager',
|
|
47
|
+
LABEL: 'Manager'
|
|
48
|
+
},
|
|
49
|
+
SITE_CONSUMER: {
|
|
50
|
+
ROLE: 'SiteConsumer',
|
|
51
|
+
LABEL: 'Consumer'
|
|
52
|
+
},
|
|
53
|
+
SITE_CONTRIBUTOR: {
|
|
54
|
+
ROLE: 'SiteContributor',
|
|
55
|
+
LABEL: 'Contributor'
|
|
56
|
+
},
|
|
57
|
+
SITE_COLLABORATOR: {
|
|
58
|
+
ROLE: 'SiteCollaborator',
|
|
59
|
+
LABEL: 'Collaborator'
|
|
60
|
+
},
|
|
61
|
+
NONE: {
|
|
62
|
+
LABEL: 'Not a member'
|
|
63
|
+
}
|
|
64
|
+
};
|
|
65
|
+
export const SITE_VISIBILITY = {
|
|
66
|
+
PUBLIC: 'PUBLIC',
|
|
67
|
+
MODERATED: 'MODERATED',
|
|
68
|
+
PRIVATE: 'PRIVATE'
|
|
69
|
+
};
|
|
70
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy91dGlscy9jb25maWcudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUc7SUFDeEIsU0FBUyxFQUFFLFlBQVk7SUFDdkIsWUFBWSxFQUFFLFlBQVk7SUFDMUIsa0JBQWtCLEVBQUUscUJBQXFCO0lBQ3pDLEtBQUssRUFBRSxRQUFRO0lBQ2YsTUFBTSxFQUFFLFNBQVM7SUFDakIsY0FBYyxFQUFFLGlCQUFpQjtJQUNqQyxZQUFZLEVBQUUsZUFBZTtJQUM3QixZQUFZLEVBQUUsU0FBUztJQUN2QixRQUFRLEVBQUUsV0FBVztDQUN0QixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLGNBQWMsRUFBRSxnQkFBZ0I7SUFDaEMsWUFBWSxFQUFFLGNBQWM7SUFDNUIsa0JBQWtCLEVBQUUsb0JBQW9CO0lBQ3hDLFlBQVksRUFBRSxRQUFRO0lBQ3RCLFlBQVksRUFBRSxjQUFjO0lBQzVCLFNBQVMsRUFBRSxXQUFXO0lBQ3RCLEtBQUssRUFBRSxPQUFPO0NBQ2YsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRztJQUN4QixZQUFZLEVBQUU7UUFDWixJQUFJLEVBQUUsYUFBYTtRQUNuQixLQUFLLEVBQUUsU0FBUztLQUNqQjtJQUNELGFBQWEsRUFBRTtRQUNiLElBQUksRUFBRSxjQUFjO1FBQ3BCLEtBQUssRUFBRSxVQUFVO0tBQ2xCO0lBQ0QsZ0JBQWdCLEVBQUU7UUFDaEIsSUFBSSxFQUFFLGlCQUFpQjtRQUN2QixLQUFLLEVBQUUsYUFBYTtLQUNyQjtJQUNELGlCQUFpQixFQUFFO1FBQ2pCLElBQUksRUFBRSxrQkFBa0I7UUFDeEIsS0FBSyxFQUFFLGNBQWM7S0FDdEI7SUFDRCxJQUFJLEVBQUU7UUFDSixLQUFLLEVBQUUsY0FBYztLQUN0QjtDQUNGLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUc7SUFDN0IsTUFBTSxFQUFFLFFBQVE7SUFDaEIsU0FBUyxFQUFFLFdBQVc7SUFDdEIsT0FBTyxFQUFFLFNBQVM7Q0FDbkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5leHBvcnQgY29uc3QgQVBQX1JPVVRFUyA9IHtcbiAgRkFWT1JJVEVTOiAnL2Zhdm9yaXRlcycsXG4gIE1ZX0xJQlJBUklFUzogJy9saWJyYXJpZXMnLFxuICBGQVZPUklURV9MSUJSQVJJRVM6ICcvZmF2b3JpdGUvbGlicmFyaWVzJyxcbiAgTE9HSU46ICcvbG9naW4nLFxuICBMT0dPVVQ6ICcvbG9nb3V0JyxcbiAgUEVSU09OQUxfRklMRVM6ICcvcGVyc29uYWwtZmlsZXMnLFxuICBSRUNFTlRfRklMRVM6ICcvcmVjZW50LWZpbGVzJyxcbiAgU0hBUkVEX0ZJTEVTOiAnL3NoYXJlZCcsXG4gIFRSQVNIQ0FOOiAnL3RyYXNoY2FuJ1xufTtcblxuZXhwb3J0IGNvbnN0IFNJREVCQVJfTEFCRUxTID0ge1xuICBQRVJTT05BTF9GSUxFUzogJ1BlcnNvbmFsIEZpbGVzJyxcbiAgTVlfTElCUkFSSUVTOiAnTXkgTGlicmFyaWVzJyxcbiAgRkFWT1JJVEVfTElCUkFSSUVTOiAnRmF2b3JpdGUgTGlicmFyaWVzJyxcbiAgU0hBUkVEX0ZJTEVTOiAnU2hhcmVkJyxcbiAgUkVDRU5UX0ZJTEVTOiAnUmVjZW50IEZpbGVzJyxcbiAgRkFWT1JJVEVTOiAnRmF2b3JpdGVzJyxcbiAgVFJBU0g6ICdUcmFzaCdcbn07XG5cbmV4cG9ydCBjb25zdCBTSVRFX1JPTEVTID0ge1xuICBTSVRFX01BTkFHRVI6IHtcbiAgICBST0xFOiAnU2l0ZU1hbmFnZXInLFxuICAgIExBQkVMOiAnTWFuYWdlcidcbiAgfSxcbiAgU0lURV9DT05TVU1FUjoge1xuICAgIFJPTEU6ICdTaXRlQ29uc3VtZXInLFxuICAgIExBQkVMOiAnQ29uc3VtZXInXG4gIH0sXG4gIFNJVEVfQ09OVFJJQlVUT1I6IHtcbiAgICBST0xFOiAnU2l0ZUNvbnRyaWJ1dG9yJyxcbiAgICBMQUJFTDogJ0NvbnRyaWJ1dG9yJ1xuICB9LFxuICBTSVRFX0NPTExBQk9SQVRPUjoge1xuICAgIFJPTEU6ICdTaXRlQ29sbGFib3JhdG9yJyxcbiAgICBMQUJFTDogJ0NvbGxhYm9yYXRvcidcbiAgfSxcbiAgTk9ORToge1xuICAgIExBQkVMOiAnTm90IGEgbWVtYmVyJ1xuICB9XG59O1xuXG5leHBvcnQgY29uc3QgU0lURV9WSVNJQklMSVRZID0ge1xuICBQVUJMSUM6ICdQVUJMSUMnLFxuICBNT0RFUkFURUQ6ICdNT0RFUkFURUQnLFxuICBQUklWQVRFOiAnUFJJVkFURSdcbn07XG4iXX0=
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export const errorStrings = {
|
|
25
|
+
errorMessageNotPresent: 'Error message is not displayed',
|
|
26
|
+
nameIsRequiredError: 'Name is required',
|
|
27
|
+
nameWithSpecialCharactersError: `Name can't contain these characters * " < > \\ / ? : |`,
|
|
28
|
+
nameEndWithDotError: `Name can't end with a period .`,
|
|
29
|
+
nameContainOnlySpacesError: `Name can't contain only spaces`,
|
|
30
|
+
titleLengthLimitError: 'Use 256 characters or less for title',
|
|
31
|
+
descriptionLengthLimitError: 'Use 512 characters or less for description',
|
|
32
|
+
nameAlreadyUsedError: 'This name is already in use, try a different name.',
|
|
33
|
+
folderNameIsRequired: 'Folder name is required',
|
|
34
|
+
folderNameCantEndWithAPeriod: `Folder name can't end with a period .`,
|
|
35
|
+
folderNameCantContainTheseCharacters: `Folder name can't contain these characters`,
|
|
36
|
+
folderNameCantContainOnlySpaces: `Folder name can't contain only spaces`,
|
|
37
|
+
thereIsAlreadyAFolderWithThisName: `There's already a folder with this name. Try a different name.`
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3Itc3RyaW5ncy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1wbGF5d3JpZ2h0LXNoYXJlZC9zcmMvdXRpbHMvZXJyb3Itc3RyaW5ncy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRztJQUMxQixzQkFBc0IsRUFBRSxnQ0FBZ0M7SUFDeEQsbUJBQW1CLEVBQUUsa0JBQWtCO0lBQ3ZDLDhCQUE4QixFQUFFLHdEQUF3RDtJQUN4RixtQkFBbUIsRUFBRSxnQ0FBZ0M7SUFDckQsMEJBQTBCLEVBQUUsZ0NBQWdDO0lBQzVELHFCQUFxQixFQUFFLHNDQUFzQztJQUM3RCwyQkFBMkIsRUFBRSw0Q0FBNEM7SUFDekUsb0JBQW9CLEVBQUUsb0RBQW9EO0lBRTFFLG9CQUFvQixFQUFFLHlCQUF5QjtJQUMvQyw0QkFBNEIsRUFBRSx1Q0FBdUM7SUFDckUsb0NBQW9DLEVBQUUsNENBQTRDO0lBQ2xGLCtCQUErQixFQUFFLHVDQUF1QztJQUN4RSxpQ0FBaUMsRUFBRSxnRUFBZ0U7Q0FDcEcsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5leHBvcnQgY29uc3QgZXJyb3JTdHJpbmdzID0ge1xuICBlcnJvck1lc3NhZ2VOb3RQcmVzZW50OiAnRXJyb3IgbWVzc2FnZSBpcyBub3QgZGlzcGxheWVkJyxcbiAgbmFtZUlzUmVxdWlyZWRFcnJvcjogJ05hbWUgaXMgcmVxdWlyZWQnLFxuICBuYW1lV2l0aFNwZWNpYWxDaGFyYWN0ZXJzRXJyb3I6IGBOYW1lIGNhbid0IGNvbnRhaW4gdGhlc2UgY2hhcmFjdGVycyAqIFwiIDwgPiBcXFxcIC8gPyA6IHxgLFxuICBuYW1lRW5kV2l0aERvdEVycm9yOiBgTmFtZSBjYW4ndCBlbmQgd2l0aCBhIHBlcmlvZCAuYCxcbiAgbmFtZUNvbnRhaW5Pbmx5U3BhY2VzRXJyb3I6IGBOYW1lIGNhbid0IGNvbnRhaW4gb25seSBzcGFjZXNgLFxuICB0aXRsZUxlbmd0aExpbWl0RXJyb3I6ICdVc2UgMjU2IGNoYXJhY3RlcnMgb3IgbGVzcyBmb3IgdGl0bGUnLFxuICBkZXNjcmlwdGlvbkxlbmd0aExpbWl0RXJyb3I6ICdVc2UgNTEyIGNoYXJhY3RlcnMgb3IgbGVzcyBmb3IgZGVzY3JpcHRpb24nLFxuICBuYW1lQWxyZWFkeVVzZWRFcnJvcjogJ1RoaXMgbmFtZSBpcyBhbHJlYWR5IGluIHVzZSwgdHJ5IGEgZGlmZmVyZW50IG5hbWUuJyxcblxuICBmb2xkZXJOYW1lSXNSZXF1aXJlZDogJ0ZvbGRlciBuYW1lIGlzIHJlcXVpcmVkJyxcbiAgZm9sZGVyTmFtZUNhbnRFbmRXaXRoQVBlcmlvZDogYEZvbGRlciBuYW1lIGNhbid0IGVuZCB3aXRoIGEgcGVyaW9kIC5gLFxuICBmb2xkZXJOYW1lQ2FudENvbnRhaW5UaGVzZUNoYXJhY3RlcnM6IGBGb2xkZXIgbmFtZSBjYW4ndCBjb250YWluIHRoZXNlIGNoYXJhY3RlcnNgLFxuICBmb2xkZXJOYW1lQ2FudENvbnRhaW5Pbmx5U3BhY2VzOiBgRm9sZGVyIG5hbWUgY2FuJ3QgY29udGFpbiBvbmx5IHNwYWNlc2AsXG4gIHRoZXJlSXNBbHJlYWR5QUZvbGRlcldpdGhUaGlzTmFtZTogYFRoZXJlJ3MgYWxyZWFkeSBhIGZvbGRlciB3aXRoIHRoaXMgbmFtZS4gVHJ5IGEgZGlmZmVyZW50IG5hbWUuYFxufTtcbiJdfQ==
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export const getExcludedTestsRegExpArray = (excludedJson, projectName) => {
|
|
25
|
+
const prefix = `[ 🎭 Playwright Excludes - ${projectName} ]`;
|
|
26
|
+
const objectKeys = Object.keys(excludedJson);
|
|
27
|
+
if (!objectKeys.length) {
|
|
28
|
+
console.info(`${prefix} ✅ No excluded tests 🎉 `);
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
console.warn(`${prefix} ❌ Tests excluded because of 🐛 : ${objectKeys}`);
|
|
32
|
+
}
|
|
33
|
+
return objectKeys.map((key) => new RegExp(key));
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhjbHVkZS10ZXN0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1wbGF5d3JpZ2h0LXNoYXJlZC9zcmMvdXRpbHMvZXhjbHVkZS10ZXN0cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLENBQUMsWUFBaUIsRUFBRSxXQUFtQixFQUFFLEVBQUU7SUFDcEYsTUFBTSxNQUFNLEdBQUcsOEJBQThCLFdBQVcsSUFBSSxDQUFDO0lBQzdELE1BQU0sVUFBVSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7SUFFN0MsSUFBSSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUU7UUFDdEIsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0sMEJBQTBCLENBQUMsQ0FBQztLQUNuRDtTQUFNO1FBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLE1BQU0scUNBQXFDLFVBQVUsRUFBRSxDQUFDLENBQUM7S0FDMUU7SUFFRCxPQUFPLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7QUFDbEQsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmV4cG9ydCBjb25zdCBnZXRFeGNsdWRlZFRlc3RzUmVnRXhwQXJyYXkgPSAoZXhjbHVkZWRKc29uOiBhbnksIHByb2plY3ROYW1lOiBzdHJpbmcpID0+IHtcbiAgY29uc3QgcHJlZml4ID0gYFsg8J+OrSBQbGF5d3JpZ2h0IEV4Y2x1ZGVzIC0gJHtwcm9qZWN0TmFtZX0gXWA7XG4gIGNvbnN0IG9iamVjdEtleXMgPSBPYmplY3Qua2V5cyhleGNsdWRlZEpzb24pO1xuXG4gIGlmICghb2JqZWN0S2V5cy5sZW5ndGgpIHtcbiAgICBjb25zb2xlLmluZm8oYCR7cHJlZml4fSDinIUgTm8gZXhjbHVkZWQgdGVzdHMg8J+OiSBgKTtcbiAgfSBlbHNlIHtcbiAgICBjb25zb2xlLndhcm4oYCR7cHJlZml4fSDinYwgVGVzdHMgZXhjbHVkZWQgYmVjYXVzZSBvZiDwn5CbIDogJHtvYmplY3RLZXlzfWApO1xuICB9XG5cbiAgcmV0dXJuIG9iamVjdEtleXMubWFwKChrZXkpID0+IG5ldyBSZWdFeHAoa2V5KSk7XG59O1xuIl19
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export * from './paths';
|
|
25
|
+
export * from './timeouts';
|
|
26
|
+
export * from './exclude-tests';
|
|
27
|
+
export * from './state-helper';
|
|
28
|
+
export * from './utils';
|
|
29
|
+
export * from './library-errors';
|
|
30
|
+
export * from './config';
|
|
31
|
+
export * from './error-strings';
|
|
32
|
+
export * from './api';
|
|
33
|
+
export * from './logger';
|
|
34
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3V0aWxzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsU0FBUyxDQUFDO0FBQ3hCLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxpQkFBaUIsQ0FBQztBQUNoQyxjQUFjLE9BQU8sQ0FBQztBQUN0QixjQUFjLFVBQVUsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3BhdGhzJztcbmV4cG9ydCAqIGZyb20gJy4vdGltZW91dHMnO1xuZXhwb3J0ICogZnJvbSAnLi9leGNsdWRlLXRlc3RzJztcbmV4cG9ydCAqIGZyb20gJy4vc3RhdGUtaGVscGVyJztcbmV4cG9ydCAqIGZyb20gJy4vdXRpbHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWJyYXJ5LWVycm9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2NvbmZpZyc7XG5leHBvcnQgKiBmcm9tICcuL2Vycm9yLXN0cmluZ3MnO1xuZXhwb3J0ICogZnJvbSAnLi9hcGknO1xuZXhwb3J0ICogZnJvbSAnLi9sb2dnZXInO1xuIl19
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export const libraryErrors = {
|
|
25
|
+
libraryIdIsNotAvailable: "This Library ID isn't available. Try a different Library ID.",
|
|
26
|
+
libraryIdIsAlreadyUsed: 'This Library ID is already used. Check the trashcan.',
|
|
27
|
+
useNumbersAndLettersOnly: 'Use numbers and letters only'
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGlicmFyeS1lcnJvcnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3V0aWxzL2xpYnJhcnktZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHO0lBQzNCLHVCQUF1QixFQUFFLDhEQUE4RDtJQUN2RixzQkFBc0IsRUFBRSxzREFBc0Q7SUFDOUUsd0JBQXdCLEVBQUUsOEJBQThCO0NBQ3pELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuZXhwb3J0IGNvbnN0IGxpYnJhcnlFcnJvcnMgPSB7XG4gIGxpYnJhcnlJZElzTm90QXZhaWxhYmxlOiBcIlRoaXMgTGlicmFyeSBJRCBpc24ndCBhdmFpbGFibGUuIFRyeSBhIGRpZmZlcmVudCBMaWJyYXJ5IElELlwiLFxuICBsaWJyYXJ5SWRJc0FscmVhZHlVc2VkOiAnVGhpcyBMaWJyYXJ5IElEIGlzIGFscmVhZHkgdXNlZC4gQ2hlY2sgdGhlIHRyYXNoY2FuLicsXG4gIHVzZU51bWJlcnNBbmRMZXR0ZXJzT25seTogJ1VzZSBudW1iZXJzIGFuZCBsZXR0ZXJzIG9ubHknXG59O1xuIl19
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
/* eslint-disable @typescript-eslint/naming-convention */
|
|
25
|
+
export const infoColor = '\x1b[36m%s\x1b[0m';
|
|
26
|
+
export const logColor = '\x1b[35m%s\x1b[0m';
|
|
27
|
+
export const warnColor = '\x1b[33m%s\x1b[0m';
|
|
28
|
+
export const errorColor = '\x1b[31m%s\x1b[0m';
|
|
29
|
+
export class LogLevelsEnum extends Number {
|
|
30
|
+
}
|
|
31
|
+
LogLevelsEnum.TRACE = 5;
|
|
32
|
+
LogLevelsEnum.DEBUG = 4;
|
|
33
|
+
LogLevelsEnum.INFO = 3;
|
|
34
|
+
LogLevelsEnum.WARN = 2;
|
|
35
|
+
LogLevelsEnum.ERROR = 1;
|
|
36
|
+
LogLevelsEnum.SILENT = 0;
|
|
37
|
+
export const logLevels = [
|
|
38
|
+
{ level: LogLevelsEnum.TRACE, name: 'TRACE' },
|
|
39
|
+
{ level: LogLevelsEnum.DEBUG, name: 'DEBUG' },
|
|
40
|
+
{ level: LogLevelsEnum.INFO, name: 'INFO' },
|
|
41
|
+
{ level: LogLevelsEnum.WARN, name: 'WARN' },
|
|
42
|
+
{ level: LogLevelsEnum.ERROR, name: 'ERROR' },
|
|
43
|
+
{ level: LogLevelsEnum.SILENT, name: 'SILENT' }
|
|
44
|
+
];
|
|
45
|
+
/* eslint-disable no-console */
|
|
46
|
+
export class GenericLogger {
|
|
47
|
+
constructor(logLevel) {
|
|
48
|
+
this.level = logLevels.find(({ name }) => name === logLevel)?.level || LogLevelsEnum.ERROR;
|
|
49
|
+
}
|
|
50
|
+
info(...messages) {
|
|
51
|
+
if (Number(this.level) >= LogLevelsEnum.INFO) {
|
|
52
|
+
console.log(infoColor, messages.join(''));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
log(...messages) {
|
|
56
|
+
if (Number(this.level) >= LogLevelsEnum.TRACE) {
|
|
57
|
+
console.log(logColor, messages.join(''));
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
warn(...messages) {
|
|
61
|
+
if (Number(this.level) >= LogLevelsEnum.WARN) {
|
|
62
|
+
console.log(warnColor, messages.join(''));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
error(...messages) {
|
|
66
|
+
console.log(errorColor, messages.join(''));
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy91dGlscy9sb2dnZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCx5REFBeUQ7QUFFekQsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFHLG1CQUFtQixDQUFDO0FBQzdDLE1BQU0sQ0FBQyxNQUFNLFFBQVEsR0FBRyxtQkFBbUIsQ0FBQztBQUM1QyxNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsbUJBQW1CLENBQUM7QUFDN0MsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHLG1CQUFtQixDQUFDO0FBSTlDLE1BQU0sT0FBTyxhQUFjLFNBQVEsTUFBTTs7QUFDaEIsbUJBQUssR0FBVyxDQUFDLENBQUM7QUFDbEIsbUJBQUssR0FBVyxDQUFDLENBQUM7QUFDbEIsa0JBQUksR0FBVyxDQUFDLENBQUM7QUFDakIsa0JBQUksR0FBVyxDQUFDLENBQUM7QUFDakIsbUJBQUssR0FBVyxDQUFDLENBQUM7QUFDbEIsb0JBQU0sR0FBVyxDQUFDLENBQUM7QUFHNUMsTUFBTSxDQUFDLE1BQU0sU0FBUyxHQUFnRDtJQUNwRSxFQUFFLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUU7SUFDN0MsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO0lBQzdDLEVBQUUsS0FBSyxFQUFFLGFBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRTtJQUMzQyxFQUFFLEtBQUssRUFBRSxhQUFhLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUU7SUFDM0MsRUFBRSxLQUFLLEVBQUUsYUFBYSxDQUFDLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFO0lBQzdDLEVBQUUsS0FBSyxFQUFFLGFBQWEsQ0FBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRTtDQUNoRCxDQUFDO0FBU0YsK0JBQStCO0FBQy9CLE1BQU0sT0FBTyxhQUFhO0lBR3hCLFlBQVksUUFBZ0I7UUFDMUIsSUFBSSxDQUFDLEtBQUssR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLENBQUMsSUFBSSxLQUFLLFFBQVEsQ0FBQyxFQUFFLEtBQUssSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDO0lBQzdGLENBQUM7SUFFRCxJQUFJLENBQUMsR0FBRyxRQUFrQjtRQUN4QixJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksYUFBYSxDQUFDLElBQUksRUFBRTtZQUM1QyxPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDM0M7SUFDSCxDQUFDO0lBRUQsR0FBRyxDQUFDLEdBQUcsUUFBa0I7UUFDdkIsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLGFBQWEsQ0FBQyxLQUFLLEVBQUU7WUFDN0MsT0FBTyxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQzFDO0lBQ0gsQ0FBQztJQUVELElBQUksQ0FBQyxHQUFHLFFBQWtCO1FBQ3hCLElBQUksTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxhQUFhLENBQUMsSUFBSSxFQUFFO1lBQzVDLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxFQUFFLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUMzQztJQUNILENBQUM7SUFFRCxLQUFLLENBQUMsR0FBRyxRQUFrQjtRQUN6QixPQUFPLENBQUMsR0FBRyxDQUFDLFVBQVUsRUFBRSxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDN0MsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbi8qIGVzbGludC1kaXNhYmxlIEB0eXBlc2NyaXB0LWVzbGludC9uYW1pbmctY29udmVudGlvbiAqL1xuXG5leHBvcnQgY29uc3QgaW5mb0NvbG9yID0gJ1xceDFiWzM2bSVzXFx4MWJbMG0nO1xuZXhwb3J0IGNvbnN0IGxvZ0NvbG9yID0gJ1xceDFiWzM1bSVzXFx4MWJbMG0nO1xuZXhwb3J0IGNvbnN0IHdhcm5Db2xvciA9ICdcXHgxYlszM20lc1xceDFiWzBtJztcbmV4cG9ydCBjb25zdCBlcnJvckNvbG9yID0gJ1xceDFiWzMxbSVzXFx4MWJbMG0nO1xuXG5leHBvcnQgdHlwZSBMT0dfTEVWRUwgPSAnVFJBQ0UnIHwgJ0RFQlVHJyB8ICdJTkZPJyB8ICdXQVJOJyB8ICdFUlJPUicgfCAnU0lMRU5UJztcblxuZXhwb3J0IGNsYXNzIExvZ0xldmVsc0VudW0gZXh0ZW5kcyBOdW1iZXIge1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IFRSQUNFOiBudW1iZXIgPSA1O1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IERFQlVHOiBudW1iZXIgPSA0O1xuICBwdWJsaWMgc3RhdGljIHJlYWRvbmx5IElORk86IG51bWJlciA9IDM7XG4gIHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgV0FSTjogbnVtYmVyID0gMjtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBFUlJPUjogbnVtYmVyID0gMTtcbiAgcHVibGljIHN0YXRpYyByZWFkb25seSBTSUxFTlQ6IG51bWJlciA9IDA7XG59XG5cbmV4cG9ydCBjb25zdCBsb2dMZXZlbHM6IHsgbGV2ZWw6IExvZ0xldmVsc0VudW07IG5hbWU6IExPR19MRVZFTCB9W10gPSBbXG4gIHsgbGV2ZWw6IExvZ0xldmVsc0VudW0uVFJBQ0UsIG5hbWU6ICdUUkFDRScgfSxcbiAgeyBsZXZlbDogTG9nTGV2ZWxzRW51bS5ERUJVRywgbmFtZTogJ0RFQlVHJyB9LFxuICB7IGxldmVsOiBMb2dMZXZlbHNFbnVtLklORk8sIG5hbWU6ICdJTkZPJyB9LFxuICB7IGxldmVsOiBMb2dMZXZlbHNFbnVtLldBUk4sIG5hbWU6ICdXQVJOJyB9LFxuICB7IGxldmVsOiBMb2dMZXZlbHNFbnVtLkVSUk9SLCBuYW1lOiAnRVJST1InIH0sXG4gIHsgbGV2ZWw6IExvZ0xldmVsc0VudW0uU0lMRU5ULCBuYW1lOiAnU0lMRU5UJyB9XG5dO1xuXG5leHBvcnQgaW50ZXJmYWNlIExvZ2dlckxpa2Uge1xuICBpbmZvKC4uLm1lc3NhZ2VzOiBzdHJpbmdbXSk6IHZvaWQ7XG4gIGxvZyguLi5tZXNzYWdlczogc3RyaW5nW10pOiB2b2lkO1xuICB3YXJuKC4uLm1lc3NhZ2VzOiBzdHJpbmdbXSk6IHZvaWQ7XG4gIGVycm9yKC4uLm1lc3NhZ2VzOiBzdHJpbmdbXSk6IHZvaWQ7XG59XG5cbi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmV4cG9ydCBjbGFzcyBHZW5lcmljTG9nZ2VyIGltcGxlbWVudHMgTG9nZ2VyTGlrZSB7XG4gIHByaXZhdGUgcmVhZG9ubHkgbGV2ZWw6IExvZ0xldmVsc0VudW07XG5cbiAgY29uc3RydWN0b3IobG9nTGV2ZWw6IHN0cmluZykge1xuICAgIHRoaXMubGV2ZWwgPSBsb2dMZXZlbHMuZmluZCgoeyBuYW1lIH0pID0+IG5hbWUgPT09IGxvZ0xldmVsKT8ubGV2ZWwgfHwgTG9nTGV2ZWxzRW51bS5FUlJPUjtcbiAgfVxuXG4gIGluZm8oLi4ubWVzc2FnZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgaWYgKE51bWJlcih0aGlzLmxldmVsKSA+PSBMb2dMZXZlbHNFbnVtLklORk8pIHtcbiAgICAgIGNvbnNvbGUubG9nKGluZm9Db2xvciwgbWVzc2FnZXMuam9pbignJykpO1xuICAgIH1cbiAgfVxuXG4gIGxvZyguLi5tZXNzYWdlczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBpZiAoTnVtYmVyKHRoaXMubGV2ZWwpID49IExvZ0xldmVsc0VudW0uVFJBQ0UpIHtcbiAgICAgIGNvbnNvbGUubG9nKGxvZ0NvbG9yLCBtZXNzYWdlcy5qb2luKCcnKSk7XG4gICAgfVxuICB9XG5cbiAgd2FybiguLi5tZXNzYWdlczogc3RyaW5nW10pOiB2b2lkIHtcbiAgICBpZiAoTnVtYmVyKHRoaXMubGV2ZWwpID49IExvZ0xldmVsc0VudW0uV0FSTikge1xuICAgICAgY29uc29sZS5sb2cod2FybkNvbG9yLCBtZXNzYWdlcy5qb2luKCcnKSk7XG4gICAgfVxuICB9XG5cbiAgZXJyb3IoLi4ubWVzc2FnZXM6IHN0cmluZ1tdKTogdm9pZCB7XG4gICAgY29uc29sZS5sb2coZXJyb3JDb2xvciwgbWVzc2FnZXMuam9pbignJykpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
const rootFolder = 'e2e-output';
|
|
25
|
+
export const paths = {
|
|
26
|
+
rootFolder,
|
|
27
|
+
allData: `${rootFolder}/playwright-data`,
|
|
28
|
+
files: `${rootFolder}/playwright-data/downloads`,
|
|
29
|
+
report: `${rootFolder}/playwright-data/report`,
|
|
30
|
+
userStates: `${rootFolder}/playwright-data/user-states`
|
|
31
|
+
};
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGF0aHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3V0aWxzL3BhdGhzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsTUFBTSxVQUFVLEdBQUcsWUFBWSxDQUFDO0FBRWhDLE1BQU0sQ0FBQyxNQUFNLEtBQUssR0FBRztJQUNuQixVQUFVO0lBQ1YsT0FBTyxFQUFFLEdBQUcsVUFBVSxrQkFBa0I7SUFDeEMsS0FBSyxFQUFFLEdBQUcsVUFBVSw0QkFBNEI7SUFDaEQsTUFBTSxFQUFFLEdBQUcsVUFBVSx5QkFBeUI7SUFDOUMsVUFBVSxFQUFFLEdBQUcsVUFBVSw4QkFBOEI7Q0FDeEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5jb25zdCByb290Rm9sZGVyID0gJ2UyZS1vdXRwdXQnO1xuXG5leHBvcnQgY29uc3QgcGF0aHMgPSB7XG4gIHJvb3RGb2xkZXIsXG4gIGFsbERhdGE6IGAke3Jvb3RGb2xkZXJ9L3BsYXl3cmlnaHQtZGF0YWAsXG4gIGZpbGVzOiBgJHtyb290Rm9sZGVyfS9wbGF5d3JpZ2h0LWRhdGEvZG93bmxvYWRzYCxcbiAgcmVwb3J0OiBgJHtyb290Rm9sZGVyfS9wbGF5d3JpZ2h0LWRhdGEvcmVwb3J0YCxcbiAgdXNlclN0YXRlczogYCR7cm9vdEZvbGRlcn0vcGxheXdyaWdodC1kYXRhL3VzZXItc3RhdGVzYFxufTtcbiJdfQ==
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
import { resolve } from 'path';
|
|
25
|
+
import { paths } from '.';
|
|
26
|
+
export function getUserState(user) {
|
|
27
|
+
return resolve(process.cwd(), `${paths.userStates}/${user}UserState.json`);
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RhdGUtaGVscGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy91dGlscy9zdGF0ZS1oZWxwZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FzQkc7QUFFSCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLENBQUM7QUFHMUIsTUFBTSxVQUFVLFlBQVksQ0FBQyxJQUFjO0lBQ3pDLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxHQUFHLEtBQUssQ0FBQyxVQUFVLElBQUksSUFBSSxnQkFBZ0IsQ0FBQyxDQUFDO0FBQzdFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgcmVzb2x2ZSB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgcGF0aHMgfSBmcm9tICcuJztcbmltcG9ydCB7IHVzZXJzIH0gZnJvbSAnLi4vYmFzZS1jb25maWcnO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VXNlclN0YXRlKHVzZXI6IFVzZXJUeXBlKSB7XG4gIHJldHVybiByZXNvbHZlKHByb2Nlc3MuY3dkKCksIGAke3BhdGhzLnVzZXJTdGF0ZXN9LyR7dXNlcn1Vc2VyU3RhdGUuanNvbmApO1xufVxuXG50eXBlIFVzZXJUeXBlID0ga2V5b2YgdHlwZW9mIHVzZXJzO1xuIl19
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
export const timeouts = {
|
|
25
|
+
typingDelay: 50,
|
|
26
|
+
tiny: 500,
|
|
27
|
+
short: 1000,
|
|
28
|
+
normal: 2000,
|
|
29
|
+
medium: 5000,
|
|
30
|
+
big: 7500,
|
|
31
|
+
large: 10000,
|
|
32
|
+
extraLarge: 20 * 1000,
|
|
33
|
+
globalTest: 85 * 1000,
|
|
34
|
+
extendedTest: 150 * 1000,
|
|
35
|
+
extendedLongTest: 200 * 1000,
|
|
36
|
+
webServer: 240 * 1000,
|
|
37
|
+
globalSpec: 60 * 10 * 1000
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGltZW91dHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3V0aWxzL3RpbWVvdXRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUFHO0lBQ3RCLFdBQVcsRUFBRSxFQUFFO0lBQ2YsSUFBSSxFQUFFLEdBQUc7SUFDVCxLQUFLLEVBQUUsSUFBSTtJQUNYLE1BQU0sRUFBRSxJQUFJO0lBQ1osTUFBTSxFQUFFLElBQUk7SUFDWixHQUFHLEVBQUUsSUFBSTtJQUNULEtBQUssRUFBRSxLQUFLO0lBQ1osVUFBVSxFQUFFLEVBQUUsR0FBRyxJQUFJO0lBQ3JCLFVBQVUsRUFBRSxFQUFFLEdBQUcsSUFBSTtJQUNyQixZQUFZLEVBQUUsR0FBRyxHQUFHLElBQUk7SUFDeEIsZ0JBQWdCLEVBQUUsR0FBRyxHQUFHLElBQUk7SUFDNUIsU0FBUyxFQUFFLEdBQUcsR0FBRyxJQUFJO0lBQ3JCLFVBQVUsRUFBRSxFQUFFLEdBQUcsRUFBRSxHQUFHLElBQUk7Q0FDM0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5leHBvcnQgY29uc3QgdGltZW91dHMgPSB7XG4gIHR5cGluZ0RlbGF5OiA1MCxcbiAgdGlueTogNTAwLFxuICBzaG9ydDogMTAwMCxcbiAgbm9ybWFsOiAyMDAwLFxuICBtZWRpdW06IDUwMDAsXG4gIGJpZzogNzUwMCxcbiAgbGFyZ2U6IDEwMDAwLFxuICBleHRyYUxhcmdlOiAyMCAqIDEwMDAsXG4gIGdsb2JhbFRlc3Q6IDg1ICogMTAwMCxcbiAgZXh0ZW5kZWRUZXN0OiAxNTAgKiAxMDAwLFxuICBleHRlbmRlZExvbmdUZXN0OiAyMDAgKiAxMDAwLFxuICB3ZWJTZXJ2ZXI6IDI0MCAqIDEwMDAsXG4gIGdsb2JhbFNwZWM6IDYwICogMTAgKiAxMDAwXG59O1xuIl19
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* Copyright © 2005-2024 Hyland Software, Inc. and its affiliates. All rights reserved.
|
|
3
|
+
*
|
|
4
|
+
* Alfresco Example Content Application
|
|
5
|
+
*
|
|
6
|
+
* This file is part of the Alfresco Example Content Application.
|
|
7
|
+
* If the software was purchased under a paid Alfresco license, the terms of
|
|
8
|
+
* the paid license agreement will prevail. Otherwise, the software is
|
|
9
|
+
* provided under the following open source license terms:
|
|
10
|
+
*
|
|
11
|
+
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
|
|
12
|
+
* it under the terms of the GNU Lesser General Public License as published by
|
|
13
|
+
* the Free Software Foundation, either version 3 of the License, or
|
|
14
|
+
* (at your option) any later version.
|
|
15
|
+
*
|
|
16
|
+
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
|
|
17
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
19
|
+
* GNU Lesser General Public License for more details.
|
|
20
|
+
*
|
|
21
|
+
* You should have received a copy of the GNU Lesser General Public License
|
|
22
|
+
* from Hyland Software. If not, see <http://www.gnu.org/licenses/>.
|
|
23
|
+
*/
|
|
24
|
+
const crypto = require('crypto');
|
|
25
|
+
import * as path from 'path';
|
|
26
|
+
import { format, subDays, subMonths, endOfMonth } from 'date-fns';
|
|
27
|
+
import StreamZip from 'node-stream-zip';
|
|
28
|
+
export class Utils {
|
|
29
|
+
static random() {
|
|
30
|
+
return crypto.getRandomValues(new Uint32Array(1))[0].toString(36).substring(0, 5).toLowerCase();
|
|
31
|
+
}
|
|
32
|
+
static retryCall(fn, retry = 30, delay = 1500) {
|
|
33
|
+
const pause = (duration) => new Promise((res) => setTimeout(res, duration));
|
|
34
|
+
const run = (retries) => {
|
|
35
|
+
return fn().catch((err) => (retries > 1 ? pause(delay).then(() => run(retries - 1)) : Promise.reject(err)));
|
|
36
|
+
};
|
|
37
|
+
return run(retry);
|
|
38
|
+
}
|
|
39
|
+
static formatDate(date) {
|
|
40
|
+
return new Date(date).toLocaleDateString('en-US');
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Method used to login user with navigation. Also waits for the page to load after login
|
|
44
|
+
*
|
|
45
|
+
* @param loginPage page context passed from the test
|
|
46
|
+
* @param username username string
|
|
47
|
+
* @param password password string
|
|
48
|
+
* @param errorMessage error message string if the login fails
|
|
49
|
+
*
|
|
50
|
+
*/
|
|
51
|
+
static async tryLoginUser(loginPage, username, password, errorMessage = 'Error ') {
|
|
52
|
+
try {
|
|
53
|
+
await loginPage.loginUser({ username, password }, { withNavigation: true, waitForLoading: true });
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
console.error(`${errorMessage}: ${error}`);
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Method used to delete nodes and sites from user's account
|
|
61
|
+
*
|
|
62
|
+
* @param nodesApi nodesApi initialized with user credentials passed from the test
|
|
63
|
+
* @param trashcanApi trashcanApi initialized with user credentials passed from the test
|
|
64
|
+
* @param errorMessage error message string if the deleting sites/nodes fails
|
|
65
|
+
* @param sitesApi sitesApi initialized with user credentials passed from the test
|
|
66
|
+
* @param sitesToDelete array of sites' ids
|
|
67
|
+
*
|
|
68
|
+
*/
|
|
69
|
+
static async deleteNodesSitesEmptyTrashcan(nodesApi, trashcanApi, errorMessage = 'Error ', sitesApi, sitesToDelete) {
|
|
70
|
+
try {
|
|
71
|
+
await nodesApi?.deleteCurrentUserNodes();
|
|
72
|
+
await trashcanApi?.emptyTrashcan();
|
|
73
|
+
if (sitesToDelete?.length > 0) {
|
|
74
|
+
await sitesApi?.deleteSites(sitesToDelete);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.error(`${errorMessage}: ${error}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
static async uploadFileNewVersion(personalFilesPage, fileFromOS) {
|
|
82
|
+
const fileInput = await personalFilesPage.page.$('#app-upload-file-version');
|
|
83
|
+
await fileInput.setInputFiles(path.join(__dirname, `../resources/test-files/${fileFromOS}.docx`));
|
|
84
|
+
}
|
|
85
|
+
static async reloadPageIfRowNotVisible(pageContext, nodeName, errorMessage = 'reloadPageIfRowNotVisible Error ') {
|
|
86
|
+
try {
|
|
87
|
+
if (!(await pageContext.dataTable.getRowByName(nodeName).isVisible())) {
|
|
88
|
+
await pageContext.page.reload({ waitUntil: 'load' });
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
catch (error) {
|
|
92
|
+
console.error(`${errorMessage}: ${error}`);
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
static async reloadPageIfDatatableEmpty(pageContext, errorMessage = 'reloadPageIfDatatableEmpty Error ') {
|
|
96
|
+
try {
|
|
97
|
+
if ((await pageContext.dataTable.getEmptyFolderLocator.isVisible()) || (await pageContext.dataTable.emptyListTitle.isVisible())) {
|
|
98
|
+
await pageContext.page.reload({ waitUntil: 'load' });
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
catch (error) {
|
|
102
|
+
console.error(`${errorMessage}: ${error}`);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
static getCurrentAndPreviousDay(currentDate = new Date()) {
|
|
106
|
+
let formattedDate;
|
|
107
|
+
let formattedDate2;
|
|
108
|
+
const formatDate = (date) => {
|
|
109
|
+
return format(date, 'dd-MMM-yy').toUpperCase();
|
|
110
|
+
};
|
|
111
|
+
if (currentDate.getDate() === 1) {
|
|
112
|
+
const lastDayOfPreviousMonth = endOfMonth(subMonths(currentDate, 1));
|
|
113
|
+
formattedDate = formatDate(lastDayOfPreviousMonth);
|
|
114
|
+
formattedDate2 = formatDate(subDays(lastDayOfPreviousMonth, 1));
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
formattedDate = formatDate(currentDate);
|
|
118
|
+
formattedDate2 = formatDate(subDays(currentDate, 1));
|
|
119
|
+
}
|
|
120
|
+
return { currentDate: formattedDate, previousDate: formattedDate2 };
|
|
121
|
+
}
|
|
122
|
+
static async verifyZipFileContent(filePath, fileOrFolderName) {
|
|
123
|
+
const zip = new StreamZip({
|
|
124
|
+
file: filePath,
|
|
125
|
+
storeEntries: true
|
|
126
|
+
});
|
|
127
|
+
return new Promise((resolve) => {
|
|
128
|
+
zip.on('ready', () => {
|
|
129
|
+
const entries = zip.entries();
|
|
130
|
+
const found = this.isFileOrFolderInEntries(entries, fileOrFolderName);
|
|
131
|
+
zip.close();
|
|
132
|
+
resolve(found);
|
|
133
|
+
});
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
static isFileOrFolderInEntries(entries, fileOrFolderName) {
|
|
137
|
+
return fileOrFolderName.some((name) => {
|
|
138
|
+
return Object.keys(entries).some((entry) => entry.includes(name));
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
Utils.string257Long = 'x'.repeat(257);
|
|
143
|
+
Utils.string513Long = 'x'.repeat(513);
|
|
144
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3V0aWxzL3V0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ2pDLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBRTdCLE9BQU8sRUFBRSxNQUFNLEVBQUUsT0FBTyxFQUFFLFNBQVMsRUFBRSxVQUFVLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFDbEUsT0FBTyxTQUFTLE1BQU0saUJBQWlCLENBQUM7QUFHeEMsTUFBTSxPQUFPLEtBQUs7SUFJaEIsTUFBTSxDQUFDLE1BQU07UUFDWCxPQUFPLE1BQU0sQ0FBQyxlQUFlLENBQUMsSUFBSSxXQUFXLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLENBQUMsRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztJQUNsRyxDQUFDO0lBRUQsTUFBTSxDQUFDLFNBQVMsQ0FBQyxFQUFzQixFQUFFLFFBQWdCLEVBQUUsRUFBRSxRQUFnQixJQUFJO1FBQy9FLE1BQU0sS0FBSyxHQUFHLENBQUMsUUFBZ0IsRUFBRSxFQUFFLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsUUFBUSxDQUFDLENBQUMsQ0FBQztRQUVwRixNQUFNLEdBQUcsR0FBRyxDQUFDLE9BQWUsRUFBZ0IsRUFBRTtZQUM1QyxPQUFPLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLEdBQUcsRUFBRSxFQUFFLENBQUMsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FB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QUFvQixDQUFDLFFBQWdCLEVBQUUsZ0JBQTBCO1FBQzVFLE1BQU0sR0FBRyxHQUFHLElBQUksU0FBUyxDQUFDO1lBQ3hCLElBQUksRUFBRSxRQUFRO1lBQ2QsWUFBWSxFQUFFLElBQUk7U0FDbkIsQ0FBQyxDQUFDO1FBRUgsT0FBTyxJQUFJLE9BQU8sQ0FBVSxDQUFDLE9BQU8sRUFBRSxFQUFFO1lBQ3RDLEdBQUcsQ0FBQyxFQUFFLENBQUMsT0FBTyxFQUFFLEdBQUcsRUFBRTtnQkFDbkIsTUFBTSxPQUFPLEdBQUcsR0FBRyxDQUFDLE9BQU8sRUFBRSxDQUFDO2dCQUM5QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixDQUFDLENBQUM7Z0JBQ3RFLEdBQUcsQ0FBQyxLQUFLLEVBQUUsQ0FBQztnQkFDWixPQUFPLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakIsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFTyxNQUFNLENBQUMsdUJBQXVCLENBQUMsT0FBK0MsRUFBRSxnQkFBMEI7UUFDaEgsT0FBTyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRTtZQUNwQyxPQUFPLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDcEUsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDOztBQTFJTSxtQkFBYSxHQUFHLEdBQUcsQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUM7QUFDaEMsbUJBQWEsR0FBRyxHQUFHLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmNvbnN0IGNyeXB0byA9IHJlcXVpcmUoJ2NyeXB0bycpO1xuaW1wb3J0ICogYXMgcGF0aCBmcm9tICdwYXRoJztcbmltcG9ydCB7IExvZ2luUGFnZSwgTXlMaWJyYXJpZXNQYWdlLCBQZXJzb25hbEZpbGVzUGFnZSwgRmF2b3JpdGVzTGlicmFyaWVzUGFnZSwgU2VhcmNoUGFnZSwgU2hhcmVkUGFnZSwgVHJhc2hQYWdlIH0gZnJvbSAnLi4vcGFnZS1vYmplY3RzJztcbmltcG9ydCB7IGZvcm1hdCwgc3ViRGF5cywgc3ViTW9udGhzLCBlbmRPZk1vbnRoIH0gZnJvbSAnZGF0ZS1mbnMnO1xuaW1wb3J0IFN0cmVhbVppcCBmcm9tICdub2RlLXN0cmVhbS16aXAnO1xuaW1wb3J0IHsgTm9kZXNBcGksIFNpdGVzQXBpLCBUcmFzaGNhbkFwaSB9IGZyb20gJy4uL2FwaSc7XG5cbmV4cG9ydCBjbGFzcyBVdGlscyB7XG4gIHN0YXRpYyBzdHJpbmcyNTdMb25nID0gJ3gnLnJlcGVhdCgyNTcpO1xuICBzdGF0aWMgc3RyaW5nNTEzTG9uZyA9ICd4Jy5yZXBlYXQoNTEzKTtcblxuICBzdGF0aWMgcmFuZG9tKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGNyeXB0by5nZXRSYW5kb21WYWx1ZXMobmV3IFVpbnQzMkFycmF5KDEpKVswXS50b1N0cmluZygzNikuc3Vic3RyaW5nKDAsIDUpLnRvTG93ZXJDYXNlKCk7XG4gIH1cblxuICBzdGF0aWMgcmV0cnlDYWxsKGZuOiAoKSA9PiBQcm9taXNlPGFueT4sIHJldHJ5OiBudW1iZXIgPSAzMCwgZGVsYXk6IG51bWJlciA9IDE1MDApOiBQcm9taXNlPGFueT4ge1xuICAgIGNvbnN0IHBhdXNlID0gKGR1cmF0aW9uOiBudW1iZXIpID0+IG5ldyBQcm9taXNlKChyZXMpID0+IHNldFRpbWVvdXQocmVzLCBkdXJhdGlvbikpO1xuXG4gICAgY29uc3QgcnVuID0gKHJldHJpZXM6IG51bWJlcik6IFByb21pc2U8YW55PiA9PiB7XG4gICAgICByZXR1cm4gZm4oKS5jYXRjaCgoZXJyKSA9PiAocmV0cmllcyA+IDEgPyBwYXVzZShkZWxheSkudGhlbigoKSA9PiBydW4ocmV0cmllcyAtIDEpKSA6IFByb21pc2UucmVqZWN0KGVycikpKTtcbiAgICB9O1xuXG4gICAgcmV0dXJuIHJ1bihyZXRyeSk7XG4gIH1cblxuICBzdGF0aWMgZm9ybWF0RGF0ZShkYXRlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBuZXcgRGF0ZShkYXRlKS50b0xvY2FsZURhdGVTdHJpbmcoJ2VuLVVTJyk7XG4gIH1cblxuICAvKipcbiAgICogTWV0aG9kIHVzZWQgdG8gbG9naW4gdXNlciB3aXRoIG5hdmlnYXRpb24uIEFsc28gd2FpdHMgZm9yIHRoZSBwYWdlIHRvIGxvYWQgYWZ0ZXIgbG9naW5cbiAgICpcbiAgICogQHBhcmFtIGxvZ2luUGFnZSBwYWdlIGNvbnRleHQgcGFzc2VkIGZyb20gdGhlIHRlc3RcbiAgICogQHBhcmFtIHVzZXJuYW1lIHVzZXJuYW1lIHN0cmluZ1xuICAgKiBAcGFyYW0gcGFzc3dvcmQgcGFzc3dvcmQgc3RyaW5nXG4gICAqIEBwYXJhbSBlcnJvck1lc3NhZ2UgZXJyb3IgbWVzc2FnZSBzdHJpbmcgaWYgdGhlIGxvZ2luIGZhaWxzXG4gICAqXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgdHJ5TG9naW5Vc2VyKGxvZ2luUGFnZTogTG9naW5QYWdlLCB1c2VybmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nLCBlcnJvck1lc3NhZ2UgPSAnRXJyb3IgJyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBsb2dpblBhZ2UubG9naW5Vc2VyKHsgdXNlcm5hbWUsIHBhc3N3b3JkIH0sIHsgd2l0aE5hdmlnYXRpb246IHRydWUsIHdhaXRGb3JMb2FkaW5nOiB0cnVlIH0pO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGAke2Vycm9yTWVzc2FnZX06ICR7ZXJyb3J9YCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB1c2VkIHRvIGRlbGV0ZSBub2RlcyBhbmQgc2l0ZXMgZnJvbSB1c2VyJ3MgYWNjb3VudFxuICAgKlxuICAgKiBAcGFyYW0gbm9kZXNBcGkgbm9kZXNBcGkgaW5pdGlhbGl6ZWQgd2l0aCB1c2VyIGNyZWRlbnRpYWxzIHBhc3NlZCBmcm9tIHRoZSB0ZXN0XG4gICAqIEBwYXJhbSB0cmFzaGNhbkFwaSB0cmFzaGNhbkFwaSBpbml0aWFsaXplZCB3aXRoIHVzZXIgY3JlZGVudGlhbHMgcGFzc2VkIGZyb20gdGhlIHRlc3RcbiAgICogQHBhcmFtIGVycm9yTWVzc2FnZSBlcnJvciBtZXNzYWdlIHN0cmluZyBpZiB0aGUgZGVsZXRpbmcgc2l0ZXMvbm9kZXMgZmFpbHNcbiAgICogQHBhcmFtIHNpdGVzQXBpIHNpdGVzQXBpIGluaXRpYWxpemVkIHdpdGggdXNlciBjcmVkZW50aWFscyBwYXNzZWQgZnJvbSB0aGUgdGVzdFxuICAgKiBAcGFyYW0gc2l0ZXNUb0RlbGV0ZSBhcnJheSBvZiBzaXRlcycgaWRzXG4gICAqXG4gICAqL1xuICBzdGF0aWMgYXN5bmMgZGVsZXRlTm9kZXNTaXRlc0VtcHR5VHJhc2hjYW4oXG4gICAgbm9kZXNBcGk/OiBOb2Rlc0FwaSxcbiAgICB0cmFzaGNhbkFwaT86IFRyYXNoY2FuQXBpLFxuICAgIGVycm9yTWVzc2FnZSA9ICdFcnJvciAnLFxuICAgIHNpdGVzQXBpPzogU2l0ZXNBcGksXG4gICAgc2l0ZXNUb0RlbGV0ZT86IHN0cmluZ1tdXG4gICk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCBub2Rlc0FwaT8uZGVsZXRlQ3VycmVudFVzZXJOb2RlcygpO1xuICAgICAgYXdhaXQgdHJhc2hjYW5BcGk/LmVtcHR5VHJhc2hjYW4oKTtcbiAgICAgIGlmIChzaXRlc1RvRGVsZXRlPy5sZW5ndGggPiAwKSB7XG4gICAgICAgIGF3YWl0IHNpdGVzQXBpPy5kZWxldGVTaXRlcyhzaXRlc1RvRGVsZXRlKTtcbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgJHtlcnJvck1lc3NhZ2V9OiAke2Vycm9yfWApO1xuICAgIH1cbiAgfVxuXG4gIHN0YXRpYyBhc3luYyB1cGxvYWRGaWxlTmV3VmVyc2lvbihwZXJzb25hbEZpbGVzUGFnZTogUGVyc29uYWxGaWxlc1BhZ2UsIGZpbGVGcm9tT1M6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGZpbGVJbnB1dCA9IGF3YWl0IHBlcnNvbmFsRmlsZXNQYWdlLnBhZ2UuJCgnI2FwcC11cGxvYWQtZmlsZS12ZXJzaW9uJyk7XG4gICAgYXdhaXQgZmlsZUlucHV0LnNldElucHV0RmlsZXMocGF0aC5qb2luKF9fZGlybmFtZSwgYC4uL3Jlc291cmNlcy90ZXN0LWZpbGVzLyR7ZmlsZUZyb21PU30uZG9jeGApKTtcbiAgfVxuXG4gIHN0YXRpYyBhc3luYyByZWxvYWRQYWdlSWZSb3dOb3RWaXNpYmxlKFxuICAgIHBhZ2VDb250ZXh0OiBQZXJzb25hbEZpbGVzUGFnZSB8IE15TGlicmFyaWVzUGFnZSB8IEZhdm9yaXRlc0xpYnJhcmllc1BhZ2UgfCBTZWFyY2hQYWdlIHwgU2hhcmVkUGFnZSxcbiAgICBub2RlTmFtZTogc3RyaW5nLFxuICAgIGVycm9yTWVzc2FnZSA9ICdyZWxvYWRQYWdlSWZSb3dOb3RWaXNpYmxlIEVycm9yICdcbiAgKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGlmICghKGF3YWl0IHBhZ2VDb250ZXh0LmRhdGFUYWJsZS5nZXRSb3dCeU5hbWUobm9kZU5hbWUpLmlzVmlzaWJsZSgpKSkge1xuICAgICAgICBhd2FpdCBwYWdlQ29udGV4dC5wYWdlLnJlbG9hZCh7IHdhaXRVbnRpbDogJ2xvYWQnIH0pO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGAke2Vycm9yTWVzc2FnZX06ICR7ZXJyb3J9YCk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGFzeW5jIHJlbG9hZFBhZ2VJZkRhdGF0YWJsZUVtcHR5KFxuICAgIHBhZ2VDb250ZXh0OiBQZXJzb25hbEZpbGVzUGFnZSB8IE15TGlicmFyaWVzUGFnZSB8IEZhdm9yaXRlc0xpYnJhcmllc1BhZ2UgfCBTZWFyY2hQYWdlIHwgU2hhcmVkUGFnZSB8IFRyYXNoUGFnZSxcbiAgICBlcnJvck1lc3NhZ2UgPSAncmVsb2FkUGFnZUlmRGF0YXRhYmxlRW1wdHkgRXJyb3IgJ1xuICApOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0cnkge1xuICAgICAgaWYgKChhd2FpdCBwYWdlQ29udGV4dC5kYXRhVGFibGUuZ2V0RW1wdHlGb2xkZXJMb2NhdG9yLmlzVmlzaWJsZSgpKSB8fCAoYXdhaXQgcGFnZUNvbnRleHQuZGF0YVRhYmxlLmVtcHR5TGlzdFRpdGxlLmlzVmlzaWJsZSgpKSkge1xuICAgICAgICBhd2FpdCBwYWdlQ29udGV4dC5wYWdlLnJlbG9hZCh7IHdhaXRVbnRpbDogJ2xvYWQnIH0pO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGAke2Vycm9yTWVzc2FnZX06ICR7ZXJyb3J9YCk7XG4gICAgfVxuICB9XG5cbiAgc3RhdGljIGdldEN1cnJlbnRBbmRQcmV2aW91c0RheShjdXJyZW50RGF0ZSA9IG5ldyBEYXRlKCkpOiB7IGN1cnJlbnREYXRlOiBzdHJpbmc7IHByZXZpb3VzRGF0ZTogc3RyaW5nIH0ge1xuICAgIGxldCBmb3JtYXR0ZWREYXRlOiBzdHJpbmc7XG4gICAgbGV0IGZvcm1hdHRlZERhdGUyOiBzdHJpbmc7XG5cbiAgICBjb25zdCBmb3JtYXREYXRlID0gKGRhdGU6IERhdGUpOiBzdHJpbmcgPT4ge1xuICAgICAgcmV0dXJuIGZvcm1hdChkYXRlLCAnZGQtTU1NLXl5JykudG9VcHBlckNhc2UoKTtcbiAgICB9O1xuXG4gICAgaWYgKGN1cnJlbnREYXRlLmdldERhdGUoKSA9PT0gMSkge1xuICAgICAgY29uc3QgbGFzdERheU9mUHJldmlvdXNNb250aDogRGF0ZSA9IGVuZE9mTW9udGgoc3ViTW9udGhzKGN1cnJlbnREYXRlLCAxKSk7XG4gICAgICBmb3JtYXR0ZWREYXRlID0gZm9ybWF0RGF0ZShsYXN0RGF5T2ZQcmV2aW91c01vbnRoKTtcbiAgICAgIGZvcm1hdHRlZERhdGUyID0gZm9ybWF0RGF0ZShzdWJEYXlzKGxhc3REYXlPZlByZXZpb3VzTW9udGgsIDEpKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZm9ybWF0dGVkRGF0ZSA9IGZvcm1hdERhdGUoY3VycmVudERhdGUpO1xuICAgICAgZm9ybWF0dGVkRGF0ZTIgPSBmb3JtYXREYXRlKHN1YkRheXMoY3VycmVudERhdGUsIDEpKTtcbiAgICB9XG5cbiAgICByZXR1cm4geyBjdXJyZW50RGF0ZTogZm9ybWF0dGVkRGF0ZSwgcHJldmlvdXNEYXRlOiBmb3JtYXR0ZWREYXRlMiB9O1xuICB9XG5cbiAgc3RhdGljIGFzeW5jIHZlcmlmeVppcEZpbGVDb250ZW50KGZpbGVQYXRoOiBzdHJpbmcsIGZpbGVPckZvbGRlck5hbWU6IHN0cmluZ1tdKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgY29uc3QgemlwID0gbmV3IFN0cmVhbVppcCh7XG4gICAgICBmaWxlOiBmaWxlUGF0aCxcbiAgICAgIHN0b3JlRW50cmllczogdHJ1ZVxuICAgIH0pO1xuXG4gICAgcmV0dXJuIG5ldyBQcm9taXNlPGJvb2xlYW4+KChyZXNvbHZlKSA9PiB7XG4gICAgICB6aXAub24oJ3JlYWR5JywgKCkgPT4ge1xuICAgICAgICBjb25zdCBlbnRyaWVzID0gemlwLmVudHJpZXMoKTtcbiAgICAgICAgY29uc3QgZm91bmQgPSB0aGlzLmlzRmlsZU9yRm9sZGVySW5FbnRyaWVzKGVudHJpZXMsIGZpbGVPckZvbGRlck5hbWUpO1xuICAgICAgICB6aXAuY2xvc2UoKTtcbiAgICAgICAgcmVzb2x2ZShmb3VuZCk7XG4gICAgICB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIHByaXZhdGUgc3RhdGljIGlzRmlsZU9yRm9sZGVySW5FbnRyaWVzKGVudHJpZXM6IHsgW25hbWU6IHN0cmluZ106IFN0cmVhbVppcC5aaXBFbnRyeSB9LCBmaWxlT3JGb2xkZXJOYW1lOiBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgIHJldHVybiBmaWxlT3JGb2xkZXJOYW1lLnNvbWUoKG5hbWUpID0+IHtcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyhlbnRyaWVzKS5zb21lKChlbnRyeSkgPT4gZW50cnkuaW5jbHVkZXMobmFtZSkpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=
|