@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,69 +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 { BaseComponent } from '../base.component';
26
- export class ManageRules extends BaseComponent {
27
- constructor(page) {
28
- super(page, ManageRules.rootElement);
29
- this.getGroupsList = (optionName) => this.getChild('.aca-rule-list-item__header', { hasText: optionName });
30
- this.ruleToggle = this.getChild('.aca-manage-rules__container .mdc-switch').first();
31
- this.ruleToggleFalse = this.getChild('aca-rule-list-grouping aca-rule-list-item .mdc-switch--unselected').first();
32
- this.ruleDetailsTitle = this.getChild('.aca-manage-rules__container__rule-details__header__title__name');
33
- this.ruleDetailsDeleteButton = this.getChild('#delete-rule-btn');
34
- this.ruleDetailsEditButton = this.getChild('#edit-rule-btn');
35
- this.ruleDetailsWhenText = this.getChild('[data-automation-id="rule-details-triggers-component"]');
36
- this.ruleDetailsPerformActionsDiv = this.getChild('adf-card-view-textitem mat-form-field input');
37
- this.rulesEmptyListTitle = this.getChild('.adf-empty-content__title');
38
- this.ruleActions = this.getChild('aca-rule-action');
39
- this.ruleConditionsInGroup = this.getChild('aca-rule-composite-condition aca-rule-simple-condition');
40
- this.ruleDescription = this.getChild('.aca-manage-rules__container__rule-details__header__title__description');
41
- }
42
- async checkAspects(aspects) {
43
- for (let i = 0; i < aspects.length; i++) {
44
- const aspectsActions = await this.ruleDetailsPerformActionsDiv.nth(i).inputValue();
45
- expect(aspects).toContain(aspectsActions);
46
- }
47
- }
48
- async checkIfRuleListEmpty() {
49
- return this.rulesEmptyListTitle.isVisible();
50
- }
51
- async checkIfRuleIsOnTheList(ruleName) {
52
- await expect(this.getGroupsList(ruleName)).toBeVisible({ timeout: 5000 });
53
- }
54
- async countConditionsInGroup() {
55
- return this.ruleConditionsInGroup.count();
56
- }
57
- async turnOffRuleToggle() {
58
- await expect(async () => {
59
- await this.ruleToggle.hover({ timeout: 1000 });
60
- await this.ruleToggle.click();
61
- await expect(this.ruleToggleFalse).toBeVisible();
62
- }).toPass({
63
- intervals: [2000, 2000, 2000, 2000, 2000, 2000, 2000],
64
- timeout: 20000
65
- });
66
- }
67
- }
68
- ManageRules.rootElement = '.aca-manage-rules';
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFuYWdlLXJ1bGVzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FjYS1wbGF5d3JpZ2h0LXNoYXJlZC9zcmMvcGFnZS1vYmplY3RzL2NvbXBvbmVudHMvbWFuYWdlUnVsZXMvbWFuYWdlLXJ1bGVzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBaUIsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDekQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRWxELE1BQU0sT0FBTyxXQUFZLFNBQVEsYUFBYTtJQWdCNUMsWUFBWSxJQUFVO1FBQ3BCLEtBQUssQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBZGhDLGtCQUFhLEdBQUcsQ0FBQyxVQUFrQixFQUFXLEVBQUUsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLDZCQUE2QixFQUFFLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUM7UUFDdkgsZUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsMENBQTBDLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMvRSxvQkFBZSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsbUVBQW1FLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUM3RyxxQkFBZ0IsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGlFQUFpRSxDQUFDLENBQUM7UUFDcEcsNEJBQXVCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1FBQzVELDBCQUFxQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztRQUN4RCx3QkFBbUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7UUFDOUYsaUNBQTRCLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQzVGLHdCQUFtQixHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsMkJBQTJCLENBQUMsQ0FBQztRQUNqRSxnQkFBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsaUJBQWlCLENBQUMsQ0FBQztRQUMvQywwQkFBcUIsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdEQUF3RCxDQUFDLENBQUM7UUFDaEcsb0JBQWUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdFQUF3RSxDQUFDLENBQUM7SUFJakgsQ0FBQztJQUVELEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBaUI7UUFDbEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDdkMsTUFBTSxjQUFjLEdBQUcsTUFBTSxJQUFJLENBQUMsNEJBQTRCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDO1lBQ25GLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxTQUFTLENBQUMsY0FBYyxDQUFDLENBQUM7U0FDM0M7SUFDSCxDQUFDO0lBRUQsS0FBSyxDQUFDLG9CQUFvQjtRQUN4QixPQUFPLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUM5QyxDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQixDQUFDLFFBQWdCO1FBQzNDLE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM1RSxDQUFDO0lBRUQsS0FBSyxDQUFDLHNCQUFzQjtRQUMxQixPQUFPLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUM1QyxDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixNQUFNLE1BQU0sQ0FBQyxLQUFLLElBQUksRUFBRTtZQUN0QixNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDL0MsTUFBTSxJQUFJLENBQUMsVUFBVSxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQzlCLE1BQU0sTUFBTSxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztRQUNuRCxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUM7WUFDUixTQUFTLEVBQUUsQ0FBQyxJQUFLLEVBQUUsSUFBSyxFQUFFLElBQUssRUFBRSxJQUFLLEVBQUUsSUFBSyxFQUFFLElBQUssRUFBRSxJQUFLLENBQUM7WUFDNUQsT0FBTyxFQUFFLEtBQU07U0FDaEIsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUEvQ2MsdUJBQVcsR0FBRyxtQkFBbUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBMb2NhdG9yLCBQYWdlLCBleHBlY3QgfSBmcm9tICdAcGxheXdyaWdodC90ZXN0JztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi9iYXNlLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjbGFzcyBNYW5hZ2VSdWxlcyBleHRlbmRzIEJhc2VDb21wb25lbnQge1xuICBwcml2YXRlIHN0YXRpYyByb290RWxlbWVudCA9ICcuYWNhLW1hbmFnZS1ydWxlcyc7XG5cbiAgcHVibGljIGdldEdyb3Vwc0xpc3QgPSAob3B0aW9uTmFtZTogc3RyaW5nKTogTG9jYXRvciA9PiB0aGlzLmdldENoaWxkKCcuYWNhLXJ1bGUtbGlzdC1pdGVtX19oZWFkZXInLCB7IGhhc1RleHQ6IG9wdGlvbk5hbWUgfSk7XG4gIHB1YmxpYyBydWxlVG9nZ2xlID0gdGhpcy5nZXRDaGlsZCgnLmFjYS1tYW5hZ2UtcnVsZXNfX2NvbnRhaW5lciAubWRjLXN3aXRjaCcpLmZpcnN0KCk7XG4gIHB1YmxpYyBydWxlVG9nZ2xlRmFsc2UgPSB0aGlzLmdldENoaWxkKCdhY2EtcnVsZS1saXN0LWdyb3VwaW5nIGFjYS1ydWxlLWxpc3QtaXRlbSAubWRjLXN3aXRjaC0tdW5zZWxlY3RlZCcpLmZpcnN0KCk7XG4gIHB1YmxpYyBydWxlRGV0YWlsc1RpdGxlID0gdGhpcy5nZXRDaGlsZCgnLmFjYS1tYW5hZ2UtcnVsZXNfX2NvbnRhaW5lcl9fcnVsZS1kZXRhaWxzX19oZWFkZXJfX3RpdGxlX19uYW1lJyk7XG4gIHB1YmxpYyBydWxlRGV0YWlsc0RlbGV0ZUJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJyNkZWxldGUtcnVsZS1idG4nKTtcbiAgcHVibGljIHJ1bGVEZXRhaWxzRWRpdEJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoJyNlZGl0LXJ1bGUtYnRuJyk7XG4gIHB1YmxpYyBydWxlRGV0YWlsc1doZW5UZXh0ID0gdGhpcy5nZXRDaGlsZCgnW2RhdGEtYXV0b21hdGlvbi1pZD1cInJ1bGUtZGV0YWlscy10cmlnZ2Vycy1jb21wb25lbnRcIl0nKTtcbiAgcHVibGljIHJ1bGVEZXRhaWxzUGVyZm9ybUFjdGlvbnNEaXYgPSB0aGlzLmdldENoaWxkKCdhZGYtY2FyZC12aWV3LXRleHRpdGVtIG1hdC1mb3JtLWZpZWxkIGlucHV0Jyk7XG4gIHB1YmxpYyBydWxlc0VtcHR5TGlzdFRpdGxlID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1lbXB0eS1jb250ZW50X190aXRsZScpO1xuICBwdWJsaWMgcnVsZUFjdGlvbnMgPSB0aGlzLmdldENoaWxkKCdhY2EtcnVsZS1hY3Rpb24nKTtcbiAgcHVibGljIHJ1bGVDb25kaXRpb25zSW5Hcm91cCA9IHRoaXMuZ2V0Q2hpbGQoJ2FjYS1ydWxlLWNvbXBvc2l0ZS1jb25kaXRpb24gYWNhLXJ1bGUtc2ltcGxlLWNvbmRpdGlvbicpO1xuICBwdWJsaWMgcnVsZURlc2NyaXB0aW9uID0gdGhpcy5nZXRDaGlsZCgnLmFjYS1tYW5hZ2UtcnVsZXNfX2NvbnRhaW5lcl9fcnVsZS1kZXRhaWxzX19oZWFkZXJfX3RpdGxlX19kZXNjcmlwdGlvbicpO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBNYW5hZ2VSdWxlcy5yb290RWxlbWVudCk7XG4gIH1cblxuICBhc3luYyBjaGVja0FzcGVjdHMoYXNwZWN0czogc3RyaW5nW10pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8IGFzcGVjdHMubGVuZ3RoOyBpKyspIHtcbiAgICAgIGNvbnN0IGFzcGVjdHNBY3Rpb25zID0gYXdhaXQgdGhpcy5ydWxlRGV0YWlsc1BlcmZvcm1BY3Rpb25zRGl2Lm50aChpKS5pbnB1dFZhbHVlKCk7XG4gICAgICBleHBlY3QoYXNwZWN0cykudG9Db250YWluKGFzcGVjdHNBY3Rpb25zKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBjaGVja0lmUnVsZUxpc3RFbXB0eSgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5ydWxlc0VtcHR5TGlzdFRpdGxlLmlzVmlzaWJsZSgpO1xuICB9XG5cbiAgYXN5bmMgY2hlY2tJZlJ1bGVJc09uVGhlTGlzdChydWxlTmFtZTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgZXhwZWN0KHRoaXMuZ2V0R3JvdXBzTGlzdChydWxlTmFtZSkpLnRvQmVWaXNpYmxlKHsgdGltZW91dDogNTAwMCB9KTtcbiAgfVxuXG4gIGFzeW5jIGNvdW50Q29uZGl0aW9uc0luR3JvdXAoKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICByZXR1cm4gdGhpcy5ydWxlQ29uZGl0aW9uc0luR3JvdXAuY291bnQoKTtcbiAgfVxuXG4gIGFzeW5jIHR1cm5PZmZSdWxlVG9nZ2xlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IGV4cGVjdChhc3luYyAoKSA9PiB7XG4gICAgICBhd2FpdCB0aGlzLnJ1bGVUb2dnbGUuaG92ZXIoeyB0aW1lb3V0OiAxMDAwIH0pO1xuICAgICAgYXdhaXQgdGhpcy5ydWxlVG9nZ2xlLmNsaWNrKCk7XG4gICAgICBhd2FpdCBleHBlY3QodGhpcy5ydWxlVG9nZ2xlRmFsc2UpLnRvQmVWaXNpYmxlKCk7XG4gICAgfSkudG9QYXNzKHtcbiAgICAgIGludGVydmFsczogWzJfMDAwLCAyXzAwMCwgMl8wMDAsIDJfMDAwLCAyXzAwMCwgMl8wMDAsIDJfMDAwXSxcbiAgICAgIHRpbWVvdXQ6IDIwXzAwMFxuICAgIH0pO1xuICB9XG59XG4iXX0=
@@ -1,173 +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 { MatMenuComponent } from './dataTable/mat-menu.component';
26
- import { timeouts } from '../../utils';
27
- export var PaginationActionsType;
28
- (function (PaginationActionsType) {
29
- PaginationActionsType["PageSizeSelector"] = "Page size selector";
30
- PaginationActionsType["CurrentPageSelector"] = "Current page selector";
31
- PaginationActionsType["NextPageSelector"] = "Next page button";
32
- })(PaginationActionsType || (PaginationActionsType = {}));
33
- export class PaginationComponent extends BaseComponent {
34
- constructor(page) {
35
- super(page, PaginationComponent.rootElement);
36
- this.range = this.getChild('.adf-pagination__range');
37
- this.maxItems = this.getChild('.adf-pagination__max-items');
38
- this.currentPage = this.getChild('.adf-pagination__current-page');
39
- this.totalPages = this.getChild('.adf-pagination__total-pages');
40
- this.previousButton = this.getChild('.adf-pagination__previous-button');
41
- this.nextButton = this.getChild('.adf-pagination__next-button');
42
- this.maxItemsButton = this.getChild('.adf-pagination__max-items + button[mat-icon-button]');
43
- this.itemsPerPageMenu = new MatMenuComponent(this.page);
44
- this.currentPageLocator = this.getChild('.adf-pagination__current-page');
45
- this.totalPageLocator = this.getChild('.adf-pagination__total-pages');
46
- this.getArrowLocatorFor = (action) => this.getChild(`[aria-label="${action}"]`);
47
- }
48
- async setItemsPerPage(amount) {
49
- await this.getArrowLocatorFor(PaginationActionsType.PageSizeSelector).click();
50
- await this.itemsPerPageMenu.getButtonByText(amount.toString()).click();
51
- await this.spinnerWaitForReload();
52
- }
53
- async navigateToPage(pageNumber) {
54
- await this.getArrowLocatorFor(PaginationActionsType.CurrentPageSelector).click();
55
- await this.itemsPerPageMenu.getButtonByText(pageNumber.toString()).click();
56
- await this.spinnerWaitForReload();
57
- }
58
- async spinnerWaitForReload() {
59
- try {
60
- await this.page.locator('mat-progress-spinner').waitFor({ state: 'attached', timeout: 2000 });
61
- await this.page.locator('mat-progress-spinner').waitFor({ state: 'detached', timeout: 2000 });
62
- }
63
- catch (e) {
64
- this.logger.info('Spinner was not present');
65
- }
66
- }
67
- async getRange() {
68
- return this.range.innerText();
69
- }
70
- async getMaxItems() {
71
- return this.maxItems.innerText();
72
- }
73
- async getCurrentPage() {
74
- return this.currentPage.innerText();
75
- }
76
- async getTotalPages() {
77
- return this.totalPages.innerText();
78
- }
79
- async isPreviousEnabled() {
80
- return this.previousButton.isEnabled();
81
- }
82
- async isNextEnabled() {
83
- await this.page.waitForTimeout(timeouts.tiny);
84
- return this.nextButton.isEnabled();
85
- }
86
- async clickOnNextPage() {
87
- try {
88
- if (await this.isNextEnabled()) {
89
- await this.nextButton.click();
90
- }
91
- }
92
- catch (error) {
93
- throw new Error(`Failed on previous click: ${error}`);
94
- }
95
- }
96
- async clickOnPreviousPage() {
97
- try {
98
- if (await this.isPreviousEnabled()) {
99
- await this.previousButton.click();
100
- }
101
- }
102
- catch (error) {
103
- throw new Error(`Failed on previous click: ${error}`);
104
- }
105
- }
106
- async openMaxItemsMenu() {
107
- try {
108
- await this.maxItemsButton.waitFor({ state: 'visible' });
109
- await this.maxItemsButton.click();
110
- }
111
- catch (error) {
112
- throw new Error(`Open max items catch: ${error}`);
113
- }
114
- }
115
- async resetToDefaultPageSize() {
116
- try {
117
- await this.openMaxItemsMenu();
118
- await this.clickNthItem(1);
119
- await this.page.waitForTimeout(timeouts.tiny);
120
- }
121
- catch (error) {
122
- throw new Error(`Reset to default page size catch: ${error}`);
123
- }
124
- }
125
- async clickMenuItem(menuItem) {
126
- try {
127
- await this.page.getByRole('menuitem', { name: menuItem }).click();
128
- }
129
- catch (e) {
130
- throw new Error(`Click menu item catch : failed to click on: ${e}`);
131
- }
132
- }
133
- async getNthItem(nth) {
134
- return this.page.getByRole('menuitem').nth(nth - 1);
135
- }
136
- async getItemsCount() {
137
- return this.page.getByRole('menuitem').count();
138
- }
139
- async clickNthItem(nth) {
140
- try {
141
- await (await this.getNthItem(nth)).click();
142
- }
143
- catch (e) {
144
- throw new Error(`Click nth menu item catch: ${e}`);
145
- }
146
- }
147
- async closeMenu() {
148
- await this.page.keyboard.press('Escape');
149
- }
150
- async isRangePresent() {
151
- return this.range.isVisible();
152
- }
153
- async getMaxRange() {
154
- return this.range.textContent();
155
- }
156
- async isMaxItemsPresent() {
157
- return this.maxItems.isVisible();
158
- }
159
- async isCurrentPagePresent() {
160
- return this.currentPage.isVisible();
161
- }
162
- async isTotalPagesPresent() {
163
- return this.totalPages.isVisible();
164
- }
165
- async isPreviousButtonPresent() {
166
- return this.previousButton.isVisible();
167
- }
168
- async isNextButtonPresent() {
169
- return this.nextButton.isVisible();
170
- }
171
- }
172
- PaginationComponent.rootElement = 'adf-pagination';
173
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFnaW5hdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3BhZ2Utb2JqZWN0cy9jb21wb25lbnRzL3BhZ2luYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRWpELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFFdkMsTUFBTSxDQUFOLElBQVkscUJBSVg7QUFKRCxXQUFZLHFCQUFxQjtJQUMvQixnRUFBdUMsQ0FBQTtJQUN2QyxzRUFBNkMsQ0FBQTtJQUM3Qyw4REFBcUMsQ0FBQTtBQUN2QyxDQUFDLEVBSlcscUJBQXFCLEtBQXJCLHFCQUFxQixRQUloQztBQUVELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxhQUFhO0lBR3BELFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsSUFBSSxFQUFFLG1CQUFtQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBR3ZDLFVBQUssR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDaEQsYUFBUSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsNEJBQTRCLENBQUMsQ0FBQztRQUN2RCxnQkFBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsK0JBQStCLENBQUMsQ0FBQztRQUM3RCxlQUFVLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1FBQzNELG1CQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ25FLGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxD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QyxXQUFXLEVBQUUsQ0FBQztJQUNsQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixPQUFPLElBQUksQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDbkMsQ0FBQztJQUVELEtBQUssQ0FBQyxvQkFBb0I7UUFDeEIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFRCxLQUFLLENBQUMsbUJBQW1CO1FBQ3ZCLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxTQUFTLEVBQUUsQ0FBQztJQUNyQyxDQUFDO0lBRUQsS0FBSyxDQUFDLHVCQUF1QjtRQUMzQixPQUFPLElBQUksQ0FBQyxjQUFjLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDekMsQ0FBQztJQUVELEtBQUssQ0FBQyxtQkFBbUI7UUFDdkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3JDLENBQUM7O0FBL0pjLCtCQUFXLEdBQUcsZ0JBQWdCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgTG9jYXRvciwgUGFnZSB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuaW1wb3J0IHsgTWF0TWVudUNvbXBvbmVudCB9IGZyb20gJy4vZGF0YVRhYmxlL21hdC1tZW51LmNvbXBvbmVudCc7XG5pbXBvcnQgeyB0aW1lb3V0cyB9IGZyb20gJy4uLy4uL3V0aWxzJztcblxuZXhwb3J0IGVudW0gUGFnaW5hdGlvbkFjdGlvbnNUeXBlIHtcbiAgUGFnZVNpemVTZWxlY3RvciA9ICdQYWdlIHNpemUgc2VsZWN0b3InLFxuICBDdXJyZW50UGFnZVNlbGVjdG9yID0gJ0N1cnJlbnQgcGFnZSBzZWxlY3RvcicsXG4gIE5leHRQYWdlU2VsZWN0b3IgPSAnTmV4dCBwYWdlIGJ1dHRvbidcbn1cblxuZXhwb3J0IGNsYXNzIFBhZ2luYXRpb25Db21wb25lbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBzdGF0aWMgcm9vdEVsZW1lbnQgPSAnYWRmLXBhZ2luYXRpb24nO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBQYWdpbmF0aW9uQ29tcG9uZW50LnJvb3RFbGVtZW50KTtcbiAgfVxuXG4gIHByaXZhdGUgcmFuZ2UgPSB0aGlzLmdldENoaWxkKCcuYWRmLXBhZ2luYXRpb25fX3JhbmdlJyk7XG4gIHByaXZhdGUgbWF4SXRlbXMgPSB0aGlzLmdldENoaWxkKCcuYWRmLXBhZ2luYXRpb25fX21heC1pdGVtcycpO1xuICBwcml2YXRlIGN1cnJlbnRQYWdlID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX19jdXJyZW50LXBhZ2UnKTtcbiAgcHJpdmF0ZSB0b3RhbFBhZ2VzID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX190b3RhbC1wYWdlcycpO1xuICBwcml2YXRlIHByZXZpb3VzQnV0dG9uID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX19wcmV2aW91cy1idXR0b24nKTtcbiAgcHJpdmF0ZSBuZXh0QnV0dG9uID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX19uZXh0LWJ1dHRvbicpO1xuICBwcml2YXRlIG1heEl0ZW1zQnV0dG9uID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX19tYXgtaXRlbXMgKyBidXR0b25bbWF0LWljb24tYnV0dG9uXScpO1xuXG4gIHByaXZhdGUgaXRlbXNQZXJQYWdlTWVudSA9IG5ldyBNYXRNZW51Q29tcG9uZW50KHRoaXMucGFnZSk7XG5cbiAgcHVibGljIGN1cnJlbnRQYWdlTG9jYXRvciA9IHRoaXMuZ2V0Q2hpbGQoJy5hZGYtcGFnaW5hdGlvbl9fY3VycmVudC1wYWdlJyk7XG4gIHB1YmxpYyB0b3RhbFBhZ2VMb2NhdG9yID0gdGhpcy5nZXRDaGlsZCgnLmFkZi1wYWdpbmF0aW9uX190b3RhbC1wYWdlcycpO1xuICBwdWJsaWMgZ2V0QXJyb3dMb2NhdG9yRm9yID0gKGFjdGlvbjogUGFnaW5hdGlvbkFjdGlvbnNUeXBlKSA9PiB0aGlzLmdldENoaWxkKGBbYXJpYS1sYWJlbD1cIiR7YWN0aW9ufVwiXWApO1xuXG4gIGFzeW5jIHNldEl0ZW1zUGVyUGFnZShhbW91bnQ6IG51bWJlcik6IFByb21pc2U8dm9pZD4ge1xuICAgIGF3YWl0IHRoaXMuZ2V0QXJyb3dMb2NhdG9yRm9yKFBhZ2luYXRpb25BY3Rpb25zVHlwZS5QYWdlU2l6ZVNlbGVjdG9yKS5jbGljaygpO1xuICAgIGF3YWl0IHRoaXMuaXRlbXNQZXJQYWdlTWVudS5nZXRCdXR0b25CeVRleHQoYW1vdW50LnRvU3RyaW5nKCkpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5zcGlubmVyV2FpdEZvclJlbG9hZCgpO1xuICB9XG5cbiAgYXN5bmMgbmF2aWdhdGVUb1BhZ2UocGFnZU51bWJlcjogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5nZXRBcnJvd0xvY2F0b3JGb3IoUGFnaW5hdGlvbkFjdGlvbnNUeXBlLkN1cnJlbnRQYWdlU2VsZWN0b3IpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5pdGVtc1BlclBhZ2VNZW51LmdldEJ1dHRvbkJ5VGV4dChwYWdlTnVtYmVyLnRvU3RyaW5nKCkpLmNsaWNrKCk7XG4gICAgYXdhaXQgdGhpcy5zcGlubmVyV2FpdEZvclJlbG9hZCgpO1xuICB9XG5cbiAgYXN5bmMgc3Bpbm5lcldhaXRGb3JSZWxvYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMucGFnZS5sb2NhdG9yKCdtYXQtcHJvZ3Jlc3Mtc3Bpbm5lcicpLndhaXRGb3IoeyBzdGF0ZTogJ2F0dGFjaGVkJywgdGltZW91dDogMjAwMCB9KTtcbiAgICAgIGF3YWl0IHRoaXMucGFnZS5sb2NhdG9yKCdtYXQtcHJvZ3Jlc3Mtc3Bpbm5lcicpLndhaXRGb3IoeyBzdGF0ZTogJ2RldGFjaGVkJywgdGltZW91dDogMjAwMCB9KTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aGlzLmxvZ2dlci5pbmZvKCdTcGlubmVyIHdhcyBub3QgcHJlc2VudCcpO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGdldFJhbmdlKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMucmFuZ2UuaW5uZXJUZXh0KCk7XG4gIH1cblxuICBhc3luYyBnZXRNYXhJdGVtcygpOiBQcm9taXNlPHN0cmluZz4ge1xuICAgIHJldHVybiB0aGlzLm1heEl0ZW1zLmlubmVyVGV4dCgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0Q3VycmVudFBhZ2UoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFnZS5pbm5lclRleHQoKTtcbiAgfVxuXG4gIGFzeW5jIGdldFRvdGFsUGFnZXMoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy50b3RhbFBhZ2VzLmlubmVyVGV4dCgpO1xuICB9XG5cbiAgYXN5bmMgaXNQcmV2aW91c0VuYWJsZWQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMucHJldmlvdXNCdXR0b24uaXNFbmFibGVkKCk7XG4gIH1cblxuICBhc3luYyBpc05leHRFbmFibGVkKCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGF3YWl0IHRoaXMucGFnZS53YWl0Rm9yVGltZW91dCh0aW1lb3V0cy50aW55KTtcbiAgICByZXR1cm4gdGhpcy5uZXh0QnV0dG9uLmlzRW5hYmxlZCgpO1xuICB9XG5cbiAgYXN5bmMgY2xpY2tPbk5leHRQYWdlKCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBpZiAoYXdhaXQgdGhpcy5pc05leHRFbmFibGVkKCkpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5uZXh0QnV0dG9uLmNsaWNrKCk7XG4gICAgICB9XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgRmFpbGVkIG9uIHByZXZpb3VzIGNsaWNrOiAke2Vycm9yfWApO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIGNsaWNrT25QcmV2aW91c1BhZ2UoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGlmIChhd2FpdCB0aGlzLmlzUHJldmlvdXNFbmFibGVkKCkpIHtcbiAgICAgICAgYXdhaXQgdGhpcy5wcmV2aW91c0J1dHRvbi5jbGljaygpO1xuICAgICAgfVxuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYEZhaWxlZCBvbiBwcmV2aW91cyBjbGljazogJHtlcnJvcn1gKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBvcGVuTWF4SXRlbXNNZW51KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIHRyeSB7XG4gICAgICBhd2FpdCB0aGlzLm1heEl0ZW1zQnV0dG9uLndhaXRGb3IoeyBzdGF0ZTogJ3Zpc2libGUnIH0pO1xuICAgICAgYXdhaXQgdGhpcy5tYXhJdGVtc0J1dHRvbi5jbGljaygpO1xuICAgIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYE9wZW4gbWF4IGl0ZW1zIGNhdGNoOiAke2Vycm9yfWApO1xuICAgIH1cbiAgfVxuXG4gIGFzeW5jIHJlc2V0VG9EZWZhdWx0UGFnZVNpemUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMub3Blbk1heEl0ZW1zTWVudSgpO1xuICAgICAgYXdhaXQgdGhpcy5jbGlja050aEl0ZW0oMSk7XG4gICAgICBhd2FpdCB0aGlzLnBhZ2Uud2FpdEZvclRpbWVvdXQodGltZW91dHMudGlueSk7XG4gICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgUmVzZXQgdG8gZGVmYXVsdCBwYWdlIHNpemUgY2F0Y2g6ICR7ZXJyb3J9YCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgY2xpY2tNZW51SXRlbShtZW51SXRlbTogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IHRoaXMucGFnZS5nZXRCeVJvbGUoJ21lbnVpdGVtJywgeyBuYW1lOiBtZW51SXRlbSB9KS5jbGljaygpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgQ2xpY2sgbWVudSBpdGVtIGNhdGNoIDogZmFpbGVkIHRvIGNsaWNrIG9uOiAke2V9YCk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgZ2V0TnRoSXRlbShudGg6IG51bWJlcik6IFByb21pc2U8TG9jYXRvcj4ge1xuICAgIHJldHVybiB0aGlzLnBhZ2UuZ2V0QnlSb2xlKCdtZW51aXRlbScpLm50aChudGggLSAxKTtcbiAgfVxuXG4gIGFzeW5jIGdldEl0ZW1zQ291bnQoKTogUHJvbWlzZTxudW1iZXI+IHtcbiAgICByZXR1cm4gdGhpcy5wYWdlLmdldEJ5Um9sZSgnbWVudWl0ZW0nKS5jb3VudCgpO1xuICB9XG5cbiAgYXN5bmMgY2xpY2tOdGhJdGVtKG50aDogbnVtYmVyKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdHJ5IHtcbiAgICAgIGF3YWl0IChhd2FpdCB0aGlzLmdldE50aEl0ZW0obnRoKSkuY2xpY2soKTtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoYENsaWNrIG50aCBtZW51IGl0ZW0gY2F0Y2g6ICR7ZX1gKTtcbiAgICB9XG4gIH1cblxuICBhc3luYyBjbG9zZU1lbnUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgdGhpcy5wYWdlLmtleWJvYXJkLnByZXNzKCdFc2NhcGUnKTtcbiAgfVxuXG4gIGFzeW5jIGlzUmFuZ2VQcmVzZW50KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnJhbmdlLmlzVmlzaWJsZSgpO1xuICB9XG5cbiAgYXN5bmMgZ2V0TWF4UmFuZ2UoKTogUHJvbWlzZTxzdHJpbmc+IHtcbiAgICByZXR1cm4gdGhpcy5yYW5nZS50ZXh0Q29udGVudCgpO1xuICB9XG5cbiAgYXN5bmMgaXNNYXhJdGVtc1ByZXNlbnQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMubWF4SXRlbXMuaXNWaXNpYmxlKCk7XG4gIH1cblxuICBhc3luYyBpc0N1cnJlbnRQYWdlUHJlc2VudCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5jdXJyZW50UGFnZS5pc1Zpc2libGUoKTtcbiAgfVxuXG4gIGFzeW5jIGlzVG90YWxQYWdlc1ByZXNlbnQoKTogUHJvbWlzZTxib29sZWFuPiB7XG4gICAgcmV0dXJuIHRoaXMudG90YWxQYWdlcy5pc1Zpc2libGUoKTtcbiAgfVxuXG4gIGFzeW5jIGlzUHJldmlvdXNCdXR0b25QcmVzZW50KCk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIHJldHVybiB0aGlzLnByZXZpb3VzQnV0dG9uLmlzVmlzaWJsZSgpO1xuICB9XG5cbiAgYXN5bmMgaXNOZXh0QnV0dG9uUHJlc2VudCgpOiBQcm9taXNlPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5uZXh0QnV0dG9uLmlzVmlzaWJsZSgpO1xuICB9XG59XG4iXX0=
@@ -1,32 +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 class SearchFiltersCategories extends BaseComponent {
26
- constructor(page) {
27
- super(page, SearchFiltersCategories.rootElement);
28
- this.addOptionInput = this.getChild(`[data-automation-id$='adf-search-chip-autocomplete-input']`);
29
- }
30
- }
31
- SearchFiltersCategories.rootElement = '.adf-search-filter-menu-card';
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlcnMtY2F0ZWdvcmllcy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3BhZ2Utb2JqZWN0cy9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2gtZmlsdGVycy9zZWFyY2gtZmlsdGVycy1jYXRlZ29yaWVzLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUdyRCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsYUFBYTtJQUd4RCxZQUFZLElBQVU7UUFDcEIsS0FBSyxDQUFDLElBQUksRUFBRSx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUc1QyxtQkFBYyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsNERBQTRELENBQUMsQ0FBQztJQUZwRyxDQUFDOztBQUpjLG1DQUFXLEdBQUcsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2UgfSBmcm9tICdAcGxheXdyaWdodC90ZXN0JztcblxuZXhwb3J0IGNsYXNzIFNlYXJjaEZpbHRlcnNDYXRlZ29yaWVzIGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgc3RhdGljIHJvb3RFbGVtZW50ID0gJy5hZGYtc2VhcmNoLWZpbHRlci1tZW51LWNhcmQnO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBTZWFyY2hGaWx0ZXJzQ2F0ZWdvcmllcy5yb290RWxlbWVudCk7XG4gIH1cblxuICBwdWJsaWMgYWRkT3B0aW9uSW5wdXQgPSB0aGlzLmdldENoaWxkKGBbZGF0YS1hdXRvbWF0aW9uLWlkJD0nYWRmLXNlYXJjaC1jaGlwLWF1dG9jb21wbGV0ZS1pbnB1dCddYCk7XG59XG4iXX0=
@@ -1,114 +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 SearchFiltersDate extends BaseComponent {
27
- constructor(page) {
28
- super(page, SearchFiltersDate.rootElement);
29
- this.createdTab = this.getChild(`[role='tab']`, { hasText: 'Created' });
30
- this.modifiedTab = this.getChild(`[role='tab']`, { hasText: 'Modified' });
31
- this.createdTabTitle = this.createdTab.locator(`div`);
32
- this.modifiedTabTitle = this.modifiedTab.locator(`div`);
33
- this.anytimeButton = this.getChild(`[data-automation-id$='date-range-anytime']`);
34
- this.anytimeRadioButton = this.anytimeButton.locator(`input`);
35
- this.inTheLastButton = this.getChild(`[data-automation-id$='date-range-in-last']`);
36
- this.inTheLastInput = this.getChild(`[data-automation-id$='date-range-in-last-input']`);
37
- this.inTheLastDropdown = this.getChild(`[data-automation-id$='date-range-in-last-dropdown']`);
38
- this.betweenButton = this.getChild(`[data-automation-id$='date-range-between']`);
39
- this.betweenRadioButton = this.betweenButton.locator(`input`);
40
- this.betweenStartDate = this.getChild(`[data-automation-id$='date-range-between-start-input']`);
41
- this.betweenEndDate = this.getChild(`[data-automation-id$='date-range-between-end-input']`);
42
- }
43
- async openCreatedModifiedTab(page, tab) {
44
- switch (tab) {
45
- case 'Created':
46
- await page.searchFiltersDate.createdTab.click();
47
- break;
48
- case 'Modified':
49
- await page.searchFiltersDate.modifiedTab.click();
50
- break;
51
- default:
52
- break;
53
- }
54
- await page.page.waitForTimeout(2000);
55
- }
56
- /**
57
- * Method used in cases where we want to filter search results by Date
58
- *
59
- * @param searchPage page context for the test
60
- * @param filterType filter type for the Date filter
61
- * @param dateFilterTab tab in Date filter. Either Created or Modified
62
- * @param searchPhrase search phrase for the search
63
- * @param searchType type of items we want in search results e.g. files or folders
64
- * @param expectSearchResults expect a number of search results
65
- * @param inTheLastInputValue a value for 'in the last' input. e.g. in the last X days
66
- * @param startDay start day for time-frame search. DD-MMMM-YY
67
- * @param endDay end day for time-frame search. DD-MMMM-YY
68
- */
69
- async filterFilesByDate(params) {
70
- const { searchPage, filterType, dateFilterTab, searchPhrase, searchType, expectSearchResults, inTheLastInputValue, startDay, endDay } = params;
71
- await searchPage.searchWithin(searchPhrase, searchType);
72
- await searchPage.searchFilters.dateFilter.click();
73
- if (dateFilterTab === 'Modified') {
74
- await searchPage.searchFiltersDate.openCreatedModifiedTab(searchPage, 'Modified');
75
- }
76
- switch (filterType) {
77
- case 'anytime':
78
- await searchPage.searchFiltersDate.anytimeButton.click();
79
- break;
80
- case 'inTheLast':
81
- await searchPage.searchFiltersDate.inTheLastButton.click();
82
- await searchPage.searchFiltersDate.inTheLastInput.fill(inTheLastInputValue);
83
- break;
84
- case 'between':
85
- await searchPage.searchFiltersDate.betweenButton.click();
86
- await searchPage.searchFiltersDate.betweenStartDate.fill(startDay);
87
- await searchPage.searchFiltersDate.betweenEndDate.fill(endDay);
88
- break;
89
- default:
90
- throw new Error('Invalid filter type');
91
- }
92
- await searchPage.searchFilters.menuCardApply.click();
93
- await searchPage.dataTable.spinnerWaitForReload();
94
- expect(await searchPage.dataTable.getRowsCount()).toEqual(expectSearchResults);
95
- let dateText;
96
- if (filterType === 'between') {
97
- if (dateFilterTab === 'Modified') {
98
- dateText = `Modified: ${startDay} - ${endDay}`;
99
- }
100
- else {
101
- dateText = `Created: ${startDay} - ${endDay}`;
102
- }
103
- await expect(searchPage.searchFilters.dateFilter).toContainText(dateText, { ignoreCase: true });
104
- }
105
- }
106
- async isModifiedTabSelected() {
107
- return this.modifiedTab.getAttribute('aria-selected');
108
- }
109
- async isSearchTabSelected() {
110
- return this.createdTab.getAttribute('aria-selected');
111
- }
112
- }
113
- SearchFiltersDate.rootElement = '.adf-search-filter-menu-card';
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlcnMtZGF0ZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9hY2EtcGxheXdyaWdodC1zaGFyZWQvc3JjL3BhZ2Utb2JqZWN0cy9jb21wb25lbnRzL3NlYXJjaC9zZWFyY2gtZmlsdGVycy9zZWFyY2gtZmlsdGVycy1kYXRlLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQXNCRztBQUVILE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUNyRCxPQUFPLEVBQVEsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFpQmhELE1BQU0sT0FBTyxpQkFBa0IsU0FBUSxhQUFhO0lBR2xELFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsSUFBSSxFQUFFLGlCQUFpQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBR3RDLGVBQVUsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLGNBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBQ25FLGdCQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxjQUFjLEVBQUUsRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztRQUNyRSxvQkFBZSxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pELHFCQUFnQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25ELGtCQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1FBQzVFLHVCQUFrQixHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3pELG9CQUFlLEdBQUcsSUFBSSxDQUFDLFFB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LENBQUMsbUJBQW1CLENBQUMsQ0FBQztRQUUvRSxJQUFJLFFBQWdCLENBQUM7UUFDckIsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFO1lBQzVCLElBQUksYUFBYSxLQUFLLFVBQVUsRUFBRTtnQkFDaEMsUUFBUSxHQUFHLGFBQWEsUUFBUSxNQUFNLE1BQU0sRUFBRSxDQUFDO2FBQ2hEO2lCQUFNO2dCQUNMLFFBQVEsR0FBRyxZQUFZLFFBQVEsTUFBTSxNQUFNLEVBQUUsQ0FBQzthQUMvQztZQUNELE1BQU0sTUFBTSxDQUFDLFVBQVUsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsYUFBYSxDQUFDLFFBQVEsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1NBQ2pHO0lBQ0gsQ0FBQztJQUVELEtBQUssQ0FBQyxxQkFBcUI7UUFDekIsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUN4RCxDQUFDO0lBRUQsS0FBSyxDQUFDLG1CQUFtQjtRQUN2QixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsWUFBWSxDQUFDLGVBQWUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7O0FBL0ZjLDZCQUFXLEdBQUcsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2Jhc2UuY29tcG9uZW50JztcbmltcG9ydCB7IFBhZ2UsIGV4cGVjdCB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuaW1wb3J0IHsgU2VhcmNoUGFnZSwgU2VhcmNoVHlwZSB9IGZyb20gJy4uLy4uLy4uL3BhZ2VzJztcblxudHlwZSBGaWx0ZXJUYWIgPSAnQ3JlYXRlZCcgfCAnTW9kaWZpZWQnO1xuXG5pbnRlcmZhY2UgRmlsdGVyRmlsZXNCeURhdGVQYXJhbXMge1xuICBzZWFyY2hQYWdlOiBTZWFyY2hQYWdlO1xuICBmaWx0ZXJUeXBlOiAnYW55dGltZScgfCAnaW5UaGVMYXN0JyB8ICdiZXR3ZWVuJztcbiAgZGF0ZUZpbHRlclRhYjogRmlsdGVyVGFiO1xuICBzZWFyY2hQaHJhc2U6IHN0cmluZztcbiAgc2VhcmNoVHlwZTogU2VhcmNoVHlwZTtcbiAgZXhwZWN0U2VhcmNoUmVzdWx0czogbnVtYmVyO1xuICBpblRoZUxhc3RJbnB1dFZhbHVlPzogc3RyaW5nO1xuICBzdGFydERheT86IHN0cmluZztcbiAgZW5kRGF5Pzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgU2VhcmNoRmlsdGVyc0RhdGUgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBzdGF0aWMgcm9vdEVsZW1lbnQgPSAnLmFkZi1zZWFyY2gtZmlsdGVyLW1lbnUtY2FyZCc7XG5cbiAgY29uc3RydWN0b3IocGFnZTogUGFnZSkge1xuICAgIHN1cGVyKHBhZ2UsIFNlYXJjaEZpbHRlcnNEYXRlLnJvb3RFbGVtZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBjcmVhdGVkVGFiID0gdGhpcy5nZXRDaGlsZChgW3JvbGU9J3RhYiddYCwgeyBoYXNUZXh0OiAnQ3JlYXRlZCcgfSk7XG4gIHB1YmxpYyBtb2RpZmllZFRhYiA9IHRoaXMuZ2V0Q2hpbGQoYFtyb2xlPSd0YWInXWAsIHsgaGFzVGV4dDogJ01vZGlmaWVkJyB9KTtcbiAgcHVibGljIGNyZWF0ZWRUYWJUaXRsZSA9IHRoaXMuY3JlYXRlZFRhYi5sb2NhdG9yKGBkaXZgKTtcbiAgcHVibGljIG1vZGlmaWVkVGFiVGl0bGUgPSB0aGlzLm1vZGlmaWVkVGFiLmxvY2F0b3IoYGRpdmApO1xuICBwdWJsaWMgYW55dGltZUJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoYFtkYXRhLWF1dG9tYXRpb24taWQkPSdkYXRlLXJhbmdlLWFueXRpbWUnXWApO1xuICBwdWJsaWMgYW55dGltZVJhZGlvQnV0dG9uID0gdGhpcy5hbnl0aW1lQnV0dG9uLmxvY2F0b3IoYGlucHV0YCk7XG4gIHB1YmxpYyBpblRoZUxhc3RCdXR0b24gPSB0aGlzLmdldENoaWxkKGBbZGF0YS1hdXRvbWF0aW9uLWlkJD0nZGF0ZS1yYW5nZS1pbi1sYXN0J11gKTtcbiAgcHVibGljIGluVGhlTGFzdElucHV0ID0gdGhpcy5nZXRDaGlsZChgW2RhdGEtYXV0b21hdGlvbi1pZCQ9J2RhdGUtcmFuZ2UtaW4tbGFzdC1pbnB1dCddYCk7XG4gIHB1YmxpYyBpblRoZUxhc3REcm9wZG93biA9IHRoaXMuZ2V0Q2hpbGQoYFtkYXRhLWF1dG9tYXRpb24taWQkPSdkYXRlLXJhbmdlLWluLWxhc3QtZHJvcGRvd24nXWApO1xuICBwdWJsaWMgYmV0d2VlbkJ1dHRvbiA9IHRoaXMuZ2V0Q2hpbGQoYFtkYXRhLWF1dG9tYXRpb24taWQkPSdkYXRlLXJhbmdlLWJldHdlZW4nXWApO1xuICBwdWJsaWMgYmV0d2VlblJhZGlvQnV0dG9uID0gdGhpcy5iZXR3ZWVuQnV0dG9uLmxvY2F0b3IoYGlucHV0YCk7XG4gIHB1YmxpYyBiZXR3ZWVuU3RhcnREYXRlID0gdGhpcy5nZXRDaGlsZChgW2RhdGEtYXV0b21hdGlvbi1pZCQ9J2RhdGUtcmFuZ2UtYmV0d2Vlbi1zdGFydC1pbnB1dCddYCk7XG4gIHB1YmxpYyBiZXR3ZWVuRW5kRGF0ZSA9IHRoaXMuZ2V0Q2hpbGQoYFtkYXRhLWF1dG9tYXRpb24taWQkPSdkYXRlLXJhbmdlLWJldHdlZW4tZW5kLWlucHV0J11gKTtcblxuICBhc3luYyBvcGVuQ3JlYXRlZE1vZGlmaWVkVGFiKHBhZ2U6IFNlYXJjaFBhZ2UsIHRhYjogRmlsdGVyVGFiKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgc3dpdGNoICh0YWIpIHtcbiAgICAgIGNhc2UgJ0NyZWF0ZWQnOlxuICAgICAgICBhd2FpdCBwYWdlLnNlYXJjaEZpbHRlcnNEYXRlLmNyZWF0ZWRUYWIuY2xpY2soKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdNb2RpZmllZCc6XG4gICAgICAgIGF3YWl0IHBhZ2Uuc2VhcmNoRmlsdGVyc0RhdGUubW9kaWZpZWRUYWIuY2xpY2soKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICBicmVhaztcbiAgICB9XG4gICAgYXdhaXQgcGFnZS5wYWdlLndhaXRGb3JUaW1lb3V0KDIwMDApO1xuICB9XG5cbiAgLyoqXG4gICAqIE1ldGhvZCB1c2VkIGluIGNhc2VzIHdoZXJlIHdlIHdhbnQgdG8gZmlsdGVyIHNlYXJjaCByZXN1bHRzIGJ5IERhdGVcbiAgICpcbiAgICogQHBhcmFtIHNlYXJjaFBhZ2UgcGFnZSBjb250ZXh0IGZvciB0aGUgdGVzdFxuICAgKiBAcGFyYW0gZmlsdGVyVHlwZSBmaWx0ZXIgdHlwZSBmb3IgdGhlIERhdGUgZmlsdGVyXG4gICAqIEBwYXJhbSBkYXRlRmlsdGVyVGFiIHRhYiBpbiBEYXRlIGZpbHRlci4gRWl0aGVyIENyZWF0ZWQgb3IgTW9kaWZpZWRcbiAgICogQHBhcmFtIHNlYXJjaFBocmFzZSBzZWFyY2ggcGhyYXNlIGZvciB0aGUgc2VhcmNoXG4gICAqIEBwYXJhbSBzZWFyY2hUeXBlIHR5cGUgb2YgaXRlbXMgd2Ugd2FudCBpbiBzZWFyY2ggcmVzdWx0cyBlLmcuIGZpbGVzIG9yIGZvbGRlcnNcbiAgICogQHBhcmFtIGV4cGVjdFNlYXJjaFJlc3VsdHMgZXhwZWN0IGEgbnVtYmVyIG9mIHNlYXJjaCByZXN1bHRzXG4gICAqIEBwYXJhbSBpblRoZUxhc3RJbnB1dFZhbHVlIGEgdmFsdWUgZm9yICdpbiB0aGUgbGFzdCcgaW5wdXQuIGUuZy4gaW4gdGhlIGxhc3QgWCBkYXlzXG4gICAqIEBwYXJhbSBzdGFydERheSBzdGFydCBkYXkgZm9yIHRpbWUtZnJhbWUgc2VhcmNoLiBERC1NTU1NLVlZXG4gICAqIEBwYXJhbSBlbmREYXkgZW5kIGRheSBmb3IgdGltZS1mcmFtZSBzZWFyY2guIERELU1NTU0tWVlcbiAgICovXG4gIGFzeW5jIGZpbHRlckZpbGVzQnlEYXRlKHBhcmFtczogRmlsdGVyRmlsZXNCeURhdGVQYXJhbXMpIHtcbiAgICBjb25zdCB7IHNlYXJjaFBhZ2UsIGZpbHRlclR5cGUsIGRhdGVGaWx0ZXJUYWIsIHNlYXJjaFBocmFzZSwgc2VhcmNoVHlwZSwgZXhwZWN0U2VhcmNoUmVzdWx0cywgaW5UaGVMYXN0SW5wdXRWYWx1ZSwgc3RhcnREYXksIGVuZERheSB9ID0gcGFyYW1zO1xuXG4gICAgYXdhaXQgc2VhcmNoUGFnZS5zZWFyY2hXaXRoaW4oc2VhcmNoUGhyYXNlLCBzZWFyY2hUeXBlKTtcbiAgICBhd2FpdCBzZWFyY2hQYWdlLnNlYXJjaEZpbHRlcnMuZGF0ZUZpbHRlci5jbGljaygpO1xuXG4gICAgaWYgKGRhdGVGaWx0ZXJUYWIgPT09ICdNb2RpZmllZCcpIHtcbiAgICAgIGF3YWl0IHNlYXJjaFBhZ2Uuc2VhcmNoRmlsdGVyc0RhdGUub3BlbkNyZWF0ZWRNb2RpZmllZFRhYihzZWFyY2hQYWdlLCAnTW9kaWZpZWQnKTtcbiAgICB9XG5cbiAgICBzd2l0Y2ggKGZpbHRlclR5cGUpIHtcbiAgICAgIGNhc2UgJ2FueXRpbWUnOlxuICAgICAgICBhd2FpdCBzZWFyY2hQYWdlLnNlYXJjaEZpbHRlcnNEYXRlLmFueXRpbWVCdXR0b24uY2xpY2soKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdpblRoZUxhc3QnOlxuICAgICAgICBhd2FpdCBzZWFyY2hQYWdlLnNlYXJjaEZpbHRlcnNEYXRlLmluVGhlTGFzdEJ1dHRvbi5jbGljaygpO1xuICAgICAgICBhd2FpdCBzZWFyY2hQYWdlLnNlYXJjaEZpbHRlcnNEYXRlLmluVGhlTGFzdElucHV0LmZpbGwoaW5UaGVMYXN0SW5wdXRWYWx1ZSk7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnYmV0d2Vlbic6XG4gICAgICAgIGF3YWl0IHNlYXJjaFBhZ2Uuc2VhcmNoRmlsdGVyc0RhdGUuYmV0d2VlbkJ1dHRvbi5jbGljaygpO1xuICAgICAgICBhd2FpdCBzZWFyY2hQYWdlLnNlYXJjaEZpbHRlcnNEYXRlLmJldHdlZW5TdGFydERhdGUuZmlsbChzdGFydERheSk7XG4gICAgICAgIGF3YWl0IHNlYXJjaFBhZ2Uuc2VhcmNoRmlsdGVyc0RhdGUuYmV0d2VlbkVuZERhdGUuZmlsbChlbmREYXkpO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBmaWx0ZXIgdHlwZScpO1xuICAgIH1cblxuICAgIGF3YWl0IHNlYXJjaFBhZ2Uuc2VhcmNoRmlsdGVycy5tZW51Q2FyZEFwcGx5LmNsaWNrKCk7XG4gICAgYXdhaXQgc2VhcmNoUGFnZS5kYXRhVGFibGUuc3Bpbm5lcldhaXRGb3JSZWxvYWQoKTtcbiAgICBleHBlY3QoYXdhaXQgc2VhcmNoUGFnZS5kYXRhVGFibGUuZ2V0Um93c0NvdW50KCkpLnRvRXF1YWwoZXhwZWN0U2VhcmNoUmVzdWx0cyk7XG5cbiAgICBsZXQgZGF0ZVRleHQ6IHN0cmluZztcbiAgICBpZiAoZmlsdGVyVHlwZSA9PT0gJ2JldHdlZW4nKSB7XG4gICAgICBpZiAoZGF0ZUZpbHRlclRhYiA9PT0gJ01vZGlmaWVkJykge1xuICAgICAgICBkYXRlVGV4dCA9IGBNb2RpZmllZDogJHtzdGFydERheX0gLSAke2VuZERheX1gO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGF0ZVRleHQgPSBgQ3JlYXRlZDogJHtzdGFydERheX0gLSAke2VuZERheX1gO1xuICAgICAgfVxuICAgICAgYXdhaXQgZXhwZWN0KHNlYXJjaFBhZ2Uuc2VhcmNoRmlsdGVycy5kYXRlRmlsdGVyKS50b0NvbnRhaW5UZXh0KGRhdGVUZXh0LCB7IGlnbm9yZUNhc2U6IHRydWUgfSk7XG4gICAgfVxuICB9XG5cbiAgYXN5bmMgaXNNb2RpZmllZFRhYlNlbGVjdGVkKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMubW9kaWZpZWRUYWIuZ2V0QXR0cmlidXRlKCdhcmlhLXNlbGVjdGVkJyk7XG4gIH1cblxuICBhc3luYyBpc1NlYXJjaFRhYlNlbGVjdGVkKCk6IFByb21pc2U8c3RyaW5nPiB7XG4gICAgcmV0dXJuIHRoaXMuY3JlYXRlZFRhYi5nZXRBdHRyaWJ1dGUoJ2FyaWEtc2VsZWN0ZWQnKTtcbiAgfVxufVxuIl19
@@ -1,39 +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 class SearchFiltersLocation extends BaseComponent {
26
- constructor(page) {
27
- super(page, SearchFiltersLocation.rootElement);
28
- this.addOptionInput = this.getChild(`[data-automation-id$='adf-search-chip-autocomplete-input']`);
29
- }
30
- async filterByLocation(page, location) {
31
- await page.searchFilters.locationFilter.click();
32
- await page.searchFiltersLocation.addOptionInput.fill(location);
33
- await page.page.keyboard.press('Enter');
34
- await page.searchFilters.menuCardApply.click();
35
- await page.dataTable.progressBarWaitForReload();
36
- }
37
- }
38
- SearchFiltersLocation.rootElement = '.adf-search-filter-menu-card';
39
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlcnMtbG9jYXRpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy9wYWdlLW9iamVjdHMvY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLWZpbHRlcnMvc2VhcmNoLWZpbHRlcnMtbG9jYXRpb24uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBR0gsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3JELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxhQUFhO0lBR3RELFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsSUFBSSxFQUFFLHFCQUFxQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBRzFDLG1CQUFjLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO0lBRnBHLENBQUM7SUFJRCxLQUFLLENBQUMsZ0JBQWdCLENBQUMsSUFBZ0IsRUFBRSxRQUFnQjtRQUN2RCxNQUFNLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hELE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0QsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDeEMsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUMvQyxNQUFNLElBQUksQ0FBQyxTQUFTLENBQUMsd0JBQXdCLEVBQUUsQ0FBQztJQUNsRCxDQUFDOztBQWRjLGlDQUFXLEdBQUcsOEJBQThCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCDCqSAyMDA1LTIwMjQgSHlsYW5kIFNvZnR3YXJlLCBJbmMuIGFuZCBpdHMgYWZmaWxpYXRlcy4gQWxsIHJpZ2h0cyByZXNlcnZlZC5cbiAqXG4gKiBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb25cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uLlxuICogSWYgdGhlIHNvZnR3YXJlIHdhcyBwdXJjaGFzZWQgdW5kZXIgYSBwYWlkIEFsZnJlc2NvIGxpY2Vuc2UsIHRoZSB0ZXJtcyBvZlxuICogdGhlIHBhaWQgbGljZW5zZSBhZ3JlZW1lbnQgd2lsbCBwcmV2YWlsLiBPdGhlcndpc2UsIHRoZSBzb2Z0d2FyZSBpc1xuICogcHJvdmlkZWQgdW5kZXIgdGhlIGZvbGxvd2luZyBvcGVuIHNvdXJjZSBsaWNlbnNlIHRlcm1zOlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yIG1vZGlmeVxuICogaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVibGlzaGVkIGJ5XG4gKiB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLCBvclxuICogKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBUaGUgQWxmcmVzY28gRXhhbXBsZSBDb250ZW50IEFwcGxpY2F0aW9uIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlXG4gKiBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgTGVzc2VyIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGZyb20gSHlsYW5kIFNvZnR3YXJlLiBJZiBub3QsIHNlZSA8aHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLz4uXG4gKi9cblxuaW1wb3J0IHsgU2VhcmNoUGFnZSB9IGZyb20gJy4uLy4uLy4uL3BhZ2VzJztcbmltcG9ydCB7IEJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9iYXNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQYWdlIH0gZnJvbSAnQHBsYXl3cmlnaHQvdGVzdCc7XG5cbmV4cG9ydCBjbGFzcyBTZWFyY2hGaWx0ZXJzTG9jYXRpb24gZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgcHJpdmF0ZSBzdGF0aWMgcm9vdEVsZW1lbnQgPSAnLmFkZi1zZWFyY2gtZmlsdGVyLW1lbnUtY2FyZCc7XG5cbiAgY29uc3RydWN0b3IocGFnZTogUGFnZSkge1xuICAgIHN1cGVyKHBhZ2UsIFNlYXJjaEZpbHRlcnNMb2NhdGlvbi5yb290RWxlbWVudCk7XG4gIH1cblxuICBwdWJsaWMgYWRkT3B0aW9uSW5wdXQgPSB0aGlzLmdldENoaWxkKGBbZGF0YS1hdXRvbWF0aW9uLWlkJD0nYWRmLXNlYXJjaC1jaGlwLWF1dG9jb21wbGV0ZS1pbnB1dCddYCk7XG5cbiAgYXN5bmMgZmlsdGVyQnlMb2NhdGlvbihwYWdlOiBTZWFyY2hQYWdlLCBsb2NhdGlvbjogc3RyaW5nKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgYXdhaXQgcGFnZS5zZWFyY2hGaWx0ZXJzLmxvY2F0aW9uRmlsdGVyLmNsaWNrKCk7XG4gICAgYXdhaXQgcGFnZS5zZWFyY2hGaWx0ZXJzTG9jYXRpb24uYWRkT3B0aW9uSW5wdXQuZmlsbChsb2NhdGlvbik7XG4gICAgYXdhaXQgcGFnZS5wYWdlLmtleWJvYXJkLnByZXNzKCdFbnRlcicpO1xuICAgIGF3YWl0IHBhZ2Uuc2VhcmNoRmlsdGVycy5tZW51Q2FyZEFwcGx5LmNsaWNrKCk7XG4gICAgYXdhaXQgcGFnZS5kYXRhVGFibGUucHJvZ3Jlc3NCYXJXYWl0Rm9yUmVsb2FkKCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,35 +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 class SearchFiltersLogic extends BaseComponent {
26
- constructor(page) {
27
- super(page, SearchFiltersLogic.rootElement);
28
- this.matchAllInput = this.getChild(`[placeholder$='Results will match all words entered here']`);
29
- this.matchAnyInput = this.getChild(`[placeholder$='Results will match any words entered here']`);
30
- this.excludeInput = this.getChild(`[placeholder$='Results will exclude matches with these words']`);
31
- this.matchExactInput = this.getChild(`[placeholder$='Results will match this entire phrase']`);
32
- }
33
- }
34
- SearchFiltersLogic.rootElement = '.adf-search-filter-menu-card';
35
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLWZpbHRlcnMtbG9naWMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYWNhLXBsYXl3cmlnaHQtc2hhcmVkL3NyYy9wYWdlLW9iamVjdHMvY29tcG9uZW50cy9zZWFyY2gvc2VhcmNoLWZpbHRlcnMvc2VhcmNoLWZpbHRlcnMtbG9naWMuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBc0JHO0FBRUgsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBR3JELE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxhQUFhO0lBR25ELFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsSUFBSSxFQUFFLGtCQUFrQixDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBR3ZDLGtCQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO1FBQzVGLGtCQUFhLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyw0REFBNEQsQ0FBQyxDQUFDO1FBQzVGLGlCQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxnRUFBZ0UsQ0FBQyxDQUFDO1FBQy9GLG9CQUFlLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyx3REFBd0QsQ0FBQyxDQUFDO0lBTGpHLENBQUM7O0FBSmMsOEJBQVcsR0FBRyw4QkFBOEIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IMKpIDIwMDUtMjAyNCBIeWxhbmQgU29mdHdhcmUsIEluYy4gYW5kIGl0cyBhZmZpbGlhdGVzLiBBbGwgcmlnaHRzIHJlc2VydmVkLlxuICpcbiAqIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvblxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24uXG4gKiBJZiB0aGUgc29mdHdhcmUgd2FzIHB1cmNoYXNlZCB1bmRlciBhIHBhaWQgQWxmcmVzY28gbGljZW5zZSwgdGhlIHRlcm1zIG9mXG4gKiB0aGUgcGFpZCBsaWNlbnNlIGFncmVlbWVudCB3aWxsIHByZXZhaWwuIE90aGVyd2lzZSwgdGhlIHNvZnR3YXJlIGlzXG4gKiBwcm92aWRlZCB1bmRlciB0aGUgZm9sbG93aW5nIG9wZW4gc291cmNlIGxpY2Vuc2UgdGVybXM6XG4gKlxuICogVGhlIEFsZnJlc2NvIEV4YW1wbGUgQ29udGVudCBBcHBsaWNhdGlvbiBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5XG4gKiBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQgYnlcbiAqIHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsIG9yXG4gKiAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIFRoZSBBbGZyZXNjbyBFeGFtcGxlIENvbnRlbnQgQXBwbGljYXRpb24gaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGVcbiAqIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBMZXNzZXIgR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogZnJvbSBIeWxhbmQgU29mdHdhcmUuIElmIG5vdCwgc2VlIDxodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvPi5cbiAqL1xuXG5pbXBvcnQgeyBCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vYmFzZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUGFnZSB9IGZyb20gJ0BwbGF5d3JpZ2h0L3Rlc3QnO1xuXG5leHBvcnQgY2xhc3MgU2VhcmNoRmlsdGVyc0xvZ2ljIGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHByaXZhdGUgc3RhdGljIHJvb3RFbGVtZW50ID0gJy5hZGYtc2VhcmNoLWZpbHRlci1tZW51LWNhcmQnO1xuXG4gIGNvbnN0cnVjdG9yKHBhZ2U6IFBhZ2UpIHtcbiAgICBzdXBlcihwYWdlLCBTZWFyY2hGaWx0ZXJzTG9naWMucm9vdEVsZW1lbnQpO1xuICB9XG5cbiAgcHVibGljIG1hdGNoQWxsSW5wdXQgPSB0aGlzLmdldENoaWxkKGBbcGxhY2Vob2xkZXIkPSdSZXN1bHRzIHdpbGwgbWF0Y2ggYWxsIHdvcmRzIGVudGVyZWQgaGVyZSddYCk7XG4gIHB1YmxpYyBtYXRjaEFueUlucHV0ID0gdGhpcy5nZXRDaGlsZChgW3BsYWNlaG9sZGVyJD0nUmVzdWx0cyB3aWxsIG1hdGNoIGFueSB3b3JkcyBlbnRlcmVkIGhlcmUnXWApO1xuICBwdWJsaWMgZXhjbHVkZUlucHV0ID0gdGhpcy5nZXRDaGlsZChgW3BsYWNlaG9sZGVyJD0nUmVzdWx0cyB3aWxsIGV4Y2x1ZGUgbWF0Y2hlcyB3aXRoIHRoZXNlIHdvcmRzJ11gKTtcbiAgcHVibGljIG1hdGNoRXhhY3RJbnB1dCA9IHRoaXMuZ2V0Q2hpbGQoYFtwbGFjZWhvbGRlciQ9J1Jlc3VsdHMgd2lsbCBtYXRjaCB0aGlzIGVudGlyZSBwaHJhc2UnXWApO1xufVxuIl19