Compare commits

..

8 Commits

Author SHA1 Message Date
333ddb4d9c 1.1.31 2019-04-24 17:10:52 +02:00
126f020bf8 fix(core): update 2019-04-24 17:10:51 +02:00
7677b1bb48 1.1.30 2019-04-24 16:09:01 +02:00
114379c5b3 fix(core): update 2019-04-24 16:09:01 +02:00
79ae7d2039 1.1.29 2019-04-24 15:47:29 +02:00
d2cb6a3045 fix(core): update 2019-04-24 15:47:28 +02:00
963619b2ed 1.1.28 2019-04-23 17:28:46 +02:00
976abaaed7 fix(core): update 2019-04-23 17:28:46 +02:00
8 changed files with 1325 additions and 207 deletions

View File

@ -34,31 +34,6 @@ snyk:
- docker - docker
- notpriv - notpriv
sast:
stage: security
image: registry.gitlab.com/hosttoday/ht-docker-dbase:npmci
variables:
DOCKER_DRIVER: overlay2
allow_failure: true
services:
- docker:stable-dind
script:
- npmci npm prepare
- npmci npm install
- npmci command npm run build
- export SP_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/')
- docker run
--env SAST_CONFIDENCE_LEVEL="${SAST_CONFIDENCE_LEVEL:-3}"
--volume "$PWD:/code"
--volume /var/run/docker.sock:/var/run/docker.sock
"registry.gitlab.com/gitlab-org/security-products/sast:$SP_VERSION" /app/bin/run /code
artifacts:
reports:
sast: gl-sast-report.json
tags:
- docker
- priv
# ==================== # ====================
# test stage # test stage
# ==================== # ====================

View File

