@alwaysmeticulous/cli 2.45.1 → 2.45.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -36,15 +36,42 @@ const openStepThroughDebuggerUI = async ({ onCloseReplayedPage, onLogEventTarget
36
36
  index: 0,
37
37
  loading: false,
38
38
  };
39
+ let readyPromiseResolve;
40
+ const readyPromise = new Promise((resolve) => {
41
+ readyPromiseResolve = resolve;
42
+ });
43
+ // This function is called by the UI itself
44
+ await debuggerPage.exposeFunction("__meticulous__replayDebuggerDispatchEvent", (eventType, data) => {
45
+ if (eventType === "ready") {
46
+ return onReady();
47
+ }
48
+ if (eventType === "check-next-target") {
49
+ if (state.index >= replayableEvents.length) {
50
+ logger.info("End of replay!");
51
+ return;
52
+ }
53
+ const nextEvent = state.events[state.index];
54
+ return onLogEventTarget(nextEvent);
55
+ }
56
+ if (eventType === "play-next-event") {
57
+ return onPlayNextEvent();
58
+ }
59
+ if (eventType === "set-index") {
60
+ return onAdvanceToIndex(data.index || 0);
61
+ }
62
+ logger.info(`[debugger-ui] Warning: received unknown event "${eventType}"`);
63
+ });
64
+ const onReady = async () => {
65
+ readyPromiseResolve();
66
+ await setState(state);
67
+ };
39
68
  const setState = async (newState) => {
69
+ await readyPromise;
40
70
  state = { ...state, ...newState };
41
71
  await debuggerPage.evaluate((state) => {
42
72
  window.__meticulous__replayDebuggerSetState(state);
43
73
  }, state);
44
74
  };
45
- const onReady = async () => {
46
- await setState(state);
47
- };
48
75
  let advanceToEvent = null;
49
76
  const onBeforeUserEvent = async ({ userEventIndex, }) => {
50
77
  await setState({
@@ -72,27 +99,6 @@ const openStepThroughDebuggerUI = async ({ onCloseReplayedPage, onLogEventTarget
72
99
  await setState({ loading: true });
73
100
  advanceToEvent === null || advanceToEvent === void 0 ? void 0 : advanceToEvent({ nextEventIndexToPauseBefore: targetIndex });
74
101
  };
75
- // This function is called by the UI itself
76
- await debuggerPage.exposeFunction("__meticulous__replayDebuggerDispatchEvent", (eventType, data) => {
77
- if (eventType === "ready") {
78
- return onReady();
79
- }
80
- if (eventType === "check-next-target") {
81
- if (state.index >= replayableEvents.length) {
82
- logger.info("End of replay!");
83
- return;
84
- }
85
- const nextEvent = state.events[state.index];
86
- return onLogEventTarget(nextEvent);
87
- }
88
- if (eventType === "play-next-event") {
89
- return onPlayNextEvent();
90
- }
91
- if (eventType === "set-index") {
92
- return onAdvanceToIndex(data.index || 0);
93
- }
94
- logger.info(`[debugger-ui] Warning: received unknown event "${eventType}"`);
95
- });
96
102
  logger.info(`[debugger-ui] Navigating to ${uiServer.url}...`);
97
103
  const res = await debuggerPage.goto(uiServer.url, {
98
104
  waitUntil: "domcontentloaded",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@alwaysmeticulous/cli",
3
- "version": "2.45.1",
3
+ "version": "2.45.2",
4
4
  "description": "The Meticulous CLI",
5
5
  "license": "ISC",
6
6
  "main": "dist/index.js",
@@ -32,7 +32,7 @@
32
32
  "@alwaysmeticulous/common": "^2.44.1",
33
33
  "@alwaysmeticulous/downloading-helpers": "^2.44.1",
34
34
  "@alwaysmeticulous/record": "^2.44.1",
35
- "@alwaysmeticulous/replay-debugger-ui": "^2.45.1",
35
+ "@alwaysmeticulous/replay-debugger-ui": "^2.45.2",
36
36
  "@alwaysmeticulous/replay-orchestrator-launcher": "^2.45.0",
37
37
  "@alwaysmeticulous/sdk-bundles-api": "^2.45.0",
38
38
  "@alwaysmeticulous/sentry": "^2.40.0",
@@ -79,5 +79,5 @@
79
79
  "coverageDirectory": "../coverage",
80
80
  "testEnvironment": "node"
81
81
  },
82
- "gitHead": "05823c058b305c65ca379238d5a8ddf475681a61"
82
+ "gitHead": "3093e2cc8552f2821bac908b98a5be7316bc98b2"
83
83
  }