@thinkwise/testwise 0.2.16 → 0.2.21
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/artifact-builder/SubjectComponentGenerator.ts +46 -14
- package/artifact-builder/SubjectGenerator.ts +5 -3
- package/artifact-builder/SubjectRegistration.ts +2 -2
- package/artifact-builder/helpers/NamingHandler.ts +5 -13
- package/components/export/ExportComponent.ts +1 -0
- package/controls/DateControl.ts +67 -0
- package/controls/FormComboBox.ts +6 -4
- package/controls/InputFieldControl.ts +79 -0
- package/controls/index.ts +2 -0
- package/dist/artifact-builder/SubjectComponentGenerator.js +30 -9
- package/dist/artifact-builder/SubjectComponentGenerator.js.map +1 -1
- package/dist/artifact-builder/SubjectGenerator.js +5 -3
- package/dist/artifact-builder/SubjectGenerator.js.map +1 -1
- package/dist/artifact-builder/helpers/NamingHandler.js +4 -12
- package/dist/artifact-builder/helpers/NamingHandler.js.map +1 -1
- package/dist/components/export/ExportComponent.js +1 -0
- package/dist/components/export/ExportComponent.js.map +1 -1
- package/dist/controls/DateControl.d.ts +25 -0
- package/dist/controls/DateControl.js +44 -0
- package/dist/controls/DateControl.js.map +1 -0
- package/dist/controls/FormComboBox.d.ts +0 -1
- package/dist/controls/FormComboBox.js +3 -1
- package/dist/controls/FormComboBox.js.map +1 -1
- package/dist/controls/InputFieldControl.d.ts +26 -0
- package/dist/controls/InputFieldControl.js +48 -0
- package/dist/controls/InputFieldControl.js.map +1 -0
- package/dist/controls/index.d.ts +2 -0
- package/dist/controls/index.js +2 -0
- package/dist/controls/index.js.map +1 -1
- package/dist/enums/ElementTypes.d.ts +3 -2
- package/dist/enums/ElementTypes.js +2 -1
- package/dist/enums/ElementTypes.js.map +1 -1
- package/enums/ElementTypes.ts +3 -2
- package/package.json +3 -3
- package/scripts/sync.js +1 -1
|
@@ -105,8 +105,8 @@ export class SubjectComponentGenerator {
|
|
|
105
105
|
gridGetters = this.generateGridGetters(propertyLines, componentName);
|
|
106
106
|
} else {
|
|
107
107
|
propertyDeclarations = this.generatePropertyDeclarations(propertyLines, componentName);
|
|
108
|
-
|
|
109
|
-
if (componentName === 'Form') {
|
|
108
|
+
|
|
109
|
+
if (componentName === 'Form') {
|
|
110
110
|
this.transformInterfaceTypes(componentFile);
|
|
111
111
|
}
|
|
112
112
|
|
|
@@ -180,13 +180,17 @@ export class SubjectComponentGenerator {
|
|
|
180
180
|
const property = line.split(':')[0].replace(/\?$/, '').trim();
|
|
181
181
|
const pageLocatorString = this._selectorBuilder.getPageLocatorString(property, componentName);
|
|
182
182
|
|
|
183
|
-
if (componentName === 'Form'
|
|
184
|
-
return ` this.${property} = createLookupDropdown(${pageLocatorString});`;
|
|
185
|
-
}
|
|
183
|
+
if (componentName === 'Form') {
|
|
184
|
+
if (property.endsWith('Lookup')) return ` this.${property} = createLookupDropdown(${pageLocatorString});`;
|
|
186
185
|
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
186
|
+
if (property.endsWith('DatePicker'))
|
|
187
|
+
return ` this.${property} = createDateControl(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
188
|
+
|
|
189
|
+
if (property.endsWith('ComboBox'))
|
|
190
|
+
return ` this.${property} = createFormComboBox(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
191
|
+
|
|
192
|
+
if (property.endsWith('Field'))
|
|
193
|
+
return ` this.${property} = createInputFieldControl(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
190
194
|
}
|
|
191
195
|
|
|
192
196
|
return ` this.${property} = ${pageLocatorString};`;
|
|
@@ -197,18 +201,36 @@ export class SubjectComponentGenerator {
|
|
|
197
201
|
private addImportsDynamically(componentFile: { content: string }): void {
|
|
198
202
|
const lookupType = 'ILookupDropdown';
|
|
199
203
|
const comboBoxType = 'IFormComboBox';
|
|
204
|
+
const inputFieldType = 'IInputFieldControl';
|
|
205
|
+
const datePickerType = 'IDateControl';
|
|
206
|
+
|
|
207
|
+
const inputFieldImport =
|
|
208
|
+
"import { createInputFieldControl, type IInputFieldControl } from '../../../../controls/InputFieldControl.js';";
|
|
209
|
+
|
|
200
210
|
const lookupImport =
|
|
201
211
|
"import { createLookupDropdown, type ILookupDropdown } from '../../../../controls/LookupDropdown.js';";
|
|
212
|
+
|
|
202
213
|
const comboBoxImport =
|
|
203
214
|
"import { createFormComboBox, type IFormComboBox } from '../../../../controls/FormComboBox.js';";
|
|
204
215
|
|
|
216
|
+
const datePickerImport =
|
|
217
|
+
"import { createDateControl, type IDateControl } from '../../../../controls/DateControl.js';";
|
|
218
|
+
|
|
205
219
|
if (componentFile.content.includes(lookupType) && !componentFile.content.includes(lookupImport)) {
|
|
206
220
|
componentFile.content = `${lookupImport}\n${componentFile.content}`;
|
|
207
|
-
}
|
|
208
|
-
|
|
221
|
+
}
|
|
222
|
+
|
|
209
223
|
if (componentFile.content.includes(comboBoxType) && !componentFile.content.includes(comboBoxImport)) {
|
|
210
224
|
componentFile.content = `${comboBoxImport}\n${componentFile.content}`;
|
|
211
225
|
}
|
|
226
|
+
|
|
227
|
+
if (componentFile.content.includes(inputFieldType) && !componentFile.content.includes(inputFieldImport)) {
|
|
228
|
+
componentFile.content = `${inputFieldImport}\n${componentFile.content}`;
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
if (componentFile.content.includes(datePickerType) && !componentFile.content.includes(datePickerImport)) {
|
|
232
|
+
componentFile.content = `${datePickerImport}\n${componentFile.content}`;
|
|
233
|
+
}
|
|
212
234
|
}
|
|
213
235
|
|
|
214
236
|
private generatePropertyDeclarations(propertiesToConvert: string[], componentName: SubjectComponents): string {
|
|
@@ -224,6 +246,14 @@ export class SubjectComponentGenerator {
|
|
|
224
246
|
return ` ${property}: IFormComboBox;`;
|
|
225
247
|
}
|
|
226
248
|
|
|
249
|
+
if (componentName === 'Form' && property.endsWith('Field')) {
|
|
250
|
+
return ` ${property}: IInputFieldControl;`;
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
if (componentName === 'Form' && property.endsWith('DatePicker')) {
|
|
254
|
+
return ` ${property}: IDateControl;`;
|
|
255
|
+
}
|
|
256
|
+
|
|
227
257
|
return ` ${property}: Locator;`;
|
|
228
258
|
})
|
|
229
259
|
.join('\n');
|
|
@@ -233,13 +263,15 @@ export class SubjectComponentGenerator {
|
|
|
233
263
|
const interfaceRegex = /export interface \w+ extends Form \{([\s\S]*?)\}/g;
|
|
234
264
|
|
|
235
265
|
const typeMapping: Record<string, string> = {
|
|
236
|
-
|
|
237
|
-
|
|
266
|
+
Lookup: 'ILookupDropdown',
|
|
267
|
+
ComboBox: 'IFormComboBox',
|
|
268
|
+
Field: 'IInputFieldControl',
|
|
269
|
+
DatePicker: 'IDateControl'
|
|
238
270
|
};
|
|
239
271
|
|
|
240
272
|
componentFile.content = componentFile.content.replace(interfaceRegex, (match, interfaceBody) => {
|
|
241
|
-
const propertyRegex = /(\w+(Lookup|ComboBox))\s*:\s*Locator;/g;
|
|
242
|
-
|
|
273
|
+
const propertyRegex = /(\w+(Lookup|ComboBox|Field|DatePicker))\s*:\s*Locator;/g;
|
|
274
|
+
|
|
243
275
|
const updatedBody = interfaceBody.replace(propertyRegex, (_match: string, propName: string, suffix: string) => {
|
|
244
276
|
const newType = typeMapping[suffix];
|
|
245
277
|
return `${propName}: ${newType};`;
|
|
@@ -284,7 +284,8 @@ export class SubjectGenerator {
|
|
|
284
284
|
if (!screenComponents.includes(component.type)) return;
|
|
285
285
|
|
|
286
286
|
if (coreComponents.includes(component.type)) {
|
|
287
|
-
|
|
287
|
+
const componentId = this._namingHandler.toPascalCase(propertyName);
|
|
288
|
+
subjectClass.content += ` this.${propertyName} = ${this.getComponentInitializer(component, componentId)};\n`;
|
|
288
289
|
return;
|
|
289
290
|
}
|
|
290
291
|
|
|
@@ -293,14 +294,13 @@ export class SubjectGenerator {
|
|
|
293
294
|
});
|
|
294
295
|
}
|
|
295
296
|
|
|
296
|
-
private getComponentInitializer(component: { type: string; context: string }): string {
|
|
297
|
+
private getComponentInitializer(component: { type: string; context: string }, componentId: string): string {
|
|
297
298
|
const componentNamePascal = this._namingHandler.toPascalCase(component.type);
|
|
298
299
|
|
|
299
300
|
switch (component.type) {
|
|
300
301
|
case 'Cardlist':
|
|
301
302
|
case 'TaskTiles':
|
|
302
303
|
case 'PrefilterList':
|
|
303
|
-
case 'TaskBar':
|
|
304
304
|
case 'Chart':
|
|
305
305
|
case 'CubeViewBar':
|
|
306
306
|
case 'PivotGrid':
|
|
@@ -321,6 +321,8 @@ export class SubjectGenerator {
|
|
|
321
321
|
return `new ${component.type}(page, ${component.context})`;
|
|
322
322
|
case 'TreeView':
|
|
323
323
|
return `new ${component.type}(page, this.context.locator('.Tree.${componentNamePascal}'))`;
|
|
324
|
+
case 'TaskBar':
|
|
325
|
+
return `new ${component.type}(page, this.context.locator('.ActionBar.${componentId}'))`;
|
|
324
326
|
default:
|
|
325
327
|
throw new Error(`Unknown core component type: ${component.type}`);
|
|
326
328
|
}
|
|
@@ -27,11 +27,11 @@ export class SubjectRegistration {
|
|
|
27
27
|
const root = path.resolve(this._currentDirname, '../../');
|
|
28
28
|
const registryPath = path.join(root, 'page-extensions', 'SubjectRegistry.ts');
|
|
29
29
|
const templatePath = path.join(root, 'templates', 'SubjectRegistry.template.ts');
|
|
30
|
-
|
|
30
|
+
|
|
31
31
|
if (fs.existsSync(registryPath)) {
|
|
32
32
|
fs.rmSync(registryPath, { force: true });
|
|
33
33
|
}
|
|
34
|
-
|
|
34
|
+
|
|
35
35
|
if (fs.existsSync(templatePath)) {
|
|
36
36
|
fs.copyFileSync(templatePath, registryPath);
|
|
37
37
|
}
|
|
@@ -6,7 +6,7 @@ import type { ScreenComponents, SubjectComponents } from '../../types/Components
|
|
|
6
6
|
export class NamingHandler {
|
|
7
7
|
public getDefaultElementSuffixFromComponentType(componentType: SubjectComponents): KnownElementTypes {
|
|
8
8
|
const controlTypeMapping: Record<SubjectComponents, KnownElementTypes> = {
|
|
9
|
-
Form: KnownElementTypes.
|
|
9
|
+
Form: KnownElementTypes.Field,
|
|
10
10
|
Grid: KnownElementTypes.Column
|
|
11
11
|
};
|
|
12
12
|
|
|
@@ -20,7 +20,6 @@ export class NamingHandler {
|
|
|
20
20
|
controlType = controlType.toLowerCase();
|
|
21
21
|
|
|
22
22
|
const formDefaultSuffix: KnownElementTypes = this.getDefaultElementSuffixFromComponentType('Form');
|
|
23
|
-
const gridDefaultSuffix: KnownElementTypes = this.getDefaultElementSuffixFromComponentType('Grid');
|
|
24
23
|
|
|
25
24
|
const controlTypeMappingMatrix: Record<SubjectComponents, Record<string, KnownElementTypes>> = {
|
|
26
25
|
Form: {
|
|
@@ -28,24 +27,17 @@ export class NamingHandler {
|
|
|
28
27
|
phone_number: formDefaultSuffix,
|
|
29
28
|
suggestion_starts_with: formDefaultSuffix,
|
|
30
29
|
lookup_dropdown: KnownElementTypes.Lookup,
|
|
31
|
-
dropdown
|
|
30
|
+
dropdown: KnownElementTypes.Dropdown,
|
|
32
31
|
lookup: KnownElementTypes.Lookup,
|
|
33
32
|
checkbox: KnownElementTypes.Checkbox,
|
|
34
33
|
multiline: KnownElementTypes.Textarea,
|
|
35
34
|
combo: KnownElementTypes.ComboBox,
|
|
36
35
|
combo_box: KnownElementTypes.ComboBox,
|
|
36
|
+
date: KnownElementTypes.DatePicker,
|
|
37
|
+
date_picker: KnownElementTypes.DatePicker
|
|
37
38
|
},
|
|
38
39
|
Grid: {
|
|
39
|
-
|
|
40
|
-
phone_number: gridDefaultSuffix,
|
|
41
|
-
suggestion_starts_with: gridDefaultSuffix,
|
|
42
|
-
lookup_dropdown: gridDefaultSuffix,
|
|
43
|
-
dropdown : gridDefaultSuffix,
|
|
44
|
-
lookup: gridDefaultSuffix,
|
|
45
|
-
checkbox: gridDefaultSuffix,
|
|
46
|
-
multiline: gridDefaultSuffix,
|
|
47
|
-
combo: gridDefaultSuffix,
|
|
48
|
-
combo_box: gridDefaultSuffix
|
|
40
|
+
// Insert Grid-specific control type mappings here
|
|
49
41
|
}
|
|
50
42
|
};
|
|
51
43
|
|
|
@@ -26,6 +26,7 @@ export class ExportComponent {
|
|
|
26
26
|
public async selectColumns(columns: string[]): Promise<void> {
|
|
27
27
|
for (const column of columns) {
|
|
28
28
|
const checkbox = this._objects.selectColumnsCheckbox(column);
|
|
29
|
+
await this._page.waitForTimeout(100);
|
|
29
30
|
await checkbox.check();
|
|
30
31
|
}
|
|
31
32
|
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
/* biome-ignore-all lint/suspicious/noExplicitAny: reason42 */
|
|
3
|
+
import type { Locator, Page } from '@playwright/test';
|
|
4
|
+
|
|
5
|
+
export type IDateControl = Locator & IDateControlCore;
|
|
6
|
+
|
|
7
|
+
export type IDateControlCore = {
|
|
8
|
+
fill(value: string): Promise<void>;
|
|
9
|
+
clear(): Promise<void>;
|
|
10
|
+
inputValue(): Promise<string>;
|
|
11
|
+
inputElement(): Locator;
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
export class DateControl implements IDateControlCore {
|
|
15
|
+
private _dateFieldLocator: Locator;
|
|
16
|
+
private _inputLocator: Locator;
|
|
17
|
+
|
|
18
|
+
constructor(page: Page, id: string) {
|
|
19
|
+
this._dateFieldLocator = page.getByTestId(`form-field__${id}`);
|
|
20
|
+
this._inputLocator = this._dateFieldLocator.locator('input');
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
/**
|
|
24
|
+
* Enter a date value in any common format (e.g., "MM/DD/YYYY", "YYYY-MM-DD", "DD-MM-YYYY").
|
|
25
|
+
* The method will extract the numbers and input them sequentially, allowing the date picker to format it correctly.
|
|
26
|
+
* For example, entering "01012025" will be interpreted as "01/01/2025".
|
|
27
|
+
* This approach provides flexibility in how dates can be entered while ensuring compatibility with various date picker implementations.
|
|
28
|
+
* @param value
|
|
29
|
+
*/
|
|
30
|
+
public async fill(value: string): Promise<void> {
|
|
31
|
+
const numbersOnlyValue = value.replace(/\D/g, '');
|
|
32
|
+
|
|
33
|
+
await this._inputLocator.focus();
|
|
34
|
+
await this._inputLocator.pressSequentially(numbersOnlyValue);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public async clear(): Promise<void> {
|
|
38
|
+
await this._inputLocator.fill('');
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public async inputValue(): Promise<string> {
|
|
42
|
+
return await this._inputLocator.inputValue();
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public inputElement(): Locator {
|
|
46
|
+
return this._inputLocator;
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export function createDateControl(page: Page, id: string): IDateControl {
|
|
51
|
+
const inputFieldControl = new DateControl(page, id);
|
|
52
|
+
const locator = page.getByTestId(`form-field__${id}`);
|
|
53
|
+
|
|
54
|
+
return new Proxy(inputFieldControl, {
|
|
55
|
+
get(target, prop, receiver) {
|
|
56
|
+
if (prop in target) {
|
|
57
|
+
return Reflect.get(target, prop, receiver);
|
|
58
|
+
}
|
|
59
|
+
const value = (locator as any)[prop];
|
|
60
|
+
|
|
61
|
+
if (typeof value === 'function') {
|
|
62
|
+
return value.bind(locator);
|
|
63
|
+
}
|
|
64
|
+
return value;
|
|
65
|
+
}
|
|
66
|
+
}) as unknown as IDateControl;
|
|
67
|
+
}
|
package/controls/FormComboBox.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
-
|
|
2
|
+
/* biome-ignore-all lint/suspicious/noExplicitAny: Reason42 */
|
|
3
3
|
import type { Locator, Page } from '@playwright/test';
|
|
4
4
|
|
|
5
5
|
export type IFormComboBox = Locator & IFormComboBoxCore;
|
|
@@ -21,7 +21,7 @@ class FormComboBox implements IFormComboBoxCore {
|
|
|
21
21
|
this._formFieldLocator = page.getByTestId(`form-field__${id}`);
|
|
22
22
|
this._autoCompleteMenu = page.getByTestId(`form-field__${id}__select__options-list`);
|
|
23
23
|
}
|
|
24
|
-
|
|
24
|
+
|
|
25
25
|
async selectOption(optionText: string): Promise<void> {
|
|
26
26
|
await this._formFieldLocator.locator('input').click();
|
|
27
27
|
|
|
@@ -47,7 +47,9 @@ class FormComboBox implements IFormComboBoxCore {
|
|
|
47
47
|
|
|
48
48
|
const optionToSelectLowercase = optionToSelect.toLowerCase();
|
|
49
49
|
|
|
50
|
-
await this._autoCompleteMenu
|
|
50
|
+
await this._autoCompleteMenu
|
|
51
|
+
.getByTestId(`form-field__${this._id}__select__${optionToSelectLowercase}__text`)
|
|
52
|
+
.click();
|
|
51
53
|
}
|
|
52
54
|
}
|
|
53
55
|
|
|
@@ -62,7 +64,7 @@ export function createFormComboBox(page: Page, id: string): IFormComboBox {
|
|
|
62
64
|
}
|
|
63
65
|
|
|
64
66
|
const value = (locator as any)[prop];
|
|
65
|
-
|
|
67
|
+
|
|
66
68
|
if (typeof value === 'function') {
|
|
67
69
|
return value.bind(locator);
|
|
68
70
|
}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
2
|
+
/** biome-ignore-all lint/suspicious/noExplicitAny: reason42 */
|
|
3
|
+
import type { Locator, Page } from '@playwright/test';
|
|
4
|
+
|
|
5
|
+
export type IInputFieldControl = Locator & ICoreInputFieldControl;
|
|
6
|
+
|
|
7
|
+
export type ICoreInputFieldControl = {
|
|
8
|
+
getValidationMessage(): Promise<string>;
|
|
9
|
+
getLabelText(): Promise<string>;
|
|
10
|
+
fill(value: string): Promise<void>;
|
|
11
|
+
click(): Promise<void>;
|
|
12
|
+
clear(): Promise<void>;
|
|
13
|
+
inputValue(): Promise<string>;
|
|
14
|
+
inputElement(): Locator;
|
|
15
|
+
};
|
|
16
|
+
|
|
17
|
+
export class InputFieldControl implements ICoreInputFieldControl {
|
|
18
|
+
private _formFieldLocator: Locator;
|
|
19
|
+
private _inputLocator: Locator;
|
|
20
|
+
private _id: string;
|
|
21
|
+
|
|
22
|
+
constructor(page: Page, id: string) {
|
|
23
|
+
this._id = id;
|
|
24
|
+
this._formFieldLocator = page.getByTestId(`form-field__${id}`);
|
|
25
|
+
this._inputLocator = this._formFieldLocator.locator('input');
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
public async getValidationMessage(): Promise<string> {
|
|
29
|
+
await this._formFieldLocator.locator('.TooltipContainer p').waitFor({ state: 'visible' });
|
|
30
|
+
return await this._formFieldLocator.locator('.TooltipContainer p').innerText();
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
public async fill(value: string): Promise<void> {
|
|
34
|
+
await this._inputLocator.fill(value);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public async click(): Promise<void> {
|
|
38
|
+
await this._inputLocator.click();
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
public async clear(): Promise<void> {
|
|
42
|
+
await this._inputLocator.fill('');
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
public async inputValue(): Promise<string> {
|
|
46
|
+
return await this._inputLocator.inputValue();
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
public inputElement(): Locator {
|
|
50
|
+
return this._inputLocator;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
public async getLabelText(): Promise<string> {
|
|
54
|
+
let returnText = (await this._formFieldLocator.getByTestId(`form-field__${this._id}__label`).textContent()) || '';
|
|
55
|
+
|
|
56
|
+
returnText = returnText.replace(/\s+/g, ' ').trim();
|
|
57
|
+
|
|
58
|
+
return returnText;
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
export function createInputFieldControl(page: Page, id: string): IInputFieldControl {
|
|
63
|
+
const inputFieldControl = new InputFieldControl(page, id);
|
|
64
|
+
const locator = page.getByTestId(`form-field__${id}`);
|
|
65
|
+
|
|
66
|
+
return new Proxy(inputFieldControl, {
|
|
67
|
+
get(target, prop, receiver) {
|
|
68
|
+
if (prop in target) {
|
|
69
|
+
return Reflect.get(target, prop, receiver);
|
|
70
|
+
}
|
|
71
|
+
const value = (locator as any)[prop];
|
|
72
|
+
|
|
73
|
+
if (typeof value === 'function') {
|
|
74
|
+
return value.bind(locator);
|
|
75
|
+
}
|
|
76
|
+
return value;
|
|
77
|
+
}
|
|
78
|
+
}) as unknown as IInputFieldControl;
|
|
79
|
+
}
|
package/controls/index.ts
CHANGED
|
@@ -133,12 +133,15 @@ export class SubjectComponentGenerator {
|
|
|
133
133
|
.map((line) => {
|
|
134
134
|
const property = line.split(':')[0].replace(/\?$/, '').trim();
|
|
135
135
|
const pageLocatorString = this._selectorBuilder.getPageLocatorString(property, componentName);
|
|
136
|
-
if (componentName === 'Form'
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
136
|
+
if (componentName === 'Form') {
|
|
137
|
+
if (property.endsWith('Lookup'))
|
|
138
|
+
return ` this.${property} = createLookupDropdown(${pageLocatorString});`;
|
|
139
|
+
if (property.endsWith('DatePicker'))
|
|
140
|
+
return ` this.${property} = createDateControl(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
141
|
+
if (property.endsWith('ComboBox'))
|
|
142
|
+
return ` this.${property} = createFormComboBox(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
143
|
+
if (property.endsWith('Field'))
|
|
144
|
+
return ` this.${property} = createInputFieldControl(page, '${this._selectorBuilder.getElementId(property, componentName)}');`;
|
|
142
145
|
}
|
|
143
146
|
return ` this.${property} = ${pageLocatorString};`;
|
|
144
147
|
})
|
|
@@ -147,14 +150,24 @@ export class SubjectComponentGenerator {
|
|
|
147
150
|
addImportsDynamically(componentFile) {
|
|
148
151
|
const lookupType = 'ILookupDropdown';
|
|
149
152
|
const comboBoxType = 'IFormComboBox';
|
|
153
|
+
const inputFieldType = 'IInputFieldControl';
|
|
154
|
+
const datePickerType = 'IDateControl';
|
|
155
|
+
const inputFieldImport = "import { createInputFieldControl, type IInputFieldControl } from '../../../../controls/InputFieldControl.js';";
|
|
150
156
|
const lookupImport = "import { createLookupDropdown, type ILookupDropdown } from '../../../../controls/LookupDropdown.js';";
|
|
151
157
|
const comboBoxImport = "import { createFormComboBox, type IFormComboBox } from '../../../../controls/FormComboBox.js';";
|
|
158
|
+
const datePickerImport = "import { createDateControl, type IDateControl } from '../../../../controls/DateControl.js';";
|
|
152
159
|
if (componentFile.content.includes(lookupType) && !componentFile.content.includes(lookupImport)) {
|
|
153
160
|
componentFile.content = `${lookupImport}\n${componentFile.content}`;
|
|
154
161
|
}
|
|
155
162
|
if (componentFile.content.includes(comboBoxType) && !componentFile.content.includes(comboBoxImport)) {
|
|
156
163
|
componentFile.content = `${comboBoxImport}\n${componentFile.content}`;
|
|
157
164
|
}
|
|
165
|
+
if (componentFile.content.includes(inputFieldType) && !componentFile.content.includes(inputFieldImport)) {
|
|
166
|
+
componentFile.content = `${inputFieldImport}\n${componentFile.content}`;
|
|
167
|
+
}
|
|
168
|
+
if (componentFile.content.includes(datePickerType) && !componentFile.content.includes(datePickerImport)) {
|
|
169
|
+
componentFile.content = `${datePickerImport}\n${componentFile.content}`;
|
|
170
|
+
}
|
|
158
171
|
}
|
|
159
172
|
generatePropertyDeclarations(propertiesToConvert, componentName) {
|
|
160
173
|
return propertiesToConvert
|
|
@@ -166,6 +179,12 @@ export class SubjectComponentGenerator {
|
|
|
166
179
|
if (componentName === 'Form' && property.endsWith('ComboBox')) {
|
|
167
180
|
return ` ${property}: IFormComboBox;`;
|
|
168
181
|
}
|
|
182
|
+
if (componentName === 'Form' && property.endsWith('Field')) {
|
|
183
|
+
return ` ${property}: IInputFieldControl;`;
|
|
184
|
+
}
|
|
185
|
+
if (componentName === 'Form' && property.endsWith('DatePicker')) {
|
|
186
|
+
return ` ${property}: IDateControl;`;
|
|
187
|
+
}
|
|
169
188
|
return ` ${property}: Locator;`;
|
|
170
189
|
})
|
|
171
190
|
.join('\n');
|
|
@@ -173,11 +192,13 @@ export class SubjectComponentGenerator {
|
|
|
173
192
|
transformInterfaceTypes(componentFile) {
|
|
174
193
|
const interfaceRegex = /export interface \w+ extends Form \{([\s\S]*?)\}/g;
|
|
175
194
|
const typeMapping = {
|
|
176
|
-
|
|
177
|
-
|
|
195
|
+
Lookup: 'ILookupDropdown',
|
|
196
|
+
ComboBox: 'IFormComboBox',
|
|
197
|
+
Field: 'IInputFieldControl',
|
|
198
|
+
DatePicker: 'IDateControl'
|
|
178
199
|
};
|
|
179
200
|
componentFile.content = componentFile.content.replace(interfaceRegex, (match, interfaceBody) => {
|
|
180
|
-
const propertyRegex = /(\w+(Lookup|ComboBox))\s*:\s*Locator;/g;
|
|
201
|
+
const propertyRegex = /(\w+(Lookup|ComboBox|Field|DatePicker))\s*:\s*Locator;/g;
|
|
181
202
|
const updatedBody = interfaceBody.replace(propertyRegex, (_match, propName, suffix) => {
|
|
182
203
|
const newType = typeMapping[suffix];
|
|
183
204
|
return `${propName}: ${newType};`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubjectComponentGenerator.js","sourceRoot":"","sources":["../../artifact-builder/SubjectComponentGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SubjectComponentGenerator.js","sourceRoot":"","sources":["../../artifact-builder/SubjectComponentGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -189,20 +189,20 @@ export class SubjectGenerator {
|
|
|
189
189
|
if (!screenComponents.includes(component.type))
|
|
190
190
|
return;
|
|
191
191
|
if (coreComponents.includes(component.type)) {
|
|
192
|
-
|
|
192
|
+
const componentId = this._namingHandler.toPascalCase(propertyName);
|
|
193
|
+
subjectClass.content += ` this.${propertyName} = ${this.getComponentInitializer(component, componentId)};\n`;
|
|
193
194
|
return;
|
|
194
195
|
}
|
|
195
196
|
const componentName = component.type;
|
|
196
197
|
subjectClass.content += ` this.${propertyName} = new ${subjectFolderName}${componentName}Component(page, ${component.context});\n`;
|
|
197
198
|
});
|
|
198
199
|
}
|
|
199
|
-
getComponentInitializer(component) {
|
|
200
|
+
getComponentInitializer(component, componentId) {
|
|
200
201
|
const componentNamePascal = this._namingHandler.toPascalCase(component.type);
|
|
201
202
|
switch (component.type) {
|
|
202
203
|
case 'Cardlist':
|
|
203
204
|
case 'TaskTiles':
|
|
204
205
|
case 'PrefilterList':
|
|
205
|
-
case 'TaskBar':
|
|
206
206
|
case 'Chart':
|
|
207
207
|
case 'CubeViewBar':
|
|
208
208
|
case 'PivotGrid':
|
|
@@ -223,6 +223,8 @@ export class SubjectGenerator {
|
|
|
223
223
|
return `new ${component.type}(page, ${component.context})`;
|
|
224
224
|
case 'TreeView':
|
|
225
225
|
return `new ${component.type}(page, this.context.locator('.Tree.${componentNamePascal}'))`;
|
|
226
|
+
case 'TaskBar':
|
|
227
|
+
return `new ${component.type}(page, this.context.locator('.ActionBar.${componentId}'))`;
|
|
226
228
|
default:
|
|
227
229
|
throw new Error(`Unknown core component type: ${component.type}`);
|
|
228
230
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SubjectGenerator.js","sourceRoot":"","sources":["../../artifact-builder/SubjectGenerator.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SubjectGenerator.js","sourceRoot":"","sources":["../../artifact-builder/SubjectGenerator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAE3D,OAAO,EACL,cAAc,EAGd,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAoB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAEzE,MAAM,OAAO,gBAAgB;IAS3B;QACE,IAAI,CAAC,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QACtD,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,eAAe,EAAE,SAAS,gBAAgB,CAAC,sBAAsB,EAAE,CAAC,CAAC;QACjH,IAAI,CAAC,cAAc,GAAG,IAAI,aAAa,EAAE,CAAC;QAC1C,IAAI,CAAC,gBAAgB,GAAG,IAAI,eAAe,EAAE,CAAC;IAChD,CAAC;IAEM,GAAG;QACR,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAC9B,IAAI,CAAC,sBAAsB,EAAE,CAAC;IAChC,CAAC;IAEO,sBAAsB;QAC5B,MAAM,QAAQ,GAAe,IAAI,aAAa,EAAE,CAAC,kBAAkB,EAAE,CAAC;QAEtE,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC3B,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,oBAAoB;QAC1B,OAAO,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7D,OAAO,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC7E,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,sBAAsB;QAC5B,MAAM,cAAc,GAAG,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAEnD,cAAc,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAChC,MAAM,WAAW,GAAa,EAAE,CAAC;YACjC,MAAM,iBAAiB,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;YACrE,MAAM,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,IAAI,KAAK,UAAU,CAAC,CAAC;YAChH,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC;YAE3D,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO;YAEjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;gBAC9B,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,EAAE,EAAE,OAAO,CAAC,CAAC;YAC3C,CAAC;YAED,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;gBACzB,IAAI,MAAM,KAAK,UAAU;oBAAE,OAAO;gBAElC,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;gBAC5C,WAAW,CAAC,IAAI,CAAC,YAAY,SAAS,cAAc,SAAS,OAAO,CAAC,CAAC;YACxE,CAAC,CAAC,CAAC;YAEH,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,OAAiB;QAC1C,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,2BAA2B,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;QACnG,MAAM,mBAAmB,GAAG,IAAI,CAAC,sBAAsB,CAAC,mBAAmB,CAAC,CAAC;QAC7E,MAAM,iBAAiB,GAAG,EAAE,CAAC,YAAY,CAAC,mBAAmB,EAAE,OAAO,CAAC,CAAC;QACxE,MAAM,iBAAiB,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC5E,MAAM,iBAAiB,GAAG,IAAI,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,CAAC;QAE/E,MAAM,YAAY,GAAG;YACnB,OAAO,EAAE,8GAA8G;YACvH,IAAI,EAAE,IAAI,CAAC,cAAc,CAAC,wBAAwB,CAAC,OAAO,CAAC;SAC5D,CAAC;QACF,MAAM,mBAAmB,GACvB,IAAI,CAAC,6BAA6B,CAAC,iBAAiB,EAAE,mBAAmB,EAAE,OAAO,CAI/E,CAAC;QAEN,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;QACjE,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,CAAC,uBAAuB,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAC;QACnF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,mBAAmB,CAAC,CAAC;QACvD,IAAI,CAAC,wBAAwB,CAAC,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,CAAC,CAAC;QACpF,IAAI,CAAC,cAAc,CAAC,YAAY,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,OAAO,CAAC,CAAC;QACnF,IAAI,CAAC,0BAA0B,CAAC,YAAY,CAAC,CAAC;QAC9C,IAAI,CAAC,qBAAqB,CAAC,iBAAiB,CAAC,CAAC;QAC9C,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,GAAG,YAAY,CAAC,IAAI,KAAK,CAAC,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC3G,CAAC;IAEO,6BAA6B,CACnC,iBAAyB,EACzB,mBAA2B,EAC3B,OAAiB;QAEjB,IAAI,mBAAmB,GAAsD,EAAE,CAAC;QAEhF,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,KAAK,CAC9C,IAAI,MAAM,CAAC,oBAAoB,mBAAmB,iBAAiB,CAAC,CACrE,CAAC;QAEF,IAAI,gBAAgB,EAAE,CAAC;YACrB,MAAM,eAAe,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;YAClG,IAAI,eAAe,EAAE,CAAC;gBACpB,mBAAmB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;oBACjD,6DAA6D;oBAC7D,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,4CAA4C,CAAC,IAAI,EAAE,CAAC;oBACvF,MAAM,OAAO,GAAG,IAAI,CAAC,qCAAqC,CAAC,IAAwB,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;oBAEpG,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;gBACjC,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAED,uHAAuH;IAC/G,qCAAqC,CAC3C,aAA+B,EAC/B,aAAqB,EACrB,OAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,sBAAsB,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;QAC7F,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC9D,MAAM,aAAa,GAAG;YACpB,MAAM,EAAE,EAAE;YACV,MAAM,EAAE,EAAE;YACV,WAAW,EAAE,aAA4B;SAC1C,CAAC;QAEF,QAAQ,aAAa,EAAE,CAAC;YACtB,KAAK,MAAM,CAAC;YACZ,KAAK,MAAM,CAAC;YACZ,KAAK,UAAU,CAAC;YAChB,KAAK,YAAY,CAAC;YAClB,KAAK,WAAW;gBACd,aAAa,CAAC,MAAM,GAAG,WAAW,YAAY,IAAI,CAAC;gBACnD,MAAM;YACR,KAAK,WAAW,CAAC;YACjB,KAAK,iBAAiB;gBACpB,aAAa,CAAC,MAAM,GAAG,GAAG,CAAC;gBAC3B,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;gBACtC,MAAM;YACR,KAAK,KAAK;gBACR,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC;gBAC/B,aAAa,CAAC,WAAW,GAAG,SAAS,CAAC;gBACtC,MAAM;YACR,KAAK,eAAe;gBAClB,OAAO,cAAc,CAAC;QAC1B,CAAC;QAED,OAAO,gBAAgB,aAAa,CAAC,WAAW,KAAK,aAAa,CAAC,MAAM,GAAG,WAAW,GAAG,aAAa,CAAC,MAAM,IAAI,CAAC;IACrH,CAAC;IAEO,qBAAqB,CAAC,aAAqB;QACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAClC,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACnD,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,mBAA2B;QACxD,MAAM,mBAAmB,GAAG,IAAI,CAAC,OAAO,CACtC,IAAI,CAAC,eAAe,EACpB,gCAAgC,mBAAmB,KAAK,CACzD,CAAC;QAEF,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;YACxC,MAAM,IAAI,KAAK,CAAC,oCAAoC,mBAAmB,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IAEO,4BAA4B,CAAC,iBAAyB;QAC5D,MAAM,iBAAiB,GAAG,IAAI,CAAC,OAAO,CACpC,IAAI,CAAC,eAAe,EACpB,SAAS,gBAAgB,CAAC,sBAAsB,IAAI,iBAAiB,EAAE,CACxE,CAAC;QACF,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAEO,uBAAuB,CAC7B,mBAAwE,EACxE,iBAAyB,EACzB,YAAiC;QAEjC,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAAU,CAAC;QAE/C,mBAAmB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,OAAO;YAEvD,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,MAAM,WAAW,GAAG,IAAI,MAAM,CAC5B,qBAAqB,SAAS,CAAC,IAAI,kDAAkD,CACtF,CAAC;gBAEF,IAAI,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC3C,OAAO;gBACT,CAAC;gBAED,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;gBACzC,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;YACrC,MAAM,eAAe,GAAG,iBAAiB,iBAAiB,GAAG,aAAa,KAAK,iBAAiB,GAAG,aAAa,kCAAkC,iBAAiB,GAAG,aAAa,OAAO,CAAC;YAE3L,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;gBACpD,YAAY,CAAC,OAAO,GAAG,GAAG,eAAe,KAAK,YAAY,CAAC,OAAO,EAAE,CAAC;YACvE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,oBAAoB,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAClC,YAAY,CAAC,OAAO,GAAG,YAAY,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,4CAA4C,YAAY,CAAC,OAAO,EAAE,CAAC;QACnJ,CAAC;IACH,CAAC;IAEO,sBAAsB,CAAC,YAAiC;QAC9D,YAAY,CAAC,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,OAAO,CACjD,gEAAgE,EAChE,EAAE,CACH,CAAC;IACJ,CAAC;IAEO,cAAc,CAAC,YAA+C,EAAE,mBAA2B;QACjG,YAAY,CAAC,OAAO,IAAI,kBAAkB,YAAY,CAAC,IAAI,uCAAuC,mBAAmB,MAAM,CAAC;IAC9H,CAAC;IAEO,wBAAwB,CAAC,YAAiC,EAAE,mBAA2B;QAC7F,IAAI,YAAY,CAAC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,mBAAmB,IAAI,CAAC,EAAE,CAAC;YAC5E,OAAO;QACT,CAAC;QAED,YAAY,CAAC,OAAO,GAAG,iBAAiB,mBAAmB,sCAAsC,YAAY,CAAC,OAAO,EAAE,CAAC;IAC1H,CAAC;IAEO,wBAAwB,CAC9B,YAAiC,EACjC,mBAAwE,EACxE,iBAAyB;QAEzB,mBAAmB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACxC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,OAAO;YAEvD,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC5E,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,YAAY,CAAC,OAAO,IAAI,KAAK,YAAY,KAAK,SAAS,CAAC,IAAI,KAAK,CAAC;gBAClE,OAAO;YACT,CAAC;YACD,MAAM,aAAa,GAAG,GAAG,iBAAiB,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;YAC9D,YAAY,CAAC,OAAO,IAAI,KAAK,YAAY,KAAK,aAAa,KAAK,CAAC;QACnE,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CACpB,YAAiC,EACjC,mBAAyF,EACzF,iBAAyB,EACzB,OAAiB;QAEjB,MAAM,mBAAmB,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;QAE1E,YAAY,CAAC,OAAO,IAAI,0DAA0D,mBAAmB,QAAQ,CAAC;QAE9G,mBAAmB,CAAC,OAAO,CAAC,CAAC,SAAS,EAAE,EAAE;YACxC,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAE5E,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC;gBAAE,OAAO;YAEvD,IAAI,cAAc,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5C,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;gBACnE,YAAY,CAAC,OAAO,IAAI,YAAY,YAAY,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,KAAK,CAAC;gBAChH,OAAO;YACT,CAAC;YAED,MAAM,aAAa,GAAG,SAAS,CAAC,IAAI,CAAC;YACrC,YAAY,CAAC,OAAO,IAAI,YAAY,YAAY,UAAU,iBAAiB,GAAG,aAAa,mBAAmB,SAAS,CAAC,OAAO,MAAM,CAAC;QACxI,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,uBAAuB,CAAC,SAA2C,EAAG,WAAmB;QAC/F,MAAM,mBAAmB,GAAG,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QAE7E,QAAQ,SAAS,CAAC,IAAI,EAAE,CAAC;YACvB,KAAK,UAAU,CAAC;YAChB,KAAK,WAAW,CAAC;YACjB,KAAK,eAAe,CAAC;YACrB,KAAK,OAAO,CAAC;YACb,KAAK,aAAa,CAAC;YACnB,KAAK,WAAW,CAAC;YACjB,KAAK,oBAAoB,CAAC;YAC1B,KAAK,MAAM,CAAC;YACZ,KAAK,WAAW,CAAC;YACjB,KAAK,aAAa,CAAC;YACnB,KAAK,SAAS;gBACZ,OAAO,OAAO,SAAS,CAAC,IAAI,iCAAiC,SAAS,CAAC,IAAI,IAAI,mBAAmB,KAAK,CAAC;YAC1G,KAAK,gBAAgB,CAAC;YACtB,KAAK,iBAAiB,CAAC;YACvB,KAAK,WAAW,CAAC;YACjB,KAAK,UAAU,CAAC;YAChB,KAAK,eAAe,CAAC;YACrB,KAAK,KAAK,CAAC;YACX,KAAK,YAAY,CAAC;YAClB,KAAK,WAAW;gBACd,OAAO,OAAO,SAAS,CAAC,IAAI,UAAU,SAAS,CAAC,OAAO,GAAG,CAAC;YAC7D,KAAK,UAAU;gBACb,OAAO,OAAO,SAAS,CAAC,IAAI,sCAAsC,mBAAmB,KAAK,CAAC;YAC7F,KAAK,SAAS;gBACZ,OAAO,OAAO,SAAS,CAAC,IAAI,2CAA2C,WAAW,KAAK,CAAC;YAC1F;gBACE,MAAM,IAAI,KAAK,CAAC,gCAAgC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IAEO,0BAA0B,CAAC,YAAiC;QAClE,YAAY,CAAC,OAAO,IAAI,UAAU,CAAC;IACrC,CAAC;;AA7TuB,uCAAsB,GAAG,yBAAyB,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { KnownElementTypes } from '../../enums/ElementTypes.js';
|
|
|
4
4
|
export class NamingHandler {
|
|
5
5
|
getDefaultElementSuffixFromComponentType(componentType) {
|
|
6
6
|
const controlTypeMapping = {
|
|
7
|
-
Form: KnownElementTypes.
|
|
7
|
+
Form: KnownElementTypes.Field,
|
|
8
8
|
Grid: KnownElementTypes.Column
|
|
9
9
|
};
|
|
10
10
|
return controlTypeMapping[componentType];
|
|
@@ -12,7 +12,6 @@ export class NamingHandler {
|
|
|
12
12
|
getElementSuffixFromControlTypeAndComponentType(controlType, componentType) {
|
|
13
13
|
controlType = controlType.toLowerCase();
|
|
14
14
|
const formDefaultSuffix = this.getDefaultElementSuffixFromComponentType('Form');
|
|
15
|
-
const gridDefaultSuffix = this.getDefaultElementSuffixFromComponentType('Grid');
|
|
16
15
|
const controlTypeMappingMatrix = {
|
|
17
16
|
Form: {
|
|
18
17
|
email: formDefaultSuffix,
|
|
@@ -25,18 +24,11 @@ export class NamingHandler {
|
|
|
25
24
|
multiline: KnownElementTypes.Textarea,
|
|
26
25
|
combo: KnownElementTypes.ComboBox,
|
|
27
26
|
combo_box: KnownElementTypes.ComboBox,
|
|
27
|
+
date: KnownElementTypes.DatePicker,
|
|
28
|
+
date_picker: KnownElementTypes.DatePicker
|
|
28
29
|
},
|
|
29
30
|
Grid: {
|
|
30
|
-
|
|
31
|
-
phone_number: gridDefaultSuffix,
|
|
32
|
-
suggestion_starts_with: gridDefaultSuffix,
|
|
33
|
-
lookup_dropdown: gridDefaultSuffix,
|
|
34
|
-
dropdown: gridDefaultSuffix,
|
|
35
|
-
lookup: gridDefaultSuffix,
|
|
36
|
-
checkbox: gridDefaultSuffix,
|
|
37
|
-
multiline: gridDefaultSuffix,
|
|
38
|
-
combo: gridDefaultSuffix,
|
|
39
|
-
combo_box: gridDefaultSuffix
|
|
31
|
+
// Insert Grid-specific control type mappings here
|
|
40
32
|
}
|
|
41
33
|
};
|
|
42
34
|
const componentMapping = controlTypeMappingMatrix[componentType];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NamingHandler.js","sourceRoot":"","sources":["../../../artifact-builder/helpers/NamingHandler.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAGhE,MAAM,OAAO,aAAa;IACjB,wCAAwC,CAAC,aAAgC;QAC9E,MAAM,kBAAkB,GAAiD;YACvE,IAAI,EAAE,iBAAiB,CAAC,KAAK;YAC7B,IAAI,EAAE,iBAAiB,CAAC,MAAM;SAC/B,CAAC;QAEF,OAAO,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC3C,CAAC;IAEM,+CAA+C,CACpD,WAAmB,EACnB,aAAgC;QAEhC,WAAW,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAExC,MAAM,iBAAiB,GAAsB,IAAI,CAAC,wCAAwC,CAAC,MAAM,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"NamingHandler.js","sourceRoot":"","sources":["../../../artifact-builder/helpers/NamingHandler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ExportComponent.js","sourceRoot":"","sources":["../../../components/export/ExportComponent.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAEvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAErE,8GAA8G;AAC9G,yFAAyF;AACzF,MAAM,OAAO,eAAe;IAI1B,YAAY,IAAU;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,QAAQ,GAAG,IAAI,sBAAsB,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEM,KAAK,CAAC,aAAa;QACxB,MAAM,IAAI,CAAC,QAAQ,CAAC,wBAAwB,EAAE,CAAC,KAAK,EAAE,CAAC;QACvD,MAAM,IAAI,CAAC,QAAQ,EAAE,CAAC;IACxB,CAAC;IAEM,KAAK,CAAC,QAAQ;QACnB,MAAM,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,CAAC;IAC3C,CAAC;IAEM,KAAK,CAAC,aAAa,CAAC,OAAiB;QAC1C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC;YAC7D,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QACzB,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,kBAAkB,CAAC,MAAoB;QAClD,MAAM,IAAI,CAAC,QAAQ,CAAC,oBAAoB,EAAE,CAAC,KAAK,EAAE,CAAC;QACnD,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,CAAC;IACzD,CAAC;IAEM,KAAK,CAAC,cAAc;QACzB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QAEpH,MAAM,cAAc,GAAG,MAAM,QAAQ,CAAC,gBAAgB,EAAE,CAAC;QACzD,MAAM,MAAM,GAAa,EAAE,CAAC;QAE5B,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CAAC,sDAAsD,CAAC,CAAC;QAC1E,CAAC;QAED,IAAI,KAAK,EAAE,MAAM,KAAK,IAAI,cAAc,EAAE,CAAC;YACzC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;QAE3D,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE;YAChC,OAAO,EAAE,IAAI;YACb,gBAAgB,EAAE,IAAI;YACtB,SAAS,EAAE,GAAG;YACd,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnB,MAAM,OAAO,GAA2B,EAAE,CAAC;gBAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;oBAClD,MAAM,UAAU,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;oBAC9B,MAAM,YAAY,GAAG,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBACnE,OAAO,CAAC,UAAU,CAAC,GAAG,YAAY,CAAC;gBACrC,CAAC;gBACD,OAAO,OAAO,CAAC;YACjB,CAAC;SACF,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"ExportComponent.js","sourceRoot":"","sources":["../../../components/export/ExportComponent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Locator, Page } from '@playwright/test';
|
|
2
|
+
export type IDateControl = Locator & IDateControlCore;
|
|
3
|
+
export type IDateControlCore = {
|
|
4
|
+
fill(value: string): Promise<void>;
|
|
5
|
+
clear(): Promise<void>;
|
|
6
|
+
inputValue(): Promise<string>;
|
|
7
|
+
inputElement(): Locator;
|
|
8
|
+
};
|
|
9
|
+
export declare class DateControl implements IDateControlCore {
|
|
10
|
+
private _dateFieldLocator;
|
|
11
|
+
private _inputLocator;
|
|
12
|
+
constructor(page: Page, id: string);
|
|
13
|
+
/**
|
|
14
|
+
* Enter a date value in any common format (e.g., "MM/DD/YYYY", "YYYY-MM-DD", "DD-MM-YYYY").
|
|
15
|
+
* The method will extract the numbers and input them sequentially, allowing the date picker to format it correctly.
|
|
16
|
+
* For example, entering "01012025" will be interpreted as "01/01/2025".
|
|
17
|
+
* This approach provides flexibility in how dates can be entered while ensuring compatibility with various date picker implementations.
|
|
18
|
+
* @param value
|
|
19
|
+
*/
|
|
20
|
+
fill(value: string): Promise<void>;
|
|
21
|
+
clear(): Promise<void>;
|
|
22
|
+
inputValue(): Promise<string>;
|
|
23
|
+
inputElement(): Locator;
|
|
24
|
+
}
|
|
25
|
+
export declare function createDateControl(page: Page, id: string): IDateControl;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export class DateControl {
|
|
2
|
+
constructor(page, id) {
|
|
3
|
+
this._dateFieldLocator = page.getByTestId(`form-field__${id}`);
|
|
4
|
+
this._inputLocator = this._dateFieldLocator.locator('input');
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Enter a date value in any common format (e.g., "MM/DD/YYYY", "YYYY-MM-DD", "DD-MM-YYYY").
|
|
8
|
+
* The method will extract the numbers and input them sequentially, allowing the date picker to format it correctly.
|
|
9
|
+
* For example, entering "01012025" will be interpreted as "01/01/2025".
|
|
10
|
+
* This approach provides flexibility in how dates can be entered while ensuring compatibility with various date picker implementations.
|
|
11
|
+
* @param value
|
|
12
|
+
*/
|
|
13
|
+
async fill(value) {
|
|
14
|
+
const numbersOnlyValue = value.replace(/\D/g, '');
|
|
15
|
+
await this._inputLocator.focus();
|
|
16
|
+
await this._inputLocator.pressSequentially(numbersOnlyValue);
|
|
17
|
+
}
|
|
18
|
+
async clear() {
|
|
19
|
+
await this._inputLocator.fill('');
|
|
20
|
+
}
|
|
21
|
+
async inputValue() {
|
|
22
|
+
return await this._inputLocator.inputValue();
|
|
23
|
+
}
|
|
24
|
+
inputElement() {
|
|
25
|
+
return this._inputLocator;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export function createDateControl(page, id) {
|
|
29
|
+
const inputFieldControl = new DateControl(page, id);
|
|
30
|
+
const locator = page.getByTestId(`form-field__${id}`);
|
|
31
|
+
return new Proxy(inputFieldControl, {
|
|
32
|
+
get(target, prop, receiver) {
|
|
33
|
+
if (prop in target) {
|
|
34
|
+
return Reflect.get(target, prop, receiver);
|
|
35
|
+
}
|
|
36
|
+
const value = locator[prop];
|
|
37
|
+
if (typeof value === 'function') {
|
|
38
|
+
return value.bind(locator);
|
|
39
|
+
}
|
|
40
|
+
return value;
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=DateControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DateControl.js","sourceRoot":"","sources":["../../controls/DateControl.ts"],"names":[],"mappings":"AAaA,MAAM,OAAO,WAAW;IAItB,YAAY,IAAU,EAAE,EAAU;QAChC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/D,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,IAAU,EAAE,EAAU;IACtD,MAAM,iBAAiB,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACpD,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEtD,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"}
|
|
@@ -21,7 +21,9 @@ class FormComboBox {
|
|
|
21
21
|
await this._formFieldLocator.locator('input').fill(optionToSelect);
|
|
22
22
|
await this._autoCompleteMenu.waitFor({ state: 'visible' });
|
|
23
23
|
const optionToSelectLowercase = optionToSelect.toLowerCase();
|
|
24
|
-
await this._autoCompleteMenu
|
|
24
|
+
await this._autoCompleteMenu
|
|
25
|
+
.getByTestId(`form-field__${this._id}__select__${optionToSelectLowercase}__text`)
|
|
26
|
+
.click();
|
|
25
27
|
}
|
|
26
28
|
}
|
|
27
29
|
export function createFormComboBox(page, id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FormComboBox.js","sourceRoot":"","sources":["../../controls/FormComboBox.ts"],"names":[],"mappings":"AAaA,MAAM,YAAY;IAKhB,YAAY,IAAU,EAAE,EAAU;QAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;IACvF,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,
|
|
1
|
+
{"version":3,"file":"FormComboBox.js","sourceRoot":"","sources":["../../controls/FormComboBox.ts"],"names":[],"mappings":"AAaA,MAAM,YAAY;IAKhB,YAAY,IAAU,EAAE,EAAU;QAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/D,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,wBAAwB,CAAC,CAAC;IACvF,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,IAAU,EAAE,EAAU;IACvD,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEtD,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"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/** biome-ignore-all lint/suspicious/noExplicitAny: reason42 */
|
|
2
|
+
import type { Locator, Page } from '@playwright/test';
|
|
3
|
+
export type IInputFieldControl = Locator & ICoreInputFieldControl;
|
|
4
|
+
export type ICoreInputFieldControl = {
|
|
5
|
+
getValidationMessage(): Promise<string>;
|
|
6
|
+
getLabelText(): Promise<string>;
|
|
7
|
+
fill(value: string): Promise<void>;
|
|
8
|
+
click(): Promise<void>;
|
|
9
|
+
clear(): Promise<void>;
|
|
10
|
+
inputValue(): Promise<string>;
|
|
11
|
+
inputElement(): Locator;
|
|
12
|
+
};
|
|
13
|
+
export declare class InputFieldControl implements ICoreInputFieldControl {
|
|
14
|
+
private _formFieldLocator;
|
|
15
|
+
private _inputLocator;
|
|
16
|
+
private _id;
|
|
17
|
+
constructor(page: Page, id: string);
|
|
18
|
+
getValidationMessage(): Promise<string>;
|
|
19
|
+
fill(value: string): Promise<void>;
|
|
20
|
+
click(): Promise<void>;
|
|
21
|
+
clear(): Promise<void>;
|
|
22
|
+
inputValue(): Promise<string>;
|
|
23
|
+
inputElement(): Locator;
|
|
24
|
+
getLabelText(): Promise<string>;
|
|
25
|
+
}
|
|
26
|
+
export declare function createInputFieldControl(page: Page, id: string): IInputFieldControl;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export class InputFieldControl {
|
|
2
|
+
constructor(page, id) {
|
|
3
|
+
this._id = id;
|
|
4
|
+
this._formFieldLocator = page.getByTestId(`form-field__${id}`);
|
|
5
|
+
this._inputLocator = this._formFieldLocator.locator('input');
|
|
6
|
+
}
|
|
7
|
+
async getValidationMessage() {
|
|
8
|
+
await this._formFieldLocator.locator('.TooltipContainer p').waitFor({ state: 'visible' });
|
|
9
|
+
return await this._formFieldLocator.locator('.TooltipContainer p').innerText();
|
|
10
|
+
}
|
|
11
|
+
async fill(value) {
|
|
12
|
+
await this._inputLocator.fill(value);
|
|
13
|
+
}
|
|
14
|
+
async click() {
|
|
15
|
+
await this._inputLocator.click();
|
|
16
|
+
}
|
|
17
|
+
async clear() {
|
|
18
|
+
await this._inputLocator.fill('');
|
|
19
|
+
}
|
|
20
|
+
async inputValue() {
|
|
21
|
+
return await this._inputLocator.inputValue();
|
|
22
|
+
}
|
|
23
|
+
inputElement() {
|
|
24
|
+
return this._inputLocator;
|
|
25
|
+
}
|
|
26
|
+
async getLabelText() {
|
|
27
|
+
let returnText = (await this._formFieldLocator.getByTestId(`form-field__${this._id}__label`).textContent()) || '';
|
|
28
|
+
returnText = returnText.replace(/\s+/g, ' ').trim();
|
|
29
|
+
return returnText;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export function createInputFieldControl(page, id) {
|
|
33
|
+
const inputFieldControl = new InputFieldControl(page, id);
|
|
34
|
+
const locator = page.getByTestId(`form-field__${id}`);
|
|
35
|
+
return new Proxy(inputFieldControl, {
|
|
36
|
+
get(target, prop, receiver) {
|
|
37
|
+
if (prop in target) {
|
|
38
|
+
return Reflect.get(target, prop, receiver);
|
|
39
|
+
}
|
|
40
|
+
const value = locator[prop];
|
|
41
|
+
if (typeof value === 'function') {
|
|
42
|
+
return value.bind(locator);
|
|
43
|
+
}
|
|
44
|
+
return value;
|
|
45
|
+
}
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=InputFieldControl.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InputFieldControl.js","sourceRoot":"","sources":["../../controls/InputFieldControl.ts"],"names":[],"mappings":"AAgBA,MAAM,OAAO,iBAAiB;IAK5B,YAAY,IAAU,EAAE,EAAU;QAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;QACd,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;QAC/D,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,IAAU,EAAE,EAAU;IAC5D,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;IAEtD,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"}
|
package/dist/controls/index.d.ts
CHANGED
package/dist/controls/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../controls/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../controls/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,qBAAqB,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export declare enum KnownElementTypes {
|
|
2
|
-
|
|
2
|
+
Field = "field",
|
|
3
3
|
Dropdown = "dropdown",
|
|
4
4
|
Textarea = "textarea",
|
|
5
5
|
Checkbox = "checkbox",
|
|
6
6
|
Lookup = "lookup",
|
|
7
7
|
Column = "column_cells",
|
|
8
|
-
ComboBox = "combo_box"
|
|
8
|
+
ComboBox = "combo_box",
|
|
9
|
+
DatePicker = "date_picker"
|
|
9
10
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
export var KnownElementTypes;
|
|
2
2
|
(function (KnownElementTypes) {
|
|
3
|
-
KnownElementTypes["
|
|
3
|
+
KnownElementTypes["Field"] = "field";
|
|
4
4
|
KnownElementTypes["Dropdown"] = "dropdown";
|
|
5
5
|
KnownElementTypes["Textarea"] = "textarea";
|
|
6
6
|
KnownElementTypes["Checkbox"] = "checkbox";
|
|
7
7
|
KnownElementTypes["Lookup"] = "lookup";
|
|
8
8
|
KnownElementTypes["Column"] = "column_cells";
|
|
9
9
|
KnownElementTypes["ComboBox"] = "combo_box";
|
|
10
|
+
KnownElementTypes["DatePicker"] = "date_picker";
|
|
10
11
|
})(KnownElementTypes || (KnownElementTypes = {}));
|
|
11
12
|
//# sourceMappingURL=ElementTypes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ElementTypes.js","sourceRoot":"","sources":["../../enums/ElementTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,
|
|
1
|
+
{"version":3,"file":"ElementTypes.js","sourceRoot":"","sources":["../../enums/ElementTypes.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,iBASX;AATD,WAAY,iBAAiB;IAC3B,oCAAe,CAAA;IACf,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;IACrB,0CAAqB,CAAA;IACrB,sCAAiB,CAAA;IACjB,4CAAuB,CAAA;IACvB,2CAAsB,CAAA;IACtB,+CAA0B,CAAA;AAC5B,CAAC,EATW,iBAAiB,KAAjB,iBAAiB,QAS5B"}
|
package/enums/ElementTypes.ts
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
export enum KnownElementTypes {
|
|
2
|
-
|
|
2
|
+
Field = 'field',
|
|
3
3
|
Dropdown = 'dropdown',
|
|
4
4
|
Textarea = 'textarea',
|
|
5
5
|
Checkbox = 'checkbox',
|
|
6
6
|
Lookup = 'lookup',
|
|
7
7
|
Column = 'column_cells',
|
|
8
|
-
ComboBox = 'combo_box'
|
|
8
|
+
ComboBox = 'combo_box',
|
|
9
|
+
DatePicker = 'date_picker'
|
|
9
10
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@thinkwise/testwise",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.21",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"bin": {
|
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
"license": "ISC",
|
|
19
19
|
"description": "",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@thinkwise/backups": "^1.0.
|
|
21
|
+
"@thinkwise/backups": "^1.0.13",
|
|
22
22
|
"@types/node": "^22.15.29",
|
|
23
23
|
"axios": "^1.9.0",
|
|
24
24
|
"chalk": "^5.4.1",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"csv-parse": "^5.6.0",
|
|
27
27
|
"dotenv": "^17.2.2",
|
|
28
28
|
"playwright-bdd": "^8.4.2",
|
|
29
|
-
"prettier": "^3.
|
|
29
|
+
"prettier": "^3.8.1",
|
|
30
30
|
"prompts": "^2.4.2",
|
|
31
31
|
"quicktype-core": "^23.2.6",
|
|
32
32
|
"rimraf": "^6.0.1",
|
package/scripts/sync.js
CHANGED
|
@@ -5,9 +5,9 @@ import fs from 'node:fs';
|
|
|
5
5
|
import path from 'node:path';
|
|
6
6
|
import process from 'node:process';
|
|
7
7
|
import { fileURLToPath } from 'node:url';
|
|
8
|
+
import { SubjectRegistration } from '../dist/artifact-builder/SubjectRegistration.js';
|
|
8
9
|
import { PathResolver } from '../dist/helpers/index.js';
|
|
9
10
|
import { indiciumApi } from '../dist/services/IndiciumApi.service.js';
|
|
10
|
-
import { SubjectRegistration } from '../dist/artifact-builder/SubjectRegistration.js';
|
|
11
11
|
|
|
12
12
|
// ============================================================================
|
|
13
13
|
// Constants & Configuration
|