@pagepocket/lighterceptor 0.7.0 → 0.8.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.
package/dist/src/dom.js CHANGED
@@ -1,106 +1,8 @@
1
1
  import { JSDOM, VirtualConsole } from "jsdom";
2
- import { configMocks, mockAnimationsApi, mockCSSTypedOM, mockIntersectionObserver, mockResizeObserver, mockViewport } from "jsdom-testing-mocks";
2
+ import { installDomInterceptors } from "./dom/intercept.js";
3
+ import { scanDocumentRequests } from "./dom/scan-document.js";
4
+ import { installJsdomTestingMocks } from "./dom/testing-mocks.js";
3
5
  import { InterceptingResourceLoader } from "./resource-loader.js";
4
- class IntersectionObserverEntryStub {
5
- boundingClientRect;
6
- intersectionRatio;
7
- intersectionRect;
8
- isIntersecting;
9
- rootBounds;
10
- target;
11
- time;
12
- constructor(target, boundingClientRect, intersectionRect, intersectionRatio, rootBounds, time, isIntersecting = intersectionRatio > 0) {
13
- this.boundingClientRect = boundingClientRect;
14
- this.intersectionRect = intersectionRect;
15
- this.intersectionRatio = intersectionRatio;
16
- this.isIntersecting = isIntersecting;
17
- this.rootBounds = rootBounds;
18
- this.target = target;
19
- this.time = time;
20
- }
21
- }
22
- const installJsdomTestingMocks = (window) => {
23
- const globalWithHooks = globalThis;
24
- const noopHook = () => { };
25
- configMocks({
26
- beforeAll: globalWithHooks.beforeAll ?? noopHook,
27
- afterAll: globalWithHooks.afterAll ?? noopHook,
28
- beforeEach: globalWithHooks.beforeEach ?? noopHook,
29
- afterEach: globalWithHooks.afterEach ?? noopHook,
30
- act: (trigger) => trigger()
31
- });
32
- const previousGlobals = {};
33
- const setGlobal = (key, value) => {
34
- previousGlobals[key] = globalThis[key];
35
- globalThis[key] = value;
36
- };
37
- const restoreGlobals = () => {
38
- const preserveIfUndefined = new Set(["DOMRectReadOnly", "DOMRect"]);
39
- for (const key of Object.keys(previousGlobals)) {
40
- const value = previousGlobals[key];
41
- if (value === undefined) {
42
- if (preserveIfUndefined.has(key)) {
43
- continue;
44
- }
45
- delete globalThis[key];
46
- }
47
- else {
48
- globalThis[key] = value;
49
- }
50
- }
51
- };
52
- try {
53
- setGlobal("window", window);
54
- setGlobal("document", window.document);
55
- setGlobal("Element", window.Element);
56
- setGlobal("Document", window.Document);
57
- setGlobal("HTMLElement", window.HTMLElement);
58
- setGlobal("Event", window.Event);
59
- setGlobal("DOMRect", window.DOMRect);
60
- setGlobal("DOMRectReadOnly", window.DOMRectReadOnly);
61
- setGlobal("performance", window.performance);
62
- if (typeof window.matchMedia !== "function") {
63
- mockViewport({ width: "1024px", height: "768px" });
64
- }
65
- if (typeof window.IntersectionObserver !== "function") {
66
- mockIntersectionObserver();
67
- }
68
- if (typeof window.IntersectionObserverEntry !== "function") {
69
- window.IntersectionObserverEntry = IntersectionObserverEntryStub;
70
- }
71
- if (typeof window.ResizeObserver !== "function") {
72
- mockResizeObserver();
73
- }
74
- if (typeof window.Element?.prototype.animate !== "function") {
75
- mockAnimationsApi();
76
- }
77
- if (typeof window.CSS === "undefined") {
78
- mockCSSTypedOM();
79
- const cssGlobals = [
80
- "CSS",
81
- "CSSNumericValue",
82
- "CSSUnitValue",
83
- "CSSMathValue",
84
- "CSSMathSum",
85
- "CSSMathProduct",
86
- "CSSMathNegate",
87
- "CSSMathInvert",
88
- "CSSMathMin",
89
- "CSSMathMax",
90
- "CSSMathClamp"
91
- ];
92
- for (const key of cssGlobals) {
93
- const value = globalThis[key];
94
- if (value) {
95
- window[key] = value;
96
- }
97
- }
98
- }
99
- }
100
- finally {
101
- restoreGlobals();
102
- }
103
- };
104
6
  export function createJSDOMWithInterceptor(options) {
105
7
  const resources = new InterceptingResourceLoader(options.interceptor);
106
8
  const domOptions = options.domOptions ?? {};
@@ -120,6 +22,7 @@ export function createJSDOMWithInterceptor(options) {
120
22
  userBeforeParse(window);
121
23
  }
122
24
  installJsdomTestingMocks(window);
25
+ installDomInterceptors(window, options);
123
26
  if (typeof window.matchMedia !== "function") {
124
27
  window.matchMedia = (query) => ({
125
28
  matches: false,
@@ -231,239 +134,6 @@ export function createJSDOMWithInterceptor(options) {
231
134
  return glStub;
232
135
  };
233
136
  }
234
- const extractCssUrls = (cssText) => {
235
- const urls = [];
236
- const pattern = /url\(\s*(['"]?)(.*?)\1\s*\)/gi;
237
- let match;
238
- while ((match = pattern.exec(cssText)) !== null) {
239
- const url = match[2].trim();
240
- if (url.length > 0) {
241
- urls.push(url);
242
- }
243
- }
244
- const importPattern = /@import\s+(?:url\(\s*)?(['"]?)([^'")\s]+)\1\s*\)?/gi;
245
- while ((match = importPattern.exec(cssText)) !== null) {
246
- const url = match[2].trim();
247
- if (url.length > 0) {
248
- urls.push(url);
249
- }
250
- }
251
- return urls;
252
- };
253
- const interceptCssText = (cssText) => {
254
- for (const url of extractCssUrls(cssText)) {
255
- void Promise.resolve(options.interceptor(url, {
256
- element: undefined,
257
- referrer: window.document.URL,
258
- source: "css"
259
- }));
260
- }
261
- };
262
- const interceptImgSrc = (url, element) => {
263
- const imageElement = element instanceof window.HTMLImageElement ? element : undefined;
264
- void Promise.resolve(options.interceptor(url, {
265
- element: imageElement,
266
- referrer: window.document.URL,
267
- source: "img"
268
- }));
269
- };
270
- const interceptResourceSrc = (url, element) => {
271
- const iframeOrLink = element instanceof window.HTMLIFrameElement
272
- ? element
273
- : element instanceof window.HTMLLinkElement
274
- ? element
275
- : undefined;
276
- void Promise.resolve(options.interceptor(url, {
277
- element: iframeOrLink,
278
- referrer: window.document.URL,
279
- source: "resource"
280
- }));
281
- };
282
- const parseSrcsetUrls = (value) => {
283
- return value
284
- .split(",")
285
- .map((candidate) => candidate.trim().split(/\s+/)[0])
286
- .filter((url) => url.length > 0);
287
- };
288
- const interceptSrcset = (value, element) => {
289
- const isImage = element instanceof window.HTMLImageElement;
290
- const source = isImage ? "img" : "resource";
291
- for (const url of parseSrcsetUrls(value)) {
292
- void Promise.resolve(options.interceptor(url, {
293
- element: isImage ? element : undefined,
294
- referrer: window.document.URL,
295
- source
296
- }));
297
- }
298
- };
299
- const patchSrcProperty = (proto, sourceHandler) => {
300
- const descriptor = proto ? Object.getOwnPropertyDescriptor(proto, "src") : undefined;
301
- if (proto && descriptor?.set) {
302
- Object.defineProperty(proto, "src", {
303
- ...descriptor,
304
- set(value) {
305
- sourceHandler(String(value), this);
306
- descriptor.set?.call(this, value);
307
- }
308
- });
309
- }
310
- };
311
- const patchSrcsetProperty = (proto) => {
312
- const descriptor = proto ? Object.getOwnPropertyDescriptor(proto, "srcset") : undefined;
313
- if (proto && descriptor?.set) {
314
- Object.defineProperty(proto, "srcset", {
315
- ...descriptor,
316
- set(value) {
317
- interceptSrcset(String(value), this);
318
- descriptor.set?.call(this, value);
319
- }
320
- });
321
- }
322
- };
323
- const shouldInterceptLinkRel = (rel) => {
324
- const normalized = rel.toLowerCase();
325
- return (normalized.includes("preload") ||
326
- normalized.includes("prefetch") ||
327
- normalized.includes("stylesheet") ||
328
- normalized.includes("icon"));
329
- };
330
- const interceptLinkHref = (link, rel) => {
331
- if (shouldInterceptLinkRel(rel) && link.href) {
332
- interceptResourceSrc(link.href, link);
333
- }
334
- };
335
- const interceptLinkImagesrcset = (link) => {
336
- const rel = (link.getAttribute("rel") ?? "").toLowerCase();
337
- if (!rel.includes("preload")) {
338
- return;
339
- }
340
- const imagesrcset = link.getAttribute("imagesrcset");
341
- if (!imagesrcset) {
342
- return;
343
- }
344
- for (const url of parseSrcsetUrls(imagesrcset)) {
345
- interceptResourceSrc(url, link);
346
- }
347
- };
348
- const patchAttributeProperty = (proto, property, sourceHandler) => {
349
- const descriptor = proto ? Object.getOwnPropertyDescriptor(proto, property) : undefined;
350
- if (proto && descriptor?.set) {
351
- Object.defineProperty(proto, property, {
352
- ...descriptor,
353
- set(value) {
354
- sourceHandler(String(value), this);
355
- descriptor.set?.call(this, value);
356
- }
357
- });
358
- }
359
- };
360
- const imgProto = window.HTMLImageElement?.prototype;
361
- const srcDescriptor = imgProto ? Object.getOwnPropertyDescriptor(imgProto, "src") : undefined;
362
- if (imgProto && srcDescriptor?.set) {
363
- Object.defineProperty(imgProto, "src", {
364
- ...srcDescriptor,
365
- set(value) {
366
- interceptImgSrc(String(value), this);
367
- srcDescriptor.set?.call(this, value);
368
- }
369
- });
370
- }
371
- patchSrcsetProperty(imgProto);
372
- patchSrcProperty(window.HTMLIFrameElement?.prototype, interceptResourceSrc);
373
- patchSrcProperty(window.HTMLMediaElement?.prototype, interceptResourceSrc);
374
- patchSrcProperty(window.HTMLSourceElement?.prototype, interceptResourceSrc);
375
- patchSrcsetProperty(window.HTMLSourceElement?.prototype);
376
- patchAttributeProperty(window.HTMLVideoElement?.prototype, "poster", interceptResourceSrc);
377
- patchAttributeProperty(window.HTMLObjectElement?.prototype, "data", interceptResourceSrc);
378
- patchSrcProperty(window.HTMLTrackElement?.prototype, interceptResourceSrc);
379
- patchSrcProperty(window.HTMLEmbedElement?.prototype, interceptResourceSrc);
380
- const originalSetAttribute = window.Element.prototype.setAttribute;
381
- window.Element.prototype.setAttribute = function setAttribute(name, value) {
382
- if (this instanceof window.HTMLImageElement && name.toLowerCase() === "src") {
383
- interceptImgSrc(String(value), this);
384
- }
385
- if (this instanceof window.HTMLImageElement && name.toLowerCase() === "srcset") {
386
- interceptSrcset(String(value), this);
387
- }
388
- if ((this instanceof window.HTMLIFrameElement ||
389
- this instanceof window.HTMLVideoElement ||
390
- this instanceof window.HTMLAudioElement ||
391
- this instanceof window.HTMLSourceElement) &&
392
- name.toLowerCase() === "src") {
393
- interceptResourceSrc(String(value), this);
394
- }
395
- if (this instanceof window.HTMLTrackElement && name.toLowerCase() === "src") {
396
- interceptResourceSrc(String(value), this);
397
- }
398
- if (this instanceof window.HTMLEmbedElement && name.toLowerCase() === "src") {
399
- interceptResourceSrc(String(value), this);
400
- }
401
- if (this instanceof window.HTMLObjectElement && name.toLowerCase() === "data") {
402
- interceptResourceSrc(String(value), this);
403
- }
404
- if (this instanceof window.HTMLVideoElement && name.toLowerCase() === "poster") {
405
- interceptResourceSrc(String(value), this);
406
- }
407
- if (this instanceof window.HTMLSourceElement && name === "srcset") {
408
- interceptSrcset(String(value), this);
409
- }
410
- if (this instanceof window.HTMLLinkElement) {
411
- const lowerName = name.toLowerCase();
412
- if (lowerName === "href") {
413
- const rel = (this.getAttribute("rel") ?? "").toLowerCase();
414
- if (shouldInterceptLinkRel(rel)) {
415
- interceptResourceSrc(String(value), this);
416
- }
417
- }
418
- if (lowerName === "rel") {
419
- const rel = String(value).toLowerCase();
420
- interceptLinkHref(this, rel);
421
- interceptLinkImagesrcset(this);
422
- }
423
- if (lowerName === "imagesrcset") {
424
- interceptLinkImagesrcset(this);
425
- }
426
- }
427
- if (name.toLowerCase() === "style") {
428
- interceptCssText(String(value));
429
- }
430
- return originalSetAttribute.call(this, name, value);
431
- };
432
- const styleProto = window.CSSStyleDeclaration?.prototype;
433
- const originalSetProperty = styleProto?.setProperty;
434
- if (styleProto && originalSetProperty) {
435
- styleProto.setProperty = function setProperty(propertyName, value, priority) {
436
- if (typeof value === "string") {
437
- interceptCssText(value);
438
- }
439
- return originalSetProperty.call(this, propertyName, value, priority);
440
- };
441
- const cssTextDescriptor = Object.getOwnPropertyDescriptor(styleProto, "cssText");
442
- if (cssTextDescriptor?.set) {
443
- Object.defineProperty(styleProto, "cssText", {
444
- ...cssTextDescriptor,
445
- set(value) {
446
- interceptCssText(String(value));
447
- cssTextDescriptor.set?.call(this, value);
448
- }
449
- });
450
- }
451
- }
452
- const nodeProto = window.Node?.prototype;
453
- const textContentDescriptor = nodeProto
454
- ? Object.getOwnPropertyDescriptor(nodeProto, "textContent")
455
- : undefined;
456
- if (nodeProto && textContentDescriptor?.set) {
457
- Object.defineProperty(nodeProto, "textContent", {
458
- ...textContentDescriptor,
459
- set(value) {
460
- if (this instanceof window.HTMLStyleElement) {
461
- interceptCssText(String(value));
462
- }
463
- textContentDescriptor.set?.call(this, value);
464
- }
465
- });
466
- }
467
137
  const interceptRequest = (url, source) => {
468
138
  void Promise.resolve(options.interceptor(url, {
469
139
  element: undefined,
@@ -551,114 +221,5 @@ function triggerScrollSweep(window) {
551
221
  window.addEventListener("load", fire, { once: true });
552
222
  window.setTimeout(fire, 0);
553
223
  }
554
- function scanDocumentRequests(window, interceptor) {
555
- const { document } = window;
556
- const referrer = document.URL;
557
- const record = (url, source, element) => {
558
- void Promise.resolve(interceptor(url, {
559
- element,
560
- referrer,
561
- source
562
- }));
563
- };
564
- const parseSrcsetUrls = (value) => {
565
- return value
566
- .split(",")
567
- .map((candidate) => candidate.trim().split(/\s+/)[0])
568
- .filter((url) => url.length > 0);
569
- };
570
- const shouldInterceptLinkRel = (rel) => {
571
- const normalized = rel.toLowerCase();
572
- return (normalized.includes("preload") ||
573
- normalized.includes("prefetch") ||
574
- normalized.includes("stylesheet") ||
575
- normalized.includes("icon"));
576
- };
577
- document.querySelectorAll("img[src]").forEach((img) => {
578
- if (img instanceof window.HTMLImageElement && img.src) {
579
- record(img.src, "img", img);
580
- }
581
- });
582
- document.querySelectorAll("img[srcset]").forEach((img) => {
583
- if (img instanceof window.HTMLImageElement) {
584
- for (const url of parseSrcsetUrls(img.getAttribute("srcset") ?? "")) {
585
- record(url, "img", img);
586
- }
587
- }
588
- });
589
- document.querySelectorAll("source[src]").forEach((source) => {
590
- const src = source.getAttribute("src");
591
- if (src) {
592
- record(src, "resource");
593
- }
594
- });
595
- document.querySelectorAll("source[srcset]").forEach((source) => {
596
- const srcset = source.getAttribute("srcset");
597
- if (srcset) {
598
- for (const url of parseSrcsetUrls(srcset)) {
599
- record(url, "resource");
600
- }
601
- }
602
- });
603
- document.querySelectorAll("script[src]").forEach((script) => {
604
- if (script instanceof window.HTMLScriptElement && script.src) {
605
- record(script.src, "resource");
606
- }
607
- });
608
- document.querySelectorAll("iframe[src]").forEach((iframe) => {
609
- if (iframe instanceof window.HTMLIFrameElement && iframe.src) {
610
- record(iframe.src, "resource", iframe);
611
- }
612
- });
613
- document.querySelectorAll("video[src], audio[src]").forEach((media) => {
614
- const src = media.getAttribute("src");
615
- if (src) {
616
- record(src, "resource");
617
- }
618
- });
619
- document.querySelectorAll("video[poster]").forEach((video) => {
620
- const poster = video.getAttribute("poster");
621
- if (poster) {
622
- record(poster, "resource");
623
- }
624
- });
625
- document.querySelectorAll("track[src]").forEach((track) => {
626
- const src = track.getAttribute("src");
627
- if (src) {
628
- record(src, "resource");
629
- }
630
- });
631
- document.querySelectorAll("embed[src]").forEach((embed) => {
632
- const src = embed.getAttribute("src");
633
- if (src) {
634
- record(src, "resource");
635
- }
636
- });
637
- document.querySelectorAll("object[data]").forEach((object) => {
638
- const data = object.getAttribute("data");
639
- if (data) {
640
- record(data, "resource");
641
- }
642
- });
643
- document.querySelectorAll("link[rel]").forEach((link) => {
644
- if (!(link instanceof window.HTMLLinkElement)) {
645
- return;
646
- }
647
- const rel = link.getAttribute("rel") ?? "";
648
- if (shouldInterceptLinkRel(rel)) {
649
- const href = link.getAttribute("href") ?? link.href;
650
- if (href) {
651
- record(href, "resource", link);
652
- }
653
- }
654
- if (rel.toLowerCase().includes("preload")) {
655
- const imagesrcset = link.getAttribute("imagesrcset");
656
- if (imagesrcset) {
657
- for (const url of parseSrcsetUrls(imagesrcset)) {
658
- record(url, "resource", link);
659
- }
660
- }
661
- }
662
- });
663
- }
224
+ // scanDocumentRequests extracted to ./dom/scan-document.ts
664
225
  //# sourceMappingURL=dom.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dom.js","sourceRoot":"","sources":["../../src/dom.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dom.js","sourceRoot":"","sources":["../../src/dom.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { ResourceKind } from "../lighterceptor-model.js";
2
+ import type { RequestSource } from "../types.js";
3
+ type RecordUrl = (url: string, source: RequestSource | "unknown", baseUrl?: string) => void;
4
+ type Enqueue = (url: string, kind?: ResourceKind) => void;
5
+ export declare const scanDocumentForStaticRequests: (options: {
6
+ document: Document;
7
+ window: Window;
8
+ baseUrl?: string;
9
+ recordUrl: RecordUrl;
10
+ enqueue: Enqueue;
11
+ recordCssUrls: (cssText: string, baseUrl?: string) => void;
12
+ }) => void;
13
+ export {};
14
+ //# sourceMappingURL=scan-document.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scan-document.d.ts","sourceRoot":"","sources":["../../../src/html-analysis/scan-document.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,GAAG,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;AAC5F,KAAK,OAAO,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,YAAY,KAAK,IAAI,CAAC;AAE1D,eAAO,MAAM,6BAA6B,GAAI,SAAS;IACrD,QAAQ,EAAE,QAAQ,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5D,SA4JA,CAAC"}