@rich-automation/lotto 0.1.3 → 0.1.4

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.
@@ -16,7 +16,6 @@ class PuppeteerPage {
16
16
  constructor(page, logger) {
17
17
  this.page = page;
18
18
  this.logger = logger;
19
- this.page = page;
20
19
  }
21
20
  url() {
22
21
  return __awaiter(this, void 0, void 0, function* () {
@@ -33,13 +32,12 @@ class PuppeteerPage {
33
32
  yield this.page.type(selector, value.toString());
34
33
  });
35
34
  }
36
- click(selector, useWaitForSelector = false) {
37
- var _a;
35
+ click(selector, domDirect = false) {
38
36
  return __awaiter(this, void 0, void 0, function* () {
39
- if (useWaitForSelector) {
40
- const handle = yield this.page.waitForSelector(selector, { timeout: 15000 });
41
- (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('[PuppeteerPage]', '[click]', 'handle', handle);
42
- handle === null || handle === void 0 ? void 0 : handle.click();
37
+ if (domDirect) {
38
+ // @ts-ignore
39
+ yield this.page.evaluate(s => document.querySelector(s).click(), selector);
40
+ yield this.wait(250);
43
41
  }
44
42
  else {
45
43
  yield this.page.click(selector);
@@ -115,19 +115,9 @@ class LottoService {
115
115
  yield page.click(selectors_1.SELECTORS.PURCHASE_AMOUNT_CONFIRM_BTN);
116
116
  // click purchase button
117
117
  this.logger.debug('[purchase]', 'click purchase button');
118
- yield page.click(selectors_1.SELECTORS.PURCHASE_BTN);
118
+ yield page.click(selectors_1.SELECTORS.PURCHASE_BTN, true);
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
+ yield page.click(selectors_1.SELECTORS.PURCHASE_CONFIRM_BTN, true);
131
121
  yield page.wait(1000);
132
122
  // game result
133
123
  this.logger.debug('[purchase]', 'print result');
@@ -14,7 +14,6 @@ export class PuppeteerPage {
14
14
  constructor(page, logger) {
15
15
  this.page = page;
16
16
  this.logger = logger;
17
- this.page = page;
18
17
  }
19
18
  url() {
20
19
  return __awaiter(this, void 0, void 0, function* () {
@@ -31,13 +30,12 @@ export class PuppeteerPage {
31
30
  yield this.page.type(selector, value.toString());
32
31
  });
33
32
  }
34
- click(selector, useWaitForSelector = false) {
35
- var _a;
33
+ click(selector, domDirect = false) {
36
34
  return __awaiter(this, void 0, void 0, function* () {
37
- if (useWaitForSelector) {
38
- const handle = yield this.page.waitForSelector(selector, { timeout: 15000 });
39
- (_a = this.logger) === null || _a === void 0 ? void 0 : _a.debug('[PuppeteerPage]', '[click]', 'handle', handle);
40
- handle === null || handle === void 0 ? void 0 : handle.click();
35
+ if (domDirect) {
36
+ // @ts-ignore
37
+ yield this.page.evaluate(s => document.querySelector(s).click(), selector);
38
+ yield this.wait(250);
41
39
  }
42
40
  else {
43
41
  yield this.page.click(selector);
@@ -109,19 +109,9 @@ export class LottoService {
109
109
  yield page.click(SELECTORS.PURCHASE_AMOUNT_CONFIRM_BTN);
110
110
  // click purchase button
111
111
  this.logger.debug('[purchase]', 'click purchase button');
112
- yield page.click(SELECTORS.PURCHASE_BTN);
112
+ yield page.click(SELECTORS.PURCHASE_BTN, true);
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
+ yield page.click(SELECTORS.PURCHASE_CONFIRM_BTN, true);
125
115
  yield page.wait(1000);
126
116
  // game result
127
117
  this.logger.debug('[purchase]', 'print result');
@@ -3,12 +3,12 @@ import { Page } from 'puppeteer';
3
3
  import type { LoggerInterface } from '../../logger';
4
4
  export declare class PuppeteerPage implements BrowserPageInterface {
5
5
  page: Page;
6
- logger?: LoggerInterface | undefined;
7
- constructor(page: Page, logger?: LoggerInterface | undefined);
6
+ logger?: LoggerInterface;
7
+ constructor(page: Page, logger?: LoggerInterface);
8
8
  url(): Promise<string>;
9
9
  goto(url: string): Promise<void>;
10
10
  fill(selector: string, value: string | number): Promise<void>;
11
- click(selector: string, useWaitForSelector?: boolean): Promise<void>;
11
+ click(selector: string, domDirect?: boolean): Promise<void>;
12
12
  select(selector: string, value: string): Promise<void>;
13
13
  querySelectorAll<T>(selector: string, callback: (elems: FakeDOMElement[]) => T): Promise<T>;
14
14
  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, useWaitForSelector?: boolean): Promise<void>;
33
+ click(selector: string, domDirect?: 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>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rich-automation/lotto",
3
- "version": "0.1.3",
3
+ "version": "0.1.4",
4
4
  "description": "Lotto module",
5
5
  "publishConfig": {
6
6
  "access": "public",