d5-testing-library 1.9.0-alpha.22 → 1.9.0-alpha.24

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.
@@ -0,0 +1,7 @@
1
+ import {
2
+ FormEdit
3
+ } from "./chunk-Q5FDRZXL.mjs";
4
+ import "./chunk-Z7TA6QHD.mjs";
5
+ export {
6
+ FormEdit as default
7
+ };
@@ -0,0 +1,7 @@
1
+ import {
2
+ ListForm
3
+ } from "./chunk-XPNFBXMQ.mjs";
4
+ import "./chunk-Z7TA6QHD.mjs";
5
+ export {
6
+ ListForm as default
7
+ };
@@ -0,0 +1,8 @@
1
+ import {
2
+ TreeView
3
+ } from "./chunk-H53CPYV5.mjs";
4
+ import "./chunk-XPNFBXMQ.mjs";
5
+ import "./chunk-Z7TA6QHD.mjs";
6
+ export {
7
+ TreeView as default
8
+ };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ListForm
3
- } from "./chunk-27XBX275.mjs";
3
+ } from "./chunk-XPNFBXMQ.mjs";
4
4
 
5
5
  // src/pageObjects/elements/Forms/TreeView.ts
6
6
  var TREELIST_HEADER_CSS_SELECTOR = ".dx-treelist-headers .dx-treelist-content .dx-treelist-table.dx-treelist-table-fixed";
@@ -3,7 +3,7 @@ import {
3
3
  FormField,
4
4
  click,
5
5
  safeWait
6
- } from "./chunk-FRCMUAAY.mjs";
6
+ } from "./chunk-Z7TA6QHD.mjs";
7
7
 
8
8
  // src/pageObjects/elements/Forms/FormEdit.ts
9
9
  import { By } from "selenium-webdriver";
@@ -19,7 +19,7 @@ import {
19
19
  waitElementIsClickable_default,
20
20
  waitElementIsVisible_default,
21
21
  withCustomTimeouts_default
22
- } from "./chunk-FRCMUAAY.mjs";
22
+ } from "./chunk-Z7TA6QHD.mjs";
23
23
 
24
24
  // src/pageObjects/elements/Table/Table.ts
25
25
  import { By as By6 } from "selenium-webdriver";
