New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

crashme

Package Overview
Dependencies
Maintainers
0
Versions
12
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

crashme - npm Package Compare versions

Comparing version 0.0.12 to 0.0.13

28

dist/events.d.ts

@@ -7,6 +7,6 @@ import { BaseStateReport } from './types';

event: 'start';
info: BaseStateReport;
report: BaseStateReport;
};
export declare function isStartEvent(event: any): event is StartEvent;
export declare function createStartEvent(info: BaseStateReport): StartEvent;
export declare function createStartEvent(report: BaseStateReport): StartEvent;
/**

@@ -25,6 +25,6 @@ * Sent from WebWorker to the main thread to force an update

event: 'update';
info: BaseStateReport;
report: BaseStateReport;
};
export declare function isUpdateEvent(event: any): event is UpdateEvent;
export declare function createUpdateEvent(info: BaseStateReport): UpdateEvent;
export declare function createUpdateEvent(report: BaseStateReport): UpdateEvent;
/**

@@ -35,6 +35,6 @@ * Send from main thread to WebWorker when browser tab is closed correctly

event: 'close';
info: BaseStateReport;
id: IDBValidKey;
};
export declare function isCloseEvent(event: any): event is CloseEvent;
export declare function createCloseEvent(info: BaseStateReport): CloseEvent;
export declare function createCloseEvent(id: IDBValidKey): CloseEvent;
/**

@@ -45,7 +45,7 @@ * Sent from detector SharedWorker to main thread to indicate a crash was detected

event: 'crash-detected';
tab: BaseStateReport;
reporter: BaseStateReport;
report: BaseStateReport;
senderId: IDBValidKey;
};
export declare function isCrashDetectedEvent(event: any): event is CrashDetectedEvent;
export declare function createCrashDetectedEvent(tab: BaseStateReport, reporter: BaseStateReport): CrashDetectedEvent;
export declare function createCrashDetectedEvent(report: BaseStateReport, senderId: IDBValidKey): CrashDetectedEvent;
/**

@@ -56,7 +56,7 @@ * Sent from detector SharedWorker to main thread to indicate a stale tab was detected

event: 'stale-tab-detected';
tab: BaseStateReport;
reporter: BaseStateReport;
report: BaseStateReport;
senderId: IDBValidKey;
};
export declare function isStaleTabDetectedEvent(event: any): event is StaleTabDetectedEvent;
export declare function createStaleTabDetectedEvent(tab: BaseStateReport, reporter: BaseStateReport): StaleTabDetectedEvent;
export declare function createStaleTabDetectedEvent(report: BaseStateReport, senderId: IDBValidKey): StaleTabDetectedEvent;
/**

@@ -73,5 +73,5 @@ * Sent from the main thread to detector SharedWorker to indicate the crash was successfully reported

event: 'stale-tab-reported';
tab: BaseStateReport;
report: BaseStateReport;
};
export declare function isStaleTabReportedEvent(event: any): event is StaleTabReportedEvent;
export declare function createStaleTabReportedEvent(tab: BaseStateReport): StaleTabReportedEvent;
export declare function createStaleTabReportedEvent(report: BaseStateReport): StaleTabReportedEvent;

@@ -43,6 +43,6 @@ (function webpackUniversalModuleDefinition(root, factory) {

}
function createStartEvent(info) {
function createStartEvent(report) {
return {
event: 'start',
info: info,
report: report,
};

@@ -59,4 +59,4 @@ }

}
function createUpdateEvent(info) {
return { event: 'update', info: info };
function createUpdateEvent(report) {
return { event: 'update', report: report };
}

@@ -66,6 +66,6 @@ function isCloseEvent(event) {

}
function createCloseEvent(info) {
function createCloseEvent(id) {
return {
event: 'close',
info: info,
id: id,
};

@@ -76,7 +76,7 @@ }

}
function createCrashDetectedEvent(tab, reporter) {
function createCrashDetectedEvent(report, senderId) {
return {
event: 'crash-detected',
tab: tab,
reporter: reporter,
report: report,
senderId: senderId,
};

@@ -87,7 +87,7 @@ }

}
function createStaleTabDetectedEvent(tab, reporter) {
function createStaleTabDetectedEvent(report, senderId) {
return {
event: 'stale-tab-detected',
tab: tab,
reporter: reporter,
report: report,
senderId: senderId,
};

@@ -107,6 +107,6 @@ }

}
function createStaleTabReportedEvent(tab) {
function createStaleTabReportedEvent(report) {
return {
event: 'stale-tab-reported',
tab: tab,
report: report,
};

@@ -217,3 +217,3 @@ }

tabLastActive = Date.now();
lastStateReport = structuredClone(message.data.info);
lastStateReport = structuredClone(message.data.report);
// saving cannot happen here because message may not be sent when tab is paused (e.g. while debugging)

@@ -230,3 +230,3 @@ }

store = transaction.objectStore('tabs');
store.delete(message.data.info.id);
store.delete(message.data.id);
db = undefined;

@@ -328,3 +328,3 @@ }

var store = transaction.objectStore('tabs');
store.put(__assign(__assign({}, event.data.tab), { staleReported: true }));
store.put(__assign(__assign({}, event.data.report), { staleReported: true }));
}

@@ -363,11 +363,11 @@ }

var reporter = activeTabs.pop(); // must be defined based on the check above
inactiveTabs.forEach(function (tab) {
inactiveTabs.forEach(function (report) {
openPorts.forEach(function (port) {
var event = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCrashDetectedEvent)(tab, reporter);
var event = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCrashDetectedEvent)(report, reporter.id);
port.postMessage(event);
});
});
staleTabs.forEach(function (tab) {
staleTabs.forEach(function (report) {
openPorts.forEach(function (port) {
var event = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createStaleTabDetectedEvent)(tab, reporter);
var event = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createStaleTabDetectedEvent)(report, reporter.id);
port.postMessage(event);

@@ -473,8 +473,8 @@ });

return __awaiter(this, void 0, void 0, function () {
var tab, success, crashReportedEvent, tab, success, staleTabReportedEvent;
var tab, success, crashReportedEvent, report, success, staleTabReportedEvent;
return __generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!((0,_events__WEBPACK_IMPORTED_MODULE_1__.isCrashDetectedEvent)(message.data) && message.data.reporter.id === stateReport.id)) return [3 /*break*/, 2];
tab = message.data.tab;
if (!((0,_events__WEBPACK_IMPORTED_MODULE_1__.isCrashDetectedEvent)(message.data) && message.data.senderId === stateReport.id)) return [3 /*break*/, 2];
tab = message.data.report;
return [4 /*yield*/, options.reportCrash(tab)];

