@thinkwise/testwise 0.2.62 → 0.2.67

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 (53) hide show
  1. package/components/filter/ExcelStyleFilterPopup.ts +50 -10
  2. package/components/filter/ExcelStyleFilterPopupObjects.ts +29 -3
  3. package/components/grid/Grid.ts +33 -14
  4. package/components/grid/GridObjects.ts +0 -15
  5. package/controls/DateControl.ts +8 -9
  6. package/controls/DateControlObjects.ts +15 -0
  7. package/controls/FormComboBox.ts +12 -25
  8. package/controls/FormComboBoxObjects.ts +27 -0
  9. package/controls/GridColumnControl.ts +1 -1
  10. package/controls/GridColumnControlObjects.ts +1 -1
  11. package/controls/InputFieldControl.ts +11 -14
  12. package/controls/InputFieldControlObjects.ts +19 -0
  13. package/controls/LookupDropdown.ts +29 -30
  14. package/controls/LookupDropdownObjects.ts +19 -0
  15. package/dist/components/filter/ExcelStyleFilterPopup.d.ts +11 -1
  16. package/dist/components/filter/ExcelStyleFilterPopup.js +47 -5
  17. package/dist/components/filter/ExcelStyleFilterPopup.js.map +1 -1
  18. package/dist/components/filter/ExcelStyleFilterPopupObjects.d.ts +7 -0
  19. package/dist/components/filter/ExcelStyleFilterPopupObjects.js +14 -1
  20. package/dist/components/filter/ExcelStyleFilterPopupObjects.js.map +1 -1
  21. package/dist/components/grid/Grid.d.ts +3 -1
  22. package/dist/components/grid/Grid.js +18 -25
  23. package/dist/components/grid/Grid.js.map +1 -1
  24. package/dist/components/grid/GridObjects.d.ts +0 -4
  25. package/dist/components/grid/GridObjects.js +0 -6
  26. package/dist/components/grid/GridObjects.js.map +1 -1
  27. package/dist/controls/DateControl.d.ts +1 -2
  28. package/dist/controls/DateControl.js +7 -7
  29. package/dist/controls/DateControl.js.map +1 -1
  30. package/dist/controls/DateControlObjects.d.ts +8 -1
  31. package/dist/controls/DateControlObjects.js +8 -1
  32. package/dist/controls/DateControlObjects.js.map +1 -1
  33. package/dist/controls/FormComboBox.js +11 -16
  34. package/dist/controls/FormComboBox.js.map +1 -1
  35. package/dist/controls/FormComboBoxObjects.d.ts +12 -1
  36. package/dist/controls/FormComboBoxObjects.js +15 -1
  37. package/dist/controls/FormComboBoxObjects.js.map +1 -1
  38. package/dist/controls/GridColumnControl.js +1 -1
  39. package/dist/controls/GridColumnControl.js.map +1 -1
  40. package/dist/controls/GridColumnControlObjects.js +1 -1
  41. package/dist/controls/GridColumnControlObjects.js.map +1 -1
  42. package/dist/controls/InputFieldControl.d.ts +1 -3
  43. package/dist/controls/InputFieldControl.js +10 -11
  44. package/dist/controls/InputFieldControl.js.map +1 -1
  45. package/dist/controls/InputFieldControlObjects.d.ts +10 -1
  46. package/dist/controls/InputFieldControlObjects.js +10 -1
  47. package/dist/controls/InputFieldControlObjects.js.map +1 -1
  48. package/dist/controls/LookupDropdown.js +28 -25
  49. package/dist/controls/LookupDropdown.js.map +1 -1
  50. package/dist/controls/LookupDropdownObjects.d.ts +10 -0
  51. package/dist/controls/LookupDropdownObjects.js +11 -0
  52. package/dist/controls/LookupDropdownObjects.js.map +1 -0
  53. package/package.json +1 -1
@@ -1,9 +1,19 @@
1
1
  import type { Locator, Page } from '@playwright/test';
2
2
  export declare class ExcelStyleFilterPopup {
3
- private _excelStyleFilterPopupObjects;
3
+ private _objects;
4
4
  constructor(page: Page);
5
5
  waitForOpen(): Promise<void>;
6
6
  intervalFilters(): Locator;
7
7
  fromDateInput(fieldTestId: string): Locator;
8
+ toDateInput(fieldTestId: string): Locator;
9
+ waitForClose(): Promise<void>;
10
+ setToDate(fieldTestId: string, value: string): Promise<void>;
8
11
  setFromDate(fieldTestId: string, value: string): Promise<void>;
12
+ clickSelectAll(fieldTestId: string): Promise<void>;
13
+ clickCheckboxItem(fieldTestId: string, value: string): Promise<void>;
14
+ checkboxItem(fieldTestId: string, value: string): Locator;
15
+ fromTimeInput(fieldTestId: string): Locator;
16
+ toTimeInput(fieldTestId: string): Locator;
17
+ setFromTime(fieldTestId: string, value: string): Promise<void>;
18
+ setToTime(fieldTestId: string, value: string): Promise<void>;
9
19
  }
@@ -1,20 +1,62 @@
1
1
  import { ExcelStyleFilterPopupObjects } from './ExcelStyleFilterPopupObjects.js';
