summaryrefslogtreecommitdiff
path: root/node_modules/webpack/lib/util/MapHelpers.js
diff options
context:
space:
mode:
authorlittleblack111 <littleblack11111@gmail.com>2023-10-31 15:37:35 +0800
committerlittleblack111 <littleblack11111@gmail.com>2023-10-31 15:37:35 +0800
commitd5f14083061f2ce6a42313188443a42e30796320 (patch)
treecc6a9889e08b29595a76a33b9e7b4ef84866468b /node_modules/webpack/lib/util/MapHelpers.js
parentb1a6ea021f29f182b62f9f81024a3d8ac8621b7f (diff)
added make browserlist(autoprefixer) work fixed
Diffstat (limited to 'node_modules/webpack/lib/util/MapHelpers.js')
-rw-r--r--node_modules/webpack/lib/util/MapHelpers.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/node_modules/webpack/lib/util/MapHelpers.js b/node_modules/webpack/lib/util/MapHelpers.js
new file mode 100644
index 00000000..d855a15f
--- /dev/null
+++ b/node_modules/webpack/lib/util/MapHelpers.js
@@ -0,0 +1,36 @@
+/*
+ MIT License http://www.opensource.org/licenses/mit-license.php
+ Author Tobias Koppers @sokra
+*/
+
+"use strict";
+
+/**
+ * getOrInsert is a helper function for maps that allows you to get a value
+ * from a map if it exists, or insert a new value if it doesn't. If it value doesn't
+ * exist, it will be computed by the provided function.
+ *
+ * @template K
+ * @template V
+ * @param {Map<K, V>} map The map object to check
+ * @param {K} key The key to check
+ * @param {function(): V} computer function which will compute the value if it doesn't exist
+ * @returns {V} The value from the map, or the computed value
+ *
+ * @example
+ * ```js
+ * const map = new Map();
+ * const value = getOrInsert(map, "key", () => "value");
+ * console.log(value); // "value"
+ * ```
+ */
+exports.getOrInsert = (map, key, computer) => {
+ // Grab key from map
+ const value = map.get(key);
+ // If the value already exists, return it
+ if (value !== undefined) return value;
+ // Otherwise compute the value, set it in the map, and return it
+ const newValue = computer();
+ map.set(key, newValue);
+ return newValue;
+};