{"version":3,"file":"order-by-first-call.cjs","sources":["../../../../../../node_modules/@sinonjs/commons/lib/order-by-first-call.js"],"sourcesContent":["\"use strict\";\n\nvar sort = require(\"./prototypes/array\").sort;\nvar slice = require(\"./prototypes/array\").slice;\n\n/**\n * @private\n */\nfunction comparator(a, b) {\n    // uuid, won't ever be equal\n    var aCall = a.getCall(0);\n    var bCall = b.getCall(0);\n    var aId = (aCall && aCall.callId) || -1;\n    var bId = (bCall && bCall.callId) || -1;\n\n    return aId < bId ? -1 : 1;\n}\n\n/**\n * A Sinon proxy object (fake, spy, stub)\n * @typedef {object} SinonProxy\n * @property {Function} getCall - A method that can return the first call\n */\n\n/**\n * Sorts an array of SinonProxy instances (fake, spy, stub) by their first call\n * @param  {SinonProxy[] | SinonProxy} spies\n * @returns {SinonProxy[]}\n */\nfunction orderByFirstCall(spies) {\n    return sort(slice(spies), comparator);\n}\n\nmodule.exports = orderByFirstCall;\n"],"names":["require$$0"],"mappings":";;;;;;;;;;;AAEA,CAAA,IAAI,IAAI,GAAGA,eAAA,EAA6B,CAAC,IAAI;AAC7C,CAAA,IAAI,KAAK,GAAGA,eAAA,EAA6B,CAAC,KAAK;;AAE/C;AACA;AACA;AACA,CAAA,SAAS,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE;AAC1B;KACI,IAAI,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;KACxB,IAAI,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;KACxB,IAAI,GAAG,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE;KACvC,IAAI,GAAG,GAAG,CAAC,KAAK,IAAI,KAAK,CAAC,MAAM,KAAK,EAAE;;KAEvC,OAAO,GAAG,GAAG,GAAG,GAAG,EAAE,GAAG,CAAC;AAC7B,CAAA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;CACA,SAAS,gBAAgB,CAAC,KAAK,EAAE;KAC7B,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,UAAU,CAAC;AACzC,CAAA;;AAEA,CAAA,kBAAc,GAAG,gBAAgB;;;;;;","x_google_ignoreList":[0]}