Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a46c0cf395 | |||
| 8be5c352f4 | |||
| caaf947a46 | |||
| 2ec88494be | |||
| b80346d742 | |||
| aced21a968 | |||
| fa40e3a5dc | |||
| 9bb0008381 | |||
| 67bbea8811 | |||
| dc826cb65a | |||
| 1266a814c6 | |||
| 25a7397548 | |||
| 5009bec70c | |||
| d8d7b135f7 | |||
| 9738d88ec7 | |||
| 9d7f433685 |
@@ -12,29 +12,25 @@ stages:
|
||||
- release
|
||||
- metadata
|
||||
|
||||
before_script:
|
||||
- pnpm install -g pnpm
|
||||
- pnpm install -g @shipzone/npmci
|
||||
- npmci npm prepare
|
||||
|
||||
# ====================
|
||||
# security stage
|
||||
# ====================
|
||||
# ====================
|
||||
# security stage
|
||||
# ====================
|
||||
mirror:
|
||||
stage: security
|
||||
script:
|
||||
- npmci git mirror
|
||||
only:
|
||||
- tags
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
- notpriv
|
||||
|
||||
auditProductionDependencies:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||
stage: security
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci command npm install --production --ignore-scripts
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command npm audit --audit-level=high --only=prod --production
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command pnpm audit --audit-level=high --prod
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
allow_failure: true
|
||||
|
||||
@@ -42,11 +38,10 @@ auditDevDependencies:
|
||||
image: registry.gitlab.com/hosttoday/ht-docker-node:npmci
|
||||
stage: security
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci command npm install --ignore-scripts
|
||||
- npmci command npm config set registry https://registry.npmjs.org
|
||||
- npmci command npm audit --audit-level=high --only=dev
|
||||
- npmci command pnpm audit --audit-level=high --dev
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
allow_failure: true
|
||||
|
||||
@@ -57,7 +52,6 @@ auditDevDependencies:
|
||||
testStable:
|
||||
stage: test
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci npm test
|
||||
@@ -68,7 +62,6 @@ testStable:
|
||||
testBuild:
|
||||
stage: test
|
||||
script:
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci command npm run build
|
||||
@@ -97,10 +90,9 @@ codequality:
|
||||
only:
|
||||
- tags
|
||||
script:
|
||||
- npmci command npm install -g tslint typescript
|
||||
- npmci command npm install -g typescript
|
||||
- npmci npm prepare
|
||||
- npmci npm install
|
||||
- npmci command "tslint -c tslint.json ./ts/**/*.ts"
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
@@ -120,11 +112,9 @@ trigger:
|
||||
pages:
|
||||
stage: metadata
|
||||
script:
|
||||
- npmci node install lts
|
||||
- npmci command npm install -g @gitzone/tsdoc
|
||||
- npmci npm prepare
|
||||
- npmci node install stable
|
||||
- npmci npm install
|
||||
- npmci command tsdoc
|
||||
- npmci command npm run buildDocs
|
||||
tags:
|
||||
- lossless
|
||||
- docker
|
||||
|
||||
24
.vscode/launch.json
vendored
24
.vscode/launch.json
vendored
@@ -2,28 +2,10 @@
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "current file",
|
||||
"type": "node",
|
||||
"command": "npm test",
|
||||
"name": "Run npm test",
|
||||
"request": "launch",
|
||||
"args": [
|
||||
"${relativeFile}"
|
||||
],
|
||||
"runtimeArgs": ["-r", "@gitzone/tsrun"],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"protocol": "inspector",
|
||||
"internalConsoleOptions": "openOnSessionStart"
|
||||
},
|
||||
{
|
||||
"name": "test.ts",
|
||||
"type": "node",
|
||||
"request": "launch",
|
||||
"args": [
|
||||
"test/test.ts"
|
||||
],
|
||||
"runtimeArgs": ["-r", "@gitzone/tsrun"],
|
||||
"cwd": "${workspaceRoot}",
|
||||
"protocol": "inspector",
|
||||
"internalConsoleOptions": "openOnSessionStart"
|
||||
"type": "node-terminal"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||
15
package.json
15
package.json
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@apiglobal/typedsocket",
|
||||
"version": "2.0.6",
|
||||
"version": "2.0.14",
|
||||
"private": false,
|
||||
"description": "a typedrequest extension supporting websockets",
|
||||
"main": "dist_ts/index.js",
|
||||
@@ -10,23 +10,24 @@
|
||||
"license": "MIT",
|
||||
"scripts": {
|
||||
"test": "(tstest test/ --web)",
|
||||
"build": "(tsbuild --web --allowimplicitany)"
|
||||
"build": "(tsbuild --web --allowimplicitany)",
|
||||
"buildDocs": "tsdoc"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@gitzone/tsbuild": "^2.1.63",
|
||||
"@gitzone/tsbundle": "^2.0.6",
|
||||
"@gitzone/tsrun": "^1.2.39",
|
||||
"@gitzone/tstest": "^1.0.72",
|
||||
"@gitzone/tstest": "^1.0.74",
|
||||
"@pushrocks/smartenv": "^5.0.2",
|
||||
"@pushrocks/tapbundle": "^5.0.4",
|
||||
"@types/node": "^18.6.3"
|
||||
"@types/node": "^18.11.18"
|
||||
},
|
||||
"dependencies": {
|
||||
"@apiglobal/typedrequest": "^2.0.8",
|
||||
"@apiglobal/typedrequest-interfaces": "^1.0.15",
|
||||
"@apiglobal/typedrequest-interfaces": "2.0.1",
|
||||
"@pushrocks/isohash": "^2.0.0",
|
||||
"@pushrocks/smartjson": "^5.0.2",
|
||||
"@pushrocks/smartsocket": "^2.0.7",
|
||||
"@pushrocks/smartjson": "^5.0.5",
|
||||
"@pushrocks/smartsocket": "^2.0.11",
|
||||
"@pushrocks/smartstring": "^4.0.2"
|
||||
},
|
||||
"browserslist": [
|
||||
|
||||
348
pnpm-lock.yaml
generated
348
pnpm-lock.yaml
generated
@@ -2,35 +2,35 @@ lockfileVersion: 5.4
|
||||
|
||||
specifiers:
|
||||
'@apiglobal/typedrequest': ^2.0.8
|
||||
'@apiglobal/typedrequest-interfaces': ^1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 2.0.1
|
||||
'@gitzone/tsbuild': ^2.1.63
|
||||
'@gitzone/tsbundle': ^2.0.6
|
||||
'@gitzone/tsrun': ^1.2.39
|
||||
'@gitzone/tstest': ^1.0.72
|
||||
'@gitzone/tstest': ^1.0.74
|
||||
'@pushrocks/isohash': ^2.0.0
|
||||
'@pushrocks/smartenv': ^5.0.2
|
||||
'@pushrocks/smartjson': ^5.0.2
|
||||
'@pushrocks/smartsocket': ^2.0.7
|
||||
'@pushrocks/smartjson': ^5.0.5
|
||||
'@pushrocks/smartsocket': ^2.0.11
|
||||
'@pushrocks/smartstring': ^4.0.2
|
||||
'@pushrocks/tapbundle': ^5.0.4
|
||||
'@types/node': ^18.6.3
|
||||
'@types/node': ^18.11.18
|
||||
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest': 2.0.12
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 2.0.1
|
||||
'@pushrocks/isohash': 2.0.0
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartsocket': 2.0.7
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartsocket': 2.0.11
|
||||
'@pushrocks/smartstring': 4.0.5
|
||||
|
||||
devDependencies:
|
||||
'@gitzone/tsbuild': 2.1.65
|
||||
'@gitzone/tsbundle': 2.0.7
|
||||
'@gitzone/tsrun': 1.2.39_@types+node@18.11.5
|
||||
'@gitzone/tstest': 1.0.73_@types+node@18.11.5
|
||||
'@gitzone/tsrun': 1.2.39_@types+node@18.11.18
|
||||
'@gitzone/tstest': 1.0.74_@types+node@18.11.18
|
||||
'@pushrocks/smartenv': 5.0.3
|
||||
'@pushrocks/tapbundle': 5.0.4
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
packages:
|
||||
|
||||
@@ -44,13 +44,16 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/@apiglobal/typedrequest-interfaces/1.0.15:
|
||||
resolution: {integrity: sha512-KncX168fUQJ73FeT22Cvls41mkJmtasP8dB2s9+9/OyWZpNsCzk9NEmtdRhulW2vLQwuAbQc1eoloe7ffCmhcA==}
|
||||
/@apiglobal/typedrequest-interfaces/1.0.20:
|
||||
resolution: {integrity: sha512-ybsDtavYbzGJYSLodSbkxDvSLYtfMzBTuNZDJpiANt1rZA2MO/GCq8zk5MVLlrUUQIr/7oxPGWqxi1QDwR+RHQ==}
|
||||
|
||||
/@apiglobal/typedrequest-interfaces/2.0.1:
|
||||
resolution: {integrity: sha512-Oi7pNU4vKo5UvcCJmqkH43Us237Ws/Pp/WDYnwnonRnTmIMd+6QjNfN/gXcPnP6tbamk8r8Xzcz9mgnSDM2ysw==}
|
||||
|
||||
/@apiglobal/typedrequest/2.0.12:
|
||||
resolution: {integrity: sha512-oCxcdKEzihzPDf0jrqG4obFFSgDszvO5LO+0Fk/hH/0bZm0AQ1LssYVwaY8OHjT0ujmkTcC5JFCjaS7LgjKSgQ==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.20
|
||||
'@pushrocks/isounique': 1.0.5
|
||||
'@pushrocks/lik': 6.0.0
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
@@ -59,13 +62,14 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/@apiglobal/typedsocket/2.0.5:
|
||||
resolution: {integrity: sha512-AsxG9782yVHELir6wsvYafE0knCRF/X10imgNolaemz680wqiFbBIhoNIVGxRw13XW1N9sJVbFJPEoBO0/uuoQ==}
|
||||
/@apiglobal/typedsocket/2.0.12:
|
||||
resolution: {integrity: sha512-z/inZRsUT2xWpYwjrpwNhEo1c1cZ1sZtOMZouj88bkuHhUO9Rm6L3U0sNK2S/FA0WosBOxXxM4MXE90dQWb3bA==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest': 2.0.12
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 2.0.1
|
||||
'@pushrocks/isohash': 2.0.0
|
||||
'@pushrocks/smartsocket': 2.0.7
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartsocket': 2.0.11
|
||||
'@pushrocks/smartstring': 4.0.5
|
||||
transitivePeerDependencies:
|
||||
- bufferutil
|
||||
@@ -144,7 +148,7 @@ packages:
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartspawn': 3.0.2
|
||||
'@types/html-minifier': 4.0.2
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
esbuild: 0.14.54
|
||||
html-minifier: 4.0.0
|
||||
typescript: 4.8.4
|
||||
@@ -152,13 +156,13 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@gitzone/tsrun/1.2.39_@types+node@18.11.5:
|
||||
/@gitzone/tsrun/1.2.39_@types+node@18.11.18:
|
||||
resolution: {integrity: sha512-gLqKOic3T1GIdqsp+T5g1OewfboMJKKMr7/SJgBuMx4BUEBfW7TYhqk6psgfewhHs/zKII5rWbbPauykkKlYIg==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@pushrocks/smartfile': 10.0.5
|
||||
'@pushrocks/smartshell': 2.0.30
|
||||
ts-node: 10.9.1_w23x7n7zvvy4jtcrbeyi4toj7i
|
||||
ts-node: 10.9.1_vqcafhj4xvr2nzknlrdklk55zm
|
||||
typescript: 4.8.4
|
||||
transitivePeerDependencies:
|
||||
- '@swc/core'
|
||||
@@ -167,23 +171,22 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/@gitzone/tstest/1.0.73_@types+node@18.11.5:
|
||||
resolution: {integrity: sha512-IaarQBH6vTivIvVpdvwfiABLHf6bkGQlYLcDHymTllMMYrPKRFnpkW+hHJ8KlV0Q8eX/Uyar1PtnSxKEtO3/Fw==}
|
||||
/@gitzone/tstest/1.0.74_@types+node@18.11.18:
|
||||
resolution: {integrity: sha512-6V8bsfvpnODWqrkdooVqcOS1z5GA8dMDnLCOHnr/SUTeie3ox8KGpckwiZ+gTfz9WvzX6+KLVTZNYKGOaNbmMQ==}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
'@gitzone/tsbundle': 2.0.7
|
||||
'@gitzone/tsrun': 1.2.39_@types+node@18.11.5
|
||||
'@gitzone/tsrun': 1.2.39_@types+node@18.11.18
|
||||
'@pushrocks/consolecolor': 2.0.1
|
||||
'@pushrocks/smartbrowser': 2.0.2
|
||||
'@pushrocks/smartbrowser': 2.0.5
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartexpress': 4.0.21
|
||||
'@pushrocks/smartexpress': 4.0.22
|
||||
'@pushrocks/smartfile': 10.0.5
|
||||
'@pushrocks/smartlog': 3.0.1
|
||||
'@pushrocks/smartlog': 3.0.2
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartshell': 2.0.30
|
||||
'@pushrocks/tapbundle': 5.0.4
|
||||
'@types/figures': 3.0.1
|
||||
figures: 4.0.1
|
||||
figures: 5.0.0
|
||||
transitivePeerDependencies:
|
||||
- '@swc/core'
|
||||
- '@swc/wasm'
|
||||
@@ -354,11 +357,11 @@ packages:
|
||||
'@types/symbol-tree': 3.2.2
|
||||
symbol-tree: 3.2.4
|
||||
|
||||
/@pushrocks/smartbrowser/2.0.2:
|
||||
resolution: {integrity: sha512-VDBGb6O1nyFrFQFVS7AsVUjkundUVFEkWWEsYVCeglqt3AELzXZoxtV0Lrc9leVFwGS/v/0tUWi6gTz3T7wCIw==}
|
||||
/@pushrocks/smartbrowser/2.0.5:
|
||||
resolution: {integrity: sha512-S8GbBxytCWRDz6Le+ccaL1Mj63yNJ0/We1GEL9ROZi7iPeZpi7XHN0srss+V6cttaR4IYNpucY4RfQloTjGVog==}
|
||||
dependencies:
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartpdf': 3.0.12
|
||||
'@pushrocks/smartpdf': 3.0.15
|
||||
'@pushrocks/smartpuppeteer': 2.0.2
|
||||
'@pushrocks/smartunique': 3.0.3
|
||||
transitivePeerDependencies:
|
||||
@@ -419,11 +422,11 @@ packages:
|
||||
fast-deep-equal: 3.1.3
|
||||
dev: true
|
||||
|
||||
/@pushrocks/smartexpress/4.0.21:
|
||||
resolution: {integrity: sha512-QRiubmfM7DNR8aNA47zfkxkAlTAL/OyyZFlCBRz7nxJLiJ/CA6B2ptgskvG9xQTihchL9tFMTfcl5YdzjB/XoA==}
|
||||
/@pushrocks/smartexpress/4.0.22:
|
||||
resolution: {integrity: sha512-TOo9vnSq3RDE2z66nD7JHi23QcvCQIpybbGjUat0++EtH2voQgFR381CAfYJCFvNKLkD7jb4NLVK6OJqx4ZuEg==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest': 2.0.12
|
||||
'@apiglobal/typedsocket': 2.0.5
|
||||
'@apiglobal/typedsocket': 2.0.12
|
||||
'@pushrocks/lik': 6.0.0
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartenv': 5.0.3
|
||||
@@ -435,11 +438,11 @@ packages:
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartrequest': 2.0.11
|
||||
'@pushrocks/smartsitemap': 2.0.1
|
||||
'@pushrocks/smarttime': 3.0.45
|
||||
'@tsclass/tsclass': 4.0.26
|
||||
'@pushrocks/smarttime': 3.0.50
|
||||
'@tsclass/tsclass': 4.0.28
|
||||
'@types/compression': 1.7.2
|
||||
'@types/cors': 2.8.12
|
||||
'@types/express': 4.17.14
|
||||
'@types/cors': 2.8.13
|
||||
'@types/express': 4.17.15
|
||||
'@types/finalhandler': 1.2.0
|
||||
body-parser: 1.20.1
|
||||
cors: 2.8.5
|
||||
@@ -468,7 +471,7 @@ packages:
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartfile-interfaces': 1.0.7
|
||||
'@pushrocks/smarthash': 3.0.1
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartmime': 1.0.5
|
||||
'@pushrocks/smartpath': 5.0.5
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
@@ -495,7 +498,7 @@ packages:
|
||||
/@pushrocks/smarthash/3.0.1:
|
||||
resolution: {integrity: sha512-S9BiLsxTJB4KOXiiqcdp9QHc8srctHQxoWqDNVw7mGJbU6KuCHbFW6NUcEe2us5z389dGNEbbPMy7+0mAdTXVA==}
|
||||
dependencies:
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@types/through2': 2.0.36
|
||||
through2: 4.0.2
|
||||
@@ -509,12 +512,11 @@ packages:
|
||||
fast-json-stable-stringify: 2.1.0
|
||||
lodash.clonedeep: 4.5.0
|
||||
|
||||
/@pushrocks/smartjson/5.0.2:
|
||||
resolution: {integrity: sha512-zYy4jaZhBA0JUnheDinARS82fpQZrwLZZWTBHK40UJ4q2n/a/CvFvNDaN81I1PODubV6dsRF4M0JjLk2VJ5XMA==}
|
||||
/@pushrocks/smartjson/5.0.5:
|
||||
resolution: {integrity: sha512-0Hhfur5X8hFLxTZVZv24PyyuzDE7x+J6tx59GEa9R9I3+VsvX5jdRCLtczJtWUriNISkXtwqAYsNPizIQA0BYw==}
|
||||
dependencies:
|
||||
'@pushrocks/smartstring': 4.0.5
|
||||
'@types/buffer-json': 2.0.1
|
||||
'@types/fast-json-stable-stringify': 2.1.0
|
||||
'@types/lodash.clonedeep': 4.5.7
|
||||
buffer-json: 2.0.0
|
||||
fast-json-stable-stringify: 2.1.0
|
||||
@@ -531,13 +533,26 @@ packages:
|
||||
/@pushrocks/smartlog-interfaces/2.0.23:
|
||||
resolution: {integrity: sha512-tXqwfrekGxGZJB72BFQppywk7413hXVDgcJNeU+kY6xvmzVjf2HxOMbFYhewh1+p4uai1u9n0xcMb0qbbPy4/Q==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.20
|
||||
dev: true
|
||||
|
||||
/@pushrocks/smartlog-interfaces/3.0.0:
|
||||
resolution: {integrity: sha512-yjppiLLJHBcrXTJJusDbFTvHq0RTMl3LnhvWAhyyy8U0O4VkJxIls1t5mS6jsEwxogP88+0flQIWknNJeB913A==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest-interfaces': 2.0.1
|
||||
|
||||
/@pushrocks/smartlog/3.0.1:
|
||||
resolution: {integrity: sha512-lE6BCrtZcDDjeXymHq9EK+VlrV3lhXXagFubgHiwrtX8+2xzihS3PpLE54pMARf5X5LE00xg1W0QxSzYJ9oMqg==}
|
||||
dependencies:
|
||||
'@pushrocks/isounique': 1.0.5
|
||||
'@pushrocks/smartlog-interfaces': 2.0.23
|
||||
dev: true
|
||||
|
||||
/@pushrocks/smartlog/3.0.2:
|
||||
resolution: {integrity: sha512-1WPA0LX9HfE54ESKtk32uvsXiYIMu2QX7NUlQ3uHSMmFULnJYo2m/LeKEf6qHH7DJtxZbkWzkrMOkZVPL1MeNg==}
|
||||
dependencies:
|
||||
'@pushrocks/isounique': 1.0.5
|
||||
'@pushrocks/smartlog-interfaces': 3.0.0
|
||||
|
||||
/@pushrocks/smartmanifest/1.0.8:
|
||||
resolution: {integrity: sha512-inHmTp58Z8xl+c6mdOrfxc9IjUKuqho1i+WUI74G7rn6HwEn3cMd/06R1v80Xlx+95EYWzBwnYtuo7j7DafrdQ==}
|
||||
@@ -562,7 +577,7 @@ packages:
|
||||
'@types/default-gateway': 3.0.1
|
||||
isopen: 1.3.0
|
||||
public-ip: 6.0.1
|
||||
systeminformation: 5.12.10
|
||||
systeminformation: 5.16.9
|
||||
dev: true
|
||||
|
||||
/@pushrocks/smartparam/1.1.6:
|
||||
@@ -576,8 +591,8 @@ packages:
|
||||
/@pushrocks/smartpath/5.0.5:
|
||||
resolution: {integrity: sha512-t2lXXGMpKnPlwubIcYGD6cGi2CUJxJ3t2yftVt8tHfjX68jELA5sJhFMtyD3AeFZVxePFZOCiHwWEbWkSDNnmw==}
|
||||
|
||||
/@pushrocks/smartpdf/3.0.12:
|
||||
resolution: {integrity: sha512-ElGX79cJJSzjp56JrOO+B5NBeaymsm0CuW7a1UtsAKejADNtsA887nV/x7MRfL3A5a2NbMhOqqYpVgDMdd6xOw==}
|
||||
/@pushrocks/smartpdf/3.0.15:
|
||||
resolution: {integrity: sha512-z1XAxHW3C0gkzk30yZJpc74S6MJyMBAtlG9FiGhIhs9jGw6z/dkgpVr8beJMOCOX1KIzlA5HJoJOWtex/fd90g==}
|
||||
dependencies:
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartfile': 10.0.5
|
||||
@@ -586,8 +601,8 @@ packages:
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartpuppeteer': 2.0.2
|
||||
'@pushrocks/smartunique': 3.0.3
|
||||
'@tsclass/tsclass': 4.0.26
|
||||
'@types/express': 4.17.14
|
||||
'@tsclass/tsclass': 4.0.28
|
||||
'@types/express': 4.17.15
|
||||
express: 4.18.2
|
||||
pdf-merger-js: 3.4.0
|
||||
pdf2json: 2.1.0
|
||||
@@ -638,6 +653,12 @@ packages:
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
rxjs: 7.5.7
|
||||
|
||||
/@pushrocks/smartrx/3.0.0:
|
||||
resolution: {integrity: sha512-PwWmgEC3nKLoZYvOOfQhCQeesFOLNtbutxvkr/H06BfK3UgBFgnjMrVycjeaQlEWh+fgcwV3ZxZSgzMBsba8qg==}
|
||||
dependencies:
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
rxjs: 7.8.0
|
||||
|
||||
/@pushrocks/smartshell/2.0.30:
|
||||
resolution: {integrity: sha512-HPgdTFzfzhk2TQau/jVdYNSANlxyBZdqq2vyZ+bZahegVHfH/27Zur5Fk+2vE16VJjJMqP7zcvDITUe2+ipgJg==}
|
||||
dependencies:
|
||||
@@ -661,23 +682,23 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/@pushrocks/smartsocket/2.0.7:
|
||||
resolution: {integrity: sha512-xoBdecjxQH5cYlMyzmZ6qoBUlC136HVc4nIjlEqohaI3itNyJI6hmU0FDBFLrgCEKKNJx6PB1NUJJMhHY6lwyw==}
|
||||
/@pushrocks/smartsocket/2.0.11:
|
||||
resolution: {integrity: sha512-xmX90U3mGtpGoiTeHqwI369C2sptaX2xx2L0jwEEOIqqEOoEsiJnhp2NkNj2WNfe2vUldttN6xHWvEpEGa8WMA==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 2.0.1
|
||||
'@pushrocks/isohash': 2.0.0
|
||||
'@pushrocks/isounique': 1.0.5
|
||||
'@pushrocks/lik': 6.0.0
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartenv': 5.0.3
|
||||
'@pushrocks/smartexpress': 4.0.21
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartlog': 3.0.1
|
||||
'@pushrocks/smartexpress': 4.0.22
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartlog': 3.0.2
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartrx': 2.0.27
|
||||
'@pushrocks/smarttime': 3.0.45
|
||||
socket.io: 4.5.3
|
||||
socket.io-client: 4.5.3
|
||||
'@pushrocks/smartrx': 3.0.0
|
||||
'@pushrocks/smarttime': 4.0.0
|
||||
socket.io: 4.5.4
|
||||
socket.io-client: 4.5.4
|
||||
transitivePeerDependencies:
|
||||
- bufferutil
|
||||
- supports-color
|
||||
@@ -729,6 +750,28 @@ packages:
|
||||
is-nan: 1.3.2
|
||||
pretty-ms: 7.0.1
|
||||
|
||||
/@pushrocks/smarttime/3.0.50:
|
||||
resolution: {integrity: sha512-44NgDuNukCQIlPJFNORcDugp36Yj6HT6eZEWtn4M4HKlTFCQ8De+ztwGg+gRceucJ202zqLRKrXoh8dVdS3BaQ==}
|
||||
dependencies:
|
||||
'@pushrocks/lik': 5.0.7
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
croner: 4.4.1
|
||||
dayjs: 1.11.7
|
||||
is-nan: 1.3.2
|
||||
pretty-ms: 7.0.1
|
||||
|
||||
/@pushrocks/smarttime/4.0.0:
|
||||
resolution: {integrity: sha512-WKYBxEWjbEvK0MY1J0QsK2qxggVGnBScqVCX9OGQX8Qi+t82/75XHaRPIDNLLXhNjUoPRr+OYME9eKdkF/fGpw==}
|
||||
dependencies:
|
||||
'@pushrocks/lik': 6.0.0
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
croner: 5.3.5
|
||||
dayjs: 1.11.7
|
||||
is-nan: 1.3.2
|
||||
pretty-ms: 8.0.0
|
||||
|
||||
/@pushrocks/smartunique/3.0.3:
|
||||
resolution: {integrity: sha512-f+c3s2WzzjASoRHyYTLU0kHDVWREg4sZVdi5L42bTA3CTUWNrcGUC62h4wP4U4BiPl3bopTr3LPhClZHJ738oA==}
|
||||
dependencies:
|
||||
@@ -783,7 +826,7 @@ packages:
|
||||
'@adobe/helix-fetch': 3.1.2
|
||||
'@pushrocks/smartdelay': 2.0.13
|
||||
'@pushrocks/smartenv': 5.0.3
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/webstore': 2.0.5
|
||||
transitivePeerDependencies:
|
||||
@@ -792,10 +835,10 @@ packages:
|
||||
/@pushrocks/webstore/2.0.5:
|
||||
resolution: {integrity: sha512-O91dyT0o7xgeJsgftopa7NrE+sZxAQRr8i3UOZ6+UhyJx95v3kssPiE6aJ2uNsESKl3IlDq6RInLr1zbyFsqkg==}
|
||||
dependencies:
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.15
|
||||
'@apiglobal/typedrequest-interfaces': 1.0.20
|
||||
'@pushrocks/lik': 6.0.0
|
||||
'@pushrocks/smartenv': 5.0.3
|
||||
'@pushrocks/smartjson': 5.0.2
|
||||
'@pushrocks/smartjson': 5.0.5
|
||||
'@pushrocks/smartpromise': 3.1.7
|
||||
'@pushrocks/smartrx': 2.0.27
|
||||
fake-indexeddb: 4.0.0
|
||||
@@ -827,10 +870,10 @@ packages:
|
||||
dependencies:
|
||||
type-fest: 2.19.0
|
||||
|
||||
/@tsclass/tsclass/4.0.26:
|
||||
resolution: {integrity: sha512-wHL7ryA4RJI+lnq19VTz66asN2lTyDHTawxQX4n/SyuXs0XbfSXWBbq7MfgYgLRA9wuuE+gapzRsyIPY/CZsBA==}
|
||||
/@tsclass/tsclass/4.0.28:
|
||||
resolution: {integrity: sha512-69OUcb9hR1PYTCHwxsyJhlE7jUJKYZMl4tQWagN7Kmv8gIWRvjfPecNQTUSmSYx6N99z4l+0E/WJ6h18EiDJWg==}
|
||||
dependencies:
|
||||
type-fest: 3.1.0
|
||||
type-fest: 3.5.0
|
||||
|
||||
/@tsconfig/node10/1.0.9:
|
||||
resolution: {integrity: sha512-jNsYVVxU8v5g43Erja32laIDHXeoNvFEpX33OK4d6hljo3jDhCBDhx5dhCCTMWUojscpAagGiRkBKxpdl9fxqA==}
|
||||
@@ -851,7 +894,7 @@ packages:
|
||||
/@types/accepts/1.3.5:
|
||||
resolution: {integrity: sha512-jOdnI/3qTpHABjM5cx1Hc0sKsPoYCp+DP/GJRGtDlPd7fiV9oXGGIcjW/ZOxLIvjGz8MA+uMZI9metHlgqbgwQ==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
dev: true
|
||||
|
||||
/@types/babel__code-frame/7.0.3:
|
||||
@@ -862,7 +905,7 @@ packages:
|
||||
resolution: {integrity: sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==}
|
||||
dependencies:
|
||||
'@types/connect': 3.4.35
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/buffer-json/2.0.1:
|
||||
resolution: {integrity: sha512-y2q2QGDqpS8NBtgKg8si+vKfanyd8smKzTglDCm7dXrco1VclSR8G1/uezK+sWbEUxsVPTomv5RxsTl3JAzxLA==}
|
||||
@@ -880,14 +923,14 @@ packages:
|
||||
/@types/clean-css/4.2.6:
|
||||
resolution: {integrity: sha512-Ze1tf+LnGPmG6hBFMi0B4TEB0mhF7EiMM5oyjLDNPE9hxrPU0W+5+bHvO+eFPA+bt0iC1zkQMoU/iGdRVjcRbw==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
source-map: 0.6.1
|
||||
dev: true
|
||||
|
||||
/@types/co-body/6.1.0:
|
||||
resolution: {integrity: sha512-3e0q2jyDAnx/DSZi0z2H0yoZ2wt5yRDZ+P7ymcMObvq0ufWRT4tsajyO+Q1VwVWiv9PRR4W3YEjEzBjeZlhF+w==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
'@types/qs': 6.9.7
|
||||
dev: true
|
||||
|
||||
@@ -899,7 +942,7 @@ packages:
|
||||
/@types/connect/3.4.35:
|
||||
resolution: {integrity: sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/content-disposition/0.5.5:
|
||||
resolution: {integrity: sha512-v6LCdKfK6BwcqMo+wYW05rLS12S0ZO0Fl4w1h4aaZMD7bqT3gVUns6FvLJKGZHQmYn3SX55JWGpziwJRwVgutA==}
|
||||
@@ -918,11 +961,13 @@ packages:
|
||||
'@types/connect': 3.4.35
|
||||
'@types/express': 4.17.14
|
||||
'@types/keygrip': 1.0.2
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
dev: true
|
||||
|
||||
/@types/cors/2.8.12:
|
||||
resolution: {integrity: sha512-vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==}
|
||||
/@types/cors/2.8.13:
|
||||
resolution: {integrity: sha512-RG8AStHlUiV5ysZQKq97copd2UmVYw3/pRMLefISZ3S1hK104Cwm7iLQ3fTKx+lsUH2CE8FlLaYeEA2LSeqYUA==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/debounce/1.2.1:
|
||||
resolution: {integrity: sha512-epMsEE85fi4lfmJUH/89/iV/LI+F5CvNIvmgs5g5jYFPfhO2S/ae8WSsLOKWdwtoaZw9Q2IhJ4tQ5tFCcS/4HA==}
|
||||
@@ -935,7 +980,7 @@ packages:
|
||||
/@types/express-serve-static-core/4.17.31:
|
||||
resolution: {integrity: sha512-DxMhY+NAsTwMMFHBTtJFNp5qiHKJ7TeqOo23zVEM9alT1Ml27Q3xcTH0xwxn7Q0BbMcVEJOs/7aQtUWupUQN3Q==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
'@types/qs': 6.9.7
|
||||
'@types/range-parser': 1.2.4
|
||||
|
||||
@@ -947,39 +992,40 @@ packages:
|
||||
'@types/qs': 6.9.7
|
||||
'@types/serve-static': 1.15.0
|
||||
|
||||
/@types/express/4.17.15:
|
||||
resolution: {integrity: sha512-Yv0k4bXGOH+8a+7bELd2PqHQsuiANB+A8a4gnQrkRWzrkKlb6KHaVvyXhqs04sVW/OWlbPyYxRgYlIXLfrufMQ==}
|
||||
dependencies:
|
||||
'@types/body-parser': 1.19.2
|
||||
'@types/express-serve-static-core': 4.17.31
|
||||
'@types/qs': 6.9.7
|
||||
'@types/serve-static': 1.15.0
|
||||
|
||||
/@types/fast-json-stable-stringify/2.1.0:
|
||||
resolution: {integrity: sha512-IyNhGHu71jH1jCXTHmafuoAAdsbBON3kDh7u/UUhLmjYgN5TYB54e1R8ckTCiIevl2UuZaCsi9XRxineY5yUjw==}
|
||||
deprecated: This is a stub types definition. fast-json-stable-stringify provides its own type definitions, so you do not need this installed.
|
||||
dependencies:
|
||||
fast-json-stable-stringify: 2.1.0
|
||||
|
||||
/@types/figures/3.0.1:
|
||||
resolution: {integrity: sha512-2OXodKWdNhYl+S+wCvlafqJbfMIVDfQZYX2wRyUOcRiEQpeJ9zU6cT7d+RbMpjS+/vmQ2cAUUL8gyGy1YxtLPw==}
|
||||
deprecated: This is a stub types definition. figures provides its own type definitions, so you do not need this installed.
|
||||
dependencies:
|
||||
figures: 4.0.1
|
||||
dev: true
|
||||
|
||||
/@types/finalhandler/1.2.0:
|
||||
resolution: {integrity: sha512-NgEZKOhxUSXkwNnWNaMXZaopQ5aFGPAYiEpEWIkQ6Dzc4iS0M1oQsvWne2t+ex9QZUAdTz/ZT4tOXJhWtP6mCw==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/from2/2.3.1:
|
||||
resolution: {integrity: sha512-l7kKtohAc5h0CKh6vFMv5WcWvQx40KE6dQneUg22i8c1mwxhVPbN781bYts/mYXxSBrQMhNxkhwg18QY0MfeOg==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/fs-extra/9.0.13:
|
||||
resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/glob/8.0.0:
|
||||
resolution: {integrity: sha512-l6NQsDDyQUVeoTynNpC9uRvCUint/gSUXQA2euwmTuWGvPY5LSDUu6tkCtJB2SvGQlJQzLaKqcGZP4//7EDveA==}
|
||||
dependencies:
|
||||
'@types/minimatch': 5.1.2
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/html-minifier/4.0.2:
|
||||
resolution: {integrity: sha512-4IkmkXJP/25R2fZsCHDX2abztXuQRzUAZq39PfCMz2loLFj8vS9y7aF6vDl58koXSTpsF+eL4Lc5Y4Aww/GCTQ==}
|
||||
@@ -993,10 +1039,6 @@ packages:
|
||||
resolution: {integrity: sha512-FyAOrDuQmBi8/or3ns4rwPno7/9tJTijVW6aQQjK02+kOQ8zmoNg2XJtAuQhvQcy1ASJq38wirX5//9J1EqoUA==}
|
||||
dev: true
|
||||
|
||||
/@types/http-cache-semantics/4.0.1:
|
||||
resolution: {integrity: sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==}
|
||||
dev: true
|
||||
|
||||
/@types/http-errors/1.8.2:
|
||||
resolution: {integrity: sha512-EqX+YQxINb+MeXaIqYDASb6U6FCHbWjkj4a1CKDBks3d/QiB2+PqBLyO72vLDgAO1wUI4O+9gweRcQK11bTL/w==}
|
||||
dev: true
|
||||
@@ -1043,16 +1085,16 @@ packages:
|
||||
'@types/http-errors': 1.8.2
|
||||
'@types/keygrip': 1.0.2
|
||||
'@types/koa-compose': 3.2.5
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
dev: true
|
||||
|
||||
/@types/lodash.clonedeep/4.5.7:
|
||||
resolution: {integrity: sha512-ccNqkPptFIXrpVqUECi60/DFxjNKsfoQxSQsgcBJCX/fuX1wgyQieojkcWH/KpE3xzLoWN/2k+ZeGqIN3paSvw==}
|
||||
dependencies:
|
||||
'@types/lodash': 4.14.186
|
||||
'@types/lodash': 4.14.191
|
||||
|
||||
/@types/lodash/4.14.186:
|
||||
resolution: {integrity: sha512-eHcVlLXP0c2FlMPm56ITode2AgLMSa6aJ05JTTbYbI+7EMkCEE5qk2E41d5g2lCVTqRe0GnnRFurmlCsDODrPw==}
|
||||
/@types/lodash/4.14.191:
|
||||
resolution: {integrity: sha512-BdZ5BCCvho3EIXw6wUCXHe7rS53AIDPLE+JzwgT+OsJk53oBfbSmZZ7CX4VaRoN78N+TJpFi9QPlfIVNmJYWxQ==}
|
||||
|
||||
/@types/mime-types/2.1.1:
|
||||
resolution: {integrity: sha512-vXOTGVSLR2jMw440moWTC7H19iUyLtP3Z1YTj7cSsubOICinjMxFeb/V57v9QdyyPGbbWolUFSSmSiRSn94tFw==}
|
||||
@@ -1066,8 +1108,8 @@ packages:
|
||||
/@types/minimatch/5.1.2:
|
||||
resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==}
|
||||
|
||||
/@types/node/18.11.5:
|
||||
resolution: {integrity: sha512-3JRwhbjI+cHLAkUorhf8RnqUbFXajvzX4q6fMn5JwkgtuwfYtRQYI3u4V92vI6NJuTsbBQWWh3RZjFsuevyMGQ==}
|
||||
/@types/node/18.11.18:
|
||||
resolution: {integrity: sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==}
|
||||
|
||||
/@types/parse5/6.0.3:
|
||||
resolution: {integrity: sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==}
|
||||
@@ -1094,7 +1136,7 @@ packages:
|
||||
resolution: {integrity: sha512-z5xyF6uh8CbjAu9760KDKsH2FcDxZ2tFCsA4HIMWE6IkiYMXfVoa+4f9KX+FN0ZLsaMw1WNG2ETLA6N+/YA+cg==}
|
||||
dependencies:
|
||||
'@types/mime': 3.0.1
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/shortid/0.0.29:
|
||||
resolution: {integrity: sha1-gJPuBBam4r8qpjOBCRFLP7/6Dps=}
|
||||
@@ -1123,7 +1165,7 @@ packages:
|
||||
/@types/through2/2.0.36:
|
||||
resolution: {integrity: sha512-vuifQksQHJXhV9McpVsXKuhnf3lsoX70PnhcqIAbs9dqLH2NgrGz0DzZPDY3+Yh6eaRqcE1gnCQ6QhBn1/PT5A==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
|
||||
/@types/trusted-types/2.0.2:
|
||||
resolution: {integrity: sha512-F5DIZ36YVLE+PN+Zwws4kJogq47hNgX3Nx6WyDJ3kcplxyke3XIzB8uK5n/Lpm1HBsbGzd6nmGehL8cPekP+Tg==}
|
||||
@@ -1146,14 +1188,14 @@ packages:
|
||||
/@types/ws/7.4.7:
|
||||
resolution: {integrity: sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==}
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
dev: true
|
||||
|
||||
/@types/yauzl/2.10.0:
|
||||
resolution: {integrity: sha512-Cn6WYCm0tXv8p6k+A8PvbDG763EDpBoTzHdA+Q/MF6H3sapGjCm9NzoaJncJS9tUKSuCoDs9XHxYYsQDgxR6kw==}
|
||||
requiresBuild: true
|
||||
dependencies:
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
dev: true
|
||||
optional: true
|
||||
|
||||
@@ -1472,16 +1514,15 @@ packages:
|
||||
engines: {node: '>=14.16'}
|
||||
dev: true
|
||||
|
||||
/cacheable-request/10.2.2:
|
||||
resolution: {integrity: sha512-KxjQZM3UIo7/J6W4sLpwFvu1GB3Whv8NtZ8ZrUL284eiQjiXeeqWTdhixNrp/NLZ/JNuFBo6BD4ZaO8ZJ5BN8Q==}
|
||||
/cacheable-request/10.2.4:
|
||||
resolution: {integrity: sha512-IWIea8ei1Ht4dBqvlvh7Gs7EYlMyBhlJybLDUB9sadEqHqftmdNieMLIR5ia3vs8gbjj9t8hXLBpUVg3vcQNbg==}
|
||||
engines: {node: '>=14.16'}
|
||||
dependencies:
|
||||
'@types/http-cache-semantics': 4.0.1
|
||||
get-stream: 6.0.1
|
||||
http-cache-semantics: 4.1.0
|
||||
keyv: 4.5.0
|
||||
keyv: 4.5.2
|
||||
mimic-response: 4.0.0
|
||||
normalize-url: 7.2.0
|
||||
normalize-url: 8.0.0
|
||||
responselike: 3.0.0
|
||||
dev: true
|
||||
|
||||
@@ -1666,6 +1707,10 @@ packages:
|
||||
/croner/4.4.1:
|
||||
resolution: {integrity: sha512-aqVeeIPCf5/NZFlz4mN4MLEOs9xf4ODCmHQDs+577JFj8mK3RkKJz77h7+Rn94AijUqKdFNOUHM+v88d8p02UQ==}
|
||||
|
||||
/croner/5.3.5:
|
||||
resolution: {integrity: sha512-VqaplJOVtaGuAxhsw2HM9GG0DLpVi3W9IsV7bKMAC12O7wMIOcZpCYHBw+xkFABzT3xp5MvUqTfbTewCgxgN+A==}
|
||||
engines: {node: '>=6.0'}
|
||||
|
||||
/cross-fetch/3.1.5:
|
||||
resolution: {integrity: sha512-lvb1SBsI0Z7GDwmuid+mU3kWVBwTVUbe7S0H52yaaAdQOXq2YktTCZdlAcNKFzE6QtRz0snpw9bNiPeOIkkQvw==}
|
||||
dependencies:
|
||||
@@ -1692,6 +1737,9 @@ packages:
|
||||
/dayjs/1.11.6:
|
||||
resolution: {integrity: sha512-zZbY5giJAinCG+7AGaw0wIhNZ6J8AhWuSXKvuc1KAyMiRsvGQWqh4L+MomvhdAYjN+lqvVCMq1I41e3YHvXkyQ==}
|
||||
|
||||
/dayjs/1.11.7:
|
||||
resolution: {integrity: sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ==}
|
||||
|
||||
/debounce/1.2.1:
|
||||
resolution: {integrity: sha512-XRRe6Glud4rd/ZGQfiV1ruXSfbvfJedlV9Y6zOlP+2K04vBYiJEte6stfFkCP03aMnY5tsipamumUjL14fofug==}
|
||||
dev: true
|
||||
@@ -1850,13 +1898,13 @@ packages:
|
||||
resolution: {integrity: sha512-+nVFp+5z1E3HcToEnO7ZIj3g+3k9389DvWtvJZz0T6/eOCPIyyxehFcedoYrZQrp0LgQbD9pPXhpMBKMd5QURg==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
|
||||
/engine.io/6.2.0:
|
||||
resolution: {integrity: sha512-4KzwW3F3bk+KlzSOY57fj/Jx6LyRQ1nbcyIadehl+AnXjKT7gDO0ORdRi/84ixvMKTym6ZKuxvbzN62HDDU1Lg==}
|
||||
/engine.io/6.2.1:
|
||||
resolution: {integrity: sha512-ECceEFcAaNRybd3lsGQKas3ZlMVjN3cyWwMP25D2i0zWfyiytVbTpRPa34qrr+FHddtpBVOmq4H/DCv1O0lZRA==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
dependencies:
|
||||
'@types/cookie': 0.4.1
|
||||
'@types/cors': 2.8.12
|
||||
'@types/node': 18.11.5
|
||||
'@types/cors': 2.8.13
|
||||
'@types/node': 18.11.18
|
||||
accepts: 1.3.8
|
||||
base64id: 2.0.0
|
||||
cookie: 0.4.2
|
||||
@@ -2225,9 +2273,9 @@ packages:
|
||||
dependencies:
|
||||
xml-js: 1.6.11
|
||||
|
||||
/figures/4.0.1:
|
||||
resolution: {integrity: sha512-rElJwkA/xS04Vfg+CaZodpso7VqBknOYbzi6I76hI4X80RUjkSxO2oAyPmGbuXUppywjqndOrQDl817hDnI++w==}
|
||||
engines: {node: '>=12'}
|
||||
/figures/5.0.0:
|
||||
resolution: {integrity: sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==}
|
||||
engines: {node: '>=14'}
|
||||
dependencies:
|
||||
escape-string-regexp: 5.0.0
|
||||
is-unicode-supported: 1.3.0
|
||||
@@ -2270,8 +2318,8 @@ packages:
|
||||
signal-exit: 3.0.7
|
||||
dev: true
|
||||
|
||||
/form-data-encoder/2.1.3:
|
||||
resolution: {integrity: sha512-KqU0nnPMgIJcCOFTNJFEA8epcseEaoox4XZffTgy8jlI6pL/5EFyR54NRG7CnCJN0biY7q52DO3MH6/sJ/TKlQ==}
|
||||
/form-data-encoder/2.1.4:
|
||||
resolution: {integrity: sha512-yDYSgNMraqvnxiEXO4hi88+YZxaHC6QKzb5N84iRCTDeRO7ZALpir/lVmf/uXUhnwUr2O4HU8s/n6x+yNjQkHw==}
|
||||
engines: {node: '>= 14.17'}
|
||||
dev: true
|
||||
|
||||
@@ -2382,18 +2430,18 @@ packages:
|
||||
slash: 3.0.0
|
||||
dev: true
|
||||
|
||||
/got/12.5.2:
|
||||
resolution: {integrity: sha512-guHGMSEcsA5m1oPRweXUJnug0vuvlkX9wx5hzOka+ZBrBUOJHU0Z1JcNu3QE5IPGnA5aXUsQHdWOD4eJg9/v3A==}
|
||||
/got/12.5.3:
|
||||
resolution: {integrity: sha512-8wKnb9MGU8IPGRIo+/ukTy9XLJBwDiCpIf5TVzQ9Cpol50eMTpBq2GAuDsuDIz7hTYmZgMgC1e9ydr6kSDWs3w==}
|
||||
engines: {node: '>=14.16'}
|
||||
dependencies:
|
||||
'@sindresorhus/is': 5.3.0
|
||||
'@szmarczak/http-timer': 5.0.1
|
||||
cacheable-lookup: 7.0.0
|
||||
cacheable-request: 10.2.2
|
||||
cacheable-request: 10.2.4
|
||||
decompress-response: 6.0.0
|
||||
form-data-encoder: 2.1.3
|
||||
form-data-encoder: 2.1.4
|
||||
get-stream: 6.0.1
|
||||
http2-wrapper: 2.1.11
|
||||
http2-wrapper: 2.2.0
|
||||
lowercase-keys: 3.0.0
|
||||
p-cancelable: 3.0.0
|
||||
responselike: 3.0.0
|
||||
@@ -2503,8 +2551,8 @@ packages:
|
||||
statuses: 2.0.1
|
||||
toidentifier: 1.0.1
|
||||
|
||||
/http2-wrapper/2.1.11:
|
||||
resolution: {integrity: sha512-aNAk5JzLturWEUiuhAN73Jcbq96R7rTitAoXV54FYMatvihnpD2+6PUgU4ce3D/m5VDbw+F5CsyKSF176ptitQ==}
|
||||
/http2-wrapper/2.2.0:
|
||||
resolution: {integrity: sha512-kZB0wxMo0sh1PehyjJUWRFEd99KC5TLjZ2cULC4f9iqJBAmKQQXEICjxl5iPJRwP40dpeHFqqhm7tYCvODpqpQ==}
|
||||
engines: {node: '>=10.19.0'}
|
||||
dependencies:
|
||||
quick-lru: 5.1.1
|
||||
@@ -2746,8 +2794,8 @@ packages:
|
||||
tsscmp: 1.0.6
|
||||
dev: true
|
||||
|
||||
/keyv/4.5.0:
|
||||
resolution: {integrity: sha512-2YvuMsA+jnFGtBareKqgANOEKe1mk3HKiXu2fRmAfyxG0MJAywNhi5ttWA3PMjl4NmpyjZNbFifR2vNjW1znfA==}
|
||||
/keyv/4.5.2:
|
||||
resolution: {integrity: sha512-5MHbFaKn8cNSmVW7BYnijeAVlE4cYA/SVkifVgrh7yotnfhKmjuXpDKjrABLnT0SfHWV21P8ow07OGfRrNDg8g==}
|
||||
dependencies:
|
||||
json-buffer: 3.0.1
|
||||
dev: true
|
||||
@@ -3098,9 +3146,9 @@ packages:
|
||||
engines: {node: '>=0.10.0'}
|
||||
dev: true
|
||||
|
||||
/normalize-url/7.2.0:
|
||||
resolution: {integrity: sha512-uhXOdZry0L6M2UIo9BTt7FdpBDiAGN/7oItedQwPKh8jh31ZlvC8U9Xl/EJ3aijDHaywXTW3QbZ6LuCocur1YA==}
|
||||
engines: {node: '>=12.20'}
|
||||
/normalize-url/8.0.0:
|
||||
resolution: {integrity: sha512-uVFpKhj5MheNBJRTiMZ9pE/7hD1QTeEvugSJW/OmLzAp78PB5O6adfMNTvmfKhXBkvCzC+rqifWcVYpGFwTjnw==}
|
||||
engines: {node: '>=14.16'}
|
||||
dev: true
|
||||
|
||||
/object-assign/4.1.1:
|
||||
@@ -3186,8 +3234,8 @@ packages:
|
||||
resolution: {integrity: sha1-8/dSL073gjSNqBYbrZ7P1Rv4OnU=}
|
||||
dev: true
|
||||
|
||||
/pako/2.0.4:
|
||||
resolution: {integrity: sha512-v8tweI900AUkZN6heMU/4Uy4cXRc2AYNRggVmTR+dEncawDJgCdLMximOVA2p4qO57WMynangsfGRb5WD6L1Bg==}
|
||||
/pako/2.1.0:
|
||||
resolution: {integrity: sha512-w+eufiZ1WuJYgPXbV/PO3NCMEc3xqylkKHzp8bxp1uW4qaSNQUkwmLLEc3kKsfz8lpV1F8Ht3U1Cm+9Srog2ug==}
|
||||
dev: true
|
||||
|
||||
/param-case/2.1.1:
|
||||
@@ -3200,6 +3248,10 @@ packages:
|
||||
resolution: {integrity: sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA==}
|
||||
engines: {node: '>=6'}
|
||||
|
||||
/parse-ms/3.0.0:
|
||||
resolution: {integrity: sha512-Tpb8Z7r7XbbtBTrM9UhpkzzaMrqA2VXMT3YChzYltwV3P3pM6t8wl7TvpMnSTosz1aQAdVib7kdoys7vYOPerw==}
|
||||
engines: {node: '>=12'}
|
||||
|
||||
/parse5/6.0.1:
|
||||
resolution: {integrity: sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==}
|
||||
dev: true
|
||||
@@ -3253,7 +3305,7 @@ packages:
|
||||
dependencies:
|
||||
'@rkusa/linebreak': 1.0.0
|
||||
opentype.js: 1.3.4
|
||||
pako: 2.0.4
|
||||
pako: 2.1.0
|
||||
readable-stream: 3.6.0
|
||||
unorm: 1.6.0
|
||||
uuid: 8.3.2
|
||||
@@ -3289,6 +3341,12 @@ packages:
|
||||
dependencies:
|
||||
parse-ms: 2.1.0
|
||||
|
||||
/pretty-ms/8.0.0:
|
||||
resolution: {integrity: sha512-ASJqOugUF1bbzI35STMBUpZqdfYKlJugy6JBziGi2EE+AL5JPJGSzvpeVXojxrr0ViUYoToUjb5kjSEGf7Y83Q==}
|
||||
engines: {node: '>=14.16'}
|
||||
dependencies:
|
||||
parse-ms: 3.0.0
|
||||
|
||||
/process-nextick-args/2.0.1:
|
||||
resolution: {integrity: sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==}
|
||||
|
||||
@@ -3314,7 +3372,7 @@ packages:
|
||||
dependencies:
|
||||
aggregate-error: 4.0.1
|
||||
dns-socket: 4.2.2
|
||||
got: 12.5.2
|
||||
got: 12.5.3
|
||||
is-ip: 4.0.0
|
||||
dev: true
|
||||
|
||||
@@ -3500,6 +3558,11 @@ packages:
|
||||
dependencies:
|
||||
tslib: 2.4.0
|
||||
|
||||
/rxjs/7.8.0:
|
||||
resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==}
|
||||
dependencies:
|
||||
tslib: 2.4.1
|
||||
|
||||
/safe-buffer/5.1.2:
|
||||
resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==}
|
||||
|
||||
@@ -3601,8 +3664,8 @@ packages:
|
||||
/socket.io-adapter/2.4.0:
|
||||
resolution: {integrity: sha512-W4N+o69rkMEGVuk2D/cvca3uYsvGlMwsySWV447y99gUPghxq42BxqLNMndb+a1mm/5/7NeXVQS7RLa2XyXvYg==}
|
||||
|
||||
/socket.io-client/4.5.3:
|
||||
resolution: {integrity: sha512-I/hqDYpQ6JKwtJOf5ikM+Qz+YujZPMEl6qBLhxiP0nX+TfXKhW4KZZG8lamrD6Y5ngjmYHreESVasVCgi5Kl3A==}
|
||||
/socket.io-client/4.5.4:
|
||||
resolution: {integrity: sha512-ZpKteoA06RzkD32IbqILZ+Cnst4xewU7ZYK12aS1mzHftFFjpoMz69IuhP/nL25pJfao/amoPI527KnuhFm01g==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
dependencies:
|
||||
'@socket.io/component-emitter': 3.1.0
|
||||
@@ -3623,14 +3686,14 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/socket.io/4.5.3:
|
||||
resolution: {integrity: sha512-zdpnnKU+H6mOp7nYRXH4GNv1ux6HL6+lHL8g7Ds7Lj8CkdK1jJK/dlwsKDculbyOHifcJ0Pr/yeXnZQ5GeFrcg==}
|
||||
/socket.io/4.5.4:
|
||||
resolution: {integrity: sha512-m3GC94iK9MfIEeIBfbhJs5BqFibMtkRk8ZpKwG2QwxV0m/eEhPIV4ara6XCF1LWNAus7z58RodiZlAH71U3EhQ==}
|
||||
engines: {node: '>=10.0.0'}
|
||||
dependencies:
|
||||
accepts: 1.3.8
|
||||
base64id: 2.0.0
|
||||
debug: 4.3.4
|
||||
engine.io: 6.2.0
|
||||
engine.io: 6.2.1
|
||||
socket.io-adapter: 2.4.0
|
||||
socket.io-parser: 4.2.1
|
||||
transitivePeerDependencies:
|
||||
@@ -3728,8 +3791,8 @@ packages:
|
||||
/symbol-tree/3.2.4:
|
||||
resolution: {integrity: sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==}
|
||||
|
||||
/systeminformation/5.12.10:
|
||||
resolution: {integrity: sha512-rLShZFpz14aWqg3nNCS8zw74WicRV6c3R17Ob7oO37zSypZATT4M2Dgjr4nE6PYGlome9ObU0A2uqXiAlaBbuA==}
|
||||
/systeminformation/5.16.9:
|
||||
resolution: {integrity: sha512-QTlv3GGSromPeLVW3pzM6uxU8RbkacW9e0+ZX23GAXaX+XE0UToSygAxCJDHSty6RB9lAFHCHg+FfiXFChi/+w==}
|
||||
engines: {node: '>=8.0.0'}
|
||||
os: [darwin, linux, win32, freebsd, openbsd, netbsd, sunos, android]
|
||||
hasBin: true
|
||||
@@ -3813,7 +3876,7 @@ packages:
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/ts-node/10.9.1_w23x7n7zvvy4jtcrbeyi4toj7i:
|
||||
/ts-node/10.9.1_vqcafhj4xvr2nzknlrdklk55zm:
|
||||
resolution: {integrity: sha512-NtVysVPkxxrwFGUUxGYhfux8k78pQB3JqYBXlLRZgdGUqTO5wU/UyHop5p70iEbGhB7q5KmiZiU0Y3KlJrScEw==}
|
||||
hasBin: true
|
||||
peerDependencies:
|
||||
@@ -3832,7 +3895,7 @@ packages:
|
||||
'@tsconfig/node12': 1.0.11
|
||||
'@tsconfig/node14': 1.0.3
|
||||
'@tsconfig/node16': 1.0.3
|
||||
'@types/node': 18.11.5
|
||||
'@types/node': 18.11.18
|
||||
acorn: 8.8.1
|
||||
acorn-walk: 8.2.0
|
||||
arg: 4.1.3
|
||||
@@ -3847,6 +3910,9 @@ packages:
|
||||
/tslib/2.4.0:
|
||||
resolution: {integrity: sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ==}
|
||||
|
||||
/tslib/2.4.1:
|
||||
resolution: {integrity: sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==}
|
||||
|
||||
/tsscmp/1.0.6:
|
||||
resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==}
|
||||
engines: {node: '>=0.6.x'}
|
||||
@@ -3865,8 +3931,8 @@ packages:
|
||||
resolution: {integrity: sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==}
|
||||
engines: {node: '>=12.20'}
|
||||
|
||||
/type-fest/3.1.0:
|
||||
resolution: {integrity: sha512-StmrZmK3eD9mDF9Vt7UhqthrDSk66O9iYl5t5a0TSoVkHjl0XZx/xuc/BRz4urAXXGHOY5OLsE0RdJFIApSFmw==}
|
||||
/type-fest/3.5.0:
|
||||
resolution: {integrity: sha512-bI3zRmZC8K0tUz1HjbIOAGQwR2CoPQG68N5IF7gm0LBl8QSNXzkmaWnkWccCUL5uG9mCsp4sBwC8SBrNSISWew==}
|
||||
engines: {node: '>=14.16'}
|
||||
|
||||
/type-is/1.6.18:
|
||||
|
||||
48
test/test.ts
48
test/test.ts
@@ -4,17 +4,18 @@ import * as typedrequestInterfaces from '@apiglobal/typedrequest-interfaces';
|
||||
|
||||
import * as typedsocket from '../ts/index.js';
|
||||
|
||||
interface IRequest_Client_Server extends typedrequestInterfaces.implementsTR<
|
||||
typedrequestInterfaces.ITypedRequest,
|
||||
IRequest_Client_Server
|
||||
> {
|
||||
interface IRequest_Client_Server
|
||||
extends typedrequestInterfaces.implementsTR<
|
||||
typedrequestInterfaces.ITypedRequest,
|
||||
IRequest_Client_Server
|
||||
> {
|
||||
method: 'sayhi';
|
||||
request: {
|
||||
greeting: string;
|
||||
};
|
||||
response: {
|
||||
answer: string
|
||||
}
|
||||
answer: string;
|
||||
};
|
||||
}
|
||||
|
||||
let testTypedSocketServer: typedsocket.TypedSocket;
|
||||
@@ -23,45 +24,52 @@ let testTypedSocketClient: typedsocket.TypedSocket;
|
||||
const testTypedRouter = new typedrequest.TypedRouter();
|
||||
|
||||
tap.test('should add some handlers', async () => {
|
||||
testTypedRouter.addTypedHandler<IRequest_Client_Server>(new typedrequest.TypedHandler('sayhi', async requestData => {
|
||||
return {
|
||||
answer: `ok, got it : ${requestData.greeting}`
|
||||
}
|
||||
}));
|
||||
})
|
||||
testTypedRouter.addTypedHandler<IRequest_Client_Server>(
|
||||
new typedrequest.TypedHandler('sayhi', async (requestData) => {
|
||||
return {
|
||||
answer: `ok, got it : ${requestData.greeting}`,
|
||||
};
|
||||
})
|
||||
);
|
||||
});
|
||||
|
||||
tap.test('should create Server and Client', async (tools) => {
|
||||
testTypedSocketServer = await typedsocket.TypedSocket.createServer(testTypedRouter);
|
||||
testTypedSocketClient = await typedsocket.TypedSocket.createClient(testTypedRouter, 'http://localhost:3000');
|
||||
testTypedSocketClient = await typedsocket.TypedSocket.createClient(
|
||||
testTypedRouter,
|
||||
'http://localhost:3000'
|
||||
);
|
||||
console.log('test: waiting 5 seconds');
|
||||
await tools.delayFor(5000);
|
||||
await testTypedSocketServer.stop();
|
||||
|
||||
// lets create another server
|
||||
testTypedSocketServer = await typedsocket.TypedSocket.createServer(testTypedRouter);
|
||||
|
||||
|
||||
// lets see if auto reconnect works
|
||||
console.log('test: waiting 21 seconds for reconnect');
|
||||
await tools.delayFor(21000);
|
||||
});
|
||||
|
||||
tap.test('should process messages from both sides', async () => {
|
||||
const myServerSideTypedRequest = testTypedSocketServer.createTypedRequest<IRequest_Client_Server>('sayhi');
|
||||
const myClientSideTypedRequest = testTypedSocketClient.createTypedRequest<IRequest_Client_Server>('sayhi');
|
||||
const myServerSideTypedRequest =
|
||||
testTypedSocketServer.createTypedRequest<IRequest_Client_Server>('sayhi');
|
||||
const myClientSideTypedRequest =
|
||||
testTypedSocketClient.createTypedRequest<IRequest_Client_Server>('sayhi');
|
||||
const response = await myClientSideTypedRequest.fire({
|
||||
greeting: 'that is a greeting from the client'
|
||||
greeting: 'that is a greeting from the client',
|
||||
});
|
||||
console.log(response);
|
||||
const response2 = await myServerSideTypedRequest.fire({
|
||||
greeting: 'that is a greeting from the server'
|
||||
greeting: 'that is a greeting from the server',
|
||||
});
|
||||
console.log(response2);
|
||||
})
|
||||
});
|
||||
|
||||
tap.test('should disconnect', async (tools) => {
|
||||
await testTypedSocketClient.stop();
|
||||
await testTypedSocketServer.stop();
|
||||
tools.delayFor(1000).then(() => process.exit(0));
|
||||
})
|
||||
});
|
||||
|
||||
tap.start();
|
||||
|
||||
@@ -3,6 +3,6 @@
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@apiglobal/typedsocket',
|
||||
version: '2.0.6',
|
||||
version: '2.0.14',
|
||||
description: 'a typedrequest extension supporting websockets'
|
||||
}
|
||||
|
||||
@@ -11,7 +11,7 @@ export class TypedSocket {
|
||||
* creates a typedsocket server
|
||||
* note: this will fail in browser environments as server libs are not bundled.
|
||||
*/
|
||||
public static async createServer (
|
||||
public static async createServer(
|
||||
typedrouterArg: plugins.typedrequest.TypedRouter,
|
||||
smartexpressServerArg?: any
|
||||
): Promise<TypedSocket> {
|
||||
@@ -34,7 +34,7 @@ export class TypedSocket {
|
||||
const typedsocket = new TypedSocket(
|
||||
'server',
|
||||
typedrouterArg,
|
||||
async <T extends plugins.typedrequestInterfaces.ITypedRequest> (
|
||||
async <T extends plugins.typedrequestInterfaces.ITypedRequest>(
|
||||
dataArg: T,
|
||||
targetConnectionArg?: plugins.smartsocket.SocketConnection
|
||||
): Promise<T> => {
|
||||
@@ -43,16 +43,18 @@ export class TypedSocket {
|
||||
console.log(
|
||||
'Since no targetConnection was supplied and there is only one active one present, choosing that one automatically'
|
||||
);
|
||||
targetConnectionArg = smartsocketServer.socketConnections.getArray()[ 0 ];
|
||||
targetConnectionArg = smartsocketServer.socketConnections.getArray()[0];
|
||||
} else {
|
||||
throw new Error('you need to specify the wanted targetConnection. Currently no target is selectable automatically.');
|
||||
throw new Error(
|
||||
'you need to specify the wanted targetConnection. Currently no target is selectable automatically.'
|
||||
);
|
||||
}
|
||||
}
|
||||
const response: T = await smartsocketServer.clientCall(
|
||||
const response: T = (await smartsocketServer.clientCall(
|
||||
'processMessage',
|
||||
dataArg,
|
||||
targetConnectionArg
|
||||
) as any;
|
||||
)) as any;
|
||||
return response;
|
||||
},
|
||||
smartsocketServer
|
||||
@@ -62,7 +64,7 @@ export class TypedSocket {
|
||||
return typedsocket;
|
||||
}
|
||||
|
||||
public static async createClient (
|
||||
public static async createClient(
|
||||
typedrouterArg: plugins.typedrequest.TypedRouter,
|
||||
serverUrlArg: string,
|
||||
aliasArg = 'clientArg'
|
||||
@@ -74,8 +76,8 @@ export class TypedSocket {
|
||||
port: domain.port || 3000,
|
||||
url: `${domain.nodeParsedUrl.protocol}//${domain.nodeParsedUrl.hostname}`,
|
||||
autoReconnect: true,
|
||||
}
|
||||
console.log(`starting typedsocket with the following settings:`)
|
||||
};
|
||||
console.log(`starting typedsocket with the following settings:`);
|
||||
console.log(socketOptions);
|
||||
const smartsocketClient = new plugins.smartsocket.SmartsocketClient(socketOptions);
|
||||
smartsocketClient.addSocketFunction(
|
||||
@@ -89,8 +91,8 @@ export class TypedSocket {
|
||||
const typedsocket = new TypedSocket(
|
||||
'client',
|
||||
typedrouterArg,
|
||||
async <T extends plugins.typedrequestInterfaces.ITypedRequest> (dataArg: T): Promise<T> => {
|
||||
const response: T = (smartsocketClient.serverCall('processMessage', dataArg) as any) as T;
|
||||
async <T extends plugins.typedrequestInterfaces.ITypedRequest>(dataArg: T): Promise<T> => {
|
||||
const response: T = smartsocketClient.serverCall('processMessage', dataArg) as any as T;
|
||||
return response;
|
||||
},
|
||||
smartsocketClient
|
||||
@@ -109,7 +111,9 @@ export class TypedSocket {
|
||||
typedRequestPostObject: plugins.typedrequestInterfaces.ITypedRequest,
|
||||
socketConnectionArg?: plugins.smartsocket.SocketConnection
|
||||
) => Promise<plugins.typedrequestInterfaces.ITypedRequest>);
|
||||
private socketServerOrClient: plugins.smartsocket.Smartsocket | plugins.smartsocket.SmartsocketClient;
|
||||
private socketServerOrClient:
|
||||
| plugins.smartsocket.Smartsocket
|
||||
| plugins.smartsocket.SmartsocketClient;
|
||||
constructor(
|
||||
sideArg: TTypedSocketSide,
|
||||
typedrouterArg: plugins.typedrequest.TypedRouter,
|
||||
@@ -122,19 +126,22 @@ export class TypedSocket {
|
||||
this.socketServerOrClient = socketServerOrClientArg;
|
||||
}
|
||||
|
||||
public addTag (keyArg: string, payloadArg: any) {
|
||||
if (this.side === 'client' && this.socketServerOrClient instanceof plugins.smartsocket.SmartsocketClient) {
|
||||
public addTag<T extends plugins.typedrequestInterfaces.ITag = any>(nameArg: T['name'], payloadArg: T['payload']) {
|
||||
if (
|
||||
this.side === 'client' &&
|
||||
this.socketServerOrClient instanceof plugins.smartsocket.SmartsocketClient
|
||||
) {
|
||||
this.socketServerOrClient.socketConnection.addTag({
|
||||
id: keyArg,
|
||||
payload: payloadArg
|
||||
})
|
||||
id: nameArg,
|
||||
payload: payloadArg,
|
||||
});
|
||||
} else {
|
||||
throw new Error('tagging is only supported on clients');
|
||||
}
|
||||
}
|
||||
|
||||
public createTypedRequest<T extends plugins.typedrequestInterfaces.ITypedRequest> (
|
||||
methodName: T[ 'method' ],
|
||||
public createTypedRequest<T extends plugins.typedrequestInterfaces.ITypedRequest>(
|
||||
methodName: T['method'],
|
||||
targetConnection?: plugins.smartsocket.SocketConnection
|
||||
): plugins.typedrequest.TypedRequest<T> {
|
||||
const typedrequest = new plugins.typedrequest.TypedRequest<T>(
|
||||
@@ -152,9 +159,9 @@ export class TypedSocket {
|
||||
/**
|
||||
* returns all matching target connection
|
||||
* @param asyncFindFuncArg
|
||||
* @returns
|
||||
* @returns
|
||||
*/
|
||||
public async findAllTargetConnections (
|
||||
public async findAllTargetConnections(
|
||||
asyncFindFuncArg: (connectionArg: plugins.smartsocket.SocketConnection) => Promise<boolean>
|
||||
) {
|
||||
if (this.socketServerOrClient instanceof plugins.smartsocket.Smartsocket) {
|
||||
@@ -173,35 +180,36 @@ export class TypedSocket {
|
||||
/**
|
||||
* returns a single target connection by returning the first one of all matching ones
|
||||
* @param asyncFindFuncArg
|
||||
* @returns
|
||||
* @returns
|
||||
*/
|
||||
public async findTargetConnection (
|
||||
public async findTargetConnection(
|
||||
asyncFindFuncArg: (connectionArg: plugins.smartsocket.SocketConnection) => Promise<boolean>
|
||||
) {
|
||||
const allMatching = await this.findAllTargetConnections(asyncFindFuncArg);
|
||||
return allMatching[ 0 ];
|
||||
return allMatching[0];
|
||||
}
|
||||
|
||||
public async findAllTargetConnectionsByTag (keyArg: string, payloadArg?: any) {
|
||||
return this.findAllTargetConnections(async socketConnectionArg => {
|
||||
public async findAllTargetConnectionsByTag<TTag extends plugins.typedrequestInterfaces.ITag = any>(keyArg: TTag['name'], payloadArg?: TTag['payload']) {
|
||||
return this.findAllTargetConnections(async (socketConnectionArg) => {
|
||||
let result: boolean;
|
||||
if (!payloadArg) {
|
||||
result = !!(await socketConnectionArg.getTagById(keyArg));
|
||||
} else {
|
||||
result = !!(
|
||||
plugins.smartjson.stringify((await socketConnectionArg.getTagById(keyArg))?.payload) === plugins.smartjson.stringify(payloadArg)
|
||||
plugins.smartjson.stringify((await socketConnectionArg.getTagById(keyArg))?.payload) ===
|
||||
plugins.smartjson.stringify(payloadArg)
|
||||
);
|
||||
}
|
||||
return result;
|
||||
})
|
||||
});
|
||||
}
|
||||
|
||||
public async findTargetConnectionByTag (keyArg: string, payloadArg?: any) {
|
||||
const allResults = await this.findAllTargetConnectionsByTag(keyArg, payloadArg)
|
||||
return allResults[ 0 ];
|
||||
public async findTargetConnectionByTag<TTag extends plugins.typedrequestInterfaces.ITag = any>(keyArg: TTag['name'], payloadArg?: TTag['payload']) {
|
||||
const allResults = await this.findAllTargetConnectionsByTag(keyArg, payloadArg);
|
||||
return allResults[0];
|
||||
}
|
||||
|
||||
public async stop () {
|
||||
await this.socketServerOrClient.stop()
|
||||
public async stop() {
|
||||
await this.socketServerOrClient.stop();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -2,10 +2,7 @@
|
||||
import * as typedrequest from '@apiglobal/typedrequest';
|
||||
import * as typedrequestInterfaces from '@apiglobal/typedrequest-interfaces';
|
||||
|
||||
export {
|
||||
typedrequest,
|
||||
typedrequestInterfaces,
|
||||
}
|
||||
export { typedrequest, typedrequestInterfaces };
|
||||
|
||||
// @pushrocks scope
|
||||
import * as isohash from '@pushrocks/isohash';
|
||||
@@ -13,9 +10,4 @@ import * as smartjson from '@pushrocks/smartjson';
|
||||
import * as smartsocket from '@pushrocks/smartsocket';
|
||||
import * as smartstring from '@pushrocks/smartstring';
|
||||
|
||||
export {
|
||||
isohash,
|
||||
smartjson,
|
||||
smartsocket,
|
||||
smartstring
|
||||
}
|
||||
export { isohash, smartjson, smartsocket, smartstring };
|
||||
|
||||
Reference in New Issue
Block a user