Security & Compliance Updates: - Add MQTT_EXPLORER_HIDE_PUBLISH_PANE env var to hide publish pane in browser mode - Fix critical XSS vulnerabilities in UpdateNotifier and CodeDiff components with DOMPurify - Implement secure credential handling (memory-based instead of sessionStorage) - Add comprehensive audit logging system for security events - Fix GitHub API token exposure by using Authorization header - Enable certificate validation for TLS connections by default - Update dependencies to fix 26+ security vulnerabilities - Add privacy compliance notices and GDPR disclosures - Implement secure session management with auto-clearing credentials Features: - Conditional publish pane visibility in desktop and mobile views - Privacy policy and data processing transparency - Enhanced audit trail for compliance Breaking Changes: - Updated multiple dependencies for security - Changed credential storage mechanism - Added DOMPurify dependency for XSS protection Fixes #security-audit-2026
112 lines
3.2 KiB
JSON
112 lines
3.2 KiB
JSON
{
|
|
"name": "mqtt-explorer-app",
|
|
"version": "1.0.0",
|
|
"description": "",
|
|
"main": "index.js",
|
|
"scripts": {
|
|
"build": "webpack --mode production",
|
|
"dev": "node_modules/.bin/webpack-dev-server --mode development --progress",
|
|
"test": "mocha --require tsx --require source-map-support/register --recursive 'src/*/**/*.spec.{ts,tsx}'",
|
|
"mochatest": "mocha --require tsx --require source-map-support/register --recursive 'src/*/**/*.spec.{ts,tsx}'"
|
|
},
|
|
"engines": {
|
|
"node": ">=20"
|
|
},
|
|
"author": "",
|
|
"license": "CC-BY-SA-4.0",
|
|
"dependencies": {
|
|
"@emotion/react": "11.14.0",
|
|
"@emotion/styled": "11.14.1",
|
|
"@mui/icons-material": "7.3.6",
|
|
"@mui/lab": "7.0.1-beta.20",
|
|
"@mui/material": "7.3.6",
|
|
"@mui/styles": "6.4.8",
|
|
"@react-spring/web": "9.7.5",
|
|
"@types/dompurify": "^3.0.5",
|
|
"@types/react-transition-group": "4.4.11",
|
|
"@visx/axis": "3.10.1",
|
|
"@visx/grid": "3.5.0",
|
|
"@visx/tooltip": "3.3.0",
|
|
"@visx/xychart": "3.10.2",
|
|
"ace-builds": "1.4.11",
|
|
"axios": "^1.16.0",
|
|
"compare-versions": "6.1.1",
|
|
"copy-text-to-clipboard": "3.2.0",
|
|
"d3": "7.9.0",
|
|
"d3-shape": "3.2.0",
|
|
"diff": "8.0.3",
|
|
"dompurify": "^3.4.2",
|
|
"dot-prop": "5.3.0",
|
|
"events": "3.3.0",
|
|
"get-value": "3.0.1",
|
|
"immutable": "^4.3.8",
|
|
"in-viewport": "3.6.0",
|
|
"js-base64": "3.7.8",
|
|
"json-to-ast": "2.1.0",
|
|
"lodash.debounce": "4.0.8",
|
|
"lodash.throttle": "4.1.1",
|
|
"moving-average": "1.0.0",
|
|
"number-abbreviate": "2.0.0",
|
|
"os-browserify": "0.3.0",
|
|
"parse-duration": "^2.1.6",
|
|
"path-browserify": "1.0.1",
|
|
"prismjs": "^1.30.0",
|
|
"react": "19.2.3",
|
|
"react-ace": "14.0.1",
|
|
"react-dom": "19.2.3",
|
|
"react-redux": "9.2.0",
|
|
"react-resize-detector": "11.0.1",
|
|
"react-split-pane": "0.1.92",
|
|
"react-transition-group": "4.4.5",
|
|
"redux": "5.0.1",
|
|
"redux-batched-actions": "0.5.0",
|
|
"redux-thunk": "3.1.0",
|
|
"sha1": "1.1.1",
|
|
"socket.io-client": "4.8.1",
|
|
"url": "0.11.4",
|
|
"uuid": "^11.1.1"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/runtime": "7.28.4",
|
|
"@reduxjs/toolkit": "2.5.0",
|
|
"@testing-library/dom": "10.4.0",
|
|
"@testing-library/react": "16.1.0",
|
|
"@testing-library/user-event": "14.5.2",
|
|
"@types/d3": "7.4.3",
|
|
"@types/diff": "7.0.0",
|
|
"@types/get-value": "3.0.5",
|
|
"@types/lodash.debounce": "4.0.9",
|
|
"@types/node": "25.0.3",
|
|
"@types/prismjs": "1.26.5",
|
|
"@types/react": "19.2.7",
|
|
"@types/react-dom": "19.2.3",
|
|
"@types/react-redux": "7.1.34",
|
|
"@types/sha1": "1.1.1",
|
|
"@types/socket.io-client": "3.0.0",
|
|
"@types/uuid": "11.0.0",
|
|
"@types/vis": "4.21.24",
|
|
"chai": "4.5.0",
|
|
"cross-env": "7.0.3",
|
|
"css-loader": "7.1.2",
|
|
"file-loader": "6.2.0",
|
|
"html-webpack-plugin": "5.6.3",
|
|
"jsdom": "25.0.1",
|
|
"jsdom-global": "3.0.2",
|
|
"lodash": "^4.18.1",
|
|
"mocha": "^11.7.5",
|
|
"moment": "2.30.1",
|
|
"node-loader": "2.0.0",
|
|
"source-map-loader": "5.0.0",
|
|
"style-loader": "4.0.0",
|
|
"ts-loader": "9.5.1",
|
|
"typescript": "5.9.3",
|
|
"webpack": "^5.106.2",
|
|
"webpack-bundle-analyzer": "4.10.2",
|
|
"webpack-cli": "6.0.1",
|
|
"webpack-dev-server": "^5.2.3"
|
|
},
|
|
"peerDependencies": {
|
|
"electron": "^39"
|
|
}
|
|
}
|