@ -14,7 +14,7 @@ easy and secure websocket communication
[![Known Vulnerabilities](https://snyk.io/test/npm/@pushrocks/smartsocket/badge.svg)](https://snyk.io/test/npm/@pushrocks/smartsocket) [![Known Vulnerabilities](https://snyk.io/test/npm/@pushrocks/smartsocket/badge.svg)](https://snyk.io/test/npm/@pushrocks/smartsocket)
[![TypeScript](https://img.shields.io/badge/TypeScript->=%203.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/) [![TypeScript](https://img.shields.io/badge/TypeScript->=%203.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/)
[![node](https://img.shields.io/badge/node->=%2010.x.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/) [![node](https://img.shields.io/badge/node->=%2010.x.x-blue.svg)](https://nodejs.org/dist/latest-v10.x/docs/api/)
[![JavaScript Style Guide](https://img.shields.io/badge/code%20style-standard-brightgreen.svg)](http://standardjs.com/) [![JavaScript Style Guide](https://img.shields.io/badge/code%20style-prettier-ff69b4.svg)](https://prettier.io/)
## Usage ## Usage

View File

@ -14,4 +14,4 @@
"npmGlobalTools": [], "npmGlobalTools": [],
"npmAccessLevel": "public" "npmAccessLevel": "public"
} }
} }

1455
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
{ {
"name": "@pushrocks/smartsocket", "name": "@pushrocks/smartsocket",
"version": "1.1.27", "version": "1.1.31",
"description": "easy and secure websocket communication", "description": "easy and secure websocket communication",
"main": "dist/index.js", "main": "dist/index.js",
"typings": "dist/index.d.ts", "typings": "dist/index.d.ts",
@ -19,11 +19,12 @@
}, },
"homepage": "https://gitlab.com/pushrocks/smartsocket#README", "homepage": "https://gitlab.com/pushrocks/smartsocket#README",
"dependencies": { "dependencies": {
"@pushrocks/lik": "^3.0.4", "@pushrocks/lik": "^3.0.5",
"@pushrocks/smartdelay": "^2.0.2", "@pushrocks/smartdelay": "^2.0.3",
"@pushrocks/smartexpress": "^3.0.18",
"@pushrocks/smarthash": "^2.0.4", "@pushrocks/smarthash": "^2.0.4",
"@pushrocks/smartlog": "^2.0.16", "@pushrocks/smartlog": "^2.0.19",
"@pushrocks/smartpromise": "^2.0.5", "@pushrocks/smartpromise": "^3.0.2",
"@types/shortid": "0.0.29", "@types/shortid": "0.0.29",
"@types/socket.io": "^2.1.2", "@types/socket.io": "^2.1.2",
"@types/socket.io-client": "^1.4.32", "@types/socket.io-client": "^1.4.32",
@ -33,10 +34,10 @@
}, },
"devDependencies": { "devDependencies": {
"@gitzone/tsbuild": "^2.1.8", "@gitzone/tsbuild": "^2.1.8",
"@gitzone/tsrun": "^1.1.17", "@gitzone/tsrun": "^1.2.5",
"@gitzone/tstest": "^1.0.18", "@gitzone/tstest": "^1.0.20",
"@pushrocks/tapbundle": "^3.0.7", "@pushrocks/tapbundle": "^3.0.9",
"@types/node": "^10.12.19" "@types/node": "^11.13.7"
}, },
"private": false "private": false
} }

View File

@ -13,7 +13,7 @@ import { SocketServer } from './smartsocket.classes.socketserver';
import * as SocketIO from 'socket.io'; import * as SocketIO from 'socket.io';
export interface ISmartsocketConstructorOptions { export interface ISmartsocketConstructorOptions {
port: number; port?: number;
} }
export class Smartsocket { export class Smartsocket {
@ -29,7 +29,9 @@ export class Smartsocket {
} }
// tslint:disable-next-line:member-ordering // tslint:disable-next-line:member-ordering
public setExternalServer = this.socketServer.setExternalServer; public async setExternalServer (serverType: 'smartexpress', serverArg: any) {
await this.socketServer.setExternalServer(serverType, serverArg);
}
/** /**
* starts smartsocket * starts smartsocket

View File

@ -23,12 +23,9 @@ export class SocketServer {
* starts the server with another server * starts the server with another server
* also works with an express style server * also works with an express style server
*/ */
public async setExternalServer(serverType: 'express' | 'http', serverArg: any) { public async setExternalServer(serverType: 'smartexpress', serverArg: plugins.smartexpress.Server) {
if (serverType === 'http') { await serverArg.startedPromise;
this.httpServer = serverArg; this.httpServer = serverArg.httpServer;
} else if (serverType === 'express') {
this.expressServer = serverArg;
}
} }
/** /**
@ -37,14 +34,10 @@ export class SocketServer {
public getServerForSocketIo() { public getServerForSocketIo() {
if (this.httpServer) { if (this.httpServer) {
return this.httpServer; return this.httpServer;
} else if (this.expressServer) { } else {
return this.expressServer;
} else if (!this.httpServer && !this.expressServer) {
this.httpServer = new http.Server(); this.httpServer = new http.Server();
this.standaloneServer = true; this.standaloneServer = true;
return this.httpServer; return this.httpServer;
} else {
throw new Error('no server specified!');
} }
} }
@ -55,7 +48,12 @@ export class SocketServer {
const done = plugins.smartpromise.defer(); const done = plugins.smartpromise.defer();
// handle http servers // handle http servers
// in case an external server has been set "this.standaloneServer" should be false
if (this.httpServer && this.standaloneServer) { if (this.httpServer && this.standaloneServer) {
if (!this.smartsocket.options.port) {
console.log('there should be a port specifed for smartsocket!')
throw new Error('there should be a port specified for smartsocket')
}
this.httpServer.listen(this.smartsocket.options.port, () => { this.httpServer.listen(this.smartsocket.options.port, () => {
console.log(`Server started in standalone mode on ${this.smartsocket.options.port}`); console.log(`Server started in standalone mode on ${this.smartsocket.options.port}`);
done.resolve(); done.resolve();

View File

@ -2,9 +2,10 @@ import * as lik from '@pushrocks/lik';
import * as smartlog from '@pushrocks/smartlog'; import * as smartlog from '@pushrocks/smartlog';
import * as smarthash from '@pushrocks/smarthash'; import * as smarthash from '@pushrocks/smarthash';
import * as smartdelay from '@pushrocks/smartdelay'; import * as smartdelay from '@pushrocks/smartdelay';
import * as smartexpress from '@pushrocks/smartexpress';
import * as smartpromise from '@pushrocks/smartpromise'; import * as smartpromise from '@pushrocks/smartpromise';
import * as shortid from 'shortid'; import * as shortid from 'shortid';
import * as socketIo from 'socket.io'; import * as socketIo from 'socket.io';
import * as socketIoClient from 'socket.io-client'; import * as socketIoClient from 'socket.io-client';
export { lik, smartlog, smarthash, smartdelay, smartpromise, shortid, socketIo, socketIoClient }; export { lik, smartlog, smarthash, smartdelay, smartexpress, smartpromise, shortid, socketIo, socketIoClient };