@google-psat/analysis-utils 0.11.0 → 0.12.0

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.
@@ -38,12 +38,13 @@ const parseNetworkDataToCookieData_1 = require("./parseNetworkDataToCookieData")
38
38
  const collateCookieData_1 = __importDefault(require("./collateCookieData"));
39
39
  const constants_1 = require("../constants");
40
40
  class BrowserManagement {
41
- constructor(viewportConfig, isHeadless, pageWaitTime, shouldLogDebug, indent, spinnies, selectors) {
41
+ constructor(viewportConfig, isHeadless, pageWaitTime, shouldLogDebug, indent, isSiteMap, spinnies, selectors) {
42
42
  this.indent = 0;
43
43
  this.viewportConfig = viewportConfig;
44
44
  this.browser = null;
45
45
  this.isHeadless = isHeadless;
46
46
  this.pageWaitTime = pageWaitTime;
47
+ this.isSiteMap = isSiteMap;
47
48
  this.pages = {};
48
49
  this.pageFrames = {};
49
50
  this.pageResponses = {};
@@ -53,12 +54,14 @@ class BrowserManagement {
53
54
  this.spinnies = spinnies;
54
55
  this.indent = indent;
55
56
  this.selectors = selectors;
57
+ this.erroredOutUrls = {};
56
58
  }
57
- debugLog(msg) {
59
+ debugLog(msg, shouldShowWarning) {
58
60
  if (this.shouldLogDebug && this.spinnies) {
59
61
  this.spinnies.add(msg, {
60
62
  text: msg,
61
- succeedColor: 'white',
63
+ succeedColor: shouldShowWarning ? 'yellowBright' : 'white',
64
+ spinnerColor: shouldShowWarning ? 'yellowBright' : 'white',
62
65
  status: 'non-spinnable',
63
66
  indent: this.indent,
64
67
  });
@@ -82,19 +85,14 @@ class BrowserManagement {
82
85
  clickOnButtonUsingCMPSelectors(page) {
83
86
  return __awaiter(this, void 0, void 0, function* () {
84
87
  let clickedOnButton = false;
85
- try {
86
- yield Promise.all(constants_1.CMP_SELECTORS.map((selector) => __awaiter(this, void 0, void 0, function* () {
87
- const buttonToClick = yield page.$(selector);
88
- if (buttonToClick) {
89
- yield buttonToClick.click();
90
- clickedOnButton = true;
91
- }
92
- })));
93
- return clickedOnButton;
94
- }
95
- catch (error) {
96
- return clickedOnButton;
97
- }
88
+ yield Promise.all(constants_1.CMP_SELECTORS.map((selector) => __awaiter(this, void 0, void 0, function* () {
89
+ const buttonToClick = yield page.$(selector);
90
+ if (buttonToClick) {
91
+ yield buttonToClick.click();
92
+ clickedOnButton = true;
93
+ }
94
+ })));
95
+ return clickedOnButton;
98
96
  });
99
97
  }
100
98
  clickOnGDPRUsingTextSelectors(page, textSelectors) {
@@ -102,68 +100,75 @@ class BrowserManagement {
102
100
  if (textSelectors.length === 0) {
103
101
  return false;
104
102
  }
105
- try {
106
- const result = yield page.evaluate((args) => {
107
- var _a, _b, _c;
108
- const bannerNodes = (_c = (_b = Array.from((((_a = document.querySelector('body')) === null || _a === void 0 ? void 0 : _a.childNodes) || []))) === null || _b === void 0 ? void 0 : _b.filter((node) => node && (node === null || node === void 0 ? void 0 : node.tagName) === 'DIV')) === null || _c === void 0 ? void 0 : _c.filter((node) => {
109
- if (!node || !(node === null || node === void 0 ? void 0 : node.textContent)) {
103
+ const result = yield page.evaluate((args) => {
104
+ var _a, _b, _c;
105
+ const bannerNodes = (_c = (_b = Array.from((((_a = document.querySelector('body')) === null || _a === void 0 ? void 0 : _a.childNodes) || []))) === null || _b === void 0 ? void 0 : _b.filter((node) => node && (node === null || node === void 0 ? void 0 : node.tagName) === 'DIV')) === null || _c === void 0 ? void 0 : _c.filter((node) => {
106
+ if (!node || !(node === null || node === void 0 ? void 0 : node.textContent)) {
107
+ return false;
108
+ }
109
+ const regex = /\b(consent|policy|cookie policy|privacy policy|personalize|preferences|cookies)\b/;
110
+ return regex.test(node.textContent.toLowerCase());
111
+ });
112
+ return bannerNodes === null || bannerNodes === void 0 ? void 0 : bannerNodes.some((node) => {
113
+ const buttonNodes = Array.from(node === null || node === void 0 ? void 0 : node.getElementsByTagName('button'));
114
+ return buttonNodes === null || buttonNodes === void 0 ? void 0 : buttonNodes.some((cnode) => {
115
+ if (!(cnode === null || cnode === void 0 ? void 0 : cnode.textContent)) {
110
116
  return false;
111
117
  }
112
- const regex = /\b(consent|policy|cookie policy|privacy policy|personalize|preferences|cookies)\b/;
113
- return regex.test(node.textContent.toLowerCase());
114
- });
115
- return bannerNodes === null || bannerNodes === void 0 ? void 0 : bannerNodes.some((node) => {
116
- const buttonNodes = Array.from(node === null || node === void 0 ? void 0 : node.getElementsByTagName('button'));
117
- return buttonNodes === null || buttonNodes === void 0 ? void 0 : buttonNodes.some((cnode) => {
118
- if (!(cnode === null || cnode === void 0 ? void 0 : cnode.textContent)) {
119
- return false;
118
+ return args.some((text) => {
119
+ var _a;
120
+ if ((_a = cnode === null || cnode === void 0 ? void 0 : cnode.textContent) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(text)) {
121
+ cnode === null || cnode === void 0 ? void 0 : cnode.click();
122
+ return true;
120
123
  }
121
- return args.some((text) => {
122
- var _a;
123
- if ((_a = cnode === null || cnode === void 0 ? void 0 : cnode.textContent) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(text)) {
124
- cnode === null || cnode === void 0 ? void 0 : cnode.click();
125
- return true;
126
- }
127
- return false;
128
- });
124
+ return false;
129
125
  });
130
126
  });
131
- }, textSelectors);
132
- return result;
133
- }
134
- catch (error) {
135
- return false;
136
- }
127
+ });
128
+ }, textSelectors);
129
+ return result;
137
130
  });
138
131
  }
139
132
  clickOnAcceptBanner(url) {
140
133
  return __awaiter(this, void 0, void 0, function* () {
141
- const page = this.pages[url];
142
- if (!page) {
143
- throw new Error('No page with the provided id was found');
144
- }
145
- const didSelectorsFromUserWork = yield this.useSelectorsToSelectGDPRBanner(page);
146
- if (didSelectorsFromUserWork) {
147
- this.debugLog('GDPR banner found and accepted');
148
- yield (0, common_1.delay)(this.pageWaitTime / 2);
149
- return;
150
- }
151
- // Click using CSS selectors.
152
- const clickedUsingCMPCSSSelectors = yield this.clickOnButtonUsingCMPSelectors(page);
153
- if (clickedUsingCMPCSSSelectors) {
154
- this.debugLog('GDPR banner found and accepted');
134
+ var _a;
135
+ try {
136
+ const page = this.pages[url];
137
+ if (!page) {
138
+ throw new Error('No page with the provided id was found');
139
+ }
140
+ const didSelectorsFromUserWork = yield this.useSelectorsToSelectGDPRBanner(page);
141
+ if (didSelectorsFromUserWork) {
142
+ this.debugLog('GDPR banner found and accepted');
143
+ yield (0, common_1.delay)(this.pageWaitTime / 2);
144
+ return;
145
+ }
146
+ // Click using CSS selectors.
147
+ const clickedUsingCMPCSSSelectors = yield this.clickOnButtonUsingCMPSelectors(page);
148
+ if (clickedUsingCMPCSSSelectors) {
149
+ this.debugLog('GDPR banner found and accepted');
150
+ yield (0, common_1.delay)(this.pageWaitTime / 2);
151
+ return;
152
+ }
153
+ const buttonClicked = yield this.clickOnGDPRUsingTextSelectors(page, constants_1.CMP_TEXT_SELECTORS);
154
+ if (buttonClicked) {
155
+ this.debugLog('GDPR banner found and accepted');
156
+ yield (0, common_1.delay)(this.pageWaitTime / 2);
157
+ return;
158
+ }
159
+ this.debugLog('GDPR banner could not be found');
155
160
  yield (0, common_1.delay)(this.pageWaitTime / 2);
156
161
  return;
157
162
  }
158
- const buttonClicked = yield this.clickOnGDPRUsingTextSelectors(page, constants_1.CMP_TEXT_SELECTORS);
159
- if (buttonClicked) {
160
- this.debugLog('GDPR banner found and accepted');
161
- yield (0, common_1.delay)(this.pageWaitTime / 2);
162
- return;
163
+ catch (error) {
164
+ if (error instanceof Error) {
165
+ this.pushErrors(url, {
166
+ errorMessage: error.message,
167
+ stackTrace: (_a = error === null || error === void 0 ? void 0 : error.stack) !== null && _a !== void 0 ? _a : '',
168
+ errorName: error === null || error === void 0 ? void 0 : error.name,
169
+ });
170
+ }
163
171
  }
164
- this.debugLog('GDPR banner could not be found');
165
- yield (0, common_1.delay)(this.pageWaitTime / 2);
166
- return;
167
172
  });
168
173
  }
169
174
  useSelectorsToSelectGDPRBanner(page) {
@@ -173,46 +178,41 @@ class BrowserManagement {
173
178
  if (!this.selectors) {
174
179
  return false;
175
180
  }
176
- try {
177
- yield Promise.all((_a = this.selectors) === null || _a === void 0 ? void 0 : _a.cssSelectors.map((selector) => __awaiter(this, void 0, void 0, function* () {
178
- const buttonToClick = yield page.$(selector);
179
- if (buttonToClick) {
180
- clickedOnButton = true;
181
- this.debugLog('GDPR banner found and accepted');
182
- yield buttonToClick.click();
183
- }
184
- })));
185
- if (clickedOnButton) {
186
- return clickedOnButton;
187
- }
188
- clickedOnButton = yield page.evaluate((xPaths) => {
189
- const rootElement = document.querySelector('html');
190
- if (!rootElement) {
191
- return false;
192
- }
193
- return xPaths.some((xPath) => {
194
- const _acceptButton = document
195
- .evaluate(xPath, rootElement)
196
- .iterateNext();
197
- if (!_acceptButton) {
198
- return false;
199
- }
200
- if (_acceptButton instanceof HTMLElement) {
201
- _acceptButton === null || _acceptButton === void 0 ? void 0 : _acceptButton.click();
202
- return true;
203
- }
204
- return false;
205
- });
206
- }, (_b = this.selectors) === null || _b === void 0 ? void 0 : _b.xPath);
207
- if (clickedOnButton) {
208
- return clickedOnButton;
181
+ yield Promise.all((_a = this.selectors) === null || _a === void 0 ? void 0 : _a.cssSelectors.map((selector) => __awaiter(this, void 0, void 0, function* () {
182
+ const buttonToClick = yield page.$(selector);
183
+ if (buttonToClick) {
184
+ clickedOnButton = true;
185
+ this.debugLog('GDPR banner found and accepted');
186
+ yield buttonToClick.click();
209
187
  }
210
- clickedOnButton = yield this.clickOnGDPRUsingTextSelectors(page, (_c = this.selectors) === null || _c === void 0 ? void 0 : _c.textSelectors);
188
+ })));
189
+ if (clickedOnButton) {
211
190
  return clickedOnButton;
212
191
  }
213
- catch (error) {
192
+ clickedOnButton = yield page.evaluate((xPaths) => {
193
+ const rootElement = document.querySelector('html');
194
+ if (!rootElement) {
195
+ return false;
196
+ }
197
+ return xPaths.some((xPath) => {
198
+ const _acceptButton = document
199
+ .evaluate(xPath, rootElement)
200
+ .iterateNext();
201
+ if (!_acceptButton) {
202
+ return false;
203
+ }
204
+ if (_acceptButton instanceof HTMLElement) {
205
+ _acceptButton === null || _acceptButton === void 0 ? void 0 : _acceptButton.click();
206
+ return true;
207
+ }
208
+ return false;
209
+ });
210
+ }, (_b = this.selectors) === null || _b === void 0 ? void 0 : _b.xPath);
211
+ if (clickedOnButton) {
214
212
  return clickedOnButton;
215
213
  }
214
+ clickedOnButton = yield this.clickOnGDPRUsingTextSelectors(page, (_c = this.selectors) === null || _c === void 0 ? void 0 : _c.textSelectors);
215
+ return clickedOnButton;
216
216
  });
217
217
  }
218
218
  openPage() {
@@ -231,20 +231,50 @@ class BrowserManagement {
231
231
  return sitePage;
232
232
  });
233
233
  }
234
+ pushErrors(url, objectToPushed) {
235
+ if (!this.erroredOutUrls[url]) {
236
+ this.erroredOutUrls[url] = [];
237
+ }
238
+ this.erroredOutUrls[url].push(objectToPushed);
239
+ }
234
240
  navigateToPage(url) {
235
241
  return __awaiter(this, void 0, void 0, function* () {
242
+ var _a;
236
243
  const page = this.pages[url];
237
244
  if (!page) {
238
245
  throw new Error('No page with the provided ID was found');
239
246
  }
240
247
  this.debugLog(`Starting navigation to URL: ${url}`);
241
248
  try {
242
- yield page.goto(url, { timeout: 10000 });
249
+ const response = yield page.goto(url, {
250
+ timeout: 10000,
251
+ });
252
+ const SUCCESS_RESPONSE = 200;
253
+ if (response && response.status() !== SUCCESS_RESPONSE) {
254
+ this.pushErrors(url, {
255
+ errorMessage: `Invalid server response: ${response.status()}`,
256
+ errorCode: `${response.status()}`,
257
+ errorName: `INVALID_SERVER_RESPONSE`,
258
+ });
259
+ this.debugLog(`Warning: Server error found in URL: ${url}`, true);
260
+ if (!this.isSiteMap) {
261
+ throw new Error(`Invalid server response: ${response.status()}`);
262
+ }
263
+ }
243
264
  this.debugLog(`Navigation completed to URL: ${url}`);
244
265
  }
245
266
  catch (error) {
246
- this.debugLog(`Navigation did not finish in 10 seconds moving on to scrolling`);
247
- //ignore
267
+ if (error instanceof Error) {
268
+ this.pushErrors(url, {
269
+ errorMessage: error.message,
270
+ stackTrace: (_a = error === null || error === void 0 ? void 0 : error.stack) !== null && _a !== void 0 ? _a : '',
271
+ errorName: error === null || error === void 0 ? void 0 : error.name,
272
+ });
273
+ if ((error === null || error === void 0 ? void 0 : error.name) === 'TimeoutError' || (error === null || error === void 0 ? void 0 : error.name) === 'i') {
274
+ this.debugLog(`Navigation did not finish on URL ${url} in 10 seconds moving on to scrolling`);
275
+ }
276
+ throw error;
277
+ }
248
278
  }
249
279
  });
250
280
  }
@@ -557,31 +587,45 @@ class BrowserManagement {
557
587
  }
558
588
  insertAndRunDOMQueryFunctions(url, Libraries) {
559
589
  return __awaiter(this, void 0, void 0, function* () {
560
- const page = this.pages[url];
561
- if (!page) {
562
- throw new Error('No page with the provided ID was found');
590
+ var _a;
591
+ try {
592
+ const page = this.pages[url];
593
+ if (!page) {
594
+ throw new Error('No page with the provided ID was found');
595
+ }
596
+ const domQueryMatches = {};
597
+ yield Promise.all(Libraries.map((_a) => __awaiter(this, [_a], void 0, function* ({ domQueryFunction, name }) {
598
+ if (domQueryFunction && name) {
599
+ yield page.addScriptTag({
600
+ content: `window.${name.replaceAll('-', '')} = ${domQueryFunction}`,
601
+ });
602
+ const queryResult = yield page.evaluate((library) => {
603
+ //@ts-ignore
604
+ const functionDOMQuery = window[`${library}`];
605
+ if (!functionDOMQuery) {
606
+ return [];
607
+ }
608
+ return functionDOMQuery();
609
+ }, name.replaceAll('-', ''));
610
+ domQueryMatches[name] = {
611
+ domQuerymatches: queryResult,
612
+ };
613
+ }
614
+ })));
615
+ const mainFrameUrl = new URL(page.url()).origin;
616
+ return { [mainFrameUrl]: domQueryMatches };
563
617
  }
564
- const domQueryMatches = {};
565
- yield Promise.all(Libraries.map((_a) => __awaiter(this, [_a], void 0, function* ({ domQueryFunction, name }) {
566
- if (domQueryFunction && name) {
567
- yield page.addScriptTag({
568
- content: `window.${name.replaceAll('-', '')} = ${domQueryFunction}`,
618
+ catch (error) {
619
+ if (error instanceof Error) {
620
+ this.pushErrors(url, {
621
+ errorMessage: error.message,
622
+ stackTrace: (_a = error === null || error === void 0 ? void 0 : error.stack) !== null && _a !== void 0 ? _a : '',
623
+ errorName: error === null || error === void 0 ? void 0 : error.name,
569
624
  });
570
- const queryResult = yield page.evaluate((library) => {
571
- //@ts-ignore
572
- const functionDOMQuery = window[`${library}`];
573
- if (!functionDOMQuery) {
574
- return [];
575
- }
576
- return functionDOMQuery();
577
- }, name.replaceAll('-', ''));
578
- domQueryMatches[name] = {
579
- domQuerymatches: queryResult,
580
- };
625
+ throw error;
581
626
  }
582
- })));
583
- const mainFrameUrl = new URL(page.url()).origin;
584
- return { [mainFrameUrl]: domQueryMatches };
627
+ return {};
628
+ }
585
629
  });
586
630
  }
587
631
  analyzeCookies(userProvidedUrls, shouldSkipAcceptBanner, Libraries) {
@@ -594,26 +638,48 @@ class BrowserManagement {
594
638
  yield this.attachListenersToPage(url);
595
639
  })));
596
640
  // Navigate to URLs
597
- yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
598
- yield this.navigateToPage(url);
599
- })));
641
+ // eslint-disable-next-line no-useless-catch -- Because we are rethrowing the same error no need to create a new Error instance
642
+ try {
643
+ yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
644
+ yield this.navigateToPage(url);
645
+ })));
646
+ }
647
+ catch (error) {
648
+ if (!this.isSiteMap) {
649
+ throw error;
650
+ }
651
+ }
600
652
  // Delay for page to load resources
601
653
  yield (0, common_1.delay)(this.pageWaitTime / 2);
602
654
  // Accept Banners
603
655
  if (!shouldSkipAcceptBanner) {
604
656
  // delay
605
- yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
606
- yield this.clickOnAcceptBanner(url);
607
- })));
657
+ try {
658
+ yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
659
+ yield this.clickOnAcceptBanner(url);
660
+ })));
661
+ }
662
+ catch (error) {
663
+ if (!this.isSiteMap) {
664
+ throw error;
665
+ }
666
+ }
608
667
  }
609
668
  // Scroll to bottom of the page
610
669
  yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
611
670
  yield this.pageScroll(url);
612
671
  })));
