@alfresco/aca-playwright-shared 5.1.1 → 5.2.0

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.
Files changed (184) hide show
  1. package/api/tags-api.d.ts +8 -2
  2. package/esm2022/api/api-client-factory.mjs +131 -0
  3. package/esm2022/api/categories-api.mjs +66 -0
  4. package/esm2022/api/favorites-api.mjs +130 -0
  5. package/esm2022/api/file-actions.mjs +167 -0
  6. package/esm2022/api/nodes-api.mjs +428 -0
  7. package/esm2022/api/people-api-models.mjs +41 -0
  8. package/esm2022/api/queries-api.mjs +70 -0
  9. package/esm2022/api/rules-api.mjs +258 -0
  10. package/esm2022/api/search-api.mjs +75 -0
  11. package/esm2022/api/shared-links-api.mjs +137 -0
  12. package/esm2022/api/sites-api.mjs +156 -0
  13. package/esm2022/api/tags-api.mjs +92 -0
  14. package/esm2022/api/trashcan-api.mjs +52 -0
  15. package/{esm2020 → esm2022}/models/user-model.mjs +11 -5
  16. package/esm2022/page-objects/components/aca-header.component.mjs +78 -0
  17. package/esm2022/page-objects/components/actions-dropdown.component.mjs +100 -0
  18. package/esm2022/page-objects/components/adf-info-drawer.component.mjs +102 -0
  19. package/esm2022/page-objects/components/base.component.mjs +70 -0
  20. package/esm2022/page-objects/components/breadcrumb/breadcrumb.component.mjs +47 -0
  21. package/esm2022/page-objects/components/conditions.component.mjs +72 -0
  22. package/esm2022/page-objects/components/dataTable/data-table.component.mjs +343 -0
  23. package/esm2022/page-objects/components/dataTable/mat-menu.component.mjs +67 -0
  24. package/{esm2020/page-objects/components/dialogs/manage-versions-dialog.component.mjs → esm2022/page-objects/components/dataTable/toolbar.component.mjs} +13 -8
  25. package/esm2022/page-objects/components/datetime-picker/datetime-picker.component.mjs +53 -0
  26. package/esm2022/page-objects/components/dialogs/adf-confirm-dialog.component.mjs +36 -0
  27. package/esm2022/page-objects/components/dialogs/adf-folder-dialog.component.mjs +57 -0
  28. package/esm2022/page-objects/components/dialogs/adf-library-dialog.component.mjs +64 -0
  29. package/esm2022/page-objects/components/dialogs/content-node-selector-dialog.mjs +68 -0
  30. package/esm2022/page-objects/components/dialogs/create-from-template-dialog-component.mjs +55 -0
  31. package/esm2022/page-objects/components/dialogs/delete-trash-dialog.component.mjs +54 -0
  32. package/esm2022/page-objects/components/dialogs/edit-dialog.component.mjs +39 -0
  33. package/esm2022/page-objects/components/dialogs/link-rules.component.mjs +58 -0
  34. package/esm2022/page-objects/components/dialogs/manage-versions-dialog.component.mjs +36 -0
  35. package/esm2022/page-objects/components/dialogs/password-overlay-dialog.component.mjs +71 -0
  36. package/esm2022/page-objects/components/dialogs/share-dialog.component.mjs +85 -0
  37. package/esm2022/page-objects/components/dialogs/upload-dialog.component.mjs +36 -0
  38. package/esm2022/page-objects/components/dialogs/upload-new-version-dialog.component.mjs +38 -0
  39. package/esm2022/page-objects/components/dialogs/viewer-overlay-dialog.component.mjs +56 -0
  40. package/esm2022/page-objects/components/error.component.mjs +34 -0
  41. package/esm2022/page-objects/components/manageRules/manage-rules-dialog.component.mjs +64 -0
  42. package/esm2022/page-objects/components/manageRules/manage-rules.component.mjs +70 -0
  43. package/esm2022/page-objects/components/pagination.component.mjs +174 -0
  44. package/esm2022/page-objects/components/search/search-filters/search-filters-categories.component.mjs +33 -0
  45. package/esm2022/page-objects/components/search/search-filters/search-filters-date.component.mjs +115 -0
  46. package/esm2022/page-objects/components/search/search-filters/search-filters-location.component.mjs +40 -0
  47. package/esm2022/page-objects/components/search/search-filters/search-filters-logic.component.mjs +36 -0
  48. package/esm2022/page-objects/components/search/search-filters/search-filters-properties.component.mjs +83 -0
  49. package/esm2022/page-objects/components/search/search-filters/search-filters-tags.component.mjs +40 -0
  50. package/esm2022/page-objects/components/search/search-filters.component.mjs +45 -0
  51. package/esm2022/page-objects/components/search/search-input.component.mjs +48 -0
  52. package/esm2022/page-objects/components/search/search-overlay.components.mjs +83 -0
  53. package/esm2022/page-objects/components/search/search-sorting-picker.components.mjs +72 -0
  54. package/esm2022/page-objects/components/sidenav.component.mjs +88 -0
  55. package/esm2022/page-objects/components/snackBar/snack-bar.component.mjs +54 -0
  56. package/esm2022/page-objects/components/spinner.component.mjs +41 -0
  57. package/esm2022/page-objects/components/viewer.component.mjs +110 -0
  58. package/esm2022/page-objects/pages/base.page.mjs +84 -0
  59. package/esm2022/page-objects/pages/favorites-libraries.page.mjs +43 -0
  60. package/esm2022/page-objects/pages/favorites.page.mjs +49 -0
  61. package/esm2022/page-objects/pages/login.page.mjs +62 -0
  62. package/esm2022/page-objects/pages/my-libraries.page.mjs +54 -0
  63. package/esm2022/page-objects/pages/nodes.page.mjs +40 -0
  64. package/esm2022/page-objects/pages/personal-files.page.mjs +85 -0
  65. package/esm2022/page-objects/pages/recent-files.page.mjs +45 -0
  66. package/esm2022/page-objects/pages/search.page.mjs +79 -0
  67. package/esm2022/page-objects/pages/shared.page.mjs +45 -0
  68. package/esm2022/page-objects/pages/trash.page.mjs +45 -0
  69. package/esm2022/page-objects/playwright-base.mjs +33 -0
  70. package/esm2022/resources/test-files/index.mjs +102 -0
  71. package/esm2022/utils/logger.mjs +71 -0
  72. package/esm2022/utils/utils.mjs +145 -0
  73. package/{fesm2020 → fesm2022}/alfresco-aca-playwright-shared.mjs +816 -675
  74. package/fesm2022/alfresco-aca-playwright-shared.mjs.map +1 -0
  75. package/package.json +5 -11
  76. package/page-objects/components/adf-info-drawer.component.d.ts +18 -0
  77. package/page-objects/components/viewer.component.d.ts +11 -0
  78. package/page-objects/pages/search.page.d.ts +1 -1
  79. package/resources/test-files/index.d.ts +24 -0
  80. package/utils/utils.d.ts +2 -2
  81. package/esm2020/api/api-client-factory.mjs +0 -111
  82. package/esm2020/api/categories-api.mjs +0 -65
  83. package/esm2020/api/favorites-api.mjs +0 -129
  84. package/esm2020/api/file-actions.mjs +0 -166
  85. package/esm2020/api/nodes-api.mjs +0 -427
  86. package/esm2020/api/people-api-models.mjs +0 -34
  87. package/esm2020/api/queries-api.mjs +0 -69
  88. package/esm2020/api/rules-api.mjs +0 -251
  89. package/esm2020/api/search-api.mjs +0 -74
  90. package/esm2020/api/shared-links-api.mjs +0 -136
  91. package/esm2020/api/sites-api.mjs +0 -155
  92. package/esm2020/api/tags-api.mjs +0 -61
  93. package/esm2020/api/trashcan-api.mjs +0 -54
  94. package/esm2020/page-objects/components/aca-header.component.mjs +0 -77
  95. package/esm2020/page-objects/components/actions-dropdown.component.mjs +0 -99
  96. package/esm2020/page-objects/components/adf-info-drawer.component.mjs +0 -83
  97. package/esm2020/page-objects/components/base.component.mjs +0 -69
  98. package/esm2020/page-objects/components/breadcrumb/breadcrumb.component.mjs +0 -46
  99. package/esm2020/page-objects/components/conditions.component.mjs +0 -75
  100. package/esm2020/page-objects/components/dataTable/data-table.component.mjs +0 -341
  101. package/esm2020/page-objects/components/dataTable/mat-menu.component.mjs +0 -66
  102. package/esm2020/page-objects/components/dataTable/toolbar.component.mjs +0 -39
  103. package/esm2020/page-objects/components/datetime-picker/datetime-picker.component.mjs +0 -52
  104. package/esm2020/page-objects/components/dialogs/adf-confirm-dialog.component.mjs +0 -35
  105. package/esm2020/page-objects/components/dialogs/adf-folder-dialog.component.mjs +0 -56
  106. package/esm2020/page-objects/components/dialogs/adf-library-dialog.component.mjs +0 -63
  107. package/esm2020/page-objects/components/dialogs/content-node-selector-dialog.mjs +0 -67
  108. package/esm2020/page-objects/components/dialogs/create-from-template-dialog-component.mjs +0 -54
  109. package/esm2020/page-objects/components/dialogs/delete-trash-dialog.component.mjs +0 -53
  110. package/esm2020/page-objects/components/dialogs/edit-dialog.component.mjs +0 -38
  111. package/esm2020/page-objects/components/dialogs/link-rules.component.mjs +0 -57
  112. package/esm2020/page-objects/components/dialogs/password-overlay-dialog.component.mjs +0 -70
  113. package/esm2020/page-objects/components/dialogs/share-dialog.component.mjs +0 -84
  114. package/esm2020/page-objects/components/dialogs/upload-dialog.component.mjs +0 -35
  115. package/esm2020/page-objects/components/dialogs/upload-new-version-dialog.component.mjs +0 -37
  116. package/esm2020/page-objects/components/dialogs/viewer-overlay-dialog.component.mjs +0 -55
  117. package/esm2020/page-objects/components/error.component.mjs +0 -33
  118. package/esm2020/page-objects/components/manageRules/manage-rules-dialog.component.mjs +0 -63
  119. package/esm2020/page-objects/components/manageRules/manage-rules.component.mjs +0 -69
  120. package/esm2020/page-objects/components/pagination.component.mjs +0 -173
  121. package/esm2020/page-objects/components/search/search-filters/search-filters-categories.component.mjs +0 -32
  122. package/esm2020/page-objects/components/search/search-filters/search-filters-date.component.mjs +0 -114
  123. package/esm2020/page-objects/components/search/search-filters/search-filters-location.component.mjs +0 -39
  124. package/esm2020/page-objects/components/search/search-filters/search-filters-logic.component.mjs +0 -35
  125. package/esm2020/page-objects/components/search/search-filters/search-filters-properties.component.mjs +0 -82
  126. package/esm2020/page-objects/components/search/search-filters/search-filters-tags.component.mjs +0 -39
  127. package/esm2020/page-objects/components/search/search-filters.component.mjs +0 -44
  128. package/esm2020/page-objects/components/search/search-input.component.mjs +0 -47
  129. package/esm2020/page-objects/components/search/search-overlay.components.mjs +0 -82
  130. package/esm2020/page-objects/components/search/search-sorting-picker.components.mjs +0 -71
  131. package/esm2020/page-objects/components/sidenav.component.mjs +0 -86
  132. package/esm2020/page-objects/components/snackBar/snack-bar.component.mjs +0 -53
  133. package/esm2020/page-objects/components/spinner.component.mjs +0 -40
  134. package/esm2020/page-objects/components/viewer.component.mjs +0 -92
  135. package/esm2020/page-objects/pages/base.page.mjs +0 -80
  136. package/esm2020/page-objects/pages/favorites-libraries.page.mjs +0 -42
  137. package/esm2020/page-objects/pages/favorites.page.mjs +0 -48
  138. package/esm2020/page-objects/pages/login.page.mjs +0 -61
  139. package/esm2020/page-objects/pages/my-libraries.page.mjs +0 -53
  140. package/esm2020/page-objects/pages/nodes.page.mjs +0 -39
  141. package/esm2020/page-objects/pages/personal-files.page.mjs +0 -84
  142. package/esm2020/page-objects/pages/recent-files.page.mjs +0 -44
  143. package/esm2020/page-objects/pages/search.page.mjs +0 -78
  144. package/esm2020/page-objects/pages/shared.page.mjs +0 -44
  145. package/esm2020/page-objects/pages/trash.page.mjs +0 -44
  146. package/esm2020/page-objects/playwright-base.mjs +0 -31
  147. package/esm2020/resources/test-files/index.mjs +0 -78
  148. package/esm2020/utils/logger.mjs +0 -69
  149. package/esm2020/utils/utils.mjs +0 -144
  150. package/fesm2015/alfresco-aca-playwright-shared.mjs +0 -6267
  151. package/fesm2015/alfresco-aca-playwright-shared.mjs.map +0 -1
  152. package/fesm2020/alfresco-aca-playwright-shared.mjs.map +0 -1
  153. /package/{esm2020 → esm2022}/alfresco-aca-playwright-shared.mjs +0 -0
  154. /package/{esm2020 → esm2022}/api/index.mjs +0 -0
  155. /package/{esm2020 → esm2022}/api/node-content-tree.mjs +0 -0
  156. /package/{esm2020 → esm2022}/base-config/global-variables.mjs +0 -0
  157. /package/{esm2020 → esm2022}/base-config/global.setup.mjs +0 -0
  158. /package/{esm2020 → esm2022}/base-config/index.mjs +0 -0
  159. /package/{esm2020 → esm2022}/base-config/playwright.config.mjs +0 -0
  160. /package/{esm2020 → esm2022}/base-config/report-portal.config.mjs +0 -0
  161. /package/{esm2020 → esm2022}/fixtures/index.mjs +0 -0
  162. /package/{esm2020 → esm2022}/fixtures/page-initialization.mjs +0 -0
  163. /package/{esm2020 → esm2022}/models/custom-config.mjs +0 -0
  164. /package/{esm2020 → esm2022}/models/index.mjs +0 -0
  165. /package/{esm2020 → esm2022}/page-objects/components/dataTable/index.mjs +0 -0
  166. /package/{esm2020 → esm2022}/page-objects/components/dialogs/index.mjs +0 -0
  167. /package/{esm2020 → esm2022}/page-objects/components/index.mjs +0 -0
  168. /package/{esm2020 → esm2022}/page-objects/components/manageRules/index.mjs +0 -0
  169. /package/{esm2020 → esm2022}/page-objects/index.mjs +0 -0
  170. /package/{esm2020 → esm2022}/page-objects/pages/index.mjs +0 -0
  171. /package/{esm2020 → esm2022}/public-api.mjs +0 -0
  172. /package/{esm2020 → esm2022}/resources/index.mjs +0 -0
  173. /package/{esm2020 → esm2022}/resources/test-data/index.mjs +0 -0
  174. /package/{esm2020 → esm2022}/resources/test-data/test-data-files-folders.mjs +0 -0
  175. /package/{esm2020 → esm2022}/resources/test-data/test-data-permissions.mjs +0 -0
  176. /package/{esm2020 → esm2022}/utils/api.mjs +0 -0
  177. /package/{esm2020 → esm2022}/utils/config.mjs +0 -0
  178. /package/{esm2020 → esm2022}/utils/error-strings.mjs +0 -0
  179. /package/{esm2020 → esm2022}/utils/exclude-tests.mjs +0 -0
  180. /package/{esm2020 → esm2022}/utils/index.mjs +0 -0
  181. /package/{esm2020 → esm2022}/utils/library-errors.mjs +0 -0
  182. /package/{esm2020 → esm2022}/utils/paths.mjs +0 -0
  183. /package/{esm2020 → esm2022}/utils/state-helper.mjs +0 -0
  184. /package/{esm2020 → esm2022}/utils/timeouts.mjs +0 -0
