@sap_oss/wdio-qmate-service 2.19.0 → 3.0.1

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 (133) hide show
  1. package/.eslintignore +2 -1
  2. package/.eslintrc.yml +2 -2
  3. package/lib/reuse/helper/clientsideUI5scripts.js +0 -53
  4. package/lib/reuse/helper/clientsideUI5scripts.js.map +1 -1
  5. package/lib/reuse/helper/elementResolving.d.ts +1 -1
  6. package/lib/reuse/helper/elementResolving.js +3 -2
  7. package/lib/reuse/helper/elementResolving.js.map +1 -1
  8. package/lib/reuse/modules/constants.d.ts +2 -0
  9. package/lib/reuse/modules/constants.js +6 -0
  10. package/lib/reuse/modules/constants.js.map +1 -0
  11. package/lib/reuse/modules/mobile/element.js +9 -8
  12. package/lib/reuse/modules/mobile/element.js.map +1 -1
  13. package/lib/reuse/modules/mobile/userInteraction.js +8 -7
  14. package/lib/reuse/modules/mobile/userInteraction.js.map +1 -1
  15. package/lib/reuse/modules/nonUi5/assertion.js +5 -4
  16. package/lib/reuse/modules/nonUi5/assertion.js.map +1 -1
  17. package/lib/reuse/modules/nonUi5/element.js +20 -18
  18. package/lib/reuse/modules/nonUi5/element.js.map +1 -1
  19. package/lib/reuse/modules/nonUi5/userInteraction.d.ts +1 -1
  20. package/lib/reuse/modules/nonUi5/userInteraction.js +13 -12
  21. package/lib/reuse/modules/nonUi5/userInteraction.js.map +1 -1
  22. package/lib/reuse/modules/ui5/assertion.js +20 -19
  23. package/lib/reuse/modules/ui5/assertion.js.map +1 -1
  24. package/lib/reuse/modules/ui5/confirmationDialog.js +9 -8
  25. package/lib/reuse/modules/ui5/confirmationDialog.js.map +1 -1
  26. package/lib/reuse/modules/ui5/control.js +2 -1
  27. package/lib/reuse/modules/ui5/control.js.map +1 -1
  28. package/lib/reuse/modules/ui5/element.js +14 -14
  29. package/lib/reuse/modules/ui5/element.js.map +1 -1
  30. package/lib/reuse/modules/ui5/footerBar.js +10 -9
  31. package/lib/reuse/modules/ui5/footerBar.js.map +1 -1
  32. package/lib/reuse/modules/ui5/mockserver.d.ts +1 -2
  33. package/lib/reuse/modules/ui5/mockserver.js +2 -3
  34. package/lib/reuse/modules/ui5/mockserver.js.map +1 -1
  35. package/lib/reuse/modules/ui5/navigation.js +3 -2
  36. package/lib/reuse/modules/ui5/navigation.js.map +1 -1
  37. package/lib/reuse/modules/ui5/navigationBar.js +49 -34
  38. package/lib/reuse/modules/ui5/navigationBar.js.map +1 -1
  39. package/lib/reuse/modules/ui5/session.js +30 -33
  40. package/lib/reuse/modules/ui5/session.js.map +1 -1
  41. package/lib/reuse/modules/ui5/table.d.ts +2 -2
  42. package/lib/reuse/modules/ui5/table.js +113 -26
  43. package/lib/reuse/modules/ui5/table.js.map +1 -1
  44. package/lib/reuse/modules/ui5/userInteraction.js +42 -28
  45. package/lib/reuse/modules/ui5/userInteraction.js.map +1 -1
  46. package/lib/reuse/modules/util/file.js +2 -1
  47. package/lib/reuse/modules/util/file.js.map +1 -1
  48. package/lib/scripts/clientsideUI5scripts.js +36 -33
  49. package/lib/scripts/clientsideUI5scripts.js.map +1 -1
  50. package/lib/scripts/hooks/before.d.ts +1 -1
  51. package/lib/scripts/hooks/before.js +7 -0
  52. package/lib/scripts/hooks/before.js.map +1 -1
  53. package/lib/scripts/hooks/utils/Ui5ExtensionMocker.d.ts +5 -0
  54. package/lib/scripts/hooks/utils/Ui5ExtensionMocker.js +42 -0
  55. package/lib/scripts/hooks/utils/Ui5ExtensionMocker.js.map +1 -0
  56. package/lib/scripts/hooks/utils/lib.d.ts +1 -0
  57. package/lib/scripts/hooks/utils/lib.js +13 -18
  58. package/lib/scripts/hooks/utils/lib.js.map +1 -1
  59. package/lib/scripts/hooks/utils/locatorCommands.js +5 -12
  60. package/lib/scripts/hooks/utils/locatorCommands.js.map +1 -1
  61. package/lib/scripts/locators/qmateLocator.d.ts +1 -1
  62. package/lib/scripts/locators/qmateLocator.js +686 -1310
  63. package/lib/scripts/locators/qmateLocator.js.map +1 -1
  64. package/lib/scripts/locators/qmateLocatorSrc/Locator.d.ts +6 -0
  65. package/lib/scripts/locators/qmateLocatorSrc/Locator.js +49 -0
  66. package/lib/scripts/locators/qmateLocatorSrc/Locator.js.map +1 -0
  67. package/lib/scripts/locators/qmateLocatorSrc/comparators/Comparator.d.ts +4 -0
  68. package/lib/scripts/locators/qmateLocatorSrc/comparators/Comparator.js +18 -0
  69. package/lib/scripts/locators/qmateLocatorSrc/comparators/Comparator.js.map +1 -0
  70. package/lib/scripts/locators/qmateLocatorSrc/comparators/DomPropertiesComparator.d.ts +5 -0
  71. package/lib/scripts/locators/qmateLocatorSrc/comparators/DomPropertiesComparator.js +28 -0
  72. package/lib/scripts/locators/qmateLocatorSrc/comparators/DomPropertiesComparator.js.map +1 -0
  73. package/lib/scripts/locators/qmateLocatorSrc/comparators/ElementPropertiesComparator.d.ts +10 -0
  74. package/lib/scripts/locators/qmateLocatorSrc/comparators/ElementPropertiesComparator.js +79 -0
  75. package/lib/scripts/locators/qmateLocatorSrc/comparators/ElementPropertiesComparator.js.map +1 -0
  76. package/lib/scripts/locators/qmateLocatorSrc/comparators/MetadataComparator.d.ts +3 -0
  77. package/lib/scripts/locators/qmateLocatorSrc/comparators/MetadataComparator.js +13 -0
  78. package/lib/scripts/locators/qmateLocatorSrc/comparators/MetadataComparator.js.map +1 -0
  79. package/lib/scripts/locators/qmateLocatorSrc/filters/AncestorFilter.d.ts +4 -0
  80. package/lib/scripts/locators/qmateLocatorSrc/filters/AncestorFilter.js +15 -0
  81. package/lib/scripts/locators/qmateLocatorSrc/filters/AncestorFilter.js.map +1 -0
  82. package/lib/scripts/locators/qmateLocatorSrc/filters/BaseFilter.d.ts +12 -0
  83. package/lib/scripts/locators/qmateLocatorSrc/filters/BaseFilter.js +52 -0
  84. package/lib/scripts/locators/qmateLocatorSrc/filters/BaseFilter.js.map +1 -0
  85. package/lib/scripts/locators/qmateLocatorSrc/filters/ChildFilter.d.ts +4 -0
  86. package/lib/scripts/locators/qmateLocatorSrc/filters/ChildFilter.js +19 -0
  87. package/lib/scripts/locators/qmateLocatorSrc/filters/ChildFilter.js.map +1 -0
  88. package/lib/scripts/locators/qmateLocatorSrc/filters/DescendantFilter.d.ts +4 -0
  89. package/lib/scripts/locators/qmateLocatorSrc/filters/DescendantFilter.js +21 -0
  90. package/lib/scripts/locators/qmateLocatorSrc/filters/DescendantFilter.js.map +1 -0
  91. package/lib/scripts/locators/qmateLocatorSrc/filters/ElementFilter.d.ts +7 -0
  92. package/lib/scripts/locators/qmateLocatorSrc/filters/ElementFilter.js +51 -0
  93. package/lib/scripts/locators/qmateLocatorSrc/filters/ElementFilter.js.map +1 -0
  94. package/lib/scripts/locators/qmateLocatorSrc/filters/NextSiblingFilter.d.ts +4 -0
  95. package/lib/scripts/locators/qmateLocatorSrc/filters/NextSiblingFilter.js +17 -0
  96. package/lib/scripts/locators/qmateLocatorSrc/filters/NextSiblingFilter.js.map +1 -0
  97. package/lib/scripts/locators/qmateLocatorSrc/filters/ParentFilter.d.ts +4 -0
  98. package/lib/scripts/locators/qmateLocatorSrc/filters/ParentFilter.js +18 -0
  99. package/lib/scripts/locators/qmateLocatorSrc/filters/ParentFilter.js.map +1 -0
  100. package/lib/scripts/locators/qmateLocatorSrc/filters/PrevSiblingFilter.d.ts +4 -0
  101. package/lib/scripts/locators/qmateLocatorSrc/filters/PrevSiblingFilter.js +17 -0
  102. package/lib/scripts/locators/qmateLocatorSrc/filters/PrevSiblingFilter.js.map +1 -0
  103. package/lib/scripts/locators/qmateLocatorSrc/filters/PropertiesFilter.d.ts +4 -0
  104. package/lib/scripts/locators/qmateLocatorSrc/filters/PropertiesFilter.js +17 -0
  105. package/lib/scripts/locators/qmateLocatorSrc/filters/PropertiesFilter.js.map +1 -0
  106. package/lib/scripts/locators/qmateLocatorSrc/filters/SiblingFilter.d.ts +4 -0
  107. package/lib/scripts/locators/qmateLocatorSrc/filters/SiblingFilter.js +15 -0
  108. package/lib/scripts/locators/qmateLocatorSrc/filters/SiblingFilter.js.map +1 -0
  109. package/lib/scripts/locators/qmateLocatorSrc/index.d.ts +1 -0
  110. package/lib/scripts/locators/qmateLocatorSrc/index.js +8 -0
  111. package/lib/scripts/locators/qmateLocatorSrc/index.js.map +1 -0
  112. package/lib/scripts/locators/qmateLocatorSrc/utils/ControlFinder.d.ts +6 -0
  113. package/lib/scripts/locators/qmateLocatorSrc/utils/ControlFinder.js +36 -0
  114. package/lib/scripts/locators/qmateLocatorSrc/utils/ControlFinder.js.map +1 -0
  115. package/lib/scripts/locators/qmateLocatorSrc/utils/FilterFactory.d.ts +5 -0
  116. package/lib/scripts/locators/qmateLocatorSrc/utils/FilterFactory.js +20 -0
  117. package/lib/scripts/locators/qmateLocatorSrc/utils/FilterFactory.js.map +1 -0
  118. package/lib/scripts/locators/qmateLocatorSrc/utils/LocatorDebug.d.ts +11 -0
  119. package/lib/scripts/locators/qmateLocatorSrc/utils/LocatorDebug.js +84 -0
  120. package/lib/scripts/locators/qmateLocatorSrc/utils/LocatorDebug.js.map +1 -0
  121. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlDataInjector.d.ts +7 -0
  122. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlDataInjector.js +63 -0
  123. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlDataInjector.js.map +1 -0
  124. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlHandler.d.ts +15 -0
  125. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlHandler.js +187 -0
  126. package/lib/scripts/locators/qmateLocatorSrc/utils/UI5ControlHandler.js.map +1 -0
  127. package/package.json +6 -4
  128. package/test/core/testIntegration/filters1.spec.js +27 -26
  129. package/test/helper/utils.js +30 -11
  130. package/test/reuse/ui5/session/logout.spec.js +1 -1
  131. package/test/reuse/ui5/table/sortColumnDescending.spec.js +0 -26
  132. package/test/reuse/ui5/userInteraction/searchFor.spec.js +56 -42
  133. package/tsconfig.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"qmateLocator.js","sourceRoot":"","sources":["../../../src/scripts/locators/qmateLocator.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qmateLocator.js","sourceRoot":"","sources":["../../../src/scripts/locators/qmateLocator.js"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ export declare class Locator {
2
+ static locate(ui5Selector: UI5Selector, rootElement: HTMLElement): HTMLElement[];
3
+ private static filterControlsBySelector;
4
+ private static checkSelector;
5
+ private static checkUI5Loaded;
6
+ }
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Locator = void 0;
4
+ const ControlFinder_1 = require("./utils/ControlFinder");
5
+ const UI5ControlDataInjector_1 = require("./utils/UI5ControlDataInjector");
6
+ const LocatorDebug_1 = require("./utils/LocatorDebug");
7
+ const ElementFilter_1 = require("./filters/ElementFilter");
8
+ class Locator {
9
+ static locate(ui5Selector, rootElement) {
10
+ LocatorDebug_1.LocatorDebug.initializeLogs(ui5Selector);
11
+ try {
12
+ Locator.checkSelector(ui5Selector);
13
+ Locator.checkUI5Loaded();
14
+ const ui5Controls = ControlFinder_1.ControlFinder.retrieveUI5Controls(ui5Selector, rootElement);
15
+ const validUi5Controls = Locator.filterControlsBySelector(ui5Controls, ui5Selector);
16
+ const resultElements = UI5ControlDataInjector_1.UI5ControlDataInjector.convertAndInjectDataForProperties(validUi5Controls);
17
+ LocatorDebug_1.LocatorDebug.printLogs(resultElements.length);
18
+ return resultElements;
19
+ }
20
+ catch (error) {
21
+ console.error("Error in locator:", error.stack);
22
+ throw error;
23
+ }
24
+ }
25
+ static filterControlsBySelector(controls, ui5Selector) {
26
+ LocatorDebug_1.LocatorDebug.debugLog("Total ui5Controls:", controls.length);
27
+ const validControls = ElementFilter_1.ElementFilter.filterBySelector(ui5Selector, controls);
28
+ LocatorDebug_1.LocatorDebug.debugLog("Valid ui5Controls:", validControls.length);
29
+ return validControls;
30
+ }
31
+ static checkSelector(ui5Selector) {
32
+ if (!ui5Selector) {
33
+ console.error(`The selector your provided ${ui5Selector} is undefined/null, please provide a valid selector`);
34
+ throw new Error(`The selector your provided ${ui5Selector} is undefined/null, please provide a valid selector`);
35
+ }
36
+ if (!ui5Selector.elementProperties) {
37
+ console.error(`The selector your provided ${JSON.stringify(ui5Selector)} does not contain elementProperties, please provide a valid selector with elementProperties`);
38
+ throw new Error(`The selector your provided ${JSON.stringify(ui5Selector)} does not contain elementProperties, please provide a valid selector with elementProperties`);
39
+ }
40
+ }
41
+ static checkUI5Loaded() {
42
+ if (!sap.ui?.getCore?.()) {
43
+ console.error("This is not an UI5 App, please use other locators");
44
+ throw new Error("This is not an UI5 App, please use other locators");
45
+ }
46
+ }
47
+ }
48
+ exports.Locator = Locator;
49
+ //# sourceMappingURL=Locator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Locator.js","sourceRoot":"","sources":["../../../../src/scripts/locators/qmateLocatorSrc/Locator.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AACtD,2EAAwE;AACxE,uDAAoD;AACpD,2DAAwD;AAExD,MAAa,OAAO;IACX,MAAM,CAAC,MAAM,CAAC,WAAwB,EAAE,WAAwB;QACrE,2BAAY,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QACzC,IAAI,CAAC;YACH,OAAO,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;YACnC,OAAO,CAAC,cAAc,EAAE,CAAC;YAEzB,MAAM,WAAW,GAAG,6BAAa,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAChF,MAAM,gBAAgB,GAAG,OAAO,CAAC,wBAAwB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YACpF,MAAM,cAAc,GAAG,+CAAsB,CAAC,iCAAiC,CAAC,gBAAgB,CAAC,CAAC;YAElG,2BAAY,CAAC,SAAS,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;YAE9C,OAAO,cAAc,CAAC;QACxB,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YACpB,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;YAChD,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,wBAAwB,CAAC,QAAsB,EAAE,WAAwB;QACtF,2BAAY,CAAC,QAAQ,CAAC,oBAAoB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,6BAAa,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QAC5E,2BAAY,CAAC,QAAQ,CAAC,oBAAoB,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;QAClE,OAAO,aAAa,CAAC;IACvB,CAAC;IAEO,MAAM,CAAC,aAAa,CAAC,WAAwB;QACnD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,CAAC,KAAK,CAAC,8BAA8B,WAAW,qDAAqD,CAAC,CAAC;YAC9G,MAAM,IAAI,KAAK,CAAC,8BAA8B,WAAW,qDAAqD,CAAC,CAAC;QAClH,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE,CAAC;YACnC,OAAO,CAAC,KAAK,CAAC,8BAA8B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,6FAA6F,CAAC,CAAC;YACtK,MAAM,IAAI,KAAK,CAAC,8BAA8B,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,6FAA6F,CAAC,CAAC;QAC1K,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,cAAc;QAC3B,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;YACzB,OAAO,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC;YACnE,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;CACF;AA7CD,0BA6CC"}
@@ -0,0 +1,4 @@
1
+ export declare class Comparator {
2
+ static compareWithWildCard(sWild: string, value: any, toLowerCase?: boolean): boolean;
3
+ private static convertToString;
4
+ }
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Comparator = void 0;
4
+ class Comparator {
5
+ // Public
6
+ static compareWithWildCard(sWild, value, toLowerCase = false) {
7
+ const strWild = toLowerCase ? Comparator.convertToString(sWild).trim().toLowerCase() : Comparator.convertToString(sWild).trim();
8
+ const strValue = toLowerCase ? Comparator.convertToString(value).trim().toLowerCase() : Comparator.convertToString(value).trim();
9
+ const regex = new RegExp("^" + strWild.replace(/[-\/\\^$+?.()|[\]{}]/g, "\\$&").replace(/\*/g, ".*") + "$");
10
+ return regex.test(strValue);
11
+ }
12
+ // Private
13
+ static convertToString(value) {
14
+ return (value ?? "").toString();
15
+ }
16
+ }
17
+ exports.Comparator = Comparator;
18
+ //# sourceMappingURL=Comparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Comparator.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/comparators/Comparator.ts"],"names":[],"mappings":";;;AAAA,MAAa,UAAU;IACrB,SAAS;IACF,MAAM,CAAC,mBAAmB,CAAC,KAAa,EAAE,KAAU,EAAE,cAAuB,KAAK;QACvF,MAAM,OAAO,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QAChI,MAAM,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC;QACjI,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,uBAAuB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;QAC5G,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9B,CAAC;IAED,UAAU;IACF,MAAM,CAAC,eAAe,CAAC,KAAU;QACvC,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC;IAClC,CAAC;CACF;AAbD,gCAaC"}
@@ -0,0 +1,5 @@
1
+ export declare class DomPropertiesComparator {
2
+ static compareToDomProperties(properties: ElementProperties, control: UI5Control): boolean;
3
+ private static retrieveNodeAttributes;
4
+ private static compareAttributeToElementAttributes;
5
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DomPropertiesComparator = void 0;
4
+ const Comparator_1 = require("./Comparator");
5
+ class DomPropertiesComparator {
6
+ static compareToDomProperties(properties, control) {
7
+ const node = document.getElementById(control.getId?.());
8
+ if (!properties || !node || typeof properties !== "object") {
9
+ return true;
10
+ }
11
+ const nodeAttributes = DomPropertiesComparator.retrieveNodeAttributes(node);
12
+ return Object.entries(properties).every(([key, value]) => {
13
+ if (key === "nodeName") {
14
+ return Comparator_1.Comparator.compareWithWildCard(node?.nodeName, value, true);
15
+ }
16
+ const valueArray = Array.isArray(value) ? value : [value];
17
+ return valueArray.every(val => DomPropertiesComparator.compareAttributeToElementAttributes(key, val, nodeAttributes));
18
+ });
19
+ }
20
+ static retrieveNodeAttributes(node) {
21
+ return new Map(Array.from(node.attributes, a => [a.nodeName, a.nodeValue ?? ""]));
22
+ }
23
+ static compareAttributeToElementAttributes(key, value, nodeAttributes) {
24
+ return Comparator_1.Comparator.compareWithWildCard(value, nodeAttributes.get(key));
25
+ }
26
+ }
27
+ exports.DomPropertiesComparator = DomPropertiesComparator;
28
+ //# sourceMappingURL=DomPropertiesComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DomPropertiesComparator.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/comparators/DomPropertiesComparator.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAE1C,MAAa,uBAAuB;IAC3B,MAAM,CAAC,sBAAsB,CAAC,UAA6B,EAAE,OAAmB;QACrF,MAAM,IAAI,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACxD,IAAI,CAAC,UAAU,IAAI,CAAC,IAAI,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,cAAc,GAAG,uBAAuB,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC5E,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACvD,IAAI,GAAG,KAAK,UAAU,EAAE,CAAC;gBACvB,OAAO,uBAAU,CAAC,mBAAmB,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;YAC1D,OAAO,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CAC5B,uBAAuB,CAAC,mCAAmC,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,CAAC,CACtF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,MAAM,CAAC,sBAAsB,CAAC,IAAiB;QACrD,OAAO,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IACpF,CAAC;IAEO,MAAM,CAAC,mCAAmC,CAAC,GAAW,EAAE,KAAU,EAAE,cAAmC;QAC7G,OAAO,uBAAU,CAAC,mBAAmB,CAAC,KAAK,EAAE,cAAc,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACxE,CAAC;CACF;AA1BD,0DA0BC"}
@@ -0,0 +1,10 @@
1
+ export declare class ElementPropertiesComparator {
2
+ static compareToProperties(elementProperties: ElementProperties, control: UI5Control): boolean;
3
+ private static isControlInViewName;
4
+ private static isControlInViewId;
5
+ private static getAncestorViews;
6
+ private static compareId;
7
+ private static compareProperty;
8
+ private static compareBindingPathAndModelProperty;
9
+ private static compareArrayStrElements;
10
+ }
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ElementPropertiesComparator = void 0;
4
+ const Comparator_1 = require("./Comparator");
5
+ const UI5ControlHandler_1 = require("../utils/UI5ControlHandler");
6
+ class ElementPropertiesComparator {
7
+ static compareToProperties(elementProperties, control) {
8
+ return Object.entries(elementProperties ?? {}).every(([key, value]) => {
9
+ if (["domProperties", "metadata", "ancestorProperties", "descendantProperties", "siblingProperties", "mProperties"].includes(key)) {
10
+ return true;
11
+ }
12
+ if (key === "viewName") {
13
+ return ElementPropertiesComparator.isControlInViewName(control, value);
14
+ }
15
+ if (key === "viewId") {
16
+ return ElementPropertiesComparator.isControlInViewId(control, value);
17
+ }
18
+ if (key === "id") {
19
+ return ElementPropertiesComparator.compareId(control, value);
20
+ }
21
+ if (key === "bindingContextPath") {
22
+ return UI5ControlHandler_1.UI5ControlHandler.getControlBindingContextPaths(control).some((path) => Comparator_1.Comparator.compareWithWildCard(value, path));
23
+ }
24
+ if (Array.isArray(value)) {
25
+ return value.every((val) => {
26
+ if (typeof val === "string") {
27
+ return ElementPropertiesComparator.compareArrayStrElements(key, val, control);
28
+ }
29
+ else {
30
+ return ElementPropertiesComparator.compareBindingPathAndModelProperty(key, val, control);
31
+ }
32
+ });
33
+ }
34
+ if (typeof value === "object") {
35
+ return ElementPropertiesComparator.compareBindingPathAndModelProperty(key, value, control);
36
+ }
37
+ return ElementPropertiesComparator.compareProperty(control, key, value);
38
+ });
39
+ }
40
+ static isControlInViewName(control, viewName) {
41
+ return this.getAncestorViews(control).some((controlToCheck) => {
42
+ return Comparator_1.Comparator.compareWithWildCard(viewName, controlToCheck.getViewName?.());
43
+ });
44
+ }
45
+ static isControlInViewId(control, sViewId) {
46
+ return this.getAncestorViews(control).some((controlToCheck) => {
47
+ return Comparator_1.Comparator.compareWithWildCard(sViewId, controlToCheck.getId());
48
+ });
49
+ }
50
+ static getAncestorViews(control) {
51
+ return [control].concat(UI5ControlHandler_1.UI5ControlHandler.getUI5Ancestors(control)).filter((ancestor) => {
52
+ return ancestor instanceof sap.ui.core.mvc.View;
53
+ });
54
+ }
55
+ static compareId(control, expectedId) {
56
+ return expectedId === undefined || Comparator_1.Comparator.compareWithWildCard(expectedId, control.getId?.());
57
+ }
58
+ static compareProperty(control, key, value) {
59
+ const controlVal = UI5ControlHandler_1.UI5ControlHandler.getControlProperty(control, key);
60
+ return Comparator_1.Comparator.compareWithWildCard(value, controlVal);
61
+ }
62
+ static compareBindingPathAndModelProperty(key, value, control) {
63
+ const extrPath = UI5ControlHandler_1.UI5ControlHandler.extractBindingPathAndModelProperty(value);
64
+ if (!extrPath.path)
65
+ return true;
66
+ const bindingInfo = UI5ControlHandler_1.UI5ControlHandler.getBindDataForProperty(control, key);
67
+ return bindingInfo.some((info) => Comparator_1.Comparator.compareWithWildCard(extrPath.path, info.path) && (!extrPath.model || !info.model || Comparator_1.Comparator.compareWithWildCard(extrPath.model, info.model)));
68
+ }
69
+ static compareArrayStrElements(key, expectedValue, control) {
70
+ const values = UI5ControlHandler_1.UI5ControlHandler.getControlProperty(control, key) || [];
71
+ if (!values.length && !expectedValue)
72
+ return true;
73
+ if (values.length && !expectedValue)
74
+ return false;
75
+ return values.some((elem) => Comparator_1.Comparator.compareWithWildCard(expectedValue, elem.getId?.() ?? elem, true));
76
+ }
77
+ }
78
+ exports.ElementPropertiesComparator = ElementPropertiesComparator;
79
+ //# sourceMappingURL=ElementPropertiesComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ElementPropertiesComparator.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/comparators/ElementPropertiesComparator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export declare class MetadataComparator {
2
+ static compareMetadata(elementProperties: ElementProperties, control: UI5Control): boolean;
3
+ }
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MetadataComparator = void 0;
4
+ const Comparator_1 = require("./Comparator");
5
+ class MetadataComparator {
6
+ static compareMetadata(elementProperties, control) {
7
+ const controlMetadata = control.getMetadata().getName();
8
+ const metadata = elementProperties.metadata;
9
+ return metadata === undefined || Comparator_1.Comparator.compareWithWildCard(metadata, controlMetadata);
10
+ }
11
+ }
12
+ exports.MetadataComparator = MetadataComparator;
13
+ //# sourceMappingURL=MetadataComparator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MetadataComparator.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/comparators/MetadataComparator.ts"],"names":[],"mappings":";;;AAAA,6CAA0C;AAE1C,MAAa,kBAAkB;IACtB,MAAM,CAAC,eAAe,CAAC,iBAAoC,EAAE,OAAmB;QACrF,MAAM,eAAe,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,OAAO,EAAE,CAAC;QACxD,MAAM,QAAQ,GAAG,iBAAiB,CAAC,QAAQ,CAAC;QAC5C,OAAO,QAAQ,KAAK,SAAS,IAAI,uBAAU,CAAC,mBAAmB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;IAC7F,CAAC;CACF;AAND,gDAMC"}
@@ -0,0 +1,4 @@
1
+ import { BaseFilter } from "./BaseFilter";
2
+ export declare class AncestorFilter extends BaseFilter {
3
+ doCheckSingle(control: UI5Control): boolean;
4
+ }
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AncestorFilter = void 0;
4
+ const UI5ControlHandler_1 = require("../utils/UI5ControlHandler");
5
+ const BaseFilter_1 = require("./BaseFilter");
6
+ const ElementFilter_1 = require("./ElementFilter");
7
+ class AncestorFilter extends BaseFilter_1.BaseFilter {
8
+ doCheckSingle(control) {
9
+ const ancestors = UI5ControlHandler_1.UI5ControlHandler.getUI5Ancestors(control);
10
+ const elementFilter = this.filterFactory.getInstance(ElementFilter_1.ElementFilter, this.elementProperties);
11
+ return ancestors.some((ancestor) => elementFilter.checkSingle(ancestor));
12
+ }
13
+ }
14
+ exports.AncestorFilter = AncestorFilter;
15
+ //# sourceMappingURL=AncestorFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AncestorFilter.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/filters/AncestorFilter.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,6CAA0C;AAC1C,mDAAgD;AAEhD,MAAa,cAAe,SAAQ,uBAAU;IACrC,aAAa,CAAC,OAAmB;QACtC,MAAM,SAAS,GAAG,qCAAiB,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC;QAC7D,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,6BAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC5F,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC3E,CAAC;CACF;AAND,wCAMC"}
@@ -0,0 +1,12 @@
1
+ import { FilterFactory } from "../utils/FilterFactory";
2
+ export declare abstract class BaseFilter {
3
+ elementProperties: ElementProperties;
4
+ filterFactory: FilterFactory;
5
+ results: Map<string, boolean>;
6
+ constructor(filterFactory: FilterFactory, rawElementProperties: ElementProperties | undefined);
7
+ filter(controls: UI5Control[]): UI5Control[];
8
+ checkSingle(control: UI5Control): boolean;
9
+ protected abstract doCheckSingle(control: UI5Control): boolean;
10
+ protected doFiltering(controls: UI5Control[]): UI5Control[];
11
+ private convertRawElementPropertiesToElementProperties;
12
+ }
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BaseFilter = void 0;
4
+ const LocatorDebug_1 = require("../utils/LocatorDebug");
5
+ class BaseFilter {
6
+ constructor(filterFactory, rawElementProperties) {
7
+ this.elementProperties = this.convertRawElementPropertiesToElementProperties(rawElementProperties);
8
+ this.filterFactory = filterFactory;
9
+ this.results = new Map();
10
+ }
11
+ // Public
12
+ filter(controls) {
13
+ if (Object.keys(this.elementProperties).length === 0 || controls.length === 0) {
14
+ return controls;
15
+ }
16
+ LocatorDebug_1.LocatorDebug.beginLog(this.constructor.name, controls.length);
17
+ const filteredControls = this.doFiltering(controls);
18
+ LocatorDebug_1.LocatorDebug.endLog(this.constructor.name, filteredControls.length);
19
+ return filteredControls;
20
+ }
21
+ checkSingle(control) {
22
+ if (Object.keys(this.elementProperties).length === 0) {
23
+ return true;
24
+ }
25
+ if (!control) {
26
+ return false;
27
+ }
28
+ const controlID = control.getId();
29
+ if (!this.results.has(controlID)) {
30
+ this.results.set(controlID, this.doCheckSingle(control));
31
+ }
32
+ return this.results.get(controlID);
33
+ }
34
+ doFiltering(controls) {
35
+ return controls.filter((control) => this.checkSingle(control));
36
+ }
37
+ // Private
38
+ convertRawElementPropertiesToElementProperties(rawElementProperties) {
39
+ // needed for backward compatibility
40
+ let elementProperties = { ...rawElementProperties };
41
+ if (typeof rawElementProperties?.mProperties === "object") {
42
+ elementProperties = {
43
+ ...rawElementProperties,
44
+ ...rawElementProperties.mProperties
45
+ };
46
+ delete elementProperties.mProperties;
47
+ }
48
+ return elementProperties;
49
+ }
50
+ }
51
+ exports.BaseFilter = BaseFilter;
52
+ //# sourceMappingURL=BaseFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BaseFilter.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/filters/BaseFilter.ts"],"names":[],"mappings":";;;AACA,wDAAqD;AAErD,MAAsB,UAAU;IAK9B,YAAY,aAA4B,EAAE,oBAAmD;QAC3F,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,8CAA8C,CAAC,oBAAoB,CAAC,CAAC;QACnG,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,OAAO,GAAG,IAAI,GAAG,EAAE,CAAC;IAC3B,CAAC;IAED,SAAS;IACF,MAAM,CAAC,QAAsB;QAClC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC9E,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,2BAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC9D,MAAM,gBAAgB,GAAG,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QACpD,2BAAY,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;QAEpE,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAEM,WAAW,CAAC,OAAmB;QACpC,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;QAClC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC3D,CAAC;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAY,CAAC;IAChD,CAAC;IAKS,WAAW,CAAC,QAAsB;QAC1C,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;IACjE,CAAC;IAED,UAAU;IACF,8CAA8C,CAAC,oBAAmD;QACxG,oCAAoC;QACpC,IAAI,iBAAiB,GAAG,EAAE,GAAG,oBAAoB,EAAE,CAAC;QACpD,IAAI,OAAO,oBAAoB,EAAE,WAAW,KAAK,QAAQ,EAAE,CAAC;YAC1D,iBAAiB,GAAG;gBAClB,GAAG,oBAAoB;gBACvB,GAAG,oBAAoB,CAAC,WAAW;aACf,CAAC;YACvB,OAAO,iBAAiB,CAAC,WAAW,CAAC;QACvC,CAAC;QACD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;CACF;AAzDD,gCAyDC"}
@@ -0,0 +1,4 @@
1
+ import { BaseFilter } from "./BaseFilter";
2
+ export declare class ChildFilter extends BaseFilter {
3
+ doCheckSingle(control: UI5Control): boolean;
4
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ChildFilter = void 0;
4
+ const UI5ControlHandler_1 = require("../utils/UI5ControlHandler");
5
+ const BaseFilter_1 = require("./BaseFilter");
6
+ const ElementFilter_1 = require("./ElementFilter");
7
+ class ChildFilter extends BaseFilter_1.BaseFilter {
8
+ doCheckSingle(control) {
9
+ const element = document.getElementById(control.getId());
10
+ if (!element) {
11
+ return false;
12
+ }
13
+ const childControls = UI5ControlHandler_1.UI5ControlHandler.retrieveValidUI5ControlsSubElements(element.children);
14
+ const elementFilter = this.filterFactory.getInstance(ElementFilter_1.ElementFilter, this.elementProperties);
15
+ return childControls.some((childControl) => elementFilter.checkSingle(childControl));
16
+ }
17
+ }
18
+ exports.ChildFilter = ChildFilter;
19
+ //# sourceMappingURL=ChildFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ChildFilter.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/filters/ChildFilter.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,6CAA0C;AAC1C,mDAAgD;AAEhD,MAAa,WAAY,SAAQ,uBAAU;IAClC,aAAa,CAAC,OAAmB;QACtC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACzD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,aAAa,GAAG,qCAAiB,CAAC,mCAAmC,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC9F,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,6BAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC5F,OAAO,aAAa,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;IACvF,CAAC;CACF;AAVD,kCAUC"}
@@ -0,0 +1,4 @@
1
+ import { BaseFilter } from "./BaseFilter";
2
+ export declare class DescendantFilter extends BaseFilter {
3
+ doCheckSingle(control: UI5Control): boolean;
4
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DescendantFilter = void 0;
4
+ const UI5ControlHandler_1 = require("../utils/UI5ControlHandler");
5
+ const BaseFilter_1 = require("./BaseFilter");
6
+ const ElementFilter_1 = require("./ElementFilter");
7
+ class DescendantFilter extends BaseFilter_1.BaseFilter {
8
+ doCheckSingle(control) {
9
+ const parentElement = document.getElementById(control.getId?.());
10
+ if (!parentElement) {
11
+ return false;
12
+ }
13
+ const childControls = UI5ControlHandler_1.UI5ControlHandler.retrieveValidUI5ControlsSubElements(parentElement.children);
14
+ const elementFilter = this.filterFactory.getInstance(ElementFilter_1.ElementFilter, this.elementProperties);
15
+ let foundMatch = childControls.some((childControl) => elementFilter.checkSingle(childControl));
16
+ foundMatch ||= childControls.some((childControl) => this.checkSingle(childControl));
17
+ return foundMatch;
18
+ }
19
+ }
20
+ exports.DescendantFilter = DescendantFilter;
21
+ //# sourceMappingURL=DescendantFilter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DescendantFilter.js","sourceRoot":"","sources":["../../../../../src/scripts/locators/qmateLocatorSrc/filters/DescendantFilter.ts"],"names":[],"mappings":";;;AAAA,kEAA+D;AAC/D,6CAA0C;AAC1C,mDAAgD;AAEhD,MAAa,gBAAiB,SAAQ,uBAAU;IACvC,aAAa,CAAC,OAAmB;QACtC,MAAM,aAAa,GAAG,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,MAAM,aAAa,GAAG,qCAAiB,CAAC,mCAAmC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QACpG,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,6BAAa,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAC5F,IAAI,UAAU,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;QAC/F,UAAU,KAAK,aAAa,CAAC,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC,CAAC;QACpF,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAZD,4CAYC"}
@@ -0,0 +1,7 @@
1
+ import { BaseFilter } from "./BaseFilter";
2
+ export declare class ElementFilter extends BaseFilter {
3
+ protected doFiltering(controls: UI5Control[]): UI5Control[];
4
+ doCheckSingle(control: UI5Control): boolean;
5
+ private checkElementProperties;
6
+ static filterBySelector(ui5Selector: UI5Selector, controls: UI5Control[]): UI5Control[];
7
+ }