From 527a5ef16db5f2b8cc9e9a66c1be623fffd79df6 Mon Sep 17 00:00:00 2001 From: Dave Date: Wed, 27 May 2026 13:47:21 -0400 Subject: [PATCH] feature/IO-3702-ESPD-UI-AND-FIXES - Stage 5 (Lint) --- .eslintcache | 1 - deploy/set-artifact-name.js | 56 ++++++++------- deploy/test-artifact-naming-cross-platform.js | 72 +++++++++---------- eslint.config.mjs | 70 +++++++++--------- serverless/.gitignore | 2 + serverless/src/handlers/emsupload.ts | 4 +- src/main/decoder/decoder.ts | 34 ++++----- src/main/index.ts | 14 ++-- src/main/ipc/ipcMainConfig.types.ts | 4 +- src/main/ipc/ipcMainHandler.settings.ts | 6 +- src/main/util/toRenderer.ts | 4 +- src/main/util/trayStatus.ts | 26 +------ src/main/util/uppercaseObjectKeys.ts | 20 +++--- .../components/Settings/Settings.Config.tsx | 38 +++++----- src/renderer/src/util/notificationContext.tsx | 14 ++-- src/util/memUsage.ts | 19 ++--- 16 files changed, 188 insertions(+), 196 deletions(-) delete mode 100644 .eslintcache diff --git a/.eslintcache b/.eslintcache deleted file mode 100644 index 13bea5d..0000000 --- a/.eslintcache +++ /dev/null @@ -1 +0,0 @@ -[{"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\deploy\\set-artifact-name.js":"1","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\deploy\\test-artifact-naming-cross-platform.js":"2","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\electron.vite.config.ts":"3","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\eslint.config.mjs":"4","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\playwright.config.ts":"5","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\eslint.config.mjs":"6","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\emsupload.ts":"7","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\scrub.ts":"8","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\vehicleType.ts":"9","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\hasura.ts":"10","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\transformEstimate.ts":"11","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\vehicleTypes\\vehicleType.ts":"12","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\es-job-object.interface.ts":"13","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\index.ts":"14","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\raw-job-data.interface.ts":"15","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\env.d.ts":"16","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\db\\scrub-history-db.ts":"17","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad1.interface.ts":"18","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad1.ts":"19","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad2.interface.ts":"20","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad2.ts":"21","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-env.interface.ts":"22","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-env.ts":"23","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-lin.interface.ts":"24","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-lin.ts":"25","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfh.interface.ts":"26","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfh.ts":"27","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfl.interface.ts":"28","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfl.ts":"29","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfm.interface.ts":"30","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfm.ts":"31","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfo.interface.ts":"32","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfo.ts":"33","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfp.interface.ts":"34","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfp.ts":"35","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pft.interface.ts":"36","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pft.ts":"37","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-stl.interface.ts":"38","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-stl.ts":"39","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ttl.interface.ts":"40","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ttl.ts":"41","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-veh.interface.ts":"42","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-veh.ts":"43","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decoder-utils.ts":"44","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decoder.ts":"45","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\emsbackup.ts":"46","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\folder-scan.ts":"47","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\es-job-object.interface.ts":"48","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\es-transformer.ts":"49","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\estimate-scrubber.ts":"50","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\graphql\\graphql-client.ts":"51","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\graphql\\queries.ts":"52","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\index.test.ts":"53","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\index.ts":"54","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainConfig.ts":"55","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainConfig.types.ts":"56","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainHandler.scrubHistory.ts":"57","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainHandler.settings.ts":"58","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\store\\store.ts":"59","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\checkForAppUpdates.ts":"60","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\createDirectoryIfNotExist.ts":"61","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ad1-field-descriptors.ts":"62","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ad2-field-descriptors.ts":"63","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\env-field-descriptor.ts":"64","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\lin-field-descriptor.ts":"65","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\lin-field-descriptors.ts":"66","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfh-field-descriptors.ts":"67","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfl-field-descriptors.ts":"68","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfm-field-descriptors.ts":"69","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfo-field-descriptors.ts":"70","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfp-field-descriptors.ts":"71","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pft-field-descriptor.ts":"72","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\stl-field-descriptors.ts":"73","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ttl-field-descriptors.ts":"74","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\veh-field-descriptors.ts":"75","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-util.ts":"76","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ensureWindowOnScreen.ts":"77","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\notification.ts":"78","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\opCodes.ts":"79","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\setAppProgressBar.ts":"80","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\toRenderer.ts":"81","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\trayStatus.ts":"82","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\uppercaseObjectKeys.ts":"83","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\watcher\\watcher.ts":"84","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\preload\\index.d.ts":"85","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\preload\\index.ts":"86","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\App.tsx":"87","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\ErrorBoundaryFallback\\ErrorBoundaryFallback.tsx":"88","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Home\\Home.tsx":"89","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.Config.tsx":"90","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.tsx":"91","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.WatchedPaths.tsx":"92","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.Watcher.tsx":"93","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\UpdateAvailable\\UpdateAvailable.tsx":"94","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\env.d.ts":"95","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\main.tsx":"96","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\app.slice.ts":"97","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\redux-store.ts":"98","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\reduxHooks.ts":"99","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\countdownHook.ts":"100","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\firebase.ts":"101","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\graphql.client.ts":"102","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\i18n.ts":"103","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\ipcRendererHandler.ts":"104","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\notificationContext.tsx":"105","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\deepLowercaseKeys.ts":"106","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\errorTypeCheck.ts":"107","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\getMainWindow.ts":"108","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\memUsage.ts":"109","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\newWindow.ts":"110","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\typeCaster.ts":"111","C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\ynBoolConverter.ts":"112"},{"size":1853,"mtime":1779212066052,"results":"113","hashOfConfig":"114"},{"size":2160,"mtime":1779212066052,"results":"115","hashOfConfig":"114"},{"size":1217,"mtime":1779212066052,"results":"116","hashOfConfig":"117"},{"size":1464,"mtime":1779212066052,"results":"118","hashOfConfig":"114"},{"size":2296,"mtime":1779212066065,"results":"119","hashOfConfig":"117"},{"size":1401,"mtime":1779212066065,"results":"120","hashOfConfig":"114"},{"size":3616,"mtime":1779477407253,"results":"121","hashOfConfig":"117"},{"size":4529,"mtime":1779808548345,"results":"122","hashOfConfig":"117"},{"size":2000,"mtime":1779477455449,"results":"123","hashOfConfig":"117"},{"size":1621,"mtime":1779212066072,"results":"124","hashOfConfig":"117"},{"size":6214,"mtime":1779212066072,"results":"125","hashOfConfig":"117"},{"size":859,"mtime":1779212066072,"results":"126","hashOfConfig":"117"},{"size":4494,"mtime":1779212066072,"results":"127","hashOfConfig":"117"},{"size":87,"mtime":1779212066072,"results":"128","hashOfConfig":"117"},{"size":6487,"mtime":1779808555745,"results":"129","hashOfConfig":"117"},{"size":326,"mtime":1779212066072,"results":"130","hashOfConfig":"117"},{"size":11347,"mtime":1779809122730,"results":"131","hashOfConfig":"117"},{"size":3155,"mtime":1779212066072,"results":"132","hashOfConfig":"117"},{"size":6463,"mtime":1779212066072,"results":"133","hashOfConfig":"117"},{"size":717,"mtime":1779212066072,"results":"134","hashOfConfig":"117"},{"size":4352,"mtime":1779212066072,"results":"135","hashOfConfig":"117"},{"size":103,"mtime":1779212066072,"results":"136","hashOfConfig":"117"},{"size":2131,"mtime":1779212066072,"results":"137","hashOfConfig":"117"},{"size":1194,"mtime":1779212066080,"results":"138","hashOfConfig":"117"},{"size":3412,"mtime":1779808030720,"results":"139","hashOfConfig":"117"},{"size":370,"mtime":1779212066080,"results":"140","hashOfConfig":"117"},{"size":3062,"mtime":1779809211295,"results":"141","hashOfConfig":"117"},{"size":1302,"mtime":1779212066080,"results":"142","hashOfConfig":"117"},{"size":3660,"mtime":1779212066080,"results":"143","hashOfConfig":"117"},{"size":1133,"mtime":1779212066080,"results":"144","hashOfConfig":"117"},{"size":5042,"mtime":1779212066080,"results":"145","hashOfConfig":"117"},{"size":727,"mtime":1779212066080,"results":"146","hashOfConfig":"117"},{"size":2771,"mtime":1779212066080,"results":"147","hashOfConfig":"117"},{"size":822,"mtime":1779212066080,"results":"148","hashOfConfig":"117"},{"size":2935,"mtime":1779212066080,"results":"149","hashOfConfig":"117"},{"size":3254,"mtime":1779212066080,"results":"150","hashOfConfig":"117"},{"size":4670,"mtime":1779212066080,"results":"151","hashOfConfig":"117"},{"size":503,"mtime":1779212066080,"results":"152","hashOfConfig":"117"},{"size":2560,"mtime":1779807674504,"results":"153","hashOfConfig":"117"},{"size":484,"mtime":1779212066080,"results":"154","hashOfConfig":"117"},{"size":2437,"mtime":1779212066080,"results":"155","hashOfConfig":"117"},{"size":1475,"mtime":1779212066080,"results":"156","hashOfConfig":"117"},{"size":4542,"mtime":1779212066080,"results":"157","hashOfConfig":"117"},{"size":1082,"mtime":1779808030745,"results":"158","hashOfConfig":"117"},{"size":12864,"mtime":1779829966464,"results":"159","hashOfConfig":"117"},{"size":2587,"mtime":1779808030803,"results":"160","hashOfConfig":"117"},{"size":1751,"mtime":1779212066080,"results":"161","hashOfConfig":"117"},{"size":4362,"mtime":1779808030817,"results":"162","hashOfConfig":"117"},{"size":5663,"mtime":1779212066080,"results":"163","hashOfConfig":"117"},{"size":6578,"mtime":1779829638519,"results":"164","hashOfConfig":"117"},{"size":1538,"mtime":1779808030840,"results":"165","hashOfConfig":"117"},{"size":5961,"mtime":1779212066080,"results":"166","hashOfConfig":"117"},{"size":656,"mtime":1779808030848,"results":"167","hashOfConfig":"117"},{"size":22025,"mtime":1779827718747,"results":"168","hashOfConfig":"117"},{"size":3036,"mtime":1779808020288,"results":"169","hashOfConfig":"117"},{"size":1216,"mtime":1779212066089,"results":"170","hashOfConfig":"117"},{"size":1929,"mtime":1779212066089,"results":"171","hashOfConfig":"117"},{"size":2651,"mtime":1779212066089,"results":"172","hashOfConfig":"117"},{"size":758,"mtime":1779212066089,"results":"173","hashOfConfig":"117"},{"size":912,"mtime":1779827718687,"results":"174","hashOfConfig":"117"},{"size":700,"mtime":1779212066089,"results":"175","hashOfConfig":"117"},{"size":10393,"mtime":1779212066089,"results":"176","hashOfConfig":"117"},{"size":9410,"mtime":1779212066089,"results":"177","hashOfConfig":"117"},{"size":2313,"mtime":1779212066089,"results":"178","hashOfConfig":"117"},{"size":4052,"mtime":1779212066089,"results":"179","hashOfConfig":"117"},{"size":4056,"mtime":1779212066089,"results":"180","hashOfConfig":"117"},{"size":1803,"mtime":1779212066089,"results":"181","hashOfConfig":"117"},{"size":1526,"mtime":1779212066089,"results":"182","hashOfConfig":"117"},{"size":2498,"mtime":1779212066089,"results":"183","hashOfConfig":"117"},{"size":2412,"mtime":1779212066089,"results":"184","hashOfConfig":"117"},{"size":1530,"mtime":1779212066095,"results":"185","hashOfConfig":"117"},{"size":11199,"mtime":1779212066095,"results":"186","hashOfConfig":"117"},{"size":1670,"mtime":1779212066095,"results":"187","hashOfConfig":"117"},{"size":1352,"mtime":1779212066095,"results":"188","hashOfConfig":"117"},{"size":2865,"mtime":1779212066095,"results":"189","hashOfConfig":"117"},{"size":1289,"mtime":1779212066095,"results":"190","hashOfConfig":"117"},{"size":3402,"mtime":1779212066095,"results":"191","hashOfConfig":"117"},{"size":711,"mtime":1779808795937,"results":"192","hashOfConfig":"117"},{"size":2909,"mtime":1779212066096,"results":"193","hashOfConfig":"117"},{"size":252,"mtime":1779212066096,"results":"194","hashOfConfig":"117"},{"size":550,"mtime":1779212066097,"results":"195","hashOfConfig":"117"},{"size":2670,"mtime":1779212066097,"results":"196","hashOfConfig":"117"},{"size":727,"mtime":1779212066097,"results":"197","hashOfConfig":"117"},{"size":6764,"mtime":1779829123152,"results":"198","hashOfConfig":"117"},{"size":155,"mtime":1779212066097,"results":"199","hashOfConfig":"117"},{"size":985,"mtime":1779212066097,"results":"200","hashOfConfig":"117"},{"size":2653,"mtime":1779829706840,"results":"201","hashOfConfig":"117"},{"size":643,"mtime":1779476792836,"results":"202","hashOfConfig":"117"},{"size":29772,"mtime":1779830480514,"results":"203","hashOfConfig":"117"},{"size":2417,"mtime":1779817958822,"results":"204","hashOfConfig":"117"},{"size":758,"mtime":1779212066097,"results":"205","hashOfConfig":"117"},{"size":2180,"mtime":1779476639617,"results":"206","hashOfConfig":"117"},{"size":4042,"mtime":1779807540273,"results":"207","hashOfConfig":"117"},{"size":4132,"mtime":1779720788091,"results":"208","hashOfConfig":"117"},{"size":39,"mtime":1779212066097,"results":"209","hashOfConfig":"117"},{"size":680,"mtime":1779479212023,"results":"210","hashOfConfig":"117"},{"size":3597,"mtime":1779808347256,"results":"211","hashOfConfig":"117"},{"size":609,"mtime":1779212066097,"results":"212","hashOfConfig":"117"},{"size":487,"mtime":1779808096732,"results":"213","hashOfConfig":"117"},{"size":3291,"mtime":1779808485199,"results":"214","hashOfConfig":"117"},{"size":428,"mtime":1779212066097,"results":"215","hashOfConfig":"117"},{"size":517,"mtime":1779808808367,"results":"216","hashOfConfig":"117"},{"size":504,"mtime":1779212066104,"results":"217","hashOfConfig":"117"},{"size":2924,"mtime":1779818277061,"results":"218","hashOfConfig":"117"},{"size":1489,"mtime":1779212066104,"results":"219","hashOfConfig":"117"},{"size":938,"mtime":1779212066104,"results":"220","hashOfConfig":"117"},{"size":556,"mtime":1779212066104,"results":"221","hashOfConfig":"117"},{"size":165,"mtime":1779212066104,"results":"222","hashOfConfig":"117"},{"size":10052,"mtime":1779212066104,"results":"223","hashOfConfig":"117"},{"size":3668,"mtime":1779212066104,"results":"224","hashOfConfig":"117"},{"size":2063,"mtime":1779212066104,"results":"225","hashOfConfig":"117"},{"size":316,"mtime":1779212066104,"results":"226","hashOfConfig":"117"},{"filePath":"227","messages":"228","suppressedMessages":"229","errorCount":0,"fatalErrorCount":0,"warningCount":27,"fixableErrorCount":0,"fixableWarningCount":27,"source":null},"16dh17f",{"filePath":"230","messages":"231","suppressedMessages":"232","errorCount":0,"fatalErrorCount":0,"warningCount":36,"fixableErrorCount":0,"fixableWarningCount":36,"source":null},{"filePath":"233","messages":"234","suppressedMessages":"235","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"hyg6g",{"filePath":"236","messages":"237","suppressedMessages":"238","errorCount":0,"fatalErrorCount":0,"warningCount":39,"fixableErrorCount":0,"fixableWarningCount":39,"source":null},{"filePath":"239","messages":"240","suppressedMessages":"241","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"242","messages":"243","suppressedMessages":"244","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"245","messages":"246","suppressedMessages":"247","errorCount":1,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"248","messages":"249","suppressedMessages":"250","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"251","messages":"252","suppressedMessages":"253","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"254","messages":"255","suppressedMessages":"256","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"257","messages":"258","suppressedMessages":"259","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"260","messages":"261","suppressedMessages":"262","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"263","messages":"264","suppressedMessages":"265","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"266","messages":"267","suppressedMessages":"268","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"269","messages":"270","suppressedMessages":"271","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"272","messages":"273","suppressedMessages":"274","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"275","messages":"276","suppressedMessages":"277","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"278","messages":"279","suppressedMessages":"280","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"281","messages":"282","suppressedMessages":"283","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"284","messages":"285","suppressedMessages":"286","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"287","messages":"288","suppressedMessages":"289","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"290","messages":"291","suppressedMessages":"292","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"293","messages":"294","suppressedMessages":"295","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"296","messages":"297","suppressedMessages":"298","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"299","messages":"300","suppressedMessages":"301","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"302","messages":"303","suppressedMessages":"304","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"305","messages":"306","suppressedMessages":"307","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"308","messages":"309","suppressedMessages":"310","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"311","messages":"312","suppressedMessages":"313","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"314","messages":"315","suppressedMessages":"316","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"317","messages":"318","suppressedMessages":"319","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"320","messages":"321","suppressedMessages":"322","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"323","messages":"324","suppressedMessages":"325","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"326","messages":"327","suppressedMessages":"328","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"329","messages":"330","suppressedMessages":"331","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"332","messages":"333","suppressedMessages":"334","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"335","messages":"336","suppressedMessages":"337","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"338","messages":"339","suppressedMessages":"340","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"341","messages":"342","suppressedMessages":"343","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"344","messages":"345","suppressedMessages":"346","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"347","messages":"348","suppressedMessages":"349","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"350","messages":"351","suppressedMessages":"352","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"353","messages":"354","suppressedMessages":"355","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"356","messages":"357","suppressedMessages":"358","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"359","messages":"360","suppressedMessages":"361","errorCount":9,"fatalErrorCount":0,"warningCount":3,"fixableErrorCount":0,"fixableWarningCount":3,"source":null},{"filePath":"362","messages":"363","suppressedMessages":"364","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"365","messages":"366","suppressedMessages":"367","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"368","messages":"369","suppressedMessages":"370","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"371","messages":"372","suppressedMessages":"373","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"374","messages":"375","suppressedMessages":"376","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"377","messages":"378","suppressedMessages":"379","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"380","messages":"381","suppressedMessages":"382","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"383","messages":"384","suppressedMessages":"385","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"386","messages":"387","suppressedMessages":"388","errorCount":7,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"389","messages":"390","suppressedMessages":"391","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"392","messages":"393","suppressedMessages":"394","errorCount":2,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"395","messages":"396","suppressedMessages":"397","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"398","messages":"399","suppressedMessages":"400","errorCount":3,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"401","messages":"402","suppressedMessages":"403","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"404","messages":"405","suppressedMessages":"406","errorCount":0,"fatalErrorCount":0,"warningCount":6,"fixableErrorCount":0,"fixableWarningCount":6,"source":null},{"filePath":"407","messages":"408","suppressedMessages":"409","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"410","messages":"411","suppressedMessages":"412","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"413","messages":"414","suppressedMessages":"415","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"416","messages":"417","suppressedMessages":"418","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"419","messages":"420","suppressedMessages":"421","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"422","messages":"423","suppressedMessages":"424","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"425","messages":"426","suppressedMessages":"427","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"428","messages":"429","suppressedMessages":"430","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"431","messages":"432","suppressedMessages":"433","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"434","messages":"435","suppressedMessages":"436","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"437","messages":"438","suppressedMessages":"439","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"440","messages":"441","suppressedMessages":"442","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"443","messages":"444","suppressedMessages":"445","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"446","messages":"447","suppressedMessages":"448","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"449","messages":"450","suppressedMessages":"451","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"452","messages":"453","suppressedMessages":"454","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"455","messages":"456","suppressedMessages":"457","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"458","messages":"459","suppressedMessages":"460","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"461","messages":"462","suppressedMessages":"463","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"464","messages":"465","suppressedMessages":"466","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"467","messages":"468","suppressedMessages":"469","errorCount":1,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"470","messages":"471","suppressedMessages":"472","errorCount":1,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"473","messages":"474","suppressedMessages":"475","errorCount":3,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"476","messages":"477","suppressedMessages":"478","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"479","messages":"480","suppressedMessages":"481","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"482","messages":"483","suppressedMessages":"484","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"485","messages":"486","suppressedMessages":"487","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"488","messages":"489","suppressedMessages":"490","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"491","messages":"492","suppressedMessages":"493","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"494","messages":"495","suppressedMessages":"496","errorCount":3,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":0,"source":null},{"filePath":"497","messages":"498","suppressedMessages":"499","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"500","messages":"501","suppressedMessages":"502","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"503","messages":"504","suppressedMessages":"505","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"506","messages":"507","suppressedMessages":"508","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"509","messages":"510","suppressedMessages":"511","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"512","messages":"513","suppressedMessages":"514","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"515","messages":"516","suppressedMessages":"517","errorCount":0,"fatalErrorCount":0,"warningCount":1,"fixableErrorCount":0,"fixableWarningCount":1,"source":null},{"filePath":"518","messages":"519","suppressedMessages":"520","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"521","messages":"522","suppressedMessages":"523","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"524","messages":"525","suppressedMessages":"526","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"527","messages":"528","suppressedMessages":"529","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"530","messages":"531","suppressedMessages":"532","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"533","messages":"534","suppressedMessages":"535","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"536","messages":"537","suppressedMessages":"538","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"539","messages":"540","suppressedMessages":"541","errorCount":1,"fatalErrorCount":0,"warningCount":4,"fixableErrorCount":0,"fixableWarningCount":4,"source":null},{"filePath":"542","messages":"543","suppressedMessages":"544","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"545","messages":"546","suppressedMessages":"547","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"548","messages":"549","suppressedMessages":"550","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"551","messages":"552","suppressedMessages":"553","errorCount":6,"fatalErrorCount":0,"warningCount":2,"fixableErrorCount":0,"fixableWarningCount":2,"source":null},{"filePath":"554","messages":"555","suppressedMessages":"556","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"557","messages":"558","suppressedMessages":"559","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},{"filePath":"560","messages":"561","suppressedMessages":"562","errorCount":0,"fatalErrorCount":0,"warningCount":0,"fixableErrorCount":0,"fixableWarningCount":0},"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\deploy\\set-artifact-name.js",["563","564","565","566","567","568","569","570","571","572","573","574","575","576","577","578","579","580","581","582","583","584","585","586","587","588","589"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\deploy\\test-artifact-naming-cross-platform.js",["590","591","592","593","594","595","596","597","598","599","600","601","602","603","604","605","606","607","608","609","610","611","612","613","614","615","616","617","618","619","620","621","622","623","624","625"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\electron.vite.config.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\eslint.config.mjs",["626","627","628","629","630","631","632","633","634","635","636","637","638","639","640","641","642","643","644","645","646","647","648","649","650","651","652","653","654","655","656","657","658","659","660","661","662","663","664"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\playwright.config.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\eslint.config.mjs",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\emsupload.ts",["665"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\scrub.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\handlers\\vehicleType.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\hasura.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\transformEstimate.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\serverless\\src\\lib\\vehicleTypes\\vehicleType.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\es-job-object.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\index.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\shared\\types\\raw-job-data.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\env.d.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\db\\scrub-history-db.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad1.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad1.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad2.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ad2.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-env.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-env.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-lin.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-lin.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfh.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfh.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfl.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfl.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfm.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfm.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfo.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfo.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfp.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pfp.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pft.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-pft.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-stl.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-stl.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ttl.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-ttl.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-veh.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decode-veh.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decoder-utils.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\decoder.ts",["666","667","668","669","670","671","672","673","674","675","676","677"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\emsbackup.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\decoder\\folder-scan.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\es-job-object.interface.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\es-transformer.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\estimate-scrubber\\estimate-scrubber.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\graphql\\graphql-client.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\graphql\\queries.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\index.test.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\index.ts",["678","679","680","681","682","683","684"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainConfig.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainConfig.types.ts",["685","686"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainHandler.scrubHistory.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\ipc\\ipcMainHandler.settings.ts",["687","688","689"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\store\\store.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\checkForAppUpdates.ts",["690","691","692","693","694","695"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\createDirectoryIfNotExist.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ad1-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ad2-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\env-field-descriptor.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\lin-field-descriptor.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\lin-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfh-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfl-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfm-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfo-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pfp-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\pft-field-descriptor.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\stl-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\ttl-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-interface\\fielddescriptors\\veh-field-descriptors.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ems-util.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\ensureWindowOnScreen.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\notification.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\opCodes.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\setAppProgressBar.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\toRenderer.ts",["696","697"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\trayStatus.ts",["698"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\util\\uppercaseObjectKeys.ts",["699","700","701","702"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\main\\watcher\\watcher.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\preload\\index.d.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\preload\\index.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\App.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\ErrorBoundaryFallback\\ErrorBoundaryFallback.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Home\\Home.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.Config.tsx",["703","704","705","706"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.WatchedPaths.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\Settings\\Settings.Watcher.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\components\\UpdateAvailable\\UpdateAvailable.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\env.d.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\main.tsx",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\app.slice.ts",["707"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\redux-store.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\redux\\reduxHooks.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\countdownHook.ts",[],["708","709","710"],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\firebase.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\graphql.client.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\i18n.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\ipcRendererHandler.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\renderer\\src\\util\\notificationContext.tsx",["711","712","713","714","715"],["716"],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\deepLowercaseKeys.ts",[],["717","718","719"],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\errorTypeCheck.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\getMainWindow.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\memUsage.ts",["720","721","722","723","724","725","726","727"],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\newWindow.ts",[],[],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\typeCaster.ts",[],["728","729","730","731","732","733","734","735","736"],"C:\\Users\\DaveRicher\\WebstormProjects\\esdp\\src\\util\\ynBoolConverter.ts",[],[],{"ruleId":"737","severity":1,"message":"738","line":4,"column":20,"nodeType":null,"messageId":"739","endLine":4,"endColumn":24,"fix":"740"},{"ruleId":"737","severity":1,"message":"741","line":5,"column":22,"nodeType":null,"messageId":"739","endLine":5,"endColumn":28,"fix":"742"},{"ruleId":"737","severity":1,"message":"743","line":6,"column":27,"nodeType":null,"messageId":"739","endLine":6,"endColumn":42,"fix":"744"},{"ruleId":"737","severity":1,"message":"745","line":9,"column":46,"nodeType":null,"messageId":"739","endLine":9,"endColumn":66,"fix":"746"},{"ruleId":"737","severity":1,"message":"747","line":10,"column":65,"nodeType":null,"messageId":"739","endLine":10,"endColumn":71,"fix":"748"},{"ruleId":"737","severity":1,"message":"749","line":16,"column":22,"nodeType":null,"messageId":"739","endLine":16,"endColumn":24,"fix":"750"},{"ruleId":"737","severity":1,"message":"751","line":18,"column":22,"nodeType":null,"messageId":"739","endLine":18,"endColumn":29,"fix":"752"},{"ruleId":"737","severity":1,"message":"753","line":19,"column":1,"nodeType":null,"messageId":"754","endLine":19,"endColumn":3,"fix":"755"},{"ruleId":"737","severity":1,"message":"753","line":20,"column":1,"nodeType":null,"messageId":"754","endLine":20,"endColumn":3,"fix":"756"},{"ruleId":"737","severity":1,"message":"757","line":21,"column":29,"nodeType":null,"messageId":"739","endLine":21,"endColumn":35,"fix":"758"},{"ruleId":"737","severity":1,"message":"753","line":22,"column":1,"nodeType":null,"messageId":"754","endLine":22,"endColumn":3,"fix":"759"},{"ruleId":"737","severity":1,"message":"753","line":23,"column":1,"nodeType":null,"messageId":"754","endLine":23,"endColumn":3,"fix":"760"},{"ruleId":"737","severity":1,"message":"761","line":25,"column":1,"nodeType":null,"messageId":"739","endLine":25,"endColumn":24,"fix":"762"},{"ruleId":"737","severity":1,"message":"763","line":26,"column":3,"nodeType":null,"messageId":"739","endLine":26,"endColumn":68,"fix":"764"},{"ruleId":"737","severity":1,"message":"753","line":36,"column":3,"nodeType":null,"messageId":"754","endLine":36,"endColumn":5,"fix":"765"},{"ruleId":"737","severity":1,"message":"766","line":37,"column":1,"nodeType":null,"messageId":"739","endLine":37,"endColumn":5,"fix":"767"},{"ruleId":"737","severity":1,"message":"768","line":39,"column":1,"nodeType":null,"messageId":"739","endLine":39,"endColumn":55,"fix":"769"},{"ruleId":"737","severity":1,"message":"766","line":41,"column":1,"nodeType":null,"messageId":"739","endLine":41,"endColumn":5,"fix":"770"},{"ruleId":"737","severity":1,"message":"771","line":42,"column":5,"nodeType":null,"messageId":"739","endLine":42,"endColumn":25,"fix":"772"},{"ruleId":"737","severity":1,"message":"773","line":43,"column":1,"nodeType":null,"messageId":"754","endLine":43,"endColumn":5,"fix":"774"},{"ruleId":"737","severity":1,"message":"775","line":44,"column":5,"nodeType":null,"messageId":"739","endLine":44,"endColumn":20,"fix":"776"},{"ruleId":"737","severity":1,"message":"753","line":45,"column":3,"nodeType":null,"messageId":"754","endLine":45,"endColumn":5,"fix":"777"},{"ruleId":"737","severity":1,"message":"778","line":47,"column":1,"nodeType":null,"messageId":"739","endLine":47,"endColumn":21,"fix":"779"},{"ruleId":"737","severity":1,"message":"773","line":48,"column":1,"nodeType":null,"messageId":"754","endLine":48,"endColumn":5,"fix":"780"},{"ruleId":"737","severity":1,"message":"753","line":49,"column":3,"nodeType":null,"messageId":"754","endLine":49,"endColumn":5,"fix":"781"},{"ruleId":"737","severity":1,"message":"753","line":51,"column":1,"nodeType":null,"messageId":"754","endLine":51,"endColumn":3,"fix":"782"},{"ruleId":"737","severity":1,"message":"783","line":52,"column":3,"nodeType":null,"messageId":"739","endLine":52,"endColumn":125,"fix":"784"},{"ruleId":"737","severity":1,"message":"738","line":4,"column":20,"nodeType":null,"messageId":"739","endLine":4,"endColumn":24,"fix":"785"},{"ruleId":"737","severity":1,"message":"741","line":5,"column":22,"nodeType":null,"messageId":"739","endLine":5,"endColumn":28,"fix":"786"},{"ruleId":"737","severity":1,"message":"787","line":7,"column":13,"nodeType":null,"messageId":"739","endLine":7,"endColumn":60,"fix":"788"},{"ruleId":"737","severity":1,"message":"749","line":8,"column":13,"nodeType":null,"messageId":"739","endLine":8,"endColumn":15,"fix":"789"},{"ruleId":"737","severity":1,"message":"745","line":11,"column":46,"nodeType":null,"messageId":"739","endLine":11,"endColumn":66,"fix":"790"},{"ruleId":"737","severity":1,"message":"747","line":12,"column":65,"nodeType":null,"messageId":"739","endLine":12,"endColumn":71,"fix":"791"},{"ruleId":"737","severity":1,"message":"792","line":19,"column":3,"nodeType":null,"messageId":"739","endLine":19,"endColumn":33,"fix":"793"},{"ruleId":"737","severity":1,"message":"794","line":20,"column":1,"nodeType":null,"messageId":"739","endLine":20,"endColumn":9,"fix":"795"},{"ruleId":"737","severity":1,"message":"796","line":21,"column":3,"nodeType":null,"messageId":"739","endLine":21,"endColumn":39,"fix":"797"},{"ruleId":"737","severity":1,"message":"794","line":22,"column":1,"nodeType":null,"messageId":"739","endLine":22,"endColumn":9,"fix":"798"},{"ruleId":"737","severity":1,"message":"753","line":23,"column":3,"nodeType":null,"messageId":"754","endLine":23,"endColumn":5,"fix":"799"},{"ruleId":"737","severity":1,"message":"800","line":24,"column":1,"nodeType":null,"messageId":"739","endLine":24,"endColumn":18,"fix":"801"},{"ruleId":"737","severity":1,"message":"753","line":25,"column":3,"nodeType":null,"messageId":"754","endLine":25,"endColumn":5,"fix":"802"},{"ruleId":"737","severity":1,"message":"803","line":30,"column":3,"nodeType":null,"messageId":"739","endLine":30,"endColumn":28,"fix":"804"},{"ruleId":"737","severity":1,"message":"805","line":31,"column":3,"nodeType":null,"messageId":"739","endLine":31,"endColumn":27,"fix":"806"},{"ruleId":"737","severity":1,"message":"807","line":32,"column":3,"nodeType":null,"messageId":"739","endLine":32,"endColumn":28,"fix":"808"},{"ruleId":"737","severity":1,"message":"809","line":33,"column":3,"nodeType":null,"messageId":"739","endLine":33,"endColumn":28,"fix":"810"},{"ruleId":"737","severity":1,"message":"811","line":34,"column":3,"nodeType":null,"messageId":"739","endLine":34,"endColumn":27,"fix":"812"},{"ruleId":"737","severity":1,"message":"813","line":37,"column":13,"nodeType":null,"messageId":"739","endLine":37,"endColumn":30,"fix":"814"},{"ruleId":"737","severity":1,"message":"815","line":38,"column":13,"nodeType":null,"messageId":"739","endLine":38,"endColumn":33,"fix":"816"},{"ruleId":"737","severity":1,"message":"817","line":40,"column":22,"nodeType":null,"messageId":"739","endLine":40,"endColumn":29,"fix":"818"},{"ruleId":"737","severity":1,"message":"753","line":41,"column":1,"nodeType":null,"messageId":"754","endLine":41,"endColumn":3,"fix":"819"},{"ruleId":"737","severity":1,"message":"773","line":42,"column":1,"nodeType":null,"messageId":"754","endLine":42,"endColumn":5,"fix":"820"},{"ruleId":"737","severity":1,"message":"753","line":43,"column":1,"nodeType":null,"messageId":"754","endLine":43,"endColumn":3,"fix":"821"},{"ruleId":"737","severity":1,"message":"753","line":44,"column":3,"nodeType":null,"messageId":"754","endLine":44,"endColumn":5,"fix":"822"},{"ruleId":"737","severity":1,"message":"753","line":45,"column":3,"nodeType":null,"messageId":"754","endLine":45,"endColumn":5,"fix":"823"},{"ruleId":"737","severity":1,"message":"753","line":46,"column":1,"nodeType":null,"messageId":"754","endLine":46,"endColumn":3,"fix":"824"},{"ruleId":"737","severity":1,"message":"773","line":47,"column":1,"nodeType":null,"messageId":"754","endLine":47,"endColumn":5,"fix":"825"},{"ruleId":"737","severity":1,"message":"766","line":48,"column":1,"nodeType":null,"messageId":"739","endLine":48,"endColumn":5,"fix":"826"},{"ruleId":"737","severity":1,"message":"753","line":49,"column":1,"nodeType":null,"messageId":"754","endLine":49,"endColumn":3,"fix":"827"},{"ruleId":"737","severity":1,"message":"753","line":50,"column":3,"nodeType":null,"messageId":"754","endLine":50,"endColumn":5,"fix":"828"},{"ruleId":"737","severity":1,"message":"766","line":51,"column":1,"nodeType":null,"messageId":"739","endLine":51,"endColumn":5,"fix":"829"},{"ruleId":"737","severity":1,"message":"753","line":52,"column":1,"nodeType":null,"messageId":"754","endLine":52,"endColumn":3,"fix":"830"},{"ruleId":"737","severity":1,"message":"831","line":53,"column":3,"nodeType":null,"messageId":"739","endLine":53,"endColumn":19,"fix":"832"},{"ruleId":"737","severity":1,"message":"833","line":56,"column":13,"nodeType":null,"messageId":"739","endLine":56,"endColumn":50,"fix":"834"},{"ruleId":"737","severity":1,"message":"749","line":62,"column":13,"nodeType":null,"messageId":"739","endLine":62,"endColumn":15,"fix":"835"},{"ruleId":"737","severity":1,"message":"753","line":8,"column":3,"nodeType":null,"messageId":"754","endLine":8,"endColumn":5,"fix":"836"},{"ruleId":"737","severity":1,"message":"753","line":9,"column":3,"nodeType":null,"messageId":"754","endLine":9,"endColumn":5,"fix":"837"},{"ruleId":"737","severity":1,"message":"773","line":10,"column":1,"nodeType":null,"messageId":"754","endLine":10,"endColumn":5,"fix":"838"},{"ruleId":"737","severity":1,"message":"794","line":11,"column":1,"nodeType":null,"messageId":"739","endLine":11,"endColumn":9,"fix":"839"},{"ruleId":"737","severity":1,"message":"753","line":12,"column":3,"nodeType":null,"messageId":"754","endLine":12,"endColumn":5,"fix":"840"},{"ruleId":"737","severity":1,"message":"766","line":13,"column":1,"nodeType":null,"messageId":"739","endLine":13,"endColumn":5,"fix":"841"},{"ruleId":"737","severity":1,"message":"753","line":14,"column":1,"nodeType":null,"messageId":"754","endLine":14,"endColumn":3,"fix":"842"},{"ruleId":"737","severity":1,"message":"753","line":15,"column":1,"nodeType":null,"messageId":"754","endLine":15,"endColumn":3,"fix":"843"},{"ruleId":"737","severity":1,"message":"773","line":16,"column":5,"nodeType":null,"messageId":"754","endLine":16,"endColumn":9,"fix":"844"},{"ruleId":"737","severity":1,"message":"845","line":17,"column":1,"nodeType":null,"messageId":"754","endLine":17,"endColumn":7,"fix":"846"},{"ruleId":"737","severity":1,"message":"847","line":18,"column":9,"nodeType":null,"messageId":"754","endLine":18,"endColumn":17,"fix":"848"},{"ruleId":"737","severity":1,"message":"849","line":19,"column":1,"nodeType":null,"messageId":"739","endLine":19,"endColumn":13,"fix":"850"},{"ruleId":"737","severity":1,"message":"773","line":20,"column":5,"nodeType":null,"messageId":"754","endLine":20,"endColumn":9,"fix":"851"},{"ruleId":"737","severity":1,"message":"766","line":21,"column":1,"nodeType":null,"messageId":"739","endLine":21,"endColumn":5,"fix":"852"},{"ruleId":"737","severity":1,"message":"766","line":22,"column":1,"nodeType":null,"messageId":"739","endLine":22,"endColumn":5,"fix":"853"},{"ruleId":"737","severity":1,"message":"773","line":23,"column":1,"nodeType":null,"messageId":"754","endLine":23,"endColumn":5,"fix":"854"},{"ruleId":"737","severity":1,"message":"794","line":24,"column":1,"nodeType":null,"messageId":"739","endLine":24,"endColumn":9,"fix":"855"},{"ruleId":"737","severity":1,"message":"845","line":25,"column":1,"nodeType":null,"messageId":"754","endLine":25,"endColumn":7,"fix":"856"},{"ruleId":"737","severity":1,"message":"849","line":26,"column":1,"nodeType":null,"messageId":"739","endLine":26,"endColumn":13,"fix":"857"},{"ruleId":"737","severity":1,"message":"773","line":27,"column":5,"nodeType":null,"messageId":"754","endLine":27,"endColumn":9,"fix":"858"},{"ruleId":"737","severity":1,"message":"794","line":28,"column":1,"nodeType":null,"messageId":"739","endLine":28,"endColumn":9,"fix":"859"},{"ruleId":"737","severity":1,"message":"845","line":29,"column":1,"nodeType":null,"messageId":"754","endLine":29,"endColumn":7,"fix":"860"},{"ruleId":"737","severity":1,"message":"849","line":30,"column":1,"nodeType":null,"messageId":"739","endLine":30,"endColumn":13,"fix":"861"},{"ruleId":"737","severity":1,"message":"862","line":31,"column":5,"nodeType":null,"messageId":"739","endLine":32,"endColumn":1,"fix":"863"},{"ruleId":"737","severity":1,"message":"753","line":33,"column":3,"nodeType":null,"messageId":"754","endLine":33,"endColumn":5,"fix":"864"},{"ruleId":"737","severity":1,"message":"753","line":34,"column":1,"nodeType":null,"messageId":"754","endLine":34,"endColumn":3,"fix":"865"},{"ruleId":"737","severity":1,"message":"773","line":35,"column":1,"nodeType":null,"messageId":"754","endLine":35,"endColumn":5,"fix":"866"},{"ruleId":"737","severity":1,"message":"794","line":36,"column":1,"nodeType":null,"messageId":"739","endLine":36,"endColumn":9,"fix":"867"},{"ruleId":"737","severity":1,"message":"868","line":37,"column":1,"nodeType":null,"messageId":"739","endLine":37,"endColumn":62,"fix":"869"},{"ruleId":"737","severity":1,"message":"773","line":38,"column":1,"nodeType":null,"messageId":"754","endLine":38,"endColumn":5,"fix":"870"},{"ruleId":"737","severity":1,"message":"753","line":39,"column":3,"nodeType":null,"messageId":"754","endLine":39,"endColumn":5,"fix":"871"},{"ruleId":"737","severity":1,"message":"766","line":40,"column":1,"nodeType":null,"messageId":"739","endLine":40,"endColumn":5,"fix":"872"},{"ruleId":"737","severity":1,"message":"794","line":41,"column":1,"nodeType":null,"messageId":"739","endLine":41,"endColumn":9,"fix":"873"},{"ruleId":"737","severity":1,"message":"773","line":42,"column":5,"nodeType":null,"messageId":"754","endLine":42,"endColumn":9,"fix":"874"},{"ruleId":"737","severity":1,"message":"875","line":43,"column":1,"nodeType":null,"messageId":"739","endLine":43,"endColumn":68,"fix":"876"},{"ruleId":"737","severity":1,"message":"877","line":44,"column":1,"nodeType":null,"messageId":"739","endLine":44,"endColumn":10,"fix":"878"},{"ruleId":"737","severity":1,"message":"766","line":45,"column":1,"nodeType":null,"messageId":"739","endLine":45,"endColumn":5,"fix":"879"},{"ruleId":"737","severity":1,"message":"753","line":46,"column":1,"nodeType":null,"messageId":"754","endLine":46,"endColumn":3,"fix":"880"},{"ruleId":"737","severity":1,"message":"881","line":47,"column":2,"nodeType":null,"messageId":"739","endLine":48,"endColumn":1,"fix":"882"},{"ruleId":"883","severity":2,"message":"884","line":30,"column":30,"nodeType":"885","messageId":"886","endLine":30,"endColumn":39},{"ruleId":"737","severity":1,"message":"887","line":175,"column":37,"nodeType":null,"messageId":"739","endLine":176,"endColumn":53,"fix":"888"},{"ruleId":"737","severity":1,"message":"889","line":177,"column":11,"nodeType":null,"messageId":"739","endLine":177,"endColumn":39,"fix":"890"},{"ruleId":"737","severity":1,"message":"891","line":178,"column":9,"nodeType":null,"messageId":"892","endLine":178,"endColumn":9,"fix":"893"},{"ruleId":"894","severity":2,"message":"895","line":384,"column":29,"nodeType":"896","messageId":"897","endLine":384,"endColumn":32,"suggestions":"898"},{"ruleId":"894","severity":2,"message":"895","line":387,"column":37,"nodeType":"896","messageId":"897","endLine":387,"endColumn":40,"suggestions":"899"},{"ruleId":"894","severity":2,"message":"895","line":390,"column":29,"nodeType":"896","messageId":"897","endLine":390,"endColumn":32,"suggestions":"900"},{"ruleId":"894","severity":2,"message":"895","line":393,"column":34,"nodeType":"896","messageId":"897","endLine":393,"endColumn":37,"suggestions":"901"},{"ruleId":"894","severity":2,"message":"895","line":398,"column":21,"nodeType":"896","messageId":"897","endLine":398,"endColumn":24,"suggestions":"902"},{"ruleId":"894","severity":2,"message":"895","line":398,"column":60,"nodeType":"896","messageId":"897","endLine":398,"endColumn":63,"suggestions":"903"},{"ruleId":"894","severity":2,"message":"895","line":402,"column":54,"nodeType":"896","messageId":"897","endLine":402,"endColumn":57,"suggestions":"904"},{"ruleId":"894","severity":2,"message":"895","line":416,"column":53,"nodeType":"896","messageId":"897","endLine":416,"endColumn":56,"suggestions":"905"},{"ruleId":"894","severity":2,"message":"895","line":418,"column":53,"nodeType":"896","messageId":"897","endLine":418,"endColumn":56,"suggestions":"906"},{"ruleId":"907","severity":2,"message":"908","line":110,"column":5,"nodeType":"909","messageId":"910","endLine":110,"endColumn":18},{"ruleId":"907","severity":2,"message":"908","line":131,"column":9,"nodeType":"909","messageId":"910","endLine":131,"endColumn":22},{"ruleId":"907","severity":2,"message":"908","line":145,"column":9,"nodeType":"909","messageId":"910","endLine":145,"endColumn":22},{"ruleId":"907","severity":2,"message":"908","line":163,"column":7,"nodeType":"909","messageId":"910","endLine":163,"endColumn":20},{"ruleId":"907","severity":2,"message":"908","line":178,"column":7,"nodeType":"909","messageId":"910","endLine":178,"endColumn":20},{"ruleId":"907","severity":2,"message":"908","line":379,"column":9,"nodeType":"909","messageId":"910","endLine":379,"endColumn":22},{"ruleId":"907","severity":2,"message":"908","line":402,"column":5,"nodeType":"909","messageId":"910","endLine":402,"endColumn":18},{"ruleId":"894","severity":2,"message":"895","line":18,"column":13,"nodeType":"896","messageId":"897","endLine":18,"endColumn":16,"suggestions":"911"},{"ruleId":"894","severity":2,"message":"895","line":19,"column":13,"nodeType":"896","messageId":"897","endLine":19,"endColumn":16,"suggestions":"912"},{"ruleId":"894","severity":2,"message":"895","line":17,"column":12,"nodeType":"896","messageId":"897","endLine":17,"endColumn":15,"suggestions":"913"},{"ruleId":"894","severity":2,"message":"895","line":24,"column":10,"nodeType":"896","messageId":"897","endLine":24,"endColumn":13,"suggestions":"914"},{"ruleId":"894","severity":2,"message":"895","line":25,"column":12,"nodeType":"896","messageId":"897","endLine":25,"endColumn":15,"suggestions":"915"},{"ruleId":"737","severity":1,"message":"916","line":24,"column":4,"nodeType":null,"messageId":"892","endLine":24,"endColumn":4,"fix":"917"},{"ruleId":"737","severity":1,"message":"916","line":25,"column":74,"nodeType":null,"messageId":"892","endLine":25,"endColumn":74,"fix":"918"},{"ruleId":"737","severity":1,"message":"916","line":26,"column":51,"nodeType":null,"messageId":"892","endLine":26,"endColumn":51,"fix":"919"},{"ruleId":"737","severity":1,"message":"916","line":27,"column":61,"nodeType":null,"messageId":"892","endLine":27,"endColumn":61,"fix":"920"},{"ruleId":"737","severity":1,"message":"916","line":28,"column":6,"nodeType":null,"messageId":"892","endLine":28,"endColumn":6,"fix":"921"},{"ruleId":"737","severity":1,"message":"916","line":29,"column":2,"nodeType":null,"messageId":"892","endLine":29,"endColumn":2,"fix":"922"},{"ruleId":"737","severity":1,"message":"923","line":1,"column":9,"nodeType":null,"messageId":"739","endLine":1,"endColumn":22,"fix":"924"},{"ruleId":"894","severity":2,"message":"895","line":8,"column":57,"nodeType":"896","messageId":"897","endLine":8,"endColumn":60,"suggestions":"925"},{"ruleId":"926","severity":2,"message":"927","line":34,"column":16,"nodeType":"928","messageId":"929","endLine":34,"endColumn":32},{"ruleId":"894","severity":2,"message":"895","line":6,"column":55,"nodeType":"896","messageId":"897","endLine":6,"endColumn":58,"suggestions":"930"},{"ruleId":"894","severity":2,"message":"895","line":8,"column":19,"nodeType":"896","messageId":"897","endLine":8,"endColumn":22,"suggestions":"931"},{"ruleId":"737","severity":1,"message":"932","line":16,"column":7,"nodeType":null,"messageId":"739","endLine":16,"endColumn":31,"fix":"933"},{"ruleId":"894","severity":2,"message":"895","line":21,"column":26,"nodeType":"896","messageId":"897","endLine":21,"endColumn":29,"suggestions":"934"},{"ruleId":"894","severity":2,"message":"895","line":26,"column":23,"nodeType":"896","messageId":"897","endLine":26,"endColumn":26,"suggestions":"935"},{"ruleId":"936","severity":1,"message":"937","line":30,"column":6,"nodeType":"938","endLine":30,"endColumn":8,"suggestions":"939"},{"ruleId":"894","severity":2,"message":"895","line":32,"column":45,"nodeType":"896","messageId":"897","endLine":32,"endColumn":48,"suggestions":"940"},{"ruleId":"894","severity":2,"message":"895","line":49,"column":52,"nodeType":"896","messageId":"897","endLine":49,"endColumn":55,"suggestions":"941"},{"ruleId":"737","severity":1,"message":"916","line":5,"column":28,"nodeType":null,"messageId":"892","endLine":5,"endColumn":28,"fix":"942"},{"ruleId":"936","severity":1,"message":"943","line":80,"column":5,"nodeType":"938","endLine":80,"endColumn":7,"suggestions":"944","suppressions":"945"},{"ruleId":"936","severity":1,"message":"946","line":98,"column":5,"nodeType":"938","endLine":98,"endColumn":7,"suggestions":"947","suppressions":"948"},{"ruleId":"936","severity":1,"message":"949","line":117,"column":5,"nodeType":"938","endLine":117,"endColumn":7,"suggestions":"950","suppressions":"951"},{"ruleId":"737","severity":1,"message":"952","line":1,"column":9,"nodeType":null,"messageId":"739","endLine":1,"endColumn":49,"fix":"953"},{"ruleId":null,"message":"954","line":13,"column":1,"severity":1,"nodeType":null,"fix":"955"},{"ruleId":null,"message":"956","line":29,"column":3,"severity":1,"nodeType":null,"fix":"957"},{"ruleId":"737","severity":1,"message":"753","line":39,"column":1,"nodeType":null,"messageId":"754","endLine":39,"endColumn":3,"fix":"958"},{"ruleId":"907","severity":2,"message":"908","line":39,"column":7,"nodeType":"909","messageId":"910","endLine":39,"endColumn":20},{"ruleId":"959","severity":2,"message":"960","line":14,"column":14,"nodeType":"885","messageId":"961","endLine":14,"endColumn":29,"suppressions":"962"},{"ruleId":"894","severity":2,"message":"895","line":8,"column":32,"nodeType":"896","messageId":"897","endLine":8,"endColumn":35,"suggestions":"963","suppressions":"964"},{"ruleId":"894","severity":2,"message":"895","line":8,"column":42,"nodeType":"896","messageId":"897","endLine":8,"endColumn":45,"suggestions":"965","suppressions":"966"},{"ruleId":"894","severity":2,"message":"895","line":33,"column":26,"nodeType":"896","messageId":"897","endLine":33,"endColumn":29,"suggestions":"967","suppressions":"968"},{"ruleId":"894","severity":2,"message":"895","line":92,"column":34,"nodeType":"896","messageId":"897","endLine":92,"endColumn":37,"suggestions":"969"},{"ruleId":"894","severity":2,"message":"895","line":94,"column":18,"nodeType":"896","messageId":"897","endLine":94,"endColumn":21,"suggestions":"970"},{"ruleId":null,"message":"971","line":146,"column":7,"severity":1,"nodeType":null,"fix":"972"},{"ruleId":"926","severity":2,"message":"927","line":147,"column":39,"nodeType":"928","messageId":"929","endLine":147,"endColumn":52},{"ruleId":"894","severity":2,"message":"895","line":158,"column":39,"nodeType":"896","messageId":"897","endLine":158,"endColumn":42,"suggestions":"973"},{"ruleId":"894","severity":2,"message":"895","line":160,"column":22,"nodeType":"896","messageId":"897","endLine":160,"endColumn":25,"suggestions":"974"},{"ruleId":null,"message":"971","line":165,"column":7,"severity":1,"nodeType":null,"fix":"975"},{"ruleId":"926","severity":2,"message":"927","line":166,"column":39,"nodeType":"928","messageId":"929","endLine":166,"endColumn":52},{"ruleId":"894","severity":2,"message":"895","line":25,"column":22,"nodeType":"896","messageId":"897","endLine":25,"endColumn":25,"suggestions":"976","suppressions":"977"},{"ruleId":"894","severity":2,"message":"895","line":28,"column":22,"nodeType":"896","messageId":"897","endLine":28,"endColumn":25,"suggestions":"978","suppressions":"979"},{"ruleId":"894","severity":2,"message":"895","line":31,"column":22,"nodeType":"896","messageId":"897","endLine":31,"endColumn":25,"suggestions":"980","suppressions":"981"},{"ruleId":"894","severity":2,"message":"895","line":36,"column":26,"nodeType":"896","messageId":"897","endLine":36,"endColumn":29,"suggestions":"982","suppressions":"983"},{"ruleId":"894","severity":2,"message":"895","line":38,"column":26,"nodeType":"896","messageId":"897","endLine":38,"endColumn":29,"suggestions":"984","suppressions":"985"},{"ruleId":"894","severity":2,"message":"895","line":44,"column":24,"nodeType":"896","messageId":"897","endLine":44,"endColumn":27,"suggestions":"986","suppressions":"987"},{"ruleId":"894","severity":2,"message":"895","line":48,"column":26,"nodeType":"896","messageId":"897","endLine":48,"endColumn":29,"suggestions":"988","suppressions":"989"},{"ruleId":"894","severity":2,"message":"895","line":50,"column":26,"nodeType":"896","messageId":"897","endLine":50,"endColumn":29,"suggestions":"990","suppressions":"991"},{"ruleId":"894","severity":2,"message":"895","line":53,"column":24,"nodeType":"896","messageId":"897","endLine":53,"endColumn":27,"suggestions":"992","suppressions":"993"},"prettier/prettier","Replace `'fs'` with `\"fs\"`","replace",{"range":"994","text":"995"},"Replace `'path'` with `\"path\"`",{"range":"996","text":"997"},"Replace `'child_process'` with `\"child_process\"`",{"range":"998","text":"999"},"Replace `'..',·'package.json'` with `\"..\",·\"package.json\"`",{"range":"1000","text":"1001"},"Replace `'utf8'` with `\"utf8\"`",{"range":"1002","text":"1003"},"Replace `''` with `\"\"`",{"range":"1004","text":"1005"},"Replace `'alpha'` with `\"alpha\"`",{"range":"1006","text":"1007"},"Delete `··`","delete",{"range":"1008","text":"1009"},{"range":"1010","text":"1009"},"Replace `'beta'` with `\"beta\"`",{"range":"1011","text":"1012"},{"range":"1013","text":"1009"},{"range":"1014","text":"1009"},"Replace `····artifactSuffix·=·''` with `··artifactSuffix·=·\"\"`",{"range":"1015","text":"1016"},"Replace `··console.log('Detected·release·version,·no·suffix·will·be·added'` with `console.log(\"Detected·release·version,·no·suffix·will·be·added\"`",{"range":"1017","text":"1018"},{"range":"1019","text":"1009"},"Replace `····` with `··`",{"range":"1020","text":"1021"},"Replace `····console.log(`Executing:·${command}·${args.join('·'` with `··console.log(`Executing:·${command}·${args.join(\"·\"`",{"range":"1022","text":"1023"},{"range":"1024","text":"1021"},"Replace `····stdio:·'inherit'` with `stdio:·\"inherit\"`",{"range":"1025","text":"1026"},"Delete `····`",{"range":"1027","text":"1009"},"Replace `····shell:·true` with `shell:·true,`",{"range":"1028","text":"1029"},{"range":"1030","text":"1009"},"Replace `····child.on('close'` with `··child.on(\"close\"`",{"range":"1031","text":"1032"},{"range":"1033","text":"1009"},{"range":"1034","text":"1009"},{"range":"1035","text":"1009"},"Replace `··console.log('Environment·variable·set.·Use·this·script·with·additional·arguments·to·run·commands·with·the·variable·set.'` with `console.log(␍⏎····\"Environment·variable·set.·Use·this·script·with·additional·arguments·to·run·commands·with·the·variable·set.\",␍⏎··`",{"range":"1036","text":"1037"},{"range":"1038","text":"995"},{"range":"1039","text":"997"},"Replace `'===·Artifact·Naming·Test·(Cross-Platform)·==='` with `\"===·Artifact·Naming·Test·(Cross-Platform)·===\"`",{"range":"1040","text":"1041"},{"range":"1042","text":"1005"},{"range":"1043","text":"1001"},{"range":"1044","text":"1003"},"Replace `··if·(version.includes('alpha'` with `if·(version.includes(\"alpha\"`",{"range":"1045","text":"1046"},"Replace `········` with `····`",{"range":"1047","text":"1048"},"Replace `··}·else·if·(version.includes('beta'` with `}·else·if·(version.includes(\"beta\"`",{"range":"1049","text":"1050"},{"range":"1051","text":"1048"},{"range":"1052","text":"1009"},"Replace `········return·''` with `····return·\"\"`",{"range":"1053","text":"1054"},{"range":"1055","text":"1009"},"Replace `··'1.0.5',···············` with `\"1.0.5\",·`",{"range":"1056","text":"1057"},"Replace `··'1.0.5-alpha.2',······` with `\"1.0.5-alpha.2\",`",{"range":"1058","text":"1059"},"Replace `··'1.0.5-beta.1',········` with `\"1.0.5-beta.1\",·`",{"range":"1060","text":"1061"},"Replace `··'2.0.0-alpha.1',·······` with `\"2.0.0-alpha.1\",·`",{"range":"1062","text":"1063"},"Replace `··'1.5.0-beta.3'········` with `\"1.5.0-beta.3\",`",{"range":"1064","text":"1065"},"Replace `'Test·scenarios:'` with `\"Test·scenarios:\"`",{"range":"1066","text":"1067"},"Replace `'=================='` with `\"==================\"`",{"range":"1068","text":"1069"},"Replace `version` with `(version)`",{"range":"1070","text":"1071"},{"range":"1072","text":"1009"},{"range":"1073","text":"1009"},{"range":"1074","text":"1009"},{"range":"1075","text":"1009"},{"range":"1076","text":"1009"},{"range":"1077","text":"1009"},{"range":"1078","text":"1009"},{"range":"1079","text":"1021"},{"range":"1080","text":"1009"},{"range":"1081","text":"1009"},{"range":"1082","text":"1021"},{"range":"1083","text":"1009"},"Replace `··console.log(''` with `console.log(\"\"`",{"range":"1084","text":"1085"},"Replace `'Current·configuration·will·produce:'` with `\"Current·configuration·will·produce:\"`",{"range":"1086","text":"1087"},{"range":"1088","text":"1005"},{"range":"1089","text":"1009"},{"range":"1090","text":"1009"},{"range":"1091","text":"1009"},{"range":"1092","text":"1048"},{"range":"1093","text":"1009"},{"range":"1094","text":"1021"},{"range":"1095","text":"1009"},{"range":"1096","text":"1009"},{"range":"1097","text":"1009"},"Delete `······`",{"range":"1098","text":"1009"},"Delete `········`",{"range":"1099","text":"1009"},"Replace `············` with `······`",{"range":"1100","text":"1101"},{"range":"1102","text":"1009"},{"range":"1103","text":"1021"},{"range":"1104","text":"1021"},{"range":"1105","text":"1009"},{"range":"1106","text":"1048"},{"range":"1107","text":"1009"},{"range":"1108","text":"1101"},{"range":"1109","text":"1009"},{"range":"1110","text":"1048"},{"range":"1111","text":"1009"},{"range":"1112","text":"1101"},"Replace `····},␍⏎` with `},`",{"range":"1113","text":"1114"},{"range":"1115","text":"1009"},{"range":"1116","text":"1009"},{"range":"1117","text":"1009"},{"range":"1118","text":"1048"},"Replace `············\"no-unused-vars\":·[\"error\",·{·\"argsIgnorePattern\"` with `······\"no-unused-vars\":·[\"error\",·{·argsIgnorePattern`",{"range":"1119","text":"1120"},{"range":"1121","text":"1009"},{"range":"1122","text":"1009"},{"range":"1123","text":"1021"},{"range":"1124","text":"1048"},{"range":"1125","text":"1009"},"Replace `············\"prettier/prettier\":·[\"error\",·{·\"endOfLine\":·\"auto\"·}]` with `······\"prettier/prettier\":·[\"error\",·{·endOfLine:·\"auto\"·}],`",{"range":"1126","text":"1127"},"Replace `········}` with `····},`",{"range":"1128","text":"1129"},{"range":"1130","text":"1021"},{"range":"1131","text":"1009"},"Replace `␍⏎` with `;`",{"range":"1132","text":"1133"},"@typescript-eslint/no-unused-vars","'_esApiKey' is defined but never used.","Identifier","unusedVar","Replace `⏎··········ipcTypes.toRenderer.scrub.openHistoryItem,` with `ipcTypes.toRenderer.scrub.openHistoryItem,·{`",{"range":"1134","text":"1135"},"Replace `{·jobId:·scrubHistoryJobId·}` with `jobId:·scrubHistoryJobId`",{"range":"1136","text":"1137"},"Insert `}`","insert",{"range":"1138","text":"1139"},"@typescript-eslint/no-explicit-any","Unexpected any. Specify a different type.","TSAnyKeyword","unexpectedAny",["1140","1141"],["1142","1143"],["1144","1145"],["1146","1147"],["1148","1149"],["1150","1151"],["1152","1153"],["1154","1155"],["1156","1157"],"@typescript-eslint/ban-ts-comment","Include a description after the \"@ts-ignore\" directive to explain why the @ts-ignore is necessary. The description must be 3 characters or longer.","Line","tsDirectiveCommentRequiresDescription",["1158","1159"],["1160","1161"],["1162","1163"],["1164","1165"],["1166","1167"],"Insert `␍`",{"range":"1168","text":"1169"},{"range":"1170","text":"1169"},{"range":"1171","text":"1169"},{"range":"1172","text":"1169"},{"range":"1173","text":"1169"},{"range":"1174","text":"1169"},"Replace `BrowserWindow` with `·BrowserWindow·`",{"range":"1175","text":"1176"},["1177","1178"],"@typescript-eslint/no-require-imports","A `require()` style import is forbidden.","CallExpression","noRequireImports",["1179","1180"],["1181","1182"],"Replace `··result[uppercaseKey]·=` with `result[uppercaseKey]·=␍⏎·······`",{"range":"1183","text":"1184"},["1185","1186"],["1187","1188"],"react-hooks/exhaustive-deps","React Hook useEffect has missing dependencies: 'form' and 'settingFields'. Either include them or remove the dependency array.","ArrayExpression",["1189"],["1190","1191"],["1192","1193"],{"range":"1194","text":"1169"},"React Hook useCallback has missing dependencies: 'run' and 'timeToCount'. Either include them or remove the dependency array.",["1195"],["1196"],"React Hook useCallback has a missing dependency: 'run'. Either include it or remove the dependency array.",["1197"],["1198"],"React Hook useMemo has missing dependencies: 'pause', 'reset', 'resume', and 'start'. Either include them or remove the dependency array.",["1199"],["1200"],"Replace `createContext,·FC,·ReactNode,·useContext` with `·createContext,·FC,·ReactNode,·useContext·`",{"range":"1201","text":"1202"},"Unused eslint-disable directive (no problems were reported from '@typescript-eslint/explicit-function-return-type').",{"range":"1203","text":"1009"},"Unused eslint-disable directive (no problems were reported from 'react/prop-types').",{"range":"1204","text":"1205"},{"range":"1206","text":"1009"},"react-refresh/only-export-components","Fast refresh only works when a file only exports components. Use a new file to share constants or functions between components.","namedExport",["1207"],["1208","1209"],["1210"],["1211","1212"],["1213"],["1214","1215"],["1216"],["1217","1218"],["1219","1220"],"Unused eslint-disable directive (no problems were reported from '@typescript-eslint/no-var-requires').",{"range":"1221","text":"1205"},["1222","1223"],["1224","1225"],{"range":"1226","text":"1205"},["1227","1228"],["1229"],["1230","1231"],["1232"],["1233","1234"],["1235"],["1236","1237"],["1238"],["1239","1240"],["1241"],["1242","1243"],["1244"],["1245","1246"],["1247"],["1248","1249"],["1250"],["1251","1252"],["1253"],[108,112],"\"fs\"",[137,143],"\"path\"",[173,188],"\"child_process\"",[284,304],"\"..\", \"package.json\"",[372,378],"\"utf8\"",[546,548],"\"\"",[574,581],"\"alpha\"",[587,589],"",[630,632],[740,746],"\"beta\"",[752,754],[794,796],[885,908]," artifactSuffix = \"\"",[913,978],"console.log(\"Detected release version, no suffix will be added\"",[1283,1285],[1319,1323]," ",[1362,1416]," console.log(`Executing: ${command} ${args.join(\" \"",[1425,1429],[1471,1491],"stdio: \"inherit\"",[1494,1498],[1565,1580],"shell: true,",[1584,1586],[1593,1613]," child.on(\"close\"",[1628,1632],[1659,1661],[1676,1678],[1724,1846],"console.log(\r\n \"Environment variable set. Use this script with additional arguments to run commands with the variable set.\",\r\n ",[127,131],[156,162],[180,227],"\"=== Artifact Naming Test (Cross-Platform) ===\"",[243,245],[320,340],[408,414],[597,627],"if (version.includes(\"alpha\"",[633,641]," ",[672,708],"} else if (version.includes(\"beta\"",[714,722],[752,754],[764,781]," return \"\"",[786,788],[841,866],"\"1.0.5\", ",[888,912],"\"1.0.5-alpha.2\",",[933,958],"\"1.0.5-beta.1\", ",[977,1002],"\"2.0.0-alpha.1\", ",[1022,1046],"\"1.5.0-beta.3\",",[1082,1099],"\"Test scenarios:\"",[1115,1135],"\"==================\"",[1162,1169],"(version)",[1176,1178],[1224,1228],[1230,1232],[1289,1291],[1351,1353],[1407,1409],[1472,1476],[1478,1482],[1519,1521],[1564,1566],[1613,1617],[1656,1658],[1705,1721],"console.log(\"\"",[1744,1781],"\"Current configuration will produce:\"",[2051,2053],[363,365],[441,443],[446,450],[481,489],[533,535],[539,543],[588,590],[640,642],[651,655],[668,674],[698,706],[726,738]," ",[746,750],[754,758],[762,766],[769,773],[804,812],[824,830],[876,888],[936,940],[944,952],[962,968],[1028,1040],[1093,1101],"},",[1105,1107],[1111,1113],[1118,1122],[1158,1166],[1176,1237]," \"no-unused-vars\": [\"error\", { argsIgnorePattern",[1249,1253],[1263,1265],[1269,1273],[1276,1284],[1330,1334],[1344,1411]," \"prettier/prettier\": [\"error\", { endOfLine: \"auto\" }],",[1413,1422]," },",[1424,1428],[1432,1434],[1460,1462],";",[6780,6833],"ipcTypes.toRenderer.scrub.openHistoryItem, {",[6844,6872],"jobId: scrubHistoryJobId",[6882,6882],"}",{"messageId":"1254","fix":"1255","desc":"1256"},{"messageId":"1257","fix":"1258","desc":"1259"},{"messageId":"1254","fix":"1260","desc":"1256"},{"messageId":"1257","fix":"1261","desc":"1259"},{"messageId":"1254","fix":"1262","desc":"1256"},{"messageId":"1257","fix":"1263","desc":"1259"},{"messageId":"1254","fix":"1264","desc":"1256"},{"messageId":"1257","fix":"1265","desc":"1259"},{"messageId":"1254","fix":"1266","desc":"1256"},{"messageId":"1257","fix":"1267","desc":"1259"},{"messageId":"1254","fix":"1268","desc":"1256"},{"messageId":"1257","fix":"1269","desc":"1259"},{"messageId":"1254","fix":"1270","desc":"1256"},{"messageId":"1257","fix":"1271","desc":"1259"},{"messageId":"1254","fix":"1272","desc":"1256"},{"messageId":"1257","fix":"1273","desc":"1259"},{"messageId":"1254","fix":"1274","desc":"1256"},{"messageId":"1257","fix":"1275","desc":"1259"},{"messageId":"1254","fix":"1276","desc":"1256"},{"messageId":"1257","fix":"1277","desc":"1259"},{"messageId":"1254","fix":"1278","desc":"1256"},{"messageId":"1257","fix":"1279","desc":"1259"},{"messageId":"1254","fix":"1280","desc":"1256"},{"messageId":"1257","fix":"1281","desc":"1259"},{"messageId":"1254","fix":"1282","desc":"1256"},{"messageId":"1257","fix":"1283","desc":"1259"},{"messageId":"1254","fix":"1284","desc":"1256"},{"messageId":"1257","fix":"1285","desc":"1259"},[651,651],"\r",[725,725],[776,776],[837,837],[843,843],[845,845],[8,21]," BrowserWindow ",{"messageId":"1254","fix":"1286","desc":"1256"},{"messageId":"1257","fix":"1287","desc":"1259"},{"messageId":"1254","fix":"1288","desc":"1256"},{"messageId":"1257","fix":"1289","desc":"1259"},{"messageId":"1254","fix":"1290","desc":"1256"},{"messageId":"1257","fix":"1291","desc":"1259"},[489,513],"result[uppercaseKey] =\r\n ",{"messageId":"1254","fix":"1292","desc":"1256"},{"messageId":"1257","fix":"1293","desc":"1259"},{"messageId":"1254","fix":"1294","desc":"1256"},{"messageId":"1257","fix":"1295","desc":"1259"},{"desc":"1296","fix":"1297"},{"messageId":"1254","fix":"1298","desc":"1256"},{"messageId":"1257","fix":"1299","desc":"1259"},{"messageId":"1254","fix":"1300","desc":"1256"},{"messageId":"1257","fix":"1301","desc":"1259"},[184,184],{"desc":"1302","fix":"1303"},{"kind":"1304","justification":"1009"},{"desc":"1305","fix":"1306"},{"kind":"1304","justification":"1009"},{"desc":"1307","fix":"1308"},{"kind":"1304","justification":"1009"},[8,48]," createContext, FC, ReactNode, useContext ",[410,460],[964,1008]," ",[1247,1249],{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1309","desc":"1256"},{"messageId":"1257","fix":"1310","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1311","desc":"1256"},{"messageId":"1257","fix":"1312","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1313","desc":"1256"},{"messageId":"1257","fix":"1314","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1315","desc":"1256"},{"messageId":"1257","fix":"1316","desc":"1259"},{"messageId":"1254","fix":"1317","desc":"1256"},{"messageId":"1257","fix":"1318","desc":"1259"},[3713,3775],{"messageId":"1254","fix":"1319","desc":"1256"},{"messageId":"1257","fix":"1320","desc":"1259"},{"messageId":"1254","fix":"1321","desc":"1256"},{"messageId":"1257","fix":"1322","desc":"1259"},[4271,4333],{"messageId":"1254","fix":"1323","desc":"1256"},{"messageId":"1257","fix":"1324","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1325","desc":"1256"},{"messageId":"1257","fix":"1326","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1327","desc":"1256"},{"messageId":"1257","fix":"1328","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1329","desc":"1256"},{"messageId":"1257","fix":"1330","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1331","desc":"1256"},{"messageId":"1257","fix":"1332","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1333","desc":"1256"},{"messageId":"1257","fix":"1334","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1335","desc":"1256"},{"messageId":"1257","fix":"1336","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1337","desc":"1256"},{"messageId":"1257","fix":"1338","desc":"1259"},{"kind":"1304","justification":"1009"},{"messageId":"1254","fix":"1339","desc":"1256"},{"messageId":"1257","fix":"1340","desc":"1259"},{"kind":"1304","justification":"1009"},"suggestUnknown",{"range":"1341","text":"1342"},"Use `unknown` instead, this will force you to explicitly, and safely assert the type is correct.","suggestNever",{"range":"1343","text":"1344"},"Use `never` instead, this is useful when instantiating generic type parameters that you don't need to know the type of.",{"range":"1345","text":"1342"},{"range":"1346","text":"1344"},{"range":"1347","text":"1342"},{"range":"1348","text":"1344"},{"range":"1349","text":"1342"},{"range":"1350","text":"1344"},{"range":"1351","text":"1342"},{"range":"1352","text":"1344"},{"range":"1353","text":"1342"},{"range":"1354","text":"1344"},{"range":"1355","text":"1342"},{"range":"1356","text":"1344"},{"range":"1357","text":"1342"},{"range":"1358","text":"1344"},{"range":"1359","text":"1342"},{"range":"1360","text":"1344"},{"range":"1361","text":"1342"},{"range":"1362","text":"1344"},{"range":"1363","text":"1342"},{"range":"1364","text":"1344"},{"range":"1365","text":"1342"},{"range":"1366","text":"1344"},{"range":"1367","text":"1342"},{"range":"1368","text":"1344"},{"range":"1369","text":"1342"},{"range":"1370","text":"1344"},{"range":"1371","text":"1342"},{"range":"1372","text":"1344"},{"range":"1373","text":"1342"},{"range":"1374","text":"1344"},{"range":"1375","text":"1342"},{"range":"1376","text":"1344"},{"range":"1377","text":"1342"},{"range":"1378","text":"1344"},{"range":"1379","text":"1342"},{"range":"1380","text":"1344"},"Update the dependencies array to be: [form, settingFields]",{"range":"1381","text":"1382"},{"range":"1383","text":"1342"},{"range":"1384","text":"1344"},{"range":"1385","text":"1342"},{"range":"1386","text":"1344"},"Update the dependencies array to be: [run, timeToCount]",{"range":"1387","text":"1388"},"directive","Update the dependencies array to be: [run]",{"range":"1389","text":"1390"},"Update the dependencies array to be: [pause, reset, resume, start]",{"range":"1391","text":"1392"},{"range":"1393","text":"1342"},{"range":"1394","text":"1344"},{"range":"1395","text":"1342"},{"range":"1396","text":"1344"},{"range":"1397","text":"1342"},{"range":"1398","text":"1344"},{"range":"1399","text":"1342"},{"range":"1400","text":"1344"},{"range":"1401","text":"1342"},{"range":"1402","text":"1344"},{"range":"1403","text":"1342"},{"range":"1404","text":"1344"},{"range":"1405","text":"1342"},{"range":"1406","text":"1344"},{"range":"1407","text":"1342"},{"range":"1408","text":"1344"},{"range":"1409","text":"1342"},{"range":"1410","text":"1344"},{"range":"1411","text":"1342"},{"range":"1412","text":"1344"},{"range":"1413","text":"1342"},{"range":"1414","text":"1344"},{"range":"1415","text":"1342"},{"range":"1416","text":"1344"},{"range":"1417","text":"1342"},{"range":"1418","text":"1344"},{"range":"1419","text":"1342"},{"range":"1420","text":"1344"},{"range":"1421","text":"1342"},{"range":"1422","text":"1344"},{"range":"1423","text":"1342"},{"range":"1424","text":"1344"},[11715,11718],"unknown",[11715,11718],"never",[11821,11824],[11821,11824],[11926,11929],[11926,11929],[11985,11988],[11985,11988],[12207,12210],[12207,12210],[12246,12249],[12246,12249],[12375,12378],[12375,12378],[12690,12693],[12690,12693],[12816,12819],[12816,12819],[298,301],[298,301],[316,319],[316,319],[447,450],[447,450],[588,591],[588,591],[605,608],[605,608],[242,245],[242,245],[246,249],[246,249],[283,286],[283,286],[674,677],[674,677],[715,718],[715,718],[806,808],"[form, settingFields]",[856,859],[856,859],[1384,1387],[1384,1387],[2044,2046],"[run, timeToCount]",[2624,2626],"[run]",[3105,3107],"[pause, reset, resume, start]",[256,259],[256,259],[266,269],[266,269],[880,883],[880,883],[2233,2236],[2233,2236],[2288,2291],[2288,2291],[4127,4130],[4127,4130],[4190,4193],[4190,4193],[979,982],[979,982],[1070,1073],[1070,1073],[1162,1165],[1162,1165],[1330,1333],[1330,1333],[1418,1421],[1418,1421],[1566,1569],[1566,1569],[1739,1742],[1739,1742],[1843,1846],[1843,1846],[1923,1926],[1923,1926]] \ No newline at end of file diff --git a/deploy/set-artifact-name.js b/deploy/set-artifact-name.js index f6ac679..628c520 100644 --- a/deploy/set-artifact-name.js +++ b/deploy/set-artifact-name.js @@ -1,29 +1,29 @@ #!/usr/bin/env node // Cross-platform script to set artifact naming based on version -const fs = require('fs'); -const path = require('path'); -const { spawn } = require('child_process'); +const fs = require("fs"); +const path = require("path"); +const { spawn } = require("child_process"); // Read the package.json to get the version -const packageJsonPath = path.join(__dirname, '..', 'package.json'); -const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8')); +const packageJsonPath = path.join(__dirname, "..", "package.json"); +const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8")); const version = packageJson.version; console.log(`Current version: ${version}`); // Determine the artifact suffix based on the version -let artifactSuffix = ''; +let artifactSuffix = ""; -if (version.includes('alpha')) { - artifactSuffix = `alpha-${version}-`; - console.log(`Detected alpha version, setting suffix to: ${artifactSuffix}`); -} else if (version.includes('beta')) { - artifactSuffix = `beta-${version}-`; - console.log(`Detected beta version, setting suffix to: ${artifactSuffix}`); +if (version.includes("alpha")) { + artifactSuffix = `alpha-${version}-`; + console.log(`Detected alpha version, setting suffix to: ${artifactSuffix}`); +} else if (version.includes("beta")) { + artifactSuffix = `beta-${version}-`; + console.log(`Detected beta version, setting suffix to: ${artifactSuffix}`); } else { - artifactSuffix = ''; - console.log('Detected release version, no suffix will be added'); + artifactSuffix = ""; + console.log("Detected release version, no suffix will be added"); } // Set the environment variable for the current process @@ -33,21 +33,23 @@ console.log(`ARTIFACT_SUFFIX set to: '${artifactSuffix}'`); // If arguments are passed, execute the remaining command with the environment variable set if (process.argv.length > 2) { - const command = process.argv[2]; - const args = process.argv.slice(3); + const command = process.argv[2]; + const args = process.argv.slice(3); - console.log(`Executing: ${command} ${args.join(' ')}`); + console.log(`Executing: ${command} ${args.join(" ")}`); - const child = spawn(command, args, { - stdio: 'inherit', - env: { ...process.env, ARTIFACT_SUFFIX: artifactSuffix }, - shell: true - }); + const child = spawn(command, args, { + stdio: "inherit", + env: { ...process.env, ARTIFACT_SUFFIX: artifactSuffix }, + shell: true, + }); - child.on('close', (code) => { - process.exit(code); - }); + child.on("close", (code) => { + process.exit(code); + }); } else { - // Just setting the environment variable - console.log('Environment variable set. Use this script with additional arguments to run commands with the variable set.'); + // Just setting the environment variable + console.log( + "Environment variable set. Use this script with additional arguments to run commands with the variable set.", + ); } diff --git a/deploy/test-artifact-naming-cross-platform.js b/deploy/test-artifact-naming-cross-platform.js index f8c0ef4..92dcc2b 100644 --- a/deploy/test-artifact-naming-cross-platform.js +++ b/deploy/test-artifact-naming-cross-platform.js @@ -1,64 +1,64 @@ #!/usr/bin/env node // Cross-platform test script to demonstrate artifact naming for different versions -const fs = require('fs'); -const path = require('path'); +const fs = require("fs"); +const path = require("path"); -console.log('=== Artifact Naming Test (Cross-Platform) ==='); -console.log(''); +console.log("=== Artifact Naming Test (Cross-Platform) ==="); +console.log(""); // Get current version -const packageJsonPath = path.join(__dirname, '..', 'package.json'); -const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8')); +const packageJsonPath = path.join(__dirname, "..", "package.json"); +const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, "utf8")); const currentVersion = packageJson.version; console.log(`Current version: ${currentVersion}`); // Function to get artifact suffix function getArtifactSuffix(version) { - if (version.includes('alpha')) { - return `alpha-${version}-`; - } else if (version.includes('beta')) { - return `beta-${version}-`; - } else { - return ''; - } + if (version.includes("alpha")) { + return `alpha-${version}-`; + } else if (version.includes("beta")) { + return `beta-${version}-`; + } else { + return ""; + } } // Test scenarios const testVersions = [ - '1.0.5', // Release version - '1.0.5-alpha.2', // Alpha version - '1.0.5-beta.1', // Beta version - '2.0.0-alpha.1', // Another alpha - '1.5.0-beta.3' // Another beta + "1.0.5", // Release version + "1.0.5-alpha.2", // Alpha version + "1.0.5-beta.1", // Beta version + "2.0.0-alpha.1", // Another alpha + "1.5.0-beta.3", // Another beta ]; -console.log('Test scenarios:'); -console.log('=================='); +console.log("Test scenarios:"); +console.log("=================="); -testVersions.forEach(version => { - const suffix = getArtifactSuffix(version); - - // Different artifact names for different platforms - const windowsArtifact = `imex-partner-${suffix}x64.exe`; - const macArtifact = `imex-partner-${suffix}x64.dmg`; - const linuxArtifact = `imex-partner-${suffix}x64.AppImage`; - - console.log(`Version: ${version}`); - console.log(` Suffix: '${suffix}'`); - console.log(` Windows: ${windowsArtifact}`); - console.log(` Mac: ${macArtifact}`); - console.log(` Linux: ${linuxArtifact}`); - console.log(''); +testVersions.forEach((version) => { + const suffix = getArtifactSuffix(version); + + // Different artifact names for different platforms + const windowsArtifact = `imex-partner-${suffix}x64.exe`; + const macArtifact = `imex-partner-${suffix}x64.dmg`; + const linuxArtifact = `imex-partner-${suffix}x64.AppImage`; + + console.log(`Version: ${version}`); + console.log(` Suffix: '${suffix}'`); + console.log(` Windows: ${windowsArtifact}`); + console.log(` Mac: ${macArtifact}`); + console.log(` Linux: ${linuxArtifact}`); + console.log(""); }); -console.log('Current configuration will produce:'); +console.log("Current configuration will produce:"); const currentSuffix = getArtifactSuffix(currentVersion); console.log(` Windows: imex-partner-${currentSuffix}x64.exe`); console.log(` Mac: imex-partner-${currentSuffix}x64.dmg`); console.log(` Linux: imex-partner-${currentSuffix}x64.AppImage`); -console.log(''); +console.log(""); console.log(`Platform detected: ${process.platform}`); console.log(`Architecture: ${process.arch}`); diff --git a/eslint.config.mjs b/eslint.config.mjs index 5ca7adc..8fff8cc 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -5,44 +5,42 @@ import eslintPluginReactHooks from "eslint-plugin-react-hooks"; import eslintPluginReactRefresh from "eslint-plugin-react-refresh"; export default tseslint.config( - { ignores: ["**/node_modules", "**/dist", "**/out", "**/.serverless"] }, - { - files: ["**/*.{ts,tsx}"], - extends: [tseslint.configs.recommended], + { ignores: ["**/node_modules", "**/dist", "**/out", "**/.serverless"] }, + { + files: ["**/*.{ts,tsx}"], + extends: [tseslint.configs.recommended], + }, + eslintPluginReact.configs.flat.recommended, + eslintPluginReact.configs.flat["jsx-runtime"], + { + settings: { + react: { + version: "detect", + }, }, - eslintPluginReact.configs.flat.recommended, - eslintPluginReact.configs.flat["jsx-runtime"], - { - settings: { - react: { - version: "detect", - }, - }, + }, + { + files: ["**/*.{ts,tsx}"], + plugins: { + "react-hooks": eslintPluginReactHooks, + "react-refresh": eslintPluginReactRefresh, }, - { - files: ["**/*.{ts,tsx}"], - plugins: { - "react-hooks": eslintPluginReactHooks, - "react-refresh": eslintPluginReactRefresh, - }, - rules: { - ...eslintPluginReactHooks.configs.recommended.rules, - ...eslintPluginReactRefresh.configs.vite.rules, - }, - + rules: { + ...eslintPluginReactHooks.configs.recommended.rules, + ...eslintPluginReactRefresh.configs.vite.rules, }, - { - files: ["serverless/**/*.js"], - rules: { - "no-unused-vars": ["error", { "argsIgnorePattern": "^_" }], - }, + }, + { + files: ["serverless/**/*.js"], + rules: { + "no-unused-vars": ["error", { argsIgnorePattern: "^_" }], }, - { - files: ["**/*.{js,mjs,ts,tsx,jsx,tsx}"], - rules: { - "prettier/prettier": ["error", { "endOfLine": "auto" }] - } + }, + { + files: ["**/*.{js,mjs,ts,tsx,jsx,tsx}"], + rules: { + "prettier/prettier": ["error", { endOfLine: "auto" }], }, - eslintConfigPrettier, -) - + }, + eslintConfigPrettier, +); diff --git a/serverless/.gitignore b/serverless/.gitignore index e0a19b5..2be1976 100644 --- a/serverless/.gitignore +++ b/serverless/.gitignore @@ -29,3 +29,5 @@ yarn-error.log* .env .env.local .env.*.local +. +.eslintcache \ No newline at end of file diff --git a/serverless/src/handlers/emsupload.ts b/serverless/src/handlers/emsupload.ts index b34504f..3ce02f7 100644 --- a/serverless/src/handlers/emsupload.ts +++ b/serverless/src/handlers/emsupload.ts @@ -27,7 +27,7 @@ interface EmsUploadResponse { * @param {string} esApiKey - The ES API Key to validate * @returns {boolean} - Always returns true for now (placeholder) */ -function validateEmsUploadId(_esApiKey: string): boolean { +function validateEmsUploadId(): boolean { // Placeholder validation - always returns true // TODO: Implement actual validation logic return true; @@ -54,7 +54,7 @@ export const handler = async (event: APIGatewayProxyEvent): Promise { mainWindow.show(); mainWindow.focus(); if (scrubHistoryJobId) { - mainWindow.webContents.send( - ipcTypes.toRenderer.scrub.openHistoryItem, - { jobId: scrubHistoryJobId }, - ); + mainWindow.webContents.send(ipcTypes.toRenderer.scrub.openHistoryItem, { + jobId: scrubHistoryJobId, + }); } }; @@ -362,6 +361,13 @@ export function ReplaceOwnerInfoWithClaimant< > >, >(jobObject: T): T { + const mutableJob = jobObject as T & + Record & { + owner?: { + data?: Record; + }; + }; + // Promote claimant data first if owner identity is entirely missing; otherwise fallback to insured data. const identityKeys = ["ln", "fn", "co_nm"] as const; // keys used to determine presence const copyKeys = [ @@ -381,27 +387,23 @@ export function ReplaceOwnerInfoWithClaimant< ] as const; // full set of fields to copy/delete const ownerMissing = identityKeys.every((k) => - _.isEmpty((jobObject as any)[`ownr_${k}`]), + _.isEmpty(mutableJob[`ownr_${k}`]), ); const claimantHasSome = identityKeys.some( - (k) => !_.isEmpty((jobObject as any)[`clmt_${k}`]), + (k) => !_.isEmpty(mutableJob[`clmt_${k}`]), ); const claimantMissing = identityKeys.every((k) => - _.isEmpty((jobObject as any)[`clmt_${k}`]), + _.isEmpty(mutableJob[`clmt_${k}`]), ); - const { owner } = jobObject as any; // destructure for optional nested updates + const { owner } = mutableJob; // destructure for optional nested updates // Copy helper inline (no extra function as requested) const promote = (sourcePrefix: "clmt" | "insd"): void => { copyKeys.forEach((suffix) => { - (jobObject as any)[`ownr_${suffix}`] = (jobObject as any)[ - `${sourcePrefix}_${suffix}` - ]; + mutableJob[`ownr_${suffix}`] = mutableJob[`${sourcePrefix}_${suffix}`]; if (owner?.data) { - owner.data[`ownr_${suffix}`] = (jobObject as any)[ - `${sourcePrefix}_${suffix}` - ]; + owner.data[`ownr_${suffix}`] = mutableJob[`${sourcePrefix}_${suffix}`]; } }); }; @@ -413,9 +415,9 @@ export function ReplaceOwnerInfoWithClaimant< } // Delete the claimant info as it's not needed. - copyKeys.forEach((suffix) => delete (jobObject as any)[`clmt_${suffix}`]); + copyKeys.forEach((suffix) => delete mutableJob[`clmt_${suffix}`]); // Delete the insured info as it's not needed. - copyKeys.forEach((suffix) => delete (jobObject as any)[`insd_${suffix}`]); + copyKeys.forEach((suffix) => delete mutableJob[`insd_${suffix}`]); return jobObject; } diff --git a/src/main/index.ts b/src/main/index.ts index 7fc8464..f0d7e49 100644 --- a/src/main/index.ts +++ b/src/main/index.ts @@ -107,7 +107,7 @@ function createWindow(): void { const template = [ // { role: 'appMenu' } - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. ...(isMac ? [ { @@ -128,7 +128,7 @@ function createWindow(): void { { label: "File", submenu: [ - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. isMac ? { role: "close" } : { role: "quit" }, ], }, @@ -142,7 +142,7 @@ function createWindow(): void { { role: "cut" }, { role: "copy" }, { role: "paste" }, - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. ...(isMac ? [ { role: "pasteAndMatchStyle" }, @@ -160,7 +160,7 @@ function createWindow(): void { // { role: 'viewMenu' } { label: "View", - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. submenu: [ { role: "reload" }, { role: "forceReload" }, @@ -175,7 +175,7 @@ function createWindow(): void { }, { label: "Application", - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. submenu: [ { label: "Open on Startup", @@ -376,7 +376,7 @@ function createWindow(): void { submenu: [ { role: "minimize" }, { role: "zoom" }, - // @ts-ignore + // @ts-ignore -- Electron menu role unions are narrower than this conditional template. ...(isMac ? [ { type: "separator" }, @@ -399,7 +399,7 @@ function createWindow(): void { // Update the menu to make the hidden item visible // Find the menu item dynamically by its id const fileMenu = template.find((item) => item.label === "Application"); - // @ts-ignore + // @ts-ignore -- Electron menu submenu typing does not expose array helpers after casting. const hiddenItem = fileMenu?.submenu?.find( (item: { id: string }) => item.id === "development", ); diff --git a/src/main/ipc/ipcMainConfig.types.ts b/src/main/ipc/ipcMainConfig.types.ts index e61c317..ded1cc4 100644 --- a/src/main/ipc/ipcMainConfig.types.ts +++ b/src/main/ipc/ipcMainConfig.types.ts @@ -15,8 +15,8 @@ export interface GraphQLResponse { shopname: string; }; jobs?: Array<{ - labhrs: any; - larhrs: any; + labhrs: unknown; + larhrs: unknown; ro_number: string; ownr_ln: string; ownr_fn: string; diff --git a/src/main/ipc/ipcMainHandler.settings.ts b/src/main/ipc/ipcMainHandler.settings.ts index b9921de..f9dddbf 100644 --- a/src/main/ipc/ipcMainHandler.settings.ts +++ b/src/main/ipc/ipcMainHandler.settings.ts @@ -14,15 +14,15 @@ import { const getSetting = async ( _event: IpcMainInvokeEvent, key: string, -): Promise => { +): Promise => { return Store.get(`settings.${key}`); }; const setSetting = async ( _event: IpcMainInvokeEvent, key: string, - value: any, -): Promise => { + value: unknown, +): Promise => { Store.set(`settings.${key}`, value); return Store.get(`settings.${key}`); }; diff --git a/src/main/util/toRenderer.ts b/src/main/util/toRenderer.ts index 39b23f2..9e77113 100644 --- a/src/main/util/toRenderer.ts +++ b/src/main/util/toRenderer.ts @@ -1,11 +1,11 @@ -import {BrowserWindow} from "electron"; +import { BrowserWindow } from "electron"; import log from "electron-log/main"; const getMainWindow = (): Electron.BrowserWindow => { return BrowserWindow.getAllWindows()[0]; }; -const sendIpcToRenderer = (ipcMessage: string, ...args: any[]): void => { +const sendIpcToRenderer = (ipcMessage: string, ...args: unknown[]): void => { const window = getMainWindow(); if (window) { window.webContents.send(ipcMessage, ...args); diff --git a/src/main/util/trayStatus.ts b/src/main/util/trayStatus.ts index 888b2b1..bd757a7 100644 --- a/src/main/util/trayStatus.ts +++ b/src/main/util/trayStatus.ts @@ -1,4 +1,5 @@ import { nativeImage, type NativeImage, type Tray } from "electron"; +import { PNG } from "pngjs"; let trayInstance: Tray | undefined; let trayBaseImage: NativeImage | undefined; @@ -29,29 +30,8 @@ function buildStatusTrayImage( started: boolean, ): NativeImage { try { - const pngjs = (() => { - try { - return require("pngjs") as { - PNG?: { - sync?: { - read?: (b: Buffer) => unknown; - write?: (p: unknown) => Buffer; - }; - }; - }; - } catch { - return null; - } - })(); - - if (!pngjs?.PNG?.sync?.read || !pngjs.PNG.sync.write) return base; - const basePng = base.toPNG(); - const png = pngjs.PNG.sync.read(basePng) as { - width: number; - height: number; - data: Uint8Array; - }; + const png = PNG.sync.read(basePng); const width = png.width; const height = png.height; @@ -86,7 +66,7 @@ function buildStatusTrayImage( } } - return nativeImage.createFromBuffer(pngjs.PNG.sync.write(png)); + return nativeImage.createFromBuffer(PNG.sync.write(png)); } catch { return base; } diff --git a/src/main/util/uppercaseObjectKeys.ts b/src/main/util/uppercaseObjectKeys.ts index 44b9ec3..741d73e 100644 --- a/src/main/util/uppercaseObjectKeys.ts +++ b/src/main/util/uppercaseObjectKeys.ts @@ -3,22 +3,22 @@ * @param obj The object whose keys need to be converted to uppercase * @returns A new object with all keys converted to uppercase */ -function uppercaseObjectKeys>( - obj: T, -): Record { - if (typeof obj !== "object" || obj === null) { - return obj; - } +function isRecord(value: unknown): value is Record { + return typeof value === "object" && value !== null; +} +function uppercaseObjectKeys( + obj: Record, +): Record { return Object.entries(obj).reduce( (result, [key, value]) => { const uppercaseKey = key.toUpperCase(); - result[uppercaseKey] = typeof value === "object" && value !== null - ? uppercaseObjectKeys(value) - : value; + result[uppercaseKey] = isRecord(value) + ? uppercaseObjectKeys(value) + : value; return result; }, - {} as Record, + {} as Record, ); } export default uppercaseObjectKeys; diff --git a/src/renderer/src/components/Settings/Settings.Config.tsx b/src/renderer/src/components/Settings/Settings.Config.tsx index e019800..5803cf4 100644 --- a/src/renderer/src/components/Settings/Settings.Config.tsx +++ b/src/renderer/src/components/Settings/Settings.Config.tsx @@ -1,5 +1,6 @@ import { Card, Form, Input, Space } from "antd"; -import { FC, useEffect } from "react"; +import type { FormProps } from "antd"; +import { FC, useEffect, useMemo } from "react"; import { useTranslation } from "react-i18next"; import ipcTypes from "../../../../util/ipcTypes.json"; @@ -7,31 +8,36 @@ const SettingsConfig: FC = () => { const { t } = useTranslation(); const [form] = Form.useForm(); - const settingFields = [ - { - name: "esApiKey", - label: t("settings.labels.esApiKey"), - component: Input.Password, - hasFeedback: true, - componentProps: { - placeholder: "Enter your API key", + const settingFields = useMemo( + () => [ + { + name: "esApiKey", + label: t("settings.labels.esApiKey"), + component: Input.Password, + hasFeedback: true, + componentProps: { + placeholder: "Enter your API key", + }, }, - }, - ]; + ], + [t], + ); useEffect(() => { settingFields.forEach((field) => { window.electron.ipcRenderer .invoke(ipcTypes.toMain.settings.get, field.name) - .then((value: any) => { + .then((value: unknown) => { form.setFieldsValue({ [field.name]: value }); }); }); - }, []); + }, [form, settingFields]); - const handleFieldChange = (changedFields: any): void => { + const handleFieldChange: FormProps["onFieldsChange"] = (changedFields) => { changedFields.forEach((field) => { - const fieldName = field.name[0]; + const fieldName = Array.isArray(field.name) + ? String(field.name[0]) + : String(field.name); const { value } = field; // Placeholder for validation @@ -46,7 +52,7 @@ const SettingsConfig: FC = () => { }); }; - const validateField = (fieldName: string, value: any): boolean => { + const validateField = (fieldName: string, value: unknown): boolean => { // Placeholder for actual validation logic console.log(`Validating ${fieldName}:`, value); return true; diff --git a/src/renderer/src/util/notificationContext.tsx b/src/renderer/src/util/notificationContext.tsx index efec48a..89de0a1 100644 --- a/src/renderer/src/util/notificationContext.tsx +++ b/src/renderer/src/util/notificationContext.tsx @@ -1,17 +1,19 @@ -import {createContext, FC, ReactNode, useContext} from "react"; +import { createContext, FC, ReactNode, useContext } from "react"; import { notification } from "antd"; /** * Create our NotificationContext to store the `api` object * returned by notification.useNotification(). */ -const NotificationContext = createContext(null); +type NotificationApi = ReturnType[0]; + +const NotificationContext = createContext(null); /** * A custom hook to make usage easier in child components. */ -// eslint-disable-next-line react-refresh/only-export-components, @typescript-eslint/explicit-function-return-type -export const useNotification = () => { +// eslint-disable-next-line react-refresh/only-export-components +export const useNotification = (): NotificationApi | null => { return useContext(NotificationContext); }; @@ -26,8 +28,7 @@ interface NotificationProviderProps { } export const NotificationProvider: FC = ({ - // eslint-disable-next-line react/prop-types - children, //TODO: Unable to resolve this. Adding an eslint disable. + children, }) => { const [api, contextHolder] = notification.useNotification({ placement: "bottomRight", @@ -36,7 +37,6 @@ export const NotificationProvider: FC = ({ }); return ( - // @ts-ignore {/* contextHolder must be rendered in the DOM so notifications can appear */} {contextHolder} diff --git a/src/util/memUsage.ts b/src/util/memUsage.ts index 946a72a..a74bb25 100644 --- a/src/util/memUsage.ts +++ b/src/util/memUsage.ts @@ -3,6 +3,7 @@ import log from "electron-log/main"; import fs from "fs"; import os from "os"; import path from "path"; +import * as v8 from "v8"; import Store from "../main/store/store"; /** * Human-readable memory/cpu/resource snapshot. @@ -39,6 +40,10 @@ export type MemoryUsageStats = { }; // (merged into top import) +type GlobalWithGc = typeof globalThis & { + gc?: () => void; +}; + /** * Options for dumpMemoryStats. */ @@ -89,9 +94,11 @@ export async function dumpMemoryStats( } = options; // Allow GC if requested and available to get a cleaner snapshot - if (runGc && typeof (global as any).gc === "function") { + const runtimeGlobal = globalThis as GlobalWithGc; + + if (runGc && typeof runtimeGlobal.gc === "function") { try { - (global as any).gc(); + runtimeGlobal.gc(); } catch { // ignore GC errors } @@ -143,8 +150,6 @@ export async function dumpMemoryStats( if (includeHeapSpaces) { try { - // eslint-disable-next-line @typescript-eslint/no-var-requires - const v8: typeof import("v8") = require("v8"); if (typeof v8.getHeapSpaceStatistics === "function") { stats.heapSpaces = v8.getHeapSpaceStatistics(); } @@ -155,15 +160,13 @@ export async function dumpMemoryStats( if (writeHeapSnapshot) { try { - if (!runGc && typeof (global as any).gc === "function") { + if (!runGc && typeof runtimeGlobal.gc === "function") { try { - (global as any).gc(); + runtimeGlobal.gc(); } catch { /* ignore */ } } - // eslint-disable-next-line @typescript-eslint/no-var-requires - const v8: typeof import("v8") = require("v8"); if (typeof v8.writeHeapSnapshot === "function") { const baseDir = heapSnapshotDir || path.dirname(log.transports.file.getFile().path);