2
2
  export class ExcelStyleFilterPopup {
3
3
  constructor(page) {
4
- this._excelStyleFilterPopupObjects = new ExcelStyleFilterPopupObjects(page);
4
+ this._objects = new ExcelStyleFilterPopupObjects(page);
5
5
  }
6
6
  async waitForOpen() {
7
- await this._excelStyleFilterPopupObjects.anchor().waitFor({ state: 'visible' });
7
+ await (await this._objects.anchor().all()).filter(async (element) => await element.isVisible());
8
8
  }
9
9
  intervalFilters() {
10
- return this._excelStyleFilterPopupObjects.intervalFilters();
10
+ return this._objects.intervalFilters();
11
11
  }
12
12
  fromDateInput(fieldTestId) {
13
- return this._excelStyleFilterPopupObjects.fromDateInput(fieldTestId);
13
+ return this._objects.fromDateInput(fieldTestId);
14
+ }
15
+ toDateInput(fieldTestId) {
16
+ return this._objects.toDateInput(fieldTestId);
17
+ }
18
+ // wait for close
19
+ async waitForClose() {
20
+ await (await this._objects.anchor().all()).filter(async (element) => !(await element.isVisible()));
21
+ }
22
+ async setToDate(fieldTestId, value) {
23
+ await this.waitForOpen();
24
+ const input = this._objects.toDateInput(fieldTestId);
25
+ await input.fill(value);
26
+ await input.press('Enter');
14
27
  }
15
28
  async setFromDate(fieldTestId, value) {
16
29
  await this.waitForOpen();
17
- const input = this._excelStyleFilterPopupObjects.fromDateInput(fieldTestId);
30
+ const input = this._objects.fromDateInput(fieldTestId);
31
+ await input.fill(value);
32
+ await input.press('Enter');
33
+ }
34
+ async clickSelectAll(fieldTestId) {
35
+ await this.waitForOpen();
36
+ await this._objects.checkboxSelectAllButton(fieldTestId).click();
37
+ }
38
+ async clickCheckboxItem(fieldTestId, value) {
39
+ await this.waitForOpen();
40
+ await this._objects.checkboxItemButtons(fieldTestId).filter({ hasText: value }).click();
41
+ }
42
+ checkboxItem(fieldTestId, value) {
43
+ return this._objects.checkboxItemCheckboxes(fieldTestId).filter({ hasText: value });
44
+ }
45
+ fromTimeInput(fieldTestId) {
46
+ return this._objects.fromTimeInput(fieldTestId);
47
+ }
48
+ toTimeInput(fieldTestId) {
49
+ return this._objects.toTimeInput(fieldTestId);
50
+ }
51
+ async setFromTime(fieldTestId, value) {
52
+ await this.waitForOpen();
53
+ const input = this._objects.fromTimeInput(fieldTestId);
54
+ await input.fill(value);
55
+ await input.press('Enter');
56
+ }
57
+ async setToTime(fieldTestId, value) {
58
+ await this.waitForOpen();
59
+ const input = this._objects.toTimeInput(fieldTestId);
18
60
  await input.fill(value);
19
61
  await input.press('Enter');
20
62
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExcelStyleFilterPopup.js","sourceRoot":"","sources":["../../../components/filter/ExcelStyleFilterPopup.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,4BAA4B,EAAE,MAAM,mCAAmC,CAAC;AAEjF,MAAM,OAAO,qBAAqB;IAGhC,YAAY,IAAU;QACpB,IAAI,CAAC,6BAA6B,GAAG,IAAI,4BAA4B,CAAC,IAAI,CAAC,CAAC;IAC9E,CAAC;IAED,KAAK,CAAC,WAAW;QACf,MAAM,IAAI,CAAC,6BAA6B,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAClF,CAAC;IAED,eAAe;QACb,OAAO,IAAI,CAAC,6BAA6B,CAAC,eAAe,EAAE,CAAC;IAC9D,CAAC;IAED,aAAa,CAAC,WAAmB;QAC/B,OAAO,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,WAAmB,EAAE,KAAa;QAClD,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,WAAW,CAAC,CAAC;QAC5E,MAAM,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,MAAM,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7B,CAAC;CACF"}
1
+ {"version":3,"file":"ExcelStyleFilterPopup.js","sourceRoot":"","sources":["../../../components/filter/ExcelStyleFilterPopup.ts"],"names":[],"mappings":"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"}
@@ -6,4 +6,11 @@ export declare class ExcelStyleFilterPopupObjects extends BaseComponentObjects {
6
6
  anchor: () => import("@playwright/test").Locator;
7
7
  intervalFilters: () => import("@playwright/test").Locator;
8
8
  fromDateInput: (fieldTestId: string) => import("@playwright/test").Locator;
9
+ toDateInput: (fieldTestId: string) => import("@playwright/test").Locator;
10
+ checkboxList: (fieldTestId: string) => import("@playwright/test").Locator;
11
+ checkboxSelectAllButton: (fieldTestId: string) => import("@playwright/test").Locator;
12
+ checkboxItemButtons: (fieldTestId: string) => import("@playwright/test").Locator;
13
+ checkboxItemCheckboxes: (fieldTestId: string) => import("@playwright/test").Locator;
14
+ fromTimeInput: (fieldTestId: string) => import("@playwright/test").Locator;
15
+ toTimeInput: (fieldTestId: string) => import("@playwright/test").Locator;
9
16
  }
@@ -2,11 +2,24 @@ import { BaseComponentObjects } from '../BaseComponentObjects.js';
2
2
  export class ExcelStyleFilterPopupObjects extends BaseComponentObjects {
3
3
  constructor(page) {
4
4
  super(page, page.locator('body'));
5
- this.anchor = () => this._page.locator('[data-testid^="date-time-excel-filter__"]').first();
5
+ this.anchor = () => this._page.locator('[data-testid*="-excel-filter__"]');
6
6
  this.intervalFilters = () => this._page.getByTestId('excel-style-filter-popup__interval-filters');
7
7
  this.fromDateInput = (fieldTestId) => this._page
8
8
  .getByTestId(`date-time-excel-filter__${fieldTestId}__from`)
9
9
  .getByTestId(`form-field__${fieldTestId}__date__input`);
10
+ this.toDateInput = (fieldTestId) => this._page
11
+ .getByTestId(`date-time-excel-filter__${fieldTestId}__to`)
12
+ .getByTestId(`form-field__${fieldTestId}__date__input`);
13
+ this.checkboxList = (fieldTestId) => this._page.locator(`[data-testid*="-excel-filter__${fieldTestId}__list"]`);
14
+ this.checkboxSelectAllButton = (fieldTestId) => this._page.locator(`[data-testid*="-excel-filter__${fieldTestId}__list-item-select-all-checkbox"]`);
15
+ this.checkboxItemButtons = (fieldTestId) => this._page.locator(`[data-testid*="-excel-filter__${fieldTestId}__list-item-button__"]`);
16
+ this.checkboxItemCheckboxes = (fieldTestId) => this._page.locator(`[data-testid*="-excel-filter__${fieldTestId}__list-item-checkbox__"]`);
17
+ this.fromTimeInput = (fieldTestId) => this._page
18
+ .getByTestId(`date-time-excel-filter__${fieldTestId}__from`)
19
+ .getByTestId(`form-field__${fieldTestId}__time__input`);
20
+ this.toTimeInput = (fieldTestId) => this._page
21
+ .getByTestId(`date-time-excel-filter__${fieldTestId}__to`)
22
+ .getByTestId(`form-field__${fieldTestId}__time__input`);
10
23
  this._page = page;
11
24
  }
12
25
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ExcelStyleFilterPopupObjects.js","sourceRoot":"","sources":["../../../components/filter/ExcelStyleFilterPopupObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,OAAO,4BAA6B,SAAQ,oBAAoB;IAGpE,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAI7B,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,2CAA2C,CAAC,CAAC,KAAK,EAAE,CAAC;QAEvF,oBAAe,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,4CAA4C,CAAC,CAAC;QAE7F,kBAAa,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7C,IAAI,CAAC,KAAK;aACP,WAAW,CAAC,2BAA2B,WAAW,QAAQ,CAAC;aAC3D,WAAW,CAAC,eAAe,WAAW,eAAe,CAAC,CAAC;QAV1D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CAUF"}
1
+ {"version":3,"file":"ExcelStyleFilterPopupObjects.js","sourceRoot":"","sources":["../../../components/filter/ExcelStyleFilterPopupObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,OAAO,4BAA6B,SAAQ,oBAAoB;IAGpE,YAAY,IAAU;QACpB,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;QAG7B,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,kCAAkC,CAAC,CAAC;QAEtE,oBAAe,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,4CAA4C,CAAC,CAAC;QAE7F,kBAAa,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7C,IAAI,CAAC,KAAK;aACP,WAAW,CAAC,2BAA2B,WAAW,QAAQ,CAAC;aAC3D,WAAW,CAAC,eAAe,WAAW,eAAe,CAAC,CAAC;QAErD,gBAAW,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK;aACP,WAAW,CAAC,2BAA2B,WAAW,MAAM,CAAC;aACzD,WAAW,CAAC,eAAe,WAAW,eAAe,CAAC,CAAC;QAErD,iBAAY,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC5C,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iCAAiC,WAAW,UAAU,CAAC,CAAC;QAEtE,4BAAuB,GAAG,CAAC,WAAmB,EAAE,EAAE,CACvD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iCAAiC,WAAW,mCAAmC,CAAC,CAAC;QAE/F,wBAAmB,GAAG,CAAC,WAAmB,EAAE,EAAE,CACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iCAAiC,WAAW,wBAAwB,CAAC,CAAC;QAEpF,2BAAsB,GAAG,CAAC,WAAmB,EAAE,EAAE,CACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,iCAAiC,WAAW,0BAA0B,CAAC,CAAC;QAEtF,kBAAa,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC7C,IAAI,CAAC,KAAK;aACP,WAAW,CAAC,2BAA2B,WAAW,QAAQ,CAAC;aAC3D,WAAW,CAAC,eAAe,WAAW,eAAe,CAAC,CAAC;QAErD,gBAAW,GAAG,CAAC,WAAmB,EAAE,EAAE,CAC3C,IAAI,CAAC,KAAK;aACP,WAAW,CAAC,2BAA2B,WAAW,MAAM,CAAC;aACzD,WAAW,CAAC,eAAe,WAAW,eAAe,CAAC,CAAC;QApC1D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CAoCF"}
@@ -2,6 +2,7 @@ import type { Locator, Page } from '@playwright/test';
2
2
  export declare class Grid {
3
3
  private _gridObjects;
4
4
  private _page;
5
+ private _excelStyleFilterPopup;
5
6
  constructor(gridContext: Locator);
6
7
  protected get page(): Page;
7
8
  /**
@@ -38,7 +39,7 @@ export declare class Grid {
38
39
  * @param columnName - The name of the column for which to open the filter popup.
39
40
  * @returns A promise that resolves when the filter popup is opened.
40
41
  */
41
- openExcelStyleFilterPopup: (columnName: string) => Promise<void>;
42
+ openExcelStyleFilterPopup: (columnNameOrHeader: string | Locator) => Promise<void>;
42
43
  /**
43
44
  * Retrieves all rows in the grid that match a specific column value.
44
45
  * @param colIdToMatchOn
@@ -70,6 +71,7 @@ export declare class Grid {
70
71
  * await grid.filterByColumnValueExcelStyle('Status', 'Pending', false);
71
72
  */
72
73
  filterByColumnValueExcelStyle(columnName: string, valueToSelect: string, deselectAll?: boolean): Promise<void>;
74
+ filterByColumnValueExcelStyle(columnHeader: Locator, valueToSelect: string, deselectAll?: boolean): Promise<void>;
73
75
  /**
74
76
  * Selects a row by its row-id pattern.
75
77
  * Matches rows where the row-id attribute ends with "|{rowIdPattern}".
@@ -1,5 +1,6 @@
1
1
  import { pollUntil } from '../../helpers/Poll.js';
2
2
  import { escapeRegex } from '../../helpers/RegexHelper.js';
3
+ import { ExcelStyleFilterPopup } from '../index.js';
3
4
  import { GridObjects } from './GridObjects.js';
4
5
  export class Grid {
5
6
  constructor(gridContext) {
@@ -31,12 +32,15 @@ export class Grid {
31
32
  * @param columnName - The name of the column for which to open the filter popup.
32
33
  * @returns A promise that resolves when the filter popup is opened.
33
34
  */
34
- this.openExcelStyleFilterPopup = async (columnName) => {
35
- const filterIcon = this._gridObjects.menuIconByColumnHeaderName(columnName);
35
+ this.openExcelStyleFilterPopup = async (columnNameOrHeader) => {
36
+ const filterIcon = typeof columnNameOrHeader === 'string'
37
+ ? this._gridObjects.menuIconByColumnHeaderName(columnNameOrHeader)
38
+ : columnNameOrHeader.getByTestId('grid__custom__filter__icon');
36
39
  await filterIcon.click({ force: true });
37
40
  };
38
41
  this._gridObjects = new GridObjects(gridContext.page(), gridContext);
39
42
  this._page = gridContext.page();
43
+ this._excelStyleFilterPopup = new ExcelStyleFilterPopup(this._page);
40
44
  }
41
45
  get page() {
42
46
  return this._page;
@@ -95,36 +99,25 @@ export class Grid {
95
99
  }
96
100
  return Array.from(collected);
97
101
  }
98
- /**
99
- * Filters a grid column using the Excel-style filter popup.
100
- *
101
- * @param columnName - The column to filter
102
- * @param valueToSelect - The value to select
103
- * @param deselectAll - If true, clears existing selections first (default: true)
104
- *
105
- * @example
106
- * await grid.filterByColumnValueExcelStyle('Status', 'Active');
107
- * await grid.filterByColumnValueExcelStyle('Status', 'Pending', false);
108
- */
109
- async filterByColumnValueExcelStyle(columnName, valueToSelect, deselectAll = true) {
110
- await this.openExcelStyleFilterPopup(columnName);
102
+ async filterByColumnValueExcelStyle(columnNameOrHeader, valueToSelect, deselectAll = true) {
103
+ await this.openExcelStyleFilterPopup(columnNameOrHeader);
111
104
  // Get column ID from header and normalize it (snake_case -> kebab-case)
112
- const header = this._gridObjects.columnHeaderByName(columnName);
105
+ const header = typeof columnNameOrHeader === 'string'
106
+ ? this._gridObjects.columnHeaderByName(columnNameOrHeader)
107
+ : columnNameOrHeader;
113
108
  const rawColumnId = await header.getAttribute('col-id');
114
109
  if (!rawColumnId) {
115
- throw new Error(`Could not find col-id for column "${columnName}"`);
110
+ throw new Error(`Could not find col-id for column${typeof columnNameOrHeader === 'string' ? ` "${columnNameOrHeader}"` : ''}`);
116
111
  }
117
112
  const columnId = rawColumnId.toLowerCase().replace(/_/g, '-');
118
- const popup = this._gridObjects.excelStyleFilterPopup(columnId);
119
- await popup.waitFor({ state: 'visible' });
113
+ //const popup = this._gridObjects.excelStyleFilterPopup(columnId);
114
+ await this._excelStyleFilterPopup.waitForOpen();
120
115
  if (deselectAll) {
121
- await this._gridObjects.excelStyleFilterSelectAllCheckbox(columnId).uncheck();
116
+ await this._excelStyleFilterPopup.clickSelectAll(columnId);
122
117
  }
123
- const valueRegex = new RegExp(`^${escapeRegex(valueToSelect)}$`, 'i');
124
- const optionButton = this._gridObjects.excelStyleFilterPopupOptionByText(columnId, valueRegex);
125
- await optionButton.locator('input[type="checkbox"]').check();
126
- await this._gridObjects.mainHeader.click(); // Click outside to close the popup
127
- await popup.waitFor({ state: 'detached' });
118
+ await this._excelStyleFilterPopup.clickCheckboxItem(columnId, valueToSelect);
119
+ await this._gridObjects.mainHeader.click();
120
+ await this._excelStyleFilterPopup.waitForClose();
128
121
  }
129
122
  /**
130
123
  * Selects a row by its row-id pattern.
@@ -1 +1 @@
1
- {"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../../components/grid/Grid.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Grid.js","sourceRoot":"","sources":["../../../components/grid/Grid.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
1
  import type { Locator, Page } from '@playwright/test';
2
2
  import { BaseComponentObjects } from '../BaseComponentObjects.js';
3
3
  export declare class GridObjects extends BaseComponentObjects {
4
- private _page;
5
4
  constructor(page: Page, context?: Locator | null);
6
5
  columnHeaderByText: (text: string) => Locator;
7
6
  columnHeaders: () => Locator;
@@ -13,9 +12,6 @@ export declare class GridObjects extends BaseComponentObjects {
13
12
  rows: () => Locator;
14
13
  cellsByColumnId: (colId: string) => Locator;
15
14
  columnByRowLocator: (rowLocator: Locator) => Locator;
16
- excelStyleFilterPopup: (columnId: string) => Locator;
17
- excelStyleFilterSelectAllCheckbox: (columnId: string) => Locator;
18
- excelStyleFilterPopupOptionByText: (columnId: string, optionText: RegExp) => Locator;
19
15
  gridCell: () => Locator;
20
16
  noRowsOverlay: () => Locator;
21
17
  }
@@ -14,14 +14,8 @@ export class GridObjects extends BaseComponentObjects {
14
14
  this.rows = () => this.context.locator('[role="row"]');
15
15
  this.cellsByColumnId = (colId) => this.context.locator(`[col-id="${colId}"] .value-renderer`);
16
16
  this.columnByRowLocator = (rowLocator) => rowLocator.locator('.ag-cell');
17
- this.excelStyleFilterPopup = (columnId) => this._page.getByTestId(`lookup-excel-filter__${columnId}__list`);
18
- this.excelStyleFilterSelectAllCheckbox = (columnId) => this._page.locator(`[data-testid="lookup-excel-filter__${columnId}__list-item-select-all-checkbox"] input[type="checkbox"]`);
19
- this.excelStyleFilterPopupOptionByText = (columnId, optionText) => this._page
20
- .locator(`[data-testid^="lookup-excel-filter__${columnId}__list-item-button"]`)
21
- .filter({ hasText: optionText });
22
17
  this.gridCell = () => this.context.locator('[role="gridcell"]');
23
18
  this.noRowsOverlay = () => this.context.locator('.ag-overlay-no-rows-center');
24
- this._page = page;
25
19
  }
26
20
  }
27
21
  //# sourceMappingURL=GridObjects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"GridObjects.js","sourceRoot":"","sources":["../../../components/grid/GridObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,OAAO,WAAY,SAAQ,oBAAoB;IAGnD,YAAY,IAAU,EAAE,UAA0B,IAAI;QACpD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAIhB,uBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAExG,kBAAa,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAEpE,uBAAkB,GAAG,CAAC,UAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAE1G,+BAA0B,GAAG,CAAC,UAAkB,EAAE,EAAE,CACzD,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QAEzE,eAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC,CAAC;QAEvF,eAAU,GAAG,CAAC,YAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,YAAY,IAAI,CAAC,CAAC;QAExG,gBAAW,GAAG,CAAC,KAAa,EAAE,EAAE,CACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACtC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEE,SAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElD,oBAAe,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,KAAK,oBAAoB,CAAC,CAAC;QAEjG,uBAAkB,GAAG,CAAC,UAAmB,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE7E,0BAAqB,GAAG,CAAC,QAAgB,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,wBAAwB,QAAQ,QAAQ,CAAC,CAAC;QAE/G,sCAAiC,GAAG,CAAC,QAAgB,EAAE,EAAE,CAC9D,IAAI,CAAC,KAAK,CAAC,OAAO,CAChB,sCAAsC,QAAQ,0DAA0D,CACzG,CAAC;QAEG,sCAAiC,GAAG,CAAC,QAAgB,EAAE,UAAkB,EAAE,EAAE,CAClF,IAAI,CAAC,KAAK;aACP,OAAO,CAAC,uCAAuC,QAAQ,sBAAsB,CAAC;aAC9E,MAAM,CAAC,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QAE9B,aAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAE3D,kBAAa,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAzC9E,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;IACpB,CAAC;CAyCF"}
1
+ {"version":3,"file":"GridObjects.js","sourceRoot":"","sources":["../../../components/grid/GridObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAElE,MAAM,OAAO,WAAY,SAAQ,oBAAoB;IACnD,YAAY,IAAU,EAAE,UAA0B,IAAI;QACpD,KAAK,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAGhB,uBAAkB,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAExG,kBAAa,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAEpE,uBAAkB,GAAG,CAAC,UAAkB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC,CAAC;QAE1G,+BAA0B,GAAG,CAAC,UAAkB,EAAE,EAAE,CACzD,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,CAAC,WAAW,CAAC,4BAA4B,CAAC,CAAC;QAEzE,eAAU,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,2BAA2B,GAAG,IAAI,CAAC,CAAC;QAEvF,eAAU,GAAG,CAAC,YAAoB,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,0BAA0B,YAAY,IAAI,CAAC,CAAC;QAExG,gBAAW,GAAG,CAAC,KAAa,EAAE,EAAE,CACrC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACtC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAEE,SAAI,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAElD,oBAAe,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,KAAK,oBAAoB,CAAC,CAAC;QAEjG,uBAAkB,GAAG,CAAC,UAAmB,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QAE7E,aAAQ,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;QAE3D,kBAAa,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;IA5BhF,CAAC;CA6BF"}
@@ -7,8 +7,7 @@ export type IDateControlCore = {
7
7
  inputElement(): Locator;
8
8
  };
9
9
  export declare class DateControl implements IDateControlCore {
10
- private _dateFieldLocator;
11
- private _inputLocator;
10
+ private _objects;
12
11
  constructor(context: Locator, id: string);
13
12
  /**
14
13
  * Enter a date value in any common format (e.g., "MM/DD/YYYY", "YYYY-MM-DD", "DD-MM-YYYY").
@@ -1,7 +1,7 @@
1
+ import { DateControlObjects } from './DateControlObjects.js';
1
2
  export class DateControl {
2
3
  constructor(context, id) {
3
- this._dateFieldLocator = context.getByTestId(`form-field__${id}`);
4
- this._inputLocator = this._dateFieldLocator.locator('input');
4
+ this._objects = new DateControlObjects(context, id);
5
5
  }
6
6
  /**
7
7
  * Enter a date value in any common format (e.g., "MM/DD/YYYY", "YYYY-MM-DD", "DD-MM-YYYY").
@@ -12,17 +12,17 @@ export class DateControl {
12
12
  */
13
13
  async fill(value) {
14
14
  const numbersOnlyValue = value.replace(/\D/g, '');
15
- await this._inputLocator.focus();
16
- await this._inputLocator.pressSequentially(numbersOnlyValue);
15
+ await this._objects.fieldInput().focus();
16
+ await this._objects.fieldInput().pressSequentially(numbersOnlyValue);
17
17
  }
18
18
  async clear() {
19
- await this._inputLocator.fill('');
19
+ await this._objects.fieldInput().fill('');
20
20
  }
21
21
  async inputValue() {
22
- return await this._inputLocator.inputValue();
22
+ return await this._objects.fieldInput().inputValue();
23
23
  }
24
24
  inputElement() {
25
- return this._inputLocator;
25
+ return this._objects.fieldInput();
26
26
  }
27
27
  }
28
28
  export function createDateControl(context, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"DateControl.js","sourceRoot":"","sources":["../../controls/DateControl.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,WAAW;IAItB,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,KAAa;QAC7B,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;QACjC,MAAM,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IAC/D,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IAC/C,CAAC;IAEM,YAAY;QACjB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAgB,EAAE,EAAU;IAC5D,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,iBAAiB,EAAE;QAClC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAA4B,CAAC;AAChC,CAAC"}
1
+ {"version":3,"file":"DateControl.js","sourceRoot":"","sources":["../../controls/DateControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAW7D,MAAM,OAAO,WAAW;IAGtB,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAkB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,IAAI,CAAC,KAAa;QAC7B,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAElD,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;QACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACvE,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,CAAC;IACvD,CAAC;IAEM,YAAY;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAAC,OAAgB,EAAE,EAAU;IAC5D,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACvD,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,iBAAiB,EAAE;QAClC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAA4B,CAAC;AAChC,CAAC"}
@@ -1 +1,8 @@
1
- export {};
1
+ import type { Locator } from '@playwright/test';
2
+ export declare class DateControlObjects {
3
+ private _context;
4
+ private _id;
5
+ constructor(context: Locator, id: string);
6
+ fieldInput: () => Locator;
7
+ dateField: () => Locator;
8
+ }
@@ -1,2 +1,9 @@
1
- export {};
1
+ export class DateControlObjects {
2
+ constructor(context, id) {
3
+ this.fieldInput = () => this._context;
4
+ this.dateField = () => this._context.getByTestId(`form-field__${this._id}`);
5
+ this._context = context;
6
+ this._id = id;
7
+ }
8
+ }
2
9
  //# sourceMappingURL=DateControlObjects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DateControlObjects.js","sourceRoot":"","sources":["../../controls/DateControlObjects.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"DateControlObjects.js","sourceRoot":"","sources":["../../controls/DateControlObjects.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,kBAAkB;IAI7B,YAAY,OAAgB,EAAE,EAAU;QAKjC,eAAU,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;QAE1C,cAAS,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QANrF,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAChB,CAAC;CAKF"}
@@ -1,29 +1,24 @@
1
+ import { FormComboBoxObjects } from './FormComboBoxObjects.js';
1
2
  class FormComboBox {
2
3
  constructor(context, id) {
3
- this._id = id;
4
- this._formFieldLocator = context.getByTestId(`form-field__${id}`);
5
- this._autoCompleteMenu = context.getByTestId(`form-field__${id}__select__options-list`);
4
+ this._objects = new FormComboBoxObjects(context, id);
6
5
  }
7
6
  async selectOption(optionText) {
8
- await this._formFieldLocator.locator('input').click();
9
- await this._autoCompleteMenu.waitFor({ state: 'visible' });
10
- const optionTextLowercase = optionText.toLowerCase();
11
- await this._autoCompleteMenu.getByTestId(`form-field__${this._id}__select__${optionTextLowercase}__text`).click();
7
+ await this._objects.fieldInput().click();
8
+ await this._objects.autoCompleteMenu().waitFor({ state: 'visible' });
9
+ await this._objects.option(optionText).click();
12
10
  }
13
11
  async getValidationMessage() {
14
- await this._formFieldLocator.locator('.TooltipContainer p').waitFor({ state: 'visible' });
15
- return await this._formFieldLocator.locator('.TooltipContainer p').innerText();
12
+ await this._objects.validationMessage().waitFor({ state: 'visible' });
13
+ return await this._objects.validationMessage().innerText();
16
14
  }
17
15
  async clearByClick() {
18
- await this._formFieldLocator.locator('Button[aria-label="Clear"]').click();
16
+ await this._objects.clearButton().click();
19
17
  }
20
18
  async lookupSelect(optionToSelect) {
21
- await this._formFieldLocator.locator('input').fill(optionToSelect);
22
- await this._autoCompleteMenu.waitFor({ state: 'visible' });
23
- const optionToSelectLowercase = optionToSelect.toLowerCase();
24
- await this._autoCompleteMenu
25
- .getByTestId(`form-field__${this._id}__select__${optionToSelectLowercase}__text`)
26
- .click();
19
+ await this._objects.fieldInput().fill(optionToSelect);
20
+ await this._objects.autoCompleteMenu().waitFor({ state: 'visible' });
21
+ await this._objects.option(optionToSelect).click();
27
22
  }
28
23
  }
29
24
  export function createFormComboBox(context, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"FormComboBox.js","sourceRoot":"","sources":["../../controls/FormComboBox.ts"],"names":[],"mappings":"AAaA,MAAM,YAAY;IAKhB,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,CAAC;QAEtD,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE3D,MAAM,mBAAmB,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;QAErD,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,aAAa,mBAAmB,QAAQ,CAAC,CAAC,KAAK,EAAE,CAAC;IACpH,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1F,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,SAAS,EAAE,CAAC;IACjF,CAAC;IACD,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC,KAAK,EAAE,CAAC;IAC7E,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,cAAsB;QACvC,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAEnE,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAE3D,MAAM,uBAAuB,GAAG,cAAc,CAAC,WAAW,EAAE,CAAC;QAE7D,MAAM,IAAI,CAAC,iBAAiB;aACzB,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,aAAa,uBAAuB,QAAQ,CAAC;aAChF,KAAK,EAAE,CAAC;IACb,CAAC;CACF;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,EAAU;IAC7D,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAA6B,CAAC;AACjC,CAAC"}
1
+ {"version":3,"file":"FormComboBox.js","sourceRoot":"","sources":["../../controls/FormComboBox.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAW/D,MAAM,YAAY;IAGhB,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,mBAAmB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IACvD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,UAAkB;QACnC,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;QACzC,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,EAAE,CAAC;IACjD,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,CAAC;IAC7D,CAAC;IACD,KAAK,CAAC,YAAY;QAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,KAAK,EAAE,CAAC;IAC5C,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,cAAsB;QACvC,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACrE,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,KAAK,EAAE,CAAC;IACrD,CAAC;CACF;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB,EAAE,EAAU;IAC7D,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACzB,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAA6B,CAAC;AACjC,CAAC"}
@@ -1 +1,12 @@
1
- export {};
1
+ import type { Locator } from '@playwright/test';
2
+ export declare class FormComboBoxObjects {
3
+ private _context;
4
+ private _id;
5
+ constructor(context: Locator, id: string);
6
+ field: () => Locator;
7
+ autoCompleteMenu: () => Locator;
8
+ option: (optionText: string) => Locator;
9
+ clearButton: () => Locator;
10
+ validationMessage: () => Locator;
11
+ fieldInput: () => Locator;
12
+ }
@@ -1,2 +1,16 @@
1
- export {};
1
+ export class FormComboBoxObjects {
2
+ constructor(context, id) {
3
+ this.field = () => this._context.getByTestId(`form-field__${this._id}`);
4
+ this.autoCompleteMenu = () => this._context.page().getByTestId(`form-field__${this._id}__select__options-list`);
5
+ this.option = (optionText) => {
6
+ const optionTextLowercase = optionText.toLowerCase();
7
+ return this.autoCompleteMenu().getByTestId(`form-field__${this._id}__select__${optionTextLowercase}__text`);
8
+ };
9
+ this.clearButton = () => this.field().locator('Button[aria-label="Clear"]');
10
+ this.validationMessage = () => this.field().locator('.TooltipContainer p');
11
+ this.fieldInput = () => this.field().locator('input');
12
+ this._context = context;
13
+ this._id = id;
14
+ }
15
+ }
2
16
  //# sourceMappingURL=FormComboBoxObjects.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"FormComboBoxObjects.js","sourceRoot":"","sources":["../../controls/FormComboBoxObjects.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"FormComboBoxObjects.js","sourceRoot":"","sources":["../../controls/FormComboBoxObjects.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,mBAAmB;IAI9B,YAAY,OAAgB,EAAE,EAAU;QAKjC,UAAK,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAE5E,qBAAgB,GAAG,GAAY,EAAE,CACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,wBAAwB,CAAC,CAAC;QAE7E,WAAM,GAAG,CAAC,UAAkB,EAAW,EAAE;YAC9C,MAAM,mBAAmB,GAAG,UAAU,CAAC,WAAW,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,gBAAgB,EAAE,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,aAAa,mBAAmB,QAAQ,CAAC,CAAC;QAC9G,CAAC,CAAC;QAEK,gBAAW,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;QAEhF,sBAAiB,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;QAE/E,eAAU,GAAG,GAAY,EAAE,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAlB/D,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IAChB,CAAC;CAiBF"}
@@ -21,7 +21,7 @@ class GridColumnControl {
21
21
  return await this._grid.getCellValuesByColId(this._id);
22
22
  }
23
23
  async filterByColumnValueExcelStyle(value, deselectAll) {
24
- await this._grid.filterByColumnValueExcelStyle(this._id, value, deselectAll);
24
+ await this._grid.filterByColumnValueExcelStyle(this._objects.columnHeader(), value, deselectAll);
25
25
  }
26
26
  }
27
27
  export function createGridColumnControl(gridContext, id) {
@@ -1 +1 @@
1
- {"version":3,"file":"GridColumnControl.js","sourceRoot":"","sources":["../../controls/GridColumnControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAYzE,MAAM,iBAAiB;IAKrB,YAAY,WAAoB,EAAE,EAAU;QAC1C,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,wBAAwB,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK,CAAC,yBAAyB;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAEM,KAAK,CAAC,eAAe;QAC1B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC5C,CAAC;IAEM,mBAAmB,CAAC,KAAa;QACtC,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK,CAAC,aAAa;QACxB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,6BAA6B,CAAC,KAAa,EAAE,WAAqB;QAC7E,MAAM,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IAC/E,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,WAAoB,EAAE,EAAU;IACtE,MAAM,aAAa,GAAG,IAAI,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAExD,OAAO,IAAI,KAAK,CAAC,aAAa,EAAE;QAC9B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"GridColumnControl.js","sourceRoot":"","sources":["../../controls/GridColumnControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAYzE,MAAM,iBAAiB;IAKrB,YAAY,WAAoB,EAAE,EAAU;QAC1C,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACjC,IAAI,CAAC,QAAQ,GAAG,IAAI,wBAAwB,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACpE,IAAI,CAAC,KAAK,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IAEM,KAAK,CAAC,yBAAyB;QACpC,MAAM,IAAI,CAAC,KAAK,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAEM,KAAK,CAAC,eAAe;QAC1B,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;IAC5C,CAAC;IAEM,mBAAmB,CAAC,KAAa;QACtC,MAAM,gBAAgB,GAAG,IAAI,MAAM,CAAC,IAAI,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC/D,OAAO,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAC;IACrD,CAAC;IAEM,KAAK,CAAC,aAAa;QACxB,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,6BAA6B,CAAC,KAAa,EAAE,WAAqB;QAC7E,MAAM,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACnG,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,WAAoB,EAAE,EAAU;IACtE,MAAM,aAAa,GAAG,IAAI,iBAAiB,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IAExD,OAAO,IAAI,KAAK,CAAC,aAAa,EAAE;QAC9B,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YAED,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YACrC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC"}
@@ -3,7 +3,7 @@ export class GridColumnControlObjects extends BaseComponentObjects {
3
3
  constructor(gridContext, columnId) {
4
4
  super(gridContext.page(), gridContext);
5
5
  this.column = () => this.context.locator(`[col-id="${this._id}"]`);
6
- this.columnHeader = () => this.column().getByRole('columnheader');
6
+ this.columnHeader = () => this.context.locator(`[col-id="${this._id}"][role="columnheader"]`);
7
7
  this.cellByValue = (value) => this.column().locator('[role="button"]', {
8
8
  hasText: value
9
9
  });
@@ -1 +1 @@
1
- {"version":3,"file":"GridColumnControlObjects.js","sourceRoot":"","sources":["../../controls/GridColumnControlObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,MAAM,OAAO,wBAAyB,SAAQ,oBAAoB;IAGhE,YAAY,WAAoB,EAAE,QAAgB;QAChD,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QAIlC,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAE9D,iBAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;QAE7D,gBAAW,GAAG,CAAC,KAAa,EAAE,EAAE,CACrC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACvC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAVH,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC;IACtB,CAAC;CAUF"}
1
+ {"version":3,"file":"GridColumnControlObjects.js","sourceRoot":"","sources":["../../controls/GridColumnControlObjects.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAE7E,MAAM,OAAO,wBAAyB,SAAQ,oBAAoB;IAGhE,YAAY,WAAoB,EAAE,QAAgB;QAChD,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,EAAE,WAAW,CAAC,CAAC;QAIlC,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAE9D,iBAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,IAAI,CAAC,GAAG,yBAAyB,CAAC,CAAC;QAEzF,gBAAW,GAAG,CAAC,KAAa,EAAE,EAAE,CACrC,IAAI,CAAC,MAAM,EAAE,CAAC,OAAO,CAAC,iBAAiB,EAAE;YACvC,OAAO,EAAE,KAAK;SACf,CAAC,CAAC;QAVH,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC;IACtB,CAAC;CAUF"}
@@ -11,9 +11,7 @@ export type ICoreInputFieldControl = {
11
11
  inputElement(): Locator;
12
12
  };
13
13
  export declare class InputFieldControl implements ICoreInputFieldControl {
14
- private _formFieldLocator;
15
- private _inputLocator;
16
- private _id;
14
+ private _objects;
17
15
  constructor(context: Locator, id: string);
18
16
  getValidationMessage(): Promise<string>;
19
17
  fill(value: string): Promise<void>;
@@ -1,30 +1,29 @@
1
+ import { InputFieldControlObjects } from './InputFieldControlObjects.js';
1
2
  export class InputFieldControl {
2
3
  constructor(context, id) {
3
- this._id = id;
4
- this._formFieldLocator = context.getByTestId(`form-field__${id}`);
5
- this._inputLocator = this._formFieldLocator.locator('input');
4
+ this._objects = new InputFieldControlObjects(context, id);
6
5
  }
7
6
  async getValidationMessage() {
8
- await this._formFieldLocator.locator('.TooltipContainer p').waitFor({ state: 'visible' });
9
- return await this._formFieldLocator.locator('.TooltipContainer p').innerText();
7
+ await this._objects.validationMessage().waitFor({ state: 'visible' });
8
+ return await this._objects.validationMessage().innerText();
10
9
  }
11
10
  async fill(value) {
12
- await this._inputLocator.fill(value);
11
+ await this._objects.fieldInput().fill(value);
13
12
  }
14
13
  async click() {
15
- await this._inputLocator.click();
14
+ await this._objects.fieldInput().click();
16
15
  }
17
16
  async clear() {
18
- await this._inputLocator.fill('');
17
+ await this._objects.fieldInput().fill('');
19
18
  }
20
19
  async inputValue() {
21
- return await this._inputLocator.inputValue();
20
+ return await this._objects.fieldInput().inputValue();
22
21
  }
23
22
  inputElement() {
24
- return this._inputLocator;
23
+ return this._objects.fieldInput();
25
24
  }
26
25
  async getLabelText() {
27
- let returnText = (await this._formFieldLocator.getByTestId(`form-field__${this._id}__label`).textContent()) || '';
26
+ let returnText = (await this._objects.fieldLabel().textContent()) || '';
28
27
  returnText = returnText.replace(/\s+/g, ' ').trim();
29
28
  return returnText;
30
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"InputFieldControl.js","sourceRoot":"","sources":["../../controls/InputFieldControl.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,iBAAiB;IAK5B,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAClE,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,CAAC;IAEM,KAAK,CAAC,oBAAoB;QAC/B,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC1F,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC,SAAS,EAAE,CAAC;IACjF,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,KAAa;QAC7B,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IACvC,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;IACnC,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,CAAC;IAC/C,CAAC;IAEM,YAAY;QACjB,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,IAAI,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,GAAG,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAElH,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAEpD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAgB,EAAE,EAAU;IAClE,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,iBAAiB,EAAE;QAClC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC"}
1
+ {"version":3,"file":"InputFieldControl.js","sourceRoot":"","sources":["../../controls/InputFieldControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAczE,MAAM,OAAO,iBAAiB;IAG5B,YAAY,OAAgB,EAAE,EAAU;QACtC,IAAI,CAAC,QAAQ,GAAG,IAAI,wBAAwB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC5D,CAAC;IAEM,KAAK,CAAC,oBAAoB;QAC/B,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QACtE,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,iBAAiB,EAAE,CAAC,SAAS,EAAE,CAAC;IAC7D,CAAC;IAEM,KAAK,CAAC,IAAI,CAAC,KAAa;QAC7B,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,KAAK;QAChB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAEM,KAAK,CAAC,UAAU;QACrB,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,UAAU,EAAE,CAAC;IACvD,CAAC;IAEM,YAAY;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;IACpC,CAAC;IAEM,KAAK,CAAC,YAAY;QACvB,IAAI,UAAU,GAAG,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAExE,UAAU,GAAG,UAAU,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;QAEpD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF;AAED,MAAM,UAAU,uBAAuB,CAAC,OAAgB,EAAE,EAAU;IAClE,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG,OAAO,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEzD,OAAO,IAAI,KAAK,CAAC,iBAAiB,EAAE;QAClC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ;YACxB,IAAI,IAAI,IAAI,MAAM,EAAE,CAAC;gBACnB,OAAO,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;YAC7C,CAAC;YACD,MAAM,KAAK,GAAI,OAAe,CAAC,IAAI,CAAC,CAAC;YAErC,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE,CAAC;gBAChC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC7B,CAAC;YACD,OAAO,KAAK,CAAC;QACf,CAAC;KACF,CAAkC,CAAC;AACtC,CAAC"}