diff --git a/package-lock.json b/package-lock.json index e2e4252..5316591 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1452,11 +1452,11 @@ } }, "@pushrocks/smartexpress": { - "version": "3.0.99", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartexpress/-/smartexpress-3.0.99.tgz", - "integrity": "sha512-vPcoyryZsiB+y4Bi2MAykT44Lw5fSGfQpYQALRbbRJ/1Idj5D8KHM1qf6y826+432kOZWkmEqKJeclnHjZnzzA==", + "version": "3.0.100", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartexpress/-/smartexpress-3.0.100.tgz", + "integrity": "sha512-AfaBX5nt5cvFg8UthURaSuaesaR5rEYy5PSTvH2fNoU36csnexeWitdkQ5NkOqel63prAMe8u4zGAqoDnG6arg==", "requires": { - "@apiglobal/typedrequest": "^1.0.53", + "@apiglobal/typedrequest": "^1.0.56", "@pushrocks/lik": "^4.0.20", "@pushrocks/smartfeed": "^1.0.11", "@pushrocks/smartfile": "^8.0.8", @@ -1464,10 +1464,10 @@ "@pushrocks/smartmime": "^1.0.3", "@pushrocks/smartpromise": "^3.1.3", "@pushrocks/smartrequest": "^1.1.51", - "@pushrocks/smartsitemap": "^1.0.11", - "@pushrocks/smarttime": "^3.0.37", + "@pushrocks/smartsitemap": "^1.0.14", + "@pushrocks/smarttime": "^3.0.38", "@tsclass/tsclass": "^3.0.29", - "@types/cors": "^2.8.8", + "@types/cors": "^2.8.9", "@types/express": "^4.17.9", "@types/finalhandler": "^1.1.0", "@types/helmet": "^4.0.0", @@ -1475,7 +1475,22 @@ "cors": "^2.8.5", "express": "^4.17.1", "express-force-ssl": "^0.3.2", - "helmet": "^4.2.0" + "helmet": "^4.3.1" + }, + "dependencies": { + "@pushrocks/smarttime": { + "version": "3.0.38", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmarttime/-/smarttime-3.0.38.tgz", + "integrity": "sha512-oVT48eZE66OTmDALAsWkk3GXUQiqzkei7mo526UbuMN2iLY8I9WgsxmLfa8Fp4llQmocncW3WTqGyhnEOAuDgA==", + "requires": { + "@pushrocks/lik": "^4.0.17", + "@pushrocks/smartdelay": "^2.0.10", + "@pushrocks/smartpromise": "^3.0.2", + "croner": "^1.1.23", + "dayjs": "^1.9.1", + "is-nan": "^1.3.0" + } + } } }, "@pushrocks/smartfeed": { @@ -1922,21 +1937,22 @@ } }, "@pushrocks/smartsitemap": { - "version": "1.0.11", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsitemap/-/smartsitemap-1.0.11.tgz", - "integrity": "sha512-IGJ8UASrZKTwszW0coGFEPtYr+gZjbxQBMAzb2pft6VFv3CLIN1RmzgEqcHNlG8Czp125xOoR0mnKKq94XOVKg==", + "version": "1.0.14", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsitemap/-/smartsitemap-1.0.14.tgz", + "integrity": "sha512-Vnn1CzG7b1QAr/tOBbeJVU3Q85G+CUkqsmtiRSa9TqMcpdvJyUDc7tCHVgL8ZkqpF6ozoPUTorkHNjCyHhkWeA==", "requires": { "@pushrocks/smartcache": "^1.0.13", - "@pushrocks/smartfeed": "^1.0.5", + "@pushrocks/smartfeed": "^1.0.11", "@pushrocks/smartxml": "^1.0.6", "@pushrocks/smartyaml": "^2.0.5", - "@tsclass/tsclass": "^3.0.25" + "@pushrocks/webrequest": "^2.0.13", + "@tsclass/tsclass": "^3.0.29" } }, "@pushrocks/smartsocket": { - "version": "1.2.0", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.2.0.tgz", - "integrity": "sha512-jveC4DrfcC6FQuNi0j3MIrrSblN3afxcCZcR1dP6rNDTZYdBVQ4nVlfX0yH9ba/ZIa1mDK66ZdNQ96cP3FdRZA==", + "version": "1.2.1", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartsocket/-/smartsocket-1.2.1.tgz", + "integrity": "sha512-vZTnkGFa8MpHrBO+87jzzy5XZYfi4VejzlqNnWmt1iXQx3lMitrvEcQPXWvqtwrI1WBysZhmk0AWB4VXbYWOSQ==", "requires": { "@apiglobal/typedrequest-interfaces": "^1.0.15", "@pushrocks/isohash": "^1.0.2", @@ -1956,9 +1972,9 @@ } }, "@pushrocks/smartstring": { - "version": "3.0.23", - "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartstring/-/smartstring-3.0.23.tgz", - "integrity": "sha512-lGkmzbNAAvfKDlFHXS6L5IdvYQLa9uUuf8wwCiW4ZadXFsH00ACPp2pgY30aSNYwBqFWc5U9X+przuxIkBM9Pw==", + "version": "3.0.24", + "resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartstring/-/smartstring-3.0.24.tgz", + "integrity": "sha512-3ceUOBcwuU8uzjInkoxKjgWSRMv4YRd+v9zRSEC3T21fMi8dTcIKMtgxm7nAmajRZvyVoCw60Q9+0AHedQlJmQ==", "requires": { "@pushrocks/smartenv": "^4.0.16", "crypto-random-string": "^3.3.0", @@ -2220,9 +2236,9 @@ "dev": true }, "@types/engine.io": { - "version": "3.1.4", - "resolved": "https://verdaccio.lossless.one/@types%2fengine.io/-/engine.io-3.1.4.tgz", - "integrity": "sha512-98rXVukLD6/ozrQ2O80NAlWDGA4INg+tqsEReWJldqyi2fulC9V7Use/n28SWgROXKm6003ycWV4gZHoF8GA6w==", + "version": "3.1.5", + "resolved": "https://verdaccio.lossless.one/@types%2fengine.io/-/engine.io-3.1.5.tgz", + "integrity": "sha512-DLVpLEGTEZGBXOYoYoagHSxXkDHONc0fZouF2ayw7Q18aRu1Afwci+1CFKvPpouCUOVWP+dmCaAWpQjswe7kpg==", "requires": { "@types/node": "*" } @@ -2412,9 +2428,9 @@ } }, "@types/socket.io-client": { - "version": "1.4.34", - "resolved": "https://verdaccio.lossless.one/@types%2fsocket.io-client/-/socket.io-client-1.4.34.tgz", - "integrity": "sha512-Lzia5OTQFJZJ5R4HsEEldywiiqT9+W2rDbyHJiiTGqOcju89sCsQ8aUXDljY6Ls33wKZZGC0bfMhr/VpOyjtXg==" + "version": "1.4.35", + "resolved": "https://verdaccio.lossless.one/@types%2fsocket.io-client/-/socket.io-client-1.4.35.tgz", + "integrity": "sha512-MI8YmxFS+jMkIziycT5ickBWK1sZwDwy16mgH/j99Mcom6zRG/NimNGQ3vJV0uX5G6g/hEw0FG3w3b3sT5OUGw==" }, "@types/socket.io-parser": { "version": "2.2.1", @@ -3661,11 +3677,6 @@ "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "component-bind": { - "version": "1.0.0", - "resolved": "https://verdaccio.lossless.one/component-bind/-/component-bind-1.0.0.tgz", - "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=" - }, "component-emitter": { "version": "1.3.0", "resolved": "https://verdaccio.lossless.one/component-emitter/-/component-emitter-1.3.0.tgz", @@ -4658,64 +4669,41 @@ } }, "engine.io": { - "version": "4.0.5", - "resolved": "https://verdaccio.lossless.one/engine.io/-/engine.io-4.0.5.tgz", - "integrity": "sha512-Ri+whTNr2PKklxQkfbGjwEo+kCBUM4Qxk4wtLqLrhH+b1up2NFL9g9pjYWiCV/oazwB0rArnvF/ZmZN2ab5Hpg==", + "version": "4.1.0", + "resolved": "https://verdaccio.lossless.one/engine.io/-/engine.io-4.1.0.tgz", + "integrity": "sha512-vW7EAtn0HDQ4MtT5QbmCHF17TaYLONv2/JwdYsq9USPRZVM4zG7WB3k0Nc321z8EuSOlhGokrYlYx4176QhD0A==", "requires": { "accepts": "~1.3.4", "base64id": "2.0.0", "cookie": "~0.4.1", "cors": "~2.8.5", - "debug": "~4.1.0", + "debug": "~4.3.1", "engine.io-parser": "~4.0.0", - "ws": "^7.1.2" + "ws": "~7.4.2" }, "dependencies": { "cookie": { "version": "0.4.1", "resolved": "https://verdaccio.lossless.one/cookie/-/cookie-0.4.1.tgz", "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" - }, - "debug": { - "version": "4.1.1", - "resolved": "https://verdaccio.lossless.one/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } } } }, "engine.io-client": { - "version": "4.0.5", - "resolved": "https://verdaccio.lossless.one/engine.io-client/-/engine.io-client-4.0.5.tgz", - "integrity": "sha512-1lkn0QdekHQPMTcxUh8LqIuxQHNtKV5GvqkQzmZ1rYKAvB6puMm13U7K1ps3OQZ4joE46asQiAKrcdL9weNEVw==", + "version": "4.1.0", + "resolved": "https://verdaccio.lossless.one/engine.io-client/-/engine.io-client-4.1.0.tgz", + "integrity": "sha512-OUmn4m71/lW3ixICv4h3DuBRuh3ri0w3cDuepjsrINSbbqbni4Xw1shTFiKhl0v58lEtNpwJTpSKJJ3fondu5Q==", "requires": { "base64-arraybuffer": "0.1.4", "component-emitter": "~1.3.0", - "debug": "~4.1.0", + "debug": "~4.3.1", "engine.io-parser": "~4.0.1", "has-cors": "1.1.0", "parseqs": "0.0.6", "parseuri": "0.0.6", - "ws": "~7.2.1", + "ws": "~7.4.2", "xmlhttprequest-ssl": "~1.5.4", "yeast": "0.1.2" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://verdaccio.lossless.one/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - }, - "ws": { - "version": "7.2.5", - "resolved": "https://verdaccio.lossless.one/ws/-/ws-7.2.5.tgz", - "integrity": "sha512-C34cIU4+DB2vMyAbmEKossWq2ZQDr6QEyuuCzWrM9zfw1sGc0mYiJ0UnG9zzNykt49C2Fi34hvr2vssFQRS6EA==" - } } }, "engine.io-parser": { @@ -5258,9 +5246,9 @@ "dev": true }, "fast-xml-parser": { - "version": "3.17.5", - "resolved": "https://verdaccio.lossless.one/fast-xml-parser/-/fast-xml-parser-3.17.5.tgz", - "integrity": "sha512-lEvThd1Xq+CCylf1n+05bUZCDZjTufaaaqpxM3JZ+4iDqtlG+d/oKgtMmg9GEMOuzBgUoalIzFOaClht9YiGJQ==" + "version": "3.17.6", + "resolved": "https://verdaccio.lossless.one/fast-xml-parser/-/fast-xml-parser-3.17.6.tgz", + "integrity": "sha512-40WHI/5d2MOzf1sD2bSaTXlPn1lueJLAX6j1xH5dSAr6tNeut8B9ktEL6sjAK9yVON4uNj9//axOdBJUuruCzw==" }, "fastparse": { "version": "1.1.2", @@ -5278,9 +5266,9 @@ } }, "feed": { - "version": "4.2.1", - "resolved": "https://verdaccio.lossless.one/feed/-/feed-4.2.1.tgz", - "integrity": "sha512-l28KKcK1J/u3iq5dRDmmoB2p7dtBfACC2NqJh4dI2kFptxH0asfjmOfcxqh5Sv8suAlVa73gZJ4REY5RrafVvg==", + "version": "4.2.2", + "resolved": "https://verdaccio.lossless.one/feed/-/feed-4.2.2.tgz", + "integrity": "sha512-u5/sxGfiMfZNtJ3OvQpXcvotFpYkL0n9u9mM2vkui2nGo8b4wvDkJ8gAkYqbA8QpGyFCv3RK0Z+Iv+9veCS9bQ==", "requires": { "xml-js": "^1.6.11" } @@ -6260,9 +6248,9 @@ "dev": true }, "helmet": { - "version": "4.2.0", - "resolved": "https://verdaccio.lossless.one/helmet/-/helmet-4.2.0.tgz", - "integrity": "sha512-aoiSxXMd0ks1ojYpSCFoCRzgv4rY/uB9jKStaw8PkXwsdLYa/Gq+Nc5l0soH0cwBIsLAlujPnx4HLQs+LaXCrQ==" + "version": "4.4.1", + "resolved": "https://verdaccio.lossless.one/helmet/-/helmet-4.4.1.tgz", + "integrity": "sha512-G8tp0wUMI7i8wkMk2xLcEvESg5PiCitFMYgGRc/PwULB0RVhTP5GFdxOwvJwp9XVha8CuS8mnhmE8I/8dx/pbw==" }, "hex-color-regex": { "version": "1.1.0", @@ -9816,79 +9804,48 @@ } }, "socket.io": { - "version": "3.0.4", - "resolved": "https://verdaccio.lossless.one/socket.io/-/socket.io-3.0.4.tgz", - "integrity": "sha512-Vj1jUoO75WGc9txWd311ZJJqS9Dr8QtNJJ7gk2r7dcM/yGe9sit7qOijQl3GAwhpBOz/W8CwkD7R6yob07nLbA==", + "version": "3.1.0", + "resolved": "https://verdaccio.lossless.one/socket.io/-/socket.io-3.1.0.tgz", + "integrity": "sha512-Aqg2dlRh6xSJvRYK31ksG65q4kmBOqU4g+1ukhPcoT6wNGYoIwSYPlCPuRwOO9pgLUajojGFztl6+V2opmKcww==", "requires": { "@types/cookie": "^0.4.0", "@types/cors": "^2.8.8", - "@types/node": "^14.14.7", + "@types/node": "^14.14.10", "accepts": "~1.3.4", "base64id": "~2.0.0", - "debug": "~4.1.0", - "engine.io": "~4.0.0", - "socket.io-adapter": "~2.0.3", - "socket.io-parser": "~4.0.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://verdaccio.lossless.one/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - } + "debug": "~4.3.1", + "engine.io": "~4.1.0", + "socket.io-adapter": "~2.1.0", + "socket.io-parser": "~4.0.3" } }, "socket.io-adapter": { - "version": "2.0.3", - "resolved": "https://verdaccio.lossless.one/socket.io-adapter/-/socket.io-adapter-2.0.3.tgz", - "integrity": "sha512-2wo4EXgxOGSFueqvHAdnmi5JLZzWqMArjuP4nqC26AtLh5PoCPsaRbRdah2xhcwTAMooZfjYiNVNkkmmSMaxOQ==" + "version": "2.1.0", + "resolved": "https://verdaccio.lossless.one/socket.io-adapter/-/socket.io-adapter-2.1.0.tgz", + "integrity": "sha512-+vDov/aTsLjViYTwS9fPy5pEtTkrbEKsw2M+oVSoFGw6OD1IpvlV1VPhUzNbofCQ8oyMbdYJqDtGdmHQK6TdPg==" }, "socket.io-client": { - "version": "3.0.4", - "resolved": "https://verdaccio.lossless.one/socket.io-client/-/socket.io-client-3.0.4.tgz", - "integrity": "sha512-qMvBuS+W9JIN2mkfAWDCxuIt+jpIKDf8C0604zEqx1JrPaPSS6cN0F3B2GYWC83TqBeVJXW66GFxWV3KD88n0Q==", + "version": "3.1.0", + "resolved": "https://verdaccio.lossless.one/socket.io-client/-/socket.io-client-3.1.0.tgz", + "integrity": "sha512-T4qPOL80KnoBwkdR70zMpiR6aH6zv3ZqLNriofHqsO9wvQllNTOez0mpV4GdVqo1Y55Z+h8YOlBo7c8pOxDlHw==", "requires": { "@types/component-emitter": "^1.2.10", - "backo2": "1.0.2", - "component-bind": "1.0.0", + "backo2": "~1.0.2", "component-emitter": "~1.3.0", - "debug": "~4.1.0", - "engine.io-client": "~4.0.0", + "debug": "~4.3.1", + "engine.io-client": "~4.1.0", "parseuri": "0.0.6", - "socket.io-parser": "~4.0.1" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://verdaccio.lossless.one/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - } + "socket.io-parser": "~4.0.4" } }, "socket.io-parser": { - "version": "4.0.2", - "resolved": "https://verdaccio.lossless.one/socket.io-parser/-/socket.io-parser-4.0.2.tgz", - "integrity": "sha512-Bs3IYHDivwf+bAAuW/8xwJgIiBNtlvnjYRc4PbXgniLmcP1BrakBoq/QhO24rgtgW7VZ7uAaswRGxutUnlAK7g==", + "version": "4.0.4", + "resolved": "https://verdaccio.lossless.one/socket.io-parser/-/socket.io-parser-4.0.4.tgz", + "integrity": "sha512-t+b0SS+IxG7Rxzda2EVvyBZbvFPBCjJoyHuE0P//7OAsN23GItzDRdWa6ALxZI/8R5ygK7jAR6t028/z+7295g==", "requires": { "@types/component-emitter": "^1.2.10", "component-emitter": "~1.3.0", - "debug": "~4.1.0" - }, - "dependencies": { - "debug": { - "version": "4.1.1", - "resolved": "https://verdaccio.lossless.one/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "requires": { - "ms": "^2.1.1" - } - } + "debug": "~4.3.1" } }, "source-map": { @@ -11028,9 +10985,9 @@ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "ws": { - "version": "7.4.1", - "resolved": "https://verdaccio.lossless.one/ws/-/ws-7.4.1.tgz", - "integrity": "sha512-pTsP8UAfhy3sk1lSk/O/s4tjD0CRwvMnzvwr4OKGX7ZvqZtUyx4KIJB5JWbkykPoc55tixMGgTNoh3k4FkNGFQ==" + "version": "7.4.2", + "resolved": "https://verdaccio.lossless.one/ws/-/ws-7.4.2.tgz", + "integrity": "sha512-T4tewALS3+qsrpGI/8dqNMLIVdq/g/85U98HPMa6F0m6xTbvhXU6RCQLqPH3+SlomNV/LdY6RXEbBpMH6EOJnA==" }, "xml-js": { "version": "1.6.11", diff --git a/package.json b/package.json index 8b15da2..6e5ba7d 100644 --- a/package.json +++ b/package.json @@ -24,8 +24,9 @@ "@apiglobal/typedrequest": "^1.0.56", "@apiglobal/typedrequest-interfaces": "^1.0.15", "@pushrocks/isohash": "^1.0.2", - "@pushrocks/smartsocket": "^1.2.0", - "@pushrocks/smartstring": "^3.0.23" + "@pushrocks/smartexpress": "^3.0.100", + "@pushrocks/smartsocket": "^1.2.1", + "@pushrocks/smartstring": "^3.0.24" }, "browserslist": [ "last 1 chrome versions" diff --git a/ts/typedsocket.classes.typedsocket.ts b/ts/typedsocket.classes.typedsocket.ts index f5ce66e..e848297 100644 --- a/ts/typedsocket.classes.typedsocket.ts +++ b/ts/typedsocket.classes.typedsocket.ts @@ -1,4 +1,5 @@ import * as plugins from './typedsocket.plugins'; +import type * as smartexpress from '@pushrocks/smartexpress'; const publicRoleName = 'publicRoleName'; const publicRolePass = 'publicRolePass'; @@ -11,7 +12,7 @@ export class TypedSocket { */ public static async createServer( typedrouterArg: plugins.typedrequest.TypedRouter, - smartexpressServerArg?: any + smartexpressServerArg?: smartexpress.Server ): Promise { const smartsocketServer = new plugins.smartsocket.Smartsocket({ port: 3000, @@ -58,7 +59,9 @@ export class TypedSocket { }, smartsocketServer ); - + if (smartexpressServerArg && smartexpressServerArg.serverStatus !== 'running') { + await smartexpressServerArg.start() + } await smartsocketServer.start(); return typedsocket;