@rich-automation/lotto 0.1.0 → 0.1.2
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/lib/cjs/controllers/puppeteer/puppeteer.page.js +8 -2
- package/lib/cjs/lottoService.js +13 -2
- package/lib/esm/controllers/puppeteer/puppeteer.page.js +8 -2
- package/lib/esm/lottoService.js +13 -2
- package/lib/typescript/controllers/puppeteer/puppeteer.page.d.ts +1 -1
- package/lib/typescript/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -31,9 +31,15 @@ class PuppeteerPage {
|
|
|
31
31
|
yield this.page.type(selector, value.toString());
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
-
click(selector) {
|
|
34
|
+
click(selector, useWaitForSelector = false) {
|
|
35
35
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
|
-
|
|
36
|
+
if (useWaitForSelector) {
|
|
37
|
+
const handle = yield this.page.waitForSelector(selector, { timeout: 15000 });
|
|
38
|
+
handle === null || handle === void 0 ? void 0 : handle.click();
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
yield this.page.click(selector);
|
|
42
|
+
}
|
|
37
43
|
});
|
|
38
44
|
}
|
|
39
45
|
select(selector, value) {
|
package/lib/cjs/lottoService.js
CHANGED
|
@@ -114,9 +114,20 @@ class LottoService {
|
|
|
114
114
|
yield page.select(selectors_1.SELECTORS.PURCHASE_AMOUNT_SELECT, amountString);
|
|
115
115
|
yield page.click(selectors_1.SELECTORS.PURCHASE_AMOUNT_CONFIRM_BTN);
|
|
116
116
|
// click purchase button
|
|
117
|
-
this.logger.debug('[purchase]', 'click purchase button
|
|
117
|
+
this.logger.debug('[purchase]', 'click purchase button');
|
|
118
118
|
yield page.click(selectors_1.SELECTORS.PURCHASE_BTN);
|
|
119
|
-
|
|
119
|
+
this.logger.debug('[purchase]', 'click purchase confirm button');
|
|
120
|
+
try {
|
|
121
|
+
yield page.click(selectors_1.SELECTORS.PURCHASE_CONFIRM_BTN, true);
|
|
122
|
+
}
|
|
123
|
+
catch (e) {
|
|
124
|
+
this.logger.debug('[purchase]', 'purchase confirm failure', e);
|
|
125
|
+
this.logger.debug('[purchase]', 'print node');
|
|
126
|
+
yield page.querySelectorAll(selectors_1.SELECTORS.PURCHASE_CONFIRM_BTN, elems => {
|
|
127
|
+
this.logger.debug('[purchase]', elems);
|
|
128
|
+
});
|
|
129
|
+
throw e;
|
|
130
|
+
}
|
|
120
131
|
yield page.wait(1000);
|
|
121
132
|
// game result
|
|
122
133
|
this.logger.debug('[purchase]', 'print result');
|
|
@@ -29,9 +29,15 @@ export class PuppeteerPage {
|
|
|
29
29
|
yield this.page.type(selector, value.toString());
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
|
-
click(selector) {
|
|
32
|
+
click(selector, useWaitForSelector = false) {
|
|
33
33
|
return __awaiter(this, void 0, void 0, function* () {
|
|
34
|
-
|
|
34
|
+
if (useWaitForSelector) {
|
|
35
|
+
const handle = yield this.page.waitForSelector(selector, { timeout: 15000 });
|
|
36
|
+
handle === null || handle === void 0 ? void 0 : handle.click();
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
yield this.page.click(selector);
|
|
40
|
+
}
|
|
35
41
|
});
|
|
36
42
|
}
|
|
37
43
|
select(selector, value) {
|
package/lib/esm/lottoService.js
CHANGED
|
@@ -108,9 +108,20 @@ export class LottoService {
|
|
|
108
108
|
yield page.select(SELECTORS.PURCHASE_AMOUNT_SELECT, amountString);
|
|
109
109
|
yield page.click(SELECTORS.PURCHASE_AMOUNT_CONFIRM_BTN);
|
|
110
110
|
// click purchase button
|
|
111
|
-
this.logger.debug('[purchase]', 'click purchase button
|
|
111
|
+
this.logger.debug('[purchase]', 'click purchase button');
|
|
112
112
|
yield page.click(SELECTORS.PURCHASE_BTN);
|
|
113
|
-
|
|
113
|
+
this.logger.debug('[purchase]', 'click purchase confirm button');
|
|
114
|
+
try {
|
|
115
|
+
yield page.click(SELECTORS.PURCHASE_CONFIRM_BTN, true);
|
|
116
|
+
}
|
|
117
|
+
catch (e) {
|
|
118
|
+
this.logger.debug('[purchase]', 'purchase confirm failure', e);
|
|
119
|
+
this.logger.debug('[purchase]', 'print node');
|
|
120
|
+
yield page.querySelectorAll(SELECTORS.PURCHASE_CONFIRM_BTN, elems => {
|
|
121
|
+
this.logger.debug('[purchase]', elems);
|
|
122
|
+
});
|
|
123
|
+
throw e;
|
|
124
|
+
}
|
|
114
125
|
yield page.wait(1000);
|
|
115
126
|
// game result
|
|
116
127
|
this.logger.debug('[purchase]', 'print result');
|
|
@@ -6,7 +6,7 @@ export declare class PuppeteerPage implements BrowserPageInterface {
|
|
|
6
6
|
url(): Promise<string>;
|
|
7
7
|
goto(url: string): Promise<void>;
|
|
8
8
|
fill(selector: string, value: string | number): Promise<void>;
|
|
9
|
-
click(selector: string): Promise<void>;
|
|
9
|
+
click(selector: string, useWaitForSelector?: boolean): Promise<void>;
|
|
10
10
|
select(selector: string, value: string): Promise<void>;
|
|
11
11
|
querySelectorAll<T>(selector: string, callback: (elems: FakeDOMElement[]) => T): Promise<T>;
|
|
12
12
|
getCookies(): Promise<string>;
|
|
@@ -30,7 +30,7 @@ export interface BrowserPageInterface {
|
|
|
30
30
|
url(): Promise<string>;
|
|
31
31
|
goto(url: string): Promise<void>;
|
|
32
32
|
fill(selector: string, value: string | number): Promise<void>;
|
|
33
|
-
click(selector: string): Promise<void>;
|
|
33
|
+
click(selector: string, useWaitForSelector?: boolean): Promise<void>;
|
|
34
34
|
select(selector: string, value: string): Promise<void>;
|
|
35
35
|
querySelectorAll<T>(selector: string, callback: (elems: FakeDOMElement[]) => T): Promise<T>;
|
|
36
36
|
wait(time: number): Promise<void>;
|