@bbk47/toolbox 1.0.7 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. package/lib/deferred.d.ts +7 -0
  2. package/lib/deferred.d.ts.map +1 -0
  3. package/lib/deferred.js +8 -4
  4. package/lib/deferred.js.map +1 -0
  5. package/lib/encrypt.d.ts +19 -0
  6. package/lib/encrypt.d.ts.map +1 -0
  7. package/lib/encrypt.js +78 -79
  8. package/lib/encrypt.js.map +1 -0
  9. package/lib/index.d.ts +19 -0
  10. package/lib/index.d.ts.map +1 -0
  11. package/lib/index.js +58 -8
  12. package/lib/index.js.map +1 -0
  13. package/lib/logger.d.ts +11 -0
  14. package/lib/logger.d.ts.map +1 -0
  15. package/lib/logger.js +23 -14
  16. package/lib/logger.js.map +1 -0
  17. package/lib/md5.d.ts +2 -0
  18. package/lib/md5.d.ts.map +1 -0
  19. package/lib/md5.js +9 -6
  20. package/lib/md5.js.map +1 -0
  21. package/lib/merge.d.ts +2 -0
  22. package/lib/merge.d.ts.map +1 -0
  23. package/lib/merge.js +7 -8
  24. package/lib/merge.js.map +1 -0
  25. package/lib/proxy.d.ts +6 -0
  26. package/lib/proxy.d.ts.map +1 -0
  27. package/lib/proxy.js +65 -0
  28. package/lib/proxy.js.map +1 -0
  29. package/lib/retry.d.ts +6 -0
  30. package/lib/retry.d.ts.map +1 -0
  31. package/lib/retry.js +11 -13
  32. package/lib/retry.js.map +1 -0
  33. package/lib/server.d.ts +14 -0
  34. package/lib/server.d.ts.map +1 -0
  35. package/lib/server.js +71 -0
  36. package/lib/server.js.map +1 -0
  37. package/lib/socks5.d.ts +8 -0
  38. package/lib/socks5.d.ts.map +1 -0
  39. package/lib/socks5.js +24 -27
  40. package/lib/socks5.js.map +1 -0
  41. package/lib/timeout.d.ts +2 -0
  42. package/lib/timeout.d.ts.map +1 -0
  43. package/lib/timeout.js +7 -0
  44. package/lib/timeout.js.map +1 -0
  45. package/lib/transport/creater.d.ts +14 -0
  46. package/lib/transport/creater.d.ts.map +1 -0
  47. package/lib/transport/creater.js +72 -0
  48. package/lib/transport/creater.js.map +1 -0
  49. package/lib/transport/helper.d.ts +14 -0
  50. package/lib/transport/helper.d.ts.map +1 -0
  51. package/lib/transport/helper.js +63 -0
  52. package/lib/transport/helper.js.map +1 -0
  53. package/lib/transport/index.d.ts +6 -0
  54. package/lib/transport/index.d.ts.map +1 -0
  55. package/lib/transport/index.js +43 -0
  56. package/lib/transport/index.js.map +1 -0
  57. package/lib/transport/transport.d.ts +23 -0
  58. package/lib/transport/transport.d.ts.map +1 -0
  59. package/lib/transport/transport.js +41 -0
  60. package/lib/transport/transport.js.map +1 -0
  61. package/lib/uuid.d.ts +2 -0
  62. package/lib/uuid.d.ts.map +1 -0
  63. package/lib/uuid.js +14 -20
  64. package/lib/uuid.js.map +1 -0
  65. package/package.json +18 -4
  66. package/src/deferred.ts +14 -0
  67. package/src/encrypt.ts +119 -0
  68. package/src/index.ts +29 -0
  69. package/src/logger.ts +59 -0
  70. package/src/md5.ts +5 -0
  71. package/src/merge.ts +16 -0
  72. package/src/proxy.ts +65 -0
  73. package/src/retry.ts +32 -0
  74. package/src/server.ts +77 -0
  75. package/src/socks5.ts +46 -0
  76. package/src/timeout.ts +3 -0
  77. package/src/transport/creater.ts +88 -0
  78. package/src/transport/helper.ts +73 -0
  79. package/src/transport/index.ts +6 -0
  80. package/src/transport/transport.ts +54 -0
  81. package/src/uuid.ts +37 -0
  82. package/.github/workflows/test.yml +0 -30
  83. package/.prettierrc +0 -11
  84. package/test/deferred.js +0 -24
  85. package/test/encrypt.js +0 -25
  86. package/test/md5.js +0 -9
  87. package/test/merge.js +0 -11
  88. package/test/retry.js +0 -61
  89. package/test/socks5.js +0 -42
  90. package/test/uuid.js +0 -11