@@ -77,21 +77,30 @@ var Cell = class extends AbstractElementWithParent {
77
77
  async getDateValue(cellEl, cellElClass) {
78
78
  const value = (await cellEl.getText()).trim();
79
79
  if (value === "") return null;
80
- const isWithTime = cellElClass.includes("with-time");
81
- try {
82
- if (isWithTime) {
83
- const [datePart, timePart] = value.split(", ");
84
- const [day, month, year] = datePart.split(".").map(Number);
85
- const [hours, minutes] = timePart.split(":").map(Number);
86
- return new Date(year, month - 1, day, hours, minutes, 0, 0);
87
- } else {
88
- const [day, month, year] = value.split(".").map(Number);
89
- return new Date(Date.UTC(year, month - 1, day));
80
+ const getDate = (stringDate) => {
81
+ const isWithTime = cellElClass.includes("with-time");
82
+ try {
83
+ if (isWithTime) {
84
+ const [datePart, timePart] = stringDate.split(", ");
85
+ const [day, month, year] = datePart.split(".").map(Number);
86
+ const [hours, minutes] = timePart.split(":").map(Number);
87
+ return new Date(year, month - 1, day, hours, minutes, 0, 0);
88
+ } else {
89
+ const [day, month, year] = stringDate.split(".").map(Number);
90
+ return new Date(Date.UTC(year, month - 1, day));
91
+ }
92
+ } catch (error) {
93
+ console.error(`Error parsing date value "${stringDate}":`, error);
94
+ return null;
90
95
  }
91
- } catch (error) {
92
- console.error(`Error parsing date value "${value}":`, error);
93
- return null;
96
+ };
97
+ const periodValue = value.split(" - ");
98
+ if (periodValue.length > 1) {
99
+ const dateFrom = getDate(periodValue[0]);
100
+ const dateTo = getDate(periodValue[1]);
101
+ return [dateFrom, dateTo];
94
102
  }
103
+ return getDate(value);
95
104
  }
96
105
  async getElement() {
97
106
  if (this._index == null) {
@@ -118,6 +127,7 @@ var Cell = class extends AbstractElementWithParent {
118
127
  var DX_SELECTION_CLASS = "dx-selection";
119
128
  var DX_ROW_EDIT_CLASS = "dx-edit-row";
120
129
  var DX_DATA_ROW_CLASS = "dx-data-row";
130
+ var FIRST_CLICKED_CELL_SELECTOR = 'td[aria-colindex="1"]';
121
131
  var Row = class extends AbstractElementWithParent {
122
132
  index;
123
133
  getColumnBy;
@@ -158,15 +168,16 @@ var Row = class extends AbstractElementWithParent {
158
168
  await staleElementAction(async () => {
159
169
  const rowEl = await this.getElement();
160
170
  const isSelected = (await this.getClasses()).includes(DX_SELECTION_CLASS);
171
+ const clickedElement = await rowEl.findElement(By3.css(FIRST_CLICKED_CELL_SELECTOR));
161
172
  if (isSelected && !preserve) {
162
173
  await this.driver.actions({ async: true }).keyUp(Key.CONTROL).perform();
163
174
  }
164
175
  if (preserve && !isSelected) {
165
176
  await this.driver.actions({ async: true }).keyDown(Key.CONTROL).perform();
166
- await click(rowEl, this.driver);
177
+ await click(clickedElement, this.driver);
167
178
  return;
168
179
  }
169
- await click(rowEl, this.driver);
180
+ await click(clickedElement, this.driver);
170
181
  });
171
182
  await safeWait(
172
183
  async () => {
@@ -1539,15 +1539,15 @@ async function classDependencyInjector(formType) {
1539
1539
  let SubFormFactoryClass;
1540
1540
  switch (formType) {
1541
1541
  case "1" /* LIST */:
1542
- SubFormFactoryClass = (await import("./ListForm-UBIG4ZP2.mjs")).default;
1542
+ SubFormFactoryClass = (await import("./ListForm-QZ3MZ6X2.mjs")).default;
1543
1543
  break;
1544
1544
  case "3" /* TREE */:
1545
- SubFormFactoryClass = (await import("./TreeView-MIKFUI4Q.mjs")).default;
1545
+ SubFormFactoryClass = (await import("./TreeView-NK4DBSLL.mjs")).default;
1546
1546
  break;
1547
1547
  case "2" /* EDIT */:
1548
1548
  case "99" /* FREE_FORM */:
1549
1549
  case "4" /* REPORT */:
1550
- SubFormFactoryClass = (await import("./FormEdit-V2BBOANS.mjs")).default;
1550
+ SubFormFactoryClass = (await import("./FormEdit-H3GSWWY6.mjs")).default;
1551
1551
  break;
1552
1552
  default:
1553
1553
  throw new Error(`Unsupported form type ${formType}`);
@@ -1884,21 +1884,30 @@ var init_Cell = __esm({
1884
1884
  async getDateValue(cellEl, cellElClass) {
1885
1885
  const value = (await cellEl.getText()).trim();
1886
1886
  if (value === "") return null;
1887
- const isWithTime = cellElClass.includes("with-time");
1888
- try {
1889
- if (isWithTime) {
1890
- const [datePart, timePart] = value.split(", ");
1891
- const [day, month, year] = datePart.split(".").map(Number);
1892
- const [hours, minutes] = timePart.split(":").map(Number);
1893
- return new Date(year, month - 1, day, hours, minutes, 0, 0);
1894
- } else {
1895
- const [day, month, year] = value.split(".").map(Number);
1896
- return new Date(Date.UTC(year, month - 1, day));
1887
+ const getDate = (stringDate) => {
1888
+ const isWithTime = cellElClass.includes("with-time");
1889
+ try {
1890
+ if (isWithTime) {
1891
+ const [datePart, timePart] = stringDate.split(", ");
1892
+ const [day, month, year] = datePart.split(".").map(Number);
1893
+ const [hours, minutes] = timePart.split(":").map(Number);
1894
+ return new Date(year, month - 1, day, hours, minutes, 0, 0);
1895
+ } else {
1896
+ const [day, month, year] = stringDate.split(".").map(Number);
1897
+ return new Date(Date.UTC(year, month - 1, day));
1898
+ }
1899
+ } catch (error) {
1900
+ console.error(`Error parsing date value "${stringDate}":`, error);
1901
+ return null;
1897
1902
  }
1898
- } catch (error) {
1899
- console.error(`Error parsing date value "${value}":`, error);
1900
- return null;
1903
+ };
1904
+ const periodValue = value.split(" - ");
1905
+ if (periodValue.length > 1) {
1906
+ const dateFrom = getDate(periodValue[0]);
1907
+ const dateTo = getDate(periodValue[1]);
1908
+ return [dateFrom, dateTo];
1901
1909
  }
1910
+ return getDate(value);
1902
1911
  }
1903
1912
  async getElement() {
1904
1913
  if (this._index == null) {
@@ -1924,7 +1933,7 @@ var init_Cell = __esm({
1924
1933
  });
1925
1934
 
1926
1935
  // src/pageObjects/elements/Table/elements/Row.ts
1927
- var import_selenium_webdriver23, DX_SELECTION_CLASS, DX_ROW_EDIT_CLASS, DX_DATA_ROW_CLASS, Row;
1936
+ var import_selenium_webdriver23, DX_SELECTION_CLASS, DX_ROW_EDIT_CLASS, DX_DATA_ROW_CLASS, FIRST_CLICKED_CELL_SELECTOR, Row;
1928
1937
  var init_Row = __esm({
1929
1938
  "src/pageObjects/elements/Table/elements/Row.ts"() {
1930
1939
  "use strict";
@@ -1938,6 +1947,7 @@ var init_Row = __esm({
1938
1947
  DX_SELECTION_CLASS = "dx-selection";
1939
1948
  DX_ROW_EDIT_CLASS = "dx-edit-row";
1940
1949
  DX_DATA_ROW_CLASS = "dx-data-row";
1950
+ FIRST_CLICKED_CELL_SELECTOR = 'td[aria-colindex="1"]';
1941
1951
  Row = class extends AbstractElementWithParent {
1942
1952
  index;
1943
1953
  getColumnBy;
@@ -1978,15 +1988,16 @@ var init_Row = __esm({
1978
1988
  await staleElementAction(async () => {
1979
1989
  const rowEl = await this.getElement();
1980
1990
  const isSelected = (await this.getClasses()).includes(DX_SELECTION_CLASS);
1991
+ const clickedElement = await rowEl.findElement(import_selenium_webdriver23.By.css(FIRST_CLICKED_CELL_SELECTOR));
1981
1992
  if (isSelected && !preserve) {
1982
1993
  await this.driver.actions({ async: true }).keyUp(import_selenium_webdriver23.Key.CONTROL).perform();
1983
1994
  }
1984
1995
  if (preserve && !isSelected) {
1985
1996
  await this.driver.actions({ async: true }).keyDown(import_selenium_webdriver23.Key.CONTROL).perform();
1986
- await click(rowEl, this.driver);
1997
+ await click(clickedElement, this.driver);
1987
1998
  return;
1988
1999
  }
1989
- await click(rowEl, this.driver);
2000
+ await click(clickedElement, this.driver);
1990
2001
  });
1991
2002
  await safeWait(
1992
2003
  async () => {
@@ -535,7 +535,7 @@ declare class Cell extends AbstractElementWithParent {
535
535
  private getNumberValue;
536
536
  private getDateValue;
537
537
  getElement(): Promise<WebElement>;
538
- getValue(): Promise<string | number | 1 | 0 | string[] | Date>;
538
+ getValue(): Promise<string | number | 1 | 0 | string[] | Date | Date[]>;
539
539
  getIndex(): number;
540
540
  }
541
541
 
@@ -705,7 +705,7 @@ declare class Table extends AbstractElementWithParent {
705
705
  * const cellValue = await table.getCellValueByCellName('Name', 0);
706
706
  * expect(cellValue).toBe('Очікуване значення');
707
707
  */
708
- getCellValueByCellName(cellName: string, rowIndex: number): Promise<string | number | string[] | Date>;
708
+ getCellValueByCellName(cellName: string, rowIndex: number): Promise<string | number | string[] | Date | Date[]>;
709
709
  /**
710
710
  * Перевіряє, чи є таблиця порожньою (не містить жодного рядка з даними).
711
711
  *
@@ -535,7 +535,7 @@ declare class Cell extends AbstractElementWithParent {
535
535
  private getNumberValue;
536
536
  private getDateValue;
537
537
  getElement(): Promise<WebElement>;
538
- getValue(): Promise<string | number | 1 | 0 | string[] | Date>;
538
+ getValue(): Promise<string | number | 1 | 0 | string[] | Date | Date[]>;
539
539
  getIndex(): number;
540
540
  }
541
541
 
@@ -705,7 +705,7 @@ declare class Table extends AbstractElementWithParent {
705
705
  * const cellValue = await table.getCellValueByCellName('Name', 0);
706
706
  * expect(cellValue).toBe('Очікуване значення');
707
707
  */
708
- getCellValueByCellName(cellName: string, rowIndex: number): Promise<string | number | string[] | Date>;
708
+ getCellValueByCellName(cellName: string, rowIndex: number): Promise<string | number | string[] | Date | Date[]>;
709
709
  /**
710
710
  * Перевіряє, чи є таблиця порожньою (не містить жодного рядка з даними).
711
711
  *
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  TreeView
3
- } from "./chunk-ZWHGIJ3K.mjs";
3
+ } from "./chunk-H53CPYV5.mjs";
4
4
  import {
5
5
  FilterPanel,
6
6
  FormFilterField,
7
7
  ListForm,
8
8
  PanelFilterField
9
- } from "./chunk-27XBX275.mjs";
9
+ } from "./chunk-XPNFBXMQ.mjs";
10
10
  import {
11
11
  FormEdit
12
- } from "./chunk-GQKGCUVL.mjs";
12
+ } from "./chunk-Q5FDRZXL.mjs";
13
13
  import {
14
14
  AbstractButton,
15
15
  AbstractElement,
@@ -32,7 +32,7 @@ import {
32
32
  safeWait,
33
33
  waitElementIsClickable_default,
34
34
  waitElementIsVisible_default
35
- } from "./chunk-FRCMUAAY.mjs";
35
+ } from "./chunk-Z7TA6QHD.mjs";
36
36
 
37
37
  // src/pageObjects/pages/LoginPage.ts
38
38
  import { By } from "selenium-webdriver";
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  TreeView
3
- } from "./chunk-ZWHGIJ3K.mjs";
3
+ } from "./chunk-H53CPYV5.mjs";
4
4
  import {
5
5
  FilterPanel,
6
6
  FormFilterField,
7
7
  ListForm,
8
8
  PanelFilterField
9
- } from "./chunk-27XBX275.mjs";
9
+ } from "./chunk-XPNFBXMQ.mjs";
10
10
  import {
11
11
  FormEdit
12
- } from "./chunk-GQKGCUVL.mjs";
12
+ } from "./chunk-Q5FDRZXL.mjs";
13
13
  import {
14
14
  AbstractButton,
15
15
  AbstractElement,
@@ -32,7 +32,7 @@ import {
32
32
  safeWait,
33
33
  waitElementIsClickable_default,
34
34
  waitElementIsVisible_default
35
- } from "./chunk-FRCMUAAY.mjs";
35
+ } from "./chunk-Z7TA6QHD.mjs";
36
36
 
37
37
  // src/pageObjects/pages/LoginPage.ts
38
38
  import { By } from "selenium-webdriver";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "d5-testing-library",
3
- "version": "1.9.0-alpha.22",
3
+ "version": "1.9.0-alpha.24",
4
4
  "description": "e2e testing D5 projects",
5
5
  "main": "dist/cjs/d5-testing-library.cjs",
6
6
  "module": "dist/d5-testing-library.legacy-esm.js",
@@ -1,7 +0,0 @@
1
- import {
2
- FormEdit
3
- } from "./chunk-GQKGCUVL.mjs";
4
- import "./chunk-FRCMUAAY.mjs";
5
- export {
6
- FormEdit as default
7
- };
@@ -1,7 +0,0 @@
1
- import {
2
- ListForm
3
- } from "./chunk-27XBX275.mjs";
4
- import "./chunk-FRCMUAAY.mjs";
5
- export {
6
- ListForm as default
7
- };
@@ -1,8 +0,0 @@
1
- import {
2
- TreeView
3
- } from "./chunk-ZWHGIJ3K.mjs";
4
- import "./chunk-27XBX275.mjs";
5
- import "./chunk-FRCMUAAY.mjs";
6
- export {
7
- TreeView as default
8
- };