mockaton 12.2.3 → 12.3.1

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.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/src/client/app.js +16 -20
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "mockaton",
3
3
  "description": "HTTP Mock Server",
4
4
  "type": "module",
5
- "version": "12.2.3",
5
+ "version": "12.3.1",
6
6
  "exports": {
7
7
  ".": {
8
8
  "import": "./index.js",
package/src/client/app.js CHANGED
@@ -18,17 +18,16 @@ store.onError = onError
18
18
  store.render = render
19
19
  store.renderRow = renderRow
20
20
 
21
- store.fetchState()
22
21
  initRealTimeUpdates()
23
22
  initKeyboardNavigation()
24
23
 
24
+ let mounted = false
25
25
  function render() {
26
- render.count++
27
26
  restoreFocus(() => document.body.replaceChildren(...App()))
28
27
  if (store.hasChosenLink)
29
28
  previewMock()
29
+ mounted = true
30
30
  }
31
- render.count = 0
32
31
 
33
32
 
34
33
  const leftSideRef = {}
@@ -275,7 +274,7 @@ function Row(row, i) {
275
274
  r('div', {
276
275
  key: row.key,
277
276
  ...className(CSS.TableRow,
278
- render.count > 1 && row.isNew && CSS.animIn)
277
+ mounted && row.isNew && CSS.animIn)
279
278
  },
280
279
  store.canProxy && ProxyToggler(method, urlMask, row.proxied),
281
280
 
@@ -403,7 +402,7 @@ function StaticRow(row) {
403
402
  r('div', {
404
403
  key: row.key,
405
404
  ...className(CSS.TableRow,
406
- render.count > 1 && row.isNew && CSS.animIn)
405
+ mounted && row.isNew && CSS.animIn)
407
406
  },
408
407
 
409
408
  DelayToggler({
@@ -716,7 +715,7 @@ function HelpIcon() {
716
715
  * The version increments when a mock file is added, removed, or renamed.
717
716
  */
718
717
  function initRealTimeUpdates() {
719
- let oldVersion = undefined // undefined so it waits until next event or timeout
718
+ let oldVersion = -1
720
719
  let controller = new AbortController()
721
720
 
722
721
  longPoll()
@@ -732,21 +731,18 @@ function initRealTimeUpdates() {
732
731
  async function longPoll() {
733
732
  try {
734
733
  const response = await store.getSyncVersion(oldVersion, controller.signal)
735
- if (response.ok) {
736
- if (ErrorToast.isOffline)
737
- ErrorToast.close()
738
-
739
- const version = await response.json()
740
- const shouldSkip = oldVersion === undefined
741
- if (oldVersion !== version) { // because it could be < or >
742
- oldVersion = version
743
- if (!shouldSkip)
744
- store.fetchState()
745
- }
746
- longPoll()
747
- }
748
- else
734
+ if (!response.ok)
749
735
  throw response.status
736
+
737
+ if (ErrorToast.isOffline)
738
+ ErrorToast.close()
739
+
740
+ const version = await response.json()
741
+ if (oldVersion !== version) { // because it could be < or >
742
+ oldVersion = version
743
+ store.fetchState()
744
+ }
745
+ longPoll()
750
746
  }
751
747
  catch (error) {
752
748
  if (error !== '_hidden_tab_')