darkreader 4.9.69 → 4.9.73

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.
Files changed (3) hide show
  1. package/README.md +1 -1
  2. package/darkreader.js +33 -37
  3. package/package.json +14 -14
package/README.md CHANGED
@@ -156,7 +156,7 @@ A warning page may appear. Click `Accept the Risk and Continue` to go to the `ab
156
156
  - Search for and set `extensions.webextensions.restrictedDomains` to an empty value.
157
157
  - Create `extensions.webextensions.addons-restricted-domains@mozilla.com.disabled` with `boolean` as type and set its value to `true`.
158
158
  - Set `extensions.quarantinedDomains.enabled` to `false`.
159
- - Create `privacy.resistFingerprinting.block_mozAddonManager` with `boolean` as type and set its value to `true`.
159
+ - Set `privacy.resistFingerprinting.block_mozAddonManager` with `boolean` as type and set its value to `true`.
160
160
  - Restart Firefox.
161
161
 
162
162
  <h2 align="center">Contributors</h2>
package/darkreader.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Dark Reader v4.9.69
2
+ * Dark Reader v4.9.73
3
3
  * https://darkreader.org/
4
4
  */
5
5
 
@@ -2661,15 +2661,20 @@
2661
2661
  case 5:
2662
2662
  image_1 = _a.sent();
2663
2663
  imageManager.addToQueue(function () {
2664
+ var analysis =
2665
+ analyzeImage(image_1);
2664
2666
  resolve(
2665
2667
  __assign(
2666
2668
  {
2667
2669
  src: url,
2668
- dataURL: dataURL,
2670
+ dataURL:
2671
+ analysis.isLarge
2672
+ ? ""
2673
+ : dataURL,
2669
2674
  width: image_1.naturalWidth,
2670
2675
  height: image_1.naturalHeight
2671
2676
  },
2672
- analyzeImage(image_1)
2677
+ analysis
2673
2678
  )
2674
2679
  );
2675
2680
  });
@@ -2730,12 +2735,12 @@
2730
2735
  });
2731
2736
  });
2732
2737
  }
2733
- var MAX_ANALIZE_PIXELS_COUNT = 32 * 32;
2738
+ var MAX_ANALYSIS_PIXELS_COUNT = 32 * 32;
2734
2739
  var canvas;
2735
2740
  var context;
2736
2741
  function createCanvas() {
2737
- var maxWidth = MAX_ANALIZE_PIXELS_COUNT;
2738
- var maxHeight = MAX_ANALIZE_PIXELS_COUNT;
2742
+ var maxWidth = MAX_ANALYSIS_PIXELS_COUNT;
2743
+ var maxHeight = MAX_ANALYSIS_PIXELS_COUNT;
2739
2744
  canvas = document.createElement("canvas");
2740
2745
  canvas.width = maxWidth;
2741
2746
  canvas.height = maxHeight;
@@ -2746,7 +2751,7 @@
2746
2751
  canvas = null;
2747
2752
  context = null;
2748
2753
  }
2749
- var MAX_IMAGE_SIZE = 5 * 1024 * 1024;
2754
+ var LARGE_IMAGE_PIXELS_COUNT = 512 * 512;
2750
2755
  function analyzeImage(image) {
2751
2756
  if (!canvas) {
2752
2757
  createCanvas();
@@ -2763,20 +2768,18 @@
2763
2768
  isTooLarge: false
2764
2769
  };
2765
2770
  }
2766
- var size = naturalWidth * naturalHeight * 4;
2767
- if (size > MAX_IMAGE_SIZE) {
2771
+ if (naturalWidth * naturalHeight > LARGE_IMAGE_PIXELS_COUNT) {
2768
2772
  return {
2769
2773
  isDark: false,
2770
2774
  isLight: false,
2771
2775
  isTransparent: false,
2772
- isLarge: false,
2773
- isTooLarge: true
2776
+ isLarge: true
2774
2777
  };
2775
2778
  }
2776
2779
  var naturalPixelsCount = naturalWidth * naturalHeight;
2777
2780
  var k = Math.min(
2778
2781
  1,
2779
- Math.sqrt(MAX_ANALIZE_PIXELS_COUNT / naturalPixelsCount)
2782
+ Math.sqrt(MAX_ANALYSIS_PIXELS_COUNT / naturalPixelsCount)
2780
2783
  );
2781
2784
  var width = Math.ceil(naturalWidth * k);
2782
2785
  var height = Math.ceil(naturalHeight * k);
@@ -2828,7 +2831,6 @@
2828
2831
  var DARK_IMAGE_THRESHOLD = 0.7;
2829
2832
  var LIGHT_IMAGE_THRESHOLD = 0.7;
2830
2833
  var TRANSPARENT_IMAGE_THRESHOLD = 0.1;
2831
- var LARGE_IMAGE_PIXELS_COUNT = 800 * 600;
2832
2834
  return {
2833
2835
  isDark: darkPixelsCount / opaquePixelsCount >= DARK_IMAGE_THRESHOLD,
2834
2836
  isLight:
@@ -2836,8 +2838,7 @@
2836
2838
  isTransparent:
2837
2839
  transparentPixelsCount / totalPixelsCount >=
2838
2840
  TRANSPARENT_IMAGE_THRESHOLD,
2839
- isLarge: naturalPixelsCount >= LARGE_IMAGE_PIXELS_COUNT,
2840
- isTooLarge: false
2841
+ isLarge: false
2841
2842
  };
2842
2843
  }
2843
2844
  function getFilteredImageDataURL(_a, theme) {
@@ -3587,10 +3588,9 @@
3587
3588
  isLight = imageDetails.isLight,
3588
3589
  isTransparent = imageDetails.isTransparent,
3589
3590
  isLarge = imageDetails.isLarge,
3590
- isTooLarge = imageDetails.isTooLarge,
3591
3591
  width = imageDetails.width;
3592
3592
  var result;
3593
- if (isTooLarge) {
3593
+ if (isLarge) {
3594
3594
  logInfo(
3595
3595
  "Not modifying too large image ".concat(
3596
3596
  imageDetails.src
@@ -3601,7 +3601,6 @@
3601
3601
  isDark &&
3602
3602
  isTransparent &&
3603
3603
  filter.mode === 1 &&
3604
- !isLarge &&
3605
3604
  width > 2
3606
3605
  ) {
3607
3606
  logInfo("Inverting dark image ".concat(imageDetails.src));
@@ -3613,24 +3612,10 @@
3613
3612
  );
3614
3613
  result = 'url("'.concat(inverted, '")');
3615
3614
  } else if (isLight && !isTransparent && filter.mode === 1) {
3616
- if (isLarge) {
3617
- logInfo(
3618
- "Not modifying light non-transparent large image ".concat(
3619
- imageDetails.src
3620
- )
3621
- );
3622
- result = "none";
3623
- } else {
3624
- logInfo(
3625
- "Dimming light image ".concat(imageDetails.src)
3626
- );
3627
- var dimmed = getFilteredImageDataURL(
3628
- imageDetails,
3629
- filter
3630
- );
3631
- result = 'url("'.concat(dimmed, '")');
3632
- }
3633
- } else if (filter.mode === 0 && isLight && !isLarge) {
3615
+ logInfo("Dimming light image ".concat(imageDetails.src));
3616
+ var dimmed = getFilteredImageDataURL(imageDetails, filter);
3617
+ result = 'url("'.concat(dimmed, '")');
3618
+ } else if (filter.mode === 0 && isLight) {
3634
3619
  logInfo(
3635
3620
  "Applying filter to image ".concat(imageDetails.src)
3636
3621
  );
@@ -5288,8 +5273,19 @@
5288
5273
  " "
5289
5274
  );
5290
5275
  });
5276
+ var selectorText = selector;
5277
+ if (
5278
+ isChromium &&
5279
+ selector.startsWith(":is(") &&
5280
+ (selector.includes(":is()") ||
5281
+ selector.includes(":where()") ||
5282
+ (selector.includes(":where(") &&
5283
+ selector.includes(":-moz")))
5284
+ ) {
5285
+ selectorText = ".darkreader-unsupported-selector";
5286
+ }
5291
5287
  var ruleText = ""
5292
- .concat(selector, " { ")
5288
+ .concat(selectorText, " { ")
5293
5289
  .concat(cssRulesText, " }");
5294
5290
  target.insertRule(ruleText, index);
5295
5291
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "darkreader",
3
- "version": "4.9.69",
3
+ "version": "4.9.73",
4
4
  "description": "Dark mode for every website",
5
5
  "scripts": {
6
6
  "api": "node --max-old-space-size=3072 tasks/cli.js build --api",
@@ -60,20 +60,20 @@
60
60
  "@rollup/plugin-node-resolve": "15.2.3",
61
61
  "@rollup/plugin-replace": "5.0.5",
62
62
  "@rollup/plugin-typescript": "11.1.5",
63
- "@rollup/pluginutils": "5.0.5",
64
- "@types/chrome": "0.0.251",
65
- "@types/eslint": "8.44.7",
66
- "@types/jasmine": "5.1.2",
67
- "@types/jest": "29.5.8",
68
- "@types/karma": "6.3.7",
63
+ "@rollup/pluginutils": "5.1.0",
64
+ "@types/chrome": "0.0.253",
65
+ "@types/eslint": "8.44.8",
66
+ "@types/jasmine": "5.1.4",
67
+ "@types/jest": "29.5.10",
68
+ "@types/karma": "6.3.8",
69
69
  "@types/karma-coverage": "2.0.3",
70
- "@types/node": "20.9.1",
70
+ "@types/node": "20.10.2",
71
71
  "@types/offscreencanvas": "2019.7.3",
72
- "@types/ws": "8.5.9",
73
- "@typescript-eslint/eslint-plugin": "6.11.0",
74
- "@typescript-eslint/parser": "6.11.0",
72
+ "@types/ws": "8.5.10",
73
+ "@typescript-eslint/eslint-plugin": "6.13.1",
74
+ "@typescript-eslint/parser": "6.13.1",
75
75
  "chokidar": "3.5.3",
76
- "eslint": "8.54.0",
76
+ "eslint": "8.55.0",
77
77
  "eslint-plugin-compat": "4.2.0",
78
78
  "eslint-plugin-import": "2.29.0",
79
79
  "eslint-plugin-local": "1.0.0",
@@ -94,11 +94,11 @@
94
94
  "malevic": "0.19.1",
95
95
  "prettier": "3.1.0",
96
96
  "puppeteer-core": "21.5.2",
97
- "rollup": "4.5.0",
97
+ "rollup": "4.6.1",
98
98
  "rollup-plugin-istanbul": "5.0.0",
99
99
  "ts-jest": "29.1.1",
100
100
  "tslib": "2.6.2",
101
- "typescript": "5.2.2",
101
+ "typescript": "5.3.2",
102
102
  "web-ext": "7.8.0",
103
103
  "ws": "8.14.2",
104
104
  "yazl": "2.5.1"