Files
worldmonitor/scripts/package.json
Elie Habib 9a0f265db3 chore(scripts): replace xlsx with exceljs (#2575)
* chore(scripts): replace xlsx with exceljs

xlsx has known vulnerabilities with no patched version available.
exceljs is actively maintained (~6M weekly downloads) and covers
the same read-only parsing needs in seed-fuel-prices.mjs and
backfill-fuel-prices-prev.mjs.

* fix(scripts): handle ExcelJS Date cells and add Czechia mapping

ExcelJS returns Date objects for date cells (unlike xlsx which returned
raw strings). Convert to DD/MM/YYYY format to preserve downstream regex
parsing. Also add 'Czechia' alias to EU country map since the EU XLSX
now uses the short form instead of 'Czech Republic' (27/27 countries).

* fix(scripts): handle ExcelJS rich-text cell values

ExcelJS returns {richText: [{text: '...'}]} for formatted cells.
String() on these produces '[object Object]', breaking header
detection regex. Extract plain text from rich-text arrays.
2026-03-31 13:09:21 +04:00

27 lines
663 B
JSON

{
"name": "worldmonitor-railway-relay",
"version": "1.1.1",
"description": "Railway relay: AIS/OpenSky + RSS proxy + Telegram OSINT poller",
"main": "ais-relay.cjs",
"scripts": {
"start": "node ais-relay.cjs",
"notification-relay": "node notification-relay.cjs",
"telegram:session": "node telegram/session-auth.mjs"
},
"dependencies": {
"@anthropic-ai/sdk": "^0.79.0",
"@aws-sdk/client-s3": "^3.1009.0",
"convex": "^1",
"exceljs": "^4.4.0",
"h3-js": "^4.2.1",
"resend": "^4",
"sax": "^1.6.0",
"telegram": "^2.22.2",
"undici": "^7.0.0",
"ws": "^8.18.0"
},
"engines": {
"node": ">=20"
}
}