d5-testing-library 1.9.0-alpha.13 → 1.9.0-alpha.14
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.
- package/dist/FormEdit-GJPMZVBD.mjs +7 -0
- package/dist/ListForm-RNTNKBTA.mjs +7 -0
- package/dist/TreeView-FSF5ROFG.mjs +8 -0
- package/dist/{chunk-7Q4DN33H.mjs → chunk-CQXQ4R4T.mjs} +29 -7
- package/dist/{chunk-EZHIWNAS.mjs → chunk-D6IQ3ESA.mjs} +1 -1
- package/dist/{chunk-3BW4OQJU.mjs → chunk-V6E4WPJM.mjs} +2 -2
- package/dist/{chunk-GKKE46HC.mjs → chunk-V7GHM2NF.mjs} +1 -1
- package/dist/cjs/d5-testing-library.cjs +30 -7
- package/dist/d5-testing-library.legacy-esm.js +4 -4
- package/dist/d5-testing-library.mjs +4 -4
- package/package.json +1 -1
- package/dist/FormEdit-IXS2Z4YR.mjs +0 -7
- package/dist/ListForm-USO4QHZ7.mjs +0 -7
- package/dist/TreeView-AIQ3JONR.mjs +0 -8
|
@@ -572,9 +572,20 @@ import { By as By9 } from "selenium-webdriver";
|
|
|
572
572
|
import { By as By8, Key as Key3 } from "selenium-webdriver";
|
|
573
573
|
|
|
574
574
|
// src/pageObjects/elements/Editors/Date/utils.ts
|
|
575
|
-
var formatDMYDate = (date) => {
|
|
576
|
-
const [year, month, day] = date.
|
|
577
|
-
|
|
575
|
+
var formatDMYDate = (date, isTimeAllowed = false) => {
|
|
576
|
+
const [year, month, day] = date.toISOString().split("T")[0].split("-");
|
|
577
|
+
if (!isTimeAllowed) {
|
|
578
|
+
return `${day}${month}${year}`;
|
|
579
|
+
}
|
|
580
|
+
const hours = String(date.getHours()).padStart(2, "0");
|
|
581
|
+
const minutes = String(date.getMinutes()).padStart(2, "0");
|
|
582
|
+
return `${day}${month}${year}${hours}${minutes}`;
|
|
583
|
+
};
|
|
584
|
+
var formatToDateTime = (dateString) => {
|
|
585
|
+
const [datePart, timePart] = dateString.split("T");
|
|
586
|
+
const [year, month, day] = datePart.split("-").map(Number);
|
|
587
|
+
const [hours, minutes] = timePart.split(":").map(Number);
|
|
588
|
+
return new Date(year, month - 1, day, hours, minutes, 0, 0);
|
|
578
589
|
};
|
|
579
590
|
|
|
580
591
|
// src/pageObjects/elements/Editors/Date/BaseDateEditor.ts
|
|
@@ -582,11 +593,17 @@ var BTN_CALENDAR_POPOVER_OPEN_SELECTOR = "calendar-popover-open-button";
|
|
|
582
593
|
var BTN_CALENDAR_POPOVER_DATE_FROM_INPUT_SELECTOR = "DateRange__inputs-item--dateFrom";
|
|
583
594
|
var BTN_CALENDAR_POPOVER_DATE_TO_INPUT_SELECTOR = "DateRange__inputs-item--dateTo";
|
|
584
595
|
var BTN_SAVE_SELECTOR = "DateRange__button-save";
|
|
596
|
+
var DATETIME_ALLOWED_SELECTOR = "dx-datebox-datetime";
|
|
585
597
|
var BaseDateEditor = class extends AbstractDXEditorWithInput {
|
|
586
598
|
constructor(parentCssSelector, elementCssSelector, driver) {
|
|
587
599
|
super(parentCssSelector, elementCssSelector, driver);
|
|
588
600
|
this.setClearStrategy(new InputClearStrategy());
|
|
589
601
|
}
|
|
602
|
+
async getIsAllowedTime() {
|
|
603
|
+
const dateField = await this.driver.findElement(By8.css(`${this.getFullCssSelector()}`));
|
|
604
|
+
const classString = await dateField.getAttribute("class");
|
|
605
|
+
return classString.includes(DATETIME_ALLOWED_SELECTOR);
|
|
606
|
+
}
|
|
590
607
|
async setArrayValue(value) {
|
|
591
608
|
const dateField = await this.driver.findElement(By8.css(`${this.getFullCssSelector()}`));
|
|
592
609
|
const dateFieldDataTestID = await this.getDataTestId();
|
|
@@ -606,7 +623,8 @@ var BaseDateEditor = class extends AbstractDXEditorWithInput {
|
|
|
606
623
|
}
|
|
607
624
|
async setSingleValue(value, inputEl) {
|
|
608
625
|
const actions = this.driver.actions({ async: true });
|
|
609
|
-
const
|
|
626
|
+
const isTimeAllowed = await this.getIsAllowedTime();
|
|
627
|
+
const formattedDate = formatDMYDate(value, isTimeAllowed);
|
|
610
628
|
await click(inputEl, this.driver);
|
|
611
629
|
await actions.move({ origin: inputEl }).sendKeys(Key3.HOME).perform();
|
|
612
630
|
await actions.move({ origin: inputEl }).sendKeys(formattedDate, Key3.ENTER).perform();
|
|
@@ -635,6 +653,10 @@ var SingleDateEditor = class extends BaseDateEditor {
|
|
|
635
653
|
}
|
|
636
654
|
async getValue() {
|
|
637
655
|
const value = await this.getDateValue();
|
|
656
|
+
const isTimeAllowed = await this.getIsAllowedTime();
|
|
657
|
+
if (isTimeAllowed) {
|
|
658
|
+
return value == "" ? null : formatToDateTime(value);
|
|
659
|
+
}
|
|
638
660
|
return value == "" ? null : new Date(value);
|
|
639
661
|
}
|
|
640
662
|
setValue(value) {
|
|
@@ -1306,15 +1328,15 @@ async function classDependencyInjector(formType) {
|
|
|
1306
1328
|
let SubFormFactoryClass;
|
|
1307
1329
|
switch (formType) {
|
|
1308
1330
|
case "1" /* LIST */:
|
|
1309
|
-
SubFormFactoryClass = (await import("./ListForm-
|
|
1331
|
+
SubFormFactoryClass = (await import("./ListForm-RNTNKBTA.mjs")).default;
|
|
1310
1332
|
break;
|
|
1311
1333
|
case "3" /* TREE */:
|
|
1312
|
-
SubFormFactoryClass = (await import("./TreeView-
|
|
1334
|
+
SubFormFactoryClass = (await import("./TreeView-FSF5ROFG.mjs")).default;
|
|
1313
1335
|
break;
|
|
1314
1336
|
case "2" /* EDIT */:
|
|
1315
1337
|
case "99" /* FREE_FORM */:
|
|
1316
1338
|
case "4" /* REPORT */:
|
|
1317
|
-
SubFormFactoryClass = (await import("./FormEdit-
|
|
1339
|
+
SubFormFactoryClass = (await import("./FormEdit-GJPMZVBD.mjs")).default;
|
|
1318
1340
|
break;
|
|
1319
1341
|
default:
|
|
1320
1342
|
throw new Error(`Unsupported form type ${formType}`);
|
|
@@ -19,7 +19,7 @@ import {
|
|
|
19
19
|
waitElementIsClickable_default,
|
|
20
20
|
waitElementIsVisible_default,
|
|
21
21
|
withCustomTimeouts_default
|
|
22
|
-
} from "./chunk-
|
|
22
|
+
} from "./chunk-CQXQ4R4T.mjs";
|
|
23
23
|
|
|
24
24
|
// src/pageObjects/elements/Table/Table.ts
|
|
25
25
|
import { By as By6 } from "selenium-webdriver";
|
|
@@ -83,7 +83,7 @@ var Cell = class extends AbstractElementWithParent {
|
|
|
83
83
|
const [datePart, timePart] = value.split(", ");
|
|
84
84
|
const [day, month, year] = datePart.split(".").map(Number);
|
|
85
85
|
const [hours, minutes] = timePart.split(":").map(Number);
|
|
86
|
-
return new Date(
|
|
86
|
+
return new Date(year, month - 1, day, hours, minutes, 0, 0);
|
|
87
87
|
} else {
|
|
88
88
|
const [day, month, year] = value.split(".").map(Number);
|
|
89
89
|
return new Date(Date.UTC(year, month - 1, day));
|
|
@@ -781,19 +781,30 @@ var init_BooleanSelector = __esm({
|
|
|
781
781
|
});
|
|
782
782
|
|
|
783
783
|
// src/pageObjects/elements/Editors/Date/utils.ts
|
|
784
|
-
var formatDMYDate;
|
|
784
|
+
var formatDMYDate, formatToDateTime;
|
|
785
785
|
var init_utils = __esm({
|
|
786
786
|
"src/pageObjects/elements/Editors/Date/utils.ts"() {
|
|
787
787
|
"use strict";
|
|
788
|
-
formatDMYDate = (date) => {
|
|
789
|
-
const [year, month, day] = date.
|
|
790
|
-
|
|
788
|
+
formatDMYDate = (date, isTimeAllowed = false) => {
|
|
789
|
+
const [year, month, day] = date.toISOString().split("T")[0].split("-");
|
|
790
|
+
if (!isTimeAllowed) {
|
|
791
|
+
return `${day}${month}${year}`;
|
|
792
|
+
}
|
|
793
|
+
const hours = String(date.getHours()).padStart(2, "0");
|
|
794
|
+
const minutes = String(date.getMinutes()).padStart(2, "0");
|
|
795
|
+
return `${day}${month}${year}${hours}${minutes}`;
|
|
796
|
+
};
|
|
797
|
+
formatToDateTime = (dateString) => {
|
|
798
|
+
const [datePart, timePart] = dateString.split("T");
|
|
799
|
+
const [year, month, day] = datePart.split("-").map(Number);
|
|
800
|
+
const [hours, minutes] = timePart.split(":").map(Number);
|
|
801
|
+
return new Date(year, month - 1, day, hours, minutes, 0, 0);
|
|
791
802
|
};
|
|
792
803
|
}
|
|
793
804
|
});
|
|
794
805
|
|
|
795
806
|
// src/pageObjects/elements/Editors/Date/BaseDateEditor.ts
|
|
796
|
-
var import_selenium_webdriver12, BTN_CALENDAR_POPOVER_OPEN_SELECTOR, BTN_CALENDAR_POPOVER_DATE_FROM_INPUT_SELECTOR, BTN_CALENDAR_POPOVER_DATE_TO_INPUT_SELECTOR, BTN_SAVE_SELECTOR, BaseDateEditor;
|
|
807
|
+
var import_selenium_webdriver12, BTN_CALENDAR_POPOVER_OPEN_SELECTOR, BTN_CALENDAR_POPOVER_DATE_FROM_INPUT_SELECTOR, BTN_CALENDAR_POPOVER_DATE_TO_INPUT_SELECTOR, BTN_SAVE_SELECTOR, DATETIME_ALLOWED_SELECTOR, BaseDateEditor;
|
|
797
808
|
var init_BaseDateEditor = __esm({
|
|
798
809
|
"src/pageObjects/elements/Editors/Date/BaseDateEditor.ts"() {
|
|
799
810
|
"use strict";
|
|
@@ -807,11 +818,17 @@ var init_BaseDateEditor = __esm({
|
|
|
807
818
|
BTN_CALENDAR_POPOVER_DATE_FROM_INPUT_SELECTOR = "DateRange__inputs-item--dateFrom";
|
|
808
819
|
BTN_CALENDAR_POPOVER_DATE_TO_INPUT_SELECTOR = "DateRange__inputs-item--dateTo";
|
|
809
820
|
BTN_SAVE_SELECTOR = "DateRange__button-save";
|
|
821
|
+
DATETIME_ALLOWED_SELECTOR = "dx-datebox-datetime";
|
|
810
822
|
BaseDateEditor = class extends AbstractDXEditorWithInput {
|
|
811
823
|
constructor(parentCssSelector, elementCssSelector, driver) {
|
|
812
824
|
super(parentCssSelector, elementCssSelector, driver);
|
|
813
825
|
this.setClearStrategy(new InputClearStrategy());
|
|
814
826
|
}
|
|
827
|
+
async getIsAllowedTime() {
|
|
828
|
+
const dateField = await this.driver.findElement(import_selenium_webdriver12.By.css(`${this.getFullCssSelector()}`));
|
|
829
|
+
const classString = await dateField.getAttribute("class");
|
|
830
|
+
return classString.includes(DATETIME_ALLOWED_SELECTOR);
|
|
831
|
+
}
|
|
815
832
|
async setArrayValue(value) {
|
|
816
833
|
const dateField = await this.driver.findElement(import_selenium_webdriver12.By.css(`${this.getFullCssSelector()}`));
|
|
817
834
|
const dateFieldDataTestID = await this.getDataTestId();
|
|
@@ -831,7 +848,8 @@ var init_BaseDateEditor = __esm({
|
|
|
831
848
|
}
|
|
832
849
|
async setSingleValue(value, inputEl) {
|
|
833
850
|
const actions = this.driver.actions({ async: true });
|
|
834
|
-
const
|
|
851
|
+
const isTimeAllowed = await this.getIsAllowedTime();
|
|
852
|
+
const formattedDate = formatDMYDate(value, isTimeAllowed);
|
|
835
853
|
await click(inputEl, this.driver);
|
|
836
854
|
await actions.move({ origin: inputEl }).sendKeys(import_selenium_webdriver12.Key.HOME).perform();
|
|
837
855
|
await actions.move({ origin: inputEl }).sendKeys(formattedDate, import_selenium_webdriver12.Key.ENTER).perform();
|
|
@@ -855,6 +873,7 @@ var init_SingleDateEditor = __esm({
|
|
|
855
873
|
import_selenium_webdriver13 = require("selenium-webdriver");
|
|
856
874
|
init_InputClearStrategy();
|
|
857
875
|
init_BaseDateEditor();
|
|
876
|
+
init_utils();
|
|
858
877
|
SingleDateEditor = class extends BaseDateEditor {
|
|
859
878
|
constructor(parentCssSelector, elementCssSelector, driver) {
|
|
860
879
|
super(parentCssSelector, elementCssSelector, driver);
|
|
@@ -869,6 +888,10 @@ var init_SingleDateEditor = __esm({
|
|
|
869
888
|
}
|
|
870
889
|
async getValue() {
|
|
871
890
|
const value = await this.getDateValue();
|
|
891
|
+
const isTimeAllowed = await this.getIsAllowedTime();
|
|
892
|
+
if (isTimeAllowed) {
|
|
893
|
+
return value == "" ? null : formatToDateTime(value);
|
|
894
|
+
}
|
|
872
895
|
return value == "" ? null : new Date(value);
|
|
873
896
|
}
|
|
874
897
|
setValue(value) {
|
|
@@ -1639,7 +1662,7 @@ var init_Cell = __esm({
|
|
|
1639
1662
|
const [datePart, timePart] = value.split(", ");
|
|
1640
1663
|
const [day, month, year] = datePart.split(".").map(Number);
|
|
1641
1664
|
const [hours, minutes] = timePart.split(":").map(Number);
|
|
1642
|
-
return new Date(
|
|
1665
|
+
return new Date(year, month - 1, day, hours, minutes, 0, 0);
|
|
1643
1666
|
} else {
|
|
1644
1667
|
const [day, month, year] = value.split(".").map(Number);
|
|
1645
1668
|
return new Date(Date.UTC(year, month - 1, day));
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
TreeView
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-D6IQ3ESA.mjs";
|
|
4
4
|
import {
|
|
5
5
|
FilterPanel,
|
|
6
6
|
FormFilterField,
|
|
7
7
|
ListForm,
|
|
8
8
|
PanelFilterField
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-V6E4WPJM.mjs";
|
|
10
10
|
import {
|
|
11
11
|
FormEdit
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-V7GHM2NF.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-
|
|
35
|
+
} from "./chunk-CQXQ4R4T.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-
|
|
3
|
+
} from "./chunk-D6IQ3ESA.mjs";
|
|
4
4
|
import {
|
|
5
5
|
FilterPanel,
|
|
6
6
|
FormFilterField,
|
|
7
7
|
ListForm,
|
|
8
8
|
PanelFilterField
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-V6E4WPJM.mjs";
|
|
10
10
|
import {
|
|
11
11
|
FormEdit
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-V7GHM2NF.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-
|
|
35
|
+
} from "./chunk-CQXQ4R4T.mjs";
|
|
36
36
|
|
|
37
37
|
// src/pageObjects/pages/LoginPage.ts
|
|
38
38
|
import { By } from "selenium-webdriver";
|
package/package.json
CHANGED