1. let sandboxTimestamps = {
  2. start: null,
  3. lastActivity: null,
  4. lastResourceLoad: null,
  5. executionTime: 0,
  6. errorCount: 0,
  7. };
  8. // Function to update the timestamp values
  9. function updateSandboxTimestamps(event) {
  10. if (event.type === 'sandbox:start') {
  11. sandboxTimestamps.start = new Date(); // Record sandbox start time
  12. sandboxTimestamps.lastActivity = sandboxTimestamps.start;
  13. sandboxTimestamps.lastResourceLoad = sandboxTimestamps.start;
  14. sandboxTimestamps.executionTime = 0;
  15. sandboxTimestamps.errorCount = 0;
  16. } else if (event.type === 'sandbox:activity') {
  17. sandboxTimestamps.lastActivity = new Date(); // Record last activity time
  18. } else if (event.type === 'sandbox:resourceLoad') {
  19. sandboxTimestamps.lastResourceLoad = new Date(); // Record last resource load time
  20. } else if (event.type === 'sandbox:error') {
  21. sandboxTimestamps.errorCount++; // Increment error count
  22. }
  23. }
  24. // Function to get the current timestamp values
  25. function getSandboxTimestamps() {
  26. return sandboxTimestamps;
  27. }
  28. //Example Usage - you would listen for events and call the update function.
  29. //This is just example and doesn't include event listener implementation
  30. //document.addEventListener('sandbox:start', (event) => {
  31. // updateSandboxTimestamps(event);
  32. //});
  33. //document.addEventListener('sandbox:activity', (event) => {
  34. // updateSandboxTimestamps(event);
  35. //});
  36. //document.addEventListener('sandbox:resourceLoad', (event) => {
  37. // updateSandboxTimestamps(event);
  38. //});
  39. //document.addEventListener('sandbox:error', (event) => {
  40. // updateSandboxTimestamps(event);
  41. //});

Add your comment