From 376b5e20d1b69d48edc245d932ff47b91b567356 Mon Sep 17 00:00:00 2001 From: Arthur Buldauskas Date: Mon, 17 Jul 2023 09:33:36 -0400 Subject: [PATCH] Cache updates (#25) 0.0.22 - Add the ability to edit cached responses. - feat: users may now edit the cached responses - feat: persist cache filters - patch: use routing to navigate acrsoss the ui - patch: clean-up global state management - patch: attempt to close any jambox process prior to e2e tests - fix: crash when deleting unknown cached id - fix: waterfall ui - feat: css filter - fix: unknown props warnings --- .gitignore | 1 + ...pmerge-npm-4.2.2-112165ced2-a8c43a1ed8.zip | Bin 11921 -> 0 bytes ...pmerge-npm-4.3.1-4f751a0844-2024c6a980.zip | Bin 0 -> 12635 bytes ...uting-npm-1.11.0-60999ac9f6-a2924bfb9c.zip | Bin 0 -> 21079 bytes CHANGELOG.md | 9 ++ e2e-backend.mjs | 13 ++- ext/Api.js | 4 +- ext/App.cy.js | 5 +- ext/App.svelte | 98 +++++++++--------- ext/Cache.cy.js | 71 +++++++++++++ ext/Cache/Breadcrumb.svelte | 54 ---------- ext/Cache/Cell.svelte | 11 +- ext/Cache/index.svelte | 83 ++++----------- .../Detail.svelte => CacheEntry.svelte} | 42 +++++--- ext/Modal.svelte | 40 +++++-- ext/RequestInfo/index.svelte | 2 + ext/Row.svelte | 14 ++- ext/SideNav.svelte | 36 +------ ext/Waterfall.svelte | 88 ++++------------ ext/manifest.js | 1 - ext/nodash.js | 10 ++ ext/store.js | 93 ++++++++++++++--- package.json | 7 +- src/cache.mjs | 46 ++++++-- src/server/api.mjs | 13 ++- src/utils/deserialize.mjs | 5 +- src/utils/serialize.mjs | 45 ++++++++ yarn.lock | 22 ++-- 28 files changed, 470 insertions(+), 343 deletions(-) delete mode 100644 .yarn/cache/deepmerge-npm-4.2.2-112165ced2-a8c43a1ed8.zip create mode 100644 .yarn/cache/deepmerge-npm-4.3.1-4f751a0844-2024c6a980.zip create mode 100644 .yarn/cache/svelte-routing-npm-1.11.0-60999ac9f6-a2924bfb9c.zip create mode 100644 ext/Cache.cy.js delete mode 100644 ext/Cache/Breadcrumb.svelte rename ext/{Cache/Detail.svelte => CacheEntry.svelte} (55%) create mode 100644 ext/nodash.js create mode 100644 src/utils/serialize.mjs diff --git a/.gitignore b/.gitignore index e9361a2..457ce2f 100644 --- a/.gitignore +++ b/.gitignore @@ -2,6 +2,7 @@ node_modules coverage coverage-cypress +cypress/screenshots cypress/videos .DS_Store *.log diff --git a/.yarn/cache/deepmerge-npm-4.2.2-112165ced2-a8c43a1ed8.zip b/.yarn/cache/deepmerge-npm-4.2.2-112165ced2-a8c43a1ed8.zip deleted file mode 100644 index 3e07a61c478337b343f80b914dd9784197e96af9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 11921 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 DIc=#_ diff --git a/.yarn/cache/deepmerge-npm-4.3.1-4f751a0844-2024c6a980.zip b/.yarn/cache/deepmerge-npm-4.3.1-4f751a0844-2024c6a980.zip new file mode 100644 index 0000000000000000000000000000000000000000..93a52462879a669184c9cfa9ec5e7d6600747c4f GIT binary patch literal 12635 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 literal 0 HcmV?d00001 diff --git a/.yarn/cache/svelte-routing-npm-1.11.0-60999ac9f6-a2924bfb9c.zip b/.yarn/cache/svelte-routing-npm-1.11.0-60999ac9f6-a2924bfb9c.zip new file mode 100644 index 0000000000000000000000000000000000000000..da55049b6999245b39772852205d0982582043e2 GIT binary patch literal 21079 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 q<77lz65V9 { + await tinyServer(7777); + await jamboxServer({ port: 9000 }); +}; + +// Shutdown any other server currently running +http + .request('http://localhost:9000/shutdown', { method: 'GET' }, launch) + .on('error', launch) + .end(); diff --git a/ext/Api.js b/ext/Api.js index 92c1054..34628f1 100644 --- a/ext/Api.js +++ b/ext/Api.js @@ -128,14 +128,14 @@ export default class API { }); } - updateCache(id, values) { + updateCache(id, { response }) { return fetch(`${this.apiURL.toString()}/cache`, { headers: { 'Content-Type': 'application/json' }, method: 'POST', body: JSON.stringify({ action: { type: 'update', - payload: { id, values }, + payload: { id, response }, }, }), }); diff --git a/ext/App.cy.js b/ext/App.cy.js index 90d58b1..71fa1f8 100644 --- a/ext/App.cy.js +++ b/ext/App.cy.js @@ -48,7 +48,7 @@ describe('Web Extension', () => { cy.get('@modal').contains('path'); cy.get('@modal').contains('/returnThisAsJson'); - cy.get('[data-cy-id="modal-background"]').click({ force: true }); + cy.get('[data-cy-id="back-to-waterfall"]').click(); cy.get('@modal').should('not.exist'); @@ -69,7 +69,7 @@ describe('Web Extension', () => { cy.get('[data-cy-id="cache-detail"]').contains('path'); cy.get('[data-cy-id="cache-detail"]').contains('/returnThisAsJson'); - cy.get('[data-cy-id="modal-background"]').click({ force: true }); + cy.get('[data-cy-id="back-to-cache"]').click(); cy.get('[data-cy-id="cache-detail"]').should('not.exist'); @@ -77,6 +77,7 @@ describe('Web Extension', () => { cy.get('@test-edit').click(); cy.get('[data-cy-id="cache-delete"]').click(); cy.get('[data-cy-id="cache-detail"]').should('not.exist'); + cy.get('@test-edit') .should('not.exist') .then(() => { diff --git a/ext/App.svelte b/ext/App.svelte index 461d979..3eb8e14 100644 --- a/ext/App.svelte +++ b/ext/App.svelte @@ -1,19 +1,24 @@

- { - path = selection; - }} - {path} - /> -
-
- { - api.pause(!$store.config.paused); - }} - /> - { - api.blockNetworkRequests(!$store.config.blockNetworkRequests); - }} - /> + + +
+
+ { + api.pause(!$store.config.paused); + }} + /> + { + api.blockNetworkRequests(!$store.config.blockNetworkRequests); + }} + /> +
+ + + + + + + + + + + +
- {#if path === '/Waterfall'} - (selection = value)} /> - {/if} - {#if path === '/Cache'} - { - selection = row; - }} - /> - {/if} -
- {#if selection} - (selection = null)}> - - - {/if} +
diff --git a/ext/Cache/Cell.svelte b/ext/Cache/Cell.svelte index 201142b..ec16c8e 100644 --- a/ext/Cache/Cell.svelte +++ b/ext/Cache/Cell.svelte @@ -1,7 +1,7 @@
-
- (cacheEntry = null)} /> -
Search by response body: + store.update((state) => + reducer(state, { type: 'search.cache', payload: search }) + )} placeholder="search json content" /> - +
Cache entries: {data.length}
- {#if cacheEntry != null} - (cacheEntry = null)}> - { - api.updateCache(cacheEntry.id, { response }); - }} - /> - - {/if}
diff --git a/ext/RequestInfo/index.svelte b/ext/RequestInfo/index.svelte index 9a8d211..727efc6 100644 --- a/ext/RequestInfo/index.svelte +++ b/ext/RequestInfo/index.svelte @@ -1,5 +1,6 @@
Jambox
@@ -53,17 +38,4 @@ text-decoration: none; border-right: 1px solid var(--magenta); } - - .SideNav-Link { - text-decoration: none; - color: inherit; - } - - .SideNav-Link:hover { - cursor: pointer; - } - - .selected { - color: var(--cerulean); - } diff --git a/ext/Waterfall.svelte b/ext/Waterfall.svelte index aa3675c..177a5e6 100644 --- a/ext/Waterfall.svelte +++ b/ext/Waterfall.svelte @@ -1,19 +1,13 @@