From 3d1cd02f27518f1a04374c7c8320cd5d82ede6e9 Mon Sep 17 00:00:00 2001 From: Minteck 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/promiseReduce.js | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 includes/external/school/node_modules/graphql/jsutils/promiseReduce.js (limited to 'includes/external/school/node_modules/graphql/jsutils/promiseReduce.js') diff --git a/includes/external/school/node_modules/graphql/jsutils/promiseReduce.js b/includes/external/school/node_modules/graphql/jsutils/promiseReduce.js new file mode 100644 index 0000000..6606926 --- /dev/null +++ b/includes/external/school/node_modules/graphql/jsutils/promiseReduce.js @@ -0,0 +1,25 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.default = promiseReduce; + +var _isPromise = _interopRequireDefault(require("./isPromise.js")); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +/** + * Similar to Array.prototype.reduce(), however the reducing callback may return + * a Promise, in which case reduction will continue after each promise resolves. + * + * If the callback does not return a Promise, then this function will also not + * return a Promise. + */ +function promiseReduce(values, callback, initialValue) { + return values.reduce(function (previous, value) { + return (0, _isPromise.default)(previous) ? previous.then(function (resolved) { + return callback(resolved, value); + }) : callback(previous, value); + }, initialValue); +} -- cgit