@google-psat/common 0.10.2 → 0.11.0-1

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/dist/index.js CHANGED
@@ -32,7 +32,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
32
32
  return (mod && mod.__esModule) ? mod : { "default": mod };
33
33
  };
34
34
  Object.defineProperty(exports, "__esModule", { value: true });
35
- exports.getLegendDescription = exports.deriveBlockingStatus = exports.resolveWithTimeout = exports.getCurrentDateAndTime = exports.mergeDeep = exports.delay = exports.addUTMParams = exports.getValueByKey = exports.executeTaskInDevToolWorker = exports.getDevToolWorker = exports.noop = exports.extractUrl = exports.getDomainFromUrl = exports.parseRequestWillBeSentExtraInfo = exports.parseResponseReceivedExtraInfo = exports.fetchLocalData = exports.parseUrl = exports.sanitizeCsvRecord = exports.calculateEffectiveExpiryDate = exports.removeAndAddNewSpinnerText = exports.emptyAnalytics = exports.findAnalyticsMatch = exports.getCookieKey = exports.filterCookiesByFrame = exports.filterFramesWithCookies = exports.isFirstParty = void 0;
35
+ exports.reshapeCookies = exports.extractReportData = exports.extractCookies = exports.getLegendDescription = exports.deriveBlockingStatus = exports.resolveWithTimeout = exports.getCurrentDateAndTime = exports.mergeDeep = exports.delay = exports.addUTMParams = exports.getValueByKey = exports.executeTaskInDevToolWorker = exports.getDevToolWorker = exports.noop = exports.extractUrl = exports.getDomainFromUrl = exports.parseRequestWillBeSentExtraInfo = exports.parseResponseReceivedExtraInfo = exports.fetchLocalData = exports.parseUrl = exports.sanitizeCsvRecord = exports.calculateEffectiveExpiryDate = exports.removeAndAddNewSpinnerText = exports.emptyAnalytics = exports.findAnalyticsMatch = exports.getCookieKey = exports.filterCookiesByFrame = exports.filterFramesWithCookies = exports.isFirstParty = void 0;
36
36
  var isFirstParty_1 = require("./utils/isFirstParty");
37
37
  Object.defineProperty(exports, "isFirstParty", { enumerable: true, get: function () { return __importDefault(isFirstParty_1).default; } });
38
38
  var filterFramesWithCookies_1 = require("./utils/filterFramesWithCookies");
@@ -86,6 +86,12 @@ var deriveBlockingStatus_1 = require("./utils/deriveBlockingStatus");
86
86
  Object.defineProperty(exports, "deriveBlockingStatus", { enumerable: true, get: function () { return __importDefault(deriveBlockingStatus_1).default; } });
87
87
  var getLegendDescription_1 = require("./utils/getLegendDescription");
88
88
  Object.defineProperty(exports, "getLegendDescription", { enumerable: true, get: function () { return __importDefault(getLegendDescription_1).default; } });
89
+ var extractCookies_1 = require("./utils/extractCookies");
90
+ Object.defineProperty(exports, "extractCookies", { enumerable: true, get: function () { return __importDefault(extractCookies_1).default; } });
91
+ var extractReportData_1 = require("./utils/extractReportData");
92
+ Object.defineProperty(exports, "extractReportData", { enumerable: true, get: function () { return __importDefault(extractReportData_1).default; } });
93
+ var reshapeCookies_1 = require("./utils/reshapeCookies");
94
+ Object.defineProperty(exports, "reshapeCookies", { enumerable: true, get: function () { return __importDefault(reshapeCookies_1).default; } });
89
95
  __exportStar(require("./worker/enums"), exports);
90
96
  __exportStar(require("./utils/generateReports"), exports);
91
97
  __exportStar(require("./cookies.types"), exports);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;AAEH,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,2EAAqF;AAA5E,mJAAA,OAAO,OAA2B;AAC3C,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,iEAGoC;AAFlC,yIAAA,OAAO,OAAsB;AAC7B,oHAAA,cAAc,OAAA;AAEhB,iFAA2F;AAAlF,yJAAA,OAAO,OAA8B;AAC9C,qFAA+F;AAAtF,6JAAA,OAAO,OAAgC;AAChD,+DAAyE;AAAhE,uIAAA,OAAO,OAAqB;AACrC,6CAA4C;AAAnC,oGAAA,QAAQ,OAAA;AACjB,yDAAmE;AAA1D,iIAAA,OAAO,OAAkB;AAClC,yCAAuB;AACvB,yFAAmG;AAA1F,iKAAA,OAAO,OAAkC;AAClD,2FAAqG;AAA5F,mKAAA,OAAO,OAAmC;AACnD,6DAAuE;AAA9D,qIAAA,OAAO,OAAoB;AACpC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,qCAA+C;AAAtC,6GAAA,OAAO,OAAQ;AACxB,wDAAqE;AAA5D,kIAAA,OAAO,OAAoB;AACpC,kFAA4F;AAAnF,yJAAA,OAAO,OAA8B;AAC9C,uDAAiE;AAAxD,+HAAA,OAAO,OAAiB;AACjC,0DAAwC;AACxC,qDAAgF;AAAvE,6HAAA,OAAO,OAAgB;AAChC,uCAAiD;AAAxC,+GAAA,OAAO,OAAS;AACzB,+CAAyD;AAAhD,uHAAA,OAAO,OAAa;AAC7B,uEAAiF;AAAxE,+IAAA,OAAO,OAAyB;AACzC,iEAA2E;AAAlE,yIAAA,OAAO,OAAsB;AACtC,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,iDAA+B;AAC/B,0DAAwC;AACxC,kDAAgC;AAChC,2DAAyC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;;;;;;;;;;;;;;;AAEH,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,2EAAqF;AAA5E,mJAAA,OAAO,OAA2B;AAC3C,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,qDAA+D;AAAtD,6HAAA,OAAO,OAAgB;AAChC,iEAGoC;AAFlC,yIAAA,OAAO,OAAsB;AAC7B,oHAAA,cAAc,OAAA;AAEhB,iFAA2F;AAAlF,yJAAA,OAAO,OAA8B;AAC9C,qFAA+F;AAAtF,6JAAA,OAAO,OAAgC;AAChD,+DAAyE;AAAhE,uIAAA,OAAO,OAAqB;AACrC,6CAA4C;AAAnC,oGAAA,QAAQ,OAAA;AACjB,yDAAmE;AAA1D,iIAAA,OAAO,OAAkB;AAClC,yCAAuB;AACvB,yFAAmG;AAA1F,iKAAA,OAAO,OAAkC;AAClD,2FAAqG;AAA5F,mKAAA,OAAO,OAAmC;AACnD,6DAAuE;AAA9D,qIAAA,OAAO,OAAoB;AACpC,iDAA2D;AAAlD,yHAAA,OAAO,OAAc;AAC9B,qCAA+C;AAAtC,6GAAA,OAAO,OAAQ;AACxB,wDAAqE;AAA5D,kIAAA,OAAO,OAAoB;AACpC,kFAA4F;AAAnF,yJAAA,OAAO,OAA8B;AAC9C,uDAAiE;AAAxD,+HAAA,OAAO,OAAiB;AACjC,0DAAwC;AACxC,qDAAgF;AAAvE,6HAAA,OAAO,OAAgB;AAChC,uCAAiD;AAAxC,+GAAA,OAAO,OAAS;AACzB,+CAAyD;AAAhD,uHAAA,OAAO,OAAa;AAC7B,uEAAiF;AAAxE,+IAAA,OAAO,OAAyB;AACzC,iEAA2E;AAAlE,yIAAA,OAAO,OAAsB;AACtC,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,qEAA+E;AAAtE,6IAAA,OAAO,OAAwB;AACxC,yDAAmE;AAA1D,iIAAA,OAAO,OAAkB;AAClC,+DAAyE;AAAhE,uIAAA,OAAO,OAAqB;AACrC,yDAAmE;AAA1D,iIAAA,OAAO,OAAkB;AAClC,iDAA+B;AAC/B,0DAAwC;AACxC,kDAAgC;AAChC,2DAAyC"}
