UNPKG

mermaid

Version:

Markdown-ish syntax for generating flowcharts, mindmaps, sequence diagrams, class diagrams, gantt charts, git graphs and more.

1,594 lines (1,593 loc) 956 kB
import { __name } from "./chunk-DLQEHMXD.mjs"; // ../../node_modules/.pnpm/cytoscape@3.31.0/node_modules/cytoscape/dist/cytoscape.esm.mjs function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(obj2) { return typeof obj2; } : function(obj2) { return obj2 && "function" == typeof Symbol && obj2.constructor === Symbol && obj2 !== Symbol.prototype ? "symbol" : typeof obj2; }, _typeof(obj); } __name(_typeof, "_typeof"); function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } __name(_classCallCheck, "_classCallCheck"); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } __name(_defineProperties, "_defineProperties"); function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } __name(_createClass, "_createClass"); function _defineProperty$1(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } __name(_defineProperty$1, "_defineProperty$1"); function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); } __name(_slicedToArray, "_slicedToArray"); function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); } __name(_toConsumableArray, "_toConsumableArray"); function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); } __name(_arrayWithoutHoles, "_arrayWithoutHoles"); function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } __name(_arrayWithHoles, "_arrayWithHoles"); function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } __name(_iterableToArray, "_iterableToArray"); function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } __name(_iterableToArrayLimit, "_iterableToArrayLimit"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } __name(_unsupportedIterableToArray, "_unsupportedIterableToArray"); function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } __name(_arrayLikeToArray, "_arrayLikeToArray"); function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableSpread, "_nonIterableSpread"); function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } __name(_nonIterableRest, "_nonIterableRest"); function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = /* @__PURE__ */ __name(function() { }, "F"); return { s: F, n: /* @__PURE__ */ __name(function() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, "n"), e: /* @__PURE__ */ __name(function(e) { throw e; }, "e"), f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: /* @__PURE__ */ __name(function() { it = it.call(o); }, "s"), n: /* @__PURE__ */ __name(function() { var step3 = it.next(); normalCompletion = step3.done; return step3; }, "n"), e: /* @__PURE__ */ __name(function(e) { didErr = true; err = e; }, "e"), f: /* @__PURE__ */ __name(function() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } }, "f") }; } __name(_createForOfIteratorHelper, "_createForOfIteratorHelper"); var _window = typeof window === "undefined" ? null : window; var navigator = _window ? _window.navigator : null; _window ? _window.document : null; var typeofstr = _typeof(""); var typeofobj = _typeof({}); var typeoffn = _typeof(function() { }); var typeofhtmlele = typeof HTMLElement === "undefined" ? "undefined" : _typeof(HTMLElement); var instanceStr = /* @__PURE__ */ __name(function instanceStr2(obj) { return obj && obj.instanceString && fn$6(obj.instanceString) ? obj.instanceString() : null; }, "instanceStr"); var string = /* @__PURE__ */ __name(function string2(obj) { return obj != null && _typeof(obj) == typeofstr; }, "string"); var fn$6 = /* @__PURE__ */ __name(function fn(obj) { return obj != null && _typeof(obj) === typeoffn; }, "fn"); var array = /* @__PURE__ */ __name(function array2(obj) { return !elementOrCollection(obj) && (Array.isArray ? Array.isArray(obj) : obj != null && obj instanceof Array); }, "array"); var plainObject = /* @__PURE__ */ __name(function plainObject2(obj) { return obj != null && _typeof(obj) === typeofobj && !array(obj) && obj.constructor === Object; }, "plainObject"); var object = /* @__PURE__ */ __name(function object2(obj) { return obj != null && _typeof(obj) === typeofobj; }, "object"); var number$1 = /* @__PURE__ */ __name(function number(obj) { return obj != null && _typeof(obj) === _typeof(1) && !isNaN(obj); }, "number"); var integer = /* @__PURE__ */ __name(function integer2(obj) { return number$1(obj) && Math.floor(obj) === obj; }, "integer"); var htmlElement = /* @__PURE__ */ __name(function htmlElement2(obj) { if ("undefined" === typeofhtmlele) { return void 0; } else { return null != obj && obj instanceof HTMLElement; } }, "htmlElement"); var elementOrCollection = /* @__PURE__ */ __name(function elementOrCollection2(obj) { return element(obj) || collection(obj); }, "elementOrCollection"); var element = /* @__PURE__ */ __name(function element2(obj) { return instanceStr(obj) === "collection" && obj._private.single; }, "element"); var collection = /* @__PURE__ */ __name(function collection2(obj) { return instanceStr(obj) === "collection" && !obj._private.single; }, "collection"); var core = /* @__PURE__ */ __name(function core2(obj) { return instanceStr(obj) === "core"; }, "core"); var stylesheet = /* @__PURE__ */ __name(function stylesheet2(obj) { return instanceStr(obj) === "stylesheet"; }, "stylesheet"); var event = /* @__PURE__ */ __name(function event2(obj) { return instanceStr(obj) === "event"; }, "event"); var emptyString = /* @__PURE__ */ __name(function emptyString2(obj) { if (obj === void 0 || obj === null) { return true; } else if (obj === "" || obj.match(/^\s+$/)) { return true; } return false; }, "emptyString"); var domElement = /* @__PURE__ */ __name(function domElement2(obj) { if (typeof HTMLElement === "undefined") { return false; } else { return obj instanceof HTMLElement; } }, "domElement"); var boundingBox = /* @__PURE__ */ __name(function boundingBox2(obj) { return plainObject(obj) && number$1(obj.x1) && number$1(obj.x2) && number$1(obj.y1) && number$1(obj.y2); }, "boundingBox"); var promise = /* @__PURE__ */ __name(function promise2(obj) { return object(obj) && fn$6(obj.then); }, "promise"); var ms = /* @__PURE__ */ __name(function ms2() { return navigator && navigator.userAgent.match(/msie|trident|edge/i); }, "ms"); var memoize$1 = /* @__PURE__ */ __name(function memoize(fn3, keyFn) { if (!keyFn) { keyFn = /* @__PURE__ */ __name(function keyFn2() { if (arguments.length === 1) { return arguments[0]; } else if (arguments.length === 0) { return "undefined"; } var args = []; for (var i = 0; i < arguments.length; i++) { args.push(arguments[i]); } return args.join("$"); }, "keyFn"); } var memoizedFn = /* @__PURE__ */ __name(function memoizedFn2() { var self2 = this; var args = arguments; var ret; var k = keyFn.apply(self2, args); var cache3 = memoizedFn2.cache; if (!(ret = cache3[k])) { ret = cache3[k] = fn3.apply(self2, args); } return ret; }, "memoizedFn"); memoizedFn.cache = {}; return memoizedFn; }, "memoize"); var camel2dash = memoize$1(function(str) { return str.replace(/([A-Z])/g, function(v) { return "-" + v.toLowerCase(); }); }); var dash2camel = memoize$1(function(str) { return str.replace(/(-\w)/g, function(v) { return v[1].toUpperCase(); }); }); var prependCamel = memoize$1(function(prefix, str) { return prefix + str[0].toUpperCase() + str.substring(1); }, function(prefix, str) { return prefix + "$" + str; }); var capitalize = /* @__PURE__ */ __name(function capitalize2(str) { if (emptyString(str)) { return str; } return str.charAt(0).toUpperCase() + str.substring(1); }, "capitalize"); var number2 = "(?:[-+]?(?:(?:\\d+|\\d*\\.\\d+)(?:[Ee][+-]?\\d+)?))"; var rgba = "rgb[a]?\\((" + number2 + "[%]?)\\s*,\\s*(" + number2 + "[%]?)\\s*,\\s*(" + number2 + "[%]?)(?:\\s*,\\s*(" + number2 + "))?\\)"; var rgbaNoBackRefs = "rgb[a]?\\((?:" + number2 + "[%]?)\\s*,\\s*(?:" + number2 + "[%]?)\\s*,\\s*(?:" + number2 + "[%]?)(?:\\s*,\\s*(?:" + number2 + "))?\\)"; var hsla = "hsl[a]?\\((" + number2 + ")\\s*,\\s*(" + number2 + "[%])\\s*,\\s*(" + number2 + "[%])(?:\\s*,\\s*(" + number2 + "))?\\)"; var hslaNoBackRefs = "hsl[a]?\\((?:" + number2 + ")\\s*,\\s*(?:" + number2 + "[%])\\s*,\\s*(?:" + number2 + "[%])(?:\\s*,\\s*(?:" + number2 + "))?\\)"; var hex3 = "\\#[0-9a-fA-F]{3}"; var hex6 = "\\#[0-9a-fA-F]{6}"; var ascending = /* @__PURE__ */ __name(function ascending2(a, b) { if (a < b) { return -1; } else if (a > b) { return 1; } else { return 0; } }, "ascending"); var descending = /* @__PURE__ */ __name(function descending2(a, b) { return -1 * ascending(a, b); }, "descending"); var extend = Object.assign != null ? Object.assign.bind(Object) : function(tgt) { var args = arguments; for (var i = 1; i < args.length; i++) { var obj = args[i]; if (obj == null) { continue; } var keys = Object.keys(obj); for (var j = 0; j < keys.length; j++) { var k = keys[j]; tgt[k] = obj[k]; } } return tgt; }; var hex2tuple = /* @__PURE__ */ __name(function hex2tuple2(hex) { if (!(hex.length === 4 || hex.length === 7) || hex[0] !== "#") { return; } var shortHex = hex.length === 4; var r, g, b; var base = 16; if (shortHex) { r = parseInt(hex[1] + hex[1], base); g = parseInt(hex[2] + hex[2], base); b = parseInt(hex[3] + hex[3], base); } else { r = parseInt(hex[1] + hex[2], base); g = parseInt(hex[3] + hex[4], base); b = parseInt(hex[5] + hex[6], base); } return [r, g, b]; }, "hex2tuple"); var hsl2tuple = /* @__PURE__ */ __name(function hsl2tuple2(hsl) { var ret; var h, s, l, a, r, g, b; function hue2rgb(p3, q2, t) { if (t < 0) t += 1; if (t > 1) t -= 1; if (t < 1 / 6) return p3 + (q2 - p3) * 6 * t; if (t < 1 / 2) return q2; if (t < 2 / 3) return p3 + (q2 - p3) * (2 / 3 - t) * 6; return p3; } __name(hue2rgb, "hue2rgb"); var m = new RegExp("^" + hsla + "$").exec(hsl); if (m) { h = parseInt(m[1]); if (h < 0) { h = (360 - -1 * h % 360) % 360; } else if (h > 360) { h = h % 360; } h /= 360; s = parseFloat(m[2]); if (s < 0 || s > 100) { return; } s = s / 100; l = parseFloat(m[3]); if (l < 0 || l > 100) { return; } l = l / 100; a = m[4]; if (a !== void 0) { a = parseFloat(a); if (a < 0 || a > 1) { return; } } if (s === 0) { r = g = b = Math.round(l * 255); } else { var q = l < 0.5 ? l * (1 + s) : l + s - l * s; var p2 = 2 * l - q; r = Math.round(255 * hue2rgb(p2, q, h + 1 / 3)); g = Math.round(255 * hue2rgb(p2, q, h)); b = Math.round(255 * hue2rgb(p2, q, h - 1 / 3)); } ret = [r, g, b, a]; } return ret; }, "hsl2tuple"); var rgb2tuple = /* @__PURE__ */ __name(function rgb2tuple2(rgb) { var ret; var m = new RegExp("^" + rgba + "$").exec(rgb); if (m) { ret = []; var isPct = []; for (var i = 1; i <= 3; i++) { var channel = m[i]; if (channel[channel.length - 1] === "%") { isPct[i] = true; } channel = parseFloat(channel); if (isPct[i]) { channel = channel / 100 * 255; } if (channel < 0 || channel > 255) { return; } ret.push(Math.floor(channel)); } var atLeastOneIsPct = isPct[1] || isPct[2] || isPct[3]; var allArePct = isPct[1] && isPct[2] && isPct[3]; if (atLeastOneIsPct && !allArePct) { return; } var alpha = m[4]; if (alpha !== void 0) { alpha = parseFloat(alpha); if (alpha < 0 || alpha > 1) { return; } ret.push(alpha); } } return ret; }, "rgb2tuple"); var colorname2tuple = /* @__PURE__ */ __name(function colorname2tuple2(color) { return colors[color.toLowerCase()]; }, "colorname2tuple"); var color2tuple = /* @__PURE__ */ __name(function color2tuple2(color) { return (array(color) ? color : null) || colorname2tuple(color) || hex2tuple(color) || rgb2tuple(color) || hsl2tuple(color); }, "color2tuple"); var colors = { // special colour names transparent: [0, 0, 0, 0], // NB alpha === 0 // regular colours aliceblue: [240, 248, 255], antiquewhite: [250, 235, 215], aqua: [0, 255, 255], aquamarine: [127, 255, 212], azure: [240, 255, 255], beige: [245, 245, 220], bisque: [255, 228, 196], black: [0, 0, 0], blanchedalmond: [255, 235, 205], blue: [0, 0, 255], blueviolet: [138, 43, 226], brown: [165, 42, 42], burlywood: [222, 184, 135], cadetblue: [95, 158, 160], chartreuse: [127, 255, 0], chocolate: [210, 105, 30], coral: [255, 127, 80], cornflowerblue: [100, 149, 237], cornsilk: [255, 248, 220], crimson: [220, 20, 60], cyan: [0, 255, 255], darkblue: [0, 0, 139], darkcyan: [0, 139, 139], darkgoldenrod: [184, 134, 11], darkgray: [169, 169, 169], darkgreen: [0, 100, 0], darkgrey: [169, 169, 169], darkkhaki: [189, 183, 107], darkmagenta: [139, 0, 139], darkolivegreen: [85, 107, 47], darkorange: [255, 140, 0], darkorchid: [153, 50, 204], darkred: [139, 0, 0], darksalmon: [233, 150, 122], darkseagreen: [143, 188, 143], darkslateblue: [72, 61, 139], darkslategray: [47, 79, 79], darkslategrey: [47, 79, 79], darkturquoise: [0, 206, 209], darkviolet: [148, 0, 211], deeppink: [255, 20, 147], deepskyblue: [0, 191, 255], dimgray: [105, 105, 105], dimgrey: [105, 105, 105], dodgerblue: [30, 144, 255], firebrick: [178, 34, 34], floralwhite: [255, 250, 240], forestgreen: [34, 139, 34], fuchsia: [255, 0, 255], gainsboro: [220, 220, 220], ghostwhite: [248, 248, 255], gold: [255, 215, 0], goldenrod: [218, 165, 32], gray: [128, 128, 128], grey: [128, 128, 128], green: [0, 128, 0], greenyellow: [173, 255, 47], honeydew: [240, 255, 240], hotpink: [255, 105, 180], indianred: [205, 92, 92], indigo: [75, 0, 130], ivory: [255, 255, 240], khaki: [240, 230, 140], lavender: [230, 230, 250], lavenderblush: [255, 240, 245], lawngreen: [124, 252, 0], lemonchiffon: [255, 250, 205], lightblue: [173, 216, 230], lightcoral: [240, 128, 128], lightcyan: [224, 255, 255], lightgoldenrodyellow: [250, 250, 210], lightgray: [211, 211, 211], lightgreen: [144, 238, 144], lightgrey: [211, 211, 211], lightpink: [255, 182, 193], lightsalmon: [255, 160, 122], lightseagreen: [32, 178, 170], lightskyblue: [135, 206, 250], lightslategray: [119, 136, 153], lightslategrey: [119, 136, 153], lightsteelblue: [176, 196, 222], lightyellow: [255, 255, 224], lime: [0, 255, 0], limegreen: [50, 205, 50], linen: [250, 240, 230], magenta: [255, 0, 255], maroon: [128, 0, 0], mediumaquamarine: [102, 205, 170], mediumblue: [0, 0, 205], mediumorchid: [186, 85, 211], mediumpurple: [147, 112, 219], mediumseagreen: [60, 179, 113], mediumslateblue: [123, 104, 238], mediumspringgreen: [0, 250, 154], mediumturquoise: [72, 209, 204], mediumvioletred: [199, 21, 133], midnightblue: [25, 25, 112], mintcream: [245, 255, 250], mistyrose: [255, 228, 225], moccasin: [255, 228, 181], navajowhite: [255, 222, 173], navy: [0, 0, 128], oldlace: [253, 245, 230], olive: [128, 128, 0], olivedrab: [107, 142, 35], orange: [255, 165, 0], orangered: [255, 69, 0], orchid: [218, 112, 214], palegoldenrod: [238, 232, 170], palegreen: [152, 251, 152], paleturquoise: [175, 238, 238], palevioletred: [219, 112, 147], papayawhip: [255, 239, 213], peachpuff: [255, 218, 185], peru: [205, 133, 63], pink: [255, 192, 203], plum: [221, 160, 221], powderblue: [176, 224, 230], purple: [128, 0, 128], red: [255, 0, 0], rosybrown: [188, 143, 143], royalblue: [65, 105, 225], saddlebrown: [139, 69, 19], salmon: [250, 128, 114], sandybrown: [244, 164, 96], seagreen: [46, 139, 87], seashell: [255, 245, 238], sienna: [160, 82, 45], silver: [192, 192, 192], skyblue: [135, 206, 235], slateblue: [106, 90, 205], slategray: [112, 128, 144], slategrey: [112, 128, 144], snow: [255, 250, 250], springgreen: [0, 255, 127], steelblue: [70, 130, 180], tan: [210, 180, 140], teal: [0, 128, 128], thistle: [216, 191, 216], tomato: [255, 99, 71], turquoise: [64, 224, 208], violet: [238, 130, 238], wheat: [245, 222, 179], white: [255, 255, 255], whitesmoke: [245, 245, 245], yellow: [255, 255, 0], yellowgreen: [154, 205, 50] }; var setMap = /* @__PURE__ */ __name(function setMap2(options2) { var obj = options2.map; var keys = options2.keys; var l = keys.length; for (var i = 0; i < l; i++) { var key = keys[i]; if (plainObject(key)) { throw Error("Tried to set map with object key"); } if (i < keys.length - 1) { if (obj[key] == null) { obj[key] = {}; } obj = obj[key]; } else { obj[key] = options2.value; } } }, "setMap"); var getMap = /* @__PURE__ */ __name(function getMap2(options2) { var obj = options2.map; var keys = options2.keys; var l = keys.length; for (var i = 0; i < l; i++) { var key = keys[i]; if (plainObject(key)) { throw Error("Tried to get map with object key"); } obj = obj[key]; if (obj == null) { return obj; } } return obj; }, "getMap"); function isObject(value) { var type = typeof value; return value != null && (type == "object" || type == "function"); } __name(isObject, "isObject"); var isObject_1 = isObject; var commonjsGlobal = typeof globalThis !== "undefined" ? globalThis : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : {}; function createCommonjsModule(fn3, module) { return module = { exports: {} }, fn3(module, module.exports), module.exports; } __name(createCommonjsModule, "createCommonjsModule"); var freeGlobal = typeof commonjsGlobal == "object" && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal; var _freeGlobal = freeGlobal; var freeSelf = typeof self == "object" && self && self.Object === Object && self; var root = _freeGlobal || freeSelf || Function("return this")(); var _root = root; var now = /* @__PURE__ */ __name(function() { return _root.Date.now(); }, "now"); var now_1 = now; var reWhitespace = /\s/; function trimmedEndIndex(string3) { var index = string3.length; while (index-- && reWhitespace.test(string3.charAt(index))) { } return index; } __name(trimmedEndIndex, "trimmedEndIndex"); var _trimmedEndIndex = trimmedEndIndex; var reTrimStart = /^\s+/; function baseTrim(string3) { return string3 ? string3.slice(0, _trimmedEndIndex(string3) + 1).replace(reTrimStart, "") : string3; } __name(baseTrim, "baseTrim"); var _baseTrim = baseTrim; var Symbol$1 = _root.Symbol; var _Symbol = Symbol$1; var objectProto$5 = Object.prototype; var hasOwnProperty$4 = objectProto$5.hasOwnProperty; var nativeObjectToString$1 = objectProto$5.toString; var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : void 0; function getRawTag(value) { var isOwn = hasOwnProperty$4.call(value, symToStringTag$1), tag = value[symToStringTag$1]; try { value[symToStringTag$1] = void 0; var unmasked = true; } catch (e) { } var result = nativeObjectToString$1.call(value); if (unmasked) { if (isOwn) { value[symToStringTag$1] = tag; } else { delete value[symToStringTag$1]; } } return result; } __name(getRawTag, "getRawTag"); var _getRawTag = getRawTag; var objectProto$4 = Object.prototype; var nativeObjectToString = objectProto$4.toString; function objectToString(value) { return nativeObjectToString.call(value); } __name(objectToString, "objectToString"); var _objectToString = objectToString; var nullTag = "[object Null]"; var undefinedTag = "[object Undefined]"; var symToStringTag = _Symbol ? _Symbol.toStringTag : void 0; function baseGetTag(value) { if (value == null) { return value === void 0 ? undefinedTag : nullTag; } return symToStringTag && symToStringTag in Object(value) ? _getRawTag(value) : _objectToString(value); } __name(baseGetTag, "baseGetTag"); var _baseGetTag = baseGetTag; function isObjectLike(value) { return value != null && typeof value == "object"; } __name(isObjectLike, "isObjectLike"); var isObjectLike_1 = isObjectLike; var symbolTag = "[object Symbol]"; function isSymbol(value) { return typeof value == "symbol" || isObjectLike_1(value) && _baseGetTag(value) == symbolTag; } __name(isSymbol, "isSymbol"); var isSymbol_1 = isSymbol; var NAN = 0 / 0; var reIsBadHex = /^[-+]0x[0-9a-f]+$/i; var reIsBinary = /^0b[01]+$/i; var reIsOctal = /^0o[0-7]+$/i; var freeParseInt = parseInt; function toNumber(value) { if (typeof value == "number") { return value; } if (isSymbol_1(value)) { return NAN; } if (isObject_1(value)) { var other = typeof value.valueOf == "function" ? value.valueOf() : value; value = isObject_1(other) ? other + "" : other; } if (typeof value != "string") { return value === 0 ? value : +value; } value = _baseTrim(value); var isBinary = reIsBinary.test(value); return isBinary || reIsOctal.test(value) ? freeParseInt(value.slice(2), isBinary ? 2 : 8) : reIsBadHex.test(value) ? NAN : +value; } __name(toNumber, "toNumber"); var toNumber_1 = toNumber; var FUNC_ERROR_TEXT$1 = "Expected a function"; var nativeMax = Math.max; var nativeMin = Math.min; function debounce(func, wait, options2) { var lastArgs, lastThis, maxWait, result, timerId, lastCallTime, lastInvokeTime = 0, leading = false, maxing = false, trailing = true; if (typeof func != "function") { throw new TypeError(FUNC_ERROR_TEXT$1); } wait = toNumber_1(wait) || 0; if (isObject_1(options2)) { leading = !!options2.leading; maxing = "maxWait" in options2; maxWait = maxing ? nativeMax(toNumber_1(options2.maxWait) || 0, wait) : maxWait; trailing = "trailing" in options2 ? !!options2.trailing : trailing; } function invokeFunc(time2) { var args = lastArgs, thisArg = lastThis; lastArgs = lastThis = void 0; lastInvokeTime = time2; result = func.apply(thisArg, args); return result; } __name(invokeFunc, "invokeFunc"); function leadingEdge(time2) { lastInvokeTime = time2; timerId = setTimeout(timerExpired, wait); return leading ? invokeFunc(time2) : result; } __name(leadingEdge, "leadingEdge"); function remainingWait(time2) { var timeSinceLastCall = time2 - lastCallTime, timeSinceLastInvoke = time2 - lastInvokeTime, timeWaiting = wait - timeSinceLastCall; return maxing ? nativeMin(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting; } __name(remainingWait, "remainingWait"); function shouldInvoke(time2) { var timeSinceLastCall = time2 - lastCallTime, timeSinceLastInvoke = time2 - lastInvokeTime; return lastCallTime === void 0 || timeSinceLastCall >= wait || timeSinceLastCall < 0 || maxing && timeSinceLastInvoke >= maxWait; } __name(shouldInvoke, "shouldInvoke"); function timerExpired() { var time2 = now_1(); if (shouldInvoke(time2)) { return trailingEdge(time2); } timerId = setTimeout(timerExpired, remainingWait(time2)); } __name(timerExpired, "timerExpired"); function trailingEdge(time2) { timerId = void 0; if (trailing && lastArgs) { return invokeFunc(time2); } lastArgs = lastThis = void 0; return result; } __name(trailingEdge, "trailingEdge"); function cancel() { if (timerId !== void 0) { clearTimeout(timerId); } lastInvokeTime = 0; lastArgs = lastCallTime = lastThis = timerId = void 0; } __name(cancel, "cancel"); function flush() { return timerId === void 0 ? result : trailingEdge(now_1()); } __name(flush, "flush"); function debounced() { var time2 = now_1(), isInvoking = shouldInvoke(time2); lastArgs = arguments; lastThis = this; lastCallTime = time2; if (isInvoking) { if (timerId === void 0) { return leadingEdge(lastCallTime); } if (maxing) { clearTimeout(timerId); timerId = setTimeout(timerExpired, wait); return invokeFunc(lastCallTime); } } if (timerId === void 0) { timerId = setTimeout(timerExpired, wait); } return result; } __name(debounced, "debounced"); debounced.cancel = cancel; debounced.flush = flush; return debounced; } __name(debounce, "debounce"); var debounce_1 = debounce; var performance$1 = _window ? _window.performance : null; var pnow = performance$1 && performance$1.now ? function() { return performance$1.now(); } : function() { return Date.now(); }; var raf = function() { if (_window) { if (_window.requestAnimationFrame) { return function(fn3) { _window.requestAnimationFrame(fn3); }; } else if (_window.mozRequestAnimationFrame) { return function(fn3) { _window.mozRequestAnimationFrame(fn3); }; } else if (_window.webkitRequestAnimationFrame) { return function(fn3) { _window.webkitRequestAnimationFrame(fn3); }; } else if (_window.msRequestAnimationFrame) { return function(fn3) { _window.msRequestAnimationFrame(fn3); }; } } return function(fn3) { if (fn3) { setTimeout(function() { fn3(pnow()); }, 1e3 / 60); } }; }(); var requestAnimationFrame = /* @__PURE__ */ __name(function requestAnimationFrame2(fn3) { return raf(fn3); }, "requestAnimationFrame"); var performanceNow = pnow; var DEFAULT_HASH_SEED = 9261; var K = 65599; var DEFAULT_HASH_SEED_ALT = 5381; var hashIterableInts = /* @__PURE__ */ __name(function hashIterableInts2(iterator) { var seed = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : DEFAULT_HASH_SEED; var hash = seed; var entry; for (; ; ) { entry = iterator.next(); if (entry.done) { break; } hash = hash * K + entry.value | 0; } return hash; }, "hashIterableInts"); var hashInt = /* @__PURE__ */ __name(function hashInt2(num) { var seed = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : DEFAULT_HASH_SEED; return seed * K + num | 0; }, "hashInt"); var hashIntAlt = /* @__PURE__ */ __name(function hashIntAlt2(num) { var seed = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : DEFAULT_HASH_SEED_ALT; return (seed << 5) + seed + num | 0; }, "hashIntAlt"); var combineHashes = /* @__PURE__ */ __name(function combineHashes2(hash1, hash2) { return hash1 * 2097152 + hash2; }, "combineHashes"); var combineHashesArray = /* @__PURE__ */ __name(function combineHashesArray2(hashes) { return hashes[0] * 2097152 + hashes[1]; }, "combineHashesArray"); var hashArrays = /* @__PURE__ */ __name(function hashArrays2(hashes1, hashes2) { return [hashInt(hashes1[0], hashes2[0]), hashIntAlt(hashes1[1], hashes2[1])]; }, "hashArrays"); var hashIntsArray = /* @__PURE__ */ __name(function hashIntsArray2(ints, seed) { var entry = { value: 0, done: false }; var i = 0; var length = ints.length; var iterator = { next: /* @__PURE__ */ __name(function next() { if (i < length) { entry.value = ints[i++]; } else { entry.done = true; } return entry; }, "next") }; return hashIterableInts(iterator, seed); }, "hashIntsArray"); var hashString = /* @__PURE__ */ __name(function hashString2(str, seed) { var entry = { value: 0, done: false }; var i = 0; var length = str.length; var iterator = { next: /* @__PURE__ */ __name(function next() { if (i < length) { entry.value = str.charCodeAt(i++); } else { entry.done = true; } return entry; }, "next") }; return hashIterableInts(iterator, seed); }, "hashString"); var hashStrings = /* @__PURE__ */ __name(function hashStrings2() { return hashStringsArray(arguments); }, "hashStrings"); var hashStringsArray = /* @__PURE__ */ __name(function hashStringsArray2(strs) { var hash; for (var i = 0; i < strs.length; i++) { var str = strs[i]; if (i === 0) { hash = hashString(str); } else { hash = hashString(str, hash); } } return hash; }, "hashStringsArray"); var warningsEnabled = true; var warnSupported = console.warn != null; var traceSupported = console.trace != null; var MAX_INT$1 = Number.MAX_SAFE_INTEGER || 9007199254740991; var trueify = /* @__PURE__ */ __name(function trueify2() { return true; }, "trueify"); var falsify = /* @__PURE__ */ __name(function falsify2() { return false; }, "falsify"); var zeroify = /* @__PURE__ */ __name(function zeroify2() { return 0; }, "zeroify"); var noop$1 = /* @__PURE__ */ __name(function noop() { }, "noop"); var error = /* @__PURE__ */ __name(function error2(msg) { throw new Error(msg); }, "error"); var warnings = /* @__PURE__ */ __name(function warnings2(enabled) { if (enabled !== void 0) { warningsEnabled = !!enabled; } else { return warningsEnabled; } }, "warnings"); var warn = /* @__PURE__ */ __name(function warn2(msg) { if (!warnings()) { return; } if (warnSupported) { console.warn(msg); } else { console.log(msg); if (traceSupported) { console.trace(); } } }, "warn"); var clone = /* @__PURE__ */ __name(function clone2(obj) { return extend({}, obj); }, "clone"); var copy = /* @__PURE__ */ __name(function copy2(obj) { if (obj == null) { return obj; } if (array(obj)) { return obj.slice(); } else if (plainObject(obj)) { return clone(obj); } else { return obj; } }, "copy"); var copyArray$1 = /* @__PURE__ */ __name(function copyArray(arr) { return arr.slice(); }, "copyArray"); var uuid = /* @__PURE__ */ __name(function uuid2(a, b) { for ( // loop :) b = a = ""; // b - result , a - numeric letiable a++ < 36; // b += a * 51 & 52 ? ( // return a random number or 4 (a ^ 15 ? ( // generate a random number from 0 to 15 8 ^ Math.random() * (a ^ 20 ? 16 : 4) ) : 4).toString(16) ) : "-" ) { } return b; }, "uuid"); var _staticEmptyObject = {}; var staticEmptyObject = /* @__PURE__ */ __name(function staticEmptyObject2() { return _staticEmptyObject; }, "staticEmptyObject"); var defaults$g = /* @__PURE__ */ __name(function defaults(_defaults) { var keys = Object.keys(_defaults); return function(opts) { var filledOpts = {}; for (var i = 0; i < keys.length; i++) { var key = keys[i]; var optVal = opts == null ? void 0 : opts[key]; filledOpts[key] = optVal === void 0 ? _defaults[key] : optVal; } return filledOpts; }; }, "defaults"); var removeFromArray = /* @__PURE__ */ __name(function removeFromArray2(arr, ele, oneCopy) { for (var i = arr.length - 1; i >= 0; i--) { if (arr[i] === ele) { arr.splice(i, 1); if (oneCopy) { break; } } } }, "removeFromArray"); var clearArray = /* @__PURE__ */ __name(function clearArray2(arr) { arr.splice(0, arr.length); }, "clearArray"); var push = /* @__PURE__ */ __name(function push2(arr, otherArr) { for (var i = 0; i < otherArr.length; i++) { var el = otherArr[i]; arr.push(el); } }, "push"); var getPrefixedProperty = /* @__PURE__ */ __name(function getPrefixedProperty2(obj, propName, prefix) { if (prefix) { propName = prependCamel(prefix, propName); } return obj[propName]; }, "getPrefixedProperty"); var setPrefixedProperty = /* @__PURE__ */ __name(function setPrefixedProperty2(obj, propName, prefix, value) { if (prefix) { propName = prependCamel(prefix, propName); } obj[propName] = value; }, "setPrefixedProperty"); var ObjectMap = /* @__PURE__ */ function() { function ObjectMap2() { _classCallCheck(this, ObjectMap2); this._obj = {}; } __name(ObjectMap2, "ObjectMap"); _createClass(ObjectMap2, [{ key: "set", value: /* @__PURE__ */ __name(function set2(key, val) { this._obj[key] = val; return this; }, "set") }, { key: "delete", value: /* @__PURE__ */ __name(function _delete(key) { this._obj[key] = void 0; return this; }, "_delete") }, { key: "clear", value: /* @__PURE__ */ __name(function clear() { this._obj = {}; }, "clear") }, { key: "has", value: /* @__PURE__ */ __name(function has(key) { return this._obj[key] !== void 0; }, "has") }, { key: "get", value: /* @__PURE__ */ __name(function get2(key) { return this._obj[key]; }, "get") }]); return ObjectMap2; }(); var Map$2 = typeof Map !== "undefined" ? Map : ObjectMap; var undef = "undefined"; var ObjectSet = /* @__PURE__ */ function() { function ObjectSet2(arrayOrObjectSet) { _classCallCheck(this, ObjectSet2); this._obj = /* @__PURE__ */ Object.create(null); this.size = 0; if (arrayOrObjectSet != null) { var arr; if (arrayOrObjectSet.instanceString != null && arrayOrObjectSet.instanceString() === this.instanceString()) { arr = arrayOrObjectSet.toArray(); } else { arr = arrayOrObjectSet; } for (var i = 0; i < arr.length; i++) { this.add(arr[i]); } } } __name(ObjectSet2, "ObjectSet"); _createClass(ObjectSet2, [{ key: "instanceString", value: /* @__PURE__ */ __name(function instanceString4() { return "set"; }, "instanceString") }, { key: "add", value: /* @__PURE__ */ __name(function add3(val) { var o = this._obj; if (o[val] !== 1) { o[val] = 1; this.size++; } }, "add") }, { key: "delete", value: /* @__PURE__ */ __name(function _delete(val) { var o = this._obj; if (o[val] === 1) { o[val] = 0; this.size--; } }, "_delete") }, { key: "clear", value: /* @__PURE__ */ __name(function clear() { this._obj = /* @__PURE__ */ Object.create(null); }, "clear") }, { key: "has", value: /* @__PURE__ */ __name(function has(val) { return this._obj[val] === 1; }, "has") }, { key: "toArray", value: /* @__PURE__ */ __name(function toArray2() { var _this = this; return Object.keys(this._obj).filter(function(key) { return _this.has(key); }); }, "toArray") }, { key: "forEach", value: /* @__PURE__ */ __name(function forEach2(callback, thisArg) { return this.toArray().forEach(callback, thisArg); }, "forEach") }]); return ObjectSet2; }(); var Set$1 = (typeof Set === "undefined" ? "undefined" : _typeof(Set)) !== undef ? Set : ObjectSet; var Element = /* @__PURE__ */ __name(function Element2(cy, params) { var restore = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true; if (cy === void 0 || params === void 0 || !core(cy)) { error("An element must have a core reference and parameters set"); return; } var group2 = params.group; if (group2 == null) { if (params.data && params.data.source != null && params.data.target != null) { group2 = "edges"; } else { group2 = "nodes"; } } if (group2 !== "nodes" && group2 !== "edges") { error("An element must be of type `nodes` or `edges`; you specified `" + group2 + "`"); return; } this.length = 1; this[0] = this; var _p = this._private = { cy, single: true, // indicates this is an element data: params.data || {}, // data object position: params.position || { x: 0, y: 0 }, // (x, y) position pair autoWidth: void 0, // width and height of nodes calculated by the renderer when set to special 'auto' value autoHeight: void 0, autoPadding: void 0, compoundBoundsClean: false, // whether the compound dimensions need to be recalculated the next time dimensions are read listeners: [], // array of bound listeners group: group2, // string; 'nodes' or 'edges' style: {}, // properties as set by the style rstyle: {}, // properties for style sent from the renderer to the core styleCxts: [], // applied style contexts from the styler styleKeys: {}, // per-group keys of style property values removed: true, // whether it's inside the vis; true if removed (set true here since we call restore) selected: params.selected ? true : false, // whether it's selected selectable: params.selectable === void 0 ? true : params.selectable ? true : false, // whether it's selectable locked: params.locked ? true : false, // whether the element is locked (cannot be moved) grabbed: false, // whether the element is grabbed by the mouse; renderer sets this privately grabbable: params.grabbable === void 0 ? true : params.grabbable ? true : false, // whether the element can be grabbed pannable: params.pannable === void 0 ? group2 === "edges" ? true : false : params.pannable ? true : false, // whether the element has passthrough panning enabled active: false, // whether the element is active from user interaction classes: new Set$1(), // map ( className => true ) animation: { // object for currently-running animations current: [], queue: [] }, rscratch: {}, // object in which the renderer can store information scratch: params.scratch || {}, // scratch objects edges: [], // array of connected edges children: [], // array of children parent: params.parent && params.parent.isNode() ? params.parent : null, // parent ref traversalCache: {}, // cache of output of traversal functions backgrounding: false, // whether background images are loading bbCache: null, // cache of the current bounding box bbCacheShift: { x: 0, y: 0 }, // shift applied to cached bb to be applied on next get bodyBounds: null, // bounds cache of element body, w/o overlay overlayBounds: null, // bounds cache of element body, including overlay labelBounds: { // bounds cache of labels all: null, source: null, target: null, main: null }, arrowBounds: { // bounds cache of edge arrows source: null, target: null, "mid-source": null, "mid-target": null } }; if (_p.position.x == null) { _p.position.x = 0; } if (_p.position.y == null) { _p.position.y = 0; } if (params.renderedPosition) { var rpos = params.renderedPosition; var pan2 = cy.pan(); var zoom2 = cy.zoom(); _p.position = { x: (rpos.x - pan2.x) / zoom2, y: (rpos.y - pan2.y) / zoom2 }; } var classes2 = []; if (array(params.classes)) { classes2 = params.classes; } else if (string(params.classes)) { classes2 = params.classes.split(/\s+/); } for (var i = 0, l = classes2.length; i < l; i++) { var cls = classes2[i]; if (!cls || cls === "") { continue; } _p.classes.add(cls); } this.createEmitter(); var bypass = params.style || params.css; if (bypass) { warn("Setting a `style` bypass at element creation should be done only when absolutely necessary. Try to use the stylesheet instead."); this.style(bypass); } if (restore === void 0 || restore) { this.restore(); } }, "Element"); var defineSearch = /* @__PURE__ */ __name(function defineSearch2(params) { params = { bfs: params.bfs || !params.dfs, dfs: params.dfs || !params.bfs }; return /* @__PURE__ */ __name(function searchFn(roots, fn3, directed) { var options2; if (plainObject(roots) && !elementOrCollection(roots)) { options2 = roots; roots = options2.roots || options2.root; fn3 = options2.visit; directed = options2.directed; } directed = arguments.length === 2 && !fn$6(fn3) ? fn3 : directed; fn3 = fn$6(fn3) ? fn3 : function() { }; var cy = this._private.cy; var v = roots = string(roots) ? this.filter(roots) : roots; var Q = []; var connectedNodes = []; var connectedBy = {}; var id2depth = {}; var V = {}; var j = 0; var found; var _this$byGroup = this.byGroup(), nodes3 = _this$byGroup.nodes, edges3 = _this$byGroup.edges; for (var i = 0; i < v.length; i++) { var vi = v[i]; var viId = vi.id(); if (vi.isNode()) { Q.unshift(vi); if (params.bfs) { V[viId] = true; connectedNodes.push(vi); } id2depth[viId] = 0; } } var _loop = /* @__PURE__ */ __name(function _loop2() { var v3 = params.bfs ? Q.shift() : Q.pop(); var vId = v3.id(); if (params.dfs) { if (V[vId]) { return "continue"; } V[vId] = true; connectedNodes.push(v3); } var depth = id2depth[vId]; var prevEdge = connectedBy[vId]; var src = prevEdge != null ? prevEdge.source() : null; var tgt = prevEdge != null ? prevEdge.target() : null; var prevNode = prevEdge == null ? void 0 : v3.same(src) ? tgt[0] : src[0]; var ret = void 0; ret = fn3(v3, prevEdge, prevNode, j++, depth); if (ret === true) { found = v3; return "break"; } if (ret === false) { return "break"; } var vwEdges = v3.connectedEdges().filter(function(e2) { return (!directed || e2.source().same(v3)) && edges3.has(e2); }); for (var _i2 = 0; _i2 < vwEdges.length; _i2++) { var e = vwEdges[_i2]; var w = e.connectedNodes().filter(function(n) { return !n.same(v3) && nodes3.has(n); }); var wId = w.id(); if (w.length !== 0 && !V[wId]) { w = w[0]; Q.push(w); if (params.bfs) { V[wId] = true; connectedNodes.push(w); } connectedBy[wId] = e; id2depth[wId] = id2depth[vId] + 1; } } }, "_loop"); while (Q.length !== 0) { var _ret = _loop(); if (_ret === "continue") continue; if (_ret === "break") break; } var connectedEles = cy.collection(); for (var _i = 0; _i < connectedNodes.length; _i++) { var node = connectedNodes[_i]; var edge = connectedBy[node.id()]; if (edge != null) { connectedEles.push(edge); } connectedEles.push(node); } return { path: cy.collection(connectedEles), found: cy.collection(found) }; }, "searchFn"); }, "defineSearch"); var elesfn$v = { breadthFirstSearch: defineSearch({ bfs: true }), depthFirstSearch: defineSearch({ dfs: true }) }; elesfn$v.bfs = elesfn$v.breadthFirstSearch; elesfn$v.dfs = elesfn$v.depthFirstSearch; var heap$1 = createCommonjsModule(function(module, exports) { (function() { var Heap, defaultCmp, floor, heapify, heappop, heappush, heappushpop, heapreplace, insort, min4, nlargest, nsmallest, updateItem, _siftdown, _siftup; floor = Math.floor, min4 = Math.min; defaultCmp = /* @__PURE__ */ __name(function(x2, y2) { if (x2 < y2) { return -1; } if (x2 > y2) { return 1; } return 0; }, "defaultCmp"); insort = /* @__PURE__ */ __name(function(a, x2, lo, hi, cmp) { var mid; if (lo == null) { lo = 0; } if (cmp == null) { cmp = defaultCmp; } if (lo < 0) { throw new Error("lo must be non-negative"); } if (hi == null) { hi = a.length; } while (lo < hi) { mid = floor((lo + hi) / 2); if (cmp(x2, a[mid]) < 0) { hi = mid; } else { lo = mid + 1; } } return [].splice.apply(a, [lo, lo - lo].concat(x2)), x2; }, "insort"); heappush = /* @__PURE__ */ __name(function(array3, item, cmp) { if (cmp == null) { cmp = defaultCmp; } array3.push(item); return _siftdown(array3, 0, array3.length - 1, cmp); }, "heappush"); heappop = /* @__PURE__ */ __name(function(array3, cmp) { var lastelt, returnitem; if (cmp == null) { cmp = defaultCmp; } lastelt = array3.pop(); if (array3.length) { returnitem = array3[0]; array3[0] = lastelt; _siftup(array3, 0, cmp); } else { returnitem = lastelt; } return returnitem; }, "heappop"); heapreplace = /* @__PURE__ */ __name(function(array3, item, cmp) { var returnitem; if (cmp == null) { cmp = defaultCmp; } returnitem = array3[0]; array3[0] = item; _siftup(array3, 0, cmp); return returnitem; }, "heapreplace"); heappushpop = /* @__PURE__ */ __name(function(array3, item, cmp) { var _ref; if (cmp == null) { cmp = defaultCmp; } if (array3.length && cmp(array3[0], item) < 0) { _ref = [array3[0], item], item = _ref[0], array3[0] = _ref[1]; _siftup(array3, 0, cmp); } return item; }, "heappushpop"); heapify = /* @__PURE__ */ __name(function(array3, cmp) { var i, _i, _len, _ref1, _results, _results1; if (cmp == null) { cmp = defaultCmp; } _ref1 = function() { _results1 = []; for (var _j = 0, _ref = floor(array3.length / 2); 0 <= _ref ? _j < _ref : _j > _ref; 0 <= _ref ? _j++ : _j--) { _results1.push(_j); } return _results1; }.apply(this).reverse(); _results = []; for (_i = 0, _len = _ref1.length; _i < _len; _i++) { i = _ref1[_i]; _results.push(_siftup(array3, i, cmp)); } return _results; }, "heapify"); updateItem = /* @__PURE__ */ __name(function(array3, item, cmp) { var pos; if (cmp == null) { cmp = defaultCmp; } pos = array3.indexOf(item); if (pos === -1) { return; } _siftdown(array3, 0, pos, cmp); return _siftup(array3, pos, cmp); }, "updateItem"); nlargest = /* @__PURE__ */ __name(function(array3, n, cmp) { var elem, result, _i, _len, _ref; if (cmp == null) { cmp = defaultCmp; } result = array3.slice(0, n); if (!result.length) { return result; } heapify(result, cmp); _ref = array3.slice(n); for (_i = 0, _len = _ref.length; _i < _len; _i++) { elem = _ref[_i]; heappushpop(result, elem, cmp); } return result.sort(cmp).reverse(); }, "nlargest"); nsmallest = /* @__PURE__ */ __name(function(array3, n, cmp) { var elem, los, result, _i, _j, _len, _ref, _ref1, _results; if (cmp == null) { cmp = defaultCmp; } if (n * 10 <= array3.length) { result =