{"version":3,"file":"function-bind-c998ad49.js","sources":["../../node_modules/function-bind/implementation.js","../../node_modules/function-bind/index.js"],"sourcesContent":["'use strict';\n\n/* eslint no-invalid-this: 1 */\n\nvar ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';\nvar toStr = Object.prototype.toString;\nvar max = Math.max;\nvar funcType = '[object Function]';\n\nvar concatty = function concatty(a, b) {\n var arr = [];\n\n for (var i = 0; i < a.length; i += 1) {\n arr[i] = a[i];\n }\n for (var j = 0; j < b.length; j += 1) {\n arr[j + a.length] = b[j];\n }\n\n return arr;\n};\n\nvar slicy = function slicy(arrLike, offset) {\n var arr = [];\n for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {\n arr[j] = arrLike[i];\n }\n return arr;\n};\n\nvar joiny = function (arr, joiner) {\n var str = '';\n for (var i = 0; i < arr.length; i += 1) {\n str += arr[i];\n if (i + 1 < arr.length) {\n str += joiner;\n }\n }\n return str;\n};\n\nmodule.exports = function bind(that) {\n var target = this;\n if (typeof target !== 'function' || toStr.apply(target) !== funcType) {\n throw new TypeError(ERROR_MESSAGE + target);\n }\n var args = slicy(arguments, 1);\n\n var bound;\n var binder = function () {\n if (this instanceof bound) {\n var result = target.apply(\n this,\n concatty(args, arguments)\n );\n if (Object(result) === result) {\n return result;\n }\n return this;\n }\n return target.apply(\n that,\n concatty(args, arguments)\n );\n\n };\n\n var boundLength = max(0, target.length - args.length);\n var boundArgs = [];\n for (var i = 0; i < boundLength; i++) {\n boundArgs[i] = '$' + i;\n }\n\n bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);\n\n if (target.prototype) {\n var Empty = function Empty() {};\n Empty.prototype = target.prototype;\n bound.prototype = new Empty();\n Empty.prototype = null;\n }\n\n return bound;\n};\n","'use strict';\n\nvar implementation = require('./implementation');\n\nmodule.exports = Function.prototype.bind || implementation;\n"],"names":["ERROR_MESSAGE","toStr","max","funcType","concatty","a","b","arr","i","j","slicy","arrLike","offset","joiny","joiner","str","implementation","that","target","args","bound","binder","result","boundLength","boundArgs","Empty","require$$0","functionBind"],"mappings":"uVAIA,IAAIA,EAAgB,kDAChBC,EAAQ,OAAO,UAAU,SACzBC,EAAM,KAAK,IACXC,EAAW,oBAEXC,EAAW,SAAkBC,EAAGC,EAAG,CAGnC,QAFIC,EAAM,CAAA,EAEDC,EAAI,EAAGA,EAAIH,EAAE,OAAQG,GAAK,EAC/BD,EAAIC,CAAC,EAAIH,EAAEG,CAAC,EAEhB,QAASC,EAAI,EAAGA,EAAIH,EAAE,OAAQG,GAAK,EAC/BF,EAAIE,EAAIJ,EAAE,MAAM,EAAIC,EAAEG,CAAC,EAG3B,OAAOF,CACX,EAEIG,EAAQ,SAAeC,EAASC,EAAQ,CAExC,QADIL,EAAM,CAAA,EACDC,EAAII,GAAU,EAAGH,EAAI,EAAGD,EAAIG,EAAQ,OAAQH,GAAK,EAAGC,GAAK,EAC9DF,EAAIE,CAAC,EAAIE,EAAQH,CAAC,EAEtB,OAAOD,CACX,EAEIM,EAAQ,SAAUN,EAAKO,EAAQ,CAE/B,QADIC,EAAM,GACDP,EAAI,EAAGA,EAAID,EAAI,OAAQC,GAAK,EACjCO,GAAOR,EAAIC,CAAC,EACRA,EAAI,EAAID,EAAI,SACZQ,GAAOD,GAGf,OAAOC,CACX,EAEAC,EAAiB,SAAcC,EAAM,CACjC,IAAIC,EAAS,KACb,GAAI,OAAOA,GAAW,YAAcjB,EAAM,MAAMiB,CAAM,IAAMf,EACxD,MAAM,IAAI,UAAUH,EAAgBkB,CAAM,EAyB9C,QAvBIC,EAAOT,EAAM,UAAW,CAAC,EAEzBU,EACAC,EAAS,UAAY,CACrB,GAAI,gBAAgBD,EAAO,CACvB,IAAIE,EAASJ,EAAO,MAChB,KACAd,EAASe,EAAM,SAAS,CACxC,EACY,OAAI,OAAOG,CAAM,IAAMA,EACZA,EAEJ,IACV,CACD,OAAOJ,EAAO,MACVD,EACAb,EAASe,EAAM,SAAS,CACpC,CAEA,EAEQI,EAAcrB,EAAI,EAAGgB,EAAO,OAASC,EAAK,MAAM,EAChDK,EAAY,CAAA,EACPhB,EAAI,EAAGA,EAAIe,EAAaf,IAC7BgB,EAAUhB,CAAC,EAAI,IAAMA,EAKzB,GAFAY,EAAQ,SAAS,SAAU,oBAAsBP,EAAMW,EAAW,GAAG,EAAI,2CAA2C,EAAEH,CAAM,EAExHH,EAAO,UAAW,CAClB,IAAIO,EAAQ,UAAiB,GAC7BA,EAAM,UAAYP,EAAO,UACzBE,EAAM,UAAY,IAAIK,EACtBA,EAAM,UAAY,IACrB,CAED,OAAOL,CACX,ECjFIJ,EAAiBU,EAErBC,EAAiB,SAAS,UAAU,MAAQX","x_google_ignoreList":[0,1]}