diff --git a/Dockerfile b/Dockerfile index 2cb28b09..e749edcd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM node:16.20.1-alpine as base WORKDIR /app RUN apk --no-cache update && \ apk --no-cache upgrade && \ - apk add --no-cache --virtual .build-dependencies python3 make g++ && \ + apk add --no-cache --virtual .build-dependencies python3 make g++ git && \ mkdir -p node_modules && chown -R node:node . diff --git a/lib/handlers/userDataHandler.js b/lib/handlers/userDataHandler.js index 173d35de..5c86f1a9 100644 --- a/lib/handlers/userDataHandler.js +++ b/lib/handlers/userDataHandler.js @@ -76,7 +76,7 @@ export default function userDataHandler() { .pipe(res); } else { res.attachment('TidepoolExport.xlsx'); - writeStream = dataTools.xlsxStreamWriter(res, processorConfig); + writeStream = await dataTools.xlsxStreamWriter(res, processorConfig); dataResponse.data .pipe(dataTools.jsonParser()) diff --git a/package.json b/package.json index f06d92f3..dfb4de08 100644 --- a/package.json +++ b/package.json @@ -19,7 +19,7 @@ "private": false, "dependencies": { "@godaddy/terminus": "4.12.1", - "@tidepool/data-tools": "2.4.1", + "@tidepool/data-tools": "https://github.com/tidepool-org/node-data-tools.git#tk/use-exceljs-fork", "@tidepool/viz": "1.37.0", "axios": "1.4.0", "blob-stream": "0.1.3", diff --git a/yarn.lock b/yarn.lock index 61e428b5..b6e6877f 100644 --- a/yarn.lock +++ b/yarn.lock @@ -416,16 +416,15 @@ dependencies: tslib "^2.4.0" -"@tidepool/data-tools@2.4.1": +"@tidepool/data-tools@https://github.com/tidepool-org/node-data-tools.git#tk/use-exceljs-fork": version "2.4.1" - resolved "https://registry.yarnpkg.com/@tidepool/data-tools/-/data-tools-2.4.1.tgz#ce0d6e4f8bebf80e5e3193a882b152c9069e3050" - integrity sha512-k5IxoeR3cLnmq6LoTGlG7Lhel6QQlxYWp0woqh9Dai8P9O7CKp6pTbArDvo2UHqNRoxl7Esvz020kw3i9rd9ow== + resolved "https://github.com/tidepool-org/node-data-tools.git#de315584e7319696077f71fa1824701cb4be23ec" dependencies: + "@zlooun/exceljs" "1.0.3" JSONStream "1.3.5" commander "4.1.1" csv-string "3.1.7" event-stream "3.3.4" - exceljs "4.3.0" flat "5.0.0" lodash "4.17.15" mkdirp "1.0.3" @@ -526,6 +525,21 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== +"@zlooun/exceljs@1.0.3": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@zlooun/exceljs/-/exceljs-1.0.3.tgz#5ce9859304f6082f2482a8fa2dd03bb6b37d22f6" + integrity sha512-0bOI9DY9D/ybm38X05t+MvQAw26QxWN4xTmlZ6ritl9mfG0jec2Xh71HsZFvzghaYwlpIRpZJ0hTYoElDvKAvQ== + dependencies: + archiver "^5.0.0" + dayjs "^1.8.34" + fast-csv "^4.3.1" + jszip "^3.7.1" + readable-stream "^3.6.0" + saxes "^5.0.1" + tmp "^0.2.0" + unzipper "^0.10.11" + uuid "^8.3.0" + JSONStream@1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" @@ -2017,21 +2031,6 @@ event-stream@3.3.4: stream-combiner "~0.0.4" through "~2.3.1" -exceljs@4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/exceljs/-/exceljs-4.3.0.tgz#939bc0d4c59c200acadb7051be34d25c109853c4" - integrity sha512-hTAeo5b5TPvf8Z02I2sKIT4kSfCnOO2bCxYX8ABqODCdAjppI3gI9VYiGCQQYVcBaBSKlFDMKlAQRqC+kV9O8w== - dependencies: - archiver "^5.0.0" - dayjs "^1.8.34" - fast-csv "^4.3.1" - jszip "^3.5.0" - readable-stream "^3.6.0" - saxes "^5.0.1" - tmp "^0.2.0" - unzipper "^0.10.11" - uuid "^8.3.0" - express@4.18.2: version "4.18.2" resolved "https://registry.yarnpkg.com/express/-/express-4.18.2.tgz#3fabe08296e930c796c19e3c516979386ba9fd59" @@ -2892,7 +2891,7 @@ jsonparse@^1.2.0: object.assign "^4.1.4" object.values "^1.1.6" -jszip@^3.5.0: +jszip@^3.7.1: version "3.10.1" resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.10.1.tgz#34aee70eb18ea1faec2f589208a157d1feb091c2" integrity sha512-xXDvecyTpGLrqFrvkrUSoxxfJI5AH7U8zxxtVclpsUtMCq4JQ290LY8AW5c7Ggnr/Y/oK+bQMbqK2qmtk3pN4g==