@@ -1,155 +0,0 @@
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 { ApiClientFactory } from './api-client-factory';
25
- import { Site, SiteMemberEntry } from '@alfresco/js-api';
26
- export class SitesApi {
27
- constructor() {
28
- this.apiService = new ApiClientFactory();
29
- }
30
- static async initialize(userName, password) {
31
- const classObj = new SitesApi();
32
- await classObj.apiService.setUpAcaBackend(userName, password);
33
- return classObj;
34
- }
35
- async createSite(title, visibility, description, siteId) {
36
- const site = {
37
- title,
38
- visibility: visibility || Site.VisibilityEnum.PUBLIC,
39
- description: description,
40
- id: siteId || title
41
- };
42
- try {
43
- return this.apiService.sites.createSite(site);
44
- }
45
- catch (error) {
46
- console.error(`SitesApi createSite : catch : `, error);
47
- return null;
48
- }
49
- }
50
- async getDocLibId(siteId) {
51
- try {
52
- return (await this.apiService.sites.listSiteContainers(siteId)).list.entries[0].entry.id;
53
- }
54
- catch (error) {
55
- console.error(`SitesApi getDocLibId : catch : `, error);
56
- return null;
57
- }
58
- }
59
- /**
60
- * Delete multiple sites/libraries.
61
- * @param siteIds The list of the site/library IDs to delete.
62
- * @param permanent Delete permanently, without moving to the trashcan? (default: true)
63
- */
64
- async deleteSites(siteIds, permanent = true) {
65
- try {
66
- if (siteIds && siteIds.length > 0) {
67
- for (const siteId of siteIds) {
68
- await this.apiService.sites.deleteSite(siteId, { permanent });
69
- }
70
- }
71
- }
72
- catch (error) {
73
- console.error(`${this.constructor.name} ${this.deleteSites.name}`, error);
74
- }
75
- }
76
- async updateSiteMember(siteId, userId, role) {
77
- const siteRole = {
78
- role: role
79
- };
80
- try {
81
- return this.apiService.sites.updateSiteMembership(siteId, userId, siteRole);
82
- }
83
- catch (error) {
84
- console.error(`SitesApi updateSiteMember : catch : `, error);
85
- return new SiteMemberEntry();
86
- }
87
- }
88
- async addSiteMember(siteId, userId, role) {
89
- const memberBody = {
90
- id: userId,
91
- role: role
92
- };
93
- try {
94
- return this.apiService.sites.createSiteMembership(siteId, memberBody);
95
- }
96
- catch (error) {
97
- if (error.status === 409) {
98
- return this.updateSiteMember(siteId, userId, role);
99
- }
100
- else {
101
- console.error(`SitesApi addSiteMember : catch : `, error);
102
- return new SiteMemberEntry();
103
- }
104
- }
105
- }
106
- async createSiteMembershipRequestForPerson(personId, siteId) {
107
- const body = {
108
- id: siteId
109
- };
110
- try {
111
- return this.apiService.sites.createSiteMembershipRequestForPerson(personId, body);
112
- }
113
- catch (error) {
114
- console.error(`SitesApi createSiteMembershipRequestForPerson : catch : `, error);
115
- return null;
116
- }
117
- }
118
- async approveSiteMembershipRequest(siteId, inviteeId) {
119
- try {
120
- return this.apiService.sites.approveSiteMembershipRequest(siteId, inviteeId);
121
- }
122
- catch (error) {
123
- console.error(`SitesApi approveSiteMembershipRequest : catch : `, error);
124
- return null;
125
- }
126
- }
127
- async hasMembershipRequest(personId, siteId) {
128
- try {
129
- const requests = (await this.apiService.sites.listSiteMembershipRequestsForPerson(personId)).list.entries.map((e) => e.entry.id);
130
- return requests.includes(siteId);
131
- }
132
- catch (error) {
133
- console.error(`SitesApi hasMembershipRequest : catch : `, error);
134
- return null;
135
- }
136
- }
137
- async deleteSiteMember(siteId, userId) {
138
- try {
139
- return this.apiService.sites.deleteSiteMembership(siteId, userId);
140
- }
141
- catch (error) {
142
- console.error(`SitesApi deleteSiteMember : catch : `, error);
143
- }
144
- }
145
- async getSite(siteId) {
146
- try {
147
- return this.apiService.sites.getSite(siteId);
148
- }
149
- catch (error) {
150
- console.error(`SitesApi getSite : catch : `, error);
151
- return null;
152
- }
153
- }
154
- }
155
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2l0ZXMtYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy9hcGkvc2l0ZXMtYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDeEQsT0FBTyxFQUNMLElBQUksRUFHSixlQUFlLEVBS2hCLE1BQU0sa0JBQWtCLENBQUM7QUFFMUIsTUFBTSxPQUFPLFFBQVE7SUFHbkI7UUFDRSxJQUFJLENBQUMsVUFBVSxHQUFHLElBQUksZ0JBQWdCLEVBQUUsQ0FBQztJQUMzQyxDQUFDO0lBQ0QsTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsUUFBZ0IsRUFBRSxRQUFpQjtRQUN6RCxNQUFNLFFBQVEsR0FBRyxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sUUFBUSxDQUFDLFVBQVUsQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO1FBQzlELE9BQU8sUUFBUSxDQUFDO0lBQ2xCLENBQUM7SUFFRCxLQUFLLENBQUMsVUFBVSxDQUFDLEtBQWEsRUFBRSxVQUFtQixFQUFFLFdBQW9CLEVBQUUsTUFBZTtRQUN4RixNQUFNLElBQUksR0FBRztZQUNYLEtBQUs7WUFDTCxVQUFVLEVBQUUsVUFBVSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsTUFBTTtZQUNwRCxXQUFXLEVBQUUsV0FBVztZQUN4QixFQUFFLEVBQUUsTUFBTSxJQUFJLEtBQUs7U0FDRixDQUFDO1FBRXBCLElBQUk7WUFDRixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUMvQztRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQyxnQ0FBZ0Ms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QUNILENBQUM7SUFFRCxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQWM7UUFDMUIsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzlDO1FBQUMsT0FBTyxLQUFLLEVBQUU7WUFDZCxPQUFPLENBQUMsS0FBSyxDQUFDLDZCQUE2QixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQ3BELE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQXBpQ2xpZW50RmFjdG9yeSB9IGZyb20gJy4vYXBpLWNsaWVudC1mYWN0b3J5JztcbmltcG9ydCB7XG4gIFNpdGUsXG4gIFNpdGVCb2R5Q3JlYXRlLFxuICBTaXRlRW50cnksXG4gIFNpdGVNZW1iZXJFbnRyeSxcbiAgU2l0ZU1lbWJlcnNoaXBCb2R5Q3JlYXRlLFxuICBTaXRlTWVtYmVyc2hpcEJvZHlVcGRhdGUsXG4gIFNpdGVNZW1iZXJzaGlwUmVxdWVzdEJvZHlDcmVhdGUsXG4gIFNpdGVNZW1iZXJzaGlwUmVxdWVzdEVudHJ5XG59IGZyb20gJ0BhbGZyZXNjby9qcy1hcGknO1xuXG5leHBvcnQgY2xhc3MgU2l0ZXNBcGkge1xuICBwcml2YXRlIGFwaVNlcnZpY2U6IEFwaUNsaWVudEZhY3Rvcnk7XG5cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgdGhpcy5hcGlTZXJ2aWNlID0gbmV3IEFwaUNsaWVudEZhY3RvcnkoKTtcbiAgfVxuICBzdGF0aWMgYXN5bmMgaW5pdGlhbGl6ZSh1c2VyTmFtZTogc3RyaW5nLCBwYXNzd29yZD86IHN0cmluZyk6IFByb21pc2U8U2l0ZXNBcGk+IHtcbiAgICBjb25zdCBjbGFzc09iaiA9IG5ldyBTaXRlc0FwaSgpO1xuICAgIGF3YWl0IGNsYXNzT2JqLmFwaVNlcnZpY2Uuc2V0VXBBY2FCYWNrZW5kKHVzZXJOYW1lLCBwYXNzd29yZCk7XG4gICAgcmV0dXJuIGNsYXNzT2JqO1xuICB9XG5cbiAgYXN5bmMgY3JlYXRlU2l0ZSh0aXRsZTogc3RyaW5nLCB2aXNpYmlsaXR5Pzogc3RyaW5nLCBkZXNjcmlwdGlvbj86IHN0cmluZywgc2l0ZUlkPzogc3RyaW5nKTogUHJvbWlzZTxTaXRlRW50cnkgfCBudWxsPiB7XG4gICAgY29uc3Qgc2l0ZSA9IHtcbiAgICAgIHRpdGxlLFxuICAgICAgdmlzaWJpbGl0eTogdmlzaWJpbGl0eSB8fCBTaXRlLlZpc2liaWxpdHlFbnVtLlBVQkxJQyxcbiAgICAgIGRlc2NyaXB0aW9uOiBkZXNjcmlwdGlvbixcbiAgICAgIGlkOiBzaXRlSWQgfHwgdGl0bGVcbiAgICB9IGFzIFNpdGVCb2R5Q3JlYXRlO1xuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2Uuc2l0ZXMuY3JlYXRlU2l0ZShzaXRlKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgU2l0ZXNBcGkgY3JlYXRlU2l0ZSA6IGNhdGNoIDogYCwgZXJyb3IpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0RG9jTGliSWQoc2l0ZUlkOiBzdHJpbmcpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gKGF3YWl0IHRoaXMuYXBpU2VydmljZS5zaXRlcy5saXN0U2l0ZUNvbnRhaW5lcnMoc2l0ZUlkKSkubGlzdC5lbnRyaWVzWzBdLmVudHJ5LmlkO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGBTaXRlc0FwaSBnZXREb2NMaWJJZCA6IGNhdGNoIDogYCwgZXJyb3IpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBtdWx0aXBsZSBzaXRlcy9saWJyYXJpZXMuXG4gICAqIEBwYXJhbSBzaXRlSWRzIFRoZSBsaXN0IG9mIHRoZSBzaXRlL2xpYnJhcnkgSURzIHRvIGRlbGV0ZS5cbiAgICogQHBhcmFtIHBlcm1hbmVudCBEZWxldGUgcGVybWFuZW50bHksIHdpdGhvdXQgbW92aW5nIHRvIHRoZSB0cmFzaGNhbj8gKGRlZmF1bHQ6IHRydWUpXG4gICAqL1xuICBhc3luYyBkZWxldGVTaXRlcyhzaXRlSWRzOiBzdHJpbmdbXSwgcGVybWFuZW50OiBib29sZWFuID0gdHJ1ZSkge1xuICAgIHRyeSB7XG4gICAgICBpZiAoc2l0ZUlkcyAmJiBzaXRlSWRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgZm9yIChjb25zdCBzaXRlSWQgb2Ygc2l0ZUlkcykge1xuICAgICAgICAgIGF3YWl0IHRoaXMuYXBpU2VydmljZS5zaXRlcy5kZWxldGVTaXRlKHNpdGVJZCwgeyBwZXJtYW5lbnQgfSk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgJHt0aGlzLmNvbnN0cnVjdG9yLm5hbWV9ICR7dGhpcy5kZWxldGVTaXRlcy5uYW1lfWAsIGVycm9yKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyB1cGRhdGVTaXRlTWVtYmVyKHNpdGVJZDogc3RyaW5nLCB1c2VySWQ6IHN0cmluZywgcm9sZTogc3RyaW5nKTogUHJvbWlzZTxTaXRlTWVtYmVyRW50cnk+IHtcbiAgICBjb25zdCBzaXRlUm9sZSA9IHtcbiAgICAgIHJvbGU6IHJvbGVcbiAgICB9IGFzIFNpdGVNZW1iZXJzaGlwQm9keVVwZGF0ZTtcblxuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnNpdGVzLnVwZGF0ZVNpdGVNZW1iZXJzaGlwKHNpdGVJZCwgdXNlcklkLCBzaXRlUm9sZSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFNpdGVzQXBpIHVwZGF0ZVNpdGVNZW1iZXIgOiBjYXRjaCA6IGAsIGVycm9yKTtcbiAgICAgIHJldHVybiBuZXcgU2l0ZU1lbWJlckVudHJ5KCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgYWRkU2l0ZU1lbWJlcihzaXRlSWQ6IHN0cmluZywgdXNlcklkOiBzdHJpbmcsIHJvbGU6IHN0cmluZyk6IFByb21pc2U8U2l0ZU1lbWJlckVudHJ5PiB7XG4gICAgY29uc3QgbWVtYmVyQm9keSA9IHtcbiAgICAgIGlkOiB1c2VySWQsXG4gICAgICByb2xlOiByb2xlXG4gICAgfSBhcyBTaXRlTWVtYmVyc2hpcEJvZHlDcmVhdGU7XG5cbiAgICB0cnkge1xuICAgICAgcmV0dXJuIHRoaXMuYXBpU2VydmljZS5zaXRlcy5jcmVhdGVTaXRlTWVtYmVyc2hpcChzaXRlSWQsIG1lbWJlckJvZHkpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBpZiAoZXJyb3Iuc3RhdHVzID09PSA0MDkpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMudXBkYXRlU2l0ZU1lbWJlcihzaXRlSWQsIHVzZXJJZCwgcm9sZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBjb25zb2xlLmVycm9yKGBTaXRlc0FwaSBhZGRTaXRlTWVtYmVyIDogY2F0Y2ggOiBgLCBlcnJvcik7XG4gICAgICAgIHJldHVybiBuZXcgU2l0ZU1lbWJlckVudHJ5KCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgY3JlYXRlU2l0ZU1lbWJlcnNoaXBSZXF1ZXN0Rm9yUGVyc29uKHBlcnNvbklkOiBzdHJpbmcsIHNpdGVJZDogc3RyaW5nKTogUHJvbWlzZTxTaXRlTWVtYmVyc2hpcFJlcXVlc3RFbnRyeT4ge1xuICAgIGNvbnN0IGJvZHkgPSB7XG4gICAgICBpZDogc2l0ZUlkXG4gICAgfSBhcyBTaXRlTWVtYmVyc2hpcFJlcXVlc3RCb2R5Q3JlYXRlO1xuXG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2Uuc2l0ZXMuY3JlYXRlU2l0ZU1lbWJlcnNoaXBSZXF1ZXN0Rm9yUGVyc29uKHBlcnNvbklkLCBib2R5KTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgU2l0ZXNBcGkgY3JlYXRlU2l0ZU1lbWJlcnNoaXBSZXF1ZXN0Rm9yUGVyc29uIDogY2F0Y2ggOiBgLCBlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyBhcHByb3ZlU2l0ZU1lbWJlcnNoaXBSZXF1ZXN0KHNpdGVJZDogc3RyaW5nLCBpbnZpdGVlSWQ6IHN0cmluZyk6IFByb21pc2U8U2l0ZU1lbWJlckVudHJ5PiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2Uuc2l0ZXMuYXBwcm92ZVNpdGVNZW1iZXJzaGlwUmVxdWVzdChzaXRlSWQsIGludml0ZWVJZCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFNpdGVzQXBpIGFwcHJvdmVTaXRlTWVtYmVyc2hpcFJlcXVlc3QgOiBjYXRjaCA6IGAsIGVycm9yKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGhhc01lbWJlcnNoaXBSZXF1ZXN0KHBlcnNvbklkOiBzdHJpbmcsIHNpdGVJZDogc3RyaW5nKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgdHJ5IHtcbiAgICAgIGNvbnN0IHJlcXVlc3RzID0gKGF3YWl0IHRoaXMuYXBpU2VydmljZS5zaXRlcy5saXN0U2l0ZU1lbWJlcnNoaXBSZXF1ZXN0c0ZvclBlcnNvbihwZXJzb25JZCkpLmxpc3QuZW50cmllcy5tYXAoKGUpID0+IGUuZW50cnkuaWQpO1xuICAgICAgcmV0dXJuIHJlcXVlc3RzLmluY2x1ZGVzKHNpdGVJZCk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIGNvbnNvbGUuZXJyb3IoYFNpdGVzQXBpIGhhc01lbWJlcnNoaXBSZXF1ZXN0IDogY2F0Y2ggOiBgLCBlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkZWxldGVTaXRlTWVtYmVyKHNpdGVJZDogc3RyaW5nLCB1c2VySWQ6IHN0cmluZykge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnNpdGVzLmRlbGV0ZVNpdGVNZW1iZXJzaGlwKHNpdGVJZCwgdXNlcklkKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgU2l0ZXNBcGkgZGVsZXRlU2l0ZU1lbWJlciA6IGNhdGNoIDogYCwgZXJyb3IpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGdldFNpdGUoc2l0ZUlkOiBzdHJpbmcpOiBQcm9taXNlPFNpdGVFbnRyeT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnNpdGVzLmdldFNpdGUoc2l0ZUlkKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihgU2l0ZXNBcGkgZ2V0U2l0ZSA6IGNhdGNoIDogYCwgZXJyb3IpO1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,61 +0,0 @@
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 { ApiClientFactory } from './api-client-factory';
25
- export class TagsApi {
26
- constructor() {
27
- this.apiService = new ApiClientFactory();
28
- }
29
- static async initialize(userName, password) {
30
- const classObj = new TagsApi();
31
- await classObj.apiService.setUpAcaBackend(userName, password);
32
- return classObj;
33
- }
34
- async createTags(tags) {
35
- try {
36
- return this.apiService.tagsApi.createTags(tags);
37
- }
38
- catch (error) {
39
- console.error(error);
40
- return null;
41
- }
42
- }
43
- async assignTagToNode(nodeId, tag) {
44
- try {
45
- return this.apiService.tagsApi.assignTagToNode(nodeId, tag);
46
- }
47
- catch (error) {
48
- console.error(error);
49
- return null;
50
- }
51
- }
52
- async deleteTag(tagId) {
53
- try {
54
- return this.apiService.tagsApi.deleteTag(tagId);
55
- }
56
- catch (error) {
57
- console.error(error);
58
- }
59
- }
60
- }
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFncy1hcGkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL2FwaS90YWdzLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUdILE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXhELE1BQU0sT0FBTyxPQUFPO0lBR2xCO1FBQ0UsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLGdCQUFnQixFQUFFLENBQUM7SUFDM0MsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQWdCLEVBQUUsUUFBaUI7UUFDekQsTUFBTSxRQUFRLEdBQUcsSUFBSSxPQUFPLEVBQUUsQ0FBQztRQUMvQixNQUFNLFFBQVEsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM5RCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFlO1FBQzlCLElBQUk7WUFDRixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUNqRDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxlQUFlLENBQUMsTUFBYyxFQUFFLEdBQVk7UUFDaEQsSUFBSTtZQUNGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsQ0FBQztTQUM3RDtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyQixPQUFPLElBQUksQ0FBQztTQUNiO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxTQUFTLENBQUMsS0FBYTtRQUMzQixJQUFJO1lBQ0YsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDakQ7UUFBQyxPQUFPLEtBQUssRUFBRTtZQUNkLE9BQU8sQ0FBQyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDdEI7SUFDSCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgVGFnQm9keSwgVGFnRW50cnkgfSBmcm9tICdAYWxmcmVzY28vanMtYXBpJztcbmltcG9ydCB7IEFwaUNsaWVudEZhY3RvcnkgfSBmcm9tICcuL2FwaS1jbGllbnQtZmFjdG9yeSc7XG5cbmV4cG9ydCBjbGFzcyBUYWdzQXBpIHtcbiAgcHJpdmF0ZSBhcGlTZXJ2aWNlOiBBcGlDbGllbnRGYWN0b3J5O1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHRoaXMuYXBpU2VydmljZSA9IG5ldyBBcGlDbGllbnRGYWN0b3J5KCk7XG4gIH1cblxuICBzdGF0aWMgYXN5bmMgaW5pdGlhbGl6ZSh1c2VyTmFtZTogc3RyaW5nLCBwYXNzd29yZD86IHN0cmluZyk6IFByb21pc2U8VGFnc0FwaT4ge1xuICAgIGNvbnN0IGNsYXNzT2JqID0gbmV3IFRhZ3NBcGkoKTtcbiAgICBhd2FpdCBjbGFzc09iai5hcGlTZXJ2aWNlLnNldFVwQWNhQmFja2VuZCh1c2VyTmFtZSwgcGFzc3dvcmQpO1xuICAgIHJldHVybiBjbGFzc09iajtcbiAgfVxuXG4gIGFzeW5jIGNyZWF0ZVRhZ3ModGFnczogVGFnQm9keVtdKTogUHJvbWlzZTxUYWdFbnRyeVtdPiB7XG4gICAgdHJ5IHtcbiAgICAgIHJldHVybiB0aGlzLmFwaVNlcnZpY2UudGFnc0FwaS5jcmVhdGVUYWdzKHRhZ3MpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGFzc2lnblRhZ1RvTm9kZShub2RlSWQ6IHN0cmluZywgdGFnOiBUYWdCb2R5KTogUHJvbWlzZTxUYWdFbnRyeT4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnRhZ3NBcGkuYXNzaWduVGFnVG9Ob2RlKG5vZGVJZCwgdGFnKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cblxuICBhc3luYyBkZWxldGVUYWcodGFnSWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gdGhpcy5hcGlTZXJ2aWNlLnRhZ3NBcGkuZGVsZXRlVGFnKHRhZ0lkKTtcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,54 +0,0 @@
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 { ApiClientFactory } from './api-client-factory';
25
- export class TrashcanApi {
26
- constructor() {
27
- this.apiService = new ApiClientFactory();
28
- }
29
- static async initialize(userName, password) {
30
- const classObj = new TrashcanApi();
31
- await classObj.apiService.setUpAcaBackend(userName, password);
32
- return classObj;
33
- }
34
- /**
35
- * Empties the trashcan. Uses multiple batches 1000 nodes each.
36
- */
37
- async emptyTrashcan() {
38
- try {
39
- const nodes = await this.apiService.trashCan.listDeletedNodes({
40
- maxItems: 1000
41
- });
42
- if (nodes?.list?.entries?.length > 0) {
43
- const ids = nodes.list.entries.map((entries) => entries.entry.id);
44
- for (const nodeId of ids) {
45
- await this.apiService.trashCan.deleteDeletedNode(nodeId);
46
- }
47
- }
48
- }
49
- catch (error) {
50
- console.error('User Actions - emptyTrashcan failed : ', error);
51
- }
52
- }
53
- }
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhc2hjYW4tYXBpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy9hcGkvdHJhc2hjYW4tYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFeEQsTUFBTSxPQUFPLFdBQVc7SUFBeEI7UUFDVSxlQUFVLEdBQUcsSUFBSSxnQkFBZ0IsRUFBRSxDQUFDO0lBNEI5QyxDQUFDO0lBMUJDLE1BQU0sQ0FBQyxLQUFLLENBQUMsVUFBVSxDQUFDLFFBQWdCLEVBQUUsUUFBaUI7UUFDekQsTUFBTSxRQUFRLEdBQUcsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUNuQyxNQUFNLFFBQVEsQ0FBQyxVQUFVLENBQUMsZUFBZSxDQUFDLFFBQVEsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUM5RCxPQUFPLFFBQVEsQ0FBQztJQUNsQixDQUFDO0lBRUQ7O09BRUc7SUFDSCxLQUFLLENBQUMsYUFBYTtRQUNqQixJQUFJO1lBQ0YsTUFBTSxLQUFLLEdBQUcsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDNUQsUUFBUSxFQUFFLElBQUk7YUFDZixDQUFDLENBQUM7WUFFSCxJQUFJLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLE1BQU0sR0FBRyxDQUFDLEVBQUU7Z0JBQ3BDLE1BQU0sR0FBRyxHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFFbEUsS0FBSyxNQUFNLE1BQU0sSUFBSSxHQUFHLEVBQUU7b0JBQ3hCLE1BQU0sSUFBSSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsTUFBTSxDQUFDLENBQUM7aUJBQzFEO2FBQ0Y7U0FDRjtRQUFDLE9BQU8sS0FBSyxFQUFFO1lBQ2QsT0FBTyxDQUFDLEtBQUssQ0FBQyx3Q0FBd0MsRUFBRSxLQUFLLENBQUMsQ0FBQztTQUNoRTtJQUNILENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBBcGlDbGllbnRGYWN0b3J5IH0gZnJvbSAnLi9hcGktY2xpZW50LWZhY3RvcnknO1xuXG5leHBvcnQgY2xhc3MgVHJhc2hjYW5BcGkge1xuICBwcml2YXRlIGFwaVNlcnZpY2UgPSBuZXcgQXBpQ2xpZW50RmFjdG9yeSgpO1xuXG4gIHN0YXRpYyBhc3luYyBpbml0aWFsaXplKHVzZXJOYW1lOiBzdHJpbmcsIHBhc3N3b3JkPzogc3RyaW5nKTogUHJvbWlzZTxUcmFzaGNhbkFwaT4ge1xuICAgIGNvbnN0IGNsYXNzT2JqID0gbmV3IFRyYXNoY2FuQXBpKCk7XG4gICAgYXdhaXQgY2xhc3NPYmouYXBpU2VydmljZS5zZXRVcEFjYUJhY2tlbmQodXNlck5hbWUsIHBhc3N3b3JkKTtcbiAgICByZXR1cm4gY2xhc3NPYmo7XG4gIH1cblxuICAvKipcbiAgICogRW1wdGllcyB0aGUgdHJhc2hjYW4uIFVzZXMgbXVsdGlwbGUgYmF0Y2hlcyAxMDAwIG5vZGVzIGVhY2guXG4gICAqL1xuICBhc3luYyBlbXB0eVRyYXNoY2FuKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBub2RlcyA9IGF3YWl0IHRoaXMuYXBpU2VydmljZS50cmFzaENhbi5saXN0RGVsZXRlZE5vZGVzKHtcbiAgICAgICAgbWF4SXRlbXM6IDEwMDBcbiAgICAgIH0pO1xuXG4gICAgICBpZiAobm9kZXM/Lmxpc3Q/LmVudHJpZXM/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgY29uc3QgaWRzID0gbm9kZXMubGlzdC5lbnRyaWVzLm1hcCgoZW50cmllcykgPT4gZW50cmllcy5lbnRyeS5pZCk7XG5cbiAgICAgICAgZm9yIChjb25zdCBub2RlSWQgb2YgaWRzKSB7XG4gICAgICAgICAgYXdhaXQgdGhpcy5hcGlTZXJ2aWNlLnRyYXNoQ2FuLmRlbGV0ZURlbGV0ZWROb2RlKG5vZGVJZCk7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgY29uc29sZS5lcnJvcignVXNlciBBY3Rpb25zIC0gZW1wdHlUcmFzaGNhbiBmYWlsZWQgOiAnLCBlcnJvcik7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -1,77 +0,0 @@
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 { expect } from '@playwright/test';
25
- import { MatMenuComponent } from './dataTable';
26
- import { BaseComponent } from './base.component';
27
- export class AcaHeader extends BaseComponent {
28
- constructor(page) {
29
- super(page, AcaHeader.rootElement);
30
- this.moreActionsButton = this.getChild('button[id="app.viewer.toolbar.more"]');
31
- this.toolbarMoreActions = this.getChild('button[id="app.toolbar.more"]');
32
- this.createButton = this.getChild('[id="app.toolbar.create"]');
33
- this.viewDetails = this.getChild('[title="View Details"]');
34
- this.viewButton = this.getChild('button[title="View"]');
35
- this.searchButton = this.getChild('button[id="app.toolbar.search"]');
36
- this.fullScreenButton = this.getChild('button[id="app.viewer.fullscreen"]');
37
- this.shareButton = this.getChild('button[id="share-action-button"]');
38
- this.downloadButtonViewer = this.getChild('button[id="app.viewer.download"]');
39
- this.downloadButton = this.getChild('button[id="app.toolbar.download"]');
40
- this.sharedDownloadButton = this.getChild('button[id="app.viewer.shared.download"]');
41
- this.uploadButton = this.getChild('button[id="app.toolbar.upload"]');
42
- this.uploadFileButton = this.page.locator('button[id="app.create.uploadFile"]');
43
- this.uploadInput = this.page.locator('input[id="app-upload-files"]');
44
- this.uploadNewVersionButton = this.page.locator('#app-upload-file-version');
45
- this.permanentlyDeleteButton = this.getChild('button[id="app.toolbar.purgeDeletedNodes"]');
46
- this.restoreButton = this.getChild('button[id="app.toolbar.restoreDeletedNodes"]');
47
- this.matMenu = new MatMenuComponent(this.page);
48
- }
49
- async clickViewerMoreActions() {
50
- await this.moreActionsButton.waitFor({ state: 'attached' });
51
- await this.moreActionsButton.click();
52
- }
53
- async clickMoreActions() {
54
- await this.toolbarMoreActions.waitFor({ state: 'attached' });
55
- await this.toolbarMoreActions.click();
56
- }
57
- async clickCreateFolderFromTemplate() {
58
- await this.createButton.click();
59
- await this.matMenu.createFolderFromTemplate.click();
60
- }
61
- async verifyToolbarPrimaryActions(expectedToolbarPrimary) {
62
- const buttons = await this.page.$$('aca-toolbar button');
63
- const actualPrimaryActions = await Promise.all(buttons.map(async (button) => {
64
- const title = await button.getAttribute('title');
65
- return title || '';
66
- }));
67
- for (const action of expectedToolbarPrimary) {
68
- expect(actualPrimaryActions.includes(action), `Expected to contain ${action}`).toBe(true);
69
- }
70
- }
71
- async clickCreateFileFromTemplate() {
72
- await this.createButton.click();
73
- await this.matMenu.createFileFromTemplate.click();
74
- }
75
- }
76
- AcaHeader.rootElement = 'aca-toolbar';
77
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNhLWhlYWRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3BhZ2Utb2JqZWN0cy9jb21wb25lbnRzL2FjYS1oZWFkZXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFRLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2hELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUMvQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFakQsTUFBTSxPQUFPLFNBQVUsU0FBUSxhQUFhO0lBb0IxQyxZQUFZLElBQVU7UUFDcEIsS0FBSyxDQUFDLElBQUksRUFBRSxTQUFTLENBQUMsV0FBVyxDQUFDLENBQUM7UUFuQjdCLHNCQUFpQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsc0NBQXNDLENBQUMsQ0FBQztRQUMxRSx1QkFBa0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLCtCQUErQixDQUFDLENBQUM7UUFDckUsaUJBQVksR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDMUQsZ0JBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDdEQsZUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsc0JBQXNCLENBQUMsQ0FBQztRQUNuRCxpQkFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsaUNBQWlDLENBQUMsQ0FBQztRQUNoRSxxQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLG9DQUFvQyxDQUFDLENBQUM7UUFDdkUsZ0JBQVcsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDaEUseUJBQW9CLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ3pFLG1CQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtQ0FBbUMsQ0FBQyxDQUFDO1FBQ3BFLHlCQUFvQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMseUNBQXlDLENBQUMsQ0FBQztRQUNoRixpQkFBWSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsaUNBQWlDLENBQUMsQ0FBQztRQUNoRSxxQkFBZ0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1FBQzNFLGdCQUFXLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUMsQ0FBQztRQUNoRSwyQkFBc0IsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO1FBQ3ZFLDRCQUF1QixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsNENBQTRDLENBQUMsQ0FBQztRQUN0RixrQkFBYSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsOENBQThDLENBQUMsQ0FBQztRQUs5RSxZQUFPLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFEakQsQ0FBQztJQUdELEtBQUssQ0FBQyxzQkFBc0I7UUFDMUIsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDNUQsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDdkMsQ0FBQztJQUVELEtBQUssQ0FBQyxnQkFBZ0I7UUFDcEIsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDN0QsTUFBTSxJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FBQyw2QkFBNkI7UUFDakMsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0RCxDQUFDO0lBRUQsS0FBSyxDQUFDLDJCQUEyQixDQUFDLHNCQUFnQztRQUNoRSxNQUFNLE9BQU8sR0FBRyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDekQsTUFBTSxvQkFBb0IsR0FBYSxNQUFNLE9BQU8sQ0FBQyxHQUFHLENBQ3RELE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxFQUFFLE1BQU0sRUFBRSxFQUFFO1lBQzNCLE1BQU0sS0FBSyxHQUFHLE1BQU0sTUFBTSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztZQUNqRCxPQUFPLEtBQUssSUFBSSxFQUFFLENBQUM7UUFDckIsQ0FBQyxDQUFDLENBQ0gsQ0FBQztRQUVGLEtBQUssTUFBTSxNQUFNLElBQUksc0JBQXNCLEVBQUU7WUFDM0MsTUFBTSxDQUFDLG9CQUFvQixDQUFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsRUFBRSx1QkFBdUIsTUFBTSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDM0Y7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLDJCQUEyQjtRQUMvQixNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEMsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLHNCQUFzQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3BELENBQUM7O0FBeERjLHFCQUFXLEdBQUcsYUFBYSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IFBhZ2UsIGV4cGVjdCB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuaW1wb3J0IHsgTWF0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vZGF0YVRhYmxlJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcblxuZXhwb3J0IGNsYXNzIEFjYUhlYWRlciBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIHN0YXRpYyByb290RWxlbWVudCA9ICdhY2EtdG9vbGJhcic7XG4gIHByaXZhdGUgbW9yZUFjdGlvbnNCdXR0b24gPSB0aGlzLmdldENoaWxkKCdidXR0b25baWQ9XCJhcHAudmlld2VyLnRvb2xiYXIubW9yZVwiXScpO1xuICBwcml2YXRlIHRvb2xiYXJNb3JlQWN0aW9ucyA9IHRoaXMuZ2V0Q2hpbGQoJ2J1dHRvbltpZD1cImFwcC50b29sYmFyLm1vcmVcIl0nKTtcbiAgcHVibGljIGNyZWF0ZUJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJ1tpZD1cImFwcC50b29sYmFyLmNyZWF0ZVwiXScpO1xuICBwdWJsaWMgdmlld0RldGFpbHMgPSB0aGlzLmdldENoaWxkKCdbdGl0bGU9XCJWaWV3IERldGFpbHNcIl0nKTtcbiAgcHVibGljIHZpZXdCdXR0b24gPSB0aGlzLmdldENoaWxkKCdidXR0b25bdGl0bGU9XCJWaWV3XCJdJyk7XG4gIHB1YmxpYyBzZWFyY2hCdXR0b24gPSB0aGlzLmdldENoaWxkKCdidXR0b25baWQ9XCJhcHAudG9vbGJhci5zZWFyY2hcIl0nKTtcbiAgcHVibGljIGZ1bGxTY3JlZW5CdXR0b24gPSB0aGlzLmdldENoaWxkKCdidXR0b25baWQ9XCJhcHAudmlld2VyLmZ1bGxzY3JlZW5cIl0nKTtcbiAgcHVibGljIHNoYXJlQnV0dG9uID0gdGhpcy5nZXRDaGlsZCgnYnV0dG9uW2lkPVwic2hhcmUtYWN0aW9uLWJ1dHRvblwiXScpO1xuICBwdWJsaWMgZG93bmxvYWRCdXR0b25WaWV3ZXIgPSB0aGlzLmdldENoaWxkKCdidXR0b25baWQ9XCJhcHAudmlld2VyLmRvd25sb2FkXCJdJyk7XG4gIHB1YmxpYyBkb3dubG9hZEJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJ2J1dHRvbltpZD1cImFwcC50b29sYmFyLmRvd25sb2FkXCJdJyk7XG4gIHB1YmxpYyBzaGFyZWREb3dubG9hZEJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJ2J1dHRvbltpZD1cImFwcC52aWV3ZXIuc2hhcmVkLmRvd25sb2FkXCJdJyk7XG4gIHB1YmxpYyB1cGxvYWRCdXR0b24gPSB0aGlzLmdldENoaWxkKCdidXR0b25baWQ9XCJhcHAudG9vbGJhci51cGxvYWRcIl0nKTtcbiAgcHVibGljIHVwbG9hZEZpbGVCdXR0b24gPSB0aGlzLnBhZ2UubG9jYXRvcignYnV0dG9uW2lkPVwiYXBwLmNyZWF0ZS51cGxvYWRGaWxlXCJdJyk7XG4gIHB1YmxpYyB1cGxvYWRJbnB1dCA9IHRoaXMucGFnZS5sb2NhdG9yKCdpbnB1dFtpZD1cImFwcC11cGxvYWQtZmlsZXNcIl0nKTtcbiAgcHVibGljIHVwbG9hZE5ld1ZlcnNpb25CdXR0b24gPSB0aGlzLnBhZ2UubG9jYXRvcignI2FwcC11cGxvYWQtZmlsZS12ZXJzaW9uJyk7XG4gIHB1YmxpYyBwZXJtYW5lbnRseURlbGV0ZUJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJ2J1dHRvbltpZD1cImFwcC50b29sYmFyLnB1cmdlRGVsZXRlZE5vZGVzXCJdJyk7XG4gIHB1YmxpYyByZXN0b3JlQnV0dG9uID0gdGhpcy5nZXRDaGlsZCgnYnV0dG9uW2lkPVwiYXBwLnRvb2xiYXIucmVzdG9yZURlbGV0ZWROb2Rlc1wiXScpO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBBY2FIZWFkZXIucm9vdEVsZW1lbnQpO1xuICB9XG4gIHB1YmxpYyBtYXRNZW51ID0gbmV3IE1hdE1lbnVDb21wb25lbnQodGhpcy5wYWdlKTtcblxuICBhc3luYyBjbGlja1ZpZXdlck1vcmVBY3Rpb25zKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMubW9yZUFjdGlvbnNCdXR0b24ud2FpdEZvcih7IHN0YXRlOiAnYXR0YWNoZWQnIH0pO1xuICAgIGF3YWl0IHRoaXMubW9yZUFjdGlvbnNCdXR0b24uY2xpY2soKTtcbiAgfVxuXG4gIGFzeW5jIGNsaWNrTW9yZUFjdGlvbnMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy50b29sYmFyTW9yZUFjdGlvbnMud2FpdEZvcih7IHN0YXRlOiAnYXR0YWNoZWQnIH0pO1xuICAgIGF3YWl0IHRoaXMudG9vbGJhck1vcmVBY3Rpb25zLmNsaWNrKCk7XG4gIH1cblxuICBhc3luYyBjbGlja0NyZWF0ZUZvbGRlckZyb21UZW1wbGF0ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmNyZWF0ZUJ1dHRvbi5jbGljaygpO1xuICAgIGF3YWl0IHRoaXMubWF0TWVudS5jcmVhdGVGb2xkZXJGcm9tVGVtcGxhdGUuY2xpY2soKTtcbiAgfVxuXG4gIGFzeW5jIHZlcmlmeVRvb2xiYXJQcmltYXJ5QWN0aW9ucyhleHBlY3RlZFRvb2xiYXJQcmltYXJ5OiBzdHJpbmdbXSk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGJ1dHRvbnMgPSBhd2FpdCB0aGlzLnBhZ2UuJCQoJ2FjYS10b29sYmFyIGJ1dHRvbicpO1xuICAgIGNvbnN0IGFjdHVhbFByaW1hcnlBY3Rpb25zOiBzdHJpbmdbXSA9IGF3YWl0IFByb21pc2UuYWxsKFxuICAgICAgYnV0dG9ucy5tYXAoYXN5bmMgKGJ1dHRvbikgPT4ge1xuICAgICAgICBjb25zdCB0aXRsZSA9IGF3YWl0IGJ1dHRvbi5nZXRBdHRyaWJ1dGUoJ3RpdGxlJyk7XG4gICAgICAgIHJldHVybiB0aXRsZSB8fCAnJztcbiAgICAgIH0pXG4gICAgKTtcblxuICAgIGZvciAoY29uc3QgYWN0aW9uIG9mIGV4cGVjdGVkVG9vbGJhclByaW1hcnkpIHtcbiAgICAgIGV4cGVjdChhY3R1YWxQcmltYXJ5QWN0aW9ucy5pbmNsdWRlcyhhY3Rpb24pLCBgRXhwZWN0ZWQgdG8gY29udGFpbiAke2FjdGlvbn1gKS50b0JlKHRydWUpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsaWNrQ3JlYXRlRmlsZUZyb21UZW1wbGF0ZSgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmNyZWF0ZUJ1dHRvbi5jbGljaygpO1xuICAgIGF3YWl0IHRoaXMubWF0TWVudS5jcmVhdGVGaWxlRnJvbVRlbXBsYXRlLmNsaWNrKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,99 +0,0 @@
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 { BaseComponent } from './base.component';
25
- export var ActionType;
26
- (function (ActionType) {
27
- ActionType["AddAspect"] = "Add aspect";
28
- ActionType["SimpleWorkflow"] = "Add simple workflow";
29
- ActionType["IncrementCounter"] = "Increment Counter";
30
- ActionType["CheckIn"] = "Check in";
31
- ActionType["AutoDeclareOptions"] = "Auto-Declare Options";
32
- ActionType["CheckOut"] = "Check out";
33
- ActionType["Copy"] = "Copy";
34
- ActionType["ExecuteScript"] = "Execute script";
35
- ActionType["ExtractCommonMetadataFields"] = "Extract common metadata fields";
36
- ActionType["FileAsRecord"] = "File as Record";
37
- ActionType["FileVersionAsRecord"] = "File Version as Record";
38
- ActionType["HideRecord"] = "Hide Record";
39
- ActionType["Import"] = "Import";
40
- ActionType["Move"] = "Move";
41
- ActionType["RemoveAspect"] = "Remove aspect";
42
- ActionType["RequestAIRenditions"] = "Request AI renditions";
43
- ActionType["SendEmail"] = "Send email";
44
- ActionType["SetPropertyValue"] = "Set property value";
45
- ActionType["SpecialiseType"] = "Specialise type";
46
- ActionType["TransformAndCopyContent"] = "Transform and copy content";
47
- ActionType["TransformAndCopyImage"] = "Transform and copy image";
48
- })(ActionType || (ActionType = {}));
49
- export class ActionsDropdownComponent extends BaseComponent {
50
- constructor(page) {
51
- super(page, ActionsDropdownComponent.rootElement);
52
- this.getOptionLocator = (optionName) => this.page.locator('.mat-mdc-select-panel .mdc-list-item__primary-text', { hasText: optionName }).first();
53
- this.ruleActionLocator = this.getChild('aca-rule-action');
54
- this.addActionButtonLocator = this.getChild('[data-automation-id="rule-action-list-add-action-button"]');
55
- this.actionDropdownLocator = this.getChild('[data-automation-id="rule-action-select"]');
56
- this.actionAspectNameLocator = '[data-automation-id="header-aspect-name"] .adf-property-field';
57
- this.actionCheckInInputLocator = '[data-automation-id="header-description"] input';
58
- this.actionAutoDeclareLocator = '[data-automation-id="header-version"] mat-select';
59
- this.actionSimpleWorkflowStepInputLocator = '[data-automation-id="header-approve-step"] input';
60
- this.actionSimpleWorkflowApproveFolderLocator = `[data-automation-id="header-approve-folder"] mat-icon`;
61
- this.actionSimpleWorkflowActionChoiceLocator = '[data-automation-id="content-node-selector-actions-choose"]';
62
- this.actionSimpleWorkflowLabelApproveLocator = `[data-automation-id="card-boolean-label-approve-move"]`;
63
- this.actionSimpleWorkflowSRejectStepLocator = '[data-automation-id="header-reject-step"] input';
64
- this.actionSimpleWorkflowRejectFolderLocator = `[data-automation-id="header-reject-folder"] input`;
65
- }
66
- async selectAction(action, index) {
67
- if (index > 0) {
68
- await this.addActionButtonLocator.click();
69
- }
70
- await this.actionDropdownLocator.nth(index).hover({ timeout: 1000 });
71
- await this.actionDropdownLocator.nth(index).click();
72
- const option = this.getOptionLocator(action);
73
- await option.click();
74
- }
75
- async dropdownSelection(selectValue, locator, index) {
76
- await this.ruleActionLocator.nth(index).locator(locator).click();
77
- await this.getOptionLocator(selectValue).nth(0).click();
78
- }
79
- async insertCheckInActionValues(checkInValue, index) {
80
- await this.ruleActionLocator.nth(index).locator(this.actionCheckInInputLocator).fill(checkInValue);
81
- }
82
- async insertAddAspectActionValues(AspectValue, index) {
83
- await this.dropdownSelection(AspectValue, this.actionAspectNameLocator, index);
84
- }
85
- async insertAutoDeclareOptionsActionValues(autoDeclareOptionsValue, index) {
86
- await this.dropdownSelection(autoDeclareOptionsValue, this.actionAutoDeclareLocator, index);
87
- }
88
- async insertSimpleWorkflowActionValues(stepValue, index) {
89
- await this.ruleActionLocator.nth(index).locator(this.actionSimpleWorkflowStepInputLocator).fill(stepValue);
90
- await this.ruleActionLocator.nth(index).locator(this.actionSimpleWorkflowApproveFolderLocator).click();
91
- await this.page.locator(this.actionSimpleWorkflowActionChoiceLocator).click();
92
- await this.ruleActionLocator.nth(index).locator(this.actionSimpleWorkflowLabelApproveLocator).click();
93
- await this.ruleActionLocator.nth(index).locator(this.actionSimpleWorkflowSRejectStepLocator).fill(stepValue);
94
- await this.ruleActionLocator.nth(index).locator(this.actionSimpleWorkflowRejectFolderLocator).click();
95
- await this.page.locator(this.actionSimpleWorkflowActionChoiceLocator).click();
96
- }
97
- }
98
- ActionsDropdownComponent.rootElement = 'aca-edit-rule-dialog aca-rule-action-list';
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9ucy1kcm9wZG93bi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3BhZ2Utb2JqZWN0cy9jb21wb25lbnRzL2FjdGlvbnMtZHJvcGRvd24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBR0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE1BQU0sQ0FBTixJQUFZLFVBc0JYO0FBdEJELFdBQVksVUFBVTtJQUNwQixzQ0FBd0IsQ0FBQTtJQUN4QixvREFBc0MsQ0FBQTtJQUN0QyxvREFBc0MsQ0FBQTtJQUN0QyxrQ0FBb0IsQ0FBQTtJQUNwQix5REFBMkMsQ0FBQTtJQUMzQyxvQ0FBc0IsQ0FBQTtJQUN0QiwyQkFBYSxDQUFBO0lBQ2IsOENBQWdDLENBQUE7SUFDaEMsNEVBQThELENBQUE7SUFDOUQsNkNBQStCLENBQUE7SUFDL0IsNERBQThDLENBQUE7SUFDOUMsd0NBQTBCLENBQUE7SUFDMUIsK0JBQWlCLENBQUE7SUFDakIsMkJBQWEsQ0FBQTtJQUNiLDRDQUE4QixDQUFBO0lBQzlCLDJEQUE2QyxDQUFBO0lBQzdDLHNDQUF3QixDQUFBO0lBQ3hCLHFEQUF1QyxDQUFBO0lBQ3ZDLGdEQUFrQyxDQUFBO0lBQ2xDLG9FQUFzRCxDQUFBO0lBQ3RELGdFQUFrRCxDQUFBO0FBQ3BELENBQUMsRUF0QlcsVUFBVSxLQUFWLFVBQVUsUUFzQnJCO0FBRUQsTUFBTSxPQUFPLHdCQUF5QixTQUFRLGFBQWE7SUFrQnpELFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsSUFBSSxFQUFFLHdCQUF3QixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBaEI1QyxxQkFBZ0IsR0FBRyxDQUFDLFVBQWtCLEVBQVcsRUFBRSxDQUN6RCxJQUFJLENBQUMs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TSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsd0NBQXdDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN2RyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlFLE1BQU0sSUFBSSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLHVDQUF1QyxDQUFDLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDdEcsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsc0NBQXNDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDN0csTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsdUNBQXVDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUN0RyxNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyx1Q0FBdUMsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ2hGLENBQUM7O0FBeERjLG9DQUFXLEdBQUcsMkNBQTJDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgTG9jYXRvciwgUGFnZSB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuXG5leHBvcnQgZW51bSBBY3Rpb25UeXBlIHtcbiAgQWRkQXNwZWN0ID0gJ0FkZCBhc3BlY3QnLFxuICBTaW1wbGVXb3JrZmxvdyA9ICdBZGQgc2ltcGxlIHdvcmtmbG93JyxcbiAgSW5jcmVtZW50Q291bnRlciA9ICdJbmNyZW1lbnQgQ291bnRlcicsXG4gIENoZWNrSW4gPSAnQ2hlY2sgaW4nLFxuICBBdXRvRGVjbGFyZU9wdGlvbnMgPSAnQXV0by1EZWNsYXJlIE9wdGlvbnMnLFxuICBDaGVja091dCA9ICdDaGVjayBvdXQnLFxuICBDb3B5ID0gJ0NvcHknLFxuICBFeGVjdXRlU2NyaXB0ID0gJ0V4ZWN1dGUgc2NyaXB0JyxcbiAgRXh0cmFjdENvbW1vbk1ldGFkYXRhRmllbGRzID0gJ0V4dHJhY3QgY29tbW9uIG1ldGFkYXRhIGZpZWxkcycsXG4gIEZpbGVBc1JlY29yZCA9ICdGaWxlIGFzIFJlY29yZCcsXG4gIEZpbGVWZXJzaW9uQXNSZWNvcmQgPSAnRmlsZSBWZXJzaW9uIGFzIFJlY29yZCcsXG4gIEhpZGVSZWNvcmQgPSAnSGlkZSBSZWNvcmQnLFxuICBJbXBvcnQgPSAnSW1wb3J0JyxcbiAgTW92ZSA9ICdNb3ZlJyxcbiAgUmVtb3ZlQXNwZWN0ID0gJ1JlbW92ZSBhc3BlY3QnLFxuICBSZXF1ZXN0QUlSZW5kaXRpb25zID0gJ1JlcXVlc3QgQUkgcmVuZGl0aW9ucycsXG4gIFNlbmRFbWFpbCA9ICdTZW5kIGVtYWlsJyxcbiAgU2V0UHJvcGVydHlWYWx1ZSA9ICdTZXQgcHJvcGVydHkgdmFsdWUnLFxuICBTcGVjaWFsaXNlVHlwZSA9ICdTcGVjaWFsaXNlIHR5cGUnLFxuICBUcmFuc2Zvcm1BbmRDb3B5Q29udGVudCA9ICdUcmFuc2Zvcm0gYW5kIGNvcHkgY29udGVudCcsXG4gIFRyYW5zZm9ybUFuZENvcHlJbWFnZSA9ICdUcmFuc2Zvcm0gYW5kIGNvcHkgaW1hZ2UnXG59XG5cbmV4cG9ydCBjbGFzcyBBY3Rpb25zRHJvcGRvd25Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBzdGF0aWMgcm9vdEVsZW1lbnQgPSAnYWNhLWVkaXQtcnVsZS1kaWFsb2cgYWNhLXJ1bGUtYWN0aW9uLWxpc3QnO1xuXG4gIHByaXZhdGUgZ2V0T3B0aW9uTG9jYXRvciA9IChvcHRpb25OYW1lOiBzdHJpbmcpOiBMb2NhdG9yID0+XG4gICAgdGhpcy5wYWdlLmxvY2F0b3IoJy5tYXQtbWRjLXNlbGVjdC1wYW5lbCAubWRjLWxpc3QtaXRlbV9fcHJpbWFyeS10ZXh0JywgeyBoYXNUZXh0OiBvcHRpb25OYW1lIH0pLmZpcnN0KCk7XG4gIHByaXZhdGUgcnVsZUFjdGlvbkxvY2F0b3IgPSB0aGlzLmdldENoaWxkKCdhY2EtcnVsZS1hY3Rpb24nKTtcbiAgcHJpdmF0ZSBhZGRBY3Rpb25CdXR0b25Mb2NhdG9yID0gdGhpcy5nZXRDaGlsZCgnW2RhdGEtYXV0b21hdGlvbi1pZD1cInJ1bGUtYWN0aW9uLWxpc3QtYWRkLWFjdGlvbi1idXR0b25cIl0nKTtcbiAgcHJpdmF0ZSBhY3Rpb25Ecm9wZG93bkxvY2F0b3IgPSB0aGlzLmdldENoaWxkKCdbZGF0YS1hdXRvbWF0aW9uLWlkPVwicnVsZS1hY3Rpb24tc2VsZWN0XCJdJyk7XG4gIHByaXZhdGUgYWN0aW9uQXNwZWN0TmFtZUxvY2F0b3IgPSAnW2RhdGEtYXV0b21hdGlvbi1pZD1cImhlYWRlci1hc3BlY3QtbmFtZVwiXSAuYWRmLXByb3BlcnR5LWZpZWxkJztcbiAgcHJpdmF0ZSBhY3Rpb25DaGVja0luSW5wdXRMb2NhdG9yID0gJ1tkYXRhLWF1dG9tYXRpb24taWQ9XCJoZWFkZXItZGVzY3JpcHRpb25cIl0gaW5wdXQnO1xuICBwcml2YXRlIGFjdGlvbkF1dG9EZWNsYXJlTG9jYXRvciA9ICdbZGF0YS1hdXRvbWF0aW9uLWlkPVwiaGVhZGVyLXZlcnNpb25cIl0gbWF0LXNlbGVjdCc7XG4gIHByaXZhdGUgYWN0aW9uU2ltcGxlV29ya2Zsb3dTdGVwSW5wdXRMb2NhdG9yID0gJ1tkYXRhLWF1dG9tYXRpb24taWQ9XCJoZWFkZXItYXBwcm92ZS1zdGVwXCJdIGlucHV0JztcbiAgcHJpdmF0ZSBhY3Rpb25TaW1wbGVXb3JrZmxvd0FwcHJvdmVGb2xkZXJMb2NhdG9yID0gYFtkYXRhLWF1dG9tYXRpb24taWQ9XCJoZWFkZXItYXBwcm92ZS1mb2xkZXJcIl0gbWF0LWljb25gO1xuICBwcml2YXRlIGFjdGlvblNpbXBsZVdvcmtmbG93QWN0aW9uQ2hvaWNlTG9jYXRvciA9ICdbZGF0YS1hdXRvbWF0aW9uLWlkPVwiY29udGVudC1ub2RlLXNlbGVjdG9yLWFjdGlvbnMtY2hvb3NlXCJdJztcbiAgcHJpdmF0ZSBhY3Rpb25TaW1wbGVXb3JrZmxvd0xhYmVsQXBwcm92ZUxvY2F0b3IgPSBgW2RhdGEtYXV0b21hdGlvbi1pZD1cImNhcmQtYm9vbGVhbi1sYWJlbC1hcHByb3ZlLW1vdmVcIl1gO1xuICBwcml2YXRlIGFjdGlvblNpbXBsZVdvcmtmbG93U1JlamVjdFN0ZXBMb2NhdG9yID0gJ1tkYXRhLWF1dG9tYXRpb24taWQ9XCJoZWFkZXItcmVqZWN0LXN0ZXBcIl0gaW5wdXQnO1xuICBwcml2YXRlIGFjdGlvblNpbXBsZVdvcmtmbG93UmVqZWN0Rm9sZGVyTG9jYXRvciA9IGBbZGF0YS1hdXRvbWF0aW9uLWlkPVwiaGVhZGVyLXJlamVjdC1mb2xkZXJcIl0gaW5wdXRgO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBBY3Rpb25zRHJvcGRvd25Db21wb25lbnQucm9vdEVsZW1lbnQpO1xuICB9XG5cbiAgYXN5bmMgc2VsZWN0QWN0aW9uKGFjdGlvbjogUGFydGlhbDxBY3Rpb25UeXBlPiwgaW5kZXg6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmIChpbmRleCA+IDApIHtcbiAgICAgIGF3YWl0IHRoaXMuYWRkQWN0aW9uQnV0dG9uTG9jYXRvci5jbGljaygpO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLmFjdGlvbkRyb3Bkb3duTG9jYXRvci5udGgoaW5kZXgpLmhvdmVyKHsgdGltZW91dDogMTAwMCB9KTtcbiAgICBhd2FpdCB0aGlzLmFjdGlvbkRyb3Bkb3duTG9jYXRvci5udGgoaW5kZXgpLmNsaWNrKCk7XG4gICAgY29uc3Qgb3B0aW9uID0gdGhpcy5nZXRPcHRpb25Mb2NhdG9yKGFjdGlvbik7XG4gICAgYXdhaXQgb3B0aW9uLmNsaWNrKCk7XG4gIH1cblxuICBhc3luYyBkcm9wZG93blNlbGVjdGlvbihzZWxlY3RWYWx1ZTogc3RyaW5nLCBsb2NhdG9yOiBzdHJpbmcsIGluZGV4OiBudW1iZXIpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLnJ1bGVBY3Rpb25Mb2NhdG9yLm50aChpbmRleCkubG9jYXRvcihsb2NhdG9yKS5jbGljaygpO1xuICAgIGF3YWl0IHRoaXMuZ2V0T3B0aW9uTG9jYXRvcihzZWxlY3RWYWx1ZSkubnRoKDApLmNsaWNrKCk7XG4gIH1cblxuICBhc3luYyBpbnNlcnRDaGVja0luQWN0aW9uVmFsdWVzKGNoZWNrSW5WYWx1ZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5ydWxlQWN0aW9uTG9jYXRvci5udGgoaW5kZXgpLmxvY2F0b3IodGhpcy5hY3Rpb25DaGVja0luSW5wdXRMb2NhdG9yKS5maWxsKGNoZWNrSW5WYWx1ZSk7XG4gIH1cblxuICBhc3luYyBpbnNlcnRBZGRBc3BlY3RBY3Rpb25WYWx1ZXMoQXNwZWN0VmFsdWU6IHN0cmluZywgaW5kZXg6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZHJvcGRvd25TZWxlY3Rpb24oQXNwZWN0VmFsdWUsIHRoaXMuYWN0aW9uQXNwZWN0TmFtZUxvY2F0b3IsIGluZGV4KTtcbiAgfVxuXG4gIGFzeW5jIGluc2VydEF1dG9EZWNsYXJlT3B0aW9uc0FjdGlvblZhbHVlcyhhdXRvRGVjbGFyZU9wdGlvbnNWYWx1ZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5kcm9wZG93blNlbGVjdGlvbihhdXRvRGVjbGFyZU9wdGlvbnNWYWx1ZSwgdGhpcy5hY3Rpb25BdXRvRGVjbGFyZUxvY2F0b3IsIGluZGV4KTtcbiAgfVxuXG4gIGFzeW5jIGluc2VydFNpbXBsZVdvcmtmbG93QWN0aW9uVmFsdWVzKHN0ZXBWYWx1ZTogc3RyaW5nLCBpbmRleDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5ydWxlQWN0aW9uTG9jYXRvci5udGgoaW5kZXgpLmxvY2F0b3IodGhpcy5hY3Rpb25TaW1wbGVXb3JrZmxvd1N0ZXBJbnB1dExvY2F0b3IpLmZpbGwoc3RlcFZhbHVlKTtcbiAgICBhd2FpdCB0aGlzLnJ1bGVBY3Rpb25Mb2NhdG9yLm50aChpbmRleCkubG9jYXRvcih0aGlzLmFjdGlvblNpbXBsZVdvcmtmbG93QXBwcm92ZUZvbGRlckxvY2F0b3IpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5wYWdlLmxvY2F0b3IodGhpcy5hY3Rpb25TaW1wbGVXb3JrZmxvd0FjdGlvbkNob2ljZUxvY2F0b3IpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5ydWxlQWN0aW9uTG9jYXRvci5udGgoaW5kZXgpLmxvY2F0b3IodGhpcy5hY3Rpb25TaW1wbGVXb3JrZmxvd0xhYmVsQXBwcm92ZUxvY2F0b3IpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5ydWxlQWN0aW9uTG9jYXRvci5udGgoaW5kZXgpLmxvY2F0b3IodGhpcy5hY3Rpb25TaW1wbGVXb3JrZmxvd1NSZWplY3RTdGVwTG9jYXRvcikuZmlsbChzdGVwVmFsdWUpO1xuICAgIGF3YWl0IHRoaXMucnVsZUFjdGlvbkxvY2F0b3IubnRoKGluZGV4KS5sb2NhdG9yKHRoaXMuYWN0aW9uU2ltcGxlV29ya2Zsb3dSZWplY3RGb2xkZXJMb2NhdG9yKS5jbGljaygpO1xuICAgIGF3YWl0IHRoaXMucGFnZS5sb2NhdG9yKHRoaXMuYWN0aW9uU2ltcGxlV29ya2Zsb3dBY3Rpb25DaG9pY2VMb2NhdG9yKS5jbGljaygpO1xuICB9XG59XG4iXX0=
@@ -1,83 +0,0 @@
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 { BaseComponent } from './base.component';
25
- import { expect } from '@playwright/test';
26
- export class AdfInfoDrawerComponent extends BaseComponent {
27
- constructor(page) {
28
- super(page, AdfInfoDrawerComponent.rootElement);
29
- this.getNameField = (labelText) => this.getChild(`[data-automation-id="library-name-properties-wrapper"] input[placeholder='${labelText}']`);
30
- this.getIdField = (labelText) => this.getChild(`[data-automation-id="library-id-properties-wrapper"] input[placeholder='${labelText}']`);
31
- this.getVisibilityField = (labelText) => this.getChild(`[data-automation-id="library-visibility-properties-wrapper"] mat-select[ng-reflect-placeholder='${labelText}']`);
32
- this.getDescriptionField = this.getChild('[data-automation-id="library-description-properties-wrapper"] textarea');
33
- this.propertiesTab = this.page.getByRole('tab', { name: 'Properties' });
34
- this.commentsTab = this.page.getByRole('tab', { name: 'Comments' });
35
- this.infoDrawerTabs = this.getChild('.adf-info-drawer-tab');
36
- this.commentInputField = this.page.locator('#comment-input');
37
- this.commentsHeader = this.getChild('#comment-header');
38
- this.addCommentButton = this.getChild('[data-automation-id="comments-input-add"]');
39
- this.commentsList = this.getChild('.adf-comment-list-item');
40
- this.commentUsername = this.getChild('.adf-comment-user-name');
41
- this.commentTextContent = this.getChild('.adf-comment-message');
42
- this.commentTimestamp = this.getChild('.adf-comment-message-time');
43
- this.infoDrawerPanel = this.page.locator('.adf-info-drawer');
44
- this.headerTitle = this.page.locator('.adf-info-drawer-layout-header-title').getByRole('heading');
45
- this.editButton = this.page.getByRole('button', { name: 'Edit' });
46
- this.cancelButton = this.page.getByRole('button', { name: 'Cancel' });
47
- this.updateButton = this.page.getByRole('button', { name: 'Update' });
48
- this.hintMessage = this.page.locator('mat-hint');
49
- this.errorMessage = this.page.locator('mat-error');
50
- this.expandDetailsButton = this.getChild(`button[title='Expand panel']`);
51
- this.expandedDetailsTabs = this.page.locator('.aca-details-container .mdc-tab__text-label');
52
- this.expandedDetailsPermissionsTab = this.expandedDetailsTabs.getByText('Permissions');
53
- this.nameField = this.page.locator('input[placeholder=Name]');
54
- this.idField = this.page.locator(`input[placeholder='Library ID']`);
55
- this.descriptionField = this.page.locator('textarea[placeholder=Description]');
56
- this.visibilityField = this.infoDrawerPanel.getByRole('combobox');
57
- this.selectVisibility = (visibilityOption) => this.page.getByRole('listbox').getByRole('option', { name: visibilityOption }).click();
58
- }
59
- async checkCommentsHeaderCount() {
60
- const commentsCountTextContent = await this.commentsHeader.textContent();
61
- const commentsCountString = commentsCountTextContent.match(/\d+/g)[0];
62
- return parseInt(commentsCountString, 10);
63
- }
64
- async verifyCommentsCountFromList(expectedNumber) {
65
- const commentsCountFromList = await this.commentsList.count();
66
- expect(commentsCountFromList).toEqual(expectedNumber);
67
- }
68
- async waitForComments() {
69
- await this.commentsList.first().waitFor();
70
- }
71
- async addCommentToNode(commentText) {
72
- await this.commentInputField.fill(commentText);
73
- await this.addCommentButton.click();
74
- }
75
- async getHeaderTitle() {
76
- return this.headerTitle.textContent();
77
- }
78
- async getTabsCount() {
79
- return this.infoDrawerTabs.count();
80
- }
81
- }
82
- AdfInfoDrawerComponent.rootElement = 'adf-info-drawer';
83
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRmLWluZm8tZHJhd2VyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1wbGF5d3JpZ2h0LXNoYXJlZC9zcmMvcGFnZS1vYmplY3RzL2NvbXBvbmVudHMvYWRmLWluZm8tZHJhd2VyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNqRCxPQUFPLEVBQVEsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFaEQsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGFBQWE7SUFHdkQsWUFBWSxJQUFVO1FBQ3BCLEtBQUssQ0FBQyxJQUFJLEVBQUUsc0JBQXNCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFHM0MsaUJBQVksR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUMxQyxJQUFJLENBQUMsUUFBUSxDQUFDLDZFQUE2RSxTQUFTLElBQUksQ0FBQyxDQUFDO1FBQ3JHLGVBQVUsR0FBRyxDQUFDLFNBQWlCLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsMkVBQTJFLFNBQVMsSUFBSSxDQUFDLENBQUM7UUFDNUksdUJBQWtCLEdBQUcsQ0FBQyxTQUFpQixFQUFFLEVBQUUsQ0FDaEQsSUFBSSxDQUFDLFFBQVEsQ0FBQyxtR0FBbUcsU0FBUyxJQUFJLENBQUMsQ0FBQztRQUMzSCx3QkFBbUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdFQUF3RSxDQUFDLENBQUM7UUFDOUcsa0JBQWEsR0FBRyxJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQztRQUNuRSxnQkFBVyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUss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LENBQUMsQ0FBQztRQUN0RSxPQUFPLFFBQVEsQ0FBQyxtQkFBbUIsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMzQyxDQUFDO0lBRUQsS0FBSyxDQUFDLDJCQUEyQixDQUFDLGNBQXNCO1FBQ3RELE1BQU0scUJBQXFCLEdBQUcsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQzlELE1BQU0sQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsS0FBSyxDQUFDLGVBQWU7UUFDbkIsTUFBTSxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUssRUFBRSxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzVDLENBQUM7SUFFRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsV0FBbUI7UUFDeEMsTUFBTSxJQUFJLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQy9DLE1BQU0sSUFBSSxDQUFDLGdCQUFnQixDQUFDLEtBQUssRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLLENBQUMsY0FBYztRQUNsQixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDeEMsQ0FBQztJQUVELEtBQUssQ0FBQyxZQUFZO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUNyQyxDQUFDOztBQWhFYyxrQ0FBVyxHQUFHLGlCQUFpQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgwqkgMjAwNS0yMDI0IEh5bGFuZCBTb2Z0d2FyZSwgSW5jLiBhbmQgaXRzIGFmZmlsaWF0ZXMuIEFsbCByaWdodHMgcmVzZXJ2ZWQuXG4gKlxuICogQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbi5cbiAqIElmIHRoZSBzb2Z0d2FyZSB3YXMgcHVyY2hhc2VkIHVuZGVyIGEgcGFpZCBBbGZyZXNjbyBsaWNlbnNlLCB0aGUgdGVybXMgb2ZcbiAqIHRoZSBwYWlkIGxpY2Vuc2UgYWdyZWVtZW50IHdpbGwgcHJldmFpbC4gT3RoZXJ3aXNlLCB0aGUgc29mdHdhcmUgaXNcbiAqIHByb3ZpZGVkIHVuZGVyIHRoZSBmb2xsb3dpbmcgb3BlbiBzb3VyY2UgbGljZW5zZSB0ZXJtczpcbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vciBtb2RpZnlcbiAqIGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzIHB1Ymxpc2hlZCBieVxuICogdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwgb3JcbiAqIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZVxuICogR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIExlc3NlciBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBmcm9tIEh5bGFuZCBTb2Z0d2FyZS4gSWYgbm90LCBzZWUgPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+LlxuICovXG5cbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2UsIGV4cGVjdCB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuXG5leHBvcnQgY2xhc3MgQWRmSW5mb0RyYXdlckNvbXBvbmVudCBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIHN0YXRpYyByb290RWxlbWVudCA9ICdhZGYtaW5mby1kcmF3ZXInO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBBZGZJbmZvRHJhd2VyQ29tcG9uZW50LnJvb3RFbGVtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBnZXROYW1lRmllbGQgPSAobGFiZWxUZXh0OiBzdHJpbmcpID0+XG4gICAgdGhpcy5nZXRDaGlsZChgW2RhdGEtYXV0b21hdGlvbi1pZD1cImxpYnJhcnktbmFtZS1wcm9wZXJ0aWVzLXdyYXBwZXJcIl0gaW5wdXRbcGxhY2Vob2xkZXI9JyR7bGFiZWxUZXh0fSddYCk7XG4gIHB1YmxpYyBnZXRJZEZpZWxkID0gKGxhYmVsVGV4dDogc3RyaW5nKSA9PiB0aGlzLmdldENoaWxkKGBbZGF0YS1hdXRvbWF0aW9uLWlkPVwibGlicmFyeS1pZC1wcm9wZXJ0aWVzLXdyYXBwZXJcIl0gaW5wdXRbcGxhY2Vob2xkZXI9JyR7bGFiZWxUZXh0fSddYCk7XG4gIHB1YmxpYyBnZXRWaXNpYmlsaXR5RmllbGQgPSAobGFiZWxUZXh0OiBzdHJpbmcpID0+XG4gICAgdGhpcy5nZXRDaGlsZChgW2RhdGEtYXV0b21hdGlvbi1pZD1cImxpYnJhcnktdmlzaWJpbGl0eS1wcm9wZXJ0aWVzLXdyYXBwZXJcIl0gbWF0LXNlbGVjdFtuZy1yZWZsZWN0LXBsYWNlaG9sZGVyPScke2xhYmVsVGV4dH0nXWApO1xuICBwdWJsaWMgZ2V0RGVzY3JpcHRpb25GaWVsZCA9IHRoaXMuZ2V0Q2hpbGQoJ1tkYXRhLWF1dG9tYXRpb24taWQ9XCJsaWJyYXJ5LWRlc2NyaXB0aW9uLXByb3BlcnRpZXMtd3JhcHBlclwiXSB0ZXh0YXJlYScpO1xuICBwdWJsaWMgcHJvcGVydGllc1RhYiA9IHRoaXMucGFnZS5nZXRCeVJvbGUoJ3RhYicsIHsgbmFtZTogJ1Byb3BlcnRpZXMnIH0pO1xuICBwdWJsaWMgY29tbWVudHNUYWIgPSB0aGlzLnBhZ2UuZ2V0QnlSb2xlKCd0YWInLCB7IG5hbWU6ICdDb21tZW50cycgfSk7XG4gIHB1YmxpYyBpbmZvRHJhd2VyVGFicyA9IHRoaXMuZ2V0Q2hpbGQoJy5hZGYtaW5mby1kcmF3ZXItdGFiJyk7XG4gIHB1YmxpYyBjb21tZW50SW5wdXRGaWVsZCA9IHRoaXMucGFnZS5sb2NhdG9yKCcjY29tbWVudC1pbnB1dCcpO1xuICBwdWJsaWMgY29tbWVudHNIZWFkZXIgPSB0aGlzLmdldENoaWxkKCcjY29tbWVudC1oZWFkZXInKTtcbiAgcHVibGljIGFkZENvbW1lbnRCdXR0b24gPSB0aGlzLmdldENoaWxkKCdbZGF0YS1hdXRvbWF0aW9uLWlkPVwiY29tbWVudHMtaW5wdXQtYWRkXCJdJyk7XG4gIHB1YmxpYyBjb21tZW50c0xpc3QgPSB0aGlzLmdldENoaWxkKCcuYWRmLWNvbW1lbnQtbGlzdC1pdGVtJyk7XG4gIHB1YmxpYyBjb21tZW50VXNlcm5hbWUgPSB0aGlzLmdldENoaWxkKCcuYWRmLWNvbW1lbnQtdXNlci1uYW1lJyk7XG4gIHB1YmxpYyBjb21tZW50VGV4dENvbnRlbnQgPSB0aGlzLmdldENoaWxkKCcuYWRmLWNvbW1lbnQtbWVzc2FnZScpO1xuICBwdWJsaWMgY29tbWVudFRpbWVzdGFtcCA9IHRoaXMuZ2V0Q2hpbGQoJy5hZGYtY29tbWVudC1tZXNzYWdlLXRpbWUnKTtcbiAgcHVibGljIGluZm9EcmF3ZXJQYW5lbCA9IHRoaXMucGFnZS5sb2NhdG9yKCcuYWRmLWluZm8tZHJhd2VyJyk7XG4gIHB1YmxpYyBoZWFkZXJUaXRsZSA9IHRoaXMucGFnZS5sb2NhdG9yKCcuYWRmLWluZm8tZHJhd2VyLWxheW91dC1oZWFkZXItdGl0bGUnKS5nZXRCeVJvbGUoJ2hlYWRpbmcnKTtcbiAgcHVibGljIGVkaXRCdXR0b24gPSB0aGlzLnBhZ2UuZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6ICdFZGl0JyB9KTtcbiAgcHVibGljIGNhbmNlbEJ1dHRvbiA9IHRoaXMucGFnZS5nZXRCeVJvbGUoJ2J1dHRvbicsIHsgbmFtZTogJ0NhbmNlbCcgfSk7XG4gIHB1YmxpYyB1cGRhdGVCdXR0b24gPSB0aGlzLnBhZ2UuZ2V0QnlSb2xlKCdidXR0b24nLCB7IG5hbWU6ICdVcGRhdGUnIH0pO1xuICBwdWJsaWMgaGludE1lc3NhZ2UgPSB0aGlzLnBhZ2UubG9jYXRvcignbWF0LWhpbnQnKTtcbiAgcHVibGljIGVycm9yTWVzc2FnZSA9IHRoaXMucGFnZS5sb2NhdG9yKCdtYXQtZXJyb3InKTtcbiAgcHVibGljIGV4cGFuZERldGFpbHNCdXR0b24gPSB0aGlzLmdldENoaWxkKGBidXR0b25bdGl0bGU9J0V4cGFuZCBwYW5lbCddYCk7XG4gIHB1YmxpYyBleHBhbmRlZERldGFpbHNUYWJzID0gdGhpcy5wYWdlLmxvY2F0b3IoJy5hY2EtZGV0YWlscy1jb250YWluZXIgLm1kYy10YWJfX3RleHQtbGFiZWwnKTtcbiAgcHVibGljIGV4cGFuZGVkRGV0YWlsc1Blcm1pc3Npb25zVGFiID0gdGhpcy5leHBhbmRlZERldGFpbHNUYWJzLmdldEJ5VGV4dCgnUGVybWlzc2lvbnMnKTtcbiAgcHVibGljIG5hbWVGaWVsZCA9IHRoaXMucGFnZS5sb2NhdG9yKCdpbnB1dFtwbGFjZWhvbGRlcj1OYW1lXScpO1xuICBwdWJsaWMgaWRGaWVsZCA9IHRoaXMucGFnZS5sb2NhdG9yKGBpbnB1dFtwbGFjZWhvbGRlcj0nTGlicmFyeSBJRCddYCk7XG4gIHB1YmxpYyBkZXNjcmlwdGlvbkZpZWxkID0gdGhpcy5wYWdlLmxvY2F0b3IoJ3RleHRhcmVhW3BsYWNlaG9sZGVyPURlc2NyaXB0aW9uXScpO1xuICBwdWJsaWMgdmlzaWJpbGl0eUZpZWxkID0gdGhpcy5pbmZvRHJhd2VyUGFuZWwuZ2V0QnlSb2xlKCdjb21ib2JveCcpO1xuICBwdWJsaWMgc2VsZWN0VmlzaWJpbGl0eSA9ICh2aXNpYmlsaXR5T3B0aW9uOiBzdHJpbmcpID0+IHRoaXMucGFnZS5nZXRCeVJvbGUoJ2xpc3Rib3gnKS5nZXRCeVJvbGUoJ29wdGlvbicsIHsgbmFtZTogdmlzaWJpbGl0eU9wdGlvbiB9KS5jbGljaygpO1xuXG4gIGFzeW5jIGNoZWNrQ29tbWVudHNIZWFkZXJDb3VudCgpOiBQcm9taXNlPG51bWJlcj4ge1xuICAgIGNvbnN0IGNvbW1lbnRzQ291bnRUZXh0Q29udGVudCA9IGF3YWl0IHRoaXMuY29tbWVudHNIZWFkZXIudGV4dENvbnRlbnQoKTtcbiAgICBjb25zdCBjb21tZW50c0NvdW50U3RyaW5nID0gY29tbWVudHNDb3VudFRleHRDb250ZW50Lm1hdGNoKC9cXGQrL2cpWzBdO1xuICAgIHJldHVybiBwYXJzZUludChjb21tZW50c0NvdW50U3RyaW5nLCAxMCk7XG4gIH1cblxuICBhc3luYyB2ZXJpZnlDb21tZW50c0NvdW50RnJvbUxpc3QoZXhwZWN0ZWROdW1iZXI6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGNvbW1lbnRzQ291bnRGcm9tTGlzdCA9IGF3YWl0IHRoaXMuY29tbWVudHNMaXN0LmNvdW50KCk7XG4gICAgZXhwZWN0KGNvbW1lbnRzQ291bnRGcm9tTGlzdCkudG9FcXVhbChleHBlY3RlZE51bWJlcik7XG4gIH1cblxuICBhc3luYyB3YWl0Rm9yQ29tbWVudHMoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5jb21tZW50c0xpc3QuZmlyc3QoKS53YWl0Rm9yKCk7XG4gIH1cblxuICBhc3luYyBhZGRDb21tZW50VG9Ob2RlKGNvbW1lbnRUZXh0OiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmNvbW1lbnRJbnB1dEZpZWxkLmZpbGwoY29tbWVudFRleHQpO1xuICAgIGF3YWl0IHRoaXMuYWRkQ29tbWVudEJ1dHRvbi5jbGljaygpO1xuICB9XG5cbiAgYXN5bmMgZ2V0SGVhZGVyVGl0bGUoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5oZWFkZXJUaXRsZS50ZXh0Q29udGVudCgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0VGFic0NvdW50KCk6IFByb21pc2U8bnVtYmVyPiB7XG4gICAgcmV0dXJuIHRoaXMuaW5mb0RyYXdlclRhYnMuY291bnQoKTtcbiAgfVxufVxuIl19