diff --git a/Dockerfile b/Dockerfile index af7f6c73147bb325999ef4a2013ab2933d34967b..ad6b6cfdbfd15781967b83efb3ad840a9f082195 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,21 +1,16 @@ -FROM node:8-alpine +FROM node:10-slim # add basic libs -RUN apk --no-cache add \ +RUN apt-get update && apt-get install -y \ bash \ g++ \ + gcc \ ca-certificates \ - lz4-dev \ - musl-dev \ - cyrus-sasl-dev \ - openssl-dev \ make \ python \ bash \ git -RUN apk add --no-cache --virtual .build-deps gcc zlib-dev libc-dev bsd-compat-headers py-setuptools libexecinfo libexecinfo-dev - # Create app directory RUN mkdir -p /usr/local/app @@ -33,4 +28,4 @@ RUN npm install RUN npm run build # run app -CMD node dist/index.js \ No newline at end of file +CMD node dist/index.js diff --git a/package-lock.json b/package-lock.json index 1a1e49b9e76d80b687dffa878e4adf4e5a343e67..26b984568fbd8fd2a6286ed0fb14fe396728c961 100644 --- a/package-lock.json +++ b/package-lock.json @@ -699,6 +699,11 @@ "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", "optional": true }, + "jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==" + }, "json-schema": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.2.3.tgz", diff --git a/package.json b/package.json index 6c7c0f6af2ac07297cac1684eeb6792f3a8d706a..673e6c8c3ed03ae413bd713a8df57f56fcd15903 100644 --- a/package.json +++ b/package.json @@ -8,6 +8,7 @@ "@types/winston": "^2.3.9", "concurrently": "^3.5.1", "geolinker-common": "git+https://gitlab+deploy-token-1:vnsdCm_t84QGVA2U4kw4@source.dodis.ch/histhub/geolinker-common.git", + "jsesc": "^2.5.2", "nconf": "^0.10.0", "neo4j-driver": "^1.6.1", "request": "^2.87.0", diff --git a/src/neo4j-linker.ts b/src/neo4j-linker.ts index 8d333a2aff40e1ba3022e92d8dc2e63775514f28..b6ad135f5bb08c2dfcb6afbb95bdc660fc08f6f6 100644 --- a/src/neo4j-linker.ts +++ b/src/neo4j-linker.ts @@ -1,5 +1,5 @@ import {v1 as neo4j} from 'neo4j-driver'; - +import * as jsesc from 'jsesc'; export class Linker { private nconf; private logger; @@ -59,6 +59,14 @@ export class Linker { }, 1000); }); }); + } + /** + * There is no build in function to escape + * https://github.com/neo4j/neo4j-javascript-driver/issues/398 + * @param string + */ + public escape(data: string) { + return jsesc(data); } }