@tomerh2001/israeli-bank-scrapers 6.3.11
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/LICENSE +21 -0
- package/README.md +425 -0
- package/lib/assertNever.d.ts +1 -0
- package/lib/assertNever.js +10 -0
- package/lib/constants.d.ts +10 -0
- package/lib/constants.js +17 -0
- package/lib/definitions.d.ts +105 -0
- package/lib/definitions.js +116 -0
- package/lib/helpers/browser.d.ts +10 -0
- package/lib/helpers/browser.js +21 -0
- package/lib/helpers/dates.d.ts +2 -0
- package/lib/helpers/dates.js +22 -0
- package/lib/helpers/debug.d.ts +2 -0
- package/lib/helpers/debug.js +12 -0
- package/lib/helpers/elements-interactions.d.ts +17 -0
- package/lib/helpers/elements-interactions.js +111 -0
- package/lib/helpers/fetch.d.ts +6 -0
- package/lib/helpers/fetch.js +111 -0
- package/lib/helpers/navigation.d.ts +6 -0
- package/lib/helpers/navigation.js +39 -0
- package/lib/helpers/storage.d.ts +2 -0
- package/lib/helpers/storage.js +14 -0
- package/lib/helpers/transactions.d.ts +5 -0
- package/lib/helpers/transactions.js +47 -0
- package/lib/helpers/waiting.d.ts +13 -0
- package/lib/helpers/waiting.js +58 -0
- package/lib/index.d.ts +7 -0
- package/lib/index.js +85 -0
- package/lib/scrapers/amex.d.ts +6 -0
- package/lib/scrapers/amex.js +17 -0
- package/lib/scrapers/amex.test.d.ts +1 -0
- package/lib/scrapers/amex.test.js +49 -0
- package/lib/scrapers/base-beinleumi-group.d.ts +66 -0
- package/lib/scrapers/base-beinleumi-group.js +428 -0
- package/lib/scrapers/base-isracard-amex.d.ts +23 -0
- package/lib/scrapers/base-isracard-amex.js +324 -0
- package/lib/scrapers/base-scraper-with-browser.d.ts +57 -0
- package/lib/scrapers/base-scraper-with-browser.js +291 -0
- package/lib/scrapers/base-scraper-with-browser.test.d.ts +1 -0
- package/lib/scrapers/base-scraper-with-browser.test.js +53 -0
- package/lib/scrapers/base-scraper.d.ts +19 -0
- package/lib/scrapers/base-scraper.js +91 -0
- package/lib/scrapers/behatsdaa.d.ts +11 -0
- package/lib/scrapers/behatsdaa.js +113 -0
- package/lib/scrapers/behatsdaa.test.d.ts +1 -0
- package/lib/scrapers/behatsdaa.test.js +46 -0
- package/lib/scrapers/beinleumi.d.ts +7 -0
- package/lib/scrapers/beinleumi.js +15 -0
- package/lib/scrapers/beinleumi.test.d.ts +1 -0
- package/lib/scrapers/beinleumi.test.js +47 -0
- package/lib/scrapers/beyahad-bishvilha.d.ts +30 -0
- package/lib/scrapers/beyahad-bishvilha.js +149 -0
- package/lib/scrapers/beyahad-bishvilha.test.d.ts +1 -0
- package/lib/scrapers/beyahad-bishvilha.test.js +47 -0
- package/lib/scrapers/discount.d.ts +22 -0
- package/lib/scrapers/discount.js +120 -0
- package/lib/scrapers/discount.test.d.ts +1 -0
- package/lib/scrapers/discount.test.js +49 -0
- package/lib/scrapers/errors.d.ts +16 -0
- package/lib/scrapers/errors.js +32 -0
- package/lib/scrapers/factory.d.ts +2 -0
- package/lib/scrapers/factory.js +70 -0
- package/lib/scrapers/factory.test.d.ts +1 -0
- package/lib/scrapers/factory.test.js +19 -0
- package/lib/scrapers/hapoalim.d.ts +24 -0
- package/lib/scrapers/hapoalim.js +198 -0
- package/lib/scrapers/hapoalim.test.d.ts +1 -0
- package/lib/scrapers/hapoalim.test.js +47 -0
- package/lib/scrapers/interface.d.ts +186 -0
- package/lib/scrapers/interface.js +6 -0
- package/lib/scrapers/isracard.d.ts +6 -0
- package/lib/scrapers/isracard.js +17 -0
- package/lib/scrapers/isracard.test.d.ts +1 -0
- package/lib/scrapers/isracard.test.js +49 -0
- package/lib/scrapers/leumi.d.ts +21 -0
- package/lib/scrapers/leumi.js +200 -0
- package/lib/scrapers/leumi.test.d.ts +1 -0
- package/lib/scrapers/leumi.test.js +47 -0
- package/lib/scrapers/massad.d.ts +7 -0
- package/lib/scrapers/massad.js +15 -0
- package/lib/scrapers/max.d.ts +37 -0
- package/lib/scrapers/max.js +299 -0
- package/lib/scrapers/max.test.d.ts +1 -0
- package/lib/scrapers/max.test.js +64 -0
- package/lib/scrapers/mercantile.d.ts +20 -0
- package/lib/scrapers/mercantile.js +18 -0
- package/lib/scrapers/mercantile.test.d.ts +1 -0
- package/lib/scrapers/mercantile.test.js +45 -0
- package/lib/scrapers/mizrahi.d.ts +35 -0
- package/lib/scrapers/mizrahi.js +265 -0
- package/lib/scrapers/mizrahi.test.d.ts +1 -0
- package/lib/scrapers/mizrahi.test.js +56 -0
- package/lib/scrapers/one-zero-queries.d.ts +2 -0
- package/lib/scrapers/one-zero-queries.js +560 -0
- package/lib/scrapers/one-zero.d.ts +36 -0
- package/lib/scrapers/one-zero.js +238 -0
- package/lib/scrapers/one-zero.test.d.ts +1 -0
- package/lib/scrapers/one-zero.test.js +51 -0
- package/lib/scrapers/otsar-hahayal.d.ts +7 -0
- package/lib/scrapers/otsar-hahayal.js +15 -0
- package/lib/scrapers/otsar-hahayal.test.d.ts +1 -0
- package/lib/scrapers/otsar-hahayal.test.js +47 -0
- package/lib/scrapers/pagi.d.ts +7 -0
- package/lib/scrapers/pagi.js +15 -0
- package/lib/scrapers/pagi.test.d.ts +1 -0
- package/lib/scrapers/pagi.test.js +47 -0
- package/lib/scrapers/union-bank.d.ts +23 -0
- package/lib/scrapers/union-bank.js +242 -0
- package/lib/scrapers/union-bank.test.d.ts +1 -0
- package/lib/scrapers/union-bank.test.js +47 -0
- package/lib/scrapers/visa-cal.d.ts +20 -0
- package/lib/scrapers/visa-cal.js +318 -0
- package/lib/scrapers/visa-cal.test.d.ts +1 -0
- package/lib/scrapers/visa-cal.test.js +49 -0
- package/lib/scrapers/yahav.d.ts +25 -0
- package/lib/scrapers/yahav.js +247 -0
- package/lib/scrapers/yahav.test.d.ts +1 -0
- package/lib/scrapers/yahav.test.js +49 -0
- package/lib/transactions.d.ts +47 -0
- package/lib/transactions.js +17 -0
- package/package.json +91 -0
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.ScraperProgressTypes = exports.SCRAPERS = exports.PASSWORD_FIELD = exports.CompanyTypes = void 0;
|
|
7
|
+
// NOTICE: avoid changing exported keys as they are part of the public api
|
|
8
|
+
|
|
9
|
+
const PASSWORD_FIELD = exports.PASSWORD_FIELD = 'password';
|
|
10
|
+
let CompanyTypes = exports.CompanyTypes = /*#__PURE__*/function (CompanyTypes) {
|
|
11
|
+
CompanyTypes["hapoalim"] = "hapoalim";
|
|
12
|
+
CompanyTypes["beinleumi"] = "beinleumi";
|
|
13
|
+
CompanyTypes["union"] = "union";
|
|
14
|
+
CompanyTypes["amex"] = "amex";
|
|
15
|
+
CompanyTypes["isracard"] = "isracard";
|
|
16
|
+
CompanyTypes["visaCal"] = "visaCal";
|
|
17
|
+
CompanyTypes["max"] = "max";
|
|
18
|
+
CompanyTypes["otsarHahayal"] = "otsarHahayal";
|
|
19
|
+
CompanyTypes["discount"] = "discount";
|
|
20
|
+
CompanyTypes["mercantile"] = "mercantile";
|
|
21
|
+
CompanyTypes["mizrahi"] = "mizrahi";
|
|
22
|
+
CompanyTypes["leumi"] = "leumi";
|
|
23
|
+
CompanyTypes["massad"] = "massad";
|
|
24
|
+
CompanyTypes["yahav"] = "yahav";
|
|
25
|
+
CompanyTypes["behatsdaa"] = "behatsdaa";
|
|
26
|
+
CompanyTypes["beyahadBishvilha"] = "beyahadBishvilha";
|
|
27
|
+
CompanyTypes["oneZero"] = "oneZero";
|
|
28
|
+
CompanyTypes["pagi"] = "pagi";
|
|
29
|
+
return CompanyTypes;
|
|
30
|
+
}({});
|
|
31
|
+
const SCRAPERS = exports.SCRAPERS = {
|
|
32
|
+
[CompanyTypes.hapoalim]: {
|
|
33
|
+
name: 'Bank Hapoalim',
|
|
34
|
+
loginFields: ['userCode', PASSWORD_FIELD]
|
|
35
|
+
},
|
|
36
|
+
[CompanyTypes.leumi]: {
|
|
37
|
+
name: 'Bank Leumi',
|
|
38
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
39
|
+
},
|
|
40
|
+
[CompanyTypes.mizrahi]: {
|
|
41
|
+
name: 'Mizrahi Bank',
|
|
42
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
43
|
+
},
|
|
44
|
+
[CompanyTypes.discount]: {
|
|
45
|
+
name: 'Discount Bank',
|
|
46
|
+
loginFields: ['id', PASSWORD_FIELD, 'num']
|
|
47
|
+
},
|
|
48
|
+
[CompanyTypes.mercantile]: {
|
|
49
|
+
name: 'Mercantile Bank',
|
|
50
|
+
loginFields: ['id', PASSWORD_FIELD, 'num']
|
|
51
|
+
},
|
|
52
|
+
[CompanyTypes.otsarHahayal]: {
|
|
53
|
+
name: 'Bank Otsar Hahayal',
|
|
54
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
55
|
+
},
|
|
56
|
+
[CompanyTypes.max]: {
|
|
57
|
+
name: 'Max',
|
|
58
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
59
|
+
},
|
|
60
|
+
[CompanyTypes.visaCal]: {
|
|
61
|
+
name: 'Visa Cal',
|
|
62
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
63
|
+
},
|
|
64
|
+
[CompanyTypes.isracard]: {
|
|
65
|
+
name: 'Isracard',
|
|
66
|
+
loginFields: ['id', 'card6Digits', PASSWORD_FIELD]
|
|
67
|
+
},
|
|
68
|
+
[CompanyTypes.amex]: {
|
|
69
|
+
name: 'Amex',
|
|
70
|
+
loginFields: ['id', 'card6Digits', PASSWORD_FIELD]
|
|
71
|
+
},
|
|
72
|
+
[CompanyTypes.union]: {
|
|
73
|
+
name: 'Union',
|
|
74
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
75
|
+
},
|
|
76
|
+
[CompanyTypes.beinleumi]: {
|
|
77
|
+
name: 'Beinleumi',
|
|
78
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
79
|
+
},
|
|
80
|
+
[CompanyTypes.massad]: {
|
|
81
|
+
name: 'Massad',
|
|
82
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
83
|
+
},
|
|
84
|
+
[CompanyTypes.yahav]: {
|
|
85
|
+
name: 'Bank Yahav',
|
|
86
|
+
loginFields: ['username', 'nationalID', PASSWORD_FIELD]
|
|
87
|
+
},
|
|
88
|
+
[CompanyTypes.beyahadBishvilha]: {
|
|
89
|
+
name: 'Beyahad Bishvilha',
|
|
90
|
+
loginFields: ['id', PASSWORD_FIELD]
|
|
91
|
+
},
|
|
92
|
+
[CompanyTypes.oneZero]: {
|
|
93
|
+
name: 'One Zero',
|
|
94
|
+
loginFields: ['email', PASSWORD_FIELD, 'otpCodeRetriever', 'phoneNumber', 'otpLongTermToken']
|
|
95
|
+
},
|
|
96
|
+
[CompanyTypes.behatsdaa]: {
|
|
97
|
+
name: 'Behatsdaa',
|
|
98
|
+
loginFields: ['id', PASSWORD_FIELD]
|
|
99
|
+
},
|
|
100
|
+
[CompanyTypes.pagi]: {
|
|
101
|
+
name: 'Pagi',
|
|
102
|
+
loginFields: ['username', PASSWORD_FIELD]
|
|
103
|
+
}
|
|
104
|
+
};
|
|
105
|
+
let ScraperProgressTypes = exports.ScraperProgressTypes = /*#__PURE__*/function (ScraperProgressTypes) {
|
|
106
|
+
ScraperProgressTypes["Initializing"] = "INITIALIZING";
|
|
107
|
+
ScraperProgressTypes["StartScraping"] = "START_SCRAPING";
|
|
108
|
+
ScraperProgressTypes["LoggingIn"] = "LOGGING_IN";
|
|
109
|
+
ScraperProgressTypes["LoginSuccess"] = "LOGIN_SUCCESS";
|
|
110
|
+
ScraperProgressTypes["LoginFailed"] = "LOGIN_FAILED";
|
|
111
|
+
ScraperProgressTypes["ChangePassword"] = "CHANGE_PASSWORD";
|
|
112
|
+
ScraperProgressTypes["EndScraping"] = "END_SCRAPING";
|
|
113
|
+
ScraperProgressTypes["Terminating"] = "TERMINATING";
|
|
114
|
+
return ScraperProgressTypes;
|
|
115
|
+
}({});
|
|
116
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJQQVNTV09SRF9GSUVMRCIsImV4cG9ydHMiLCJDb21wYW55VHlwZXMiLCJTQ1JBUEVSUyIsImhhcG9hbGltIiwibmFtZSIsImxvZ2luRmllbGRzIiwibGV1bWkiLCJtaXpyYWhpIiwiZGlzY291bnQiLCJtZXJjYW50aWxlIiwib3RzYXJIYWhheWFsIiwibWF4IiwidmlzYUNhbCIsImlzcmFjYXJkIiwiYW1leCIsInVuaW9uIiwiYmVpbmxldW1pIiwibWFzc2FkIiwieWFoYXYiLCJiZXlhaGFkQmlzaHZpbGhhIiwib25lWmVybyIsImJlaGF0c2RhYSIsInBhZ2kiLCJTY3JhcGVyUHJvZ3Jlc3NUeXBlcyJdLCJzb3VyY2VzIjpbIi4uL3NyYy9kZWZpbml0aW9ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBOT1RJQ0U6IGF2b2lkIGNoYW5naW5nIGV4cG9ydGVkIGtleXMgYXMgdGhleSBhcmUgcGFydCBvZiB0aGUgcHVibGljIGFwaVxuXG5leHBvcnQgY29uc3QgUEFTU1dPUkRfRklFTEQgPSAncGFzc3dvcmQnO1xuXG5leHBvcnQgZW51bSBDb21wYW55VHlwZXMge1xuICBoYXBvYWxpbSA9ICdoYXBvYWxpbScsXG4gIGJlaW5sZXVtaSA9ICdiZWlubGV1bWknLFxuICB1bmlvbiA9ICd1bmlvbicsXG4gIGFtZXggPSAnYW1leCcsXG4gIGlzcmFjYXJkID0gJ2lzcmFjYXJkJyxcbiAgdmlzYUNhbCA9ICd2aXNhQ2FsJyxcbiAgbWF4ID0gJ21heCcsXG4gIG90c2FySGFoYXlhbCA9ICdvdHNhckhhaGF5YWwnLFxuICBkaXNjb3VudCA9ICdkaXNjb3VudCcsXG4gIG1lcmNhbnRpbGUgPSAnbWVyY2FudGlsZScsXG4gIG1penJhaGkgPSAnbWl6cmFoaScsXG4gIGxldW1pID0gJ2xldW1pJyxcbiAgbWFzc2FkID0gJ21hc3NhZCcsXG4gIHlhaGF2ID0gJ3lhaGF2JyxcbiAgYmVoYXRzZGFhID0gJ2JlaGF0c2RhYScsXG4gIGJleWFoYWRCaXNodmlsaGEgPSAnYmV5YWhhZEJpc2h2aWxoYScsXG4gIG9uZVplcm8gPSAnb25lWmVybycsXG4gIHBhZ2kgPSAncGFnaScsXG59XG5cbmV4cG9ydCBjb25zdCBTQ1JBUEVSUyA9IHtcbiAgW0NvbXBhbnlUeXBlcy5oYXBvYWxpbV06IHtcbiAgICBuYW1lOiAnQmFuayBIYXBvYWxpbScsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlckNvZGUnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMubGV1bWldOiB7XG4gICAgbmFtZTogJ0JhbmsgTGV1bWknLFxuICAgIGxvZ2luRmllbGRzOiBbJ3VzZXJuYW1lJywgUEFTU1dPUkRfRklFTERdLFxuICB9LFxuICBbQ29tcGFueVR5cGVzLm1penJhaGldOiB7XG4gICAgbmFtZTogJ01penJhaGkgQmFuaycsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlcm5hbWUnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMuZGlzY291bnRdOiB7XG4gICAgbmFtZTogJ0Rpc2NvdW50IEJhbmsnLFxuICAgIGxvZ2luRmllbGRzOiBbJ2lkJywgUEFTU1dPUkRfRklFTEQsICdudW0nXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy5tZXJjYW50aWxlXToge1xuICAgIG5hbWU6ICdNZXJjYW50aWxlIEJhbmsnLFxuICAgIGxvZ2luRmllbGRzOiBbJ2lkJywgUEFTU1dPUkRfRklFTEQsICdudW0nXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy5vdHNhckhhaGF5YWxdOiB7XG4gICAgbmFtZTogJ0JhbmsgT3RzYXIgSGFoYXlhbCcsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlcm5hbWUnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMubWF4XToge1xuICAgIG5hbWU6ICdNYXgnLFxuICAgIGxvZ2luRmllbGRzOiBbJ3VzZXJuYW1lJywgUEFTU1dPUkRfRklFTERdLFxuICB9LFxuICBbQ29tcGFueVR5cGVzLnZpc2FDYWxdOiB7XG4gICAgbmFtZTogJ1Zpc2EgQ2FsJyxcbiAgICBsb2dpbkZpZWxkczogWyd1c2VybmFtZScsIFBBU1NXT1JEX0ZJRUxEXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy5pc3JhY2FyZF06IHtcbiAgICBuYW1lOiAnSXNyYWNhcmQnLFxuICAgIGxvZ2luRmllbGRzOiBbJ2lkJywgJ2NhcmQ2RGlnaXRzJywgUEFTU1dPUkRfRklFTERdLFxuICB9LFxuICBbQ29tcGFueVR5cGVzLmFtZXhdOiB7XG4gICAgbmFtZTogJ0FtZXgnLFxuICAgIGxvZ2luRmllbGRzOiBbJ2lkJywgJ2NhcmQ2RGlnaXRzJywgUEFTU1dPUkRfRklFTERdLFxuICB9LFxuICBbQ29tcGFueVR5cGVzLnVuaW9uXToge1xuICAgIG5hbWU6ICdVbmlvbicsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlcm5hbWUnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMuYmVpbmxldW1pXToge1xuICAgIG5hbWU6ICdCZWlubGV1bWknLFxuICAgIGxvZ2luRmllbGRzOiBbJ3VzZXJuYW1lJywgUEFTU1dPUkRfRklFTERdLFxuICB9LFxuICBbQ29tcGFueVR5cGVzLm1hc3NhZF06IHtcbiAgICBuYW1lOiAnTWFzc2FkJyxcbiAgICBsb2dpbkZpZWxkczogWyd1c2VybmFtZScsIFBBU1NXT1JEX0ZJRUxEXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy55YWhhdl06IHtcbiAgICBuYW1lOiAnQmFuayBZYWhhdicsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlcm5hbWUnLCAnbmF0aW9uYWxJRCcsIFBBU1NXT1JEX0ZJRUxEXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy5iZXlhaGFkQmlzaHZpbGhhXToge1xuICAgIG5hbWU6ICdCZXlhaGFkIEJpc2h2aWxoYScsXG4gICAgbG9naW5GaWVsZHM6IFsnaWQnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMub25lWmVyb106IHtcbiAgICBuYW1lOiAnT25lIFplcm8nLFxuICAgIGxvZ2luRmllbGRzOiBbJ2VtYWlsJywgUEFTU1dPUkRfRklFTEQsICdvdHBDb2RlUmV0cmlldmVyJywgJ3Bob25lTnVtYmVyJywgJ290cExvbmdUZXJtVG9rZW4nXSxcbiAgfSxcbiAgW0NvbXBhbnlUeXBlcy5iZWhhdHNkYWFdOiB7XG4gICAgbmFtZTogJ0JlaGF0c2RhYScsXG4gICAgbG9naW5GaWVsZHM6IFsnaWQnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG4gIFtDb21wYW55VHlwZXMucGFnaV06IHtcbiAgICBuYW1lOiAnUGFnaScsXG4gICAgbG9naW5GaWVsZHM6IFsndXNlcm5hbWUnLCBQQVNTV09SRF9GSUVMRF0sXG4gIH0sXG59O1xuXG5leHBvcnQgZW51bSBTY3JhcGVyUHJvZ3Jlc3NUeXBlcyB7XG4gIEluaXRpYWxpemluZyA9ICdJTklUSUFMSVpJTkcnLFxuICBTdGFydFNjcmFwaW5nID0gJ1NUQVJUX1NDUkFQSU5HJyxcbiAgTG9nZ2luZ0luID0gJ0xPR0dJTkdfSU4nLFxuICBMb2dpblN1Y2Nlc3MgPSAnTE9HSU5fU1VDQ0VTUycsXG4gIExvZ2luRmFpbGVkID0gJ0xPR0lOX0ZBSUxFRCcsXG4gIENoYW5nZVBhc3N3b3JkID0gJ0NIQU5HRV9QQVNTV09SRCcsXG4gIEVuZFNjcmFwaW5nID0gJ0VORF9TQ1JBUElORycsXG4gIFRlcm1pbmF0aW5nID0gJ1RFUk1JTkFUSU5HJyxcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBQUE7O0FBRU8sTUFBTUEsY0FBYyxHQUFBQyxPQUFBLENBQUFELGNBQUEsR0FBRyxVQUFVO0FBQUMsSUFFN0JFLFlBQVksR0FBQUQsT0FBQSxDQUFBQyxZQUFBLDBCQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQVpBLFlBQVk7RUFBWkEsWUFBWTtFQUFaQSxZQUFZO0VBQUEsT0FBWkEsWUFBWTtBQUFBO0FBcUJqQixNQUFNQyxRQUFRLEdBQUFGLE9BQUEsQ0FBQUUsUUFBQSxHQUFHO0VBQ3RCLENBQUNELFlBQVksQ0FBQ0UsUUFBUSxHQUFHO0lBQ3ZCQyxJQUFJLEVBQUUsZUFBZTtJQUNyQkMsV0FBVyxFQUFFLENBQUMsVUFBVSxFQUFFTixjQUFjO0VBQzFDLENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNLLEtBQUssR0FBRztJQUNwQkYsSUFBSSxFQUFFLFlBQVk7SUFDbEJDLFdBQVcsRUFBRSxDQUFDLFVBQVUsRUFBRU4sY0FBYztFQUMxQyxDQUFDO0VBQ0QsQ0FBQ0UsWUFBWSxDQUFDTSxPQUFPLEdBQUc7SUFDdEJILElBQUksRUFBRSxjQUFjO0lBQ3BCQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLEVBQUVOLGNBQWM7RUFDMUMsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ08sUUFBUSxHQUFHO0lBQ3ZCSixJQUFJLEVBQUUsZUFBZTtJQUNyQkMsV0FBVyxFQUFFLENBQUMsSUFBSSxFQUFFTixjQUFjLEVBQUUsS0FBSztFQUMzQyxDQUFDO0VBQ0QsQ0FBQ0UsWUFBWSxDQUFDUSxVQUFVLEdBQUc7SUFDekJMLElBQUksRUFBRSxpQkFBaUI7SUFDdkJDLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRU4sY0FBYyxFQUFFLEtBQUs7RUFDM0MsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ1MsWUFBWSxHQUFHO0lBQzNCTixJQUFJLEVBQUUsb0JBQW9CO0lBQzFCQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLEVBQUVOLGNBQWM7RUFDMUMsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ1UsR0FBRyxHQUFHO0lBQ2xCUCxJQUFJLEVBQUUsS0FBSztJQUNYQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLEVBQUVOLGNBQWM7RUFDMUMsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ1csT0FBTyxHQUFHO0lBQ3RCUixJQUFJLEVBQUUsVUFBVTtJQUNoQkMsV0FBVyxFQUFFLENBQUMsVUFBVSxFQUFFTixjQUFjO0VBQzFDLENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNZLFFBQVEsR0FBRztJQUN2QlQsSUFBSSxFQUFFLFVBQVU7SUFDaEJDLFdBQVcsRUFBRSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUVOLGNBQWM7RUFDbkQsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ2EsSUFBSSxHQUFHO0lBQ25CVixJQUFJLEVBQUUsTUFBTTtJQUNaQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUUsYUFBYSxFQUFFTixjQUFjO0VBQ25ELENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNjLEtBQUssR0FBRztJQUNwQlgsSUFBSSxFQUFFLE9BQU87SUFDYkMsV0FBVyxFQUFFLENBQUMsVUFBVSxFQUFFTixjQUFjO0VBQzFDLENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNlLFNBQVMsR0FBRztJQUN4QlosSUFBSSxFQUFFLFdBQVc7SUFDakJDLFdBQVcsRUFBRSxDQUFDLFVBQVUsRUFBRU4sY0FBYztFQUMxQyxDQUFDO0VBQ0QsQ0FBQ0UsWUFBWSxDQUFDZ0IsTUFBTSxHQUFHO0lBQ3JCYixJQUFJLEVBQUUsUUFBUTtJQUNkQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLEVBQUVOLGNBQWM7RUFDMUMsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ2lCLEtBQUssR0FBRztJQUNwQmQsSUFBSSxFQUFFLFlBQVk7SUFDbEJDLFdBQVcsRUFBRSxDQUFDLFVBQVUsRUFBRSxZQUFZLEVBQUVOLGNBQWM7RUFDeEQsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ2tCLGdCQUFnQixHQUFHO0lBQy9CZixJQUFJLEVBQUUsbUJBQW1CO0lBQ3pCQyxXQUFXLEVBQUUsQ0FBQyxJQUFJLEVBQUVOLGNBQWM7RUFDcEMsQ0FBQztFQUNELENBQUNFLFlBQVksQ0FBQ21CLE9BQU8sR0FBRztJQUN0QmhCLElBQUksRUFBRSxVQUFVO0lBQ2hCQyxXQUFXLEVBQUUsQ0FBQyxPQUFPLEVBQUVOLGNBQWMsRUFBRSxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsa0JBQWtCO0VBQzlGLENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNvQixTQUFTLEdBQUc7SUFDeEJqQixJQUFJLEVBQUUsV0FBVztJQUNqQkMsV0FBVyxFQUFFLENBQUMsSUFBSSxFQUFFTixjQUFjO0VBQ3BDLENBQUM7RUFDRCxDQUFDRSxZQUFZLENBQUNxQixJQUFJLEdBQUc7SUFDbkJsQixJQUFJLEVBQUUsTUFBTTtJQUNaQyxXQUFXLEVBQUUsQ0FBQyxVQUFVLEVBQUVOLGNBQWM7RUFDMUM7QUFDRixDQUFDO0FBQUMsSUFFVXdCLG9CQUFvQixHQUFBdkIsT0FBQSxDQUFBdUIsb0JBQUEsMEJBQXBCQSxvQkFBb0I7RUFBcEJBLG9CQUFvQjtFQUFwQkEsb0JBQW9CO0VBQXBCQSxvQkFBb0I7RUFBcEJBLG9CQUFvQjtFQUFwQkEsb0JBQW9CO0VBQXBCQSxvQkFBb0I7RUFBcEJBLG9CQUFvQjtFQUFwQkEsb0JBQW9CO0VBQUEsT0FBcEJBLG9CQUFvQjtBQUFBIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { type Page } from 'puppeteer';
|
|
2
|
+
export declare function maskHeadlessUserAgent(page: Page): Promise<void>;
|
|
3
|
+
/**
|
|
4
|
+
* Priorities for request interception. The higher the number, the higher the priority.
|
|
5
|
+
* We want to let others to have the ability to override our interception logic therefore we hardcode them.
|
|
6
|
+
*/
|
|
7
|
+
export declare const interceptionPriorities: {
|
|
8
|
+
abort: number;
|
|
9
|
+
continue: number;
|
|
10
|
+
};
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.interceptionPriorities = void 0;
|
|
7
|
+
exports.maskHeadlessUserAgent = maskHeadlessUserAgent;
|
|
8
|
+
async function maskHeadlessUserAgent(page) {
|
|
9
|
+
const userAgent = await page.evaluate(() => navigator.userAgent);
|
|
10
|
+
await page.setUserAgent(userAgent.replace('HeadlessChrome/', 'Chrome/'));
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Priorities for request interception. The higher the number, the higher the priority.
|
|
15
|
+
* We want to let others to have the ability to override our interception logic therefore we hardcode them.
|
|
16
|
+
*/
|
|
17
|
+
const interceptionPriorities = exports.interceptionPriorities = {
|
|
18
|
+
abort: 1000,
|
|
19
|
+
continue: 10
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJtYXNrSGVhZGxlc3NVc2VyQWdlbnQiLCJwYWdlIiwidXNlckFnZW50IiwiZXZhbHVhdGUiLCJuYXZpZ2F0b3IiLCJzZXRVc2VyQWdlbnQiLCJyZXBsYWNlIiwiaW50ZXJjZXB0aW9uUHJpb3JpdGllcyIsImV4cG9ydHMiLCJhYm9ydCIsImNvbnRpbnVlIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvYnJvd3Nlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIFBhZ2UgfSBmcm9tICdwdXBwZXRlZXInO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gbWFza0hlYWRsZXNzVXNlckFnZW50KHBhZ2U6IFBhZ2UpOiBQcm9taXNlPHZvaWQ+IHtcbiAgY29uc3QgdXNlckFnZW50ID0gYXdhaXQgcGFnZS5ldmFsdWF0ZSgoKSA9PiBuYXZpZ2F0b3IudXNlckFnZW50KTtcbiAgYXdhaXQgcGFnZS5zZXRVc2VyQWdlbnQodXNlckFnZW50LnJlcGxhY2UoJ0hlYWRsZXNzQ2hyb21lLycsICdDaHJvbWUvJykpO1xufVxuXG4vKipcbiAqIFByaW9yaXRpZXMgZm9yIHJlcXVlc3QgaW50ZXJjZXB0aW9uLiBUaGUgaGlnaGVyIHRoZSBudW1iZXIsIHRoZSBoaWdoZXIgdGhlIHByaW9yaXR5LlxuICogV2Ugd2FudCB0byBsZXQgb3RoZXJzIHRvIGhhdmUgdGhlIGFiaWxpdHkgdG8gb3ZlcnJpZGUgb3VyIGludGVyY2VwdGlvbiBsb2dpYyB0aGVyZWZvcmUgd2UgaGFyZGNvZGUgdGhlbS5cbiAqL1xuZXhwb3J0IGNvbnN0IGludGVyY2VwdGlvblByaW9yaXRpZXMgPSB7XG4gIGFib3J0OiAxMDAwLFxuICBjb250aW51ZTogMTAsXG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBRU8sZUFBZUEscUJBQXFCQSxDQUFDQyxJQUFVLEVBQWlCO0VBQ3JFLE1BQU1DLFNBQVMsR0FBRyxNQUFNRCxJQUFJLENBQUNFLFFBQVEsQ0FBQyxNQUFNQyxTQUFTLENBQUNGLFNBQVMsQ0FBQztFQUNoRSxNQUFNRCxJQUFJLENBQUNJLFlBQVksQ0FBQ0gsU0FBUyxDQUFDSSxPQUFPLENBQUMsaUJBQWlCLEVBQUUsU0FBUyxDQUFDLENBQUM7QUFDMUU7O0FBRUE7QUFDQTtBQUNBO0FBQ0E7QUFDTyxNQUFNQyxzQkFBc0IsR0FBQUMsT0FBQSxDQUFBRCxzQkFBQSxHQUFHO0VBQ3BDRSxLQUFLLEVBQUUsSUFBSTtFQUNYQyxRQUFRLEVBQUU7QUFDWixDQUFDIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = getAllMonthMoments;
|
|
7
|
+
var _moment = _interopRequireDefault(require("moment"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
function getAllMonthMoments(startMoment, futureMonths) {
|
|
10
|
+
let monthMoment = (0, _moment.default)(startMoment).startOf('month');
|
|
11
|
+
const allMonths = [];
|
|
12
|
+
let lastMonth = (0, _moment.default)().startOf('month');
|
|
13
|
+
if (futureMonths && futureMonths > 0) {
|
|
14
|
+
lastMonth = lastMonth.add(futureMonths, 'month');
|
|
15
|
+
}
|
|
16
|
+
while (monthMoment.isSameOrBefore(lastMonth)) {
|
|
17
|
+
allMonths.push(monthMoment);
|
|
18
|
+
monthMoment = (0, _moment.default)(monthMoment).add(1, 'month');
|
|
19
|
+
}
|
|
20
|
+
return allMonths;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbW9tZW50IiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJnZXRBbGxNb250aE1vbWVudHMiLCJzdGFydE1vbWVudCIsImZ1dHVyZU1vbnRocyIsIm1vbnRoTW9tZW50IiwibW9tZW50Iiwic3RhcnRPZiIsImFsbE1vbnRocyIsImxhc3RNb250aCIsImFkZCIsImlzU2FtZU9yQmVmb3JlIiwicHVzaCJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL2RhdGVzLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBtb21lbnQsIHsgdHlwZSBNb21lbnQgfSBmcm9tICdtb21lbnQnO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBnZXRBbGxNb250aE1vbWVudHMoc3RhcnRNb21lbnQ6IE1vbWVudCB8IHN0cmluZywgZnV0dXJlTW9udGhzPzogbnVtYmVyKSB7XG4gIGxldCBtb250aE1vbWVudCA9IG1vbWVudChzdGFydE1vbWVudCkuc3RhcnRPZignbW9udGgnKTtcblxuICBjb25zdCBhbGxNb250aHM6IE1vbWVudFtdID0gW107XG4gIGxldCBsYXN0TW9udGggPSBtb21lbnQoKS5zdGFydE9mKCdtb250aCcpO1xuICBpZiAoZnV0dXJlTW9udGhzICYmIGZ1dHVyZU1vbnRocyA+IDApIHtcbiAgICBsYXN0TW9udGggPSBsYXN0TW9udGguYWRkKGZ1dHVyZU1vbnRocywgJ21vbnRoJyk7XG4gIH1cbiAgd2hpbGUgKG1vbnRoTW9tZW50LmlzU2FtZU9yQmVmb3JlKGxhc3RNb250aCkpIHtcbiAgICBhbGxNb250aHMucHVzaChtb250aE1vbWVudCk7XG4gICAgbW9udGhNb21lbnQgPSBtb21lbnQobW9udGhNb21lbnQpLmFkZCgxLCAnbW9udGgnKTtcbiAgfVxuXG4gIHJldHVybiBhbGxNb250aHM7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE9BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUE2QyxTQUFBRCx1QkFBQUUsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUU5QixTQUFTRyxrQkFBa0JBLENBQUNDLFdBQTRCLEVBQUVDLFlBQXFCLEVBQUU7RUFDOUYsSUFBSUMsV0FBVyxHQUFHLElBQUFDLGVBQU0sRUFBQ0gsV0FBVyxDQUFDLENBQUNJLE9BQU8sQ0FBQyxPQUFPLENBQUM7RUFFdEQsTUFBTUMsU0FBbUIsR0FBRyxFQUFFO0VBQzlCLElBQUlDLFNBQVMsR0FBRyxJQUFBSCxlQUFNLEVBQUMsQ0FBQyxDQUFDQyxPQUFPLENBQUMsT0FBTyxDQUFDO0VBQ3pDLElBQUlILFlBQVksSUFBSUEsWUFBWSxHQUFHLENBQUMsRUFBRTtJQUNwQ0ssU0FBUyxHQUFHQSxTQUFTLENBQUNDLEdBQUcsQ0FBQ04sWUFBWSxFQUFFLE9BQU8sQ0FBQztFQUNsRDtFQUNBLE9BQU9DLFdBQVcsQ0FBQ00sY0FBYyxDQUFDRixTQUFTLENBQUMsRUFBRTtJQUM1Q0QsU0FBUyxDQUFDSSxJQUFJLENBQUNQLFdBQVcsQ0FBQztJQUMzQkEsV0FBVyxHQUFHLElBQUFDLGVBQU0sRUFBQ0QsV0FBVyxDQUFDLENBQUNLLEdBQUcsQ0FBQyxDQUFDLEVBQUUsT0FBTyxDQUFDO0VBQ25EO0VBRUEsT0FBT0YsU0FBUztBQUNsQiIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getDebug = getDebug;
|
|
7
|
+
var _debug = _interopRequireDefault(require("debug"));
|
|
8
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
9
|
+
function getDebug(name) {
|
|
10
|
+
return (0, _debug.default)(`israeli-bank-scrapers:${name}`);
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVidWciLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsImUiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImdldERlYnVnIiwibmFtZSIsImRlYnVnIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZGVidWcudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IGRlYnVnIGZyb20gJ2RlYnVnJztcblxuZXhwb3J0IGZ1bmN0aW9uIGdldERlYnVnKG5hbWU6IHN0cmluZykge1xuICByZXR1cm4gZGVidWcoYGlzcmFlbGktYmFuay1zY3JhcGVyczoke25hbWV9YCk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUEwQixTQUFBRCx1QkFBQUUsQ0FBQSxXQUFBQSxDQUFBLElBQUFBLENBQUEsQ0FBQUMsVUFBQSxHQUFBRCxDQUFBLEtBQUFFLE9BQUEsRUFBQUYsQ0FBQTtBQUVuQixTQUFTRyxRQUFRQSxDQUFDQyxJQUFZLEVBQUU7RUFDckMsT0FBTyxJQUFBQyxjQUFLLEVBQUMseUJBQXlCRCxJQUFJLEVBQUUsQ0FBQztBQUMvQyIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { type Frame, type Page } from 'puppeteer';
|
|
2
|
+
declare function waitUntilElementFound(page: Page | Frame, elementSelector: string, onlyVisible?: boolean, timeout?: number): Promise<void>;
|
|
3
|
+
declare function waitUntilElementDisappear(page: Page, elementSelector: string, timeout?: number): Promise<void>;
|
|
4
|
+
declare function waitUntilIframeFound(page: Page, framePredicate: (frame: Frame) => boolean, description?: string, timeout?: number): Promise<Frame>;
|
|
5
|
+
declare function fillInput(pageOrFrame: Page | Frame, inputSelector: string, inputValue: string): Promise<void>;
|
|
6
|
+
declare function setValue(pageOrFrame: Page | Frame, inputSelector: string, inputValue: string): Promise<void>;
|
|
7
|
+
declare function clickButton(page: Page | Frame, buttonSelector: string): Promise<void>;
|
|
8
|
+
declare function clickLink(page: Page, aSelector: string): Promise<void>;
|
|
9
|
+
declare function pageEvalAll<R>(page: Page | Frame, selector: string, defaultResult: any, callback: (elements: Element[], ...args: any) => R, ...args: any[]): Promise<R>;
|
|
10
|
+
declare function pageEval<R>(pageOrFrame: Page | Frame, selector: string, defaultResult: any, callback: (elements: Element, ...args: any) => R, ...args: any[]): Promise<R>;
|
|
11
|
+
declare function elementPresentOnPage(pageOrFrame: Page | Frame, selector: string): Promise<boolean>;
|
|
12
|
+
declare function dropdownSelect(page: Page, selectSelector: string, value: string): Promise<void>;
|
|
13
|
+
declare function dropdownElements(page: Page, selector: string): Promise<{
|
|
14
|
+
name: string;
|
|
15
|
+
value: string;
|
|
16
|
+
}[]>;
|
|
17
|
+
export { clickButton, clickLink, dropdownElements, dropdownSelect, elementPresentOnPage, fillInput, pageEval, pageEvalAll, setValue, waitUntilElementDisappear, waitUntilElementFound, waitUntilIframeFound, };
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.clickButton = clickButton;
|
|
7
|
+
exports.clickLink = clickLink;
|
|
8
|
+
exports.dropdownElements = dropdownElements;
|
|
9
|
+
exports.dropdownSelect = dropdownSelect;
|
|
10
|
+
exports.elementPresentOnPage = elementPresentOnPage;
|
|
11
|
+
exports.fillInput = fillInput;
|
|
12
|
+
exports.pageEval = pageEval;
|
|
13
|
+
exports.pageEvalAll = pageEvalAll;
|
|
14
|
+
exports.setValue = setValue;
|
|
15
|
+
exports.waitUntilElementDisappear = waitUntilElementDisappear;
|
|
16
|
+
exports.waitUntilElementFound = waitUntilElementFound;
|
|
17
|
+
exports.waitUntilIframeFound = waitUntilIframeFound;
|
|
18
|
+
var _waiting = require("./waiting");
|
|
19
|
+
async function waitUntilElementFound(page, elementSelector, onlyVisible = false, timeout) {
|
|
20
|
+
await page.waitForSelector(elementSelector, {
|
|
21
|
+
visible: onlyVisible,
|
|
22
|
+
timeout
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
async function waitUntilElementDisappear(page, elementSelector, timeout) {
|
|
26
|
+
await page.waitForSelector(elementSelector, {
|
|
27
|
+
hidden: true,
|
|
28
|
+
timeout
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
async function waitUntilIframeFound(page, framePredicate, description = '', timeout = 30000) {
|
|
32
|
+
let frame;
|
|
33
|
+
await (0, _waiting.waitUntil)(() => {
|
|
34
|
+
frame = page.frames().find(framePredicate);
|
|
35
|
+
return Promise.resolve(!!frame);
|
|
36
|
+
}, description, timeout, 1000);
|
|
37
|
+
if (!frame) {
|
|
38
|
+
throw new Error('failed to find iframe');
|
|
39
|
+
}
|
|
40
|
+
return frame;
|
|
41
|
+
}
|
|
42
|
+
async function fillInput(pageOrFrame, inputSelector, inputValue) {
|
|
43
|
+
await pageOrFrame.$eval(inputSelector, input => {
|
|
44
|
+
const inputElement = input;
|
|
45
|
+
// @ts-ignore
|
|
46
|
+
inputElement.value = '';
|
|
47
|
+
});
|
|
48
|
+
await pageOrFrame.type(inputSelector, inputValue);
|
|
49
|
+
}
|
|
50
|
+
async function setValue(pageOrFrame, inputSelector, inputValue) {
|
|
51
|
+
await pageOrFrame.$eval(inputSelector, (input, value) => {
|
|
52
|
+
const inputElement = input;
|
|
53
|
+
// @ts-ignore
|
|
54
|
+
inputElement.value = value;
|
|
55
|
+
}, [inputValue]);
|
|
56
|
+
}
|
|
57
|
+
async function clickButton(page, buttonSelector) {
|
|
58
|
+
await page.$eval(buttonSelector, el => el.click());
|
|
59
|
+
}
|
|
60
|
+
async function clickLink(page, aSelector) {
|
|
61
|
+
await page.$eval(aSelector, el => {
|
|
62
|
+
if (!el || typeof el.click === 'undefined') {
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
el.click();
|
|
66
|
+
});
|
|
67
|
+
}
|
|
68
|
+
async function pageEvalAll(page, selector, defaultResult, callback, ...args) {
|
|
69
|
+
let result = defaultResult;
|
|
70
|
+
try {
|
|
71
|
+
await page.waitForFunction(() => document.readyState === 'complete');
|
|
72
|
+
result = await page.$$eval(selector, callback, ...args);
|
|
73
|
+
} catch (e) {
|
|
74
|
+
// TODO temporary workaround to puppeteer@1.5.0 which breaks $$eval bevahvior until they will release a new version.
|
|
75
|
+
if (!e.message.startsWith('Error: failed to find elements matching selector')) {
|
|
76
|
+
throw e;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
return result;
|
|
80
|
+
}
|
|
81
|
+
async function pageEval(pageOrFrame, selector, defaultResult, callback, ...args) {
|
|
82
|
+
let result = defaultResult;
|
|
83
|
+
try {
|
|
84
|
+
await pageOrFrame.waitForFunction(() => document.readyState === 'complete');
|
|
85
|
+
result = await pageOrFrame.$eval(selector, callback, ...args);
|
|
86
|
+
} catch (e) {
|
|
87
|
+
// TODO temporary workaround to puppeteer@1.5.0 which breaks $$eval bevahvior until they will release a new version.
|
|
88
|
+
if (!e.message.startsWith('Error: failed to find element matching selector')) {
|
|
89
|
+
throw e;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
return result;
|
|
93
|
+
}
|
|
94
|
+
async function elementPresentOnPage(pageOrFrame, selector) {
|
|
95
|
+
return (await pageOrFrame.$(selector)) !== null;
|
|
96
|
+
}
|
|
97
|
+
async function dropdownSelect(page, selectSelector, value) {
|
|
98
|
+
await page.select(selectSelector, value);
|
|
99
|
+
}
|
|
100
|
+
async function dropdownElements(page, selector) {
|
|
101
|
+
const options = await page.evaluate(optionSelector => {
|
|
102
|
+
return Array.from(document.querySelectorAll(optionSelector)).filter(o => o.value).map(o => {
|
|
103
|
+
return {
|
|
104
|
+
name: o.text,
|
|
105
|
+
value: o.value
|
|
106
|
+
};
|
|
107
|
+
});
|
|
108
|
+
}, `${selector} > option`);
|
|
109
|
+
return options;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2FpdGluZyIsInJlcXVpcmUiLCJ3YWl0VW50aWxFbGVtZW50Rm91bmQiLCJwYWdlIiwiZWxlbWVudFNlbGVjdG9yIiwib25seVZpc2libGUiLCJ0aW1lb3V0Iiwid2FpdEZvclNlbGVjdG9yIiwidmlzaWJsZSIsIndhaXRVbnRpbEVsZW1lbnREaXNhcHBlYXIiLCJoaWRkZW4iLCJ3YWl0VW50aWxJZnJhbWVGb3VuZCIsImZyYW1lUHJlZGljYXRlIiwiZGVzY3JpcHRpb24iLCJmcmFtZSIsIndhaXRVbnRpbCIsImZyYW1lcyIsImZpbmQiLCJQcm9taXNlIiwicmVzb2x2ZSIsIkVycm9yIiwiZmlsbElucHV0IiwicGFnZU9yRnJhbWUiLCJpbnB1dFNlbGVjdG9yIiwiaW5wdXRWYWx1ZSIsIiRldmFsIiwiaW5wdXQiLCJpbnB1dEVsZW1lbnQiLCJ2YWx1ZSIsInR5cGUiLCJzZXRWYWx1ZSIsImNsaWNrQnV0dG9uIiwiYnV0dG9uU2VsZWN0b3IiLCJlbCIsImNsaWNrIiwiY2xpY2tMaW5rIiwiYVNlbGVjdG9yIiwicGFnZUV2YWxBbGwiLCJzZWxlY3RvciIsImRlZmF1bHRSZXN1bHQiLCJjYWxsYmFjayIsImFyZ3MiLCJyZXN1bHQiLCJ3YWl0Rm9yRnVuY3Rpb24iLCJkb2N1bWVudCIsInJlYWR5U3RhdGUiLCIkJGV2YWwiLCJlIiwibWVzc2FnZSIsInN0YXJ0c1dpdGgiLCJwYWdlRXZhbCIsImVsZW1lbnRQcmVzZW50T25QYWdlIiwiJCIsImRyb3Bkb3duU2VsZWN0Iiwic2VsZWN0U2VsZWN0b3IiLCJzZWxlY3QiLCJkcm9wZG93bkVsZW1lbnRzIiwib3B0aW9ucyIsImV2YWx1YXRlIiwib3B0aW9uU2VsZWN0b3IiLCJBcnJheSIsImZyb20iLCJxdWVyeVNlbGVjdG9yQWxsIiwiZmlsdGVyIiwibyIsIm1hcCIsIm5hbWUiLCJ0ZXh0Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL2hlbHBlcnMvZWxlbWVudHMtaW50ZXJhY3Rpb25zLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRnJhbWUsIHR5cGUgUGFnZSB9IGZyb20gJ3B1cHBldGVlcic7XG5pbXBvcnQgeyB3YWl0VW50aWwgfSBmcm9tICcuL3dhaXRpbmcnO1xuXG5hc3luYyBmdW5jdGlvbiB3YWl0VW50aWxFbGVtZW50Rm91bmQoXG4gIHBhZ2U6IFBhZ2UgfCBGcmFtZSxcbiAgZWxlbWVudFNlbGVjdG9yOiBzdHJpbmcsXG4gIG9ubHlWaXNpYmxlID0gZmFsc2UsXG4gIHRpbWVvdXQ/OiBudW1iZXIsXG4pIHtcbiAgYXdhaXQgcGFnZS53YWl0Rm9yU2VsZWN0b3IoZWxlbWVudFNlbGVjdG9yLCB7IHZpc2libGU6IG9ubHlWaXNpYmxlLCB0aW1lb3V0IH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiB3YWl0VW50aWxFbGVtZW50RGlzYXBwZWFyKHBhZ2U6IFBhZ2UsIGVsZW1lbnRTZWxlY3Rvcjogc3RyaW5nLCB0aW1lb3V0PzogbnVtYmVyKSB7XG4gIGF3YWl0IHBhZ2Uud2FpdEZvclNlbGVjdG9yKGVsZW1lbnRTZWxlY3RvciwgeyBoaWRkZW46IHRydWUsIHRpbWVvdXQgfSk7XG59XG5cbmFzeW5jIGZ1bmN0aW9uIHdhaXRVbnRpbElmcmFtZUZvdW5kKFxuICBwYWdlOiBQYWdlLFxuICBmcmFtZVByZWRpY2F0ZTogKGZyYW1lOiBGcmFtZSkgPT4gYm9vbGVhbixcbiAgZGVzY3JpcHRpb24gPSAnJyxcbiAgdGltZW91dCA9IDMwMDAwLFxuKSB7XG4gIGxldCBmcmFtZTogRnJhbWUgfCB1bmRlZmluZWQ7XG4gIGF3YWl0IHdhaXRVbnRpbChcbiAgICAoKSA9PiB7XG4gICAgICBmcmFtZSA9IHBhZ2UuZnJhbWVzKCkuZmluZChmcmFtZVByZWRpY2F0ZSk7XG4gICAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCEhZnJhbWUpO1xuICAgIH0sXG4gICAgZGVzY3JpcHRpb24sXG4gICAgdGltZW91dCxcbiAgICAxMDAwLFxuICApO1xuXG4gIGlmICghZnJhbWUpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2ZhaWxlZCB0byBmaW5kIGlmcmFtZScpO1xuICB9XG5cbiAgcmV0dXJuIGZyYW1lO1xufVxuXG5hc3luYyBmdW5jdGlvbiBmaWxsSW5wdXQocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgaW5wdXRTZWxlY3Rvcjogc3RyaW5nLCBpbnB1dFZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgcGFnZU9yRnJhbWUuJGV2YWwoaW5wdXRTZWxlY3RvciwgKGlucHV0OiBFbGVtZW50KSA9PiB7XG4gICAgY29uc3QgaW5wdXRFbGVtZW50ID0gaW5wdXQ7XG4gICAgLy8gQHRzLWlnbm9yZVxuICAgIGlucHV0RWxlbWVudC52YWx1ZSA9ICcnO1xuICB9KTtcbiAgYXdhaXQgcGFnZU9yRnJhbWUudHlwZShpbnB1dFNlbGVjdG9yLCBpbnB1dFZhbHVlKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gc2V0VmFsdWUocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgaW5wdXRTZWxlY3Rvcjogc3RyaW5nLCBpbnB1dFZhbHVlOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgYXdhaXQgcGFnZU9yRnJhbWUuJGV2YWwoXG4gICAgaW5wdXRTZWxlY3RvcixcbiAgICAoaW5wdXQ6IEVsZW1lbnQsIHZhbHVlKSA9PiB7XG4gICAgICBjb25zdCBpbnB1dEVsZW1lbnQgPSBpbnB1dDtcbiAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgIGlucHV0RWxlbWVudC52YWx1ZSA9IHZhbHVlO1xuICAgIH0sXG4gICAgW2lucHV0VmFsdWVdLFxuICApO1xufVxuXG5hc3luYyBmdW5jdGlvbiBjbGlja0J1dHRvbihwYWdlOiBQYWdlIHwgRnJhbWUsIGJ1dHRvblNlbGVjdG9yOiBzdHJpbmcpIHtcbiAgYXdhaXQgcGFnZS4kZXZhbChidXR0b25TZWxlY3RvciwgZWwgPT4gKGVsIGFzIEhUTUxFbGVtZW50KS5jbGljaygpKTtcbn1cblxuYXN5bmMgZnVuY3Rpb24gY2xpY2tMaW5rKHBhZ2U6IFBhZ2UsIGFTZWxlY3Rvcjogc3RyaW5nKSB7XG4gIGF3YWl0IHBhZ2UuJGV2YWwoYVNlbGVjdG9yLCAoZWw6IGFueSkgPT4ge1xuICAgIGlmICghZWwgfHwgdHlwZW9mIGVsLmNsaWNrID09PSAndW5kZWZpbmVkJykge1xuICAgICAgcmV0dXJuO1xuICAgIH1cblxuICAgIGVsLmNsaWNrKCk7XG4gIH0pO1xufVxuXG5hc3luYyBmdW5jdGlvbiBwYWdlRXZhbEFsbDxSPihcbiAgcGFnZTogUGFnZSB8IEZyYW1lLFxuICBzZWxlY3Rvcjogc3RyaW5nLFxuICBkZWZhdWx0UmVzdWx0OiBhbnksXG4gIGNhbGxiYWNrOiAoZWxlbWVudHM6IEVsZW1lbnRbXSwgLi4uYXJnczogYW55KSA9PiBSLFxuICAuLi5hcmdzOiBhbnlbXVxuKTogUHJvbWlzZTxSPiB7XG4gIGxldCByZXN1bHQgPSBkZWZhdWx0UmVzdWx0O1xuICB0cnkge1xuICAgIGF3YWl0IHBhZ2Uud2FpdEZvckZ1bmN0aW9uKCgpID0+IGRvY3VtZW50LnJlYWR5U3RhdGUgPT09ICdjb21wbGV0ZScpO1xuICAgIHJlc3VsdCA9IGF3YWl0IHBhZ2UuJCRldmFsKHNlbGVjdG9yLCBjYWxsYmFjaywgLi4uYXJncyk7XG4gIH0gY2F0Y2ggKGUpIHtcbiAgICAvLyBUT0RPIHRlbXBvcmFyeSB3b3JrYXJvdW5kIHRvIHB1cHBldGVlckAxLjUuMCB3aGljaCBicmVha3MgJCRldmFsIGJldmFodmlvciB1bnRpbCB0aGV5IHdpbGwgcmVsZWFzZSBhIG5ldyB2ZXJzaW9uLlxuICAgIGlmICghKGUgYXMgRXJyb3IpLm1lc3NhZ2Uuc3RhcnRzV2l0aCgnRXJyb3I6IGZhaWxlZCB0byBmaW5kIGVsZW1lbnRzIG1hdGNoaW5nIHNlbGVjdG9yJykpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuYXN5bmMgZnVuY3Rpb24gcGFnZUV2YWw8Uj4oXG4gIHBhZ2VPckZyYW1lOiBQYWdlIHwgRnJhbWUsXG4gIHNlbGVjdG9yOiBzdHJpbmcsXG4gIGRlZmF1bHRSZXN1bHQ6IGFueSxcbiAgY2FsbGJhY2s6IChlbGVtZW50czogRWxlbWVudCwgLi4uYXJnczogYW55KSA9PiBSLFxuICAuLi5hcmdzOiBhbnlbXVxuKTogUHJvbWlzZTxSPiB7XG4gIGxldCByZXN1bHQgPSBkZWZhdWx0UmVzdWx0O1xuICB0cnkge1xuICAgIGF3YWl0IHBhZ2VPckZyYW1lLndhaXRGb3JGdW5jdGlvbigoKSA9PiBkb2N1bWVudC5yZWFkeVN0YXRlID09PSAnY29tcGxldGUnKTtcbiAgICByZXN1bHQgPSBhd2FpdCBwYWdlT3JGcmFtZS4kZXZhbChzZWxlY3RvciwgY2FsbGJhY2ssIC4uLmFyZ3MpO1xuICB9IGNhdGNoIChlKSB7XG4gICAgLy8gVE9ETyB0ZW1wb3Jhcnkgd29ya2Fyb3VuZCB0byBwdXBwZXRlZXJAMS41LjAgd2hpY2ggYnJlYWtzICQkZXZhbCBiZXZhaHZpb3IgdW50aWwgdGhleSB3aWxsIHJlbGVhc2UgYSBuZXcgdmVyc2lvbi5cbiAgICBpZiAoIShlIGFzIEVycm9yKS5tZXNzYWdlLnN0YXJ0c1dpdGgoJ0Vycm9yOiBmYWlsZWQgdG8gZmluZCBlbGVtZW50IG1hdGNoaW5nIHNlbGVjdG9yJykpIHtcbiAgICAgIHRocm93IGU7XG4gICAgfVxuICB9XG5cbiAgcmV0dXJuIHJlc3VsdDtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZWxlbWVudFByZXNlbnRPblBhZ2UocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgc2VsZWN0b3I6IHN0cmluZykge1xuICByZXR1cm4gKGF3YWl0IHBhZ2VPckZyYW1lLiQoc2VsZWN0b3IpKSAhPT0gbnVsbDtcbn1cblxuYXN5bmMgZnVuY3Rpb24gZHJvcGRvd25TZWxlY3QocGFnZTogUGFnZSwgc2VsZWN0U2VsZWN0b3I6IHN0cmluZywgdmFsdWU6IHN0cmluZykge1xuICBhd2FpdCBwYWdlLnNlbGVjdChzZWxlY3RTZWxlY3RvciwgdmFsdWUpO1xufVxuXG5hc3luYyBmdW5jdGlvbiBkcm9wZG93bkVsZW1lbnRzKHBhZ2U6IFBhZ2UsIHNlbGVjdG9yOiBzdHJpbmcpIHtcbiAgY29uc3Qgb3B0aW9ucyA9IGF3YWl0IHBhZ2UuZXZhbHVhdGUob3B0aW9uU2VsZWN0b3IgPT4ge1xuICAgIHJldHVybiBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGw8SFRNTE9wdGlvbkVsZW1lbnQ+KG9wdGlvblNlbGVjdG9yKSlcbiAgICAgIC5maWx0ZXIobyA9PiBvLnZhbHVlKVxuICAgICAgLm1hcChvID0+IHtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBuYW1lOiBvLnRleHQsXG4gICAgICAgICAgdmFsdWU6IG8udmFsdWUsXG4gICAgICAgIH07XG4gICAgICB9KTtcbiAgfSwgYCR7c2VsZWN0b3J9ID4gb3B0aW9uYCk7XG4gIHJldHVybiBvcHRpb25zO1xufVxuXG5leHBvcnQge1xuICBjbGlja0J1dHRvbixcbiAgY2xpY2tMaW5rLFxuICBkcm9wZG93bkVsZW1lbnRzLFxuICBkcm9wZG93blNlbGVjdCxcbiAgZWxlbWVudFByZXNlbnRPblBhZ2UsXG4gIGZpbGxJbnB1dCxcbiAgcGFnZUV2YWwsXG4gIHBhZ2VFdmFsQWxsLFxuICBzZXRWYWx1ZSxcbiAgd2FpdFVudGlsRWxlbWVudERpc2FwcGVhcixcbiAgd2FpdFVudGlsRWxlbWVudEZvdW5kLFxuICB3YWl0VW50aWxJZnJhbWVGb3VuZCxcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBRUEsZUFBZUMscUJBQXFCQSxDQUNsQ0MsSUFBa0IsRUFDbEJDLGVBQXVCLEVBQ3ZCQyxXQUFXLEdBQUcsS0FBSyxFQUNuQkMsT0FBZ0IsRUFDaEI7RUFDQSxNQUFNSCxJQUFJLENBQUNJLGVBQWUsQ0FBQ0gsZUFBZSxFQUFFO0lBQUVJLE9BQU8sRUFBRUgsV0FBVztJQUFFQztFQUFRLENBQUMsQ0FBQztBQUNoRjtBQUVBLGVBQWVHLHlCQUF5QkEsQ0FBQ04sSUFBVSxFQUFFQyxlQUF1QixF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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type Page } from 'puppeteer';
|
|
2
|
+
export declare function fetchGet<TResult>(url: string, extraHeaders: Record<string, any>): Promise<TResult>;
|
|
3
|
+
export declare function fetchPost(url: string, data: Record<string, any>, extraHeaders?: Record<string, any>): Promise<any>;
|
|
4
|
+
export declare function fetchGraphql<TResult>(url: string, query: string, variables?: Record<string, unknown>, extraHeaders?: Record<string, any>): Promise<TResult>;
|
|
5
|
+
export declare function fetchGetWithinPage<TResult>(page: Page, url: string, ignoreErrors?: boolean): Promise<TResult | null>;
|
|
6
|
+
export declare function fetchPostWithinPage<TResult>(page: Page, url: string, data: Record<string, any>, extraHeaders?: Record<string, any>, ignoreErrors?: boolean): Promise<TResult | null>;
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.fetchGet = fetchGet;
|
|
7
|
+
exports.fetchGetWithinPage = fetchGetWithinPage;
|
|
8
|
+
exports.fetchGraphql = fetchGraphql;
|
|
9
|
+
exports.fetchPost = fetchPost;
|
|
10
|
+
exports.fetchPostWithinPage = fetchPostWithinPage;
|
|
11
|
+
var _nodeFetch = _interopRequireDefault(require("node-fetch"));
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
const JSON_CONTENT_TYPE = 'application/json';
|
|
14
|
+
function getJsonHeaders() {
|
|
15
|
+
return {
|
|
16
|
+
Accept: JSON_CONTENT_TYPE,
|
|
17
|
+
'Content-Type': JSON_CONTENT_TYPE
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
async function fetchGet(url, extraHeaders) {
|
|
21
|
+
let headers = getJsonHeaders();
|
|
22
|
+
if (extraHeaders) {
|
|
23
|
+
headers = Object.assign(headers, extraHeaders);
|
|
24
|
+
}
|
|
25
|
+
const request = {
|
|
26
|
+
method: 'GET',
|
|
27
|
+
headers
|
|
28
|
+
};
|
|
29
|
+
const fetchResult = await (0, _nodeFetch.default)(url, request);
|
|
30
|
+
if (fetchResult.status !== 200) {
|
|
31
|
+
throw new Error(`sending a request to the institute server returned with status code ${fetchResult.status}`);
|
|
32
|
+
}
|
|
33
|
+
return fetchResult.json();
|
|
34
|
+
}
|
|
35
|
+
async function fetchPost(url, data, extraHeaders = {}) {
|
|
36
|
+
const request = {
|
|
37
|
+
method: 'POST',
|
|
38
|
+
headers: {
|
|
39
|
+
...getJsonHeaders(),
|
|
40
|
+
...extraHeaders
|
|
41
|
+
},
|
|
42
|
+
body: JSON.stringify(data)
|
|
43
|
+
};
|
|
44
|
+
const result = await (0, _nodeFetch.default)(url, request);
|
|
45
|
+
return result.json();
|
|
46
|
+
}
|
|
47
|
+
async function fetchGraphql(url, query, variables = {}, extraHeaders = {}) {
|
|
48
|
+
const result = await fetchPost(url, {
|
|
49
|
+
operationName: null,
|
|
50
|
+
query,
|
|
51
|
+
variables
|
|
52
|
+
}, extraHeaders);
|
|
53
|
+
if (result.errors?.length) {
|
|
54
|
+
throw new Error(result.errors[0].message);
|
|
55
|
+
}
|
|
56
|
+
return result.data;
|
|
57
|
+
}
|
|
58
|
+
async function fetchGetWithinPage(page, url, ignoreErrors = false) {
|
|
59
|
+
const [result, status] = await page.evaluate(async innerUrl => {
|
|
60
|
+
let response;
|
|
61
|
+
try {
|
|
62
|
+
response = await fetch(innerUrl, {
|
|
63
|
+
credentials: 'include'
|
|
64
|
+
});
|
|
65
|
+
if (response.status === 204) {
|
|
66
|
+
return [null, response.status];
|
|
67
|
+
}
|
|
68
|
+
return [await response.text(), response.status];
|
|
69
|
+
} catch (e) {
|
|
70
|
+
throw new Error(`fetchGetWithinPage error: ${e instanceof Error ? `${e.message}\n${e.stack}` : String(e)}, url: ${innerUrl}, status: ${response?.status}`);
|
|
71
|
+
}
|
|
72
|
+
}, url);
|
|
73
|
+
if (result !== null) {
|
|
74
|
+
try {
|
|
75
|
+
return JSON.parse(result);
|
|
76
|
+
} catch (e) {
|
|
77
|
+
if (!ignoreErrors) {
|
|
78
|
+
throw new Error(`fetchGetWithinPage parse error: ${e instanceof Error ? `${e.message}\n${e.stack}` : String(e)}, url: ${url}, result: ${result}, status: ${status}`);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
84
|
+
async function fetchPostWithinPage(page, url, data, extraHeaders = {}, ignoreErrors = false) {
|
|
85
|
+
const result = await page.evaluate(async (innerUrl, innerData, innerExtraHeaders) => {
|
|
86
|
+
const response = await fetch(innerUrl, {
|
|
87
|
+
method: 'POST',
|
|
88
|
+
body: JSON.stringify(innerData),
|
|
89
|
+
credentials: 'include',
|
|
90
|
+
// eslint-disable-next-line prefer-object-spread
|
|
91
|
+
headers: Object.assign({
|
|
92
|
+
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'
|
|
93
|
+
}, innerExtraHeaders)
|
|
94
|
+
});
|
|
95
|
+
if (response.status === 204) {
|
|
96
|
+
return null;
|
|
97
|
+
}
|
|
98
|
+
return response.text();
|
|
99
|
+
}, url, data, extraHeaders);
|
|
100
|
+
try {
|
|
101
|
+
if (result !== null) {
|
|
102
|
+
return JSON.parse(result);
|
|
103
|
+
}
|
|
104
|
+
} catch (e) {
|
|
105
|
+
if (!ignoreErrors) {
|
|
106
|
+
throw new Error(`fetchPostWithinPage parse error: ${e instanceof Error ? `${e.message}\n${e.stack}` : String(e)}, url: ${url}, data: ${JSON.stringify(data)}, extraHeaders: ${JSON.stringify(extraHeaders)}, result: ${result}`);
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
return null;
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbm9kZUZldGNoIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJlIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJKU09OX0NPTlRFTlRfVFlQRSIsImdldEpzb25IZWFkZXJzIiwiQWNjZXB0IiwiZmV0Y2hHZXQiLCJ1cmwiLCJleHRyYUhlYWRlcnMiLCJoZWFkZXJzIiwiT2JqZWN0IiwiYXNzaWduIiwicmVxdWVzdCIsIm1ldGhvZCIsImZldGNoUmVzdWx0Iiwibm9kZUZldGNoIiwic3RhdHVzIiwiRXJyb3IiLCJqc29uIiwiZmV0Y2hQb3N0IiwiZGF0YSIsImJvZHkiLCJKU09OIiwic3RyaW5naWZ5IiwicmVzdWx0IiwiZmV0Y2hHcmFwaHFsIiwicXVlcnkiLCJ2YXJpYWJsZXMiLCJvcGVyYXRpb25OYW1lIiwiZXJyb3JzIiwibGVuZ3RoIiwibWVzc2FnZSIsImZldGNoR2V0V2l0aGluUGFnZSIsInBhZ2UiLCJpZ25vcmVFcnJvcnMiLCJldmFsdWF0ZSIsImlubmVyVXJsIiwicmVzcG9uc2UiLCJmZXRjaCIsImNyZWRlbnRpYWxzIiwidGV4dCIsInN0YWNrIiwiU3RyaW5nIiwicGFyc2UiLCJmZXRjaFBvc3RXaXRoaW5QYWdlIiwiaW5uZXJEYXRhIiwiaW5uZXJFeHRyYUhlYWRlcnMiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9mZXRjaC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgbm9kZUZldGNoIGZyb20gJ25vZGUtZmV0Y2gnO1xuaW1wb3J0IHsgdHlwZSBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcblxuY29uc3QgSlNPTl9DT05URU5UX1RZUEUgPSAnYXBwbGljYXRpb24vanNvbic7XG5cbmZ1bmN0aW9uIGdldEpzb25IZWFkZXJzKCkge1xuICByZXR1cm4ge1xuICAgIEFjY2VwdDogSlNPTl9DT05URU5UX1RZUEUsXG4gICAgJ0NvbnRlbnQtVHlwZSc6IEpTT05fQ09OVEVOVF9UWVBFLFxuICB9O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hHZXQ8VFJlc3VsdD4odXJsOiBzdHJpbmcsIGV4dHJhSGVhZGVyczogUmVjb3JkPHN0cmluZywgYW55Pik6IFByb21pc2U8VFJlc3VsdD4ge1xuICBsZXQgaGVhZGVycyA9IGdldEpzb25IZWFkZXJzKCk7XG4gIGlmIChleHRyYUhlYWRlcnMpIHtcbiAgICBoZWFkZXJzID0gT2JqZWN0LmFzc2lnbihoZWFkZXJzLCBleHRyYUhlYWRlcnMpO1xuICB9XG4gIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgbWV0aG9kOiAnR0VUJyxcbiAgICBoZWFkZXJzLFxuICB9O1xuICBjb25zdCBmZXRjaFJlc3VsdCA9IGF3YWl0IG5vZGVGZXRjaCh1cmwsIHJlcXVlc3QpO1xuXG4gIGlmIChmZXRjaFJlc3VsdC5zdGF0dXMgIT09IDIwMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgc2VuZGluZyBhIHJlcXVlc3QgdG8gdGhlIGluc3RpdHV0ZSBzZXJ2ZXIgcmV0dXJuZWQgd2l0aCBzdGF0dXMgY29kZSAke2ZldGNoUmVzdWx0LnN0YXR1c31gKTtcbiAgfVxuXG4gIHJldHVybiBmZXRjaFJlc3VsdC5qc29uKCk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmZXRjaFBvc3QodXJsOiBzdHJpbmcsIGRhdGE6IFJlY29yZDxzdHJpbmcsIGFueT4sIGV4dHJhSGVhZGVyczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9KSB7XG4gIGNvbnN0IHJlcXVlc3QgPSB7XG4gICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgaGVhZGVyczogeyAuLi5nZXRKc29uSGVhZGVycygpLCAuLi5leHRyYUhlYWRlcnMgfSxcbiAgICBib2R5OiBKU09OLnN0cmluZ2lmeShkYXRhKSxcbiAgfTtcbiAgY29uc3QgcmVzdWx0ID0gYXdhaXQgbm9kZUZldGNoKHVybCwgcmVxdWVzdCk7XG4gIHJldHVybiByZXN1bHQuanNvbigpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hHcmFwaHFsPFRSZXN1bHQ+KFxuICB1cmw6IHN0cmluZyxcbiAgcXVlcnk6IHN0cmluZyxcbiAgdmFyaWFibGVzOiBSZWNvcmQ8c3RyaW5nLCB1bmtub3duPiA9IHt9LFxuICBleHRyYUhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbik6IFByb21pc2U8VFJlc3VsdD4ge1xuICBjb25zdCByZXN1bHQgPSBhd2FpdCBmZXRjaFBvc3QodXJsLCB7IG9wZXJhdGlvbk5hbWU6IG51bGwsIHF1ZXJ5LCB2YXJpYWJsZXMgfSwgZXh0cmFIZWFkZXJzKTtcbiAgaWYgKHJlc3VsdC5lcnJvcnM/Lmxlbmd0aCkge1xuICAgIHRocm93IG5ldyBFcnJvcihyZXN1bHQuZXJyb3JzWzBdLm1lc3NhZ2UpO1xuICB9XG4gIHJldHVybiByZXN1bHQuZGF0YSBhcyBQcm9taXNlPFRSZXN1bHQ+O1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gZmV0Y2hHZXRXaXRoaW5QYWdlPFRSZXN1bHQ+KFxuICBwYWdlOiBQYWdlLFxuICB1cmw6IHN0cmluZyxcbiAgaWdub3JlRXJyb3JzID0gZmFsc2UsXG4pOiBQcm9taXNlPFRSZXN1bHQgfCBudWxsPiB7XG4gIGNvbnN0IFtyZXN1bHQsIHN0YXR1c10gPSBhd2FpdCBwYWdlLmV2YWx1YXRlKGFzeW5jIGlubmVyVXJsID0+IHtcbiAgICBsZXQgcmVzcG9uc2U6IFJlc3BvbnNlIHwgdW5kZWZpbmVkO1xuICAgIHRyeSB7XG4gICAgICByZXNwb25zZSA9IGF3YWl0IGZldGNoKGlubmVyVXJsLCB7IGNyZWRlbnRpYWxzOiAnaW5jbHVkZScgfSk7XG4gICAgICBpZiAocmVzcG9uc2Uuc3RhdHVzID09PSAyMDQpIHtcbiAgICAgICAgcmV0dXJuIFtudWxsLCByZXNwb25zZS5zdGF0dXNdIGFzIGNvbnN0O1xuICAgICAgfVxuICAgICAgcmV0dXJuIFthd2FpdCByZXNwb25zZS50ZXh0KCksIHJlc3BvbnNlLnN0YXR1c10gYXMgY29uc3Q7XG4gICAgfSBjYXRjaCAoZSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKFxuICAgICAgICBgZmV0Y2hHZXRXaXRoaW5QYWdlIGVycm9yOiAke2UgaW5zdGFuY2VvZiBFcnJvciA/IGAke2UubWVzc2FnZX1cXG4ke2Uuc3RhY2t9YCA6IFN0cmluZyhlKX0sIHVybDogJHtpbm5lclVybH0sIHN0YXR1czogJHtyZXNwb25zZT8uc3RhdHVzfWAsXG4gICAgICApO1xuICAgIH1cbiAgfSwgdXJsKTtcbiAgaWYgKHJlc3VsdCAhPT0gbnVsbCkge1xuICAgIHRyeSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgIGlmICghaWdub3JlRXJyb3JzKSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICBgZmV0Y2hHZXRXaXRoaW5QYWdlIHBhcnNlIGVycm9yOiAke2UgaW5zdGFuY2VvZiBFcnJvciA/IGAke2UubWVzc2FnZX1cXG4ke2Uuc3RhY2t9YCA6IFN0cmluZyhlKX0sIHVybDogJHt1cmx9LCByZXN1bHQ6ICR7cmVzdWx0fSwgc3RhdHVzOiAke3N0YXR1c31gLFxuICAgICAgICApO1xuICAgICAgfVxuICAgIH1cbiAgfVxuICByZXR1cm4gbnVsbDtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGZldGNoUG9zdFdpdGhpblBhZ2U8VFJlc3VsdD4oXG4gIHBhZ2U6IFBhZ2UsXG4gIHVybDogc3RyaW5nLFxuICBkYXRhOiBSZWNvcmQ8c3RyaW5nLCBhbnk+LFxuICBleHRyYUhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fSxcbiAgaWdub3JlRXJyb3JzID0gZmFsc2UsXG4pOiBQcm9taXNlPFRSZXN1bHQgfCBudWxsPiB7XG4gIGNvbnN0IHJlc3VsdCA9IGF3YWl0IHBhZ2UuZXZhbHVhdGUoXG4gICAgYXN5bmMgKGlubmVyVXJsOiBzdHJpbmcsIGlubmVyRGF0YTogUmVjb3JkPHN0cmluZywgYW55PiwgaW5uZXJFeHRyYUhlYWRlcnM6IFJlY29yZDxzdHJpbmcsIGFueT4pID0+IHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goaW5uZXJVcmwsIHtcbiAgICAgICAgbWV0aG9kOiAnUE9TVCcsXG4gICAgICAgIGJvZHk6IEpTT04uc3RyaW5naWZ5KGlubmVyRGF0YSksXG4gICAgICAgIGNyZWRlbnRpYWxzOiAnaW5jbHVkZScsXG4gICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBwcmVmZXItb2JqZWN0LXNwcmVhZFxuICAgICAgICBoZWFkZXJzOiBPYmplY3QuYXNzaWduKFxuICAgICAgICAgIHsgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQ7IGNoYXJzZXQ9VVRGLTgnIH0sXG4gICAgICAgICAgaW5uZXJFeHRyYUhlYWRlcnMsXG4gICAgICAgICksXG4gICAgICB9KTtcbiAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgPT09IDIwNCkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgIH1cbiAgICAgIHJldHVybiByZXNwb25zZS50ZXh0KCk7XG4gICAgfSxcbiAgICB1cmwsXG4gICAgZGF0YSxcbiAgICBleHRyYUhlYWRlcnMsXG4gICk7XG5cbiAgdHJ5IHtcbiAgICBpZiAocmVzdWx0ICE9PSBudWxsKSB7XG4gICAgICByZXR1cm4gSlNPTi5wYXJzZShyZXN1bHQpO1xuICAgIH1cbiAgfSBjYXRjaCAoZSkge1xuICAgIGlmICghaWdub3JlRXJyb3JzKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIGBmZXRjaFBvc3RXaXRoaW5QYWdlIHBhcnNlIGVycm9yOiAke2UgaW5zdGFuY2VvZiBFcnJvciA/IGAke2UubWVzc2FnZX1cXG4ke2Uuc3RhY2t9YCA6IFN0cmluZyhlKX0sIHVybDogJHt1cmx9LCBkYXRhOiAke0pTT04uc3RyaW5naWZ5KGRhdGEpfSwgZXh0cmFIZWFkZXJzOiAke0pTT04uc3RyaW5naWZ5KGV4dHJhSGVhZGVycyl9LCByZXN1bHQ6ICR7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
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { type Frame, type Page, type WaitForOptions } from 'puppeteer';
|
|
2
|
+
export declare function waitForNavigation(pageOrFrame: Page | Frame, options?: WaitForOptions): Promise<void>;
|
|
3
|
+
export declare function waitForNavigationAndDomLoad(page: Page): Promise<void>;
|
|
4
|
+
export declare function getCurrentUrl(pageOrFrame: Page | Frame, clientSide?: boolean): string | Promise<string>;
|
|
5
|
+
export declare function waitForRedirect(pageOrFrame: Page | Frame, timeout?: number, clientSide?: boolean, ignoreList?: string[]): Promise<void>;
|
|
6
|
+
export declare function waitForUrl(pageOrFrame: Page | Frame, url: string | RegExp, timeout?: number, clientSide?: boolean): Promise<void>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getCurrentUrl = getCurrentUrl;
|
|
7
|
+
exports.waitForNavigation = waitForNavigation;
|
|
8
|
+
exports.waitForNavigationAndDomLoad = waitForNavigationAndDomLoad;
|
|
9
|
+
exports.waitForRedirect = waitForRedirect;
|
|
10
|
+
exports.waitForUrl = waitForUrl;
|
|
11
|
+
var _waiting = require("./waiting");
|
|
12
|
+
async function waitForNavigation(pageOrFrame, options) {
|
|
13
|
+
await pageOrFrame.waitForNavigation(options);
|
|
14
|
+
}
|
|
15
|
+
async function waitForNavigationAndDomLoad(page) {
|
|
16
|
+
await waitForNavigation(page, {
|
|
17
|
+
waitUntil: 'domcontentloaded'
|
|
18
|
+
});
|
|
19
|
+
}
|
|
20
|
+
function getCurrentUrl(pageOrFrame, clientSide = false) {
|
|
21
|
+
if (clientSide) {
|
|
22
|
+
return pageOrFrame.evaluate(() => window.location.href);
|
|
23
|
+
}
|
|
24
|
+
return pageOrFrame.url();
|
|
25
|
+
}
|
|
26
|
+
async function waitForRedirect(pageOrFrame, timeout = 20000, clientSide = false, ignoreList = []) {
|
|
27
|
+
const initial = await getCurrentUrl(pageOrFrame, clientSide);
|
|
28
|
+
await (0, _waiting.waitUntil)(async () => {
|
|
29
|
+
const current = await getCurrentUrl(pageOrFrame, clientSide);
|
|
30
|
+
return current !== initial && !ignoreList.includes(current);
|
|
31
|
+
}, `waiting for redirect from ${initial}`, timeout, 1000);
|
|
32
|
+
}
|
|
33
|
+
async function waitForUrl(pageOrFrame, url, timeout = 20000, clientSide = false) {
|
|
34
|
+
await (0, _waiting.waitUntil)(async () => {
|
|
35
|
+
const current = await getCurrentUrl(pageOrFrame, clientSide);
|
|
36
|
+
return url instanceof RegExp ? url.test(current) : url === current;
|
|
37
|
+
}, `waiting for url to be ${url}`, timeout, 1000);
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfd2FpdGluZyIsInJlcXVpcmUiLCJ3YWl0Rm9yTmF2aWdhdGlvbiIsInBhZ2VPckZyYW1lIiwib3B0aW9ucyIsIndhaXRGb3JOYXZpZ2F0aW9uQW5kRG9tTG9hZCIsInBhZ2UiLCJ3YWl0VW50aWwiLCJnZXRDdXJyZW50VXJsIiwiY2xpZW50U2lkZSIsImV2YWx1YXRlIiwid2luZG93IiwibG9jYXRpb24iLCJocmVmIiwidXJsIiwid2FpdEZvclJlZGlyZWN0IiwidGltZW91dCIsImlnbm9yZUxpc3QiLCJpbml0aWFsIiwiY3VycmVudCIsImluY2x1ZGVzIiwid2FpdEZvclVybCIsIlJlZ0V4cCIsInRlc3QiXSwic291cmNlcyI6WyIuLi8uLi9zcmMvaGVscGVycy9uYXZpZ2F0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHR5cGUgRnJhbWUsIHR5cGUgUGFnZSwgdHlwZSBXYWl0Rm9yT3B0aW9ucyB9IGZyb20gJ3B1cHBldGVlcic7XG5pbXBvcnQgeyB3YWl0VW50aWwgfSBmcm9tICcuL3dhaXRpbmcnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd2FpdEZvck5hdmlnYXRpb24ocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgb3B0aW9ucz86IFdhaXRGb3JPcHRpb25zKSB7XG4gIGF3YWl0IHBhZ2VPckZyYW1lLndhaXRGb3JOYXZpZ2F0aW9uKG9wdGlvbnMpO1xufVxuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gd2FpdEZvck5hdmlnYXRpb25BbmREb21Mb2FkKHBhZ2U6IFBhZ2UpIHtcbiAgYXdhaXQgd2FpdEZvck5hdmlnYXRpb24ocGFnZSwgeyB3YWl0VW50aWw6ICdkb21jb250ZW50bG9hZGVkJyB9KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGdldEN1cnJlbnRVcmwocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgY2xpZW50U2lkZSA9IGZhbHNlKSB7XG4gIGlmIChjbGllbnRTaWRlKSB7XG4gICAgcmV0dXJuIHBhZ2VPckZyYW1lLmV2YWx1YXRlKCgpID0+IHdpbmRvdy5sb2NhdGlvbi5ocmVmKTtcbiAgfVxuXG4gIHJldHVybiBwYWdlT3JGcmFtZS51cmwoKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JSZWRpcmVjdChcbiAgcGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSxcbiAgdGltZW91dCA9IDIwMDAwLFxuICBjbGllbnRTaWRlID0gZmFsc2UsXG4gIGlnbm9yZUxpc3Q6IHN0cmluZ1tdID0gW10sXG4pIHtcbiAgY29uc3QgaW5pdGlhbCA9IGF3YWl0IGdldEN1cnJlbnRVcmwocGFnZU9yRnJhbWUsIGNsaWVudFNpZGUpO1xuXG4gIGF3YWl0IHdhaXRVbnRpbChcbiAgICBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgZ2V0Q3VycmVudFVybChwYWdlT3JGcmFtZSwgY2xpZW50U2lkZSk7XG4gICAgICByZXR1cm4gY3VycmVudCAhPT0gaW5pdGlhbCAmJiAhaWdub3JlTGlzdC5pbmNsdWRlcyhjdXJyZW50KTtcbiAgICB9LFxuICAgIGB3YWl0aW5nIGZvciByZWRpcmVjdCBmcm9tICR7aW5pdGlhbH1gLFxuICAgIHRpbWVvdXQsXG4gICAgMTAwMCxcbiAgKTtcbn1cblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHdhaXRGb3JVcmwocGFnZU9yRnJhbWU6IFBhZ2UgfCBGcmFtZSwgdXJsOiBzdHJpbmcgfCBSZWdFeHAsIHRpbWVvdXQgPSAyMDAwMCwgY2xpZW50U2lkZSA9IGZhbHNlKSB7XG4gIGF3YWl0IHdhaXRVbnRpbChcbiAgICBhc3luYyAoKSA9PiB7XG4gICAgICBjb25zdCBjdXJyZW50ID0gYXdhaXQgZ2V0Q3VycmVudFVybChwYWdlT3JGcmFtZSwgY2xpZW50U2lkZSk7XG4gICAgICByZXR1cm4gdXJsIGluc3RhbmNlb2YgUmVnRXhwID8gdXJsLnRlc3QoY3VycmVudCkgOiB1cmwgPT09IGN1cnJlbnQ7XG4gICAgfSxcbiAgICBgd2FpdGluZyBmb3IgdXJsIHRvIGJlICR7dXJsfWAsXG4gICAgdGltZW91dCxcbiAgICAxMDAwLFxuICApO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBQ0EsSUFBQUEsUUFBQSxHQUFBQyxPQUFBO0FBRU8sZUFBZUMsaUJBQWlCQSxDQUFDQyxXQUF5QixFQUFFQyxPQUF3QixFQUFFO0VBQzNGLE1BQU1ELFdBQVcsQ0FBQ0QsaUJBQWlCLENBQUNFLE9BQU8sQ0FBQztBQUM5QztBQUVPLGVBQWVDLDJCQUEyQkEsQ0FBQ0MsSUFBVSxFQUFFO0VBQzVELE1BQU1KLGlCQUFpQixDQUFDSSxJQUFJLEVBQUU7SUFBRUMsU0FBUyxFQUFFO0VBQW1CLENBQUMsQ0FBQztBQUNsRTtBQUVPLFNBQVNDLGFBQWFBLENBQUNMLFdBQXlCLEVBQUVNLFVBQVUsR0FBRyxLQUFLLEVBQUU7RUFDM0UsSUFBSUEsVUFBVSxFQUFFO0lBQ2QsT0FBT04sV0FBVyxDQUFDTyxRQUFRLENBQUMsTUFBTUMsTUFBTSxDQUFDQyxRQUFRLENBQUNDLElBQUksQ0FBQztFQUN6RDtFQUVBLE9BQU9WLFdBQVcsQ0FBQ1csR0FBRyxDQUFDLENBQUM7QUFDMUI7QUFFTyxlQUFlQyxlQUFlQSxDQUNuQ1osV0FBeUIsRUFDekJhLE9BQU8sR0FBRyxLQUFLLEVBQ2ZQLFVBQVUsR0FBRyxLQUFLLEVBQ2xCUSxVQUFvQixHQUFHLEVBQUUsRUFDekI7RUFDQSxNQUFNQyxPQUFPLEdBQUcsTUFBTVYsYUFBYSxDQUFDTCxXQUFXLEVBQUVNLFVBQVUsQ0FBQztFQUU1RCxNQUFNLElBQUFGLGtCQUFTLEVBQ2IsWUFBWTtJQUNWLE1BQU1ZLE9BQU8sR0FBRyxNQUFNWCxhQUFhLENBQUNMLFdBQVcsRUFBRU0sVUFBVSxDQUFDO0lBQzVELE9BQU9VLE9BQU8sS0FBS0QsT0FBTyxJQUFJLENBQUNELFVBQVUsQ0FBQ0csUUFBUSxDQUFDRCxPQUFPLENBQUM7RUFDN0QsQ0FBQyxFQUNELDZCQUE2QkQsT0FBTyxFQUFFLEVBQ3RDRixPQUFPLEVBQ1AsSUFDRixDQUFDO0FBQ0g7QUFFTyxlQUFlSyxVQUFVQSxDQUFDbEIsV0FBeUIsRUFBRVcsR0FBb0IsRUFBRUUsT0FBTyxHQUFHLEtBQUssRUFBRVAsVUFBVSxHQUFHLEtBQUssRUFBRTtFQUNySCxNQUFNLElBQUFGLGtCQUFTLEVBQ2IsWUFBWTtJQUNWLE1BQU1ZLE9BQU8sR0FBRyxNQUFNWCxhQUFhLENBQUNMLFdBQVcsRUFBRU0sVUFBVSxDQUFDO0lBQzVELE9BQU9LLEdBQUcsWUFBWVEsTUFBTSxHQUFHUixHQUFHLENBQUNTLElBQUksQ0FBQ0osT0FBTyxDQUFDLEdBQUdMLEdBQUcsS0FBS0ssT0FBTztFQUNwRSxDQUFDLEVBQ0QseUJBQXlCTCxHQUFHLEVBQUUsRUFDOUJFLE9BQU8sRUFDUCxJQUNGLENBQUM7QUFDSCIsImlnbm9yZUxpc3QiOltdfQ==
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getFromSessionStorage = getFromSessionStorage;
|
|
7
|
+
async function getFromSessionStorage(page, key) {
|
|
8
|
+
const strData = await page.evaluate(k => {
|
|
9
|
+
return sessionStorage.getItem(k);
|
|
10
|
+
}, key);
|
|
11
|
+
if (!strData) return null;
|
|
12
|
+
return JSON.parse(strData);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJnZXRGcm9tU2Vzc2lvblN0b3JhZ2UiLCJwYWdlIiwia2V5Iiwic3RyRGF0YSIsImV2YWx1YXRlIiwiayIsInNlc3Npb25TdG9yYWdlIiwiZ2V0SXRlbSIsIkpTT04iLCJwYXJzZSJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9oZWxwZXJzL3N0b3JhZ2UudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgdHlwZSBQYWdlIH0gZnJvbSAncHVwcGV0ZWVyJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGdldEZyb21TZXNzaW9uU3RvcmFnZTxUPihwYWdlOiBQYWdlLCBrZXk6IHN0cmluZyk6IFByb21pc2U8VCB8IG51bGw+IHtcbiAgY29uc3Qgc3RyRGF0YSA9IGF3YWl0IHBhZ2UuZXZhbHVhdGUoKGs6IHN0cmluZykgPT4ge1xuICAgIHJldHVybiBzZXNzaW9uU3RvcmFnZS5nZXRJdGVtKGspO1xuICB9LCBrZXkpO1xuXG4gIGlmICghc3RyRGF0YSkgcmV0dXJuIG51bGw7XG5cbiAgcmV0dXJuIEpTT04ucGFyc2Uoc3RyRGF0YSkgYXMgVDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBRU8sZUFBZUEscUJBQXFCQSxDQUFJQyxJQUFVLEVBQUVDLEdBQVcsRUFBcUI7RUFDekYsTUFBTUMsT0FBTyxHQUFHLE1BQU1GLElBQUksQ0FBQ0csUUFBUSxDQUFFQyxDQUFTLElBQUs7SUFDakQsT0FBT0MsY0FBYyxDQUFDQyxPQUFPLENBQUNGLENBQUMsQ0FBQztFQUNsQyxDQUFDLEVBQUVILEdBQUcsQ0FBQztFQUVQLElBQUksQ0FBQ0MsT0FBTyxFQUFFLE9BQU8sSUFBSTtFQUV6QixPQUFPSyxJQUFJLENBQUNDLEtBQUssQ0FBQ04sT0FBTyxDQUFDO0FBQzVCIiwiaWdub3JlTGlzdCI6W119
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { type Moment } from 'moment';
|
|
2
|
+
import { type Transaction } from '../transactions';
|
|
3
|
+
export declare function fixInstallments(txns: Transaction[]): Transaction[];
|
|
4
|
+
export declare function sortTransactionsByDate(txns: Transaction[]): Transaction[];
|
|
5
|
+
export declare function filterOldTransactions(txns: Transaction[], startMoment: Moment, combineInstallments: boolean): Transaction[];
|