package/src/uuid.ts ADDED
@@ -0,0 +1,37 @@
1
+ const lut: string[] = [];
2
+ for (let i = 0; i < 256; i++) {
3
+ lut[i] = (i < 16 ? '0' : '') + i.toString(16);
4
+ }
5
+
6
+ function e7(): string {
7
+ const d0 = (Math.random() * 0xffffffff) | 0;
8
+ const d1 = (Math.random() * 0xffffffff) | 0;
9
+ const d2 = (Math.random() * 0xffffffff) | 0;
10
+ const d3 = (Math.random() * 0xffffffff) | 0;
11
+ return (
12
+ lut[d0 & 0xff] +
13
+ lut[(d0 >> 8) & 0xff] +
14
+ lut[(d0 >> 16) & 0xff] +
15
+ lut[(d0 >> 24) & 0xff] +
16
+ '-' +
17
+ lut[d1 & 0xff] +
18
+ lut[(d1 >> 8) & 0xff] +
19
+ '-' +
20
+ lut[((d1 >> 16) & 0x0f) | 0x40] +
21
+ lut[(d1 >> 24) & 0xff] +
22
+ '-' +
23
+ lut[(d2 & 0x3f) | 0x80] +
24
+ lut[(d2 >> 8) & 0xff] +
25
+ '-' +
26
+ lut[(d2 >> 16) & 0xff] +
27
+ lut[(d2 >> 24) & 0xff] +
28
+ lut[d3 & 0xff] +
29
+ lut[(d3 >> 8) & 0xff] +
30
+ lut[(d3 >> 16) & 0xff] +
31
+ lut[(d3 >> 24) & 0xff]
32
+ );
33
+ }
34
+
35
+ export default function uuid(): string {
36
+ return e7().replace(/-/g, '');
37
+ }
@@ -1,30 +0,0 @@
1
- # This workflow will do a clean install of node dependencies, build the source code and run tests across different versions of node
2
- # For more information see: https://help.github.com/actions/language-and-framework-guides/using-nodejs-with-github-actions
3
-
4
- name: test
5
-
6
- on:
7
- push:
8
- branches: [master]
9
- pull_request:
10
- branches: [master]
11
-
12
- jobs:
13
- build:
14
- runs-on: ubuntu-latest
15
-
16
- strategy:
17
- matrix:
18
- node-version: [10.x, 12.x, 14.x, 15.x]
19
- # See supported Node.js release schedule at https://nodejs.org/en/about/releases/
20
-
21
- steps:
22
- - uses: actions/checkout@v2
23
- - name: Use Node.js ${{ matrix.node-version }}
24
- uses: actions/setup-node@v1
25
- with:
26
- node-version: ${{ matrix.node-version }}
27
- - uses: borales/actions-yarn@v2.0.0
28
- with:
29
- cmd: install # will run `yarn install` command
30
- - run: npm run test
package/.prettierrc DELETED
@@ -1,11 +0,0 @@
1
- {
2
- "printWidth": 200,
3
- "semi": true,
4
- "singleQuote": true,
5
- "trailingComma": "all",
6
- "bracketSpacing": true,
7
- "jsxBracketSameLine": true,
8
- "arrowParens": "always",
9
- "tabWidth": 4,
10
- "useTabs": false
11
- }
package/test/deferred.js DELETED
@@ -1,24 +0,0 @@
1
- const assert = require('assert');
2
- const deferred = require('../lib/deferred');
3
- const { describe } = require('mocha');
4
-
5
- describe('deferred', function () {
6
- it('test deferred resolve', function () {
7
- var defer = deferred();
8
- setTimeout(() => {
9
- defer.resolve("okok")
10
- }, 10);
11
- return defer.promise.then(ret => {
12
- assert.equal(ret, "okok");
13
- });
14
- });
15
- it('test deferred reject', function () {
16
- var defer = deferred();
17
- setTimeout(() => {
18
- defer.reject("err111");
19
- }, 10);
20
- return defer.promise.catch(err => {
21
- assert.equal(err, "err111")
22
- });
23
- });
24
- });
package/test/encrypt.js DELETED
@@ -1,25 +0,0 @@
1
- const assert = require('assert');
2
- const { describe } = require('mocha');
3
- const encrypt = require('../lib/encrypt');
4
-
5
- describe('encrypt', function () {
6
- it('test encrypt example', function () {
7
- const worker = new encrypt.Encryptor('csii2019', 'aes-256-cfb');
8
-
9
- const result1 = worker.encrypt(Buffer.from('hello,world'));
10
- const result2 = worker.encrypt(Buffer.from('818c9ba2109b4c505155aebf6d3647a3'));
11
- const result3 = worker.encrypt(Buffer.from('818c9ba2109b4c505155aebf6d3647a2'));
12
-
13
- // console.log(result1.toString('hex'));
14
- // console.log(result2.toString('hex'));
15
- // console.log(result3.toString('hex'));
16
-
17
- const desret1 = worker.decrypt(result1).toString();
18
- const desret2 = worker.decrypt(result2).toString();
19
- const desret3 = worker.decrypt(result3).toString();
20
-
21
- assert.equal(desret1, 'hello,world', 'encrypt example1');
22
- assert.equal(desret2, '818c9ba2109b4c505155aebf6d3647a3');
23
- assert.equal(desret3, '818c9ba2109b4c505155aebf6d3647a2');
24
- });
25
- });
package/test/md5.js DELETED
@@ -1,9 +0,0 @@
1
- const assert = require('assert');
2
- const md5 = require('../lib/md5');
3
- const { describe } = require('mocha');
4
-
5
- describe('md5', function () {
6
- it('test md5 example', function () {
7
- assert.equal(md5('admin'), '21232f297a57a5a743894a0e4a801fc3');
8
- });
9
- });
package/test/merge.js DELETED
@@ -1,11 +0,0 @@
1
- const assert = require('assert');
2
- const merge = require('../lib/merge');
3
- const { describe } = require('mocha');
4
-
5
- describe('socks5', function () {
6
- it('test object merge', function () {
7
- var obj = merge({ sss: 1 }, { sss: 123 }, { bb: 456 }, { sss: null });
8
- assert.equal(obj.sss, 123);
9
- assert.equal(obj.bb, 456);
10
- });
11
- });
package/test/retry.js DELETED
@@ -1,61 +0,0 @@
1
- const assert = require('assert');
2
- const retry = require('../lib/retry');
3
- const { describe } = require('mocha');
4
-
5
- describe('retry', function () {
6
- it('test retry max count', function () {
7
- const awaitErrorTask = () => {
8
- return new Promise((s, reject) => reject('xxxxxx'));
9
- }
10
- return retry(awaitErrorTask).then(() => {
11
- throw Error("unexcept exec");
12
- }).catch(err => {
13
- assert.equal("expect retryCount 5 is attached!", err.message);
14
- });
15
-
16
- });
17
-
18
- it('test retry custom max count', function () {
19
- let maxcount = 10;
20
- const taskfn = () => {
21
- return new Promise((s, reject) => reject('err'));
22
- }
23
- return retry(taskfn, { times: maxcount }).then(() => {
24
- throw Error("unexcept exec");
25
- }).catch(err => {
26
- assert.equal("expect retryCount 10 is attached!", err.message);
27
- });
28
- });
29
-
30
- it('test retry errorcall', function () {
31
- let maxcount = 10;
32
- let start = 0;
33
- const taskfn = () => {
34
- start++;
35
- return new Promise((s, reject) => reject(Error('retryerr:' + start)));
36
- }
37
- return retry(taskfn, { times: maxcount }, function (err) {
38
- assert.equal("retryerr:" + start, err.message);
39
- }).then(() => {
40
- throw Error("unexcept exec");
41
- }).catch(err => {
42
- assert.equal("expect retryCount 10 is attached!", err.message);
43
- });
44
- });
45
-
46
- it('test retry interval args', function (done) {
47
- let start = 0;
48
- const taskfn = () => {
49
- start++;
50
- return new Promise((s, reject) => reject(Error('retryerr:' + start)));
51
- }
52
- let startTime =Date.now();
53
- retry(taskfn, { interval: 100 }, function (err) {
54
- assert.equal("retryerr:" + start, err.message);
55
- }).catch(err => {
56
- assert.equal(Date.now()-startTime > 5*100,true);
57
- assert.equal("expect retryCount 5 is attached!", err.message);
58
- done();
59
- });
60
- });
61
- });
package/test/socks5.js DELETED
@@ -1,42 +0,0 @@
1
- const assert = require('assert');
2
- const socks5 = require('../lib/socks5');
3
- const { describe } = require('mocha');
4
-
5
- describe('socks5', function () {
6
-
7
- it('test socks5 parse ip example', function () {
8
- const obj1 = socks5.parseSocks5Addr(Buffer.from('010102040822c3', 'hex'));
9
- assert.equal(obj1.dstAddr, '1.2.4.8');
10
- assert.equal(obj1.dstPort, 8899);
11
-
12
- const obj2 = socks5.parseSocks5Addr(Buffer.from('01b53abd171566', 'hex'));
13
- assert.equal(obj2.dstAddr, '181.58.189.23');
14
- assert.equal(obj2.dstPort, 5478);
15
- });
16
-
17
- it('test socks5 parse domain example', function () {
18
- const obj1 = socks5.parseSocks5Addr(Buffer.from('030d7777772e62616964752e636f6d044b', 'hex'));
19
- assert.equal(obj1.dstAddr, 'www.baidu.com');
20
- assert.equal(obj1.dstPort, 1099);
21
-
22
- const obj2 = socks5.parseSocks5Addr(Buffer.from('03196b6566646b612e313233312e6131323362616964752e636f6dfffe', 'hex'));
23
- assert.equal(obj2.dstAddr, 'kefdka.1231.a123baidu.com');
24
- assert.equal(obj2.dstPort, 65534);
25
- });
26
-
27
- it('test socks5 build ipv4 example', function () {
28
- const buf1 = socks5.buildSocks5Addr("1.2.4.8",8899);
29
- assert.equal(buf1.toString('hex'), '010102040822c3');
30
- const buf2 = socks5.buildSocks5Addr("181.58.189.23",5478);
31
- assert.equal(buf2.toString('hex'), '01b53abd171566');
32
- });
33
-
34
- it('test socks5 build domain example', function () {
35
- const buf1 = socks5.buildSocks5Addr("www.baidu.com",1099);
36
- assert.equal(buf1.toString('hex'), '030d7777772e62616964752e636f6d044b');
37
- const buf2 = socks5.buildSocks5Addr("kefdka.1231.a123baidu.com",65534);
38
- assert.equal(buf2.toString('hex'), '03196b6566646b612e313233312e6131323362616964752e636f6dfffe');
39
- });
40
-
41
-
42
- });
package/test/uuid.js DELETED
@@ -1,11 +0,0 @@
1
- const assert = require('assert');
2
- const uuid = require('../lib/uuid');
3
- const { describe } = require('mocha');
4
- const reg = /^(\{){0,1}[0-9a-fA-F]{8}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{4}[0-9a-fA-F]{12}(\}){0,1}$/;
5
-
6
- describe('uuid', function () {
7
- it('test uuid example', function () {
8
- const uid = uuid();
9
- assert.equal(reg.test(uid), true);
10
- });
11
- });