613
- yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
614
- const newMatches = yield this.insertAndRunDOMQueryFunctions(url, Libraries);
615
- consolidatedDOMQueryMatches = Object.assign(Object.assign({}, consolidatedDOMQueryMatches), newMatches);
616
- })));
672
+ try {
673
+ yield Promise.all(userProvidedUrls.map((url) => __awaiter(this, void 0, void 0, function* () {
674
+ const newMatches = yield this.insertAndRunDOMQueryFunctions(url, Libraries);
675
+ consolidatedDOMQueryMatches = Object.assign(Object.assign({}, consolidatedDOMQueryMatches), newMatches);
676
+ })));
677
+ }
678
+ catch (error) {
679
+ if (!this.isSiteMap) {
680
+ throw error;
681
+ }
682
+ }
617
683
  // Delay for page to load more resources
618
684
  yield (0, common_1.delay)(this.pageWaitTime / 2);
619
685
  const mainFrameUrlIdMap = yield this.getMainframeIds();
@@ -648,7 +714,11 @@ class BrowserManagement {
648
714
  cookieData: collatedCookieData,
649
715
  };
650
716
  })));
651
- return { result, consolidatedDOMQueryMatches };
717
+ return {
718
+ result,
719
+ consolidatedDOMQueryMatches,
720
+ erroredOutUrls: this.erroredOutUrls,
721
+ };
652
722
  });
653
723
  }
654
724
  deinitialize() {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browserManagement/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browserManagement/index.ts"],"names":[],"mappings":"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"}
@@ -33,39 +33,46 @@ const common_1 = require("@google-psat/common");
33
33
  * Internal dependencies.
34
34
  */
35
35
  const browserManagement_1 = require("../browserManagement");
36
- const analyzeCookiesUrlsAndFetchResources = (urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, shouldSkipAcceptBanner_1, verbose_1, selectors_1, spinnies_1, ...args_1) => __awaiter(void 0, [urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, shouldSkipAcceptBanner_1, verbose_1, selectors_1, spinnies_1, ...args_1], void 0, function* (urls, Libraries, isHeadless, delayTime, cookieDictionary, shouldSkipAcceptBanner, verbose, selectors, spinnies, indent = 4) {
37
- const browser = new browserManagement_1.BrowserManagement({
38
- width: 1440,
39
- height: 790,
40
- deviceScaleFactor: 1,
41
- }, isHeadless, delayTime, verbose, indent, spinnies, selectors);
42
- yield browser.initializeBrowser(true);
43
- const { result: analysisCookieData, consolidatedDOMQueryMatches } = yield browser.analyzeCookies(urls, shouldSkipAcceptBanner, Libraries);
44
- const resources = browser.getResources(urls);
45
- const res = analysisCookieData.map(({ url: pageUrl, cookieData }) => {
46
- Object.entries(cookieData).forEach(([, frameData]) => {
47
- const frameCookies = frameData.frameCookies;
48
- Object.entries(frameCookies).forEach(([key, cookie]) => {
49
- const analytics = (0, common_1.findAnalyticsMatch)(cookie.parsedCookie.name, cookieDictionary);
50
- frameCookies[key.trim()].analytics = {
51
- platform: (analytics === null || analytics === void 0 ? void 0 : analytics.platform) || 'Unknown',
52
- category: (analytics === null || analytics === void 0 ? void 0 : analytics.category) || 'Uncategorized',
53
- gdprUrl: (analytics === null || analytics === void 0 ? void 0 : analytics.gdprUrl) || '',
54
- description: analytics === null || analytics === void 0 ? void 0 : analytics.description,
55
- };
56
- frameCookies[key.trim()].isFirstParty = (0, common_1.isFirstParty)(cookie.parsedCookie.domain, pageUrl);
57
- frameCookies[key.trim()].blockingStatus = (0, common_1.deriveBlockingStatus)(cookie.networkEvents);
36
+ const analyzeCookiesUrlsAndFetchResources = (urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, shouldSkipAcceptBanner_1, verbose_1, isSitemap_1, selectors_1, spinnies_1, ...args_1) => __awaiter(void 0, [urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, shouldSkipAcceptBanner_1, verbose_1, isSitemap_1, selectors_1, spinnies_1, ...args_1], void 0, function* (urls, Libraries, isHeadless, delayTime, cookieDictionary, shouldSkipAcceptBanner, verbose, isSitemap, selectors, spinnies, indent = 4) {
37
+ // eslint-disable-next-line no-useless-catch -- Because we are rethrowing the same error no need to create a new Error instance
38
+ try {
39
+ const browser = new browserManagement_1.BrowserManagement({
40
+ width: 1440,
41
+ height: 790,
42
+ deviceScaleFactor: 1,
43
+ }, isHeadless, delayTime, verbose, indent, isSitemap, spinnies, selectors);
44
+ yield browser.initializeBrowser(true);
45
+ const { result: analysisCookieData, consolidatedDOMQueryMatches, erroredOutUrls, } = yield browser.analyzeCookies(urls, shouldSkipAcceptBanner, Libraries);
46
+ const resources = browser.getResources(urls);
47
+ const res = analysisCookieData.map(({ url: pageUrl, cookieData }) => {
48
+ Object.entries(cookieData).forEach(([, frameData]) => {
49
+ const frameCookies = frameData.frameCookies;
50
+ Object.entries(frameCookies).forEach(([key, cookie]) => {
51
+ const analytics = (0, common_1.findAnalyticsMatch)(cookie.parsedCookie.name, cookieDictionary);
52
+ frameCookies[key.trim()].analytics = {
53
+ platform: (analytics === null || analytics === void 0 ? void 0 : analytics.platform) || 'Unknown',
54
+ category: (analytics === null || analytics === void 0 ? void 0 : analytics.category) || 'Uncategorized',
55
+ gdprUrl: (analytics === null || analytics === void 0 ? void 0 : analytics.gdprUrl) || '',
56
+ description: analytics === null || analytics === void 0 ? void 0 : analytics.description,
57
+ };
58
+ frameCookies[key.trim()].isFirstParty = (0, common_1.isFirstParty)(cookie.parsedCookie.domain, pageUrl);
59
+ frameCookies[key.trim()].blockingStatus = (0, common_1.deriveBlockingStatus)(cookie.networkEvents);
60
+ });
58
61
  });
62
+ return {
63
+ url: pageUrl,
64
+ cookieData,
65
+ resources: resources[pageUrl],
66
+ erroredOutUrls,
67
+ domQueryMatches: consolidatedDOMQueryMatches[pageUrl],
68
+ };
59
69
  });
60
- return {
61
- url: pageUrl,
62
- cookieData,
63
- resources: resources[pageUrl],
64
- domQueryMatches: consolidatedDOMQueryMatches[pageUrl],
65
- };
66
- });
67
- yield browser.deinitialize();
68
- return res;
70
+ yield browser.deinitialize();
71
+ return res;
72
+ }
73
+ catch (error) {
74
+ throw error;
75
+ }
69
76
  });
70
77
  exports.analyzeCookiesUrlsAndFetchResources = analyzeCookiesUrlsAndFetchResources;
71
78
  //# sourceMappingURL=analyzeCookiesUrlsAndFetchResources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analyzeCookiesUrlsAndFetchResources.js","sourceRoot":"","sources":["../../src/procedures/analyzeCookiesUrlsAndFetchResources.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;AAEH;;GAEG;AACH,gDAO6B;AAE7B;;GAEG;AACH,4DAAyD;AAElD,MAAM,mCAAmC,GAAG,8IAWjD,EAAE,qLAVF,IAAc,EACd,SAA4B,EAC5B,UAAmB,EACnB,SAAiB,EACjB,gBAAgC,EAChC,sBAA+B,EAC/B,OAAgB,EAChB,SAAqB,EACrB,QAAmB,EACnB,MAAM,GAAG,CAAC;IAEV,MAAM,OAAO,GAAG,IAAI,qCAAiB,CACnC;QACE,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,GAAG;QACX,iBAAiB,EAAE,CAAC;KACrB,EACD,UAAU,EACV,SAAS,EACT,OAAO,EACP,MAAM,EACN,QAAQ,EACR,SAAS,CACV,CAAC;IAEF,MAAM,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,GAC/D,MAAM,OAAO,CAAC,cAAc,CAAC,IAAI,EAAE,sBAAsB,EAAE,SAAS,CAAC,CAAC;IAExE,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,EAAE;QAClE,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,EAAE,EAAE;YACnD,MAAM,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;YAC5C,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE;gBACrD,MAAM,SAAS,GAAG,IAAA,2BAAkB,EAClC,MAAM,CAAC,YAAY,CAAC,IAAI,EACxB,gBAAgB,CACjB,CAAC;gBAEF,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,SAAS,GAAG;oBACnC,QAAQ,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,KAAI,SAAS;oBAC1C,QAAQ,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,QAAQ,KAAI,eAAe;oBAChD,OAAO,EAAE,CAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,OAAO,KAAI,EAAE;oBACjC,WAAW,EAAE,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,WAAW;iBACpC,CAAC;gBAEF,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,YAAY,GAAG,IAAA,qBAAY,EAClD,MAAM,CAAC,YAAY,CAAC,MAAM,EAC1B,OAAO,CACR,CAAC;gBAEF,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,cAAc,GAAG,IAAA,6BAAoB,EAC5D,MAAM,CAAC,aAAa,CACrB,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO;YACL,GAAG,EAAE,OAAO;YACZ,UAAU;YACV,SAAS,EAAE,SAAS,CAAC,OAAO,CAAC;YAC7B,eAAe,EAAE,2BAA2B,CAAC,OAAO,CAAC;SACtD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC;IAC7B,OAAO,GAAG,CAAC;AACb,CAAC,CAAA,CAAC;AArEW,QAAA,mCAAmC,uCAqE9C"}
1
+ {"version":3,"file":"analyzeCookiesUrlsAndFetchResources.js","sourceRoot":"","sources":["../../src/procedures/analyzeCookiesUrlsAndFetchResources.ts"],"names":[],"mappings":"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"}
@@ -34,24 +34,30 @@ const common_1 = require("@google-psat/common");
34
34
  */
35
35
  const analyzeCookiesUrlsAndFetchResources_1 = require("./analyzeCookiesUrlsAndFetchResources");
36
36
  const analyzeCookiesUrlsInBatchesAndFetchResources = (urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, ...args_1) => __awaiter(void 0, [urls_1, Libraries_1, isHeadless_1, delayTime_1, cookieDictionary_1, ...args_1], void 0, function* (urls, Libraries, isHeadless, delayTime, cookieDictionary, batchSize = 3, spinnies, shouldSkipAcceptBanner = false, verbose = false, indent = 4, selectors) {
37
- let report = [];
38
- for (let i = 0; i < urls.length; i += batchSize) {
39
- const start = i;
40
- const end = Math.min(urls.length - 1, i + batchSize - 1);
41
- spinnies &&
42
- indent === 4 &&
43
- spinnies.add(`cookie-batch-spinner${start + 1}-${end + 1}`, {
44
- text: `Analyzing cookies in URLs ${start + 1} - ${end + 1}`,
45
- indent,
46
- });
47
- const urlsWindow = urls.slice(start, end + 1);
48
- const cookieAnalysisAndFetchedResources = yield (0, analyzeCookiesUrlsAndFetchResources_1.analyzeCookiesUrlsAndFetchResources)(urlsWindow, Libraries, isHeadless, delayTime, cookieDictionary, shouldSkipAcceptBanner, verbose, selectors, spinnies);
49
- report = [...report, ...cookieAnalysisAndFetchedResources];
50
- spinnies &&
51
- indent === 4 &&
52
- (0, common_1.removeAndAddNewSpinnerText)(spinnies, `cookie-batch-spinner${start + 1}-${end + 1}`, `Done analyzing cookies in URLs ${start + 1} - ${end + 1}`, indent);
37
+ // eslint-disable-next-line no-useless-catch -- Because we are rethrowing the same error no need to create a new Error instance
38
+ try {
39
+ let report = [];
40
+ for (let i = 0; i < urls.length; i += batchSize) {
41
+ const start = i;
42
+ const end = Math.min(urls.length - 1, i + batchSize - 1);
43
+ spinnies &&
44
+ indent === 4 &&
45
+ spinnies.add(`cookie-batch-spinner${start + 1}-${end + 1}`, {
46
+ text: `Analyzing cookies in URLs ${start + 1} - ${end + 1}`,
47
+ indent,
48
+ });
49
+ const urlsWindow = urls.slice(start, end + 1);
50
+ const cookieAnalysisAndFetchedResources = yield (0, analyzeCookiesUrlsAndFetchResources_1.analyzeCookiesUrlsAndFetchResources)(urlsWindow, Libraries, isHeadless, delayTime, cookieDictionary, shouldSkipAcceptBanner, verbose, urls.length > 1, selectors, spinnies);
51
+ report = [...report, ...cookieAnalysisAndFetchedResources];
52
+ spinnies &&
53
+ indent === 4 &&
54
+ (0, common_1.removeAndAddNewSpinnerText)(spinnies, `cookie-batch-spinner${start + 1}-${end + 1}`, `Done analyzing cookies in URLs ${start + 1} - ${end + 1}`, indent);
55
+ }
56
+ return report;
57
+ }
58
+ catch (error) {
59
+ throw error;
53
60
  }
54
- return report;
55
61
  });
56
62
  exports.analyzeCookiesUrlsInBatchesAndFetchResources = analyzeCookiesUrlsInBatchesAndFetchResources;
57
63
  //# sourceMappingURL=analyzeCookiesUrlsInBatchesAndFetchResources.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"analyzeCookiesUrlsInBatchesAndFetchResources.js","sourceRoot":"","sources":["../../src/procedures/analyzeCookiesUrlsInBatchesAndFetchResources.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;AAEH;;GAEG;AACH,gDAO6B;AAE7B;;GAEG;AACH,+FAA4F;AAErF,MAAM,4CAA4C,GAAG,gFAY1D,EAAE,uHAXF,IAAc,EACd,SAA4B,EAC5B,UAAmB,EACnB,SAAiB,EACjB,gBAAgC,EAChC,SAAS,GAAG,CAAC,EACb,QAAmB,EACnB,sBAAsB,GAAG,KAAK,EAC9B,OAAO,GAAG,KAAK,EACf,MAAM,GAAG,CAAC,EACV,SAAqB;IAErB,IAAI,MAAM,GAeJ,EAAE,CAAC;IAET,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,CAAC,CAAC;QAChB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;QAEzD,QAAQ;YACN,MAAM,KAAK,CAAC;YACZ,QAAQ,CAAC,GAAG,CAAC,uBAAuB,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE;gBAC1D,IAAI,EAAE,6BAA6B,KAAK,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE;gBAC3D,MAAM;aACP,CAAC,CAAC;QAEL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;QAE9C,MAAM,iCAAiC,GACrC,MAAM,IAAA,yEAAmC,EACvC,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,OAAO,EACP,SAAS,EACT,QAAQ,CACT,CAAC;QAEJ,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,iCAAiC,CAAC,CAAC;QAE3D,QAAQ;YACN,MAAM,KAAK,CAAC;YACZ,IAAA,mCAA0B,EACxB,QAAQ,EACR,uBAAuB,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAC7C,kCAAkC,KAAK,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,EAC1D,MAAM,CACP,CAAC;IACN,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC,CAAA,CAAC;AArEW,QAAA,4CAA4C,gDAqEvD"}
1
+ {"version":3,"file":"analyzeCookiesUrlsInBatchesAndFetchResources.js","sourceRoot":"","sources":["../../src/procedures/analyzeCookiesUrlsInBatchesAndFetchResources.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;AAEH;;GAEG;AACH,gDAQ6B;AAE7B;;GAEG;AACH,+FAA4F;AAErF,MAAM,4CAA4C,GAAG,gFAY1D,EAAE,uHAXF,IAAc,EACd,SAA4B,EAC5B,UAAmB,EACnB,SAAiB,EACjB,gBAAgC,EAChC,SAAS,GAAG,CAAC,EACb,QAAmB,EACnB,sBAAsB,GAAG,KAAK,EAC9B,OAAO,GAAG,KAAK,EACf,MAAM,GAAG,CAAC,EACV,SAAqB;IAErB,+HAA+H;IAC/H,IAAI,CAAC;QACH,IAAI,MAAM,GAgBJ,EAAE,CAAC;QAET,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,SAAS,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,CAAC,CAAC;YAChB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,GAAG,CAAC,CAAC,CAAC;YAEzD,QAAQ;gBACN,MAAM,KAAK,CAAC;gBACZ,QAAQ,CAAC,GAAG,CAAC,uBAAuB,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE;oBAC1D,IAAI,EAAE,6BAA6B,KAAK,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE;oBAC3D,MAAM;iBACP,CAAC,CAAC;YAEL,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;YAE9C,MAAM,iCAAiC,GACrC,MAAM,IAAA,yEAAmC,EACvC,UAAU,EACV,SAAS,EACT,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,sBAAsB,EACtB,OAAO,EACP,IAAI,CAAC,MAAM,GAAG,CAAC,EACf,SAAS,EACT,QAAQ,CACT,CAAC;YAEJ,MAAM,GAAG,CAAC,GAAG,MAAM,EAAE,GAAG,iCAAiC,CAAC,CAAC;YAE3D,QAAQ;gBACN,MAAM,KAAK,CAAC;gBACZ,IAAA,mCAA0B,EACxB,QAAQ,EACR,uBAAuB,KAAK,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAC7C,kCAAkC,KAAK,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,EAAE,EAC1D,MAAM,CACP,CAAC;QACN,CAAC;QAED,OAAO,MAAM,CAAC;IAChB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC,CAAA,CAAC;AA5EW,QAAA,4CAA4C,gDA4EvD"}
@@ -2,7 +2,7 @@
2
2
  * External dependencies.
3
3
  */
4
4
  import { Browser, HTTPResponse, Page, Protocol } from 'puppeteer';
5
- import { type ScriptTagUnderCheck, type LibraryData, type LibraryMatchers, type Selectors } from '@google-psat/common';
5
+ import { type ScriptTagUnderCheck, type LibraryData, type LibraryMatchers, type SingleURLError, type Selectors } from '@google-psat/common';
6
6
  /**
7
7
  * Internal dependencies.
8
8
  */
@@ -13,22 +13,25 @@ export declare class BrowserManagement {
13
13
  isHeadless: boolean;
14
14
  pageWaitTime: number;
15
15
  pages: Record<string, Page>;
16
+ erroredOutUrls: Record<string, SingleURLError[]>;
16
17
  pageFrames: Record<string, Record<string, string>>;
17
18
  pageResponses: Record<string, Record<string, ResponseData>>;
18
19
  pageRequests: Record<string, Record<string, RequestData>>;
19
20
  pageResourcesMaps: Record<string, Record<string, ScriptTagUnderCheck>>;
20
21
  shouldLogDebug: boolean;
21
22
  spinnies: Spinnies | undefined;
23
+ isSiteMap: boolean;
22
24
  indent: number;
23
25
  selectors: Selectors | undefined;
24
- constructor(viewportConfig: ViewportConfig, isHeadless: boolean, pageWaitTime: number, shouldLogDebug: boolean, indent: number, spinnies?: Spinnies, selectors?: Selectors);
25
- debugLog(msg: any): void;
26
+ constructor(viewportConfig: ViewportConfig, isHeadless: boolean, pageWaitTime: number, shouldLogDebug: boolean, indent: number, isSiteMap: boolean, spinnies?: Spinnies, selectors?: Selectors);
27
+ debugLog(msg: string, shouldShowWarning?: boolean): void;
26
28
  initializeBrowser(enable3pCookiePhaseout: boolean): Promise<void>;
27
29
  clickOnButtonUsingCMPSelectors(page: Page): Promise<boolean>;
28
30
  clickOnGDPRUsingTextSelectors(page: Page, textSelectors: string[]): Promise<boolean>;
29
31
  clickOnAcceptBanner(url: string): Promise<void>;
30
32
  useSelectorsToSelectGDPRBanner(page: Page): Promise<boolean>;
31
33
  openPage(): Promise<Page>;
34
+ pushErrors(url: string, objectToPushed: SingleURLError): void;
32
35
  navigateToPage(url: string): Promise<void>;
33
36
  pageScroll(url: string): Promise<void>;
34
37
  responseEventListener(pageId: string, response: HTTPResponse): void;
@@ -54,6 +57,7 @@ export declare class BrowserManagement {
54
57
  consolidatedDOMQueryMatches: {
55
58
  [key: string]: LibraryData;
56
59
  };
60
+ erroredOutUrls: Record<string, SingleURLError[]>;
57
61
  }>;
58
62
  deinitialize(): Promise<void>;
59
63
  }
@@ -2,9 +2,10 @@
2
2
  * External dependencies.
3
3
  */
4
4
  import { type CookieDatabase, type LibraryMatchers, type Selectors } from '@google-psat/common';
5
- export declare const analyzeCookiesUrlsAndFetchResources: (urls: string[], Libraries: LibraryMatchers[], isHeadless: boolean, delayTime: number, cookieDictionary: CookieDatabase, shouldSkipAcceptBanner: boolean, verbose: boolean, selectors?: Selectors, spinnies?: Spinnies, indent?: number) => Promise<{
5
+ export declare const analyzeCookiesUrlsAndFetchResources: (urls: string[], Libraries: LibraryMatchers[], isHeadless: boolean, delayTime: number, cookieDictionary: CookieDatabase, shouldSkipAcceptBanner: boolean, verbose: boolean, isSitemap: boolean, selectors?: Selectors, spinnies?: Spinnies, indent?: number) => Promise<{
6
6
  url: string;
7
7
  cookieData: import("../browserManagement/types").CookieDataFromNetwork;
8
8
  resources: any;
9
+ erroredOutUrls: Record<string, import("@google-psat/common").SingleURLError[]>;
9
10
  domQueryMatches: import("@google-psat/common").LibraryData;
10
11
  }[]>;
@@ -1,7 +1,7 @@
1
1
  /**
2
2
  * External dependencies.
3
3
  */
4
- import { type CookieData, type CookieDatabase, LibraryData, type LibraryMatchers, type Selectors } from '@google-psat/common';
4
+ import { type CookieData, type CookieDatabase, LibraryData, type LibraryMatchers, type Selectors, type SingleURLError } from '@google-psat/common';
5
5
  export declare const analyzeCookiesUrlsInBatchesAndFetchResources: (urls: string[], Libraries: LibraryMatchers[], isHeadless: boolean, delayTime: number, cookieDictionary: CookieDatabase, batchSize?: number, spinnies?: Spinnies, shouldSkipAcceptBanner?: boolean, verbose?: boolean, indent?: number, selectors?: Selectors) => Promise<{
6
6
  url: string;
7
7
  cookieData: {
@@ -17,4 +17,5 @@ export declare const analyzeCookiesUrlsInBatchesAndFetchResources: (urls: string
17
17
  type?: string;
18
18
  }[];
19
19
  domQueryMatches: LibraryData;
20
+ erroredOutUrls: Record<string, SingleURLError[]>;
20
21
  }[]>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google-psat/analysis-utils",
3
- "version": "0.11.0",
3
+ "version": "0.12.0",
4
4
  "description": "A package for CLI analysis",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist-types/index.d.ts",