@@ -0,0 +1,323 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.tempMultiPageData = exports.tempSinglePageData = exports.mockData2 = exports.mockData1 = void 0;
19
+ exports.mockData1 = {
20
+ pageUrl: 'https://edition.cnn.com/',
21
+ cookieData: {
22
+ 'https://edition.cnn.com': {
23
+ frameCookies: {
24
+ 'aniC:.aniview.com:/': {
25
+ parsedCookie: {
26
+ name: 'aniC',
27
+ value: '1701171490978-172028097154-001000-014-006837',
28
+ domain: '.aniview.com',
29
+ path: '/',
30
+ expires: '2023-12-18T04:40:15.773Z',
31
+ httponly: true,
32
+ secure: true,
33
+ samesite: 'None',
34
+ partitionKey: '',
35
+ },
36
+ analytics: {
37
+ platform: 'Unknown',
38
+ category: 'Uncategorized',
39
+ GDPR: '',
40
+ description: '',
41
+ },
42
+ isBlocked: true,
43
+ isFirstParty: false,
44
+ url: '',
45
+ },
46
+ '1_C_78:.aniview.com:/': {
47
+ parsedCookie: {
48
+ name: '1_C_78',
49
+ value: 'y-VtIM9z9E2uLA7R8YJPsMjYl829FyKbka~A',
50
+ domain: '.aniview.com',
51
+ path: '/',
52
+ expires: '2023-12-18T04:25:51.777Z',
53
+ httponly: false,
54
+ secure: true,
55
+ samesite: 'None',
56
+ partitionKey: '',
57
+ },
58
+ analytics: {
59
+ platform: 'Unknown',
60
+ category: 'Uncategorized',
61
+ GDPR: '',
62
+ description: '',
63
+ },
64
+ url: '',
65
+ isBlocked: true,
66
+ isFirstParty: false,
67
+ },
68
+ },
69
+ },
70
+ 'https://s.amazon-adsystem.com': {
71
+ frameCookies: {
72
+ 'ad-id:.amazon-adsystem.com:/': {
73
+ parsedCookie: {
74
+ name: 'ad-id',
75
+ value: 'A7I1e9XiFEw6tE_FYubHJnE|t',
76
+ domain: '.amazon-adsystem.com',
77
+ path: '/',
78
+ expires: '2023-12-18T09:22:30.184Z',
79
+ httponly: true,
80
+ partitionKey: '',
81
+ secure: true,
82
+ samesite: 'None',
83
+ },
84
+ analytics: {
85
+ platform: 'Amazon',
86
+ category: 'Marketing',
87
+ GDPR: 'https://amazon.com/privacy/',
88
+ description: 'Clickthroughs to Amazon websites: Noting how the user got to Amazon via this website',
89
+ },
90
+ url: '',
91
+ isBlocked: true,
92
+ isFirstParty: false,
93
+ },
94
+ },
95
+ },
96
+ },
97
+ libraryMatches: {},
98
+ };
99
+ exports.mockData2 = {
100
+ pageUrl: 'https://edition.cnn.com/',
101
+ cookieData: {
102
+ 'https://edition.cnn.com': {
103
+ frameCookies: {
104
+ 'aniC:.aniview.com:/': {
105
+ parsedCookie: {
106
+ name: 'aniC',
107
+ value: 'value',
108
+ domain: '.aniview.com',
109
+ path: '/',
110
+ expires: '2023-12-18T04:40:15.773Z',
111
+ httponly: true,
112
+ partitionKey: '',
113
+ secure: true,
114
+ samesite: 'None',
115
+ },
116
+ analytics: {
117
+ platform: 'Unknown',
118
+ category: 'Uncategorized',
119
+ GDPR: '',
120
+ description: '',
121
+ },
122
+ url: '',
123
+ isBlocked: true,
124
+ isFirstParty: false,
125
+ },
126
+ '1_C_78:.aniview.com:/': {
127
+ parsedCookie: {
128
+ name: '1_C_78',
129
+ value: 'value2',
130
+ domain: '.aniview.com',
131
+ path: '/',
132
+ expires: '2023-12-18T04:25:51.777Z',
133
+ httponly: false,
134
+ partitionKey: '',
135
+ secure: true,
136
+ samesite: 'None',
137
+ },
138
+ analytics: {
139
+ platform: 'Unknown',
140
+ category: 'Uncategorized',
141
+ GDPR: '',
142
+ description: '',
143
+ },
144
+ url: '',
145
+ isBlocked: true,
146
+ isFirstParty: false,
147
+ },
148
+ 'usprivacy:.cnn.com:/': {
149
+ parsedCookie: {
150
+ name: 'usprivacy',
151
+ value: 'val',
152
+ domain: '.cnn.com',
153
+ path: '/',
154
+ expires: '2023-11-28T11:38:36.290Z',
155
+ httponly: false,
156
+ partitionKey: '',
157
+ secure: true,
158
+ samesite: 'None',
159
+ },
160
+ analytics: {
161
+ platform: 'ShareThis',
162
+ category: 'Functional',
163
+ GDPR: 'https://sharethis.com/privacy/',
164
+ description: 'ShareThis reads if the usprivacy cookie is present in the publisher domain.',
165
+ },
166
+ url: '',
167
+ isBlocked: false,
168
+ isFirstParty: true,
169
+ },
170
+ },
171
+ },
172
+ 'https://s.amazon-adsystem.com': {
173
+ frameCookies: {
174
+ 'ad-id:.amazon-adsystem.com:/': {
175
+ parsedCookie: {
176
+ name: 'ad-id',
177
+ value: 'value3',
178
+ domain: '.amazon-adsystem.com',
179
+ path: '/',
180
+ expires: '2023-12-18T09:22:30.184Z',
181
+ httponly: true,
182
+ partitionKey: '',
183
+ secure: true,
184
+ samesite: 'None',
185
+ },
186
+ analytics: {
187
+ platform: 'Amazon',
188
+ category: 'Marketing',
189
+ GDPR: 'https://amazon.com/privacy/',
190
+ description: 'Clickthroughs to Amazon websites: Noting how the user got to Amazon via this website',
191
+ },
192
+ url: '',
193
+ isBlocked: true,
194
+ isFirstParty: false,
195
+ },
196
+ '1_C_78:.aniview.com:/': {
197
+ parsedCookie: {
198
+ name: '1_C_78',
199
+ value: 'y-VtIM9z9E2uLA7R8YJPsMjYl829FyKbka~A',
200
+ domain: '.aniview.com',
201
+ path: '/',
202
+ expires: '2023-12-18T04:25:51.777Z',
203
+ httponly: false,
204
+ partitionKey: '',
205
+ secure: true,
206
+ samesite: 'None',
207
+ },
208
+ analytics: {
209
+ platform: 'Unknown',
210
+ category: 'Uncategorized',
211
+ GDPR: '',
212
+ description: '',
213
+ },
214
+ url: '',
215
+ isBlocked: true,
216
+ isFirstParty: false,
217
+ },
218
+ },
219
+ },
220
+ },
221
+ libraryMatches: {},
222
+ };
223
+ exports.tempSinglePageData = {
224
+ pageUrl: 'https://edition.cnn.com/sitemaps/sitemap-section.xml',
225
+ libraryMatches: {},
226
+ cookieData: {
227
+ 'https://edition.cnn.com': {
228
+ frameCookies: {
229
+ 'countryCode:.cnn.com:/': {
230
+ parsedCookie: {
231
+ name: 'countryCode',
232
+ domain: '.cnn.com',
233
+ path: '/',
234
+ value: 'IN',
235
+ samesite: 'None',
236
+ expires: 'Session',
237
+ httponly: false,
238
+ secure: true,
239
+ partitionKey: '',
240
+ },
241
+ analytics: {
242
+ platform: 'Unknown',
243
+ category: 'Uncategorized',
244
+ GDPR: '',
245
+ description: '',
246
+ },
247
+ url: '',
248
+ isBlocked: false,
249
+ isFirstParty: true,
250
+ },
251
+ },
252
+ },
253
+ },
254
+ };
255
+ exports.tempMultiPageData = [
256
+ {
257
+ libraryMatches: {},
258
+ pageUrl: 'https://www.cnn.com/index.html',
259
+ cookieData: {
260
+ 'https://edition.cnn.com': {
261
+ frameCookies: {
262
+ 'countryCode:.cnn.com:/': {
263
+ parsedCookie: {
264
+ name: 'countryCode',
265
+ domain: '.cnn.com',
266
+ path: '/',
267
+ value: 'IN',
268
+ samesite: 'None',
269
+ expires: 'Session',
270
+ httponly: false,
271
+ secure: true,
272
+ partitionKey: '',
273
+ },
274
+ analytics: {
275
+ platform: 'Unknown',
276
+ category: 'Uncategorized',
277
+ GDPR: '',
278
+ description: '',
279
+ },
280
+ url: '',
281
+ isBlocked: false,
282
+ blockedReasons: ['ThirdPartyPhaseout'],
283
+ isFirstParty: true,
284
+ },
285
+ },
286
+ },
287
+ },
288
+ },
289
+ {
290
+ libraryMatches: {},
291
+ pageUrl: 'https://edition.cnn.com/index.html',
292
+ cookieData: {
293
+ 'https://edition.cnn.com': {
294
+ frameCookies: {
295
+ 'countryCode:.cnn.com:/': {
296
+ parsedCookie: {
297
+ name: 'countryCode',
298
+ domain: '.cnn.com',
299
+ path: '/',
300
+ value: 'IN',
301
+ samesite: 'None',
302
+ expires: 'Session',
303
+ httponly: false,
304
+ secure: true,
305
+ partitionKey: '',
306
+ },
307
+ analytics: {
308
+ platform: 'Unknown',
309
+ category: 'Uncategorized',
310
+ GDPR: '',
311
+ description: '',
312
+ },
313
+ url: '',
314
+ isBlocked: false,
315
+ blockedReasons: ['ThirdPartyPhaseout'],
316
+ isFirstParty: true,
317
+ },
318
+ },
319
+ },
320
+ },
321
+ },
322
+ ];
323
+ //# sourceMappingURL=data.mock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data.mock.js","sourceRoot":"","sources":["../../src/test-utils/data.mock.ts"],"names":[],"mappings":"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"}
@@ -24,7 +24,9 @@ const addUTMParams = (url, medium = 'extension') => {
24
24
  if (
25
25
  //@ts-ignore
26
26
  !(globalThis === null || globalThis === void 0 ? void 0 : globalThis.WorkerNavigator) &&
27
- !((_c = (_b = (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.chrome) === null || _a === void 0 ? void 0 : _a.devtools) === null || _b === void 0 ? void 0 : _b.inspectedWindow) === null || _c === void 0 ? void 0 : _c.tabId)) {
27
+ !((_c = (_b = (_a = globalThis === null || globalThis === void 0 ? void 0 : globalThis.chrome) === null || _a === void 0 ? void 0 : _a.devtools) === null || _b === void 0 ? void 0 : _b.inspectedWindow) === null || _c === void 0 ? void 0 : _c.tabId) &&
28
+ // @ts-ignore Global variable.
29
+ !(globalThis === null || globalThis === void 0 ? void 0 : globalThis.PSAT_EXTENSION)) {
28
30
  //@ts-ignore
29
31
  calculatedMedium = (_e = (_d = globalThis === null || globalThis === void 0 ? void 0 : globalThis.PSAT_DATA) === null || _d === void 0 ? void 0 : _d.source) !== null && _e !== void 0 ? _e : 'cli';
30
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"addUTMParams.js","sourceRoot":"","sources":["../../src/utils/addUTMParams.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAIH,MAAM,YAAY,GAAG,CACnB,GAAW,EACX,SAAqB,WAAW,EACxB,EAAE;;IACV,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,gBAAgB,GAAG,MAAM,CAAC;IAC9B;IACE,YAAY;IACZ,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,eAAe,CAAA;QAC5B,CAAC,CAAA,MAAA,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,QAAQ,0CAAE,eAAe,0CAAE,KAAK,CAAA,EACrD,CAAC;QACD,YAAY;QACZ,gBAAgB,GAAG,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,SAAS,0CAAE,MAAM,mCAAI,KAAK,CAAC;IAC5D,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEjD,OAAO,GAAG,IAAI,GAAG,SAAS,8BAA8B,gBAAgB,GAAG,IAAI,EAAE,CAAC;AACpF,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"addUTMParams.js","sourceRoot":"","sources":["../../src/utils/addUTMParams.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;AAIH,MAAM,YAAY,GAAG,CACnB,GAAW,EACX,SAAqB,WAAW,EACxB,EAAE;;IACV,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,OAAO,GAAG,CAAC;IACb,CAAC;IAED,IAAI,gBAAgB,GAAG,MAAM,CAAC;IAC9B;IACE,YAAY;IACZ,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,eAAe,CAAA;QAC5B,CAAC,CAAA,MAAA,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,MAAM,0CAAE,QAAQ,0CAAE,eAAe,0CAAE,KAAK,CAAA;QACrD,8BAA8B;QAC9B,CAAC,CAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,cAAc,CAAA,EAC3B,CAAC;QACD,YAAY;QACZ,gBAAgB,GAAG,MAAA,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,SAAS,0CAAE,MAAM,mCAAI,KAAK,CAAC;IAC5D,CAAC;IAED,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAClD,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;IAEjD,OAAO,GAAG,IAAI,GAAG,SAAS,8BAA8B,gBAAgB,GAAG,IAAI,EAAE,CAAC;AACpF,CAAC,CAAC;AAEF,kBAAe,YAAY,CAAC"}
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const calculateEffectiveExpiryDate_1 = __importDefault(require("./calculateEffectiveExpiryDate"));
22
+ const extractCookies = (cookieData, pageUrl, shouldAddUrlToKey = false) => {
23
+ return Object.entries(cookieData).reduce((acc, [frame, _data]) => {
24
+ acc[frame] = Object.fromEntries(Object.entries(_data.frameCookies).map(([key, cookie]) => [
25
+ key + (shouldAddUrlToKey ? '' : pageUrl),
26
+ Object.assign(Object.assign({}, cookie), { pageUrl, parsedCookie: Object.assign(Object.assign({}, cookie.parsedCookie), { expires: (0, calculateEffectiveExpiryDate_1.default)(cookie.parsedCookie.expires) }) }),
27
+ ]));
28
+ return acc;
29
+ }, {});
30
+ };
31
+ exports.default = extractCookies;
32
+ //# sourceMappingURL=extractCookies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractCookies.js","sourceRoot":"","sources":["../../src/utils/extractCookies.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;AAMH,kGAA0E;AAE1E,MAAM,cAAc,GAAG,CACrB,UAAsC,EACtC,OAAe,EACf,iBAAiB,GAAG,KAAK,EACzB,EAAE;IACF,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,MAAM,CACtC,CAAC,GAAG,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE;QACtB,GAAG,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,WAAW,CAC7B,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;YACxD,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC;4CAEnC,MAAM,KACT,OAAO,EACP,YAAY,kCACP,MAAM,CAAC,YAAY,KACtB,OAAO,EAAE,IAAA,sCAA4B,EACnC,MAAM,CAAC,YAAY,CAAC,OAAO,CAC5B;SAGN,CAAC,CACH,CAAC;QAEF,OAAO,GAAG,CAAC;IACb,CAAC,EACD,EAAE,CACH,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,cAAc,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ const extractCookies_1 = __importDefault(require("./extractCookies"));
22
+ const extractReportData = (data) => {
23
+ const landingPageCookies = {};
24
+ const consolidatedLibraryMatches = {};
25
+ data.forEach(({ cookieData, pageUrl, libraryMatches }) => {
26
+ formatCookieData((0, extractCookies_1.default)(cookieData, pageUrl, true), landingPageCookies);
27
+ consolidatedLibraryMatches[pageUrl] = libraryMatches;
28
+ });
29
+ return {
30
+ landingPageCookies,
31
+ consolidatedLibraryMatches,
32
+ };
33
+ };
34
+ const formatCookieData = (cookieData, store) => {
35
+ Object.entries(cookieData).forEach(([frame, _cData]) => {
36
+ if (!store[frame]) {
37
+ store[frame] = {};
38
+ }
39
+ Object.entries(_cData).forEach(([key, cookie]) => {
40
+ var _a, _b;
41
+ store[frame][key] = Object.assign(Object.assign({}, cookie), { isBlocked: ((_a = store[frame][key]) === null || _a === void 0 ? void 0 : _a.isBlocked) || cookie.isBlocked, blockedReasons: [
42
+ ...new Set([
43
+ ...(((_b = store[frame][key]) === null || _b === void 0 ? void 0 : _b.blockedReasons) || []),
44
+ ...(cookie.blockedReasons || []),
45
+ ]),
46
+ ] });
47
+ });
48
+ });
49
+ };
50
+ exports.default = extractReportData;
51
+ //# sourceMappingURL=extractReportData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"extractReportData.js","sourceRoot":"","sources":["../../src/utils/extractReportData.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;AAOH,sEAA8C;AAE9C,MAAM,iBAAiB,GAAG,CAAC,IAAoB,EAAE,EAAE;IACjD,MAAM,kBAAkB,GAAG,EAAE,CAAC;IAC9B,MAAM,0BAA0B,GAAmC,EAAE,CAAC;IAEtE,IAAI,CAAC,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,EAAE,EAAE,EAAE;QACvD,gBAAgB,CACd,IAAA,wBAAc,EAAC,UAAU,EAAE,OAAO,EAAE,IAAI,CAAC,EACzC,kBAAkB,CACnB,CAAC;QAEF,0BAA0B,CAAC,OAAO,CAAC,GAAG,cAAc,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,OAAO;QACL,kBAAkB;QAClB,0BAA0B;KAC3B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,UAAkC,EAClC,KAA0B,EAC1B,EAAE;IACF,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,EAAE,MAAM,CAAC,EAAE,EAAE;QACrD,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAClB,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QACpB,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE;;YAC/C,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,mCACZ,MAAM,KACT,SAAS,EAAE,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,0CAAE,SAAS,KAAI,MAAM,CAAC,SAAS,EAC3D,cAAc,EAAE;oBACd,GAAG,IAAI,GAAG,CAAC;wBACT,GAAG,CAAC,CAAA,MAAA,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,0CAAE,cAAc,KAAI,EAAE,CAAC;wBAC5C,GAAG,CAAC,MAAM,CAAC,cAAc,IAAI,EAAE,CAAC;qBACjC,CAAC;iBACH,GACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,kBAAe,iBAAiB,CAAC"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ /*
7
+ * Copyright 2023 Google LLC
8
+ *
9
+ * Licensed under the Apache License, Version 2.0 (the "License");
10
+ * you may not use this file except in compliance with the License.
11
+ * You may obtain a copy of the License at
12
+ *
13
+ * https://www.apache.org/licenses/LICENSE-2.0
14
+ *
15
+ * Unless required by applicable law or agreed to in writing, software
16
+ * distributed under the License is distributed on an "AS IS" BASIS,
17
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
+ * See the License for the specific language governing permissions and
19
+ * limitations under the License.
20
+ */
21
+ /**
22
+ * External dependencies.
23
+ */
24
+ const i18n_1 = require("@google-psat/i18n");
25
+ const extractReportData_1 = __importDefault(require("../extractReportData"));
26
+ const reshapeCookies_1 = __importDefault(require("../reshapeCookies"));
27
+ const generateRootSummaryDataCSV = (siteMapAnalysisData) => {
28
+ const extractedData = (0, reshapeCookies_1.default)((0, extractReportData_1.default)(siteMapAnalysisData).landingPageCookies);
29
+ let totalFirstPartyCookies = 0;
30
+ let totalThirdPartyCookies = 0;
31
+ let analyticsCookies = 0;
32
+ let functionalCookies = 0;
33
+ let marketingCookies = 0;
34
+ let uncategorisedCookies = 0;
35
+ let cookiesWithIssues = 0;
36
+ let analyticsCookiesWithIssues = 0;
37
+ let functionalCookiesWithIssues = 0;
38
+ let marketingCookiesWithIssues = 0;
39
+ let uncategorisedCookiesWithIssues = 0;
40
+ let totalCookies = 0;
41
+ // eslint-disable-next-line complexity
42
+ Object.keys(extractedData).forEach((cookieKey) => {
43
+ var _a, _b, _c, _d, _e;
44
+ const cookie = extractedData[cookieKey];
45
+ if (!cookie.analytics) {
46
+ return;
47
+ }
48
+ if (cookie.isFirstParty) {
49
+ totalFirstPartyCookies += 1;
50
+ }
51
+ else {
52
+ totalThirdPartyCookies += 1;
53
+ }
54
+ if (cookie.isBlocked ||
55
+ (cookie.blockedReasons && ((_a = cookie.blockedReasons) === null || _a === void 0 ? void 0 : _a.length) > 0)) {
56
+ cookiesWithIssues += 1;
57
+ }
58
+ switch (cookie.analytics.category) {
59
+ case 'Analytics':
60
+ analyticsCookies += 1;
61
+ if (cookie.isBlocked ||
62
+ (cookie.blockedReasons && ((_b = cookie.blockedReasons) === null || _b === void 0 ? void 0 : _b.length) > 0)) {
63
+ analyticsCookiesWithIssues += 1;
64
+ }
65
+ break;
66
+ case 'Functional':
67
+ functionalCookies += 1;
68
+ if (cookie.isBlocked ||
69
+ (cookie.blockedReasons && ((_c = cookie.blockedReasons) === null || _c === void 0 ? void 0 : _c.length) > 0)) {
70
+ functionalCookiesWithIssues += 1;
71
+ }
72
+ break;
73
+ case 'Marketing':
74
+ marketingCookies += 1;
75
+ if (cookie.isBlocked ||
76
+ (cookie.blockedReasons && ((_d = cookie.blockedReasons) === null || _d === void 0 ? void 0 : _d.length) > 0)) {
77
+ marketingCookiesWithIssues += 1;
78
+ }
79
+ break;
80
+ case 'Uncategorized':
81
+ uncategorisedCookies += 1;
82
+ if (cookie.isBlocked ||
83
+ (cookie.blockedReasons && ((_e = cookie.blockedReasons) === null || _e === void 0 ? void 0 : _e.length) > 0)) {
84
+ uncategorisedCookiesWithIssues += 1;
85
+ }
86
+ break;
87
+ default:
88
+ break;
89
+ }
90
+ totalCookies += 1;
91
+ });
92
+ const summary = {
93
+ [i18n_1.I18n.getMessage('totalCookies')]: totalCookies,
94
+ [i18n_1.I18n.getMessage('totalFirstPartyCookies')]: totalFirstPartyCookies,
95
+ [i18n_1.I18n.getMessage('totalThirdPartyCookies')]: totalThirdPartyCookies,
96
+ [i18n_1.I18n.getMessage('analyticsCookies')]: analyticsCookies,
97
+ [i18n_1.I18n.getMessage('functionalCookies')]: functionalCookies,
98
+ [i18n_1.I18n.getMessage('marketingCookies')]: marketingCookies,
99
+ [i18n_1.I18n.getMessage('uncategorizedCookies')]: uncategorisedCookies,
100
+ [i18n_1.I18n.getMessage('cookiesWithIssues')]: cookiesWithIssues,
101
+ [i18n_1.I18n.getMessage('analyticsCookiesWithIssues')]: analyticsCookiesWithIssues,
102
+ [i18n_1.I18n.getMessage('functionalCookiesWithIssues')]: functionalCookiesWithIssues,
103
+ [i18n_1.I18n.getMessage('marketingCookiesWithIssues')]: marketingCookiesWithIssues,
104
+ [i18n_1.I18n.getMessage('uncategorizedCookiesWithIssues')]: uncategorisedCookiesWithIssues,
105
+ };
106
+ return Object.entries(summary)
107
+ .map(([key, value]) => `${key}, ${value}`)
108
+ .join('\r\n')
109
+ .concat('\r\n');
110
+ };
111
+ exports.default = generateRootSummaryDataCSV;
112
+ //# sourceMappingURL=generateRootSummaryDataCSV.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"generateRootSummaryDataCSV.js","sourceRoot":"","sources":["../../../src/utils/generateReports/generateRootSummaryDataCSV.ts"],"names":[],"mappings":"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"}
@@ -18,15 +18,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
18
18
  return (mod && mod.__esModule) ? mod : { "default": mod };
19
19
  };
20
20
  Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.generateExtensionCookieTableCSV = exports.generateCLICookieTableCSV = exports.generateTechnologyCSV = exports.generateSummaryDataCSV = exports.generateAllCookiesCSV = exports.generateCookiesWithIssuesCSV = void 0;
21
+ exports.generateExtensionCookieTableCSV = exports.generateCLICookieTableCSV = exports.generateRootSummaryDataCSV = exports.generateSummaryDataCSV = exports.generateAllCookiesCSV = exports.generateCookiesWithIssuesCSV = void 0;
22
22
  var generateCookiesWithIssuesCSV_1 = require("./generateCookiesWithIssuesCSV");
23
23
  Object.defineProperty(exports, "generateCookiesWithIssuesCSV", { enumerable: true, get: function () { return __importDefault(generateCookiesWithIssuesCSV_1).default; } });
24
24
  var generateAllCookiesCSV_1 = require("./generateAllCookiesCSV");
25
25
  Object.defineProperty(exports, "generateAllCookiesCSV", { enumerable: true, get: function () { return __importDefault(generateAllCookiesCSV_1).default; } });
26
26
  var generateSummaryDataCSV_1 = require("./generateSummaryDataCSV");
27
27
  Object.defineProperty(exports, "generateSummaryDataCSV", { enumerable: true, get: function () { return __importDefault(generateSummaryDataCSV_1).default; } });
28
- var generateTechnologyCSV_1 = require("./generateTechnologyCSV");
29
- Object.defineProperty(exports, "generateTechnologyCSV", { enumerable: true, get: function () { return __importDefault(generateTechnologyCSV_1).default; } });
28
+ var generateRootSummaryDataCSV_1 = require("./generateRootSummaryDataCSV");
29
+ Object.defineProperty(exports, "generateRootSummaryDataCSV", { enumerable: true, get: function () { return __importDefault(generateRootSummaryDataCSV_1).default; } });
30
30
  var generateCLICookieTableCSV_1 = require("./generateCLICookieTableCSV");
31
31
  Object.defineProperty(exports, "generateCLICookieTableCSV", { enumerable: true, get: function () { return __importDefault(generateCLICookieTableCSV_1).default; } });
32
32
  var generateExtensionCookietableCSV_1 = require("./generateExtensionCookietableCSV");
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/generateReports/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;AAEH,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,mEAA6E;AAApE,iJAAA,OAAO,OAA0B;AAC1C,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,yEAAmF;AAA1E,uJAAA,OAAO,OAA6B;AAC7C,qFAA+F;AAAtF,mKAAA,OAAO,OAAmC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/utils/generateReports/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG;;;;;;AAEH,+EAAyF;AAAhF,6JAAA,OAAO,OAAgC;AAChD,iEAA2E;AAAlE,+IAAA,OAAO,OAAyB;AACzC,mEAA6E;AAApE,iJAAA,OAAO,OAA0B;AAC1C,2EAAqF;AAA5E,yJAAA,OAAO,OAA8B;AAC9C,yEAAmF;AAA1E,uJAAA,OAAO,OAA6B;AAC7C,qFAA+F;AAAtF,mKAAA,OAAO,OAAmC"}
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ /*
3
+ * Copyright 2023 Google LLC
4
+ *
5
+ * Licensed under the Apache License, Version 2.0 (the "License");
6
+ * you may not use this file except in compliance with the License.
7
+ * You may obtain a copy of the License at
8
+ *
9
+ * https://www.apache.org/licenses/LICENSE-2.0
10
+ *
11
+ * Unless required by applicable law or agreed to in writing, software
12
+ * distributed under the License is distributed on an "AS IS" BASIS,
13
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ * See the License for the specific language governing permissions and
15
+ * limitations under the License.
16
+ */
17
+ var __importDefault = (this && this.__importDefault) || function (mod) {
18
+ return (mod && mod.__esModule) ? mod : { "default": mod };
19
+ };
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ /**
22
+ * External dependencies
23
+ */
24
+ const i18n_1 = require("@google-psat/i18n");
25
+ const deriveBlockingStatus_1 = __importDefault(require("./deriveBlockingStatus"));
26
+ const reshapeCookies = (cookies) => {
27
+ return Object.entries(cookies)
28
+ .filter(([frame]) => frame.includes('http') || frame === 'unknown')
29
+ .map(([frame, _cookies]) => createCookieObj(frame, _cookies))
30
+ .reduce((acc, cookieObj) => {
31
+ Object.keys(cookieObj).forEach((key) => {
32
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x;
33
+ if (acc[key]) {
34
+ const frameUrls = [
35
+ ...((_b = (_a = acc[key]) === null || _a === void 0 ? void 0 : _a.frameUrls) !== null && _b !== void 0 ? _b : []),
36
+ ...((_d = (_c = cookieObj[key]) === null || _c === void 0 ? void 0 : _c.frameUrls) !== null && _d !== void 0 ? _d : []),
37
+ ];
38
+ const blockedReasons = [
39
+ ...new Set([
40
+ ...((_f = (_e = acc[key]) === null || _e === void 0 ? void 0 : _e.blockedReasons) !== null && _f !== void 0 ? _f : []),
41
+ ...((_h = (_g = cookieObj[key]) === null || _g === void 0 ? void 0 : _g.blockedReasons) !== null && _h !== void 0 ? _h : []),
42
+ ]),
43
+ ];
44
+ const frameIdList = Array.from(new Set([
45
+ ...((_k = (_j = acc[key]) === null || _j === void 0 ? void 0 : _j.frameIdList) !== null && _k !== void 0 ? _k : []),
46
+ ...((_m = (_l = cookieObj[key]) === null || _l === void 0 ? void 0 : _l.frameIdList) !== null && _m !== void 0 ? _m : []),
47
+ ]));
48
+ const networkEvents = {
49
+ requestEvents: [
50
+ ...(((_p = (_o = cookieObj[key]) === null || _o === void 0 ? void 0 : _o.networkEvents) === null || _p === void 0 ? void 0 : _p.requestEvents) || []),
51
+ ...(((_q = acc[key].networkEvents) === null || _q === void 0 ? void 0 : _q.requestEvents) || []),
52
+ ],
53
+ responseEvents: [
54
+ ...(((_s = (_r = cookieObj[key]) === null || _r === void 0 ? void 0 : _r.networkEvents) === null || _s === void 0 ? void 0 : _s.responseEvents) || []),
55
+ ...(((_t = acc[key].networkEvents) === null || _t === void 0 ? void 0 : _t.responseEvents) || []),
56
+ ],
57
+ };
58
+ let blockingStatus = (0, deriveBlockingStatus_1.default)(networkEvents);
59
+ //@ts-ignore -- Since this has to be run for data coming from extension only.
60
+ if (globalThis === null || globalThis === void 0 ? void 0 : globalThis.PSAT_EXTENSION) {
61
+ blockingStatus = cookieObj[key].blockingStatus;
62
+ }
63
+ acc[key] = Object.assign(Object.assign(Object.assign({}, cookieObj[key]), acc[key]), { blockedReasons,
64
+ frameIdList, exemptionReason: ((_u = acc[key]) === null || _u === void 0 ? void 0 : _u.exemptionReason) || ((_v = cookieObj[key]) === null || _v === void 0 ? void 0 : _v.exemptionReason), frameUrls,
65
+ networkEvents,
66
+ blockingStatus, isBlocked: ((_w = acc[key]) === null || _w === void 0 ? void 0 : _w.isBlocked) || ((_x = cookieObj[key]) === null || _x === void 0 ? void 0 : _x.isBlocked) });
67
+ }
68
+ else {
69
+ acc[key] = cookieObj[key];
70
+ }
71
+ });
72
+ return acc;
73
+ }, {});
74
+ };
75
+ const createCookieObj = (frame, cookies) => Object.fromEntries(Object.values(cookies).map((cookie) => {
76
+ var _a, _b;
77
+ return [
78
+ cookie.parsedCookie.name +
79
+ ':' +
80
+ cookie.parsedCookie.domain +
81
+ ':' +
82
+ cookie.parsedCookie.path,
83
+ {
84
+ parsedCookie: cookie.parsedCookie,
85
+ analytics: Object.assign(Object.assign({}, cookie.analytics), { category: ((_a = cookie.analytics) === null || _a === void 0 ? void 0 : _a.category) === 'Unknown Category'
86
+ ? i18n_1.I18n.getMessage('sdUncategorized')
87
+ : (_b = cookie.analytics) === null || _b === void 0 ? void 0 : _b.category }),
88
+ url: cookie.url,
89
+ headerType: 'response',
90
+ blockedReasons: cookie.blockedReasons,
91
+ isFirstParty: cookie.isFirstParty,
92
+ frameIdList: [frame], // Hot fix: For Displaying cookies in CLI Dashboard.
93
+ isBlocked: cookie.isBlocked,
94
+ networkEvents: cookie.networkEvents,
95
+ blockingStatus: cookie.blockingStatus,
96
+ frameUrls: [frame],
97
+ exemptionReason: cookie.exemptionReason,
98
+ pageUrl: cookie.pageUrl,
99
+ },
100
+ ];
101
+ }));
102
+ exports.default = reshapeCookies;
103
+ //# sourceMappingURL=reshapeCookies.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reshapeCookies.js","sourceRoot":"","sources":["../../src/utils/reshapeCookies.ts"],"names":[],"mappings":"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"}
@@ -102,30 +102,14 @@ export type CookieTableData = CookieData & {
102
102
  frameUrls?: string | string[];
103
103
  isDomainInAllowList?: boolean;
104
104
  };
105
- export type TechnologyData = {
106
- slug: string;
107
- name: string;
108
- description: string;
109
- confidence: number;
110
- version: string | null;
111
- icon: string;
112
- website: string;
113
- cpe: string;
114
- categories: {
115
- id: number;
116
- name: string;
117
- slug: string;
118
- }[];
119
- rootPath?: boolean;
120
- pageUrl?: string;
121
- };
122
105
  export interface TabCookies {
123
106
  [key: string]: CookieTableData;
124
107
  }
108
+ export type FrameType = 'outermost_frame' | 'fenced_frame' | 'sub_frame';
125
109
  export interface TabFrames {
126
110
  [key: string]: {
127
111
  frameIds: string[];
128
- frameType?: 'outermost_frame' | 'fenced_frame' | 'sub_frame';
112
+ frameType?: FrameType;
129
113
  };
130
114
  }
131
115
  export interface Legend {
@@ -216,7 +200,6 @@ export type CompleteJson = {
216
200
  libraryMatches: {
217
201
  [key: string]: LibraryData;
218
202
  };
219
- technologyData: TechnologyData[];
220
203
  };
221
204
  export interface DataMapping {
222
205
  title: string;
@@ -231,3 +214,8 @@ export type FrameStateCreator = {
231
214
  dataMapping: DataMapping[];
232
215
  legend: Legend[];
233
216
  };
217
+ export type Selectors = {
218
+ textSelectors: string[];
219
+ cssSelectors: string[];
220
+ xPath: string[];
221
+ };
@@ -25,6 +25,9 @@ export { default as getCurrentDateAndTime } from './utils/getCurrentDateAndTime'
25
25
  export { default as resolveWithTimeout } from './utils/resolveWithTimeout';
26
26
  export { default as deriveBlockingStatus } from './utils/deriveBlockingStatus';
27
27
  export { default as getLegendDescription } from './utils/getLegendDescription';
28
+ export { default as extractCookies } from './utils/extractCookies';
29
+ export { default as extractReportData } from './utils/extractReportData';
30
+ export { default as reshapeCookies } from './utils/reshapeCookies';
28
31
  export * from './worker/enums';
29
32
  export * from './utils/generateReports';
30
33
  export * from './cookies.types';
@@ -0,0 +1,5 @@
1
+ import { CompleteJson } from '../cookies.types';
2
+ export declare const mockData1: CompleteJson;
3
+ export declare const mockData2: CompleteJson;
4
+ export declare const tempSinglePageData: CompleteJson;
5
+ export declare const tempMultiPageData: CompleteJson[];
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import type { CompleteJson, CookieFrameStorageType } from '../cookies.types';
5
+ declare const extractCookies: (cookieData: CompleteJson["cookieData"], pageUrl: string, shouldAddUrlToKey?: boolean) => CookieFrameStorageType;
6
+ export default extractCookies;
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import { CompleteJson } from '../cookies.types';
5
+ import { LibraryData } from '../libraryDetection.types';
6
+ declare const extractReportData: (data: CompleteJson[]) => {
7
+ landingPageCookies: {};
8
+ consolidatedLibraryMatches: {
9
+ [url: string]: LibraryData;
10
+ };
11
+ };
12
+ export default extractReportData;
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Internal dependencies
3
+ */
4
+ import type { CompleteJson } from '../../cookies.types';
5
+ declare const generateRootSummaryDataCSV: (siteMapAnalysisData: CompleteJson[]) => string;
6
+ export default generateRootSummaryDataCSV;
@@ -1,6 +1,6 @@
1
1
  export { default as generateCookiesWithIssuesCSV } from './generateCookiesWithIssuesCSV';
2
2
  export { default as generateAllCookiesCSV } from './generateAllCookiesCSV';
3
3
  export { default as generateSummaryDataCSV } from './generateSummaryDataCSV';
4
- export { default as generateTechnologyCSV } from './generateTechnologyCSV';
4
+ export { default as generateRootSummaryDataCSV } from './generateRootSummaryDataCSV';
5
5
  export { default as generateCLICookieTableCSV } from './generateCLICookieTableCSV';
6
6
  export { default as generateExtensionCookieTableCSV } from './generateExtensionCookietableCSV';
@@ -0,0 +1,5 @@
1
+ import { CookieFrameStorageType, CookieTableData } from '../cookies.types';
2
+ declare const reshapeCookies: (cookies: CookieFrameStorageType) => {
3
+ [k: string]: CookieTableData;
4
+ };
5
+ export default reshapeCookies;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google-psat/common",
3
- "version": "0.10.2",
3
+ "version": "0.11.0-1",
4
4
  "description": "A package for common utilities that are being used in multiple packages",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist-types/index.d.ts",
@@ -1,56 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- /*
7
- * Copyright 2023 Google LLC
8
- *
9
- * Licensed under the Apache License, Version 2.0 (the "License");
10
- * you may not use this file except in compliance with the License.
11
- * You may obtain a copy of the License at
12
- *
13
- * https://www.apache.org/licenses/LICENSE-2.0
14
- *
15
- * Unless required by applicable law or agreed to in writing, software
16
- * distributed under the License is distributed on an "AS IS" BASIS,
17
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
- * See the License for the specific language governing permissions and
19
- * limitations under the License.
20
- */
21
- /**
22
- * External dependencies
23
- */
24
- const i18n_1 = require("@google-psat/i18n");
25
- /**
26
- * Internal dependencies
27
- */
28
- const sanitizeCsvRecord_1 = __importDefault(require("../sanitizeCsvRecord"));
29
- const TECHNOLOGIES_DATA_HEADER = [
30
- () => i18n_1.I18n.getMessage('name'),
31
- () => i18n_1.I18n.getMessage('description'),
32
- () => i18n_1.I18n.getMessage('confidence'),
33
- () => i18n_1.I18n.getMessage('website'),
34
- () => i18n_1.I18n.getMessage('categories'),
35
- ];
36
- const generateTechnologyCSV = (siteAnalysisData) => {
37
- const technologyDataArray = siteAnalysisData.technologyData;
38
- let technologyRecords = '';
39
- for (const technologyData of technologyDataArray) {
40
- //This should be in the same order as technologyDataHeader
41
- const categoryRecord = technologyData.categories.reduce((acc, { name }) => (acc += `${name}|`), '');
42
- const recordsArray = [
43
- technologyData.name,
44
- technologyData.description,
45
- technologyData.confidence + '%',
46
- technologyData.website,
47
- categoryRecord.slice(0, -1),
48
- ].map(sanitizeCsvRecord_1.default);
49
- technologyRecords += recordsArray.join(',') + '\r\n';
50
- }
51
- return (TECHNOLOGIES_DATA_HEADER.map((header) => header()).join(',') +
52
- '\r\n' +
53
- technologyRecords);
54
- };
55
- exports.default = generateTechnologyCSV;
56
- //# sourceMappingURL=generateTechnologyCSV.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"generateTechnologyCSV.js","sourceRoot":"","sources":["../../../src/utils/generateReports/generateTechnologyCSV.ts"],"names":[],"mappings":";;;;;AAAA;;;;;;;;;;;;;;GAcG;AACH;;GAEG;AACH,4CAAyC;AACzC;;GAEG;AACH,6EAAqD;AAGrD,MAAM,wBAAwB,GAAG;IAC/B,GAAG,EAAE,CAAC,WAAI,CAAC,UAAU,CAAC,MAAM,CAAC;IAC7B,GAAG,EAAE,CAAC,WAAI,CAAC,UAAU,CAAC,aAAa,CAAC;IACpC,GAAG,EAAE,CAAC,WAAI,CAAC,UAAU,CAAC,YAAY,CAAC;IACnC,GAAG,EAAE,CAAC,WAAI,CAAC,UAAU,CAAC,SAAS,CAAC;IAChC,GAAG,EAAE,CAAC,WAAI,CAAC,UAAU,CAAC,YAAY,CAAC;CACpC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,gBAA8B,EAAU,EAAE;IACvE,MAAM,mBAAmB,GAAG,gBAAgB,CAAC,cAAc,CAAC;IAE5D,IAAI,iBAAiB,GAAG,EAAE,CAAC;IAE3B,KAAK,MAAM,cAAc,IAAI,mBAAmB,EAAE,CAAC;QACjD,0DAA0D;QAE1D,MAAM,cAAc,GAAG,cAAc,CAAC,UAAU,CAAC,MAAM,CACrD,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,CAAC,EACtC,EAAE,CACH,CAAC;QAEF,MAAM,YAAY,GAAG;YACnB,cAAc,CAAC,IAAI;YACnB,cAAc,CAAC,WAAW;YAC1B,cAAc,CAAC,UAAU,GAAG,GAAG;YAC/B,cAAc,CAAC,OAAO;YACtB,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;SAC5B,CAAC,GAAG,CAAC,2BAAiB,CAAC,CAAC;QAEzB,iBAAiB,IAAI,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC;IACvD,CAAC;IAED,OAAO,CACL,wBAAwB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QAC5D,MAAM;QACN,iBAAiB,CAClB,CAAC;AACJ,CAAC,CAAC;AAEF,kBAAe,qBAAqB,CAAC"}
@@ -1,3 +0,0 @@
1
- import { CompleteJson } from '../../cookies.types';
2
- declare const generateTechnologyCSV: (siteAnalysisData: CompleteJson) => string;
3
- export default generateTechnologyCSV;