New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

utility

Package Overview
Dependencies
Maintainers
3
Versions
64
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

utility - npm Package Compare versions

Comparing version 2.2.0 to 2.3.0

dist/commonjs/timeout.d.ts

1

dist/commonjs/index.d.ts

@@ -11,1 +11,2 @@ export * from './array.js';

export * from './object.js';
export * from './timeout.js';

3

dist/commonjs/index.js

@@ -27,2 +27,3 @@ "use strict";

__exportStar(require("./object.js"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUEyQjtBQUMzQiw4Q0FBNEI7QUFDNUIsNENBQTBCO0FBQzFCLGdEQUE4QjtBQUM5QiwyQ0FBeUI7QUFDekIsNENBQTBCO0FBQzFCLDhDQUE0QjtBQUM1Qiw4Q0FBNEI7QUFDNUIsZ0RBQThCO0FBQzlCLDhDQUE0QiJ9
__exportStar(require("./timeout.js"), exports);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDZDQUEyQjtBQUMzQiw4Q0FBNEI7QUFDNUIsNENBQTBCO0FBQzFCLGdEQUE4QjtBQUM5QiwyQ0FBeUI7QUFDekIsNENBQTBCO0FBQzFCLDhDQUE0QjtBQUM1Qiw4Q0FBNEI7QUFDNUIsZ0RBQThCO0FBQzlCLDhDQUE0QjtBQUM1QiwrQ0FBNkIifQ==

@@ -11,1 +11,2 @@ export * from './array.js';

export * from './object.js';
export * from './timeout.js';

@@ -11,2 +11,3 @@ export * from './array.js';

export * from './object.js';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUMifQ==
export * from './timeout.js';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxZQUFZLENBQUM7QUFDM0IsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxjQUFjLENBQUMifQ==
{
"name": "utility",
"version": "2.2.0"
"version": "2.3.0"
}
{
"name": "utility",
"version": "2.2.0",
"version": "2.3.0",
"description": "A collection of useful utilities.",

@@ -10,3 +10,3 @@ "scripts": {

"test-local": "egg-bin test",
"preci": "npm run prepublishOnly",
"preci": "npm run lint && npm run prepublishOnly && attw --pack",
"ci": "egg-bin cov",

@@ -20,2 +20,3 @@ "prepublishOnly": "tshy && tshy-after"

"devDependencies": {
"@arethetypeswrong/cli": "^0.17.1",
"@eggjs/tsconfig": "^1.3.3",

@@ -22,0 +23,0 @@ "@types/escape-html": "^1.0.4",

@@ -7,2 +7,3 @@ # utility

[![npm download][download-image]][download-url]
[![Node.js Version](https://img.shields.io/node/v/utility.svg?style=flat)](https://nodejs.org/en/download/)

@@ -33,3 +34,3 @@ [npm-image]: https://img.shields.io/npm/v/utility.svg?style=flat-square

```ts
import * as utility from 'utility';
import * as utils from 'utility';
```

@@ -39,10 +40,17 @@

```js
utils.md5('苏千').should.equal('5f733c47c58a077d61257102b2d44481');
utils.md5(Buffer.from('苏千')).should.equal('5f733c47c58a077d61257102b2d44481');
```ts
import { md5 } from 'utility';
md5('苏千');
// '5f733c47c58a077d61257102b2d44481'
md5(Buffer.from('苏千'));
// '5f733c47c58a077d61257102b2d44481'
// md5 base64 format
utils.md5('苏千', 'base64'); // 'X3M8R8WKB31hJXECstREgQ=='
md5('苏千', 'base64');
// 'X3M8R8WKB31hJXECstREgQ=='
// Object md5 hash. Sorted by key, and JSON.stringify. See source code for detail
utils.md5({foo: 'bar', bar: 'foo'}).should.equal(utils.md5({bar: 'foo', foo: 'bar'}));
md5({foo: 'bar', bar: 'foo'}).should.equal(md5({bar: 'foo', foo: 'bar'}));
```

@@ -52,10 +60,17 @@

```js
utils.sha1('苏千').should.equal('0a4aff6bab634b9c2f99b71f25e976921fcde5a5');
utils.sha1(Buffer.from('苏千')).should.equal('0a4aff6bab634b9c2f99b71f25e976921fcde5a5');
```ts
import { sha1 } from 'utility';
sha1('苏千');
// '0a4aff6bab634b9c2f99b71f25e976921fcde5a5'
sha1(Buffer.from('苏千'));
// '0a4aff6bab634b9c2f99b71f25e976921fcde5a5'
// sha1 base64 format
utils.sha1('苏千', 'base64'); // 'Ckr/a6tjS5wvmbcfJel2kh/N5aU='
sha1('苏千', 'base64');
// 'Ckr/a6tjS5wvmbcfJel2kh/N5aU='
// Object sha1 hash. Sorted by key, and JSON.stringify. See source code for detail
utils.sha1({foo: 'bar', bar: 'foo'}).should.equal(utils.sha1({bar: 'foo', foo: 'bar'}));
sha1({foo: 'bar', bar: 'foo'}).should.equal(sha1({bar: 'foo', foo: 'bar'}));
```

@@ -65,4 +80,7 @@

```js
utils.sha256(Buffer.from('苏千')).should.equal('75dd03e3fcdbba7d5bec07900bae740cc8e361d77e7df8949de421d3df5d3635');
```ts
import { sha256 } from 'utility';
sha256(Buffer.from('苏千'));
// '75dd03e3fcdbba7d5bec07900bae740cc8e361d77e7df8949de421d3df5d3635'
```

@@ -72,5 +90,8 @@

```js
```ts
import { hmac } from 'utility';
// hmac-sha1 with base64 output encoding
utils.hmac('sha1', 'I am a key', 'hello world'); // 'pO6J0LKDxRRkvSECSEdxwKx84L0='
hmac('sha1', 'I am a key', 'hello world');
// 'pO6J0LKDxRRkvSECSEdxwKx84L0='
```

@@ -80,17 +101,26 @@

```js
```ts
import { base64encode, base64decode, escape, unescape, encodeURIComponent, decodeURIComponent } from 'utility';
// base64 encode
utils.base64encode('你好¥'); // '5L2g5aW977+l'
utils.base64decode('5L2g5aW977+l') // '你好¥'
base64encode('你好¥');
// '5L2g5aW977+l'
base64decode('5L2g5aW977+l');
// '你好¥'
// urlsafe base64 encode
utils.base64encode('你好¥', true); // '5L2g5aW977-l'
utils.base64decode('5L2g5aW977-l', true); // '你好¥'
base64encode('你好¥', true);
// '5L2g5aW977-l'
base64decode('5L2g5aW977-l', true);
// '你好¥'
// html escape and unescape
utils.escape('<script/>"& &amp;'); // '&lt;script/&gt;&quot;&amp; &amp;amp;'
utils.unescape('&lt;script/&gt;&quot;&amp; &amp;amp;'); // '<script/>"& &amp;'
escape('<script/>"& &amp;');
// '&lt;script/&gt;&quot;&amp; &amp;amp;'
unescape('&lt;script/&gt;&quot;&amp; &amp;amp;');
// '<script/>"& &amp;'
// Safe encodeURIComponent and decodeURIComponent
utils.decodeURIComponent(utils.encodeURIComponent('你好, nodejs')).should.equal('你好, nodejs');
decodeURIComponent(encodeURIComponent('你好, Node.js'));
// '你好, Node.js'
```

@@ -100,3 +130,3 @@

___[WARNNING] getIP() remove, PLEASE use `https://github.com/node-modules/address` module instead.___
___[WARNNING] `getIP()` remove, PLEASE use `https://github.com/node-modules/address` module instead.___

@@ -175,8 +205,14 @@ ```js

### Timers
### Timeout
```js
utils.setImmediate(function () {
console.log('hi');
});
#### `runWithTimeout(scope, timeout)`
Executes a scope promise with a specified timeout duration. If the promise doesn't resolve within the timeout period, it will reject with a `TimeoutError`.
```ts
import { runWithTimeout } from 'utility';
await runWithTimeout(async () => {
// long run operation here
}, 1000);
```

@@ -228,5 +264,5 @@

```js
import * as utility from 'utility';
import { UNSTABLE_METHOD } from 'utility';
utility.UNSTABLE_METHOD.try(...);
UNSTABLE_METHOD.try(...);
...

@@ -239,3 +275,3 @@ ```

function foo() {
const arr = utility.argumentsToArray(arguments);
const arr = utils.argumentsToArray(arguments);
console.log(arr.join(', '));

@@ -282,6 +318,6 @@ }

// assign object
utility.assign({}, { a: 1 });
utils.assign({}, { a: 1 });
// assign multiple object
utility.assign({}, [ { a: 1 }, { b: 1 } ]);
utils.assign({}, [ { a: 1 }, { b: 1 } ]);
```

@@ -288,0 +324,0 @@

@@ -11,1 +11,2 @@ export * from './array.js';

export * from './object.js';
export * from './timeout.js';
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc