From a699e9e722c33e6d2803401ca5cc933d7b56b668 Mon Sep 17 00:00:00 2001 From: Dave Christenson Date: Sun, 24 Aug 2025 08:08:45 -0700 Subject: [PATCH 1/3] Non JSON logs --- client/config-overrides.js | 5 +- client/package-lock.json | 150 +++++++++++++++++----- client/package.json | 5 +- client/public/plugins/parsejson/plugin.js | 8 +- client/src/components/JSONSpreadsheet.tsx | 1 + client/src/components/Request.tsx | 3 + client/src/store/JSONLogStore.ts | 14 +- package-lock.json | 3 +- package.json | 2 +- 9 files changed, 145 insertions(+), 46 deletions(-) diff --git a/client/config-overrides.js b/client/config-overrides.js index de146ab2..fb37cad1 100644 --- a/client/config-overrides.js +++ b/client/config-overrides.js @@ -6,7 +6,10 @@ module.exports = function override(config, env) { "react/jsx-dev-runtime": "react/jsx-dev-runtime.js", "react/jsx-runtime": "react/jsx-runtime.js" }, - fallback: { "assert": false } + fallback: { + "assert": false, + "util": require.resolve("util/") + } } } ] diff --git a/client/package-lock.json b/client/package-lock.json index a72067cc..83b1f230 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -27,7 +27,7 @@ "@types/socket.io-client": "^1.4.36", "bootstrap-css-only": "^4.4.1", "browserslist": "^4.21.4", - "caniuse-lite": "^1.0.30001442", + "fetch-to-curl": "^0.6.0", "file-saver": "^2.0.5", "http-proxy-middleware": "^1.1.0", "http-status-codes": "^2.3.0", @@ -49,6 +49,7 @@ "socket.io-client": "^4.0.1", "typescript": "^4.4.3", "use-file-picker": "^1.3.0", + "util": "^0.12.5", "web-vitals": "^1.0.1" }, "devDependencies": { @@ -59,7 +60,7 @@ "@types/file-saver": "^2.0.7", "@types/jshint": "^2.12.4", "@typescript-eslint/eslint-plugin": "^6.6.0", - "@typescript-eslint/parser": "^6.6.0", + "@typescript-eslint/parser": "^6.21.0", "eslint-config-standard": "^16.0.3", "eslint-plugin-import": "^2.24.2", "eslint-plugin-node": "^11.1.0", @@ -6594,6 +6595,33 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz", + "integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz", + "integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "get-intrinsic": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", @@ -6642,9 +6670,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001684", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001684.tgz", - "integrity": "sha512-G1LRwLIQjBQoyq0ZJGqGIJUXzJ8irpbjHLpVRXDvBEScFJ9b17sgK6vlx0GAJFE21okD7zXl08rRRUfq6HdoEQ==", + "version": "1.0.30001737", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001737.tgz", + "integrity": "sha512-BiloLiXtQNrY5UyF0+1nSJLXUENuhka2pzy2Fx5pGxqavdrxSCW4U6Pn/PoG3Efspi2frRbHpBV2XsrPE6EDlw==", "funding": [ { "type": "opencollective", @@ -7969,6 +7997,19 @@ "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz", "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==" }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/duplexer": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", @@ -8189,12 +8230,9 @@ "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==" }, "node_modules/es-define-property": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz", - "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", "engines": { "node": ">= 0.4" } @@ -8238,9 +8276,9 @@ "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==" }, "node_modules/es-object-atoms": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", - "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz", + "integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==", "dependencies": { "es-errors": "^1.3.0" }, @@ -9382,6 +9420,11 @@ "resolved": "https://registry.npmjs.org/fbjs-css-vars/-/fbjs-css-vars-1.0.2.tgz", "integrity": "sha512-b2XGFAFdWZWg0phtAWLHCk836A1Xann+I+Dgd3Gk64MHKZO44FfoD1KxyvbSh0qZsIoXQGGlVztIY+oitJPpRQ==" }, + "node_modules/fetch-to-curl": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/fetch-to-curl/-/fetch-to-curl-0.6.0.tgz", + "integrity": "sha512-Gsn0baHnENueQrtvKGikEkaAJhfQYDbSFnyZvI/qnwiZtdIwiuK6iJ0BAKzS3bEzpWyUr6SV9uB4H3HUwl/yZA==" + }, "node_modules/file-entry-cache": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", @@ -9873,15 +9916,20 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz", - "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz", + "integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==", "dependencies": { + "call-bind-apply-helpers": "^1.0.2", + "es-define-property": "^1.0.1", "es-errors": "^1.3.0", + "es-object-atoms": "^1.1.1", "function-bind": "^1.1.2", - "has-proto": "^1.0.1", - "has-symbols": "^1.0.3", - "hasown": "^2.0.0" + "get-proto": "^1.0.1", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" }, "engines": { "node": ">= 0.4" @@ -9903,6 +9951,18 @@ "node": ">=8.0.0" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -10064,12 +10124,9 @@ } }, "node_modules/gopd": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.1.0.tgz", - "integrity": "sha512-FQoVQnqcdk4hVM4JN1eromaun4iuS34oStkdlLENLdpULsuQcTyXj8w7ayhuUfPwEYZ1ZOooOTT6fdA9Vmx/RA==", - "dependencies": { - "get-intrinsic": "^1.2.4" - }, + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", "engines": { "node": ">= 0.4" }, @@ -10150,9 +10207,9 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", "engines": { "node": ">= 0.4" }, @@ -10580,6 +10637,21 @@ "node": ">= 10" } }, + "node_modules/is-arguments": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.2.0.tgz", + "integrity": "sha512-7bVbi0huj/wrIAOzb8U1aszg9kdi3KN/CyU19CTI7tAoZYEZoL9yCDXpbXN+uPsuWnP02cyug1gleqq+TU+YCA==", + "dependencies": { + "call-bound": "^1.0.2", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-array-buffer": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz", @@ -13788,6 +13860,14 @@ "tmpl": "1.0.5" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/mdn-data": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz", @@ -19613,6 +19693,18 @@ } } }, + "node_modules/util": { + "version": "0.12.5", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz", + "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==", + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "which-typed-array": "^1.1.2" + } + }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", diff --git a/client/package.json b/client/package.json index 24c6361f..db38c576 100644 --- a/client/package.json +++ b/client/package.json @@ -22,7 +22,7 @@ "@types/socket.io-client": "^1.4.36", "bootstrap-css-only": "^4.4.1", "browserslist": "^4.21.4", - "caniuse-lite": "^1.0.30001442", + "fetch-to-curl": "^0.6.0", "file-saver": "^2.0.5", "http-proxy-middleware": "^1.1.0", "http-status-codes": "^2.3.0", @@ -44,6 +44,7 @@ "socket.io-client": "^4.0.1", "typescript": "^4.4.3", "use-file-picker": "^1.3.0", + "util": "^0.12.5", "web-vitals": "^1.0.1" }, "scripts": { @@ -72,7 +73,7 @@ "@types/file-saver": "^2.0.7", "@types/jshint": "^2.12.4", "@typescript-eslint/eslint-plugin": "^6.6.0", - "@typescript-eslint/parser": "^6.6.0", + "@typescript-eslint/parser": "^6.21.0", "eslint-config-standard": "^16.0.3", "eslint-plugin-import": "^2.24.2", "eslint-plugin-node": "^11.1.0", diff --git a/client/public/plugins/parsejson/plugin.js b/client/public/plugins/parsejson/plugin.js index e41b733e..c4755a50 100644 --- a/client/public/plugins/parsejson/plugin.js +++ b/client/public/plugins/parsejson/plugin.js @@ -8,11 +8,11 @@ // appName is the pod name // function parseJSON(preJSONString, jsonObject) { - let level = 'info'; - let date = new Date(); + let level = ''; + let date = new Date(0); let category = ''; - let kind = 'Kind_is_not_defined'; - let message = "Message field not defined - click '?'"; + let kind = ''; + let message = ""; let additionalJSON = {}; const ignoreFields = []; const typeahead = []; diff --git a/client/src/components/JSONSpreadsheet.tsx b/client/src/components/JSONSpreadsheet.tsx index 16bbd21b..858fdb5e 100644 --- a/client/src/components/JSONSpreadsheet.tsx +++ b/client/src/components/JSONSpreadsheet.tsx @@ -4,6 +4,7 @@ import _ from 'lodash'; import { getJsonSpreadsheetLines as getJsonSpreadsheetRows } from '../store/JSONLogStore'; import { ListItemText, MenuItem, Select } from '@material-ui/core'; import GTag from '../GTag'; +import { JSX } from 'react/jsx-runtime'; export const JSONFieldButtonsHeight = 40; diff --git a/client/src/components/Request.tsx b/client/src/components/Request.tsx index e39cab46..eb7b7558 100644 --- a/client/src/components/Request.tsx +++ b/client/src/components/Request.tsx @@ -279,6 +279,9 @@ export function dateToHHMMSS(d: Date) { if (isNaN(d.getMonth()) || isNaN(d.getDate())) { return "Invalid Date"; } + if (isJsonLogTab() && d <= new Date(0)) { + return ''; + } if (isJsonLogTab() && jsonLogStore.isShowUtcChecked()) { return d.toISOString(); } else { diff --git a/client/src/store/JSONLogStore.ts b/client/src/store/JSONLogStore.ts index 0d704b6d..521ad030 100644 --- a/client/src/store/JSONLogStore.ts +++ b/client/src/store/JSONLogStore.ts @@ -101,11 +101,11 @@ export let defaultScript = // appName is the pod name // const extractDateLevelCategoryAppNameMessage = function (preJSONString, jsonObject) { - let level = 'info'; - let date = new Date(); + let level = ''; + let date = new Date(0); let category = ''; - let kind = 'Kind_is_not_defined'; - let message = "Message field not defined - click '?'"; + let kind = ''; + let message = ""; let additionalJSON = {}; const ignoreFields = []; const typeahead = []; @@ -270,7 +270,7 @@ export default class JSONLogStore { private rerenderEditor = 0; private scriptFunc = (_logEntry: string, _logentryJson: object) => { - return { date: new Date(), level: '', category: '', appName: '', kind: '', message: '', rawLine: '', additionalJSON: {}, ignoreFields: [], typeahead: [] }; + return { date: new Date(0), level: '', category: '', appName: '', kind: '', message: '', rawLine: '', additionalJSON: {}, ignoreFields: [], typeahead: [] }; }; private typeaheadMap: { [key: string]: boolean } = {}; @@ -491,7 +491,7 @@ export default class JSONLogStore { } }; - let logEntry: LogEntry = { date: new Date(), level: '', category: '', appName: '', kind: '', message: '', rawLine: '', additionalJSON: {}, ignoreFields: [], typeahead: [] }; + let logEntry: LogEntry = { date: new Date(0), level: '', category: '', appName: '', kind: '', message: '', rawLine: '', additionalJSON: {}, ignoreFields: [], typeahead: [] }; switch (method) { case 'auto': setAutoField('date'); @@ -545,7 +545,7 @@ export default class JSONLogStore { if (logEntry.date === undefined || !(logEntry.date instanceof Date) || logEntry.date.toString() === 'Invalid Date') { - logEntry.date = new Date(); + logEntry.date = new Date(0); for (const field in jsonData) { const value = jsonData[field]; if (typeof value === 'string' || typeof value === 'number') { diff --git a/package-lock.json b/package-lock.json index 9e82e1a3..d28a01e3 100644 --- a/package-lock.json +++ b/package-lock.json @@ -54,7 +54,7 @@ "@types/socket.io-client": "^1.4.36", "@types/sql-formatter": "^2.3.0", "@typescript-eslint/eslint-plugin": "^4.31.2", - "@typescript-eslint/parser": "^4.31.2", + "@typescript-eslint/parser": "^4.33.0", "ava": "^5.3.1", "eslint": "^7.32.0", "eslint-config-standard": "^16.0.3", @@ -759,7 +759,6 @@ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-4.33.0.tgz", "integrity": "sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "@typescript-eslint/scope-manager": "4.33.0", "@typescript-eslint/types": "4.33.0", diff --git a/package.json b/package.json index ca31fff4..c97c2456 100644 --- a/package.json +++ b/package.json @@ -89,7 +89,7 @@ "@types/socket.io-client": "^1.4.36", "@types/sql-formatter": "^2.3.0", "@typescript-eslint/eslint-plugin": "^4.31.2", - "@typescript-eslint/parser": "^4.31.2", + "@typescript-eslint/parser": "^4.33.0", "ava": "^5.3.1", "eslint": "^7.32.0", "eslint-config-standard": "^16.0.3", From 5467126a68b2bf5011a9771681c7d3e9c0bce78c Mon Sep 17 00:00:00 2001 From: Dave Christenson Date: Sun, 24 Aug 2025 08:09:04 -0700 Subject: [PATCH 2/3] 3.57.10 --- package-lock.json | 4 ++-- package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index d28a01e3..8d822536 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "allproxy", - "version": "3.57.9", + "version": "3.57.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "allproxy", - "version": "3.57.9", + "version": "3.57.10", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index c97c2456..ce1a81bb 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "allproxy", - "version": "3.57.9", + "version": "3.57.10", "description": "AllProxy: MITM HTTP Debugging Tool.", "keywords": [ "proxy", From 43c4b9a9e3c876b5c6829cdf99f47f526c21f07b Mon Sep 17 00:00:00 2001 From: Dave Christenson Date: Sun, 24 Aug 2025 08:50:38 -0700 Subject: [PATCH 3/3] update version --- client/package-lock.json | 4 ++-- client/package.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client/package-lock.json b/client/package-lock.json index 83b1f230..999fab4d 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -1,12 +1,12 @@ { "name": "client", - "version": "3.57.8", + "version": "3.57.10", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "client", - "version": "3.57.8", + "version": "3.57.10", "dependencies": { "@emotion/react": "^11.11.1", "@emotion/styled": "^11.11.0", diff --git a/client/package.json b/client/package.json index db38c576..43b4a5de 100644 --- a/client/package.json +++ b/client/package.json @@ -1,6 +1,6 @@ { "name": "client", - "version": "3.57.8", + "version": "3.57.10", "private": true, "dependencies": { "@emotion/react": "^11.11.1",