@stdlib/esm
Version:
ES module distribution for Stdlib, a standard library for JavaScript and Node.js.
3 lines • 1.21 kB
JavaScript
// This file is a part of stdlib. License is Apache-2.0: http://www.apache.org/licenses/LICENSE-2.0
import r from"./../utils/define-nonenumerable-read-only-property.js";import e from"./../assert/is-function.js";import t from"./../assert/is-iterator-like.js";import n from"./../assert/has-own-property.js";import o from"./../symbol/iterator.js";var a=r,u=e,i=t,l=n,f=o;function s(r,e){var t,n;for(t=r.length,n=0;n<t;n++)if(r[n]===e)return!0;return!1}function m(r,e,t){var n,o,p;if(!i(r))throw new TypeError("invalid argument. First argument must be an iterator protocol-compliant object. Value: `"+r+"`.");if(!u(e))throw new TypeError("invalid argument. Second argument must be a function. Value: `"+e+"`.");return o=[],a(n={},"next",(function(){var n,a,u;if(p)return{done:!0};for(;;){if((u=r.next()).done)return p=!0,n={},l(u,"value")&&(a=e.call(t,u.value),!1===s(o,a)&&(n.value=u.value)),n.done=!0,n;if(a=e.call(t,u.value),!1===s(o,a)){o.push(a);break}}return{value:u.value,done:!1}})),a(n,"return",(function(r){if(p=!0,arguments.length)return{value:r,done:!0};return{done:!0}})),f&&u(r[f])&&a(n,f,(function(){return m(r[f](),e,t)})),n}var p=m;export default p;
//# sourceMappingURL=unique-by-hash.js.map