aboutsummaryrefslogtreecommitdiff
path: root/node_modules/jest-haste-map/build/watchers/RecrawlWarning.js
diff options
context:
space:
mode:
authorJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
committerJoel Kronqvist <joel.h.kronqvist@gmail.com>2022-03-05 19:02:27 +0200
commit5d309ff52cd399a6b71968a6b9a70c8ac0b98981 (patch)
tree360f7eb50f956e2367ef38fa1fc6ac7ac5258042 /node_modules/jest-haste-map/build/watchers/RecrawlWarning.js
parentb500a50f1b97d93c98b36ed9a980f8188d648147 (diff)
downloadLYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.tar.gz
LYLLRuoka-5d309ff52cd399a6b71968a6b9a70c8ac0b98981.zip
Added node_modules for the updating to work properly.
Diffstat (limited to 'node_modules/jest-haste-map/build/watchers/RecrawlWarning.js')
-rw-r--r--node_modules/jest-haste-map/build/watchers/RecrawlWarning.js57
1 files changed, 57 insertions, 0 deletions
diff --git a/node_modules/jest-haste-map/build/watchers/RecrawlWarning.js b/node_modules/jest-haste-map/build/watchers/RecrawlWarning.js
new file mode 100644
index 0000000..a89af20
--- /dev/null
+++ b/node_modules/jest-haste-map/build/watchers/RecrawlWarning.js
@@ -0,0 +1,57 @@
+// vendored from https://github.com/amasad/sane/blob/64ff3a870c42e84f744086884bf55a4f9c22d376/src/utils/recrawl-warning-dedupe.js
+'use strict';
+
+class RecrawlWarning {
+ constructor(root, count) {
+ this.root = root;
+ this.count = count;
+ }
+
+ static findByRoot(root) {
+ for (let i = 0; i < this.RECRAWL_WARNINGS.length; i++) {
+ const warning = this.RECRAWL_WARNINGS[i];
+
+ if (warning.root === root) {
+ return warning;
+ }
+ }
+
+ return undefined;
+ }
+
+ static isRecrawlWarningDupe(warningMessage) {
+ if (typeof warningMessage !== 'string') {
+ return false;
+ }
+
+ const match = warningMessage.match(this.REGEXP);
+
+ if (!match) {
+ return false;
+ }
+
+ const count = Number(match[1]);
+ const root = match[2];
+ const warning = this.findByRoot(root);
+
+ if (warning) {
+ // only keep the highest count, assume count to either stay the same or
+ // increase.
+ if (warning.count >= count) {
+ return true;
+ } else {
+ // update the existing warning to the latest (highest) count
+ warning.count = count;
+ return false;
+ }
+ } else {
+ this.RECRAWL_WARNINGS.push(new RecrawlWarning(root, count));
+ return false;
+ }
+ }
+}
+
+RecrawlWarning.RECRAWL_WARNINGS = [];
+RecrawlWarning.REGEXP =
+ /Recrawled this watch (\d+) times, most recently because:\n([^:]+)/;
+module.exports = RecrawlWarning;