@chainlink/external-adapter-framework 2.7.0 → 2.7.2
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.
- package/README.md +1 -1
- package/adapter/basic.js +1 -1
- package/adapter/basic.js.map +1 -1
- package/adapter/types.d.ts +1 -0
- package/generator-adapter/node_modules/.yarn-integrity +14 -13
- package/generator-adapter/node_modules/@types/node/README.md +2 -2
- package/generator-adapter/node_modules/@types/node/buffer.d.ts +1 -2
- package/generator-adapter/node_modules/@types/node/child_process.d.ts +26 -122
- package/generator-adapter/node_modules/@types/node/crypto.d.ts +17 -1
- package/generator-adapter/node_modules/@types/node/fs/promises.d.ts +41 -37
- package/generator-adapter/node_modules/@types/node/fs.d.ts +55 -44
- package/generator-adapter/node_modules/@types/node/globals.d.ts +150 -344
- package/generator-adapter/node_modules/@types/node/http.d.ts +6 -6
- package/generator-adapter/node_modules/@types/node/http2.d.ts +12 -1
- package/generator-adapter/node_modules/@types/node/https.d.ts +5 -0
- package/generator-adapter/node_modules/@types/node/index.d.ts +7 -3
- package/generator-adapter/node_modules/@types/node/{inspector.d.ts → inspector.generated.d.ts} +219 -10
- package/generator-adapter/node_modules/@types/node/module.d.ts +24 -0
- package/generator-adapter/node_modules/@types/node/package.json +3 -83
- package/generator-adapter/node_modules/@types/node/process.d.ts +3 -2
- package/generator-adapter/node_modules/@types/node/readline/promises.d.ts +0 -1
- package/generator-adapter/node_modules/@types/node/sqlite.d.ts +35 -0
- package/generator-adapter/node_modules/@types/node/stream/web.d.ts +4 -0
- package/generator-adapter/node_modules/@types/node/stream.d.ts +0 -11
- package/generator-adapter/node_modules/@types/node/test.d.ts +8 -0
- package/generator-adapter/node_modules/@types/node/ts5.6/index.d.ts +7 -3
- package/generator-adapter/node_modules/@types/node/url.d.ts +12 -3
- package/generator-adapter/node_modules/@types/node/util.d.ts +5 -2
- package/generator-adapter/node_modules/@types/node/v8.d.ts +27 -30
- package/generator-adapter/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
- package/generator-adapter/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
- package/generator-adapter/node_modules/@types/node/{dom-events.d.ts → web-globals/events.d.ts} +47 -52
- package/generator-adapter/node_modules/@types/node/web-globals/fetch.d.ts +46 -0
- package/generator-adapter/node_modules/@types/node/web-globals/navigator.d.ts +22 -0
- package/generator-adapter/node_modules/@types/node/web-globals/storage.d.ts +24 -0
- package/generator-adapter/node_modules/@types/node/worker_threads.d.ts +39 -3
- package/generator-adapter/node_modules/@types/node/zlib.d.ts +8 -2
- package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.d.ts +3 -0
- package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js +12 -2
- package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js.map +1 -1
- package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.d.ts +3 -0
- package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js +12 -2
- package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js.map +1 -1
- package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.d.ts +3 -0
- package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js +12 -2
- package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js.map +1 -1
- package/generator-adapter/node_modules/@yeoman/adapter/package.json +4 -4
- package/generator-adapter/node_modules/@yeoman/adapter/types/adapter.d.ts +12 -1
- package/generator-adapter/node_modules/@yeoman/types/package.json +3 -3
- package/generator-adapter/node_modules/@yeoman/types/types/environment/environment.d.ts +4 -1
- package/generator-adapter/node_modules/@yeoman/types/types/environment/methods-options.d.ts +7 -3
- package/generator-adapter/node_modules/@yeoman/types/types/generator/generator.d.ts +8 -5
- package/generator-adapter/node_modules/@yeoman/types/types/generator/utils.d.ts +1 -0
- package/generator-adapter/node_modules/ansi-regex/index.d.ts +9 -13
- package/generator-adapter/node_modules/ansi-regex/index.js +6 -6
- package/generator-adapter/node_modules/ansi-regex/license +1 -1
- package/generator-adapter/node_modules/ansi-regex/package.json +12 -6
- package/generator-adapter/node_modules/ansi-regex/readme.md +4 -22
- package/generator-adapter/node_modules/cli-spinners/index.d.ts +122 -111
- package/generator-adapter/node_modules/cli-spinners/index.js +7 -11
- package/generator-adapter/node_modules/cli-spinners/package.json +15 -9
- package/generator-adapter/node_modules/cli-spinners/readme.md +23 -3
- package/generator-adapter/node_modules/cli-spinners/spinners.json +44 -1
- package/generator-adapter/node_modules/emoji-regex/README.md +14 -48
- package/generator-adapter/node_modules/emoji-regex/index.d.ts +21 -1
- package/generator-adapter/node_modules/emoji-regex/index.js +5 -3
- package/generator-adapter/node_modules/emoji-regex/package.json +12 -7
- package/generator-adapter/node_modules/get-east-asian-width/index.js +2 -3
- package/generator-adapter/node_modules/get-east-asian-width/lookup.js +11 -11
- package/generator-adapter/node_modules/get-east-asian-width/package.json +1 -1
- package/generator-adapter/node_modules/ora/index.d.ts +3 -3
- package/generator-adapter/node_modules/ora/index.js +67 -48
- package/generator-adapter/node_modules/ora/node_modules/chalk/package.json +83 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/readme.md +297 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/index.d.ts +325 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/index.js +225 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/utilities.js +33 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +236 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/ansi-styles/index.js +223 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/browser.d.ts +1 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/browser.js +34 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/index.d.ts +55 -0
- package/generator-adapter/node_modules/ora/node_modules/chalk/source/vendor/supports-color/index.js +190 -0
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser-symbols.js +4 -0
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser.js +1 -8
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.js +1 -20
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/package.json +10 -7
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/symbols.js +14 -0
- package/generator-adapter/node_modules/ora/node_modules/strip-ansi/package.json +3 -1
- package/generator-adapter/node_modules/ora/node_modules/strip-ansi/readme.md +5 -9
- package/generator-adapter/node_modules/ora/package.json +13 -13
- package/generator-adapter/node_modules/ora/readme.md +49 -3
- package/generator-adapter/node_modules/string-width/index.js +52 -45
- package/generator-adapter/node_modules/string-width/package.json +8 -7
- package/generator-adapter/node_modules/{string-width → strip-ansi}/node_modules/ansi-regex/index.d.ts +13 -9
- package/generator-adapter/node_modules/strip-ansi/node_modules/ansi-regex/index.js +10 -0
- package/generator-adapter/node_modules/{ora/node_modules/log-symbols/node_modules/is-unicode-supported → strip-ansi/node_modules/ansi-regex}/license +1 -1
- package/generator-adapter/node_modules/{string-width → strip-ansi}/node_modules/ansi-regex/package.json +6 -12
- package/generator-adapter/node_modules/{ora → strip-ansi}/node_modules/ansi-regex/readme.md +22 -4
- package/generator-adapter/package.json +3 -3
- package/package.json +15 -14
- package/rate-limiting/index.d.ts +1 -1
- package/rate-limiting/index.js +5 -1
- package/rate-limiting/index.js.map +1 -1
- package/transports/http.d.ts +1 -2
- package/transports/websocket.js +53 -17
- package/transports/websocket.js.map +1 -1
- package/generator-adapter/node_modules/emoji-regex/index.mjs +0 -4
- package/generator-adapter/node_modules/ora/node_modules/ansi-regex/index.d.ts +0 -33
- package/generator-adapter/node_modules/ora/node_modules/ansi-regex/index.js +0 -10
- package/generator-adapter/node_modules/ora/node_modules/ansi-regex/package.json +0 -61
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/index.d.ts +0 -12
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/index.js +0 -17
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/package.json +0 -43
- package/generator-adapter/node_modules/ora/node_modules/log-symbols/node_modules/is-unicode-supported/readme.md +0 -35
- package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/index.js +0 -10
- package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/license +0 -9
- package/generator-adapter/node_modules/string-width/node_modules/ansi-regex/readme.md +0 -60
- package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
- package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/README.md +0 -73
- package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/index.d.ts +0 -23
- package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/index.js +0 -6
- package/generator-adapter/node_modules/wrap-ansi/node_modules/emoji-regex/package.json +0 -50
- /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/es2015/index.js +0 -0
- /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/es2015/text.js +0 -0
- /package/generator-adapter/node_modules/{wrap-ansi/node_modules/emoji-regex → emoji-regex}/text.js +0 -0
- /package/generator-adapter/node_modules/ora/node_modules/{ansi-regex → chalk}/license +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "string-width",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "8.1.0",
|
|
4
4
|
"description": "Get the visual width of a string - the number of columns required to display it",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "sindresorhus/string-width",
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
},
|
|
18
18
|
"sideEffects": false,
|
|
19
19
|
"engines": {
|
|
20
|
-
"node": ">=
|
|
20
|
+
"node": ">=20"
|
|
21
21
|
},
|
|
22
22
|
"scripts": {
|
|
23
23
|
"test": "xo && ava && tsd"
|
|
@@ -36,6 +36,8 @@
|
|
|
36
36
|
"columns",
|
|
37
37
|
"fullwidth",
|
|
38
38
|
"full-width",
|
|
39
|
+
"wcwidth",
|
|
40
|
+
"wcswidth",
|
|
39
41
|
"full",
|
|
40
42
|
"ansi",
|
|
41
43
|
"escape",
|
|
@@ -52,13 +54,12 @@
|
|
|
52
54
|
"east-asian-width"
|
|
53
55
|
],
|
|
54
56
|
"dependencies": {
|
|
55
|
-
"
|
|
56
|
-
"get-east-asian-width": "^1.0.0",
|
|
57
|
+
"get-east-asian-width": "^1.3.0",
|
|
57
58
|
"strip-ansi": "^7.1.0"
|
|
58
59
|
},
|
|
59
60
|
"devDependencies": {
|
|
60
|
-
"ava": "^
|
|
61
|
-
"tsd": "^0.
|
|
62
|
-
"xo": "^
|
|
61
|
+
"ava": "^6.4.1",
|
|
62
|
+
"tsd": "^0.33.0",
|
|
63
|
+
"xo": "^1.2.2"
|
|
63
64
|
}
|
|
64
65
|
}
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
1
|
+
declare namespace ansiRegex {
|
|
2
|
+
interface Options {
|
|
3
|
+
/**
|
|
4
|
+
Match only the first ANSI escape.
|
|
4
5
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
}
|
|
6
|
+
@default false
|
|
7
|
+
*/
|
|
8
|
+
onlyFirst: boolean;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
9
11
|
|
|
10
12
|
/**
|
|
11
13
|
Regular expression for matching ANSI escape codes.
|
|
12
14
|
|
|
13
15
|
@example
|
|
14
16
|
```
|
|
15
|
-
import ansiRegex
|
|
17
|
+
import ansiRegex = require('ansi-regex');
|
|
16
18
|
|
|
17
19
|
ansiRegex().test('\u001B[4mcake\u001B[0m');
|
|
18
20
|
//=> true
|
|
@@ -30,4 +32,6 @@ ansiRegex().test('cake');
|
|
|
30
32
|
//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
|
|
31
33
|
```
|
|
32
34
|
*/
|
|
33
|
-
|
|
35
|
+
declare function ansiRegex(options?: ansiRegex.Options): RegExp;
|
|
36
|
+
|
|
37
|
+
export = ansiRegex;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
module.exports = ({onlyFirst = false} = {}) => {
|
|
4
|
+
const pattern = [
|
|
5
|
+
'[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)',
|
|
6
|
+
'(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))'
|
|
7
|
+
].join('|');
|
|
8
|
+
|
|
9
|
+
return new RegExp(pattern, onlyFirst ? undefined : 'g');
|
|
10
|
+
};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (
|
|
3
|
+
Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
6
6
|
|
|
@@ -1,21 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ansi-regex",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "5.0.1",
|
|
4
4
|
"description": "Regular expression for matching ANSI escape codes",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "chalk/ansi-regex",
|
|
7
|
-
"funding": "https://github.com/chalk/ansi-regex?sponsor=1",
|
|
8
7
|
"author": {
|
|
9
8
|
"name": "Sindre Sorhus",
|
|
10
9
|
"email": "sindresorhus@gmail.com",
|
|
11
|
-
"url": "
|
|
10
|
+
"url": "sindresorhus.com"
|
|
12
11
|
},
|
|
13
|
-
"type": "module",
|
|
14
|
-
"exports": "./index.js",
|
|
15
|
-
"types": "./index.d.ts",
|
|
16
|
-
"sideEffects": false,
|
|
17
12
|
"engines": {
|
|
18
|
-
"node": ">=
|
|
13
|
+
"node": ">=8"
|
|
19
14
|
},
|
|
20
15
|
"scripts": {
|
|
21
16
|
"test": "xo && ava && tsd",
|
|
@@ -53,9 +48,8 @@
|
|
|
53
48
|
"pattern"
|
|
54
49
|
],
|
|
55
50
|
"devDependencies": {
|
|
56
|
-
"
|
|
57
|
-
"
|
|
58
|
-
"
|
|
59
|
-
"xo": "^0.54.2"
|
|
51
|
+
"ava": "^2.4.0",
|
|
52
|
+
"tsd": "^0.9.0",
|
|
53
|
+
"xo": "^0.25.3"
|
|
60
54
|
}
|
|
61
55
|
}
|
|
@@ -2,16 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
> Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code)
|
|
4
4
|
|
|
5
|
+
|
|
5
6
|
## Install
|
|
6
7
|
|
|
7
|
-
```sh
|
|
8
|
-
npm install ansi-regex
|
|
9
8
|
```
|
|
9
|
+
$ npm install ansi-regex
|
|
10
|
+
```
|
|
11
|
+
|
|
10
12
|
|
|
11
13
|
## Usage
|
|
12
14
|
|
|
13
15
|
```js
|
|
14
|
-
|
|
16
|
+
const ansiRegex = require('ansi-regex');
|
|
15
17
|
|
|
16
18
|
ansiRegex().test('\u001B[4mcake\u001B[0m');
|
|
17
19
|
//=> true
|
|
@@ -29,6 +31,7 @@ ansiRegex().test('cake');
|
|
|
29
31
|
//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
|
|
30
32
|
```
|
|
31
33
|
|
|
34
|
+
|
|
32
35
|
## API
|
|
33
36
|
|
|
34
37
|
### ansiRegex(options?)
|
|
@@ -41,11 +44,12 @@ Type: `object`
|
|
|
41
44
|
|
|
42
45
|
##### onlyFirst
|
|
43
46
|
|
|
44
|
-
Type: `boolean
|
|
47
|
+
Type: `boolean`<br>
|
|
45
48
|
Default: `false` *(Matches any ANSI escape codes in a string)*
|
|
46
49
|
|
|
47
50
|
Match only the first ANSI escape.
|
|
48
51
|
|
|
52
|
+
|
|
49
53
|
## FAQ
|
|
50
54
|
|
|
51
55
|
### Why do you test for codes not in the ECMA 48 standard?
|
|
@@ -54,7 +58,21 @@ Some of the codes we run as a test are codes that we acquired finding various li
|
|
|
54
58
|
|
|
55
59
|
On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out.
|
|
56
60
|
|
|
61
|
+
|
|
57
62
|
## Maintainers
|
|
58
63
|
|
|
59
64
|
- [Sindre Sorhus](https://github.com/sindresorhus)
|
|
60
65
|
- [Josh Junon](https://github.com/qix-)
|
|
66
|
+
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
<div align="center">
|
|
71
|
+
<b>
|
|
72
|
+
<a href="https://tidelift.com/subscription/pkg/npm-ansi-regex?utm_source=npm-ansi-regex&utm_medium=referral&utm_campaign=readme">Get professional support for this package with a Tidelift subscription</a>
|
|
73
|
+
</b>
|
|
74
|
+
<br>
|
|
75
|
+
<sub>
|
|
76
|
+
Tidelift helps make open source sustainable for maintainers while giving companies<br>assurances about security, maintenance, and licensing for their dependencies.
|
|
77
|
+
</sub>
|
|
78
|
+
</div>
|
|
@@ -12,9 +12,9 @@
|
|
|
12
12
|
],
|
|
13
13
|
"devDependencies": {
|
|
14
14
|
"yeoman-generator": "7.5.1",
|
|
15
|
-
"@yeoman/types": "1.
|
|
15
|
+
"@yeoman/types": "1.8.0",
|
|
16
16
|
"mem-fs": "4.1.2",
|
|
17
|
-
"@yeoman/adapter": "
|
|
18
|
-
"@types/node": "22.
|
|
17
|
+
"@yeoman/adapter": "3.1.0",
|
|
18
|
+
"@types/node": "22.18.6"
|
|
19
19
|
}
|
|
20
20
|
}
|
package/package.json
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chainlink/external-adapter-framework",
|
|
3
|
-
"version": "2.7.
|
|
3
|
+
"version": "2.7.2",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"license": "MIT",
|
|
6
|
+
"repository": "git://github.com/smartcontractkit/ea-framework-js.git",
|
|
6
7
|
"dependencies": {
|
|
7
8
|
"ajv": "8.17.1",
|
|
8
|
-
"axios": "1.
|
|
9
|
+
"axios": "1.12.2",
|
|
9
10
|
"eventsource": "4.0.0",
|
|
10
|
-
"fastify": "5.
|
|
11
|
-
"ioredis": "5.
|
|
11
|
+
"fastify": "5.6.1",
|
|
12
|
+
"ioredis": "5.8.1",
|
|
12
13
|
"mock-socket": "9.3.1",
|
|
13
|
-
"pino": "
|
|
14
|
-
"pino-pretty": "13.
|
|
14
|
+
"pino": "10.0.0",
|
|
15
|
+
"pino-pretty": "13.1.2",
|
|
15
16
|
"prom-client": "15.1.3",
|
|
16
17
|
"redlock": "5.0.0-beta.2",
|
|
17
18
|
"ws": "8.18.3"
|
|
@@ -35,24 +36,24 @@
|
|
|
35
36
|
"create-external-adapter": "adapter-generator.js"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
|
-
"@sinonjs/fake-timers": "
|
|
39
|
-
"@types/node": "22.
|
|
39
|
+
"@sinonjs/fake-timers": "15.0.0",
|
|
40
|
+
"@types/node": "22.18.6",
|
|
40
41
|
"@types/sinonjs__fake-timers": "8.1.5",
|
|
41
42
|
"@types/ws": "8.18.1",
|
|
42
|
-
"@typescript-eslint/eslint-plugin": "8.
|
|
43
|
-
"@typescript-eslint/parser": "8.
|
|
43
|
+
"@typescript-eslint/eslint-plugin": "8.46.1",
|
|
44
|
+
"@typescript-eslint/parser": "8.46.1",
|
|
44
45
|
"ava": "6.4.1",
|
|
45
46
|
"axios-mock-adapter": "2.1.0",
|
|
46
47
|
"c8": "10.1.3",
|
|
47
|
-
"eslint": "9.
|
|
48
|
-
"eslint-config-prettier": "10.1.
|
|
48
|
+
"eslint": "9.37.0",
|
|
49
|
+
"eslint-config-prettier": "10.1.8",
|
|
49
50
|
"eslint-plugin-tsdoc": "0.4.0",
|
|
50
51
|
"mocksse": "1.0.4",
|
|
51
52
|
"prettier": "3.6.2",
|
|
52
53
|
"ts-node": "10.9.2",
|
|
53
54
|
"ts-node-dev": "2.0.0",
|
|
54
|
-
"typedoc": "0.28.
|
|
55
|
-
"typescript": "5.
|
|
55
|
+
"typedoc": "0.28.14",
|
|
56
|
+
"typescript": "5.9.3"
|
|
56
57
|
},
|
|
57
58
|
"prettier": {
|
|
58
59
|
"semi": false,
|
package/rate-limiting/index.d.ts
CHANGED
|
@@ -61,6 +61,6 @@ export declare const lowestTierLimit: (limits?: AdapterRateLimitTier) => number;
|
|
|
61
61
|
* @param tiers - the adapter config listing the different available API tiers
|
|
62
62
|
* @returns the specified API tier, or a default one if none are specified
|
|
63
63
|
*/
|
|
64
|
-
export declare const getRateLimitingTier: (adapterSettings: AdapterSettings, tiers?: Record<string, AdapterRateLimitTier
|
|
64
|
+
export declare const getRateLimitingTier: (adapterSettings: AdapterSettings, tiers?: Record<string, AdapterRateLimitTier>, requireTierSelection?: boolean) => AdapterRateLimitTier | undefined;
|
|
65
65
|
export declare const buildRateLimitTiersFromConfig: (adapterSettings: AdapterSettings) => AdapterRateLimitTier | undefined;
|
|
66
66
|
export declare const highestRateLimitTiers: (tiers?: Record<string, AdapterRateLimitTier>) => number;
|
package/rate-limiting/index.js
CHANGED
|
@@ -67,7 +67,7 @@ exports.lowestTierLimit = lowestTierLimit;
|
|
|
67
67
|
* @param tiers - the adapter config listing the different available API tiers
|
|
68
68
|
* @returns the specified API tier, or a default one if none are specified
|
|
69
69
|
*/
|
|
70
|
-
const getRateLimitingTier = (adapterSettings, tiers) => {
|
|
70
|
+
const getRateLimitingTier = (adapterSettings, tiers, requireTierSelection) => {
|
|
71
71
|
if (adapterSettings.RATE_LIMIT_CAPACITY ||
|
|
72
72
|
adapterSettings.RATE_LIMIT_CAPACITY_MINUTE ||
|
|
73
73
|
adapterSettings.RATE_LIMIT_CAPACITY_SECOND) {
|
|
@@ -89,6 +89,10 @@ const getRateLimitingTier = (adapterSettings, tiers) => {
|
|
|
89
89
|
throw new Error(`The selected rate limit tier "${selectedTier}" is not valid (can be one of ${validTiersString})`);
|
|
90
90
|
}
|
|
91
91
|
if (!selectedTier) {
|
|
92
|
+
if (requireTierSelection) {
|
|
93
|
+
throw new Error(`This adapter requires you to specify a rate limit tier via the RATE_LIMIT_API_TIER environment variable`);
|
|
94
|
+
}
|
|
95
|
+
// Default to the lowest tier if none is specified
|
|
92
96
|
// Sort the tiers by most to least restrictive
|
|
93
97
|
const sortedTiers = Object.entries(tiers).sort(([_, t1], [__, t2]) => (0, exports.lowestTierLimit)(t1) - (0, exports.lowestTierLimit)(t2));
|
|
94
98
|
const [selectedName, selectedLimits] = sortedTiers[0];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rate-limiting/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAEA,kCAAoC;AAEpC,0CAAuB;AAEvB,MAAM,MAAM,GAAG,IAAA,iBAAU,EAAC,mBAAmB,CAAC,CAAA;AAsC9C;;;;;;GAMG;AACI,MAAM,qBAAqB,GAAG,CAAC,MAA6B,EAAE,EAAE;IACrE,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,WAAW,IAAI,QAAQ,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,CAAA;IAClE,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,WAAW,IAAI,QAAQ,CAAC,GAAG,EAAE,CAAA;IAC7D,MAAM,cAAc,GAAG,MAAM,EAAE,WAAW,IAAI,QAAQ,CAAA;IACtD,OAAO,CAAC,YAAY,EAAE,cAAc,EAAE,cAAc,CAAC,CAAA;AACvD,CAAC,CAAA;AALY,QAAA,qBAAqB,yBAKjC;AAED;;;;;;GAMG;AACI,MAAM,gBAAgB,GAAG,CAAC,MAA6B,EAAE,EAAE;IAChE,MAAM,iBAAiB,GAAG,IAAA,6BAAqB,EAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACnE,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;YACtB,OAAO,CAAC,CAAA;QACV,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC,CAAC,CAAA;IACF,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,iBAAiB,CAAC,CAAA;AACvC,CAAC,CAAA;AARY,QAAA,gBAAgB,oBAQ5B;AAED;;;;;;GAMG;AACI,MAAM,eAAe,GAAG,CAAC,MAA6B,EAAE,EAAE;IAC/D,OAAO,IAAI,CAAC,GAAG,CAAC,GAAG,IAAA,6BAAqB,EAAC,MAAM,CAAC,CAAC,CAAA;AACnD,CAAC,CAAA;AAFY,QAAA,eAAe,mBAE3B;AAED;;;;;;GAMG;AACI,MAAM,mBAAmB,GAAG,CACjC,eAAgC,EAChC,KAA4C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/rate-limiting/index.ts"],"names":[],"mappings":"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"}
|
package/transports/http.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { SubscriptionTransport } from './abstract/subscription';
|
|
|
9
9
|
* Helper struct type that will be used to pass types to the generic parameters of a Transport.
|
|
10
10
|
* Extends the common TransportGenerics, adding Provider specific types for this Batch endpoint.
|
|
11
11
|
*/
|
|
12
|
-
type HttpTransportGenerics = TransportGenerics & {
|
|
12
|
+
export type HttpTransportGenerics = TransportGenerics & {
|
|
13
13
|
/**
|
|
14
14
|
* Type details for any provider specific interfaces.
|
|
15
15
|
*/
|
|
@@ -92,4 +92,3 @@ export declare class HttpTransport<T extends HttpTransportGenerics> extends Subs
|
|
|
92
92
|
private handleRequest;
|
|
93
93
|
private makeRequest;
|
|
94
94
|
}
|
|
95
|
-
export {};
|
package/transports/websocket.js
CHANGED
|
@@ -10,6 +10,8 @@ const metrics_1 = require("../metrics");
|
|
|
10
10
|
const util_1 = require("../util");
|
|
11
11
|
const streaming_1 = require("./abstract/streaming");
|
|
12
12
|
const metrics_2 = require("./metrics");
|
|
13
|
+
// Explicit initial grace (1s) after open for web socket; after that, rely on "time since last message"
|
|
14
|
+
const INITIAL_WS_GRACE_MS = 1000;
|
|
13
15
|
const logger = (0, util_1.makeLogger)('WebSocketTransport');
|
|
14
16
|
class WebSocketClassProvider {
|
|
15
17
|
static set(ctor) {
|
|
@@ -39,7 +41,9 @@ class WebSocketTransport extends streaming_1.StreamingTransport {
|
|
|
39
41
|
return adapterSettings.WS_SUBSCRIPTION_TTL;
|
|
40
42
|
}
|
|
41
43
|
connectionClosed() {
|
|
42
|
-
return !this.wsConnection ||
|
|
44
|
+
return (!this.wsConnection ||
|
|
45
|
+
this.wsConnection.readyState === ws_1.default.CLOSED ||
|
|
46
|
+
this.wsConnection.readyState === ws_1.default.CLOSING);
|
|
43
47
|
}
|
|
44
48
|
serializeMessage(payload) {
|
|
45
49
|
return typeof payload === 'string' ? payload : JSON.stringify(payload);
|
|
@@ -60,6 +64,7 @@ class WebSocketTransport extends streaming_1.StreamingTransport {
|
|
|
60
64
|
},
|
|
61
65
|
// Called when any message is received by the open connection
|
|
62
66
|
message: async (event) => {
|
|
67
|
+
this.lastMessageReceivedAt = Date.now();
|
|
63
68
|
const parsed = this.deserializeMessage(event.data);
|
|
64
69
|
(0, util_1.censorLogs)(() => logger.trace(`Got ws message: ${event.data}`));
|
|
65
70
|
const providerDataReceived = Date.now();
|
|
@@ -75,8 +80,6 @@ class WebSocketTransport extends streaming_1.StreamingTransport {
|
|
|
75
80
|
});
|
|
76
81
|
logger.trace(`Writing ${results?.length ?? 0} responses to cache`);
|
|
77
82
|
if (Array.isArray(results) && results.length > 0) {
|
|
78
|
-
// Updating the last message received time here, to only care about messages we use
|
|
79
|
-
this.lastMessageReceivedAt = Date.now();
|
|
80
83
|
await this.responseCache.write(this.name, results);
|
|
81
84
|
}
|
|
82
85
|
// Do this after writing so we get the values to the cache ASAP
|
|
@@ -172,18 +175,10 @@ class WebSocketTransport extends streaming_1.StreamingTransport {
|
|
|
172
175
|
const now = Date.now();
|
|
173
176
|
const timeSinceLastMessage = Math.max(0, now - this.lastMessageReceivedAt);
|
|
174
177
|
const timeSinceConnectionOpened = Math.max(0, now - this.connectionOpenedAt);
|
|
175
|
-
const
|
|
176
|
-
|
|
177
|
-
timeSinceLastActivity > context.adapterSettings.WS_SUBSCRIPTION_UNRESPONSIVE_TTL;
|
|
178
|
+
const connectionUnresponsive = timeSinceConnectionOpened >= INITIAL_WS_GRACE_MS &&
|
|
179
|
+
timeSinceLastMessage > context.adapterSettings.WS_SUBSCRIPTION_UNRESPONSIVE_TTL;
|
|
178
180
|
let connectionClosed = this.connectionClosed();
|
|
179
|
-
logger.trace(`WS conn staleness info:
|
|
180
|
-
now: ${now} |
|
|
181
|
-
timeSinceLastMessage: ${timeSinceLastMessage} |
|
|
182
|
-
timeSinceConnectionOpened: ${timeSinceConnectionOpened} |
|
|
183
|
-
timeSinceLastActivity: ${timeSinceLastActivity} |
|
|
184
|
-
subscriptionUnresponsiveTtl: ${context.adapterSettings.WS_SUBSCRIPTION_UNRESPONSIVE_TTL} |
|
|
185
|
-
connectionUnresponsive: ${connectionUnresponsive} |
|
|
186
|
-
`);
|
|
181
|
+
logger.trace(`WS conn staleness info: now: ${now} | timeSinceLastMessage: ${timeSinceLastMessage} | timeSinceConnectionOpened: ${timeSinceConnectionOpened} | subscriptionUnresponsiveTtl: ${context.adapterSettings.WS_SUBSCRIPTION_UNRESPONSIVE_TTL} | connectionUnresponsive: ${connectionUnresponsive} |`);
|
|
187
182
|
// Check if we should close the current connection
|
|
188
183
|
if (!connectionClosed && (urlChanged || connectionUnresponsive)) {
|
|
189
184
|
if (urlChanged) {
|
|
@@ -195,11 +190,16 @@ class WebSocketTransport extends streaming_1.StreamingTransport {
|
|
|
195
190
|
// Check if connection was opened very recently; if so, wait a bit before continuing.
|
|
196
191
|
// This is so if we just opened the connection and are waiting to receive some messages,
|
|
197
192
|
// we don't close is immediately after and miss the chance to receive them
|
|
198
|
-
if (timeSinceConnectionOpened <
|
|
193
|
+
if (timeSinceConnectionOpened < INITIAL_WS_GRACE_MS) {
|
|
199
194
|
logger.info(`Connection was opened only ${timeSinceConnectionOpened}ms ago, waiting for that to get to 1s before continuing...`);
|
|
200
|
-
await (0, util_1.sleep)(
|
|
195
|
+
await (0, util_1.sleep)(INITIAL_WS_GRACE_MS - timeSinceConnectionOpened);
|
|
196
|
+
}
|
|
197
|
+
if (this.wsConnection && this.wsConnection.readyState !== ws_1.default.CLOSED) {
|
|
198
|
+
const old = this.wsConnection;
|
|
199
|
+
// Prevent any further sends/reads via this reference
|
|
200
|
+
this.wsConnection = undefined;
|
|
201
|
+
await waitForGracefulClose(old, 1500);
|
|
201
202
|
}
|
|
202
|
-
this.wsConnection?.close(1000);
|
|
203
203
|
connectionClosed = true;
|
|
204
204
|
if (subscriptions.desired.length) {
|
|
205
205
|
(0, util_1.censorLogs)(() => logger.trace(`Connection will be reopened and will subscribe to new and resubscribe to existing: ${JSON.stringify(subscriptions.desired)}`));
|
|
@@ -297,4 +297,40 @@ class WebsocketReverseMappingTransport extends WebSocketTransport {
|
|
|
297
297
|
}
|
|
298
298
|
}
|
|
299
299
|
exports.WebsocketReverseMappingTransport = WebsocketReverseMappingTransport;
|
|
300
|
+
/**
|
|
301
|
+
* Waits for a WebSocket connection to close gracefully.
|
|
302
|
+
*
|
|
303
|
+
* @param ws - The WebSocket instance (from the `ws` package).
|
|
304
|
+
* @param gracefulMs - Max time in milliseconds to wait for a graceful close before terminating. Defaults to 1500 ms.
|
|
305
|
+
* @returns A promise that resolves when the socket has closed or been terminated.
|
|
306
|
+
*/
|
|
307
|
+
async function waitForGracefulClose(ws, gracefulMs = 1500) {
|
|
308
|
+
if (!ws || ws.readyState === ws_1.default.CLOSED) {
|
|
309
|
+
return;
|
|
310
|
+
}
|
|
311
|
+
const closed = new Promise((resolve) => {
|
|
312
|
+
ws.once('close', resolve);
|
|
313
|
+
});
|
|
314
|
+
try {
|
|
315
|
+
ws.close(1000);
|
|
316
|
+
}
|
|
317
|
+
catch (err) {
|
|
318
|
+
logger.debug(`ws.close threw: ${err.message}`);
|
|
319
|
+
}
|
|
320
|
+
try {
|
|
321
|
+
await Promise.race([closed, (0, util_1.sleep)(gracefulMs)]);
|
|
322
|
+
}
|
|
323
|
+
catch (err) {
|
|
324
|
+
logger.debug(`waiting for close failed: ${err.message}`);
|
|
325
|
+
}
|
|
326
|
+
const state = ws.readyState;
|
|
327
|
+
if (state !== ws_1.default.CLOSED) {
|
|
328
|
+
try {
|
|
329
|
+
ws.terminate();
|
|
330
|
+
}
|
|
331
|
+
catch (err) {
|
|
332
|
+
logger.debug(`ws.terminate threw: ${err.message}`);
|
|
333
|
+
}
|
|
334
|
+
}
|
|
335
|
+
}
|
|
300
336
|
//# sourceMappingURL=websocket.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../../src/transports/websocket.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAsD;AAW7C,oBAXF,YAAS,CAWE;AATlB,wCAAoC;AACpC,kCAAwF;AAIxF,oDAA6E;AAC7E,uCAAyE;AAKzE,MAAM,MAAM,GAAG,IAAA,iBAAU,EAAC,oBAAoB,CAAC,CAAA;AAQ/C,MAAa,sBAAsB;IAGjC,MAAM,CAAC,GAAG,CAAC,IAAoB;QAC7B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,MAAM,CAAC,GAAG;QACR,OAAO,IAAI,CAAC,IAAI,CAAA;IAClB,CAAC;;AATH,wDAUC;AATQ,2BAAI,GAAmB,YAAS,CAAA;AAoHzC;;;;;GAKG;AACH,MAAa,kBAEX,SAAQ,8BAAqB;IAM7B,YAAoB,MAAmC;QACrD,KAAK,EAAE,CAAA;QADW,WAAM,GAAN,MAAM,CAA6B;QAJvD,eAAU,GAAG,EAAE,CAAA;QACf,0BAAqB,GAAG,CAAC,CAAA;QACzB,uBAAkB,GAAG,CAAC,CAAA;IAItB,CAAC;IAED,4BAA4B,CAAC,eAA8B;QACzD,OAAO,eAAe,CAAC,mBAAmB,CAAA;IAC5C,CAAC;IAED,gBAAgB;QACd,OAAO,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,YAAY,CAAC,UAAU,KAAK,YAAS,CAAC,MAAM,CAAA;IAChF,CAAC;IAED,gBAAgB,CAAC,OAAgB;QAC/B,OAAO,OAAO,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAA;IACxE,CAAC;IACD,kBAAkB,CAAC,IAAoB;QACrC,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAA+B,CAAA;IAClE,CAAC;IAED,uBAAuB,CACrB,OAA2B,EAC3B,UAAqB,EACrB,sBAAkD;QAElD,OAAO;YACL,0CAA0C;YAC1C,IAAI,EAAE,KAAK,EAAE,KAAsB,EAAE,EAAE;gBACrC,MAAM,CAAC,KAAK,CAAC,4CAA4C,KAAK,CAAC,IAAI,GAAG,CAAC,CAAA;gBACvE,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAA;oBACpD,MAAM,CAAC,KAAK,CAAC,iDAAiD,CAAC,CAAA;gBACjE,CAAC;gBACD,sBAAsB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAA;YACtC,CAAC;YAED,6DAA6D;YAC7D,OAAO,EAAE,KAAK,EAAE,KAA6B,EAAE,EAAE;gBAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;gBAClD,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAA;gBAC/D,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;gBACvC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;oBACvE,MAAM,MAAM,GAAG,CAAiC,CAAA;oBAChD,MAAM,eAAe,GAAG,CAAC,CAAC,QAAoD,CAAA;oBAC9E,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG;wBAC3B,mCAAmC,EAAE,IAAI,CAAC,6BAA6B;wBACvE,0BAA0B,EAAE,oBAAoB;wBAChD,2BAA2B,EAAE,eAAe,CAAC,UAAU,EAAE,2BAA2B;qBACrF,CAAA;oBACD,OAAO,MAAM,CAAA;gBACf,CAAC,CAAC,CAAA;gBACF,MAAM,CAAC,KAAK,CAAC,WAAW,OAAO,EAAE,MAAM,IAAI,CAAC,qBAAqB,CAAC,CAAA;gBAClE,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACjD,mFAAmF;oBACnF,IAAI,CAAC,qBAAqB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;oBACvC,MAAM,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;gBACpD,CAAC;gBAED,+DAA+D;gBAC/D,sFAAsF;gBACtF,yEAAyE;gBACzE,iBAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC,CAAC,GAAG,EAAE,CAAA;YACvE,CAAC;YAED,mDAAmD;YACnD,KAAK,EAAE,KAAK,EAAE,KAA2B,EAAE,EAAE;gBAC3C,IAAA,iBAAU,EAAC,GAAG,EAAE,CACd,MAAM,CAAC,IAAI,CACT,mDAAmD,KAAK,CAAC,KAAK,eAAe,KAAK,CAAC,OAAO,EAAE,CAC7F,CACF,CAAA;gBACD,gCAAgC;gBAChC,iBAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,MAAM,CAAC,IAAA,+BAAqB,EAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,CAAA;gBACpF,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;oBAC1C,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;YAED,sDAAsD;YACtD,KAAK,EAAE,CAAC,KAA2B,EAAE,EAAE;gBACrC,2DAA2D;gBAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAA;gBACpD,MAAM,CAAC,KAAK,CAAC,CACX,sCAAsC,KAAK,CAAC,IAAI,cAAc,KAAK,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CACzF,CAAA;gBAED,8DAA8D;gBAC9D,6DAA6D;gBAC7D,iBAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,EAAE,CAAA;gBAEvC,oEAAoE;gBACpE,kEAAkE;gBAClE,mDAAmD;gBACnD,MAAM,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBACjD,iBAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,GAAG,CAAC;oBACtC,IAAI,EAAE,KAAK,CAAC,IAAI;oBAChB,GAAG,EAAE,WAAW;iBACjB,CAAC,CAAA;gBACF,IAAI,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;oBAC/B,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;oBAC1C,MAAM,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAA;gBAChE,CAAC;YACH,CAAC;SACF,CAAA;IACH,CAAC;IAED,KAAK,CAAC,qBAAqB,CACzB,OAA2B,EAC3B,GAAW,EACX,OAA6C;QAE7C,MAAM,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,IAAA,sBAAe,GAAE,CAAA;QACpD,MAAM,IAAI,GAAG,sBAAsB,CAAC,GAAG,EAAE,CAAA;QACzC,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,CAAA;QACpD,MAAM,QAAQ,GAAG,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAA;QAC3E,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpD,UAAU,CAAC,gBAAgB,CACzB,MAAM,EACN,IAAI,CAAC,gBAAgB,CAAkB,MAAM,EAAE,QAAQ,CAAC,IAAI,CAAC,CAC9D,CAAA;QAED,sCAAsC;QACtC,iBAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,GAAG,EAAE,CAAA;QACxC,IAAI,CAAC;YACH,MAAM,IAAA,qBAAc,EAClB,iBAAiB,EACjB,OAAO,EACP,OAAO,CAAC,eAAe,CAAC,0BAA0B,CACnD,CAAA;YAED,6DAA6D;YAC7D,iBAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,GAAG,EAAE,CAAA;QACzC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,yDAAyD,CAAC,CAAA;YACvE,MAAM,CAAC,CAAA;QACT,CAAC;QAED,4FAA4F;QAC5F,UAAU,CAAC,kBAAkB,EAAE,CAAA;QAC/B,UAAU,CAAC,gBAAgB,CACzB,SAAS,EACT,IAAI,CAAC,gBAAgB,CAAyB,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,CACxE,CAAA;QACD,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;QACpD,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,CAAA;QAEpD,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,OAA2B,EAAE,UAAqB,EAAE,YAAuB;QAC5F,MAAM,oBAAoB,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAClE,MAAM,sBAAsB,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAEtE,MAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAA;QAEpE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,CAAC,KAAK,CAAC,aAAa,QAAQ,CAAC,MAAM,mBAAmB,CAAC,CAAA;QAC/D,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;YAC/B,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,CAAA;QAClC,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CACjB,OAA2B,EAC3B,aAAsE;QAEtE,mDAAmD;QACnD,uCAAuC;QACvC,qCAAqC;QACrC,2CAA2C;QAC3C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC;YACpD,MAAM,CAAC,KAAK,CAAC,wEAAwE,CAAC,CAAA;YACtF,MAAM,IAAA,YAAK,EAAC,OAAO,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAA;YAC7D,OAAM;QACR,CAAC;QAED,0FAA0F;QAC1F,4FAA4F;QAC5F,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAA;QAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,KAAK,aAAa,CAAA;QAEpD,gFAAgF;QAChF,gEAAgE;QAChE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtB,MAAM,oBAAoB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,qBAAqB,CAAC,CAAA;QAC1E,MAAM,yBAAyB,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,CAAA;QAC5E,MAAM,qBAAqB,GAAG,IAAI,CAAC,GAAG,CAAC,oBAAoB,EAAE,yBAAyB,CAAC,CAAA;QACvF,MAAM,sBAAsB,GAC1B,qBAAqB,GAAG,CAAC;YACzB,qBAAqB,GAAG,OAAO,CAAC,eAAe,CAAC,gCAAgC,CAAA;QAElF,IAAI,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAA;QAC9C,MAAM,CAAC,KAAK,CAAC;aACJ,GAAG;8BACc,oBAAoB;mCACf,yBAAyB;+BAC7B,qBAAqB;qCACf,OAAO,CAAC,eAAe,CAAC,gCAAgC;gCAC7D,sBAAsB;OAC/C,CAAC,CAAA;QAEJ,kDAAkD;QAClD,IAAI,CAAC,gBAAgB,IAAI,CAAC,UAAU,IAAI,sBAAsB,CAAC,EAAE,CAAC;YAChE,IAAI,UAAU,EAAE,CAAC;gBACf,IAAA,iBAAU,EAAC,GAAG,EAAE,CACd,MAAM,CAAC,KAAK,CACV,kCAAkC,IAAI,CAAC,UAAU,OAAO,aAAa,yBAAyB,CAC/F,CACF,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,IAAA,iBAAU,EAAC,GAAG,EAAE,CACd,MAAM,CAAC,IAAI,CACT,6BAA6B,oBAAoB,oCAAoC,OAAO,CAAC,eAAe,CAAC,gCAAgC,2BAA2B,CACzK,CACF,CAAA;YACH,CAAC;YAED,qFAAqF;YACrF,wFAAwF;YACxF,0EAA0E;YAC1E,IAAI,yBAAyB,GAAG,IAAI,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CACT,8BAA8B,yBAAyB,4DAA4D,CACpH,CAAA;gBACD,MAAM,IAAA,YAAK,EAAC,IAAI,GAAG,yBAAyB,CAAC,CAAA;YAC/C,CAAC;YACD,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,CAAA;YAC9B,gBAAgB,GAAG,IAAI,CAAA;YAEvB,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjC,IAAA,iBAAU,EAAC,GAAG,EAAE,CACd,MAAM,CAAC,KAAK,CACV,sFAAsF,IAAI,CAAC,SAAS,CAClG,aAAa,CAAC,OAAO,CACtB,EAAE,CACJ,CACF,CAAA;YACH,CAAC;QACH,CAAC;QAED,4CAA4C;QAC5C,IAAI,gBAAgB,IAAI,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACrD,MAAM,CAAC,KAAK,CAAC,6EAA6E,CAAC,CAAA;YAC3F,MAAM,OAAO,GACX,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;YACpF,IAAI,CAAC,UAAU,GAAG,aAAa,CAAA;YAC/B,8GAA8G;YAC9G,IAAI,CAAC,6BAA6B,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;YAE/C,4EAA4E;YAC5E,IAAI,CAAC,kBAAkB,GAAG,EAAE,CAAA;YAE5B,iFAAiF;YACjF,aAAa,CAAC,GAAG,GAAG,aAAa,CAAC,OAAO,CAAA;YAEzC,0BAA0B;YAC1B,IAAI,CAAC,YAAY,GAAG,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,EAAE,aAAa,EAAE,OAAO,CAAC,CAAA;YAErF,6EAA6E;YAC7E,gBAAgB,GAAG,KAAK,CAAA;YACxB,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAA;QACtC,CAAC;QAED,+CAA+C;QAC/C,6GAA6G;QAC7G,+EAA+E;QAC/E,IAAI,CAAC,gBAAgB,EAAE,CAAC;YACtB,MAAM,CAAC,KAAK,CAAC,0DAA0D,CAAC,CAAA;YACxE,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAA;YACrC,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,GAAG,QAAQ,CAAA;gBACzD,MAAM,IAAI,CAAC,YAAY,CACrB,OAAO,EACP,gBAAgB;oBACd,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;oBAChE,CAAC,CAAC,aAAa,CAAC,GAAG,EACrB,kBAAkB;oBAChB,CAAC,CAAC,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;oBACpE,CAAC,CAAC,aAAa,CAAC,KAAK,CACxB,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CACV,iFAAiF,CAClF,CAAA;YACH,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAA,gCAAsB,EAAC,OAAO,EAAE,aAAa,CAAC,GAAG,EAAE,aAAa,CAAC,KAAK,CAAC,CAAA;QAEvE,4FAA4F;QAC5F,MAAM,CAAC,KAAK,CACV,4CAA4C,OAAO,CAAC,eAAe,CAAC,wBAAwB,OAAO,CACpG,CAAA;QACD,MAAM,IAAA,YAAK,EAAC,OAAO,CAAC,eAAe,CAAC,wBAAwB,CAAC,CAAA;QAE7D,OAAM;IACR,CAAC;IAEO,gBAAgB,CACtB,WAAuC,EACvC,OAAoC;QAEpC,OAAO,KAAK,EAAE,KAAQ,EAAE,EAAE;YACxB,IAAI,CAAC;gBACH,MAAM,OAAO,CAAC,KAAK,CAAC,CAAA;YACtB,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACX,OAAO,WAAW,CAAC,CAAC,CAAC,CAAA;YACvB,CAAC;QACH,CAAC,CAAA;IACH,CAAC;CACF;AAjUD,gDAiUC;AAED;;;;;;;;;;;GAWG;AACH,MAAa,gCAGX,SAAQ,kBAAqB;IAH/B;;QAIU,mBAAc,GAAgD,IAAI,GAAG,EAAE,CAAA;IAsBjF,CAAC;IApBC;;;;;;OAMG;IACH,iBAAiB,CAAC,KAAQ,EAAE,MAA2C;QACrE,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAA;IACxC,CAAC;IAED;;;;;OAKG;IACH,iBAAiB,CAAC,KAAQ;QACxB,OAAO,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IACvC,CAAC;CACF;AA1BD,4EA0BC"}
|
|
1
|
+
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../../src/transports/websocket.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export default () => {
|
|
2
|
-
// https://mths.be/emoji
|
|
3
|
-
return /[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE89\uDE8F-\uDEC2\uDEC6\uDECE-\uDEDC\uDEDF-\uDEE9]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g;
|
|
4
|
-
};
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
export type Options = {
|
|
2
|
-
/**
|
|
3
|
-
Match only the first ANSI escape.
|
|
4
|
-
|
|
5
|
-
@default false
|
|
6
|
-
*/
|
|
7
|
-
readonly onlyFirst: boolean;
|
|
8
|
-
};
|
|
9
|
-
|
|
10
|
-
/**
|
|
11
|
-
Regular expression for matching ANSI escape codes.
|
|
12
|
-
|
|
13
|
-
@example
|
|
14
|
-
```
|
|
15
|
-
import ansiRegex from 'ansi-regex';
|
|
16
|
-
|
|
17
|
-
ansiRegex().test('\u001B[4mcake\u001B[0m');
|
|
18
|
-
//=> true
|
|
19
|
-
|
|
20
|
-
ansiRegex().test('cake');
|
|
21
|
-
//=> false
|
|
22
|
-
|
|
23
|
-
'\u001B[4mcake\u001B[0m'.match(ansiRegex());
|
|
24
|
-
//=> ['\u001B[4m', '\u001B[0m']
|
|
25
|
-
|
|
26
|
-
'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true}));
|
|
27
|
-
//=> ['\u001B[4m']
|
|
28
|
-
|
|
29
|
-
'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex());
|
|
30
|
-
//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007']
|
|
31
|
-
```
|
|
32
|
-
*/
|
|
33
|
-
export default function ansiRegex(options?: Options): RegExp;
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export default function ansiRegex({onlyFirst = false} = {}) {
|
|
2
|
-
// Valid string terminator sequences are BEL, ESC\, and 0x9c
|
|
3
|
-
const ST = '(?:\\u0007|\\u001B\\u005C|\\u009C)';
|
|
4
|
-
const pattern = [
|
|
5
|
-
`[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?${ST})`,
|
|
6
|
-
'(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))',
|
|
7
|
-
].join('|');
|
|
8
|
-
|
|
9
|
-
return new RegExp(pattern, onlyFirst ? undefined : 'g');
|
|
10
|
-
}
|