@@ -484,3 +484,3 @@ case 1:

if (success) {
crashReportedEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCrashReportedEvent)(message.data.tab.id);
crashReportedEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCrashReportedEvent)(message.data.report.id);
detector.port.postMessage(crashReportedEvent);

@@ -490,11 +490,9 @@ }

case 2:
if (!(options.reportStaleTab &&
(0,_events__WEBPACK_IMPORTED_MODULE_1__.isStaleTabDetectedEvent)(message.data) &&
message.data.reporter.id === stateReport.id)) return [3 /*break*/, 4];
tab = message.data.tab;
return [4 /*yield*/, options.reportStaleTab(tab)];
if (!(options.reportStaleTab && (0,_events__WEBPACK_IMPORTED_MODULE_1__.isStaleTabDetectedEvent)(message.data) && message.data.senderId === stateReport.id)) return [3 /*break*/, 4];
report = message.data.report;
return [4 /*yield*/, options.reportStaleTab(report)];
case 3:
success = _a.sent();
if (success) {
staleTabReportedEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createStaleTabReportedEvent)(message.data.tab);
staleTabReportedEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createStaleTabReportedEvent)(message.data.report);
detector.port.postMessage(staleTabReportedEvent);

@@ -553,3 +551,3 @@ }

store.delete(stateReport.id);
var closeEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCloseEvent)(stateReport);
var closeEvent = (0,_events__WEBPACK_IMPORTED_MODULE_1__.createCloseEvent)(stateReport.id);
worker.postMessage(closeEvent);

@@ -556,0 +554,0 @@ unregisterWorkers();

{
"name": "crashme",
"version": "0.0.12",
"version": "0.0.13",
"main": "dist/lib.js",

@@ -5,0 +5,0 @@ "types": "dist/index.d.ts",

@@ -1,2 +0,2 @@

# Detecting Browser/Tab crashes POC
# Detecting Browser/Tab crashes

@@ -9,4 +9,4 @@ This POC shows how browser crashes could potentially be detected.

2. Run `npm run server`
3Open http://localhost:1234
3. You can open multiple tabs (each tab will get a unique name)
3. Open http://localhost:1234
You can open multiple tabs (each tab will get a unique name)
4. Logs are sent to the terminal via server.js

@@ -13,0 +13,0 @@ 5. Try various actions that can simulate a crash

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc