memoize-one
Advanced tools
Comparing version 5.1.0-beta.3 to 5.1.0-beta.4
'use strict'; | ||
Object.defineProperty(exports, '__esModule', { value: true }); | ||
function areInputsEqual(newInputs, lastInputs) { | ||
@@ -40,3 +38,2 @@ if (newInputs.length !== lastInputs.length) { | ||
exports.default = memoizeOne; | ||
exports.memoizeOne = memoizeOne; | ||
module.exports = memoizeOne; |
export declare type EqualityFn = (newArgs: unknown[], lastArgs: unknown[]) => boolean; | ||
export declare function memoizeOne<ResultFn extends (this: any, ...newArgs: any[]) => ReturnType<ResultFn>>(resultFn: ResultFn, isEqual?: EqualityFn): ResultFn; | ||
export default memoizeOne; | ||
export default function memoizeOne<ResultFn extends (this: any, ...newArgs: any[]) => ReturnType<ResultFn>>(resultFn: ResultFn, isEqual?: EqualityFn): ResultFn; |
@@ -37,2 +37,1 @@ function areInputsEqual(newInputs, lastInputs) { | ||
export default memoizeOne; | ||
export { memoizeOne }; |
(function (global, factory) { | ||
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) : | ||
typeof define === 'function' && define.amd ? define(['exports'], factory) : | ||
(global = global || self, factory(global.memoizeOne = {})); | ||
}(this, function (exports) { 'use strict'; | ||
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : | ||
typeof define === 'function' && define.amd ? define(factory) : | ||
(global = global || self, global.memoizeOne = factory()); | ||
}(this, function () { 'use strict'; | ||
@@ -42,7 +42,4 @@ function areInputsEqual(newInputs, lastInputs) { | ||
exports.default = memoizeOne; | ||
exports.memoizeOne = memoizeOne; | ||
return memoizeOne; | ||
Object.defineProperty(exports, '__esModule', { value: true }); | ||
})); |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).memoizeOne={})}(this,function(e){"use strict";function t(e,t){if(e.length!==t.length)return!1;for(var n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function n(n,r){var i;void 0===r&&(r=t);var o,f=[],u=!1;return function(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return u&&i===this&&r(e,f)||(o=n.apply(this,e),u=!0,i=this,f=e),o}}e.default=n,e.memoizeOne=n,Object.defineProperty(e,"__esModule",{value:!0})}); | ||
!function(e,n){"object"==typeof exports&&"undefined"!=typeof module?module.exports=n():"function"==typeof define&&define.amd?define(n):(e=e||self).memoizeOne=n()}(this,function(){"use strict";function e(e,n){if(e.length!==n.length)return!1;for(var t=0;t<e.length;t++)if(e[t]!==n[t])return!1;return!0}return function(t,r){var i;void 0===r&&(r=e);var f,o=[],u=!1;return function(){for(var e=[],n=0;n<arguments.length;n++)e[n]=arguments[n];return u&&i===this&&r(e,o)||(f=t.apply(this,e),u=!0,i=this,o=e),f}}}); |
{ | ||
"name": "memoize-one", | ||
"version": "5.1.0-beta.3", | ||
"version": "5.1.0-beta.4", | ||
"description": "A memoization library which only remembers the latest invocation", | ||
@@ -5,0 +5,0 @@ "main": "dist/memoize-one.cjs.js", |
@@ -7,6 +7,6 @@ # memoize-one | ||
[![npm](https://img.shields.io/npm/v/memoize-one.svg)](https://www.npmjs.com/package/memoize-one) | ||
![types](https://img.shields.io/badge/types-typescript%20%7C%20flow-blueviolet) | ||
[![dependencies](https://david-dm.org/alexreardon/memoize-one.svg)](https://david-dm.org/alexreardon/memoize-one) | ||
[![minzip](https://img.shields.io/bundlephobia/minzip/memoize-one.svg)](https://www.npmjs.com/package/memoize-one) | ||
[![Downloads per month](https://img.shields.io/npm/dm/memoize-one.svg)](https://www.npmjs.com/package/memoize-one) | ||
[![min](https://img.shields.io/bundlephobia/min/memoize-one.svg)](https://www.npmjs.com/package/memoize-one) | ||
[![minzip](https://img.shields.io/bundlephobia/minzip/memoize-one.svg)](https://www.npmjs.com/package/memoize-one) | ||
@@ -19,4 +19,2 @@ ## Rationale | ||
### Standard usage | ||
```js | ||
@@ -55,18 +53,2 @@ import memoizeOne from 'memoize-one'; | ||
## Module usage | ||
### ES6 module | ||
```js | ||
import memoizeOne from 'memoize-one'; | ||
``` | ||
### CommonJS | ||
If you are in a CommonJS environment (eg [Node](https://nodejs.org)), then **you will need to add `.default` to your import**: | ||
```js | ||
const memoizeOne = require('memoize-one').default; | ||
``` | ||
## Custom equality function | ||
@@ -205,3 +187,3 @@ | ||
## Performance :rocket: | ||
## Performance 🚀 | ||
@@ -223,3 +205,3 @@ ### Tiny | ||
## Code health :thumbsup: | ||
## Code health 👍 | ||
@@ -229,4 +211,4 @@ - Tested with all built in [JavaScript types](https://github.com/getify/You-Dont-Know-JS/blob/master/types%20%26%20grammar/ch1.md). | ||
- [Continuous integration](https://travis-ci.org/alexreardon/memoize-one) to run tests and type checks. | ||
- [`Flow` types](http://flowtype.org) for safer internal execution and external consumption. Also allows for editor autocompletion. | ||
- Follows [Semantic versioning (2.0)](http://semver.org/) for safer consumption. | ||
- Written in `Typescript` | ||
- Correct typing for `Typescript` and `flow` type systems | ||
- No dependencies |
@@ -5,3 +5,3 @@ import areInputsEqual from './are-inputs-equal'; | ||
export function memoizeOne< | ||
export default function memoizeOne< | ||
// Need to use 'any' rather than 'unknown' here as it has | ||
@@ -35,3 +35,1 @@ // The correct Generic narrowing behaviour. | ||
} | ||
export default memoizeOne; |
18487
158
209