From 3d1cd02f27518f1a04374c7c8320cd5d82ede6e9 Mon Sep 17 00:00:00 2001
From: Minteck <contact@minteck.org>
Date: Thu, 23 Feb 2023 19:34:56 +0100
Subject: Updated 40 files, added 37 files, deleted 1103 files and renamed 3905
 files (automated)

---
 .../node_modules/graphql/jsutils/memoize3.js.flow  | 39 ++++++++++++++++++++++
 1 file changed, 39 insertions(+)
 create mode 100644 includes/external/school/node_modules/graphql/jsutils/memoize3.js.flow

(limited to 'includes/external/school/node_modules/graphql/jsutils/memoize3.js.flow')

diff --git a/includes/external/school/node_modules/graphql/jsutils/memoize3.js.flow b/includes/external/school/node_modules/graphql/jsutils/memoize3.js.flow
new file mode 100644
index 0000000..cd4ccd5
--- /dev/null
+++ b/includes/external/school/node_modules/graphql/jsutils/memoize3.js.flow
@@ -0,0 +1,39 @@
+// @flow strict
+/**
+ * Memoizes the provided three-argument function.
+ */
+export default function memoize3<
+  A1: { ... } | $ReadOnlyArray<mixed>,
+  A2: { ... } | $ReadOnlyArray<mixed>,
+  A3: { ... } | $ReadOnlyArray<mixed>,
+  R: mixed,
+>(fn: (A1, A2, A3) => R): (A1, A2, A3) => R {
+  let cache0;
+
+  return function memoized(a1, a2, a3) {
+    if (!cache0) {
+      cache0 = new WeakMap();
+    }
+    let cache1 = cache0.get(a1);
+    let cache2;
+    if (cache1) {
+      cache2 = cache1.get(a2);
+      if (cache2) {
+        const cachedValue = cache2.get(a3);
+        if (cachedValue !== undefined) {
+          return cachedValue;
+        }
+      }
+    } else {
+      cache1 = new WeakMap();
+      cache0.set(a1, cache1);
+    }
+    if (!cache2) {
+      cache2 = new WeakMap();
+      cache1.set(a2, cache2);
+    }
+    const newValue = fn(a1, a2, a3);
+    cache2.set(a3, newValue);
+    return newValue;
+  };
+}
-- 
cgit