From a967e3ac641c346bd4b35aca9a56707697b58c4d Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sat, 10 Aug 2024 15:06:04 +0100 Subject: [PATCH 01/50] New quit key, add quit to command palette --- src/posting/app.py | 7 ++++++- src/posting/commands.py | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/posting/app.py b/src/posting/app.py index af0847e3..6afb7fe5 100644 --- a/src/posting/app.py +++ b/src/posting/app.py @@ -568,7 +568,7 @@ def response_trace(self) -> ResponseTrace: return self.query_one(ResponseTrace) -class Posting(App[None]): +class Posting(App[None], inherit_bindings=False): AUTO_FOCUS = None COMMANDS = {PostingProvider} CSS_PATH = Path(__file__).parent / "posting.scss" @@ -583,6 +583,11 @@ class Posting(App[None]): "toggle_jump_mode", description="Jump", ), + Binding( + "ctrl+q", + "app.quit", + description="Quit", + ), Binding("f1,ctrl+question_mark", "help", "Help"), Binding("f8", "save_screenshot", "Save screenshot", show=False), ] diff --git a/src/posting/commands.py b/src/posting/commands.py index 1013cff0..ebe99f07 100644 --- a/src/posting/commands.py +++ b/src/posting/commands.py @@ -17,6 +17,7 @@ def commands( commands_to_show: list[tuple[str, IgnoreReturnCallbackType, str]] = [ *self.get_theme_commands(), + ("app: quit", app.action_quit, "Quit Posting"), ] from posting.app import MainScreen From 2c005cfae33393cbf0e2d441103958290fe276fb Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sat, 10 Aug 2024 21:08:08 +0100 Subject: [PATCH 02/50] Updating snapshots --- .coverage | Bin 53248 -> 53248 bytes ...n_run_command__hide_collection_browser.svg | 172 +++++------ ...alette.test_can_type_to_filter_options.svg | 180 ++++++------ ...test_loads_and_shows_discovery_options.svg | 220 +++++++------- .../test_snapshots/TestConfig.test_config.svg | 234 +++++++-------- ...ghting_applied_from_custom_theme__json.svg | 232 +++++++-------- ...ighting_applied_from_custom_theme__url.svg | 212 +++++++------- ...ple.test_theme_sensible_defaults__json.svg | 230 +++++++-------- ...mple.test_theme_sensible_defaults__url.svg | 212 +++++++------- ..._set_on_startup_and_in_command_palette.svg | 186 ++++++------ ...estHelpScreen.test_help_screen_appears.svg | 268 +++++++++--------- .../TestJumpMode.test_click_switch.svg | 176 ++++++------ .../TestJumpMode.test_focus_switch.svg | 176 ++++++------ ...st.test_request_loaded_into_view__auth.svg | 260 ++++++++--------- ...st.test_request_loaded_into_view__body.svg | 234 +++++++-------- ...test_request_loaded_into_view__headers.svg | 212 +++++++------- ...test_request_loaded_into_view__options.svg | 260 ++++++++--------- ...request_loaded_into_view__query_params.svg | 232 +++++++-------- ...ethodSelection.test_select_post_method.svg | 176 ++++++------ .../TestSendRequest.test_send_request.svg | 234 +++++++-------- ...UrlBar.test_dropdown_appears_on_typing.svg | 188 ++++++------ ...down_completion_selected_via_enter_key.svg | 188 ++++++------ ...opdown_completion_selected_via_tab_key.svg | 188 ++++++------ ...UrlBar.test_dropdown_filters_on_typing.svg | 186 ++++++------ ...eShortcuts.test_expand_request_section.svg | 156 +++++----- ...erfaceShortcuts.test_expand_then_reset.svg | 176 ++++++------ ...Shortcuts.test_hide_collection_browser.svg | 172 +++++------ ...solved_variables_highlight_and_preview.svg | 196 ++++++------- ....test_unresolved_variables_highlighted.svg | 226 +++++++-------- 29 files changed, 2891 insertions(+), 2891 deletions(-) diff --git a/.coverage b/.coverage index 08d1d484376ec26f9b960256f74d29fca3642515..16f5fb9a6e0e292720a3a33ab88487156ce0413e 100644 GIT binary patch delta 189 zcmV;u07CzOpaX!Q1F!~wO2PmO7YsuS*AK-D%?kGm#1E_wi3_(2tq*7mqz_FCkqdzj z8w+<1)C$55$quv*U<+#wQ43-U;0_oK_zPJL>J8Wp!wXLhunRtuP=FN)Gz_c@DhnSB zgR>D35ef)tgaHKs34v0RiHbS_0JFo26#)oohBE~L34v0R;EPHcz3JDo(6|48?F;mw r1Z9S20074L_8x2iY%#M#jB^7IoeKED_gJ8Wp!wXOiunRwvP=FN)H4Ll^D+?eD zgR>D36AB1ugaHKs34u_Phl)D0!ip6E2xx{g1px_xP?O(_N*SeJ%R=A&|FtjBhZ4;2 o3;@6w-`;}_fGq~ILyU6+4^0L9;CrvkN5Ln+Ki!`Lv&D})Kumc;z5oCK diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg index 136d783f..2690f905 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-380328606-matrix { + .terminal-1469096930-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-380328606-title { + .terminal-1469096930-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-380328606-r1 { fill: #e0e0e0 } -.terminal-380328606-r2 { fill: #c5c8c6 } -.terminal-380328606-r3 { fill: #ffcf56 } -.terminal-380328606-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-380328606-r5 { fill: #dfeef9 } -.terminal-380328606-r6 { fill: #9dcbee } -.terminal-380328606-r7 { fill: #3e3e3e } -.terminal-380328606-r8 { fill: #211505 } -.terminal-380328606-r9 { fill: #7c7c7c } -.terminal-380328606-r10 { fill: #e3e3e3 } -.terminal-380328606-r11 { fill: #dde6ed } -.terminal-380328606-r12 { fill: #a0a0a0 } -.terminal-380328606-r13 { fill: #64451a } -.terminal-380328606-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-380328606-r15 { fill: #6c6c6c } -.terminal-380328606-r16 { fill: #272727 } -.terminal-380328606-r17 { fill: #fea62b } -.terminal-380328606-r18 { fill: #242424 } -.terminal-380328606-r19 { fill: #737373 } -.terminal-380328606-r20 { fill: #e1e1e1 } -.terminal-380328606-r21 { fill: #8c9092 } -.terminal-380328606-r22 { fill: #313131;font-weight: bold } -.terminal-380328606-r23 { fill: #313131 } -.terminal-380328606-r24 { fill: #a2a2a2 } -.terminal-380328606-r25 { fill: #1c1c1c } -.terminal-380328606-r26 { fill: #b77923 } -.terminal-380328606-r27 { fill: #888888 } -.terminal-380328606-r28 { fill: #a4a4a4 } -.terminal-380328606-r29 { fill: #787878 } -.terminal-380328606-r30 { fill: #212121 } -.terminal-380328606-r31 { fill: #3c8b54;font-weight: bold } -.terminal-380328606-r32 { fill: #ffba41;font-weight: bold } -.terminal-380328606-r33 { fill: #dbdbdb } + .terminal-1469096930-r1 { fill: #e0e0e0 } +.terminal-1469096930-r2 { fill: #c5c8c6 } +.terminal-1469096930-r3 { fill: #ffcf56 } +.terminal-1469096930-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1469096930-r5 { fill: #dfeef9 } +.terminal-1469096930-r6 { fill: #9dcbee } +.terminal-1469096930-r7 { fill: #3e3e3e } +.terminal-1469096930-r8 { fill: #211505 } +.terminal-1469096930-r9 { fill: #7c7c7c } +.terminal-1469096930-r10 { fill: #e3e3e3 } +.terminal-1469096930-r11 { fill: #dde6ed } +.terminal-1469096930-r12 { fill: #a0a0a0 } +.terminal-1469096930-r13 { fill: #64451a } +.terminal-1469096930-r14 { fill: #e0e0e0;font-weight: bold } +.terminal-1469096930-r15 { fill: #6c6c6c } +.terminal-1469096930-r16 { fill: #272727 } +.terminal-1469096930-r17 { fill: #fea62b } +.terminal-1469096930-r18 { fill: #242424 } +.terminal-1469096930-r19 { fill: #737373 } +.terminal-1469096930-r20 { fill: #e1e1e1 } +.terminal-1469096930-r21 { fill: #8c9092 } +.terminal-1469096930-r22 { fill: #313131;font-weight: bold } +.terminal-1469096930-r23 { fill: #313131 } +.terminal-1469096930-r24 { fill: #a2a2a2 } +.terminal-1469096930-r25 { fill: #1c1c1c } +.terminal-1469096930-r26 { fill: #b77923 } +.terminal-1469096930-r27 { fill: #888888 } +.terminal-1469096930-r28 { fill: #a4a4a4 } +.terminal-1469096930-r29 { fill: #787878 } +.terminal-1469096930-r30 { fill: #212121 } +.terminal-1469096930-r31 { fill: #3c8b54;font-weight: bold } +.terminal-1469096930-r32 { fill: #ffba41;font-weight: bold } +.terminal-1469096930-r33 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭──────────────────────────────────────────────────────────────── Request ─╮ -HeadersBodyQueryAuthInfoOptions -━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -NameValue Add header  -╰──────────────────────────────────────────────────────────────────────────╯ -╭─────────────────────────────────────────────────────────────── Response ─╮ -BodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - -1:1read-onlyJSONWrap X -╰──────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭──────────────────────────────────────────────────────────────── Request ─╮ +HeadersBodyQueryAuthInfoOptions +━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +NameValue Add header  +╰──────────────────────────────────────────────────────────────────────────╯ +╭─────────────────────────────────────────────────────────────── Response ─╮ +BodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + +1:1read-onlyJSONWrap X +╰──────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg index 6b63b8c9..dae606a1 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg @@ -19,166 +19,166 @@ font-weight: 700; } - .terminal-1242896440-matrix { + .terminal-551510411-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1242896440-title { + .terminal-551510411-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1242896440-r1 { fill: #b3b3b3 } -.terminal-1242896440-r2 { fill: #c5c8c6 } -.terminal-1242896440-r3 { fill: #dfdfdf } -.terminal-1242896440-r4 { fill: #cca544 } -.terminal-1242896440-r5 { fill: #b2bec7;text-decoration: underline; } -.terminal-1242896440-r6 { fill: #b2bec7 } -.terminal-1242896440-r7 { fill: #7da2be } -.terminal-1242896440-r8 { fill: #313131 } -.terminal-1242896440-r9 { fill: #fea62b } -.terminal-1242896440-r10 { fill: #b5b5b5 } -.terminal-1242896440-r11 { fill: #b0b8bd } -.terminal-1242896440-r12 { fill: #808080 } -.terminal-1242896440-r13 { fill: #211505 } -.terminal-1242896440-r14 { fill: #503714 } -.terminal-1242896440-r15 { fill: #797b7c;font-weight: bold } -.terminal-1242896440-r16 { fill: #b5b5b6;font-weight: bold } -.terminal-1242896440-r17 { fill: #dfdfdf;font-weight: bold } -.terminal-1242896440-r18 { fill: #fea62b;font-weight: bold } -.terminal-1242896440-r19 { fill: #565656 } -.terminal-1242896440-r20 { fill: #717171 } -.terminal-1242896440-r21 { fill: #1f1f1f } -.terminal-1242896440-r22 { fill: #1c1c1c } -.terminal-1242896440-r23 { fill: #717171;font-weight: bold } -.terminal-1242896440-r24 { fill: #00672d } -.terminal-1242896440-r25 { fill: #707374 } -.terminal-1242896440-r26 { fill: #272727;font-weight: bold } -.terminal-1242896440-r27 { fill: #272727 } -.terminal-1242896440-r28 { fill: #818181 } -.terminal-1242896440-r29 { fill: #161616 } -.terminal-1242896440-r30 { fill: #92601c } -.terminal-1242896440-r31 { fill: #6c6c6c } -.terminal-1242896440-r32 { fill: #838383 } -.terminal-1242896440-r33 { fill: #606060 } -.terminal-1242896440-r34 { fill: #1a1a1a } -.terminal-1242896440-r35 { fill: #306f43;font-weight: bold } -.terminal-1242896440-r36 { fill: #cc9434;font-weight: bold } -.terminal-1242896440-r37 { fill: #afafaf } + .terminal-551510411-r1 { fill: #b3b3b3 } +.terminal-551510411-r2 { fill: #c5c8c6 } +.terminal-551510411-r3 { fill: #dfdfdf } +.terminal-551510411-r4 { fill: #cca544 } +.terminal-551510411-r5 { fill: #b2bec7;text-decoration: underline; } +.terminal-551510411-r6 { fill: #b2bec7 } +.terminal-551510411-r7 { fill: #7da2be } +.terminal-551510411-r8 { fill: #313131 } +.terminal-551510411-r9 { fill: #fea62b } +.terminal-551510411-r10 { fill: #b5b5b5 } +.terminal-551510411-r11 { fill: #b0b8bd } +.terminal-551510411-r12 { fill: #808080 } +.terminal-551510411-r13 { fill: #211505 } +.terminal-551510411-r14 { fill: #503714 } +.terminal-551510411-r15 { fill: #797b7c;font-weight: bold } +.terminal-551510411-r16 { fill: #b5b5b6;font-weight: bold } +.terminal-551510411-r17 { fill: #dfdfdf;font-weight: bold } +.terminal-551510411-r18 { fill: #fea62b;font-weight: bold } +.terminal-551510411-r19 { fill: #565656 } +.terminal-551510411-r20 { fill: #717171 } +.terminal-551510411-r21 { fill: #1f1f1f } +.terminal-551510411-r22 { fill: #1c1c1c } +.terminal-551510411-r23 { fill: #717171;font-weight: bold } +.terminal-551510411-r24 { fill: #00672d } +.terminal-551510411-r25 { fill: #707374 } +.terminal-551510411-r26 { fill: #272727;font-weight: bold } +.terminal-551510411-r27 { fill: #272727 } +.terminal-551510411-r28 { fill: #818181 } +.terminal-551510411-r29 { fill: #161616 } +.terminal-551510411-r30 { fill: #92601c } +.terminal-551510411-r31 { fill: #6c6c6c } +.terminal-551510411-r32 { fill: #838383 } +.terminal-551510411-r33 { fill: #606060 } +.terminal-551510411-r34 { fill: #1a1a1a } +.terminal-551510411-r35 { fill: #306f43;font-weight: bold } +.terminal-551510411-r36 { fill: #cc9434;font-weight: bold } +.terminal-551510411-r37 { fill: #afafaf } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -view -╭─ Collection── Request ─╮ - GET echoview: expand request                           tions - GET get ranExpand the request section━━━━━━━━━━━━ - POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ - GET getToggle the collection browserd header  - GET get────────────╯ - POS create       │╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GET Send  +view +╭─ Collection── Request ─╮ + GET echoview: expand request                           tions + GET get ranExpand the request section━━━━━━━━━━━━ + POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ + GET getToggle the collection browserd header  + GET get────────────╯ + POS create       │╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg index a04f36d9..14f4b0a3 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg @@ -19,206 +19,206 @@ font-weight: 700; } - .terminal-3659734164-matrix { + .terminal-2772346225-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3659734164-title { + .terminal-2772346225-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3659734164-r1 { fill: #b3b3b3 } -.terminal-3659734164-r2 { fill: #c5c8c6 } -.terminal-3659734164-r3 { fill: #dfdfdf } -.terminal-3659734164-r4 { fill: #cca544 } -.terminal-3659734164-r5 { fill: #b2bec7;text-decoration: underline; } -.terminal-3659734164-r6 { fill: #b2bec7 } -.terminal-3659734164-r7 { fill: #7da2be } -.terminal-3659734164-r8 { fill: #313131 } -.terminal-3659734164-r9 { fill: #1a1004 } -.terminal-3659734164-r10 { fill: #636363 } -.terminal-3659734164-r11 { fill: #b5b5b5 } -.terminal-3659734164-r12 { fill: #fea62b } -.terminal-3659734164-r13 { fill: #b0b8bd } -.terminal-3659734164-r14 { fill: #808080 } -.terminal-3659734164-r15 { fill: #211505 } -.terminal-3659734164-r16 { fill: #696969 } -.terminal-3659734164-r17 { fill: #503714 } -.terminal-3659734164-r18 { fill: #797b7c;font-weight: bold } -.terminal-3659734164-r19 { fill: #b5b5b6;font-weight: bold } -.terminal-3659734164-r20 { fill: #dfdfdf;font-weight: bold } -.terminal-3659734164-r21 { fill: #717171 } -.terminal-3659734164-r22 { fill: #1f1f1f } -.terminal-3659734164-r23 { fill: #1c1c1c } -.terminal-3659734164-r24 { fill: #717171;font-weight: bold } -.terminal-3659734164-r25 { fill: #00672d } -.terminal-3659734164-r26 { fill: #b4b4b4 } -.terminal-3659734164-r27 { fill: #707374 } -.terminal-3659734164-r28 { fill: #818181 } -.terminal-3659734164-r29 { fill: #161616 } -.terminal-3659734164-r30 { fill: #0d0d0d;font-weight: bold } -.terminal-3659734164-r31 { fill: #6c6c6c } -.terminal-3659734164-r32 { fill: #838383 } -.terminal-3659734164-r33 { fill: #606060 } -.terminal-3659734164-r34 { fill: #1a1a1a } -.terminal-3659734164-r35 { fill: #306f43;font-weight: bold } -.terminal-3659734164-r36 { fill: #cc9434;font-weight: bold } -.terminal-3659734164-r37 { fill: #afafaf } + .terminal-2772346225-r1 { fill: #b3b3b3 } +.terminal-2772346225-r2 { fill: #c5c8c6 } +.terminal-2772346225-r3 { fill: #dfdfdf } +.terminal-2772346225-r4 { fill: #cca544 } +.terminal-2772346225-r5 { fill: #b2bec7;text-decoration: underline; } +.terminal-2772346225-r6 { fill: #b2bec7 } +.terminal-2772346225-r7 { fill: #7da2be } +.terminal-2772346225-r8 { fill: #313131 } +.terminal-2772346225-r9 { fill: #1a1004 } +.terminal-2772346225-r10 { fill: #636363 } +.terminal-2772346225-r11 { fill: #b5b5b5 } +.terminal-2772346225-r12 { fill: #fea62b } +.terminal-2772346225-r13 { fill: #b0b8bd } +.terminal-2772346225-r14 { fill: #808080 } +.terminal-2772346225-r15 { fill: #211505 } +.terminal-2772346225-r16 { fill: #696969 } +.terminal-2772346225-r17 { fill: #503714 } +.terminal-2772346225-r18 { fill: #797b7c;font-weight: bold } +.terminal-2772346225-r19 { fill: #b5b5b6;font-weight: bold } +.terminal-2772346225-r20 { fill: #dfdfdf;font-weight: bold } +.terminal-2772346225-r21 { fill: #717171 } +.terminal-2772346225-r22 { fill: #1f1f1f } +.terminal-2772346225-r23 { fill: #1c1c1c } +.terminal-2772346225-r24 { fill: #717171;font-weight: bold } +.terminal-2772346225-r25 { fill: #00672d } +.terminal-2772346225-r26 { fill: #b4b4b4 } +.terminal-2772346225-r27 { fill: #707374 } +.terminal-2772346225-r28 { fill: #818181 } +.terminal-2772346225-r29 { fill: #161616 } +.terminal-2772346225-r30 { fill: #0d0d0d;font-weight: bold } +.terminal-2772346225-r31 { fill: #6c6c6c } +.terminal-2772346225-r32 { fill: #838383 } +.terminal-2772346225-r33 { fill: #606060 } +.terminal-2772346225-r34 { fill: #1a1a1a } +.terminal-2772346225-r35 { fill: #306f43;font-weight: bold } +.terminal-2772346225-r36 { fill: #cc9434;font-weight: bold } +.terminal-2772346225-r37 { fill: #afafaf } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                                            - -GETEnter a URL... Send  -Search for commands… -╭─ Collection ───────────────────────────────────────── Request ─╮ - GET echo  theme: posting                                 - GET get random user            Set the theme to posting━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post                    theme: monokai                                ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/Set the theme to monokai╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/  theme: solarized-light                        ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all                Set the theme to solarized-lighters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one                  theme: nautilus                               ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create                 Set the theme to nautilus╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post            theme: galaxy                                 ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ comments/Set the theme to galaxy╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get comments           theme: nebula                                  Add header  - GET get comments (via parSet the theme to nebula────────────────────────────────╯ - PUT edit a comment         theme: alpine                                 ───────────────────── Response ─╮ -▼ todos/Set the theme to alpine - GET get all                  theme: cobalt                                 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one                Set the theme to cobalt -▼ users/  theme: twilight                                - GET get a user             Set the theme to twilight - GET get all users            theme: hacker                                  - POS create a user          Set the theme to hacker - PUT update a user            layout: horizontal                             -│────────────────────────────────Change layout to horizontal -This is an echo server we can u -to see exactly what request is ││ -being sent.││1:1read-onlyJSONWrap X -╰─────────────── sample-collections ─╯╰────────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                                            + +GETEnter a URL... Send  +Search for commands… +╭─ Collection ───────────────────────────────────────── Request ─╮ + GET echo  theme: posting                                 + GET get random user            Set the theme to posting━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post                    theme: monokai                                ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/Set the theme to monokai╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/  theme: solarized-light                        ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all                Set the theme to solarized-lighters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one                  theme: nautilus                               ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create                 Set the theme to nautilus╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post            theme: galaxy                                 ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ comments/Set the theme to galaxy╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get comments           theme: nebula                                  Add header  + GET get comments (via parSet the theme to nebula────────────────────────────────╯ + PUT edit a comment         theme: alpine                                 ───────────────────── Response ─╮ +▼ todos/Set the theme to alpine + GET get all                  theme: cobalt                                 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one                Set the theme to cobalt +▼ users/  theme: twilight                                + GET get a user             Set the theme to twilight + GET get all users            theme: hacker                                  + POS create a user          Set the theme to hacker + PUT update a user            app: quit                                      +│────────────────────────────────Quit Posting +This is an echo server we can u +to see exactly what request is ││ +being sent.││1:1read-onlyJSONWrap X +╰─────────────── sample-collections ─╯╰────────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg index b2937047..71216e1f 100644 --- a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg +++ b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-2421798725-matrix { + .terminal-1760118007-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2421798725-title { + .terminal-1760118007-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2421798725-r1 { fill: #c5c8c6 } -.terminal-2421798725-r2 { fill: #130f1c;text-decoration: underline; } -.terminal-2421798725-r3 { fill: #130f1c } -.terminal-2421798725-r4 { fill: #3c2e58 } -.terminal-2421798725-r5 { fill: #ff69b4 } -.terminal-2421798725-r6 { fill: #9393a3 } -.terminal-2421798725-r7 { fill: #9370db } -.terminal-2421798725-r8 { fill: #e1e1e6 } -.terminal-2421798725-r9 { fill: #00fa9a } -.terminal-2421798725-r10 { fill: #efe3fb } -.terminal-2421798725-r11 { fill: #9f9fa5 } -.terminal-2421798725-r12 { fill: #632e53 } -.terminal-2421798725-r13 { fill: #dfdfe1 } -.terminal-2421798725-r14 { fill: #dfdfe1;font-weight: bold } -.terminal-2421798725-r15 { fill: #002014;font-weight: bold } -.terminal-2421798725-r16 { fill: #8b8b93 } -.terminal-2421798725-r17 { fill: #58d1eb;font-weight: bold } -.terminal-2421798725-r18 { fill: #6a6a74 } -.terminal-2421798725-r19 { fill: #252532 } -.terminal-2421798725-r20 { fill: #0f0f1f } -.terminal-2421798725-r21 { fill: #ede2f7 } -.terminal-2421798725-r22 { fill: #e1e0e4 } -.terminal-2421798725-r23 { fill: #a2a2a8;font-weight: bold } -.terminal-2421798725-r24 { fill: #210d17 } -.terminal-2421798725-r25 { fill: #e0e0e2 } -.terminal-2421798725-r26 { fill: #8b8b93;font-weight: bold } -.terminal-2421798725-r27 { fill: #e9e1f1 } -.terminal-2421798725-r28 { fill: #6f6f78 } -.terminal-2421798725-r29 { fill: #00b85f } -.terminal-2421798725-r30 { fill: #e2e0e5 } -.terminal-2421798725-r31 { fill: #ff79c6;font-weight: bold } -.terminal-2421798725-r32 { fill: #bd93f9 } -.terminal-2421798725-r33 { fill: #9b9aab;font-weight: bold } -.terminal-2421798725-r34 { fill: #e3e3e8;font-weight: bold } -.terminal-2421798725-r35 { fill: #552956 } -.terminal-2421798725-r36 { fill: #f1fa8c } -.terminal-2421798725-r37 { fill: #737387 } -.terminal-2421798725-r38 { fill: #918d9d } -.terminal-2421798725-r39 { fill: #87878f } -.terminal-2421798725-r40 { fill: #a2a2a8 } -.terminal-2421798725-r41 { fill: #30303b } -.terminal-2421798725-r42 { fill: #00fa9a;font-weight: bold } -.terminal-2421798725-r43 { fill: #ff7ec8;font-weight: bold } -.terminal-2421798725-r44 { fill: #dbdbdd } + .terminal-1760118007-r1 { fill: #c5c8c6 } +.terminal-1760118007-r2 { fill: #130f1c;text-decoration: underline; } +.terminal-1760118007-r3 { fill: #130f1c } +.terminal-1760118007-r4 { fill: #3c2e58 } +.terminal-1760118007-r5 { fill: #ff69b4 } +.terminal-1760118007-r6 { fill: #9393a3 } +.terminal-1760118007-r7 { fill: #9370db } +.terminal-1760118007-r8 { fill: #e1e1e6 } +.terminal-1760118007-r9 { fill: #00fa9a } +.terminal-1760118007-r10 { fill: #efe3fb } +.terminal-1760118007-r11 { fill: #9f9fa5 } +.terminal-1760118007-r12 { fill: #632e53 } +.terminal-1760118007-r13 { fill: #dfdfe1 } +.terminal-1760118007-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-1760118007-r15 { fill: #002014;font-weight: bold } +.terminal-1760118007-r16 { fill: #8b8b93 } +.terminal-1760118007-r17 { fill: #58d1eb;font-weight: bold } +.terminal-1760118007-r18 { fill: #6a6a74 } +.terminal-1760118007-r19 { fill: #252532 } +.terminal-1760118007-r20 { fill: #0f0f1f } +.terminal-1760118007-r21 { fill: #ede2f7 } +.terminal-1760118007-r22 { fill: #e1e0e4 } +.terminal-1760118007-r23 { fill: #a2a2a8;font-weight: bold } +.terminal-1760118007-r24 { fill: #210d17 } +.terminal-1760118007-r25 { fill: #e0e0e2 } +.terminal-1760118007-r26 { fill: #8b8b93;font-weight: bold } +.terminal-1760118007-r27 { fill: #e9e1f1 } +.terminal-1760118007-r28 { fill: #6f6f78 } +.terminal-1760118007-r29 { fill: #00b85f } +.terminal-1760118007-r30 { fill: #e2e0e5 } +.terminal-1760118007-r31 { fill: #ff79c6;font-weight: bold } +.terminal-1760118007-r32 { fill: #bd93f9 } +.terminal-1760118007-r33 { fill: #9b9aab;font-weight: bold } +.terminal-1760118007-r34 { fill: #e3e3e8;font-weight: bold } +.terminal-1760118007-r35 { fill: #552956 } +.terminal-1760118007-r36 { fill: #f1fa8c } +.terminal-1760118007-r37 { fill: #737387 } +.terminal-1760118007-r38 { fill: #918d9d } +.terminal-1760118007-r39 { fill: #87878f } +.terminal-1760118007-r40 { fill: #a2a2a8 } +.terminal-1760118007-r41 { fill: #30303b } +.terminal-1760118007-r42 { fill: #00fa9a;font-weight: bold } +.terminal-1760118007-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-1760118007-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -GEThttps://jsonplaceholder.typicode.com/posts                                        ■■■■■■■ Send  - -╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response  200 OK ─╮ - GET echo││HeadersBodyQueryAuthInfoOBodyHeadersCookiesTrace - GET get random user││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││ Content-Type     application/json   1  [ -▼ jsonplaceholder/││ Referer          https://example.c  2    {                           -▼ posts/││ Accept-Encoding  gzip               3  "userId"1,              -█ GET get all││ Cache-Control    no-cache           4  "id"1,                  - GET get one││  5  "title""sunt aut  - POS create││facere repellat provident  - DEL delete a post││occaecati excepturi optio  -▼ comments/││reprehenderit",               - GET get comments││  6  "body""quia et  - GET get comments (via param)││suscipit\nsuscipit  - PUT edit a comment││recusandae consequuntur  -▼ todos/││expedita et  - GET get all││cum\nreprehenderit  - GET get one││molestiae ut ut quas  -▼ users/││totam\nnostrum rerum est  - GET get a user││autem sunt rem eveniet  - GET get all users││architecto" - POS create a user││  7    },                          - PUT update a user││  8    {                           - DEL delete a user││  9  "userId"1,              -││ 10  "id"2,                  -││ 11  "title""qui est esse" -││Name 12  "body""est rerum  -│────────────────────────────────────││Valuetempore vitae\nsequi sint  -Retrieve all posts││ Add header 1:1read-onlyJSONWrap X -╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +GEThttps://jsonplaceholder.typicode.com/posts                                        ■■■■■■■ Send  + +╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response  200 OK ─╮ + GET echo││HeadersBodyQueryAuthInfoOBodyHeadersCookiesTrace + GET get random user││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││ Content-Type     application/json   1  [ +▼ jsonplaceholder/││ Referer          https://example.c  2    {                           +▼ posts/││ Accept-Encoding  gzip               3  "userId"1,              +█ GET get all││ Cache-Control    no-cache           4  "id"1,                  + GET get one││  5  "title""sunt aut  + POS create││facere repellat provident  + DEL delete a post││occaecati excepturi optio  +▼ comments/││reprehenderit",               + GET get comments││  6  "body""quia et  + GET get comments (via param)││suscipit\nsuscipit  + PUT edit a comment││recusandae consequuntur  +▼ todos/││expedita et  + GET get all││cum\nreprehenderit  + GET get one││molestiae ut ut quas  +▼ users/││totam\nnostrum rerum est  + GET get a user││autem sunt rem eveniet  + GET get all users││architecto" + POS create a user││  7    },                          + PUT update a user││  8    {                           + DEL delete a user││  9  "userId"1,              +││ 10  "id"2,                  +││ 11  "title""qui est esse" +││Name 12  "body""est rerum  +│────────────────────────────────────││Valuetempore vitae\nsequi sint  +Retrieve all posts││ Add header 1:1read-onlyJSONWrap X +╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg index a5c86b56..665646c4 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg @@ -19,208 +19,208 @@ font-weight: 700; } - .terminal-226685334-matrix { + .terminal-635321123-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-226685334-title { + .terminal-635321123-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-226685334-r1 { fill: #1e1f1f } -.terminal-226685334-r2 { fill: #c5c8c6 } -.terminal-226685334-r3 { fill: #c47fe0 } -.terminal-226685334-r4 { fill: #e4f0f9;text-decoration: underline; } -.terminal-226685334-r5 { fill: #e4f0f9 } -.terminal-226685334-r6 { fill: #acd3ed } -.terminal-226685334-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } -.terminal-226685334-r8 { fill: #de4e88;text-decoration: underline; } -.terminal-226685334-r9 { fill: #3498db;font-style: italic; } -.terminal-226685334-r10 { fill: #181919 } -.terminal-226685334-r11 { fill: #051a0e } -.terminal-226685334-r12 { fill: #5e6060 } -.terminal-226685334-r13 { fill: #cfbbdc } -.terminal-226685334-r14 { fill: #9b59b6 } -.terminal-226685334-r15 { fill: #1e1f1f;font-weight: bold } -.terminal-226685334-r16 { fill: #707273 } -.terminal-226685334-r17 { fill: #707273;font-weight: bold } -.terminal-226685334-r18 { fill: #929495 } -.terminal-226685334-r19 { fill: #58d1eb;font-weight: bold } -.terminal-226685334-r20 { fill: #007129 } -.terminal-226685334-r21 { fill: #d6d9da } -.terminal-226685334-r22 { fill: #1d1d1e } -.terminal-226685334-r23 { fill: #5a5c5c } -.terminal-226685334-r24 { fill: #596060;font-weight: bold } -.terminal-226685334-r25 { fill: #181a1a;font-weight: bold } -.terminal-226685334-r26 { fill: #1a1a1a } -.terminal-226685334-r27 { fill: #ecf0f1;font-style: italic; } -.terminal-226685334-r28 { fill: #1e1f1f;font-style: italic; } -.terminal-226685334-r29 { fill: #8e44ad;font-weight: bold;font-style: italic; } -.terminal-226685334-r30 { fill: #27ae60;font-style: italic; } -.terminal-226685334-r31 { fill: #8e44ad;font-weight: bold } -.terminal-226685334-r32 { fill: #27ae60 } -.terminal-226685334-r33 { fill: #e67e22 } -.terminal-226685334-r34 { fill: #767878 } -.terminal-226685334-r35 { fill: #cbcece } -.terminal-226685334-r36 { fill: #27ae60;font-weight: bold } -.terminal-226685334-r37 { fill: #cccfd0;font-weight: bold } -.terminal-226685334-r38 { fill: #cccfd0 } -.terminal-226685334-r39 { fill: #5b5d5e } -.terminal-226685334-r40 { fill: #e0e4e5 } -.terminal-226685334-r41 { fill: #b386c7 } -.terminal-226685334-r42 { fill: #595a5b } -.terminal-226685334-r43 { fill: #848787 } -.terminal-226685334-r44 { fill: #dbdfe0 } -.terminal-226685334-r45 { fill: #62c18b;font-weight: bold } -.terminal-226685334-r46 { fill: #af6cca;font-weight: bold } -.terminal-226685334-r47 { fill: #232424 } + .terminal-635321123-r1 { fill: #1e1f1f } +.terminal-635321123-r2 { fill: #c5c8c6 } +.terminal-635321123-r3 { fill: #c47fe0 } +.terminal-635321123-r4 { fill: #e4f0f9;text-decoration: underline; } +.terminal-635321123-r5 { fill: #e4f0f9 } +.terminal-635321123-r6 { fill: #acd3ed } +.terminal-635321123-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } +.terminal-635321123-r8 { fill: #de4e88;text-decoration: underline; } +.terminal-635321123-r9 { fill: #3498db;font-style: italic; } +.terminal-635321123-r10 { fill: #181919 } +.terminal-635321123-r11 { fill: #051a0e } +.terminal-635321123-r12 { fill: #5e6060 } +.terminal-635321123-r13 { fill: #cfbbdc } +.terminal-635321123-r14 { fill: #9b59b6 } +.terminal-635321123-r15 { fill: #1e1f1f;font-weight: bold } +.terminal-635321123-r16 { fill: #707273 } +.terminal-635321123-r17 { fill: #707273;font-weight: bold } +.terminal-635321123-r18 { fill: #929495 } +.terminal-635321123-r19 { fill: #58d1eb;font-weight: bold } +.terminal-635321123-r20 { fill: #007129 } +.terminal-635321123-r21 { fill: #d6d9da } +.terminal-635321123-r22 { fill: #1d1d1e } +.terminal-635321123-r23 { fill: #5a5c5c } +.terminal-635321123-r24 { fill: #596060;font-weight: bold } +.terminal-635321123-r25 { fill: #181a1a;font-weight: bold } +.terminal-635321123-r26 { fill: #1a1a1a } +.terminal-635321123-r27 { fill: #ecf0f1;font-style: italic; } +.terminal-635321123-r28 { fill: #1e1f1f;font-style: italic; } +.terminal-635321123-r29 { fill: #8e44ad;font-weight: bold;font-style: italic; } +.terminal-635321123-r30 { fill: #27ae60;font-style: italic; } +.terminal-635321123-r31 { fill: #8e44ad;font-weight: bold } +.terminal-635321123-r32 { fill: #27ae60 } +.terminal-635321123-r33 { fill: #e67e22 } +.terminal-635321123-r34 { fill: #767878 } +.terminal-635321123-r35 { fill: #cbcece } +.terminal-635321123-r36 { fill: #27ae60;font-weight: bold } +.terminal-635321123-r37 { fill: #cccfd0;font-weight: bold } +.terminal-635321123-r38 { fill: #cccfd0 } +.terminal-635321123-r39 { fill: #5b5d5e } +.terminal-635321123-r40 { fill: #e0e4e5 } +.terminal-635321123-r41 { fill: #b386c7 } +.terminal-635321123-r42 { fill: #595a5b } +.terminal-635321123-r43 { fill: #848787 } +.terminal-635321123-r44 { fill: #dbdfe0 } +.terminal-635321123-r45 { fill: #62c18b;font-weight: bold } +.terminal-635321123-r46 { fill: #af6cca;font-weight: bold } +.terminal-635321123-r47 { fill: #232424 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                        - -POSThttps://jsonplaceholder.typicode.com/posts                              Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ -▼ posts/HeadersBodyQueryAuthInfoOptions - GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get oneRaw (json, text, etc.) -█ POS create1  { - DEL delete a post2  "title""foo",                                          -▼ comments/3  "body""bar",                                           - GET get comments4  "userId"1 - GET get comments (via pa5  }                                                          - PUT edit a comment -▼ todos/2:1JSONWrap X - GET get all╰───────────────────────────────────────────────────────────────╯ - GET get one│╭──────────────────────────────────────────────────── Response ─╮ -▼ users/││BodyHeadersCookiesTrace - GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -│─────────────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                        + +POSThttps://jsonplaceholder.typicode.com/posts                              Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ +▼ posts/HeadersBodyQueryAuthInfoOptions + GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get oneRaw (json, text, etc.) +█ POS create1  { + DEL delete a post2  "title""foo",                                          +▼ comments/3  "body""bar",                                           + GET get comments4  "userId"1 + GET get comments (via pa5  }                                                          + PUT edit a comment +▼ todos/2:1JSONWrap X + GET get all╰───────────────────────────────────────────────────────────────╯ + GET get one│╭──────────────────────────────────────────────────── Response ─╮ +▼ users/││BodyHeadersCookiesTrace + GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +│─────────────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Hel diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg index c4c3aad4..6871b9b3 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg @@ -19,198 +19,198 @@ font-weight: 700; } - .terminal-4061367546-matrix { + .terminal-3030719150-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4061367546-title { + .terminal-3030719150-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4061367546-r1 { fill: #1e1f1f } -.terminal-4061367546-r2 { fill: #c5c8c6 } -.terminal-4061367546-r3 { fill: #c47fe0 } -.terminal-4061367546-r4 { fill: #e4f0f9;text-decoration: underline; } -.terminal-4061367546-r5 { fill: #e4f0f9 } -.terminal-4061367546-r6 { fill: #acd3ed } -.terminal-4061367546-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } -.terminal-4061367546-r8 { fill: #de4e88;text-decoration: underline; } -.terminal-4061367546-r9 { fill: #3498db;font-style: italic; } -.terminal-4061367546-r10 { fill: #181919 } -.terminal-4061367546-r11 { fill: #1a1a1a } -.terminal-4061367546-r12 { fill: #051a0e } -.terminal-4061367546-r13 { fill: #5e6060 } -.terminal-4061367546-r14 { fill: #cfbbdc } -.terminal-4061367546-r15 { fill: #9b59b6 } -.terminal-4061367546-r16 { fill: #1e1f1f;font-weight: bold } -.terminal-4061367546-r17 { fill: #707273 } -.terminal-4061367546-r18 { fill: #929495 } -.terminal-4061367546-r19 { fill: #58d1eb;font-weight: bold } -.terminal-4061367546-r20 { fill: #596060;font-weight: bold } -.terminal-4061367546-r21 { fill: #181a1a;font-weight: bold } -.terminal-4061367546-r22 { fill: #c3a4d3 } -.terminal-4061367546-r23 { fill: #1d1d1e } -.terminal-4061367546-r24 { fill: #5a5c5c } -.terminal-4061367546-r25 { fill: #d9dee1 } -.terminal-4061367546-r26 { fill: #cccfd0;font-weight: bold } -.terminal-4061367546-r27 { fill: #cccfd0 } -.terminal-4061367546-r28 { fill: #5b5d5e } -.terminal-4061367546-r29 { fill: #e0e4e5 } -.terminal-4061367546-r30 { fill: #b386c7 } -.terminal-4061367546-r31 { fill: #767878 } -.terminal-4061367546-r32 { fill: #595a5b } -.terminal-4061367546-r33 { fill: #848787 } -.terminal-4061367546-r34 { fill: #dbdfe0 } -.terminal-4061367546-r35 { fill: #62c18b;font-weight: bold } -.terminal-4061367546-r36 { fill: #af6cca;font-weight: bold } -.terminal-4061367546-r37 { fill: #232424 } + .terminal-3030719150-r1 { fill: #1e1f1f } +.terminal-3030719150-r2 { fill: #c5c8c6 } +.terminal-3030719150-r3 { fill: #c47fe0 } +.terminal-3030719150-r4 { fill: #e4f0f9;text-decoration: underline; } +.terminal-3030719150-r5 { fill: #e4f0f9 } +.terminal-3030719150-r6 { fill: #acd3ed } +.terminal-3030719150-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } +.terminal-3030719150-r8 { fill: #de4e88;text-decoration: underline; } +.terminal-3030719150-r9 { fill: #3498db;font-style: italic; } +.terminal-3030719150-r10 { fill: #181919 } +.terminal-3030719150-r11 { fill: #1a1a1a } +.terminal-3030719150-r12 { fill: #051a0e } +.terminal-3030719150-r13 { fill: #5e6060 } +.terminal-3030719150-r14 { fill: #cfbbdc } +.terminal-3030719150-r15 { fill: #9b59b6 } +.terminal-3030719150-r16 { fill: #1e1f1f;font-weight: bold } +.terminal-3030719150-r17 { fill: #707273 } +.terminal-3030719150-r18 { fill: #929495 } +.terminal-3030719150-r19 { fill: #58d1eb;font-weight: bold } +.terminal-3030719150-r20 { fill: #596060;font-weight: bold } +.terminal-3030719150-r21 { fill: #181a1a;font-weight: bold } +.terminal-3030719150-r22 { fill: #c3a4d3 } +.terminal-3030719150-r23 { fill: #1d1d1e } +.terminal-3030719150-r24 { fill: #5a5c5c } +.terminal-3030719150-r25 { fill: #d9dee1 } +.terminal-3030719150-r26 { fill: #cccfd0;font-weight: bold } +.terminal-3030719150-r27 { fill: #cccfd0 } +.terminal-3030719150-r28 { fill: #5b5d5e } +.terminal-3030719150-r29 { fill: #e0e4e5 } +.terminal-3030719150-r30 { fill: #b386c7 } +.terminal-3030719150-r31 { fill: #767878 } +.terminal-3030719150-r32 { fill: #595a5b } +.terminal-3030719150-r33 { fill: #848787 } +.terminal-3030719150-r34 { fill: #dbdfe0 } +.terminal-3030719150-r35 { fill: #62c18b;font-weight: bold } +.terminal-3030719150-r36 { fill: #af6cca;font-weight: bold } +.terminal-3030719150-r37 { fill: #232424 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                        - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ - GET get allHeadersBodyQueryAuthInfoOptions -█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -None -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╰───────────────────────────────────────────────────────────────╯ -│╭──────────────────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -││ -││ -││ -││ -│─────────────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                        + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ + GET get allHeadersBodyQueryAuthInfoOptions +█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +None +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╰───────────────────────────────────────────────────────────────╯ +│╭──────────────────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +││ +││ +││ +││ +│─────────────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg index c2f669e1..c06f8ebe 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg @@ -19,207 +19,207 @@ font-weight: 700; } - .terminal-2450042399-matrix { + .terminal-3673487078-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2450042399-title { + .terminal-3673487078-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2450042399-r1 { fill: #1d1f20 } -.terminal-2450042399-r2 { fill: #c5c8c6 } -.terminal-2450042399-r3 { fill: #ff5c51 } -.terminal-2450042399-r4 { fill: #ddf3f5;text-decoration: underline; } -.terminal-2450042399-r5 { fill: #ddf3f5 } -.terminal-2450042399-r6 { fill: #99dbe3 } -.terminal-2450042399-r7 { fill: #d32f2f } -.terminal-2450042399-r8 { fill: #797979 } -.terminal-2450042399-r9 { fill: #00acc1 } -.terminal-2450042399-r10 { fill: #212121 } -.terminal-2450042399-r11 { fill: #e1effb } -.terminal-2450042399-r12 { fill: #5a6065 } -.terminal-2450042399-r13 { fill: #ddadb4 } -.terminal-2450042399-r14 { fill: #d22f2f } -.terminal-2450042399-r15 { fill: #1d1f20;font-weight: bold } -.terminal-2450042399-r16 { fill: #6c7378 } -.terminal-2450042399-r17 { fill: #6c7378;font-weight: bold } -.terminal-2450042399-r18 { fill: #8c969c } -.terminal-2450042399-r19 { fill: #58d1eb;font-weight: bold } -.terminal-2450042399-r20 { fill: #00640d } -.terminal-2450042399-r21 { fill: #cfdbe3 } -.terminal-2450042399-r22 { fill: #1c1e1f } -.terminal-2450042399-r23 { fill: #575c61 } -.terminal-2450042399-r24 { fill: #747779;font-weight: bold } -.terminal-2450042399-r25 { fill: #1f2021;font-weight: bold } -.terminal-2450042399-r26 { fill: #889197 } -.terminal-2450042399-r27 { fill: #1d1617 } -.terminal-2450042399-r28 { fill: #575c61;font-weight: bold } -.terminal-2450042399-r29 { fill: #f9e3e3 } -.terminal-2450042399-r30 { fill: #569cd6;font-weight: bold } -.terminal-2450042399-r31 { fill: #ce9178 } -.terminal-2450042399-r32 { fill: #b5cea8 } -.terminal-2450042399-r33 { fill: #71797e } -.terminal-2450042399-r34 { fill: #c5cfd7 } -.terminal-2450042399-r35 { fill: #43a047;font-weight: bold } -.terminal-2450042399-r36 { fill: #c4d1da;font-weight: bold } -.terminal-2450042399-r37 { fill: #c4d1da } -.terminal-2450042399-r38 { fill: #585e62 } -.terminal-2450042399-r39 { fill: #d9e6f0 } -.terminal-2450042399-r40 { fill: #d7696c } -.terminal-2450042399-r41 { fill: #555b5f } -.terminal-2450042399-r42 { fill: #7f888e } -.terminal-2450042399-r43 { fill: #d4e0ea } -.terminal-2450042399-r44 { fill: #73b87d;font-weight: bold } -.terminal-2450042399-r45 { fill: #eb4640;font-weight: bold } -.terminal-2450042399-r46 { fill: #222425 } + .terminal-3673487078-r1 { fill: #1d1f20 } +.terminal-3673487078-r2 { fill: #c5c8c6 } +.terminal-3673487078-r3 { fill: #ff5c51 } +.terminal-3673487078-r4 { fill: #ddf3f5;text-decoration: underline; } +.terminal-3673487078-r5 { fill: #ddf3f5 } +.terminal-3673487078-r6 { fill: #99dbe3 } +.terminal-3673487078-r7 { fill: #d32f2f } +.terminal-3673487078-r8 { fill: #797979 } +.terminal-3673487078-r9 { fill: #00acc1 } +.terminal-3673487078-r10 { fill: #212121 } +.terminal-3673487078-r11 { fill: #e1effb } +.terminal-3673487078-r12 { fill: #5a6065 } +.terminal-3673487078-r13 { fill: #ddadb4 } +.terminal-3673487078-r14 { fill: #d22f2f } +.terminal-3673487078-r15 { fill: #1d1f20;font-weight: bold } +.terminal-3673487078-r16 { fill: #6c7378 } +.terminal-3673487078-r17 { fill: #6c7378;font-weight: bold } +.terminal-3673487078-r18 { fill: #8c969c } +.terminal-3673487078-r19 { fill: #58d1eb;font-weight: bold } +.terminal-3673487078-r20 { fill: #00640d } +.terminal-3673487078-r21 { fill: #cfdbe3 } +.terminal-3673487078-r22 { fill: #1c1e1f } +.terminal-3673487078-r23 { fill: #575c61 } +.terminal-3673487078-r24 { fill: #747779;font-weight: bold } +.terminal-3673487078-r25 { fill: #1f2021;font-weight: bold } +.terminal-3673487078-r26 { fill: #889197 } +.terminal-3673487078-r27 { fill: #1d1617 } +.terminal-3673487078-r28 { fill: #575c61;font-weight: bold } +.terminal-3673487078-r29 { fill: #f9e3e3 } +.terminal-3673487078-r30 { fill: #569cd6;font-weight: bold } +.terminal-3673487078-r31 { fill: #ce9178 } +.terminal-3673487078-r32 { fill: #b5cea8 } +.terminal-3673487078-r33 { fill: #71797e } +.terminal-3673487078-r34 { fill: #c5cfd7 } +.terminal-3673487078-r35 { fill: #43a047;font-weight: bold } +.terminal-3673487078-r36 { fill: #c4d1da;font-weight: bold } +.terminal-3673487078-r37 { fill: #c4d1da } +.terminal-3673487078-r38 { fill: #585e62 } +.terminal-3673487078-r39 { fill: #d9e6f0 } +.terminal-3673487078-r40 { fill: #d7696c } +.terminal-3673487078-r41 { fill: #555b5f } +.terminal-3673487078-r42 { fill: #7f888e } +.terminal-3673487078-r43 { fill: #d4e0ea } +.terminal-3673487078-r44 { fill: #73b87d;font-weight: bold } +.terminal-3673487078-r45 { fill: #eb4640;font-weight: bold } +.terminal-3673487078-r46 { fill: #222425 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                        - -POSThttps://jsonplaceholder.typicode.com/posts                              Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ -▼ posts/HeadersBodyQueryAuthInfoOptions - GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get oneRaw (json, text, etc.) -█ POS create1  { - DEL delete a post2  "title""foo",                                          -▼ comments/3  "body""bar",                                           - GET get comments4  "userId"1 - GET get comments (via pa5  }                                                          - PUT edit a comment -▼ todos/2:1JSONWrap X - GET get all╰───────────────────────────────────────────────────────────────╯ - GET get one│╭──────────────────────────────────────────────────── Response ─╮ -▼ users/││BodyHeadersCookiesTrace - GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -│─────────────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                        + +POSThttps://jsonplaceholder.typicode.com/posts                              Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ +▼ posts/HeadersBodyQueryAuthInfoOptions + GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get oneRaw (json, text, etc.) +█ POS create1  { + DEL delete a post2  "title""foo",                                          +▼ comments/3  "body""bar",                                           + GET get comments4  "userId"1 + GET get comments (via pa5  }                                                          + PUT edit a comment +▼ todos/2:1JSONWrap X + GET get all╰───────────────────────────────────────────────────────────────╯ + GET get one│╭──────────────────────────────────────────────────── Response ─╮ +▼ users/││BodyHeadersCookiesTrace + GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +│─────────────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Hel diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg index 7d5f23ae..cf194648 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg @@ -19,198 +19,198 @@ font-weight: 700; } - .terminal-180049966-matrix { + .terminal-65135865-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-180049966-title { + .terminal-65135865-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-180049966-r1 { fill: #1d1f20 } -.terminal-180049966-r2 { fill: #c5c8c6 } -.terminal-180049966-r3 { fill: #ff5c51 } -.terminal-180049966-r4 { fill: #ddf3f5;text-decoration: underline; } -.terminal-180049966-r5 { fill: #ddf3f5 } -.terminal-180049966-r6 { fill: #99dbe3 } -.terminal-180049966-r7 { fill: #d32f2f } -.terminal-180049966-r8 { fill: #797979 } -.terminal-180049966-r9 { fill: #00acc1 } -.terminal-180049966-r10 { fill: #212121 } -.terminal-180049966-r11 { fill: #43a047 } -.terminal-180049966-r12 { fill: #e1effb } -.terminal-180049966-r13 { fill: #5a6065 } -.terminal-180049966-r14 { fill: #ddadb4 } -.terminal-180049966-r15 { fill: #d22f2f } -.terminal-180049966-r16 { fill: #1d1f20;font-weight: bold } -.terminal-180049966-r17 { fill: #6c7378 } -.terminal-180049966-r18 { fill: #8c969c } -.terminal-180049966-r19 { fill: #58d1eb;font-weight: bold } -.terminal-180049966-r20 { fill: #747779;font-weight: bold } -.terminal-180049966-r21 { fill: #1f2021;font-weight: bold } -.terminal-180049966-r22 { fill: #da9096 } -.terminal-180049966-r23 { fill: #1c1e1f } -.terminal-180049966-r24 { fill: #575c61 } -.terminal-180049966-r25 { fill: #f6fbfe } -.terminal-180049966-r26 { fill: #c4d1da;font-weight: bold } -.terminal-180049966-r27 { fill: #c4d1da } -.terminal-180049966-r28 { fill: #585e62 } -.terminal-180049966-r29 { fill: #d9e6f0 } -.terminal-180049966-r30 { fill: #d7696c } -.terminal-180049966-r31 { fill: #71797e } -.terminal-180049966-r32 { fill: #555b5f } -.terminal-180049966-r33 { fill: #7f888e } -.terminal-180049966-r34 { fill: #d4e0ea } -.terminal-180049966-r35 { fill: #73b87d;font-weight: bold } -.terminal-180049966-r36 { fill: #eb4640;font-weight: bold } -.terminal-180049966-r37 { fill: #222425 } + .terminal-65135865-r1 { fill: #1d1f20 } +.terminal-65135865-r2 { fill: #c5c8c6 } +.terminal-65135865-r3 { fill: #ff5c51 } +.terminal-65135865-r4 { fill: #ddf3f5;text-decoration: underline; } +.terminal-65135865-r5 { fill: #ddf3f5 } +.terminal-65135865-r6 { fill: #99dbe3 } +.terminal-65135865-r7 { fill: #d32f2f } +.terminal-65135865-r8 { fill: #797979 } +.terminal-65135865-r9 { fill: #00acc1 } +.terminal-65135865-r10 { fill: #212121 } +.terminal-65135865-r11 { fill: #43a047 } +.terminal-65135865-r12 { fill: #e1effb } +.terminal-65135865-r13 { fill: #5a6065 } +.terminal-65135865-r14 { fill: #ddadb4 } +.terminal-65135865-r15 { fill: #d22f2f } +.terminal-65135865-r16 { fill: #1d1f20;font-weight: bold } +.terminal-65135865-r17 { fill: #6c7378 } +.terminal-65135865-r18 { fill: #8c969c } +.terminal-65135865-r19 { fill: #58d1eb;font-weight: bold } +.terminal-65135865-r20 { fill: #747779;font-weight: bold } +.terminal-65135865-r21 { fill: #1f2021;font-weight: bold } +.terminal-65135865-r22 { fill: #da9096 } +.terminal-65135865-r23 { fill: #1c1e1f } +.terminal-65135865-r24 { fill: #575c61 } +.terminal-65135865-r25 { fill: #f6fbfe } +.terminal-65135865-r26 { fill: #c4d1da;font-weight: bold } +.terminal-65135865-r27 { fill: #c4d1da } +.terminal-65135865-r28 { fill: #585e62 } +.terminal-65135865-r29 { fill: #d9e6f0 } +.terminal-65135865-r30 { fill: #d7696c } +.terminal-65135865-r31 { fill: #71797e } +.terminal-65135865-r32 { fill: #555b5f } +.terminal-65135865-r33 { fill: #7f888e } +.terminal-65135865-r34 { fill: #d4e0ea } +.terminal-65135865-r35 { fill: #73b87d;font-weight: bold } +.terminal-65135865-r36 { fill: #eb4640;font-weight: bold } +.terminal-65135865-r37 { fill: #222425 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                        - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ - GET get allHeadersBodyQueryAuthInfoOptions -█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -None -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╰───────────────────────────────────────────────────────────────╯ -│╭──────────────────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -││ -││ -││ -││ -│─────────────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                        + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ + GET get allHeadersBodyQueryAuthInfoOptions +█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +None +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╰───────────────────────────────────────────────────────────────╯ +│╭──────────────────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +││ +││ +││ +││ +│─────────────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg index d49c2d75..71fd383e 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg @@ -19,169 +19,169 @@ font-weight: 700; } - .terminal-1746486582-matrix { + .terminal-196906796-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1746486582-title { + .terminal-196906796-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1746486582-r1 { fill: #171819 } -.terminal-1746486582-r2 { fill: #c5c8c6 } -.terminal-1746486582-r3 { fill: #17191a } -.terminal-1746486582-r4 { fill: #cc4940 } -.terminal-1746486582-r5 { fill: #b0c2c4;text-decoration: underline; } -.terminal-1746486582-r6 { fill: #b0c2c4 } -.terminal-1746486582-r7 { fill: #7aafb5 } -.terminal-1746486582-r8 { fill: #d22f2f } -.terminal-1746486582-r9 { fill: #1a1a1a } -.terminal-1746486582-r10 { fill: #b4bfc8 } -.terminal-1746486582-r11 { fill: #484c50 } -.terminal-1746486582-r12 { fill: #f9e3e3 } -.terminal-1746486582-r13 { fill: #a82525 } -.terminal-1746486582-r14 { fill: #171819;font-weight: bold } -.terminal-1746486582-r15 { fill: #b08a90 } -.terminal-1746486582-r16 { fill: #ba7b7b;font-weight: bold } -.terminal-1746486582-r17 { fill: #c7b5b5;font-weight: bold } -.terminal-1746486582-r18 { fill: #17191a;font-weight: bold } -.terminal-1746486582-r19 { fill: #1e88e5;font-weight: bold } -.terminal-1746486582-r20 { fill: #70787c } -.terminal-1746486582-r21 { fill: #565b5f } -.terminal-1746486582-r22 { fill: #a5afb5 } -.terminal-1746486582-r23 { fill: #c4c8cb } -.terminal-1746486582-r24 { fill: #565b5f;font-weight: bold } -.terminal-1746486582-r25 { fill: #bababa } -.terminal-1746486582-r26 { fill: #00500a } -.terminal-1746486582-r27 { fill: #7e7e7e } -.terminal-1746486582-r28 { fill: #b8c2c9 } -.terminal-1746486582-r29 { fill: #9ca7ae;font-weight: bold } -.terminal-1746486582-r30 { fill: #9ca7ae } -.terminal-1746486582-r31 { fill: #464b4e } -.terminal-1746486582-r32 { fill: #adb8c0 } -.terminal-1746486582-r33 { fill: #ac5456 } -.terminal-1746486582-r34 { fill: #5a6064 } -.terminal-1746486582-r35 { fill: #44484c } -.terminal-1746486582-r36 { fill: #656c71 } -.terminal-1746486582-r37 { fill: #a9b3bb } -.terminal-1746486582-r38 { fill: #5c9364;font-weight: bold } -.terminal-1746486582-r39 { fill: #bc3833;font-weight: bold } -.terminal-1746486582-r40 { fill: #1b1c1d } + .terminal-196906796-r1 { fill: #171819 } +.terminal-196906796-r2 { fill: #c5c8c6 } +.terminal-196906796-r3 { fill: #17191a } +.terminal-196906796-r4 { fill: #cc4940 } +.terminal-196906796-r5 { fill: #b0c2c4;text-decoration: underline; } +.terminal-196906796-r6 { fill: #b0c2c4 } +.terminal-196906796-r7 { fill: #7aafb5 } +.terminal-196906796-r8 { fill: #d22f2f } +.terminal-196906796-r9 { fill: #1a1a1a } +.terminal-196906796-r10 { fill: #b4bfc8 } +.terminal-196906796-r11 { fill: #484c50 } +.terminal-196906796-r12 { fill: #f9e3e3 } +.terminal-196906796-r13 { fill: #a82525 } +.terminal-196906796-r14 { fill: #171819;font-weight: bold } +.terminal-196906796-r15 { fill: #b08a90 } +.terminal-196906796-r16 { fill: #ba7b7b;font-weight: bold } +.terminal-196906796-r17 { fill: #c7b5b5;font-weight: bold } +.terminal-196906796-r18 { fill: #17191a;font-weight: bold } +.terminal-196906796-r19 { fill: #1e88e5;font-weight: bold } +.terminal-196906796-r20 { fill: #70787c } +.terminal-196906796-r21 { fill: #565b5f } +.terminal-196906796-r22 { fill: #a5afb5 } +.terminal-196906796-r23 { fill: #c4c8cb } +.terminal-196906796-r24 { fill: #565b5f;font-weight: bold } +.terminal-196906796-r25 { fill: #bababa } +.terminal-196906796-r26 { fill: #00500a } +.terminal-196906796-r27 { fill: #7e7e7e } +.terminal-196906796-r28 { fill: #b8c2c9 } +.terminal-196906796-r29 { fill: #9ca7ae;font-weight: bold } +.terminal-196906796-r30 { fill: #9ca7ae } +.terminal-196906796-r31 { fill: #464b4e } +.terminal-196906796-r32 { fill: #adb8c0 } +.terminal-196906796-r33 { fill: #ac5456 } +.terminal-196906796-r34 { fill: #5a6064 } +.terminal-196906796-r35 { fill: #44484c } +.terminal-196906796-r36 { fill: #656c71 } +.terminal-196906796-r37 { fill: #a9b3bb } +.terminal-196906796-r38 { fill: #5c9364;font-weight: bold } +.terminal-196906796-r39 { fill: #bc3833;font-weight: bold } +.terminal-196906796-r40 { fill: #1b1c1d } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -anothertest -╭─ Collection── Request ─╮ - GET echo  theme: anothertesttions - GET get ranSet the theme to anothertest━━━━━━━━━━━━ - POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all      NameValue Add header  - GET get one      ╰─────────────────────────────────────────────────╯ - POS create       ╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GET Send  +anothertest +╭─ Collection── Request ─╮ + GET echo  theme: anothertesttions + GET get ranSet the theme to anothertest━━━━━━━━━━━━ + POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all      NameValue Add header  + GET get one      ╰─────────────────────────────────────────────────╯ + POS create       ╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg b/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg index 697a5bb6..caeacb5d 100644 --- a/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg +++ b/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg @@ -19,246 +19,246 @@ font-weight: 700; } - .terminal-1191216534-matrix { + .terminal-2326056393-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1191216534-title { + .terminal-2326056393-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1191216534-r1 { fill: #9c9c9c } -.terminal-1191216534-r2 { fill: #c5c8c6 } -.terminal-1191216534-r3 { fill: #dfdfdf } -.terminal-1191216534-r4 { fill: #b2903c } -.terminal-1191216534-r5 { fill: #9ca6ae;text-decoration: underline; } -.terminal-1191216534-r6 { fill: #9ca6ae } -.terminal-1191216534-r7 { fill: #6d8ea6 } -.terminal-1191216534-r8 { fill: #505050 } -.terminal-1191216534-r9 { fill: #9d9d9d } -.terminal-1191216534-r10 { fill: #9aa1a5 } -.terminal-1191216534-r11 { fill: #707070 } -.terminal-1191216534-r12 { fill: #313131 } -.terminal-1191216534-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-1191216534-r14 { fill: #e0e0e0 } -.terminal-1191216534-r15 { fill: #463012 } -.terminal-1191216534-r16 { fill: #121212 } -.terminal-1191216534-r17 { fill: #6a6b6d;font-weight: bold } -.terminal-1191216534-r18 { fill: #9e9e9f;font-weight: bold } -.terminal-1191216534-r19 { fill: #a6a6a6;font-weight: bold } -.terminal-1191216534-r20 { fill: #4b4b4b } -.terminal-1191216534-r21 { fill: #626262 } -.terminal-1191216534-r22 { fill: #1b1b1b } -.terminal-1191216534-r23 { fill: #191919 } -.terminal-1191216534-r24 { fill: #626262;font-weight: bold } -.terminal-1191216534-r25 { fill: #8d8d8d;font-weight: bold } -.terminal-1191216534-r26 { fill: #005a27 } -.terminal-1191216534-r27 { fill: #a6a6a6 } -.terminal-1191216534-r28 { fill: #e1e1e1;font-weight: bold } -.terminal-1191216534-r29 { fill: #e1e1e1 } -.terminal-1191216534-r30 { fill: #e0e0e1 } -.terminal-1191216534-r31 { fill: #e0e0e1;font-weight: bold } -.terminal-1191216534-r32 { fill: #dfe1e2 } -.terminal-1191216534-r33 { fill: #626466 } -.terminal-1191216534-r34 { fill: #dfe1e2;font-weight: bold } -.terminal-1191216534-r35 { fill: #717171 } -.terminal-1191216534-r36 { fill: #131313 } -.terminal-1191216534-r37 { fill: #0d0d0d } -.terminal-1191216534-r38 { fill: #707070;font-weight: bold } -.terminal-1191216534-r39 { fill: #5f5f5f } -.terminal-1191216534-r40 { fill: #727272 } -.terminal-1191216534-r41 { fill: #545454 } -.terminal-1191216534-r42 { fill: #171717 } -.terminal-1191216534-r43 { fill: #2a613a;font-weight: bold } -.terminal-1191216534-r44 { fill: #b2822d;font-weight: bold } -.terminal-1191216534-r45 { fill: #999999 } + .terminal-2326056393-r1 { fill: #9c9c9c } +.terminal-2326056393-r2 { fill: #c5c8c6 } +.terminal-2326056393-r3 { fill: #dfdfdf } +.terminal-2326056393-r4 { fill: #b2903c } +.terminal-2326056393-r5 { fill: #9ca6ae;text-decoration: underline; } +.terminal-2326056393-r6 { fill: #9ca6ae } +.terminal-2326056393-r7 { fill: #6d8ea6 } +.terminal-2326056393-r8 { fill: #505050 } +.terminal-2326056393-r9 { fill: #9d9d9d } +.terminal-2326056393-r10 { fill: #9aa1a5 } +.terminal-2326056393-r11 { fill: #707070 } +.terminal-2326056393-r12 { fill: #313131 } +.terminal-2326056393-r13 { fill: #e0e0e0;font-weight: bold } +.terminal-2326056393-r14 { fill: #e0e0e0 } +.terminal-2326056393-r15 { fill: #463012 } +.terminal-2326056393-r16 { fill: #121212 } +.terminal-2326056393-r17 { fill: #6a6b6d;font-weight: bold } +.terminal-2326056393-r18 { fill: #9e9e9f;font-weight: bold } +.terminal-2326056393-r19 { fill: #a6a6a6;font-weight: bold } +.terminal-2326056393-r20 { fill: #4b4b4b } +.terminal-2326056393-r21 { fill: #626262 } +.terminal-2326056393-r22 { fill: #1b1b1b } +.terminal-2326056393-r23 { fill: #191919 } +.terminal-2326056393-r24 { fill: #626262;font-weight: bold } +.terminal-2326056393-r25 { fill: #8d8d8d;font-weight: bold } +.terminal-2326056393-r26 { fill: #005a27 } +.terminal-2326056393-r27 { fill: #a6a6a6 } +.terminal-2326056393-r28 { fill: #e1e1e1;font-weight: bold } +.terminal-2326056393-r29 { fill: #e1e1e1 } +.terminal-2326056393-r30 { fill: #e0e0e1 } +.terminal-2326056393-r31 { fill: #e0e0e1;font-weight: bold } +.terminal-2326056393-r32 { fill: #dfe1e2 } +.terminal-2326056393-r33 { fill: #626466 } +.terminal-2326056393-r34 { fill: #dfe1e2;font-weight: bold } +.terminal-2326056393-r35 { fill: #717171 } +.terminal-2326056393-r36 { fill: #131313 } +.terminal-2326056393-r37 { fill: #0d0d0d } +.terminal-2326056393-r38 { fill: #707070;font-weight: bold } +.terminal-2326056393-r39 { fill: #5f5f5f } +.terminal-2326056393-r40 { fill: #727272 } +.terminal-2326056393-r41 { fill: #545454 } +.terminal-2326056393-r42 { fill: #171717 } +.terminal-2326056393-r43 { fill: #2a613a;font-weight: bold } +.terminal-2326056393-r44 { fill: #b2822d;font-weight: bold } +.terminal-2326056393-r45 { fill: #999999 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  -▁▁Focused Widget Help (Address Bar)▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ -╭─ Collectio Request ─╮ - GET echoAddress Barions - GET get raEnter the URL to send a request to. Refer to ━━━━━━━━━━━ - POS echo pvariables from the environment (loaded via ╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplace--env) using $variable or ${variable} syntax. ╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/Resolved variables will be highlighted green. ╱╱╱╱╱╱╱╱╱╱╱ - GET geMove the cursor over a variable to preview the╱╱╱╱╱╱╱╱╱╱╱ - GET gevalue. Base URL suggestions are loaded based ╱╱╱╱╱╱╱╱╱╱╱ - POS cron the URLs found in the currently open ╱╱╱╱╱╱╱╱╱╱╱ - DEL decollection. Press ctrl+l to quickly focus this╱╱╱╱╱╱╱╱╱╱╱ -▼ commebar from elsewhere.╱╱╱╱╱╱╱╱╱╱╱ - GET ╱╱╱╱╱╱╱╱╱╱╱ - GET All Keybindings╱╱╱╱╱╱╱╱╱╱╱ - PUT  Key     Description                   ╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/ cursor left                   ╱╱╱╱╱╱╱╱╱╱╱ - GET gectrl+← cursor left word               header  - GET ge cursor right                  ───────────╯ -▼ users/ctrl+→ cursor right word              Response ─╮ - GET ge delete left                    - GET gehome home                          ━━━━━━━━━━━ - POS crctrl+a home                           - PUT upend end                            - DEL dectrl+e end                            -delete delete right                   -ctrl+d delete right                   - submit                         - -Press ESC to dismiss. -│───────────Note: This page relates to the widget that is  -This is ancurrently focused. -server we  -see exactl▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  +▁▁Focused Widget Help (Address Bar)▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ +╭─ Collectio Request ─╮ + GET echoAddress Barions + GET get raEnter the URL to send a request to. Refer to ━━━━━━━━━━━ + POS echo pvariables from the environment (loaded via ╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplace--env) using $variable or ${variable} syntax. ╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/Resolved variables will be highlighted green. ╱╱╱╱╱╱╱╱╱╱╱ + GET geMove the cursor over a variable to preview the╱╱╱╱╱╱╱╱╱╱╱ + GET gevalue. Base URL suggestions are loaded based ╱╱╱╱╱╱╱╱╱╱╱ + POS cron the URLs found in the currently open ╱╱╱╱╱╱╱╱╱╱╱ + DEL decollection. Press ctrl+l to quickly focus this╱╱╱╱╱╱╱╱╱╱╱ +▼ commebar from elsewhere.╱╱╱╱╱╱╱╱╱╱╱ + GET ╱╱╱╱╱╱╱╱╱╱╱ + GET All Keybindings╱╱╱╱╱╱╱╱╱╱╱ + PUT  Key     Description                   ╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/ cursor left                   ╱╱╱╱╱╱╱╱╱╱╱ + GET gectrl+← cursor left word               header  + GET ge cursor right                  ───────────╯ +▼ users/ctrl+→ cursor right word              Response ─╮ + GET ge delete left                    + GET gehome home                          ━━━━━━━━━━━ + POS crctrl+a home                           + PUT upend end                            + DEL dectrl+e end                            +delete delete right                   +ctrl+d delete right                   + submit                         + +Press ESC to dismiss. +│───────────Note: This page relates to the widget that is  +This is ancurrently focused. +server we  +see exactl▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg index a52322da..b8bd382f 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-1869818591-matrix { + .terminal-1980658723-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1869818591-title { + .terminal-1980658723-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1869818591-r1 { fill: #e0e0e0 } -.terminal-1869818591-r2 { fill: #c5c8c6 } -.terminal-1869818591-r3 { fill: #ffcf56 } -.terminal-1869818591-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1869818591-r5 { fill: #dfeef9 } -.terminal-1869818591-r6 { fill: #9dcbee } -.terminal-1869818591-r7 { fill: #737373 } -.terminal-1869818591-r8 { fill: #e1e1e1 } -.terminal-1869818591-r9 { fill: #dde6ed } -.terminal-1869818591-r10 { fill: #a0a0a0 } -.terminal-1869818591-r11 { fill: #64451a } -.terminal-1869818591-r12 { fill: #fea62b } -.terminal-1869818591-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-1869818591-r14 { fill: #989a9c;font-weight: bold } -.terminal-1869818591-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-1869818591-r16 { fill: #6c6c6c } -.terminal-1869818591-r17 { fill: #8d8d8d } -.terminal-1869818591-r18 { fill: #885c1e } -.terminal-1869818591-r19 { fill: #323232 } -.terminal-1869818591-r20 { fill: #4ebf71;font-weight: bold } -.terminal-1869818591-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-1869818591-r22 { fill: #0d0d0d } -.terminal-1869818591-r23 { fill: #008139 } -.terminal-1869818591-r24 { fill: #313131;font-weight: bold } -.terminal-1869818591-r25 { fill: #313131 } -.terminal-1869818591-r26 { fill: #a2a2a2 } -.terminal-1869818591-r27 { fill: #1c1c1c } -.terminal-1869818591-r28 { fill: #b77923 } -.terminal-1869818591-r29 { fill: #888888 } -.terminal-1869818591-r30 { fill: #a4a4a4 } -.terminal-1869818591-r31 { fill: #787878 } -.terminal-1869818591-r32 { fill: #212121 } -.terminal-1869818591-r33 { fill: #3c8b54;font-weight: bold } -.terminal-1869818591-r34 { fill: #ffba41;font-weight: bold } -.terminal-1869818591-r35 { fill: #dbdbdb } + .terminal-1980658723-r1 { fill: #e0e0e0 } +.terminal-1980658723-r2 { fill: #c5c8c6 } +.terminal-1980658723-r3 { fill: #ffcf56 } +.terminal-1980658723-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1980658723-r5 { fill: #dfeef9 } +.terminal-1980658723-r6 { fill: #9dcbee } +.terminal-1980658723-r7 { fill: #737373 } +.terminal-1980658723-r8 { fill: #e1e1e1 } +.terminal-1980658723-r9 { fill: #dde6ed } +.terminal-1980658723-r10 { fill: #a0a0a0 } +.terminal-1980658723-r11 { fill: #64451a } +.terminal-1980658723-r12 { fill: #fea62b } +.terminal-1980658723-r13 { fill: #e0e0e0;font-weight: bold } +.terminal-1980658723-r14 { fill: #989a9c;font-weight: bold } +.terminal-1980658723-r15 { fill: #e3e3e4;font-weight: bold } +.terminal-1980658723-r16 { fill: #6c6c6c } +.terminal-1980658723-r17 { fill: #8d8d8d } +.terminal-1980658723-r18 { fill: #885c1e } +.terminal-1980658723-r19 { fill: #323232 } +.terminal-1980658723-r20 { fill: #4ebf71;font-weight: bold } +.terminal-1980658723-r21 { fill: #8d8d8d;font-weight: bold } +.terminal-1980658723-r22 { fill: #0d0d0d } +.terminal-1980658723-r23 { fill: #008139 } +.terminal-1980658723-r24 { fill: #313131;font-weight: bold } +.terminal-1980658723-r25 { fill: #313131 } +.terminal-1980658723-r26 { fill: #a2a2a2 } +.terminal-1980658723-r27 { fill: #1c1c1c } +.terminal-1980658723-r28 { fill: #b77923 } +.terminal-1980658723-r29 { fill: #888888 } +.terminal-1980658723-r30 { fill: #a4a4a4 } +.terminal-1980658723-r31 { fill: #787878 } +.terminal-1980658723-r32 { fill: #212121 } +.terminal-1980658723-r33 { fill: #3c8b54;font-weight: bold } +.terminal-1980658723-r34 { fill: #ffba41;font-weight: bold } +.terminal-1980658723-r35 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━━━━ - POS echo postX Follow redirects -▼ jsonplaceholder/ -▼ posts/X Verify SSL certificates - GET get all - GET get one╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━━━━ + POS echo postX Follow redirects +▼ jsonplaceholder/ +▼ posts/X Verify SSL certificates + GET get all + GET get one╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg index edd7bfa8..09a360b7 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-2864452252-matrix { + .terminal-3192216544-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2864452252-title { + .terminal-3192216544-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2864452252-r1 { fill: #e0e0e0 } -.terminal-2864452252-r2 { fill: #c5c8c6 } -.terminal-2864452252-r3 { fill: #ffcf56 } -.terminal-2864452252-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2864452252-r5 { fill: #dfeef9 } -.terminal-2864452252-r6 { fill: #9dcbee } -.terminal-2864452252-r7 { fill: #737373 } -.terminal-2864452252-r8 { fill: #e1e1e1 } -.terminal-2864452252-r9 { fill: #dde6ed } -.terminal-2864452252-r10 { fill: #a0a0a0 } -.terminal-2864452252-r11 { fill: #fea62b } -.terminal-2864452252-r12 { fill: #e0e0e0;font-weight: bold } -.terminal-2864452252-r13 { fill: #64451a } -.terminal-2864452252-r14 { fill: #794f14;font-weight: bold } -.terminal-2864452252-r15 { fill: #211505;font-weight: bold } -.terminal-2864452252-r16 { fill: #6c6c6c } -.terminal-2864452252-r17 { fill: #8d8d8d } -.terminal-2864452252-r18 { fill: #272727 } -.terminal-2864452252-r19 { fill: #242424 } -.terminal-2864452252-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-2864452252-r21 { fill: #0d0d0d } -.terminal-2864452252-r22 { fill: #008139 } -.terminal-2864452252-r23 { fill: #8c9092 } -.terminal-2864452252-r24 { fill: #313131;font-weight: bold } -.terminal-2864452252-r25 { fill: #313131 } -.terminal-2864452252-r26 { fill: #a2a2a2 } -.terminal-2864452252-r27 { fill: #1c1c1c } -.terminal-2864452252-r28 { fill: #b77923 } -.terminal-2864452252-r29 { fill: #888888 } -.terminal-2864452252-r30 { fill: #a4a4a4 } -.terminal-2864452252-r31 { fill: #787878 } -.terminal-2864452252-r32 { fill: #212121 } -.terminal-2864452252-r33 { fill: #3c8b54;font-weight: bold } -.terminal-2864452252-r34 { fill: #ffba41;font-weight: bold } -.terminal-2864452252-r35 { fill: #dbdbdb } + .terminal-3192216544-r1 { fill: #e0e0e0 } +.terminal-3192216544-r2 { fill: #c5c8c6 } +.terminal-3192216544-r3 { fill: #ffcf56 } +.terminal-3192216544-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-3192216544-r5 { fill: #dfeef9 } +.terminal-3192216544-r6 { fill: #9dcbee } +.terminal-3192216544-r7 { fill: #737373 } +.terminal-3192216544-r8 { fill: #e1e1e1 } +.terminal-3192216544-r9 { fill: #dde6ed } +.terminal-3192216544-r10 { fill: #a0a0a0 } +.terminal-3192216544-r11 { fill: #fea62b } +.terminal-3192216544-r12 { fill: #e0e0e0;font-weight: bold } +.terminal-3192216544-r13 { fill: #64451a } +.terminal-3192216544-r14 { fill: #794f14;font-weight: bold } +.terminal-3192216544-r15 { fill: #211505;font-weight: bold } +.terminal-3192216544-r16 { fill: #6c6c6c } +.terminal-3192216544-r17 { fill: #8d8d8d } +.terminal-3192216544-r18 { fill: #272727 } +.terminal-3192216544-r19 { fill: #242424 } +.terminal-3192216544-r20 { fill: #8d8d8d;font-weight: bold } +.terminal-3192216544-r21 { fill: #0d0d0d } +.terminal-3192216544-r22 { fill: #008139 } +.terminal-3192216544-r23 { fill: #8c9092 } +.terminal-3192216544-r24 { fill: #313131;font-weight: bold } +.terminal-3192216544-r25 { fill: #313131 } +.terminal-3192216544-r26 { fill: #a2a2a2 } +.terminal-3192216544-r27 { fill: #1c1c1c } +.terminal-3192216544-r28 { fill: #b77923 } +.terminal-3192216544-r29 { fill: #888888 } +.terminal-3192216544-r30 { fill: #a4a4a4 } +.terminal-3192216544-r31 { fill: #787878 } +.terminal-3192216544-r32 { fill: #212121 } +.terminal-3192216544-r33 { fill: #3c8b54;font-weight: bold } +.terminal-3192216544-r34 { fill: #ffba41;font-weight: bold } +.terminal-3192216544-r35 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg index bf05a7a0..936d90e8 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg @@ -19,246 +19,246 @@ font-weight: 700; } - .terminal-125721978-matrix { + .terminal-3228411582-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-125721978-title { + .terminal-3228411582-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-125721978-r1 { fill: #e0e0e0 } -.terminal-125721978-r2 { fill: #c5c8c6 } -.terminal-125721978-r3 { fill: #ffcf56 } -.terminal-125721978-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-125721978-r5 { fill: #dfeef9 } -.terminal-125721978-r6 { fill: #9dcbee } -.terminal-125721978-r7 { fill: #ffa62b } -.terminal-125721978-r8 { fill: #939393 } -.terminal-125721978-r9 { fill: #0178d4 } -.terminal-125721978-r10 { fill: #e1e1e1 } -.terminal-125721978-r11 { fill: #dde6ed } -.terminal-125721978-r12 { fill: #a0a0a0 } -.terminal-125721978-r13 { fill: #64451a } -.terminal-125721978-r14 { fill: #fea62b } -.terminal-125721978-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-125721978-r16 { fill: #8d8d8d } -.terminal-125721978-r17 { fill: #6c6c6c } -.terminal-125721978-r18 { fill: #58d1eb;font-weight: bold } -.terminal-125721978-r19 { fill: #885c1e } -.terminal-125721978-r20 { fill: #989a9c;font-weight: bold } -.terminal-125721978-r21 { fill: #e3e3e4;font-weight: bold } -.terminal-125721978-r22 { fill: #8d8d8d;font-weight: bold } -.terminal-125721978-r23 { fill: #a3a3a3 } -.terminal-125721978-r24 { fill: #008139 } -.terminal-125721978-r25 { fill: #ba3c5b } -.terminal-125721978-r26 { fill: #313131;font-weight: bold } -.terminal-125721978-r27 { fill: #313131 } -.terminal-125721978-r28 { fill: #a2a2a2 } -.terminal-125721978-r29 { fill: #1c1c1c } -.terminal-125721978-r30 { fill: #b77923 } -.terminal-125721978-r31 { fill: #888888 } -.terminal-125721978-r32 { fill: #a4a4a4 } -.terminal-125721978-r33 { fill: #787878 } -.terminal-125721978-r34 { fill: #212121 } -.terminal-125721978-r35 { fill: #3c8b54;font-weight: bold } -.terminal-125721978-r36 { fill: #ffba41;font-weight: bold } -.terminal-125721978-r37 { fill: #dbdbdb } + .terminal-3228411582-r1 { fill: #e0e0e0 } +.terminal-3228411582-r2 { fill: #c5c8c6 } +.terminal-3228411582-r3 { fill: #ffcf56 } +.terminal-3228411582-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-3228411582-r5 { fill: #dfeef9 } +.terminal-3228411582-r6 { fill: #9dcbee } +.terminal-3228411582-r7 { fill: #ffa62b } +.terminal-3228411582-r8 { fill: #939393 } +.terminal-3228411582-r9 { fill: #0178d4 } +.terminal-3228411582-r10 { fill: #e1e1e1 } +.terminal-3228411582-r11 { fill: #dde6ed } +.terminal-3228411582-r12 { fill: #a0a0a0 } +.terminal-3228411582-r13 { fill: #64451a } +.terminal-3228411582-r14 { fill: #fea62b } +.terminal-3228411582-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-3228411582-r16 { fill: #8d8d8d } +.terminal-3228411582-r17 { fill: #6c6c6c } +.terminal-3228411582-r18 { fill: #58d1eb;font-weight: bold } +.terminal-3228411582-r19 { fill: #885c1e } +.terminal-3228411582-r20 { fill: #989a9c;font-weight: bold } +.terminal-3228411582-r21 { fill: #e3e3e4;font-weight: bold } +.terminal-3228411582-r22 { fill: #8d8d8d;font-weight: bold } +.terminal-3228411582-r23 { fill: #a3a3a3 } +.terminal-3228411582-r24 { fill: #008139 } +.terminal-3228411582-r25 { fill: #ba3c5b } +.terminal-3228411582-r26 { fill: #313131;font-weight: bold } +.terminal-3228411582-r27 { fill: #313131 } +.terminal-3228411582-r28 { fill: #a2a2a2 } +.terminal-3228411582-r29 { fill: #1c1c1c } +.terminal-3228411582-r30 { fill: #b77923 } +.terminal-3228411582-r31 { fill: #888888 } +.terminal-3228411582-r32 { fill: #a4a4a4 } +.terminal-3228411582-r33 { fill: #787878 } +.terminal-3228411582-r34 { fill: #212121 } +.terminal-3228411582-r35 { fill: #3c8b54;font-weight: bold } +.terminal-3228411582-r36 { fill: #ffba41;font-weight: bold } +.terminal-3228411582-r37 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://postman-echo.com/post                       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━ -█ POS echo postAuth type             Authorization headers -▼ jsonplaceholder/Basicwill be generated  -▼ posts/when the request is  - GET get allsent. - GET get one - POS createUsername                                      - DEL delete a postdarren                                      -▼ comments/ - GET get commentsPassword                                      - GET get comments$domain - PUT edit a comme -▼ todos/ - GET get all - GET get one -▼ users/╰─────────────────────────────────────────────────╯ - GET get a user│╭────────────────────────────────────── Response ─╮ - GET get all users││BodyHeadersCookiesTrace - POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -│───────────────────────││ -Echo server for post ││ -requests.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +POSThttps://postman-echo.com/post                       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━ +█ POS echo postAuth type             Authorization headers +▼ jsonplaceholder/Basicwill be generated  +▼ posts/when the request is  + GET get allsent. + GET get one + POS createUsername                                      + DEL delete a postdarren                                      +▼ comments/ + GET get commentsPassword                                      + GET get comments$domain + PUT edit a comme +▼ todos/ + GET get all + GET get one +▼ users/╰─────────────────────────────────────────────────╯ + GET get a user│╭────────────────────────────────────── Response ─╮ + GET get all users││BodyHeadersCookiesTrace + POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +│───────────────────────││ +Echo server for post ││ +requests.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg index e9174fe3..f8146994 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-4143322334-matrix { + .terminal-4254555682-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4143322334-title { + .terminal-4254555682-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4143322334-r1 { fill: #e0e0e0 } -.terminal-4143322334-r2 { fill: #c5c8c6 } -.terminal-4143322334-r3 { fill: #ffcf56 } -.terminal-4143322334-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-4143322334-r5 { fill: #dfeef9 } -.terminal-4143322334-r6 { fill: #9dcbee } -.terminal-4143322334-r7 { fill: #ffa62b } -.terminal-4143322334-r8 { fill: #939393 } -.terminal-4143322334-r9 { fill: #0178d4 } -.terminal-4143322334-r10 { fill: #e1e1e1 } -.terminal-4143322334-r11 { fill: #dde6ed } -.terminal-4143322334-r12 { fill: #a0a0a0 } -.terminal-4143322334-r13 { fill: #64451a } -.terminal-4143322334-r14 { fill: #fea62b } -.terminal-4143322334-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-4143322334-r16 { fill: #8d8d8d } -.terminal-4143322334-r17 { fill: #6c6c6c } -.terminal-4143322334-r18 { fill: #58d1eb;font-weight: bold } -.terminal-4143322334-r19 { fill: #885c1e } -.terminal-4143322334-r20 { fill: #a3a3a3 } -.terminal-4143322334-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-4143322334-r22 { fill: #a3a3a3;font-weight: bold } -.terminal-4143322334-r23 { fill: #e8e8e8 } -.terminal-4143322334-r24 { fill: #008139 } -.terminal-4143322334-r25 { fill: #707070 } -.terminal-4143322334-r26 { fill: #569cd6;font-weight: bold } -.terminal-4143322334-r27 { fill: #ce9178 } -.terminal-4143322334-r28 { fill: #b5cea8 } -.terminal-4143322334-r29 { fill: #989a9c;font-weight: bold } -.terminal-4143322334-r30 { fill: #e3e3e4;font-weight: bold } -.terminal-4143322334-r31 { fill: #888888 } -.terminal-4143322334-r32 { fill: #323232 } -.terminal-4143322334-r33 { fill: #4ebf71;font-weight: bold } -.terminal-4143322334-r34 { fill: #313131;font-weight: bold } -.terminal-4143322334-r35 { fill: #313131 } -.terminal-4143322334-r36 { fill: #a2a2a2 } -.terminal-4143322334-r37 { fill: #1c1c1c } -.terminal-4143322334-r38 { fill: #b77923 } -.terminal-4143322334-r39 { fill: #a4a4a4 } -.terminal-4143322334-r40 { fill: #787878 } -.terminal-4143322334-r41 { fill: #212121 } -.terminal-4143322334-r42 { fill: #3c8b54;font-weight: bold } -.terminal-4143322334-r43 { fill: #ffba41;font-weight: bold } -.terminal-4143322334-r44 { fill: #dbdbdb } + .terminal-4254555682-r1 { fill: #e0e0e0 } +.terminal-4254555682-r2 { fill: #c5c8c6 } +.terminal-4254555682-r3 { fill: #ffcf56 } +.terminal-4254555682-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-4254555682-r5 { fill: #dfeef9 } +.terminal-4254555682-r6 { fill: #9dcbee } +.terminal-4254555682-r7 { fill: #ffa62b } +.terminal-4254555682-r8 { fill: #939393 } +.terminal-4254555682-r9 { fill: #0178d4 } +.terminal-4254555682-r10 { fill: #e1e1e1 } +.terminal-4254555682-r11 { fill: #dde6ed } +.terminal-4254555682-r12 { fill: #a0a0a0 } +.terminal-4254555682-r13 { fill: #64451a } +.terminal-4254555682-r14 { fill: #fea62b } +.terminal-4254555682-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-4254555682-r16 { fill: #8d8d8d } +.terminal-4254555682-r17 { fill: #6c6c6c } +.terminal-4254555682-r18 { fill: #58d1eb;font-weight: bold } +.terminal-4254555682-r19 { fill: #885c1e } +.terminal-4254555682-r20 { fill: #a3a3a3 } +.terminal-4254555682-r21 { fill: #8d8d8d;font-weight: bold } +.terminal-4254555682-r22 { fill: #a3a3a3;font-weight: bold } +.terminal-4254555682-r23 { fill: #e8e8e8 } +.terminal-4254555682-r24 { fill: #008139 } +.terminal-4254555682-r25 { fill: #707070 } +.terminal-4254555682-r26 { fill: #569cd6;font-weight: bold } +.terminal-4254555682-r27 { fill: #ce9178 } +.terminal-4254555682-r28 { fill: #b5cea8 } +.terminal-4254555682-r29 { fill: #989a9c;font-weight: bold } +.terminal-4254555682-r30 { fill: #e3e3e4;font-weight: bold } +.terminal-4254555682-r31 { fill: #888888 } +.terminal-4254555682-r32 { fill: #323232 } +.terminal-4254555682-r33 { fill: #4ebf71;font-weight: bold } +.terminal-4254555682-r34 { fill: #313131;font-weight: bold } +.terminal-4254555682-r35 { fill: #313131 } +.terminal-4254555682-r36 { fill: #a2a2a2 } +.terminal-4254555682-r37 { fill: #1c1c1c } +.terminal-4254555682-r38 { fill: #b77923 } +.terminal-4254555682-r39 { fill: #a4a4a4 } +.terminal-4254555682-r40 { fill: #787878 } +.terminal-4254555682-r41 { fill: #212121 } +.terminal-4254555682-r42 { fill: #3c8b54;font-weight: bold } +.terminal-4254555682-r43 { fill: #ffba41;font-weight: bold } +.terminal-4254555682-r44 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://jsonplaceholder.typicode.com/posts          Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo postRaw (json, text, etc.) -▼ jsonplaceholder/1  { -▼ posts/2  "title""foo",                            - GET get all3  "body""bar",                             - GET get one4  "userId"1 -█ POS create5  } - DEL delete a post -▼ comments/ - GET get comments1:1JSONWrap X - GET get comments╰─────────────────────────────────────────────────╯ - PUT edit a comme│╭────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace - GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -│───────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +POSThttps://jsonplaceholder.typicode.com/posts          Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo postRaw (json, text, etc.) +▼ jsonplaceholder/1  { +▼ posts/2  "title""foo",                            + GET get all3  "body""bar",                             + GET get one4  "userId"1 +█ POS create5  } + DEL delete a post +▼ comments/ + GET get comments1:1JSONWrap X + GET get comments╰─────────────────────────────────────────────────╯ + PUT edit a comme│╭────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace + GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +│───────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg index 7a25cac2..32cc2a2b 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg @@ -19,202 +19,202 @@ font-weight: 700; } - .terminal-1428808752-matrix { + .terminal-1611738499-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1428808752-title { + .terminal-1611738499-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1428808752-r1 { fill: #e0e0e0 } -.terminal-1428808752-r2 { fill: #c5c8c6 } -.terminal-1428808752-r3 { fill: #ffcf56 } -.terminal-1428808752-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1428808752-r5 { fill: #dfeef9 } -.terminal-1428808752-r6 { fill: #9dcbee } -.terminal-1428808752-r7 { fill: #737373 } -.terminal-1428808752-r8 { fill: #e1e1e1 } -.terminal-1428808752-r9 { fill: #dde6ed } -.terminal-1428808752-r10 { fill: #a0a0a0 } -.terminal-1428808752-r11 { fill: #fea62b } -.terminal-1428808752-r12 { fill: #e0e0e0;font-weight: bold } -.terminal-1428808752-r13 { fill: #64451a } -.terminal-1428808752-r14 { fill: #8d8d8d } -.terminal-1428808752-r15 { fill: #6c6c6c } -.terminal-1428808752-r16 { fill: #272727 } -.terminal-1428808752-r17 { fill: #242424 } -.terminal-1428808752-r18 { fill: #8d8d8d;font-weight: bold } -.terminal-1428808752-r19 { fill: #008139 } -.terminal-1428808752-r20 { fill: #211505;font-weight: bold } -.terminal-1428808752-r21 { fill: #8c9092 } -.terminal-1428808752-r22 { fill: #313131;font-weight: bold } -.terminal-1428808752-r23 { fill: #313131 } -.terminal-1428808752-r24 { fill: #a2a2a2 } -.terminal-1428808752-r25 { fill: #1c1c1c } -.terminal-1428808752-r26 { fill: #b77923 } -.terminal-1428808752-r27 { fill: #888888 } -.terminal-1428808752-r28 { fill: #a4a4a4 } -.terminal-1428808752-r29 { fill: #787878 } -.terminal-1428808752-r30 { fill: #212121 } -.terminal-1428808752-r31 { fill: #3c8b54;font-weight: bold } -.terminal-1428808752-r32 { fill: #ffba41;font-weight: bold } -.terminal-1428808752-r33 { fill: #dbdbdb } + .terminal-1611738499-r1 { fill: #e0e0e0 } +.terminal-1611738499-r2 { fill: #c5c8c6 } +.terminal-1611738499-r3 { fill: #ffcf56 } +.terminal-1611738499-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1611738499-r5 { fill: #dfeef9 } +.terminal-1611738499-r6 { fill: #9dcbee } +.terminal-1611738499-r7 { fill: #737373 } +.terminal-1611738499-r8 { fill: #e1e1e1 } +.terminal-1611738499-r9 { fill: #dde6ed } +.terminal-1611738499-r10 { fill: #a0a0a0 } +.terminal-1611738499-r11 { fill: #fea62b } +.terminal-1611738499-r12 { fill: #e0e0e0;font-weight: bold } +.terminal-1611738499-r13 { fill: #64451a } +.terminal-1611738499-r14 { fill: #8d8d8d } +.terminal-1611738499-r15 { fill: #6c6c6c } +.terminal-1611738499-r16 { fill: #272727 } +.terminal-1611738499-r17 { fill: #242424 } +.terminal-1611738499-r18 { fill: #8d8d8d;font-weight: bold } +.terminal-1611738499-r19 { fill: #008139 } +.terminal-1611738499-r20 { fill: #211505;font-weight: bold } +.terminal-1611738499-r21 { fill: #8c9092 } +.terminal-1611738499-r22 { fill: #313131;font-weight: bold } +.terminal-1611738499-r23 { fill: #313131 } +.terminal-1611738499-r24 { fill: #a2a2a2 } +.terminal-1611738499-r25 { fill: #1c1c1c } +.terminal-1611738499-r26 { fill: #b77923 } +.terminal-1611738499-r27 { fill: #888888 } +.terminal-1611738499-r28 { fill: #a4a4a4 } +.terminal-1611738499-r29 { fill: #787878 } +.terminal-1611738499-r30 { fill: #212121 } +.terminal-1611738499-r31 { fill: #3c8b54;font-weight: bold } +.terminal-1611738499-r32 { fill: #ffba41;font-weight: bold } +.terminal-1611738499-r33 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all usersNameValue Add header  - POS create a user╰─────────────────────────────────────────────────╯ - PUT update a user╭────────────────────────────────────── Response ─╮ - DEL delete a userBodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - - - - - - -1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all usersNameValue Add header  + POS create a user╰─────────────────────────────────────────────────╯ + PUT update a user╭────────────────────────────────────── Response ─╮ + DEL delete a userBodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + + + + + + +1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg index 934f489c..fe88cc38 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg @@ -19,246 +19,246 @@ font-weight: 700; } - .terminal-2201742234-matrix { + .terminal-4110365933-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2201742234-title { + .terminal-4110365933-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2201742234-r1 { fill: #e0e0e0 } -.terminal-2201742234-r2 { fill: #c5c8c6 } -.terminal-2201742234-r3 { fill: #ffcf56 } -.terminal-2201742234-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2201742234-r5 { fill: #dfeef9 } -.terminal-2201742234-r6 { fill: #9dcbee } -.terminal-2201742234-r7 { fill: #ffa62b } -.terminal-2201742234-r8 { fill: #939393 } -.terminal-2201742234-r9 { fill: #0178d4 } -.terminal-2201742234-r10 { fill: #e1e1e1 } -.terminal-2201742234-r11 { fill: #dde6ed } -.terminal-2201742234-r12 { fill: #a0a0a0 } -.terminal-2201742234-r13 { fill: #64451a } -.terminal-2201742234-r14 { fill: #fea62b } -.terminal-2201742234-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-2201742234-r16 { fill: #8d8d8d } -.terminal-2201742234-r17 { fill: #6c6c6c } -.terminal-2201742234-r18 { fill: #58d1eb;font-weight: bold } -.terminal-2201742234-r19 { fill: #885c1e } -.terminal-2201742234-r20 { fill: #989a9c;font-weight: bold } -.terminal-2201742234-r21 { fill: #e3e3e4;font-weight: bold } -.terminal-2201742234-r22 { fill: #323232 } -.terminal-2201742234-r23 { fill: #4ebf71;font-weight: bold } -.terminal-2201742234-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-2201742234-r25 { fill: #008139 } -.terminal-2201742234-r26 { fill: #313131;font-weight: bold } -.terminal-2201742234-r27 { fill: #313131 } -.terminal-2201742234-r28 { fill: #a2a2a2 } -.terminal-2201742234-r29 { fill: #1c1c1c } -.terminal-2201742234-r30 { fill: #b77923 } -.terminal-2201742234-r31 { fill: #888888 } -.terminal-2201742234-r32 { fill: #a4a4a4 } -.terminal-2201742234-r33 { fill: #787878 } -.terminal-2201742234-r34 { fill: #212121 } -.terminal-2201742234-r35 { fill: #3c8b54;font-weight: bold } -.terminal-2201742234-r36 { fill: #ffba41;font-weight: bold } -.terminal-2201742234-r37 { fill: #dbdbdb } + .terminal-4110365933-r1 { fill: #e0e0e0 } +.terminal-4110365933-r2 { fill: #c5c8c6 } +.terminal-4110365933-r3 { fill: #ffcf56 } +.terminal-4110365933-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-4110365933-r5 { fill: #dfeef9 } +.terminal-4110365933-r6 { fill: #9dcbee } +.terminal-4110365933-r7 { fill: #ffa62b } +.terminal-4110365933-r8 { fill: #939393 } +.terminal-4110365933-r9 { fill: #0178d4 } +.terminal-4110365933-r10 { fill: #e1e1e1 } +.terminal-4110365933-r11 { fill: #dde6ed } +.terminal-4110365933-r12 { fill: #a0a0a0 } +.terminal-4110365933-r13 { fill: #64451a } +.terminal-4110365933-r14 { fill: #fea62b } +.terminal-4110365933-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-4110365933-r16 { fill: #8d8d8d } +.terminal-4110365933-r17 { fill: #6c6c6c } +.terminal-4110365933-r18 { fill: #58d1eb;font-weight: bold } +.terminal-4110365933-r19 { fill: #885c1e } +.terminal-4110365933-r20 { fill: #989a9c;font-weight: bold } +.terminal-4110365933-r21 { fill: #e3e3e4;font-weight: bold } +.terminal-4110365933-r22 { fill: #323232 } +.terminal-4110365933-r23 { fill: #4ebf71;font-weight: bold } +.terminal-4110365933-r24 { fill: #8d8d8d;font-weight: bold } +.terminal-4110365933-r25 { fill: #008139 } +.terminal-4110365933-r26 { fill: #313131;font-weight: bold } +.terminal-4110365933-r27 { fill: #313131 } +.terminal-4110365933-r28 { fill: #a2a2a2 } +.terminal-4110365933-r29 { fill: #1c1c1c } +.terminal-4110365933-r30 { fill: #b77923 } +.terminal-4110365933-r31 { fill: #888888 } +.terminal-4110365933-r32 { fill: #a4a4a4 } +.terminal-4110365933-r33 { fill: #787878 } +.terminal-4110365933-r34 { fill: #212121 } +.terminal-4110365933-r35 { fill: #3c8b54;font-weight: bold } +.terminal-4110365933-r36 { fill: #ffba41;font-weight: bold } +.terminal-4110365933-r37 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://postman-echo.com/post                       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━ -█ POS echo postX Follow redirects -▼ jsonplaceholder/ -▼ posts/X Verify SSL certificates - GET get all - GET get oneX Attach cookies - POS create - DEL delete a postProxy URL                                      -▼ comments/ - GET get comments - GET get commentsTimeout                                        - PUT edit a comme0.2                                      -▼ todos/ - GET get all - GET get one -▼ users/╰─────────────────────────────────────────────────╯ - GET get a user│╭────────────────────────────────────── Response ─╮ - GET get all users││BodyHeadersCookiesTrace - POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -│───────────────────────││ -Echo server for post ││ -requests.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +POSThttps://postman-echo.com/post                       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━ +█ POS echo postX Follow redirects +▼ jsonplaceholder/ +▼ posts/X Verify SSL certificates + GET get all + GET get oneX Attach cookies + POS create + DEL delete a postProxy URL                                      +▼ comments/ + GET get comments + GET get commentsTimeout                                        + PUT edit a comme0.2                                      +▼ todos/ + GET get all + GET get one +▼ users/╰─────────────────────────────────────────────────╯ + GET get a user│╭────────────────────────────────────── Response ─╮ + GET get all users││BodyHeadersCookiesTrace + POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +│───────────────────────││ +Echo server for post ││ +requests.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg index b9cabca7..decdeb72 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg @@ -19,212 +19,212 @@ font-weight: 700; } - .terminal-191964525-matrix { + .terminal-1582788273-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-191964525-title { + .terminal-1582788273-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-191964525-r1 { fill: #e0e0e0 } -.terminal-191964525-r2 { fill: #c5c8c6 } -.terminal-191964525-r3 { fill: #ffcf56 } -.terminal-191964525-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-191964525-r5 { fill: #dfeef9 } -.terminal-191964525-r6 { fill: #9dcbee } -.terminal-191964525-r7 { fill: #ffa62b } -.terminal-191964525-r8 { fill: #939393 } -.terminal-191964525-r9 { fill: #0178d4 } -.terminal-191964525-r10 { fill: #e1e1e1 } -.terminal-191964525-r11 { fill: #dde6ed } -.terminal-191964525-r12 { fill: #a0a0a0 } -.terminal-191964525-r13 { fill: #64451a } -.terminal-191964525-r14 { fill: #fea62b } -.terminal-191964525-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-191964525-r16 { fill: #8d8d8d } -.terminal-191964525-r17 { fill: #6c6c6c } -.terminal-191964525-r18 { fill: #58d1eb;font-weight: bold } -.terminal-191964525-r19 { fill: #885c1e } -.terminal-191964525-r20 { fill: #121212 } -.terminal-191964525-r21 { fill: #dee5eb } -.terminal-191964525-r22 { fill: #e0e0e1 } -.terminal-191964525-r23 { fill: #dfe1e2 } -.terminal-191964525-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-191964525-r25 { fill: #dee4e8 } -.terminal-191964525-r26 { fill: #008139 } -.terminal-191964525-r27 { fill: #737373 } -.terminal-191964525-r28 { fill: #8c9092 } -.terminal-191964525-r29 { fill: #989a9c;font-weight: bold } -.terminal-191964525-r30 { fill: #e3e3e4;font-weight: bold } -.terminal-191964525-r31 { fill: #313131;font-weight: bold } -.terminal-191964525-r32 { fill: #313131 } -.terminal-191964525-r33 { fill: #a2a2a2 } -.terminal-191964525-r34 { fill: #1c1c1c } -.terminal-191964525-r35 { fill: #b77923 } -.terminal-191964525-r36 { fill: #0d0d0d } -.terminal-191964525-r37 { fill: #888888 } -.terminal-191964525-r38 { fill: #a4a4a4 } -.terminal-191964525-r39 { fill: #787878 } -.terminal-191964525-r40 { fill: #212121 } -.terminal-191964525-r41 { fill: #3c8b54;font-weight: bold } -.terminal-191964525-r42 { fill: #ffba41;font-weight: bold } -.terminal-191964525-r43 { fill: #dbdbdb } + .terminal-1582788273-r1 { fill: #e0e0e0 } +.terminal-1582788273-r2 { fill: #c5c8c6 } +.terminal-1582788273-r3 { fill: #ffcf56 } +.terminal-1582788273-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1582788273-r5 { fill: #dfeef9 } +.terminal-1582788273-r6 { fill: #9dcbee } +.terminal-1582788273-r7 { fill: #ffa62b } +.terminal-1582788273-r8 { fill: #939393 } +.terminal-1582788273-r9 { fill: #0178d4 } +.terminal-1582788273-r10 { fill: #e1e1e1 } +.terminal-1582788273-r11 { fill: #dde6ed } +.terminal-1582788273-r12 { fill: #a0a0a0 } +.terminal-1582788273-r13 { fill: #64451a } +.terminal-1582788273-r14 { fill: #fea62b } +.terminal-1582788273-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-1582788273-r16 { fill: #8d8d8d } +.terminal-1582788273-r17 { fill: #6c6c6c } +.terminal-1582788273-r18 { fill: #58d1eb;font-weight: bold } +.terminal-1582788273-r19 { fill: #885c1e } +.terminal-1582788273-r20 { fill: #121212 } +.terminal-1582788273-r21 { fill: #dee5eb } +.terminal-1582788273-r22 { fill: #e0e0e1 } +.terminal-1582788273-r23 { fill: #dfe1e2 } +.terminal-1582788273-r24 { fill: #8d8d8d;font-weight: bold } +.terminal-1582788273-r25 { fill: #dee4e8 } +.terminal-1582788273-r26 { fill: #008139 } +.terminal-1582788273-r27 { fill: #737373 } +.terminal-1582788273-r28 { fill: #8c9092 } +.terminal-1582788273-r29 { fill: #989a9c;font-weight: bold } +.terminal-1582788273-r30 { fill: #e3e3e4;font-weight: bold } +.terminal-1582788273-r31 { fill: #313131;font-weight: bold } +.terminal-1582788273-r32 { fill: #313131 } +.terminal-1582788273-r33 { fill: #a2a2a2 } +.terminal-1582788273-r34 { fill: #1c1c1c } +.terminal-1582788273-r35 { fill: #b77923 } +.terminal-1582788273-r36 { fill: #0d0d0d } +.terminal-1582788273-r37 { fill: #888888 } +.terminal-1582788273-r38 { fill: #a4a4a4 } +.terminal-1582788273-r39 { fill: #787878 } +.terminal-1582788273-r40 { fill: #212121 } +.terminal-1582788273-r41 { fill: #3c8b54;font-weight: bold } +.terminal-1582788273-r42 { fill: #ffba41;font-weight: bold } +.terminal-1582788273-r43 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com/comments       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━╸━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post postId                            1       -▼ jsonplaceholder/ foo                               bar     -▼ posts/ beep                              boop    - GET get all onetwothree                       123     - GET get one areallyreallyreallyreallylongkey  avalue  - POS create - DEL delete a post -▼ comments/ - GET get commentKeyValue Add   -█ GET get commen╰─────────────────────────────────────────────────╯ - PUT edit a comm│╭────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace - GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ -│───────────────────────││ -Retrieve the comments││ -for a post using the ││ -query string││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com/comments       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━╸━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post postId                            1       +▼ jsonplaceholder/ foo                               bar     +▼ posts/ beep                              boop    + GET get all onetwothree                       123     + GET get one areallyreallyreallyreallylongkey  avalue  + POS create + DEL delete a post +▼ comments/ + GET get commentKeyValue Add   +█ GET get commen╰─────────────────────────────────────────────────╯ + PUT edit a comm│╭────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace + GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ +│───────────────────────││ +Retrieve the comments││ +for a post using the ││ +query string││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg b/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg index a517a2a1..baeff8a1 100644 --- a/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg +++ b/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-3408594251-matrix { + .terminal-1596083855-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3408594251-title { + .terminal-1596083855-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3408594251-r1 { fill: #e0e0e0 } -.terminal-3408594251-r2 { fill: #c5c8c6 } -.terminal-3408594251-r3 { fill: #ffcf56 } -.terminal-3408594251-r4 { fill: #211808;text-decoration: underline; } -.terminal-3408594251-r5 { fill: #211808 } -.terminal-3408594251-r6 { fill: #664a1a } -.terminal-3408594251-r7 { fill: #737373 } -.terminal-3408594251-r8 { fill: #e1e1e1 } -.terminal-3408594251-r9 { fill: #dde6ed } -.terminal-3408594251-r10 { fill: #a0a0a0 } -.terminal-3408594251-r11 { fill: #64451a } -.terminal-3408594251-r12 { fill: #989a9c;font-weight: bold } -.terminal-3408594251-r13 { fill: #e3e3e4;font-weight: bold } -.terminal-3408594251-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-3408594251-r15 { fill: #6c6c6c } -.terminal-3408594251-r16 { fill: #8d8d8d } -.terminal-3408594251-r17 { fill: #272727 } -.terminal-3408594251-r18 { fill: #fea62b } -.terminal-3408594251-r19 { fill: #242424 } -.terminal-3408594251-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-3408594251-r21 { fill: #0d0d0d } -.terminal-3408594251-r22 { fill: #008139 } -.terminal-3408594251-r23 { fill: #8c9092 } -.terminal-3408594251-r24 { fill: #313131;font-weight: bold } -.terminal-3408594251-r25 { fill: #313131 } -.terminal-3408594251-r26 { fill: #a2a2a2 } -.terminal-3408594251-r27 { fill: #1c1c1c } -.terminal-3408594251-r28 { fill: #b77923 } -.terminal-3408594251-r29 { fill: #888888 } -.terminal-3408594251-r30 { fill: #a4a4a4 } -.terminal-3408594251-r31 { fill: #787878 } -.terminal-3408594251-r32 { fill: #212121 } -.terminal-3408594251-r33 { fill: #3c8b54;font-weight: bold } -.terminal-3408594251-r34 { fill: #ffba41;font-weight: bold } -.terminal-3408594251-r35 { fill: #dbdbdb } + .terminal-1596083855-r1 { fill: #e0e0e0 } +.terminal-1596083855-r2 { fill: #c5c8c6 } +.terminal-1596083855-r3 { fill: #ffcf56 } +.terminal-1596083855-r4 { fill: #211808;text-decoration: underline; } +.terminal-1596083855-r5 { fill: #211808 } +.terminal-1596083855-r6 { fill: #664a1a } +.terminal-1596083855-r7 { fill: #737373 } +.terminal-1596083855-r8 { fill: #e1e1e1 } +.terminal-1596083855-r9 { fill: #dde6ed } +.terminal-1596083855-r10 { fill: #a0a0a0 } +.terminal-1596083855-r11 { fill: #64451a } +.terminal-1596083855-r12 { fill: #989a9c;font-weight: bold } +.terminal-1596083855-r13 { fill: #e3e3e4;font-weight: bold } +.terminal-1596083855-r14 { fill: #e0e0e0;font-weight: bold } +.terminal-1596083855-r15 { fill: #6c6c6c } +.terminal-1596083855-r16 { fill: #8d8d8d } +.terminal-1596083855-r17 { fill: #272727 } +.terminal-1596083855-r18 { fill: #fea62b } +.terminal-1596083855-r19 { fill: #242424 } +.terminal-1596083855-r20 { fill: #8d8d8d;font-weight: bold } +.terminal-1596083855-r21 { fill: #0d0d0d } +.terminal-1596083855-r22 { fill: #008139 } +.terminal-1596083855-r23 { fill: #8c9092 } +.terminal-1596083855-r24 { fill: #313131;font-weight: bold } +.terminal-1596083855-r25 { fill: #313131 } +.terminal-1596083855-r26 { fill: #a2a2a2 } +.terminal-1596083855-r27 { fill: #1c1c1c } +.terminal-1596083855-r28 { fill: #b77923 } +.terminal-1596083855-r29 { fill: #888888 } +.terminal-1596083855-r30 { fill: #a4a4a4 } +.terminal-1596083855-r31 { fill: #787878 } +.terminal-1596083855-r32 { fill: #212121 } +.terminal-1596083855-r33 { fill: #3c8b54;font-weight: bold } +.terminal-1596083855-r34 { fill: #ffba41;font-weight: bold } +.terminal-1596083855-r35 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSTEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +POSTEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg index ad079bcb..5d262b8e 100644 --- a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg +++ b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-4170968542-matrix { + .terminal-2892528199-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4170968542-title { + .terminal-2892528199-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4170968542-r1 { fill: #e0e0e0 } -.terminal-4170968542-r2 { fill: #c5c8c6 } -.terminal-4170968542-r3 { fill: #ffcf56 } -.terminal-4170968542-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-4170968542-r5 { fill: #dfeef9 } -.terminal-4170968542-r6 { fill: #9dcbee } -.terminal-4170968542-r7 { fill: #ffa62b } -.terminal-4170968542-r8 { fill: #939393 } -.terminal-4170968542-r9 { fill: #0178d4 } -.terminal-4170968542-r10 { fill: #e1e1e1 } -.terminal-4170968542-r11 { fill: #4ebf71 } -.terminal-4170968542-r12 { fill: #dde6ed } -.terminal-4170968542-r13 { fill: #a0a0a0 } -.terminal-4170968542-r14 { fill: #fea62b } -.terminal-4170968542-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-4170968542-r16 { fill: #64451a } -.terminal-4170968542-r17 { fill: #8d8d8d } -.terminal-4170968542-r18 { fill: #58d1eb;font-weight: bold } -.terminal-4170968542-r19 { fill: #6c6c6c } -.terminal-4170968542-r20 { fill: #272727 } -.terminal-4170968542-r21 { fill: #121212 } -.terminal-4170968542-r22 { fill: #dee5eb } -.terminal-4170968542-r23 { fill: #e0e0e1 } -.terminal-4170968542-r24 { fill: #dfe1e2 } -.terminal-4170968542-r25 { fill: #8d8d8d;font-weight: bold } -.terminal-4170968542-r26 { fill: #dee4e8 } -.terminal-4170968542-r27 { fill: #008139 } -.terminal-4170968542-r28 { fill: #794f14;font-weight: bold } -.terminal-4170968542-r29 { fill: #211505;font-weight: bold } -.terminal-4170968542-r30 { fill: #737373 } -.terminal-4170968542-r31 { fill: #8c9092 } -.terminal-4170968542-r32 { fill: #0a180e } -.terminal-4170968542-r33 { fill: #a3a3a3;font-weight: bold } -.terminal-4170968542-r34 { fill: #e8e8e8 } -.terminal-4170968542-r35 { fill: #707070 } -.terminal-4170968542-r36 { fill: #569cd6;font-weight: bold } -.terminal-4170968542-r37 { fill: #b5cea8 } -.terminal-4170968542-r38 { fill: #ce9178 } -.terminal-4170968542-r39 { fill: #888888 } -.terminal-4170968542-r40 { fill: #a3a3a3 } -.terminal-4170968542-r41 { fill: #323232 } -.terminal-4170968542-r42 { fill: #4ebf71;font-weight: bold } -.terminal-4170968542-r43 { fill: #ffba41;font-weight: bold } -.terminal-4170968542-r44 { fill: #dbdbdb } + .terminal-2892528199-r1 { fill: #e0e0e0 } +.terminal-2892528199-r2 { fill: #c5c8c6 } +.terminal-2892528199-r3 { fill: #ffcf56 } +.terminal-2892528199-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-2892528199-r5 { fill: #dfeef9 } +.terminal-2892528199-r6 { fill: #9dcbee } +.terminal-2892528199-r7 { fill: #ffa62b } +.terminal-2892528199-r8 { fill: #939393 } +.terminal-2892528199-r9 { fill: #0178d4 } +.terminal-2892528199-r10 { fill: #e1e1e1 } +.terminal-2892528199-r11 { fill: #4ebf71 } +.terminal-2892528199-r12 { fill: #dde6ed } +.terminal-2892528199-r13 { fill: #a0a0a0 } +.terminal-2892528199-r14 { fill: #fea62b } +.terminal-2892528199-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-2892528199-r16 { fill: #64451a } +.terminal-2892528199-r17 { fill: #8d8d8d } +.terminal-2892528199-r18 { fill: #58d1eb;font-weight: bold } +.terminal-2892528199-r19 { fill: #6c6c6c } +.terminal-2892528199-r20 { fill: #272727 } +.terminal-2892528199-r21 { fill: #121212 } +.terminal-2892528199-r22 { fill: #dee5eb } +.terminal-2892528199-r23 { fill: #e0e0e1 } +.terminal-2892528199-r24 { fill: #dfe1e2 } +.terminal-2892528199-r25 { fill: #8d8d8d;font-weight: bold } +.terminal-2892528199-r26 { fill: #dee4e8 } +.terminal-2892528199-r27 { fill: #008139 } +.terminal-2892528199-r28 { fill: #794f14;font-weight: bold } +.terminal-2892528199-r29 { fill: #211505;font-weight: bold } +.terminal-2892528199-r30 { fill: #737373 } +.terminal-2892528199-r31 { fill: #8c9092 } +.terminal-2892528199-r32 { fill: #0a180e } +.terminal-2892528199-r33 { fill: #a3a3a3;font-weight: bold } +.terminal-2892528199-r34 { fill: #e8e8e8 } +.terminal-2892528199-r35 { fill: #707070 } +.terminal-2892528199-r36 { fill: #569cd6;font-weight: bold } +.terminal-2892528199-r37 { fill: #b5cea8 } +.terminal-2892528199-r38 { fill: #ce9178 } +.terminal-2892528199-r39 { fill: #888888 } +.terminal-2892528199-r40 { fill: #a3a3a3 } +.terminal-2892528199-r41 { fill: #323232 } +.terminal-2892528199-r42 { fill: #4ebf71;font-weight: bold } +.terminal-2892528199-r43 { fill: #ffba41;font-weight: bold } +.terminal-2892528199-r44 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                            - -GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  - -╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post Content-Type     application/json      -▼ jsonplaceholder/ Referer          https://example.com/  -▼ posts/ Accept-Encoding  gzip                  -█ GET get all Cache-Control    no-cache              - GET get one - POS create - DEL delete a post -▼ comments/ - GET get commentsNameValue Add header  - GET get comments (╰───────────────────────────────────────────────────────╯ - PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ -▼ todos/BodyHeadersCookiesTrace - GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one  1  [ -▼ users/  2    {                                             - GET get a user  3  "userId"1,                                - GET get all users  4  "id"1,                                    - POS create a user  5  "title""sunt aut facere repellat  - PUT update a userprovident occaecati excepturi optio  - DEL delete a userreprehenderit",                                 -  6  "body""quia et suscipit\nsuscipit  -─────────────────────────recusandae consequuntur expedita et  -Retrieve all posts1:1read-onlyJSONWrap X -╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                            + +GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  + +╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post Content-Type     application/json      +▼ jsonplaceholder/ Referer          https://example.com/  +▼ posts/ Accept-Encoding  gzip                  +█ GET get all Cache-Control    no-cache              + GET get one + POS create + DEL delete a post +▼ comments/ + GET get commentsNameValue Add header  + GET get comments (╰───────────────────────────────────────────────────────╯ + PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ +▼ todos/BodyHeadersCookiesTrace + GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one  1  [ +▼ users/  2    {                                             + GET get a user  3  "userId"1,                                + GET get all users  4  "id"1,                                    + POS create a user  5  "title""sunt aut facere repellat  + PUT update a userprovident occaecati excepturi optio  + DEL delete a userreprehenderit",                                 +  6  "body""quia et suscipit\nsuscipit  +─────────────────────────recusandae consequuntur expedita et  +Retrieve all posts1:1read-onlyJSONWrap X +╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg index c10e7566..15df6401 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg @@ -19,170 +19,170 @@ font-weight: 700; } - .terminal-3021069198-matrix { + .terminal-1253450977-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3021069198-title { + .terminal-1253450977-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3021069198-r1 { fill: #e0e0e0 } -.terminal-3021069198-r2 { fill: #c5c8c6 } -.terminal-3021069198-r3 { fill: #ffcf56 } -.terminal-3021069198-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3021069198-r5 { fill: #dfeef9 } -.terminal-3021069198-r6 { fill: #9dcbee } -.terminal-3021069198-r7 { fill: #3e3e3e } -.terminal-3021069198-r8 { fill: #e3e3e3 } -.terminal-3021069198-r9 { fill: #211505 } -.terminal-3021069198-r10 { fill: #dde6ed } -.terminal-3021069198-r11 { fill: #a0a0a0 } -.terminal-3021069198-r12 { fill: #fea62b } -.terminal-3021069198-r13 { fill: #e5ebf2;font-weight: bold } -.terminal-3021069198-r14 { fill: #e5e5e5;font-weight: bold } -.terminal-3021069198-r15 { fill: #64451a } -.terminal-3021069198-r16 { fill: #e5ebf2 } -.terminal-3021069198-r17 { fill: #a5a5a5 } -.terminal-3021069198-r18 { fill: #989a9c;font-weight: bold } -.terminal-3021069198-r19 { fill: #e3e3e4;font-weight: bold } -.terminal-3021069198-r20 { fill: #6c6c6c } -.terminal-3021069198-r21 { fill: #8d8d8d } -.terminal-3021069198-r22 { fill: #272727 } -.terminal-3021069198-r23 { fill: #242424 } -.terminal-3021069198-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-3021069198-r25 { fill: #0d0d0d } -.terminal-3021069198-r26 { fill: #008139 } -.terminal-3021069198-r27 { fill: #737373 } -.terminal-3021069198-r28 { fill: #e1e1e1 } -.terminal-3021069198-r29 { fill: #8c9092 } -.terminal-3021069198-r30 { fill: #313131;font-weight: bold } -.terminal-3021069198-r31 { fill: #313131 } -.terminal-3021069198-r32 { fill: #a2a2a2 } -.terminal-3021069198-r33 { fill: #1c1c1c } -.terminal-3021069198-r34 { fill: #b77923 } -.terminal-3021069198-r35 { fill: #888888 } -.terminal-3021069198-r36 { fill: #a4a4a4 } -.terminal-3021069198-r37 { fill: #787878 } -.terminal-3021069198-r38 { fill: #212121 } -.terminal-3021069198-r39 { fill: #3c8b54;font-weight: bold } -.terminal-3021069198-r40 { fill: #ffba41;font-weight: bold } -.terminal-3021069198-r41 { fill: #dbdbdb } + .terminal-1253450977-r1 { fill: #e0e0e0 } +.terminal-1253450977-r2 { fill: #c5c8c6 } +.terminal-1253450977-r3 { fill: #ffcf56 } +.terminal-1253450977-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1253450977-r5 { fill: #dfeef9 } +.terminal-1253450977-r6 { fill: #9dcbee } +.terminal-1253450977-r7 { fill: #3e3e3e } +.terminal-1253450977-r8 { fill: #e3e3e3 } +.terminal-1253450977-r9 { fill: #211505 } +.terminal-1253450977-r10 { fill: #dde6ed } +.terminal-1253450977-r11 { fill: #a0a0a0 } +.terminal-1253450977-r12 { fill: #fea62b } +.terminal-1253450977-r13 { fill: #e5ebf2;font-weight: bold } +.terminal-1253450977-r14 { fill: #e5e5e5;font-weight: bold } +.terminal-1253450977-r15 { fill: #64451a } +.terminal-1253450977-r16 { fill: #e5ebf2 } +.terminal-1253450977-r17 { fill: #a5a5a5 } +.terminal-1253450977-r18 { fill: #989a9c;font-weight: bold } +.terminal-1253450977-r19 { fill: #e3e3e4;font-weight: bold } +.terminal-1253450977-r20 { fill: #6c6c6c } +.terminal-1253450977-r21 { fill: #8d8d8d } +.terminal-1253450977-r22 { fill: #272727 } +.terminal-1253450977-r23 { fill: #242424 } +.terminal-1253450977-r24 { fill: #8d8d8d;font-weight: bold } +.terminal-1253450977-r25 { fill: #0d0d0d } +.terminal-1253450977-r26 { fill: #008139 } +.terminal-1253450977-r27 { fill: #737373 } +.terminal-1253450977-r28 { fill: #e1e1e1 } +.terminal-1253450977-r29 { fill: #8c9092 } +.terminal-1253450977-r30 { fill: #313131;font-weight: bold } +.terminal-1253450977-r31 { fill: #313131 } +.terminal-1253450977-r32 { fill: #a2a2a2 } +.terminal-1253450977-r33 { fill: #1c1c1c } +.terminal-1253450977-r34 { fill: #b77923 } +.terminal-1253450977-r35 { fill: #888888 } +.terminal-1253450977-r36 { fill: #a4a4a4 } +.terminal-1253450977-r37 { fill: #787878 } +.terminal-1253450977-r38 { fill: #212121 } +.terminal-1253450977-r39 { fill: #3c8b54;font-weight: bold } +.terminal-1253450977-r40 { fill: #ffba41;font-weight: bold } +.terminal-1253450977-r41 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttp Send  -https://api.randomuser.me            -╭─ Collection ────https://jsonplaceholder.typicode.com────────── Request ─╮ - GET echohttps://postman-echo.com            InfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GEThttp Send  +https://api.randomuser.me            +╭─ Collection ────https://jsonplaceholder.typicode.com────────── Request ─╮ + GET echohttps://postman-echo.com            InfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg index 9a4b22a0..26350621 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg @@ -19,170 +19,170 @@ font-weight: 700; } - .terminal-77061570-matrix { + .terminal-2184128277-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-77061570-title { + .terminal-2184128277-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-77061570-r1 { fill: #e0e0e0 } -.terminal-77061570-r2 { fill: #c5c8c6 } -.terminal-77061570-r3 { fill: #ffcf56 } -.terminal-77061570-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-77061570-r5 { fill: #dfeef9 } -.terminal-77061570-r6 { fill: #9dcbee } -.terminal-77061570-r7 { fill: #3e3e3e } -.terminal-77061570-r8 { fill: #ffa62b } -.terminal-77061570-r9 { fill: #9a9a9a } -.terminal-77061570-r10 { fill: #0178d4 } -.terminal-77061570-r11 { fill: #211505 } -.terminal-77061570-r12 { fill: #e3e3e3 } -.terminal-77061570-r13 { fill: #dde6ed } -.terminal-77061570-r14 { fill: #a0a0a0 } -.terminal-77061570-r15 { fill: #64451a } -.terminal-77061570-r16 { fill: #989a9c;font-weight: bold } -.terminal-77061570-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-77061570-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-77061570-r19 { fill: #6c6c6c } -.terminal-77061570-r20 { fill: #8d8d8d } -.terminal-77061570-r21 { fill: #272727 } -.terminal-77061570-r22 { fill: #fea62b } -.terminal-77061570-r23 { fill: #242424 } -.terminal-77061570-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-77061570-r25 { fill: #0d0d0d } -.terminal-77061570-r26 { fill: #008139 } -.terminal-77061570-r27 { fill: #737373 } -.terminal-77061570-r28 { fill: #e1e1e1 } -.terminal-77061570-r29 { fill: #8c9092 } -.terminal-77061570-r30 { fill: #313131;font-weight: bold } -.terminal-77061570-r31 { fill: #313131 } -.terminal-77061570-r32 { fill: #a2a2a2 } -.terminal-77061570-r33 { fill: #1c1c1c } -.terminal-77061570-r34 { fill: #b77923 } -.terminal-77061570-r35 { fill: #888888 } -.terminal-77061570-r36 { fill: #a4a4a4 } -.terminal-77061570-r37 { fill: #787878 } -.terminal-77061570-r38 { fill: #212121 } -.terminal-77061570-r39 { fill: #3c8b54;font-weight: bold } -.terminal-77061570-r40 { fill: #ffba41;font-weight: bold } -.terminal-77061570-r41 { fill: #dbdbdb } + .terminal-2184128277-r1 { fill: #e0e0e0 } +.terminal-2184128277-r2 { fill: #c5c8c6 } +.terminal-2184128277-r3 { fill: #ffcf56 } +.terminal-2184128277-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-2184128277-r5 { fill: #dfeef9 } +.terminal-2184128277-r6 { fill: #9dcbee } +.terminal-2184128277-r7 { fill: #3e3e3e } +.terminal-2184128277-r8 { fill: #ffa62b } +.terminal-2184128277-r9 { fill: #9a9a9a } +.terminal-2184128277-r10 { fill: #0178d4 } +.terminal-2184128277-r11 { fill: #211505 } +.terminal-2184128277-r12 { fill: #e3e3e3 } +.terminal-2184128277-r13 { fill: #dde6ed } +.terminal-2184128277-r14 { fill: #a0a0a0 } +.terminal-2184128277-r15 { fill: #64451a } +.terminal-2184128277-r16 { fill: #989a9c;font-weight: bold } +.terminal-2184128277-r17 { fill: #e3e3e4;font-weight: bold } +.terminal-2184128277-r18 { fill: #e0e0e0;font-weight: bold } +.terminal-2184128277-r19 { fill: #6c6c6c } +.terminal-2184128277-r20 { fill: #8d8d8d } +.terminal-2184128277-r21 { fill: #272727 } +.terminal-2184128277-r22 { fill: #fea62b } +.terminal-2184128277-r23 { fill: #242424 } +.terminal-2184128277-r24 { fill: #8d8d8d;font-weight: bold } +.terminal-2184128277-r25 { fill: #0d0d0d } +.terminal-2184128277-r26 { fill: #008139 } +.terminal-2184128277-r27 { fill: #737373 } +.terminal-2184128277-r28 { fill: #e1e1e1 } +.terminal-2184128277-r29 { fill: #8c9092 } +.terminal-2184128277-r30 { fill: #313131;font-weight: bold } +.terminal-2184128277-r31 { fill: #313131 } +.terminal-2184128277-r32 { fill: #a2a2a2 } +.terminal-2184128277-r33 { fill: #1c1c1c } +.terminal-2184128277-r34 { fill: #b77923 } +.terminal-2184128277-r35 { fill: #888888 } +.terminal-2184128277-r36 { fill: #a4a4a4 } +.terminal-2184128277-r37 { fill: #787878 } +.terminal-2184128277-r38 { fill: #212121 } +.terminal-2184128277-r39 { fill: #3c8b54;font-weight: bold } +.terminal-2184128277-r40 { fill: #ffba41;font-weight: bold } +.terminal-2184128277-r41 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg index 9a4b22a0..26350621 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg @@ -19,170 +19,170 @@ font-weight: 700; } - .terminal-77061570-matrix { + .terminal-2184128277-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-77061570-title { + .terminal-2184128277-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-77061570-r1 { fill: #e0e0e0 } -.terminal-77061570-r2 { fill: #c5c8c6 } -.terminal-77061570-r3 { fill: #ffcf56 } -.terminal-77061570-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-77061570-r5 { fill: #dfeef9 } -.terminal-77061570-r6 { fill: #9dcbee } -.terminal-77061570-r7 { fill: #3e3e3e } -.terminal-77061570-r8 { fill: #ffa62b } -.terminal-77061570-r9 { fill: #9a9a9a } -.terminal-77061570-r10 { fill: #0178d4 } -.terminal-77061570-r11 { fill: #211505 } -.terminal-77061570-r12 { fill: #e3e3e3 } -.terminal-77061570-r13 { fill: #dde6ed } -.terminal-77061570-r14 { fill: #a0a0a0 } -.terminal-77061570-r15 { fill: #64451a } -.terminal-77061570-r16 { fill: #989a9c;font-weight: bold } -.terminal-77061570-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-77061570-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-77061570-r19 { fill: #6c6c6c } -.terminal-77061570-r20 { fill: #8d8d8d } -.terminal-77061570-r21 { fill: #272727 } -.terminal-77061570-r22 { fill: #fea62b } -.terminal-77061570-r23 { fill: #242424 } -.terminal-77061570-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-77061570-r25 { fill: #0d0d0d } -.terminal-77061570-r26 { fill: #008139 } -.terminal-77061570-r27 { fill: #737373 } -.terminal-77061570-r28 { fill: #e1e1e1 } -.terminal-77061570-r29 { fill: #8c9092 } -.terminal-77061570-r30 { fill: #313131;font-weight: bold } -.terminal-77061570-r31 { fill: #313131 } -.terminal-77061570-r32 { fill: #a2a2a2 } -.terminal-77061570-r33 { fill: #1c1c1c } -.terminal-77061570-r34 { fill: #b77923 } -.terminal-77061570-r35 { fill: #888888 } -.terminal-77061570-r36 { fill: #a4a4a4 } -.terminal-77061570-r37 { fill: #787878 } -.terminal-77061570-r38 { fill: #212121 } -.terminal-77061570-r39 { fill: #3c8b54;font-weight: bold } -.terminal-77061570-r40 { fill: #ffba41;font-weight: bold } -.terminal-77061570-r41 { fill: #dbdbdb } + .terminal-2184128277-r1 { fill: #e0e0e0 } +.terminal-2184128277-r2 { fill: #c5c8c6 } +.terminal-2184128277-r3 { fill: #ffcf56 } +.terminal-2184128277-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-2184128277-r5 { fill: #dfeef9 } +.terminal-2184128277-r6 { fill: #9dcbee } +.terminal-2184128277-r7 { fill: #3e3e3e } +.terminal-2184128277-r8 { fill: #ffa62b } +.terminal-2184128277-r9 { fill: #9a9a9a } +.terminal-2184128277-r10 { fill: #0178d4 } +.terminal-2184128277-r11 { fill: #211505 } +.terminal-2184128277-r12 { fill: #e3e3e3 } +.terminal-2184128277-r13 { fill: #dde6ed } +.terminal-2184128277-r14 { fill: #a0a0a0 } +.terminal-2184128277-r15 { fill: #64451a } +.terminal-2184128277-r16 { fill: #989a9c;font-weight: bold } +.terminal-2184128277-r17 { fill: #e3e3e4;font-weight: bold } +.terminal-2184128277-r18 { fill: #e0e0e0;font-weight: bold } +.terminal-2184128277-r19 { fill: #6c6c6c } +.terminal-2184128277-r20 { fill: #8d8d8d } +.terminal-2184128277-r21 { fill: #272727 } +.terminal-2184128277-r22 { fill: #fea62b } +.terminal-2184128277-r23 { fill: #242424 } +.terminal-2184128277-r24 { fill: #8d8d8d;font-weight: bold } +.terminal-2184128277-r25 { fill: #0d0d0d } +.terminal-2184128277-r26 { fill: #008139 } +.terminal-2184128277-r27 { fill: #737373 } +.terminal-2184128277-r28 { fill: #e1e1e1 } +.terminal-2184128277-r29 { fill: #8c9092 } +.terminal-2184128277-r30 { fill: #313131;font-weight: bold } +.terminal-2184128277-r31 { fill: #313131 } +.terminal-2184128277-r32 { fill: #a2a2a2 } +.terminal-2184128277-r33 { fill: #1c1c1c } +.terminal-2184128277-r34 { fill: #b77923 } +.terminal-2184128277-r35 { fill: #888888 } +.terminal-2184128277-r36 { fill: #a4a4a4 } +.terminal-2184128277-r37 { fill: #787878 } +.terminal-2184128277-r38 { fill: #212121 } +.terminal-2184128277-r39 { fill: #3c8b54;font-weight: bold } +.terminal-2184128277-r40 { fill: #ffba41;font-weight: bold } +.terminal-2184128277-r41 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg index e5e08c00..de63b518 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg @@ -19,169 +19,169 @@ font-weight: 700; } - .terminal-2083702954-matrix { + .terminal-3271823869-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2083702954-title { + .terminal-3271823869-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2083702954-r1 { fill: #e0e0e0 } -.terminal-2083702954-r2 { fill: #c5c8c6 } -.terminal-2083702954-r3 { fill: #ffcf56 } -.terminal-2083702954-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2083702954-r5 { fill: #dfeef9 } -.terminal-2083702954-r6 { fill: #9dcbee } -.terminal-2083702954-r7 { fill: #3e3e3e } -.terminal-2083702954-r8 { fill: #e3e3e3 } -.terminal-2083702954-r9 { fill: #211505 } -.terminal-2083702954-r10 { fill: #dde6ed } -.terminal-2083702954-r11 { fill: #a0a0a0 } -.terminal-2083702954-r12 { fill: #fea62b } -.terminal-2083702954-r13 { fill: #e5e5e5;font-weight: bold } -.terminal-2083702954-r14 { fill: #e5ebf2;font-weight: bold } -.terminal-2083702954-r15 { fill: #64451a } -.terminal-2083702954-r16 { fill: #989a9c;font-weight: bold } -.terminal-2083702954-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-2083702954-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-2083702954-r19 { fill: #6c6c6c } -.terminal-2083702954-r20 { fill: #8d8d8d } -.terminal-2083702954-r21 { fill: #272727 } -.terminal-2083702954-r22 { fill: #242424 } -.terminal-2083702954-r23 { fill: #8d8d8d;font-weight: bold } -.terminal-2083702954-r24 { fill: #0d0d0d } -.terminal-2083702954-r25 { fill: #008139 } -.terminal-2083702954-r26 { fill: #737373 } -.terminal-2083702954-r27 { fill: #e1e1e1 } -.terminal-2083702954-r28 { fill: #8c9092 } -.terminal-2083702954-r29 { fill: #313131;font-weight: bold } -.terminal-2083702954-r30 { fill: #313131 } -.terminal-2083702954-r31 { fill: #a2a2a2 } -.terminal-2083702954-r32 { fill: #1c1c1c } -.terminal-2083702954-r33 { fill: #b77923 } -.terminal-2083702954-r34 { fill: #888888 } -.terminal-2083702954-r35 { fill: #a4a4a4 } -.terminal-2083702954-r36 { fill: #787878 } -.terminal-2083702954-r37 { fill: #212121 } -.terminal-2083702954-r38 { fill: #3c8b54;font-weight: bold } -.terminal-2083702954-r39 { fill: #ffba41;font-weight: bold } -.terminal-2083702954-r40 { fill: #dbdbdb } + .terminal-3271823869-r1 { fill: #e0e0e0 } +.terminal-3271823869-r2 { fill: #c5c8c6 } +.terminal-3271823869-r3 { fill: #ffcf56 } +.terminal-3271823869-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-3271823869-r5 { fill: #dfeef9 } +.terminal-3271823869-r6 { fill: #9dcbee } +.terminal-3271823869-r7 { fill: #3e3e3e } +.terminal-3271823869-r8 { fill: #e3e3e3 } +.terminal-3271823869-r9 { fill: #211505 } +.terminal-3271823869-r10 { fill: #dde6ed } +.terminal-3271823869-r11 { fill: #a0a0a0 } +.terminal-3271823869-r12 { fill: #fea62b } +.terminal-3271823869-r13 { fill: #e5e5e5;font-weight: bold } +.terminal-3271823869-r14 { fill: #e5ebf2;font-weight: bold } +.terminal-3271823869-r15 { fill: #64451a } +.terminal-3271823869-r16 { fill: #989a9c;font-weight: bold } +.terminal-3271823869-r17 { fill: #e3e3e4;font-weight: bold } +.terminal-3271823869-r18 { fill: #e0e0e0;font-weight: bold } +.terminal-3271823869-r19 { fill: #6c6c6c } +.terminal-3271823869-r20 { fill: #8d8d8d } +.terminal-3271823869-r21 { fill: #272727 } +.terminal-3271823869-r22 { fill: #242424 } +.terminal-3271823869-r23 { fill: #8d8d8d;font-weight: bold } +.terminal-3271823869-r24 { fill: #0d0d0d } +.terminal-3271823869-r25 { fill: #008139 } +.terminal-3271823869-r26 { fill: #737373 } +.terminal-3271823869-r27 { fill: #e1e1e1 } +.terminal-3271823869-r28 { fill: #8c9092 } +.terminal-3271823869-r29 { fill: #313131;font-weight: bold } +.terminal-3271823869-r30 { fill: #313131 } +.terminal-3271823869-r31 { fill: #a2a2a2 } +.terminal-3271823869-r32 { fill: #1c1c1c } +.terminal-3271823869-r33 { fill: #b77923 } +.terminal-3271823869-r34 { fill: #888888 } +.terminal-3271823869-r35 { fill: #a4a4a4 } +.terminal-3271823869-r36 { fill: #787878 } +.terminal-3271823869-r37 { fill: #212121 } +.terminal-3271823869-r38 { fill: #3c8b54;font-weight: bold } +.terminal-3271823869-r39 { fill: #ffba41;font-weight: bold } +.terminal-3271823869-r40 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETjson Send  -https://jsonplaceholder.typicode.com -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETjson Send  +https://jsonplaceholder.typicode.com +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg index 69ef8f3b..15e83d98 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg @@ -19,154 +19,154 @@ font-weight: 700; } - .terminal-1116166639-matrix { + .terminal-3964314419-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1116166639-title { + .terminal-3964314419-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1116166639-r1 { fill: #e0e0e0 } -.terminal-1116166639-r2 { fill: #c5c8c6 } -.terminal-1116166639-r3 { fill: #ffcf56 } -.terminal-1116166639-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1116166639-r5 { fill: #dfeef9 } -.terminal-1116166639-r6 { fill: #9dcbee } -.terminal-1116166639-r7 { fill: #737373 } -.terminal-1116166639-r8 { fill: #e1e1e1 } -.terminal-1116166639-r9 { fill: #dde6ed } -.terminal-1116166639-r10 { fill: #a0a0a0 } -.terminal-1116166639-r11 { fill: #64451a } -.terminal-1116166639-r12 { fill: #fea62b } -.terminal-1116166639-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-1116166639-r14 { fill: #989a9c;font-weight: bold } -.terminal-1116166639-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-1116166639-r16 { fill: #6c6c6c } -.terminal-1116166639-r17 { fill: #8d8d8d } -.terminal-1116166639-r18 { fill: #885c1e } -.terminal-1116166639-r19 { fill: #242424 } -.terminal-1116166639-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-1116166639-r21 { fill: #0d0d0d } -.terminal-1116166639-r22 { fill: #008139 } -.terminal-1116166639-r23 { fill: #8c9092 } -.terminal-1116166639-r24 { fill: #ffba41;font-weight: bold } -.terminal-1116166639-r25 { fill: #dbdbdb } + .terminal-3964314419-r1 { fill: #e0e0e0 } +.terminal-3964314419-r2 { fill: #c5c8c6 } +.terminal-3964314419-r3 { fill: #ffcf56 } +.terminal-3964314419-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-3964314419-r5 { fill: #dfeef9 } +.terminal-3964314419-r6 { fill: #9dcbee } +.terminal-3964314419-r7 { fill: #737373 } +.terminal-3964314419-r8 { fill: #e1e1e1 } +.terminal-3964314419-r9 { fill: #dde6ed } +.terminal-3964314419-r10 { fill: #a0a0a0 } +.terminal-3964314419-r11 { fill: #64451a } +.terminal-3964314419-r12 { fill: #fea62b } +.terminal-3964314419-r13 { fill: #e0e0e0;font-weight: bold } +.terminal-3964314419-r14 { fill: #989a9c;font-weight: bold } +.terminal-3964314419-r15 { fill: #e3e3e4;font-weight: bold } +.terminal-3964314419-r16 { fill: #6c6c6c } +.terminal-3964314419-r17 { fill: #8d8d8d } +.terminal-3964314419-r18 { fill: #885c1e } +.terminal-3964314419-r19 { fill: #242424 } +.terminal-3964314419-r20 { fill: #8d8d8d;font-weight: bold } +.terminal-3964314419-r21 { fill: #0d0d0d } +.terminal-3964314419-r22 { fill: #008139 } +.terminal-3964314419-r23 { fill: #8c9092 } +.terminal-3964314419-r24 { fill: #ffba41;font-weight: bold } +.terminal-3964314419-r25 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -│───────────────────────│╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -This is an echo ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -server we can use to ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -see exactly what ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -request is being ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -sent.NameValue Add header  -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +│───────────────────────│╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +This is an echo ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +server we can use to ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +see exactly what ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +request is being ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +sent.NameValue Add header  +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg index b9f75bc4..a211caab 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-2345610125-matrix { + .terminal-682587345-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2345610125-title { + .terminal-682587345-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2345610125-r1 { fill: #e0e0e0 } -.terminal-2345610125-r2 { fill: #c5c8c6 } -.terminal-2345610125-r3 { fill: #ffcf56 } -.terminal-2345610125-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2345610125-r5 { fill: #dfeef9 } -.terminal-2345610125-r6 { fill: #9dcbee } -.terminal-2345610125-r7 { fill: #737373 } -.terminal-2345610125-r8 { fill: #e1e1e1 } -.terminal-2345610125-r9 { fill: #dde6ed } -.terminal-2345610125-r10 { fill: #a0a0a0 } -.terminal-2345610125-r11 { fill: #64451a } -.terminal-2345610125-r12 { fill: #fea62b } -.terminal-2345610125-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-2345610125-r14 { fill: #989a9c;font-weight: bold } -.terminal-2345610125-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-2345610125-r16 { fill: #6c6c6c } -.terminal-2345610125-r17 { fill: #8d8d8d } -.terminal-2345610125-r18 { fill: #885c1e } -.terminal-2345610125-r19 { fill: #242424 } -.terminal-2345610125-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-2345610125-r21 { fill: #0d0d0d } -.terminal-2345610125-r22 { fill: #008139 } -.terminal-2345610125-r23 { fill: #8c9092 } -.terminal-2345610125-r24 { fill: #313131;font-weight: bold } -.terminal-2345610125-r25 { fill: #313131 } -.terminal-2345610125-r26 { fill: #a2a2a2 } -.terminal-2345610125-r27 { fill: #1c1c1c } -.terminal-2345610125-r28 { fill: #b77923 } -.terminal-2345610125-r29 { fill: #888888 } -.terminal-2345610125-r30 { fill: #a4a4a4 } -.terminal-2345610125-r31 { fill: #787878 } -.terminal-2345610125-r32 { fill: #212121 } -.terminal-2345610125-r33 { fill: #3c8b54;font-weight: bold } -.terminal-2345610125-r34 { fill: #ffba41;font-weight: bold } -.terminal-2345610125-r35 { fill: #dbdbdb } + .terminal-682587345-r1 { fill: #e0e0e0 } +.terminal-682587345-r2 { fill: #c5c8c6 } +.terminal-682587345-r3 { fill: #ffcf56 } +.terminal-682587345-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-682587345-r5 { fill: #dfeef9 } +.terminal-682587345-r6 { fill: #9dcbee } +.terminal-682587345-r7 { fill: #737373 } +.terminal-682587345-r8 { fill: #e1e1e1 } +.terminal-682587345-r9 { fill: #dde6ed } +.terminal-682587345-r10 { fill: #a0a0a0 } +.terminal-682587345-r11 { fill: #64451a } +.terminal-682587345-r12 { fill: #fea62b } +.terminal-682587345-r13 { fill: #e0e0e0;font-weight: bold } +.terminal-682587345-r14 { fill: #989a9c;font-weight: bold } +.terminal-682587345-r15 { fill: #e3e3e4;font-weight: bold } +.terminal-682587345-r16 { fill: #6c6c6c } +.terminal-682587345-r17 { fill: #8d8d8d } +.terminal-682587345-r18 { fill: #885c1e } +.terminal-682587345-r19 { fill: #242424 } +.terminal-682587345-r20 { fill: #8d8d8d;font-weight: bold } +.terminal-682587345-r21 { fill: #0d0d0d } +.terminal-682587345-r22 { fill: #008139 } +.terminal-682587345-r23 { fill: #8c9092 } +.terminal-682587345-r24 { fill: #313131;font-weight: bold } +.terminal-682587345-r25 { fill: #313131 } +.terminal-682587345-r26 { fill: #a2a2a2 } +.terminal-682587345-r27 { fill: #1c1c1c } +.terminal-682587345-r28 { fill: #b77923 } +.terminal-682587345-r29 { fill: #888888 } +.terminal-682587345-r30 { fill: #a4a4a4 } +.terminal-682587345-r31 { fill: #787878 } +.terminal-682587345-r32 { fill: #212121 } +.terminal-682587345-r33 { fill: #3c8b54;font-weight: bold } +.terminal-682587345-r34 { fill: #ffba41;font-weight: bold } +.terminal-682587345-r35 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg index 136d783f..2690f905 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-380328606-matrix { + .terminal-1469096930-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-380328606-title { + .terminal-1469096930-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-380328606-r1 { fill: #e0e0e0 } -.terminal-380328606-r2 { fill: #c5c8c6 } -.terminal-380328606-r3 { fill: #ffcf56 } -.terminal-380328606-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-380328606-r5 { fill: #dfeef9 } -.terminal-380328606-r6 { fill: #9dcbee } -.terminal-380328606-r7 { fill: #3e3e3e } -.terminal-380328606-r8 { fill: #211505 } -.terminal-380328606-r9 { fill: #7c7c7c } -.terminal-380328606-r10 { fill: #e3e3e3 } -.terminal-380328606-r11 { fill: #dde6ed } -.terminal-380328606-r12 { fill: #a0a0a0 } -.terminal-380328606-r13 { fill: #64451a } -.terminal-380328606-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-380328606-r15 { fill: #6c6c6c } -.terminal-380328606-r16 { fill: #272727 } -.terminal-380328606-r17 { fill: #fea62b } -.terminal-380328606-r18 { fill: #242424 } -.terminal-380328606-r19 { fill: #737373 } -.terminal-380328606-r20 { fill: #e1e1e1 } -.terminal-380328606-r21 { fill: #8c9092 } -.terminal-380328606-r22 { fill: #313131;font-weight: bold } -.terminal-380328606-r23 { fill: #313131 } -.terminal-380328606-r24 { fill: #a2a2a2 } -.terminal-380328606-r25 { fill: #1c1c1c } -.terminal-380328606-r26 { fill: #b77923 } -.terminal-380328606-r27 { fill: #888888 } -.terminal-380328606-r28 { fill: #a4a4a4 } -.terminal-380328606-r29 { fill: #787878 } -.terminal-380328606-r30 { fill: #212121 } -.terminal-380328606-r31 { fill: #3c8b54;font-weight: bold } -.terminal-380328606-r32 { fill: #ffba41;font-weight: bold } -.terminal-380328606-r33 { fill: #dbdbdb } + .terminal-1469096930-r1 { fill: #e0e0e0 } +.terminal-1469096930-r2 { fill: #c5c8c6 } +.terminal-1469096930-r3 { fill: #ffcf56 } +.terminal-1469096930-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-1469096930-r5 { fill: #dfeef9 } +.terminal-1469096930-r6 { fill: #9dcbee } +.terminal-1469096930-r7 { fill: #3e3e3e } +.terminal-1469096930-r8 { fill: #211505 } +.terminal-1469096930-r9 { fill: #7c7c7c } +.terminal-1469096930-r10 { fill: #e3e3e3 } +.terminal-1469096930-r11 { fill: #dde6ed } +.terminal-1469096930-r12 { fill: #a0a0a0 } +.terminal-1469096930-r13 { fill: #64451a } +.terminal-1469096930-r14 { fill: #e0e0e0;font-weight: bold } +.terminal-1469096930-r15 { fill: #6c6c6c } +.terminal-1469096930-r16 { fill: #272727 } +.terminal-1469096930-r17 { fill: #fea62b } +.terminal-1469096930-r18 { fill: #242424 } +.terminal-1469096930-r19 { fill: #737373 } +.terminal-1469096930-r20 { fill: #e1e1e1 } +.terminal-1469096930-r21 { fill: #8c9092 } +.terminal-1469096930-r22 { fill: #313131;font-weight: bold } +.terminal-1469096930-r23 { fill: #313131 } +.terminal-1469096930-r24 { fill: #a2a2a2 } +.terminal-1469096930-r25 { fill: #1c1c1c } +.terminal-1469096930-r26 { fill: #b77923 } +.terminal-1469096930-r27 { fill: #888888 } +.terminal-1469096930-r28 { fill: #a4a4a4 } +.terminal-1469096930-r29 { fill: #787878 } +.terminal-1469096930-r30 { fill: #212121 } +.terminal-1469096930-r31 { fill: #3c8b54;font-weight: bold } +.terminal-1469096930-r32 { fill: #ffba41;font-weight: bold } +.terminal-1469096930-r33 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭──────────────────────────────────────────────────────────────── Request ─╮ -HeadersBodyQueryAuthInfoOptions -━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -NameValue Add header  -╰──────────────────────────────────────────────────────────────────────────╯ -╭─────────────────────────────────────────────────────────────── Response ─╮ -BodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - -1:1read-onlyJSONWrap X -╰──────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭──────────────────────────────────────────────────────────────── Request ─╮ +HeadersBodyQueryAuthInfoOptions +━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +NameValue Add header  +╰──────────────────────────────────────────────────────────────────────────╯ +╭─────────────────────────────────────────────────────────────── Response ─╮ +BodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + +1:1read-onlyJSONWrap X +╰──────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg index e6a68d1d..c60a667f 100644 --- a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg +++ b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg @@ -19,174 +19,174 @@ font-weight: 700; } - .terminal-3107346237-matrix { + .terminal-255893633-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3107346237-title { + .terminal-255893633-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3107346237-r1 { fill: #e0e0e0 } -.terminal-3107346237-r2 { fill: #c5c8c6 } -.terminal-3107346237-r3 { fill: #ffcf56 } -.terminal-3107346237-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3107346237-r5 { fill: #dfeef9 } -.terminal-3107346237-r6 { fill: #9dcbee } -.terminal-3107346237-r7 { fill: #3e3e3e } -.terminal-3107346237-r8 { fill: #ffa62b } -.terminal-3107346237-r9 { fill: #9a9a9a } -.terminal-3107346237-r10 { fill: #0178d4 } -.terminal-3107346237-r11 { fill: #e3e3e3 } -.terminal-3107346237-r12 { fill: #4ebf71;text-decoration: underline; } -.terminal-3107346237-r13 { fill: #211505 } -.terminal-3107346237-r14 { fill: #dde6ed } -.terminal-3107346237-r15 { fill: #a0a0a0 } -.terminal-3107346237-r16 { fill: #64451a } -.terminal-3107346237-r17 { fill: #8d8d8d } -.terminal-3107346237-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-3107346237-r19 { fill: #58d1eb;font-weight: bold } -.terminal-3107346237-r20 { fill: #6c6c6c } -.terminal-3107346237-r21 { fill: #989a9c;font-weight: bold } -.terminal-3107346237-r22 { fill: #e3e3e4;font-weight: bold } -.terminal-3107346237-r23 { fill: #272727 } -.terminal-3107346237-r24 { fill: #fea62b } -.terminal-3107346237-r25 { fill: #121212 } -.terminal-3107346237-r26 { fill: #dee5eb } -.terminal-3107346237-r27 { fill: #e0e0e1 } -.terminal-3107346237-r28 { fill: #dfe1e2 } -.terminal-3107346237-r29 { fill: #dee4e8 } -.terminal-3107346237-r30 { fill: #0d0d0d } -.terminal-3107346237-r31 { fill: #737373 } -.terminal-3107346237-r32 { fill: #e1e1e1 } -.terminal-3107346237-r33 { fill: #8c9092 } -.terminal-3107346237-r34 { fill: #313131;font-weight: bold } -.terminal-3107346237-r35 { fill: #313131 } -.terminal-3107346237-r36 { fill: #a2a2a2 } -.terminal-3107346237-r37 { fill: #1c1c1c } -.terminal-3107346237-r38 { fill: #b77923 } -.terminal-3107346237-r39 { fill: #888888 } -.terminal-3107346237-r40 { fill: #a4a4a4 } -.terminal-3107346237-r41 { fill: #787878 } -.terminal-3107346237-r42 { fill: #212121 } -.terminal-3107346237-r43 { fill: #3c8b54;font-weight: bold } -.terminal-3107346237-r44 { fill: #ffba41;font-weight: bold } -.terminal-3107346237-r45 { fill: #dbdbdb } + .terminal-255893633-r1 { fill: #e0e0e0 } +.terminal-255893633-r2 { fill: #c5c8c6 } +.terminal-255893633-r3 { fill: #ffcf56 } +.terminal-255893633-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-255893633-r5 { fill: #dfeef9 } +.terminal-255893633-r6 { fill: #9dcbee } +.terminal-255893633-r7 { fill: #3e3e3e } +.terminal-255893633-r8 { fill: #ffa62b } +.terminal-255893633-r9 { fill: #9a9a9a } +.terminal-255893633-r10 { fill: #0178d4 } +.terminal-255893633-r11 { fill: #e3e3e3 } +.terminal-255893633-r12 { fill: #4ebf71;text-decoration: underline; } +.terminal-255893633-r13 { fill: #211505 } +.terminal-255893633-r14 { fill: #dde6ed } +.terminal-255893633-r15 { fill: #a0a0a0 } +.terminal-255893633-r16 { fill: #64451a } +.terminal-255893633-r17 { fill: #8d8d8d } +.terminal-255893633-r18 { fill: #e0e0e0;font-weight: bold } +.terminal-255893633-r19 { fill: #58d1eb;font-weight: bold } +.terminal-255893633-r20 { fill: #6c6c6c } +.terminal-255893633-r21 { fill: #989a9c;font-weight: bold } +.terminal-255893633-r22 { fill: #e3e3e4;font-weight: bold } +.terminal-255893633-r23 { fill: #272727 } +.terminal-255893633-r24 { fill: #fea62b } +.terminal-255893633-r25 { fill: #121212 } +.terminal-255893633-r26 { fill: #dee5eb } +.terminal-255893633-r27 { fill: #e0e0e1 } +.terminal-255893633-r28 { fill: #dfe1e2 } +.terminal-255893633-r29 { fill: #dee4e8 } +.terminal-255893633-r30 { fill: #0d0d0d } +.terminal-255893633-r31 { fill: #737373 } +.terminal-255893633-r32 { fill: #e1e1e1 } +.terminal-255893633-r33 { fill: #8c9092 } +.terminal-255893633-r34 { fill: #313131;font-weight: bold } +.terminal-255893633-r35 { fill: #313131 } +.terminal-255893633-r36 { fill: #a2a2a2 } +.terminal-255893633-r37 { fill: #1c1c1c } +.terminal-255893633-r38 { fill: #b77923 } +.terminal-255893633-r39 { fill: #888888 } +.terminal-255893633-r40 { fill: #a4a4a4 } +.terminal-255893633-r41 { fill: #787878 } +.terminal-255893633-r42 { fill: #212121 } +.terminal-255893633-r43 { fill: #3c8b54;font-weight: bold } +.terminal-255893633-r44 { fill: #ffba41;font-weight: bold } +.terminal-255893633-r45 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  -                               TODO_ID = 1                                 -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET get all││HeadersBodyQueryAuthInfoOptions -█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ Content-Type     application/json      -││ Referer          https://example.com/  -││ Accept-Encoding  gzip                  -││NameValue Add header  -│╰─────────────────────────────────────────────────╯ -│╭────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -│───────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  +                               TODO_ID = 1                                 +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET get all││HeadersBodyQueryAuthInfoOptions +█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ Content-Type     application/json      +││ Referer          https://example.com/  +││ Accept-Encoding  gzip                  +││NameValue Add header  +│╰─────────────────────────────────────────────────╯ +│╭────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +│───────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg b/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg index 97e6d44b..92a1fc4e 100644 --- a/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg +++ b/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg @@ -19,209 +19,209 @@ font-weight: 700; } - .terminal-2117313416-matrix { + .terminal-4156698609-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2117313416-title { + .terminal-4156698609-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2117313416-r1 { fill: #e0e0e0 } -.terminal-2117313416-r2 { fill: #c5c8c6 } -.terminal-2117313416-r3 { fill: #ffcf56 } -.terminal-2117313416-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2117313416-r5 { fill: #dfeef9 } -.terminal-2117313416-r6 { fill: #9dcbee } -.terminal-2117313416-r7 { fill: #ffa62b } -.terminal-2117313416-r8 { fill: #939393 } -.terminal-2117313416-r9 { fill: #0178d4 } -.terminal-2117313416-r10 { fill: #e1e1e1 } -.terminal-2117313416-r11 { fill: #dde6ed } -.terminal-2117313416-r12 { fill: #a0a0a0 } -.terminal-2117313416-r13 { fill: #64451a } -.terminal-2117313416-r14 { fill: #fea62b } -.terminal-2117313416-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-2117313416-r16 { fill: #8d8d8d } -.terminal-2117313416-r17 { fill: #6c6c6c } -.terminal-2117313416-r18 { fill: #58d1eb;font-weight: bold } -.terminal-2117313416-r19 { fill: #272727 } -.terminal-2117313416-r20 { fill: #242424 } -.terminal-2117313416-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-2117313416-r22 { fill: #008139 } -.terminal-2117313416-r23 { fill: #3e3e3e } -.terminal-2117313416-r24 { fill: #ba3c5b } -.terminal-2117313416-r25 { fill: #e3e3e3 } -.terminal-2117313416-r26 { fill: #211505 } -.terminal-2117313416-r27 { fill: #313131;font-weight: bold } -.terminal-2117313416-r28 { fill: #313131 } -.terminal-2117313416-r29 { fill: #a2a2a2 } -.terminal-2117313416-r30 { fill: #989a9c;font-weight: bold } -.terminal-2117313416-r31 { fill: #e3e3e4;font-weight: bold } -.terminal-2117313416-r32 { fill: #1c1c1c } -.terminal-2117313416-r33 { fill: #b77923 } -.terminal-2117313416-r34 { fill: #888888 } -.terminal-2117313416-r35 { fill: #a4a4a4 } -.terminal-2117313416-r36 { fill: #787878 } -.terminal-2117313416-r37 { fill: #212121 } -.terminal-2117313416-r38 { fill: #3c8b54;font-weight: bold } -.terminal-2117313416-r39 { fill: #ffba41;font-weight: bold } -.terminal-2117313416-r40 { fill: #dbdbdb } + .terminal-4156698609-r1 { fill: #e0e0e0 } +.terminal-4156698609-r2 { fill: #c5c8c6 } +.terminal-4156698609-r3 { fill: #ffcf56 } +.terminal-4156698609-r4 { fill: #dfeef9;text-decoration: underline; } +.terminal-4156698609-r5 { fill: #dfeef9 } +.terminal-4156698609-r6 { fill: #9dcbee } +.terminal-4156698609-r7 { fill: #ffa62b } +.terminal-4156698609-r8 { fill: #939393 } +.terminal-4156698609-r9 { fill: #0178d4 } +.terminal-4156698609-r10 { fill: #e1e1e1 } +.terminal-4156698609-r11 { fill: #dde6ed } +.terminal-4156698609-r12 { fill: #a0a0a0 } +.terminal-4156698609-r13 { fill: #64451a } +.terminal-4156698609-r14 { fill: #fea62b } +.terminal-4156698609-r15 { fill: #e0e0e0;font-weight: bold } +.terminal-4156698609-r16 { fill: #8d8d8d } +.terminal-4156698609-r17 { fill: #6c6c6c } +.terminal-4156698609-r18 { fill: #58d1eb;font-weight: bold } +.terminal-4156698609-r19 { fill: #272727 } +.terminal-4156698609-r20 { fill: #242424 } +.terminal-4156698609-r21 { fill: #8d8d8d;font-weight: bold } +.terminal-4156698609-r22 { fill: #008139 } +.terminal-4156698609-r23 { fill: #3e3e3e } +.terminal-4156698609-r24 { fill: #ba3c5b } +.terminal-4156698609-r25 { fill: #e3e3e3 } +.terminal-4156698609-r26 { fill: #211505 } +.terminal-4156698609-r27 { fill: #313131;font-weight: bold } +.terminal-4156698609-r28 { fill: #313131 } +.terminal-4156698609-r29 { fill: #a2a2a2 } +.terminal-4156698609-r30 { fill: #989a9c;font-weight: bold } +.terminal-4156698609-r31 { fill: #e3e3e4;font-weight: bold } +.terminal-4156698609-r32 { fill: #1c1c1c } +.terminal-4156698609-r33 { fill: #b77923 } +.terminal-4156698609-r34 { fill: #888888 } +.terminal-4156698609-r35 { fill: #a4a4a4 } +.terminal-4156698609-r36 { fill: #787878 } +.terminal-4156698609-r37 { fill: #212121 } +.terminal-4156698609-r38 { fill: #3c8b54;font-weight: bold } +.terminal-4156698609-r39 { fill: #ffba41;font-weight: bold } +.terminal-4156698609-r40 { fill: #dbdbdb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                                          - -GEThttps://jsonplaceholder.typicode.com/todos                                                Send  - -╭─ Collection ──────────────────────╮╭───────────────────────────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no parameters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ comments/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get commentsfoo                      $nope/${nope} Add   - GET get comments (via param)╰───────────────────────────────────────────────────────────────────────────╯ - PUT edit a comment│╭──────────────────────────────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace -█ GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -│───────────────────────────────────││ -Retrieve all todos││1:1read-onlyJSONWrap X -╰────────────── sample-collections ─╯╰───────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  f1 Help  + + + + +Posting                                                                                                          + +GEThttps://jsonplaceholder.typicode.com/todos                                                Send  + +╭─ Collection ──────────────────────╮╭───────────────────────────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no parameters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ comments/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get commentsfoo                      $nope/${nope} Add   + GET get comments (via param)╰───────────────────────────────────────────────────────────────────────────╯ + PUT edit a comment│╭──────────────────────────────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace +█ GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +│───────────────────────────────────││ +Retrieve all todos││1:1read-onlyJSONWrap X +╰────────────── sample-collections ─╯╰───────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  From 20dbec751d3482d4e5ed0e0391880b54b4c8a973 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sat, 10 Aug 2024 23:00:07 +0100 Subject: [PATCH 03/50] Refining --- src/posting/app.py | 2 +- src/posting/themes.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/posting/app.py b/src/posting/app.py index 6afb7fe5..4437ecd4 100644 --- a/src/posting/app.py +++ b/src/posting/app.py @@ -584,7 +584,7 @@ class Posting(App[None], inherit_bindings=False): description="Jump", ), Binding( - "ctrl+q", + "ctrl+c", "app.quit", description="Quit", ), diff --git a/src/posting/themes.py b/src/posting/themes.py index ada24124..e7a2d136 100644 --- a/src/posting/themes.py +++ b/src/posting/themes.py @@ -256,7 +256,7 @@ def load_user_themes() -> dict[str, Theme]: "galaxy": Theme( name="galaxy", primary="#8A2BE2", # Improved Deep Magenta (Blueviolet) - secondary="#9370DB", # Softer Dusky Indigo (Medium Purple) + secondary="#a684e8", warning="#FFD700", # Gold, more visible than orange error="#FF4500", # OrangeRed, vibrant but less harsh than pure red success="#00FA9A", # Medium Spring Green, kept for vibrancy @@ -265,7 +265,7 @@ def load_user_themes() -> dict[str, Theme]: background="#0F0F1F", # Very Dark Blue, almost black surface="#1E1E3F", # Dark Blue-Purple panel="#2D2B55", # Slightly Lighter Blue-Purple - syntax="dracula", + syntax="monokai", ), "nebula": Theme( name="nebula", From 17d2a150e12a30e5dae301dde878723279ec86e4 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sat, 10 Aug 2024 23:03:04 +0100 Subject: [PATCH 04/50] Make Galaxy the default theme --- src/posting/app.py | 4 ++-- src/posting/config.py | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/posting/app.py b/src/posting/app.py index 4437ecd4..b9880058 100644 --- a/src/posting/app.py +++ b/src/posting/app.py @@ -601,7 +601,7 @@ def __init__( ) -> None: SETTINGS.set(settings) - available_themes: dict[str, Theme] = {"posting": BUILTIN_THEMES["posting"]} + available_themes: dict[str, Theme] = {"galaxy": BUILTIN_THEMES["galaxy"]} if settings.load_builtin_themes: available_themes |= BUILTIN_THEMES @@ -625,7 +625,7 @@ def __init__( self.collection_specified = collection_specified self.animation_level = settings.animation - theme: Reactive[str | None] = reactive("posting", init=False) + theme: Reactive[str | None] = reactive("galaxy", init=False) _jumping: Reactive[bool] = reactive(False, init=False, bindings=True) def on_mount(self) -> None: diff --git a/src/posting/config.py b/src/posting/config.py index cf5720df..51e4646b 100644 --- a/src/posting/config.py +++ b/src/posting/config.py @@ -93,7 +93,7 @@ class Settings(BaseSettings): extra="allow", ) - theme: str = Field(default="posting") + theme: str = Field(default="galaxy") """The name of the theme to use.""" theme_directory: Path = Field(default=theme_directory()) From 4a77aaf13c0b9289a3a31fb01f93c8faa7a27809 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 11:16:32 +0100 Subject: [PATCH 05/50] Update snapshots --- ...n_run_command__hide_collection_browser.svg | 172 +++++------ ...alette.test_can_type_to_filter_options.svg | 180 ++++++------ ...test_loads_and_shows_discovery_options.svg | 220 +++++++------- .../test_snapshots/TestConfig.test_config.svg | 234 +++++++-------- ...ghting_applied_from_custom_theme__json.svg | 230 +++++++-------- ...ighting_applied_from_custom_theme__url.svg | 210 +++++++------- ...ple.test_theme_sensible_defaults__json.svg | 228 +++++++-------- ...mple.test_theme_sensible_defaults__url.svg | 210 +++++++------- ..._set_on_startup_and_in_command_palette.svg | 184 ++++++------ ...estHelpScreen.test_help_screen_appears.svg | 269 +++++++++--------- .../TestJumpMode.test_click_switch.svg | 176 ++++++------ .../TestJumpMode.test_focus_switch.svg | 176 ++++++------ .../TestJumpMode.test_loads.svg | 185 ++++++------ ...st.test_request_loaded_into_view__auth.svg | 260 ++++++++--------- ...st.test_request_loaded_into_view__body.svg | 234 +++++++-------- ...test_request_loaded_into_view__headers.svg | 212 +++++++------- ...test_request_loaded_into_view__options.svg | 259 +++++++++-------- ...request_loaded_into_view__query_params.svg | 231 ++++++++------- ...ethodSelection.test_select_post_method.svg | 176 ++++++------ ...uest.test_dialog_loads_and_can_be_used.svg | 190 ++++++------- ..._tree_correctly_and_notification_shown.svg | 172 +++++------ ...elected__dialog_is_prefilled_correctly.svg | 196 ++++++------- .../TestSendRequest.test_send_request.svg | 234 +++++++-------- ...UrlBar.test_dropdown_appears_on_typing.svg | 188 ++++++------ ...down_completion_selected_via_enter_key.svg | 187 ++++++------ ...opdown_completion_selected_via_tab_key.svg | 187 ++++++------ ...UrlBar.test_dropdown_filters_on_typing.svg | 186 ++++++------ ...eShortcuts.test_expand_request_section.svg | 156 +++++----- ...erfaceShortcuts.test_expand_then_reset.svg | 176 ++++++------ ...Shortcuts.test_hide_collection_browser.svg | 172 +++++------ ...solved_variables_highlight_and_preview.svg | 195 +++++++------ ....test_unresolved_variables_highlighted.svg | 225 ++++++++------- 32 files changed, 3253 insertions(+), 3257 deletions(-) diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg index 2690f905..24cca2e8 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_run_command__hide_collection_browser.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-1469096930-matrix { + .terminal-3721920745-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1469096930-title { + .terminal-3721920745-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1469096930-r1 { fill: #e0e0e0 } -.terminal-1469096930-r2 { fill: #c5c8c6 } -.terminal-1469096930-r3 { fill: #ffcf56 } -.terminal-1469096930-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1469096930-r5 { fill: #dfeef9 } -.terminal-1469096930-r6 { fill: #9dcbee } -.terminal-1469096930-r7 { fill: #3e3e3e } -.terminal-1469096930-r8 { fill: #211505 } -.terminal-1469096930-r9 { fill: #7c7c7c } -.terminal-1469096930-r10 { fill: #e3e3e3 } -.terminal-1469096930-r11 { fill: #dde6ed } -.terminal-1469096930-r12 { fill: #a0a0a0 } -.terminal-1469096930-r13 { fill: #64451a } -.terminal-1469096930-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-1469096930-r15 { fill: #6c6c6c } -.terminal-1469096930-r16 { fill: #272727 } -.terminal-1469096930-r17 { fill: #fea62b } -.terminal-1469096930-r18 { fill: #242424 } -.terminal-1469096930-r19 { fill: #737373 } -.terminal-1469096930-r20 { fill: #e1e1e1 } -.terminal-1469096930-r21 { fill: #8c9092 } -.terminal-1469096930-r22 { fill: #313131;font-weight: bold } -.terminal-1469096930-r23 { fill: #313131 } -.terminal-1469096930-r24 { fill: #a2a2a2 } -.terminal-1469096930-r25 { fill: #1c1c1c } -.terminal-1469096930-r26 { fill: #b77923 } -.terminal-1469096930-r27 { fill: #888888 } -.terminal-1469096930-r28 { fill: #a4a4a4 } -.terminal-1469096930-r29 { fill: #787878 } -.terminal-1469096930-r30 { fill: #212121 } -.terminal-1469096930-r31 { fill: #3c8b54;font-weight: bold } -.terminal-1469096930-r32 { fill: #ffba41;font-weight: bold } -.terminal-1469096930-r33 { fill: #dbdbdb } + .terminal-3721920745-r1 { fill: #dfdfe1 } +.terminal-3721920745-r2 { fill: #c5c8c6 } +.terminal-3721920745-r3 { fill: #ff93dd } +.terminal-3721920745-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3721920745-r5 { fill: #15111e } +.terminal-3721920745-r6 { fill: #43365c } +.terminal-3721920745-r7 { fill: #403e62 } +.terminal-3721920745-r8 { fill: #210d17 } +.terminal-3721920745-r9 { fill: #7e7c92 } +.terminal-3721920745-r10 { fill: #e3e3e8 } +.terminal-3721920745-r11 { fill: #efe3fb } +.terminal-3721920745-r12 { fill: #9f9fa5 } +.terminal-3721920745-r13 { fill: #632e53 } +.terminal-3721920745-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-3721920745-r15 { fill: #6a6a74 } +.terminal-3721920745-r16 { fill: #252532 } +.terminal-3721920745-r17 { fill: #ff69b4 } +.terminal-3721920745-r18 { fill: #252441 } +.terminal-3721920745-r19 { fill: #737387 } +.terminal-3721920745-r20 { fill: #e1e1e6 } +.terminal-3721920745-r21 { fill: #918d9d } +.terminal-3721920745-r22 { fill: #2e2e3c;font-weight: bold } +.terminal-3721920745-r23 { fill: #2e2e3c } +.terminal-3721920745-r24 { fill: #a0a0a6 } +.terminal-3721920745-r25 { fill: #191928 } +.terminal-3721920745-r26 { fill: #b74e87 } +.terminal-3721920745-r27 { fill: #87878f } +.terminal-3721920745-r28 { fill: #a3a3a9 } +.terminal-3721920745-r29 { fill: #777780 } +.terminal-3721920745-r30 { fill: #1f1f2d } +.terminal-3721920745-r31 { fill: #04b375;font-weight: bold } +.terminal-3721920745-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-3721920745-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭──────────────────────────────────────────────────────────────── Request ─╮ -HeadersBodyQueryAuthInfoOptions -━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -NameValue Add header  -╰──────────────────────────────────────────────────────────────────────────╯ -╭─────────────────────────────────────────────────────────────── Response ─╮ -BodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - -1:1read-onlyJSONWrap X -╰──────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭──────────────────────────────────────────────────────────────── Request ─╮ +HeadersBodyQueryAuthInfoOptions +━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +NameValue Add header  +╰──────────────────────────────────────────────────────────────────────────╯ +╭─────────────────────────────────────────────────────────────── Response ─╮ +BodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + +1:1read-onlyJSONWrap X +╰──────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg index dae606a1..0cde64f3 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg @@ -19,166 +19,166 @@ font-weight: 700; } - .terminal-551510411-matrix { + .terminal-2331259748-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-551510411-title { + .terminal-2331259748-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-551510411-r1 { fill: #b3b3b3 } -.terminal-551510411-r2 { fill: #c5c8c6 } -.terminal-551510411-r3 { fill: #dfdfdf } -.terminal-551510411-r4 { fill: #cca544 } -.terminal-551510411-r5 { fill: #b2bec7;text-decoration: underline; } -.terminal-551510411-r6 { fill: #b2bec7 } -.terminal-551510411-r7 { fill: #7da2be } -.terminal-551510411-r8 { fill: #313131 } -.terminal-551510411-r9 { fill: #fea62b } -.terminal-551510411-r10 { fill: #b5b5b5 } -.terminal-551510411-r11 { fill: #b0b8bd } -.terminal-551510411-r12 { fill: #808080 } -.terminal-551510411-r13 { fill: #211505 } -.terminal-551510411-r14 { fill: #503714 } -.terminal-551510411-r15 { fill: #797b7c;font-weight: bold } -.terminal-551510411-r16 { fill: #b5b5b6;font-weight: bold } -.terminal-551510411-r17 { fill: #dfdfdf;font-weight: bold } -.terminal-551510411-r18 { fill: #fea62b;font-weight: bold } -.terminal-551510411-r19 { fill: #565656 } -.terminal-551510411-r20 { fill: #717171 } -.terminal-551510411-r21 { fill: #1f1f1f } -.terminal-551510411-r22 { fill: #1c1c1c } -.terminal-551510411-r23 { fill: #717171;font-weight: bold } -.terminal-551510411-r24 { fill: #00672d } -.terminal-551510411-r25 { fill: #707374 } -.terminal-551510411-r26 { fill: #272727;font-weight: bold } -.terminal-551510411-r27 { fill: #272727 } -.terminal-551510411-r28 { fill: #818181 } -.terminal-551510411-r29 { fill: #161616 } -.terminal-551510411-r30 { fill: #92601c } -.terminal-551510411-r31 { fill: #6c6c6c } -.terminal-551510411-r32 { fill: #838383 } -.terminal-551510411-r33 { fill: #606060 } -.terminal-551510411-r34 { fill: #1a1a1a } -.terminal-551510411-r35 { fill: #306f43;font-weight: bold } -.terminal-551510411-r36 { fill: #cc9434;font-weight: bold } -.terminal-551510411-r37 { fill: #afafaf } + .terminal-2331259748-r1 { fill: #b2b2b4 } +.terminal-2331259748-r2 { fill: #c5c8c6 } +.terminal-2331259748-r3 { fill: #dfdfe0 } +.terminal-2331259748-r4 { fill: #cc75b0 } +.terminal-2331259748-r5 { fill: #100d18;text-decoration: underline; } +.terminal-2331259748-r6 { fill: #100d18 } +.terminal-2331259748-r7 { fill: #352b49 } +.terminal-2331259748-r8 { fill: #33314e } +.terminal-2331259748-r9 { fill: #ff69b4 } +.terminal-2331259748-r10 { fill: #b5b5b9 } +.terminal-2331259748-r11 { fill: #bfb5c8 } +.terminal-2331259748-r12 { fill: #7f7f84 } +.terminal-2331259748-r13 { fill: #210d17 } +.terminal-2331259748-r14 { fill: #4f2442 } +.terminal-2331259748-r15 { fill: #7b7b88;font-weight: bold } +.terminal-2331259748-r16 { fill: #b5b5b9;font-weight: bold } +.terminal-2331259748-r17 { fill: #dfdfe0;font-weight: bold } +.terminal-2331259748-r18 { fill: #fed700;font-weight: bold } +.terminal-2331259748-r19 { fill: #54545c } +.terminal-2331259748-r20 { fill: #6f6f75 } +.terminal-2331259748-r21 { fill: #1d1d28 } +.terminal-2331259748-r22 { fill: #1d1c34 } +.terminal-2331259748-r23 { fill: #6f6f75;font-weight: bold } +.terminal-2331259748-r24 { fill: #00934c } +.terminal-2331259748-r25 { fill: #74707d } +.terminal-2331259748-r26 { fill: #242430;font-weight: bold } +.terminal-2331259748-r27 { fill: #242430 } +.terminal-2331259748-r28 { fill: #808084 } +.terminal-2331259748-r29 { fill: #141420 } +.terminal-2331259748-r30 { fill: #923e6c } +.terminal-2331259748-r31 { fill: #6c6c72 } +.terminal-2331259748-r32 { fill: #828287 } +.terminal-2331259748-r33 { fill: #5f5f66 } +.terminal-2331259748-r34 { fill: #181824 } +.terminal-2331259748-r35 { fill: #038f5d;font-weight: bold } +.terminal-2331259748-r36 { fill: #cc64a0;font-weight: bold } +.terminal-2331259748-r37 { fill: #afafb0 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -view -╭─ Collection── Request ─╮ - GET echoview: expand request                           tions - GET get ranExpand the request section━━━━━━━━━━━━ - POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ - GET getToggle the collection browserd header  - GET get────────────╯ - POS create       │╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GET Send  +view +╭─ Collection── Request ─╮ + GET echoview: expand request                           tions + GET get ranExpand the request section━━━━━━━━━━━━ + POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ + GET getToggle the collection browserd header  + GET get────────────╯ + POS create       │╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg index 14f4b0a3..1ea586fd 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_loads_and_shows_discovery_options.svg @@ -19,206 +19,206 @@ font-weight: 700; } - .terminal-2772346225-matrix { + .terminal-892557118-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2772346225-title { + .terminal-892557118-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2772346225-r1 { fill: #b3b3b3 } -.terminal-2772346225-r2 { fill: #c5c8c6 } -.terminal-2772346225-r3 { fill: #dfdfdf } -.terminal-2772346225-r4 { fill: #cca544 } -.terminal-2772346225-r5 { fill: #b2bec7;text-decoration: underline; } -.terminal-2772346225-r6 { fill: #b2bec7 } -.terminal-2772346225-r7 { fill: #7da2be } -.terminal-2772346225-r8 { fill: #313131 } -.terminal-2772346225-r9 { fill: #1a1004 } -.terminal-2772346225-r10 { fill: #636363 } -.terminal-2772346225-r11 { fill: #b5b5b5 } -.terminal-2772346225-r12 { fill: #fea62b } -.terminal-2772346225-r13 { fill: #b0b8bd } -.terminal-2772346225-r14 { fill: #808080 } -.terminal-2772346225-r15 { fill: #211505 } -.terminal-2772346225-r16 { fill: #696969 } -.terminal-2772346225-r17 { fill: #503714 } -.terminal-2772346225-r18 { fill: #797b7c;font-weight: bold } -.terminal-2772346225-r19 { fill: #b5b5b6;font-weight: bold } -.terminal-2772346225-r20 { fill: #dfdfdf;font-weight: bold } -.terminal-2772346225-r21 { fill: #717171 } -.terminal-2772346225-r22 { fill: #1f1f1f } -.terminal-2772346225-r23 { fill: #1c1c1c } -.terminal-2772346225-r24 { fill: #717171;font-weight: bold } -.terminal-2772346225-r25 { fill: #00672d } -.terminal-2772346225-r26 { fill: #b4b4b4 } -.terminal-2772346225-r27 { fill: #707374 } -.terminal-2772346225-r28 { fill: #818181 } -.terminal-2772346225-r29 { fill: #161616 } -.terminal-2772346225-r30 { fill: #0d0d0d;font-weight: bold } -.terminal-2772346225-r31 { fill: #6c6c6c } -.terminal-2772346225-r32 { fill: #838383 } -.terminal-2772346225-r33 { fill: #606060 } -.terminal-2772346225-r34 { fill: #1a1a1a } -.terminal-2772346225-r35 { fill: #306f43;font-weight: bold } -.terminal-2772346225-r36 { fill: #cc9434;font-weight: bold } -.terminal-2772346225-r37 { fill: #afafaf } + .terminal-892557118-r1 { fill: #b2b2b4 } +.terminal-892557118-r2 { fill: #c5c8c6 } +.terminal-892557118-r3 { fill: #dfdfe0 } +.terminal-892557118-r4 { fill: #cc75b0 } +.terminal-892557118-r5 { fill: #100d18;text-decoration: underline; } +.terminal-892557118-r6 { fill: #100d18 } +.terminal-892557118-r7 { fill: #352b49 } +.terminal-892557118-r8 { fill: #33314e } +.terminal-892557118-r9 { fill: #1a0a12 } +.terminal-892557118-r10 { fill: #646374 } +.terminal-892557118-r11 { fill: #b5b5b9 } +.terminal-892557118-r12 { fill: #ff69b4 } +.terminal-892557118-r13 { fill: #bfb5c8 } +.terminal-892557118-r14 { fill: #7f7f84 } +.terminal-892557118-r15 { fill: #210d17 } +.terminal-892557118-r16 { fill: #68686f } +.terminal-892557118-r17 { fill: #4f2442 } +.terminal-892557118-r18 { fill: #7b7b88;font-weight: bold } +.terminal-892557118-r19 { fill: #b5b5b9;font-weight: bold } +.terminal-892557118-r20 { fill: #dfdfe0;font-weight: bold } +.terminal-892557118-r21 { fill: #6f6f75 } +.terminal-892557118-r22 { fill: #1d1d28 } +.terminal-892557118-r23 { fill: #1d1c34 } +.terminal-892557118-r24 { fill: #6f6f75;font-weight: bold } +.terminal-892557118-r25 { fill: #00934c } +.terminal-892557118-r26 { fill: #b4b4b8 } +.terminal-892557118-r27 { fill: #74707d } +.terminal-892557118-r28 { fill: #808084 } +.terminal-892557118-r29 { fill: #141420 } +.terminal-892557118-r30 { fill: #0d0e2e;font-weight: bold } +.terminal-892557118-r31 { fill: #6c6c72 } +.terminal-892557118-r32 { fill: #828287 } +.terminal-892557118-r33 { fill: #5f5f66 } +.terminal-892557118-r34 { fill: #181824 } +.terminal-892557118-r35 { fill: #038f5d;font-weight: bold } +.terminal-892557118-r36 { fill: #cc64a0;font-weight: bold } +.terminal-892557118-r37 { fill: #afafb0 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                                            - -GETEnter a URL... Send  -Search for commands… -╭─ Collection ───────────────────────────────────────── Request ─╮ - GET echo  theme: posting                                 - GET get random user            Set the theme to posting━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post                    theme: monokai                                ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/Set the theme to monokai╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/  theme: solarized-light                        ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all                Set the theme to solarized-lighters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one                  theme: nautilus                               ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create                 Set the theme to nautilus╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post            theme: galaxy                                 ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ comments/Set the theme to galaxy╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get comments           theme: nebula                                  Add header  - GET get comments (via parSet the theme to nebula────────────────────────────────╯ - PUT edit a comment         theme: alpine                                 ───────────────────── Response ─╮ -▼ todos/Set the theme to alpine - GET get all                  theme: cobalt                                 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one                Set the theme to cobalt -▼ users/  theme: twilight                                - GET get a user             Set the theme to twilight - GET get all users            theme: hacker                                  - POS create a user          Set the theme to hacker - PUT update a user            app: quit                                      -│────────────────────────────────Quit Posting -This is an echo server we can u -to see exactly what request is ││ -being sent.││1:1read-onlyJSONWrap X -╰─────────────── sample-collections ─╯╰────────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + + + +Posting                                                                                                            + +GETEnter a URL... Send  +Search for commands… +╭─ Collection ───────────────────────────────────────── Request ─╮ + GET echo  theme: galaxy                                  + GET get random user            Set the theme to galaxy━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post                    theme: posting                                ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/Set the theme to posting╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/  theme: monokai                                ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all                Set the theme to monokaiers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one                  theme: solarized-light                        ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create                 Set the theme to solarized-light╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post            theme: nautilus                               ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ comments/Set the theme to nautilus╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get comments           theme: nebula                                  Add header  + GET get comments (via parSet the theme to nebula────────────────────────────────╯ + PUT edit a comment         theme: alpine                                 ───────────────────── Response ─╮ +▼ todos/Set the theme to alpine + GET get all                  theme: cobalt                                 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one                Set the theme to cobalt +▼ users/  theme: twilight                                + GET get a user             Set the theme to twilight + GET get all users            theme: hacker                                  + POS create a user          Set the theme to hacker + PUT update a user            app: quit                                      +│────────────────────────────────Quit Posting +This is an echo server we can u +to see exactly what request is ││ +being sent.││1:1read-onlyJSONWrap X +╰─────────────── sample-collections ─╯╰────────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg index 71216e1f..1ff885f8 100644 --- a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg +++ b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-1760118007-matrix { + .terminal-908541447-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1760118007-title { + .terminal-908541447-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1760118007-r1 { fill: #c5c8c6 } -.terminal-1760118007-r2 { fill: #130f1c;text-decoration: underline; } -.terminal-1760118007-r3 { fill: #130f1c } -.terminal-1760118007-r4 { fill: #3c2e58 } -.terminal-1760118007-r5 { fill: #ff69b4 } -.terminal-1760118007-r6 { fill: #9393a3 } -.terminal-1760118007-r7 { fill: #9370db } -.terminal-1760118007-r8 { fill: #e1e1e6 } -.terminal-1760118007-r9 { fill: #00fa9a } -.terminal-1760118007-r10 { fill: #efe3fb } -.terminal-1760118007-r11 { fill: #9f9fa5 } -.terminal-1760118007-r12 { fill: #632e53 } -.terminal-1760118007-r13 { fill: #dfdfe1 } -.terminal-1760118007-r14 { fill: #dfdfe1;font-weight: bold } -.terminal-1760118007-r15 { fill: #002014;font-weight: bold } -.terminal-1760118007-r16 { fill: #8b8b93 } -.terminal-1760118007-r17 { fill: #58d1eb;font-weight: bold } -.terminal-1760118007-r18 { fill: #6a6a74 } -.terminal-1760118007-r19 { fill: #252532 } -.terminal-1760118007-r20 { fill: #0f0f1f } -.terminal-1760118007-r21 { fill: #ede2f7 } -.terminal-1760118007-r22 { fill: #e1e0e4 } -.terminal-1760118007-r23 { fill: #a2a2a8;font-weight: bold } -.terminal-1760118007-r24 { fill: #210d17 } -.terminal-1760118007-r25 { fill: #e0e0e2 } -.terminal-1760118007-r26 { fill: #8b8b93;font-weight: bold } -.terminal-1760118007-r27 { fill: #e9e1f1 } -.terminal-1760118007-r28 { fill: #6f6f78 } -.terminal-1760118007-r29 { fill: #00b85f } -.terminal-1760118007-r30 { fill: #e2e0e5 } -.terminal-1760118007-r31 { fill: #ff79c6;font-weight: bold } -.terminal-1760118007-r32 { fill: #bd93f9 } -.terminal-1760118007-r33 { fill: #9b9aab;font-weight: bold } -.terminal-1760118007-r34 { fill: #e3e3e8;font-weight: bold } -.terminal-1760118007-r35 { fill: #552956 } -.terminal-1760118007-r36 { fill: #f1fa8c } -.terminal-1760118007-r37 { fill: #737387 } -.terminal-1760118007-r38 { fill: #918d9d } -.terminal-1760118007-r39 { fill: #87878f } -.terminal-1760118007-r40 { fill: #a2a2a8 } -.terminal-1760118007-r41 { fill: #30303b } -.terminal-1760118007-r42 { fill: #00fa9a;font-weight: bold } -.terminal-1760118007-r43 { fill: #ff7ec8;font-weight: bold } -.terminal-1760118007-r44 { fill: #dbdbdd } + .terminal-908541447-r1 { fill: #c5c8c6 } +.terminal-908541447-r2 { fill: #15111e;text-decoration: underline; } +.terminal-908541447-r3 { fill: #15111e } +.terminal-908541447-r4 { fill: #43365c } +.terminal-908541447-r5 { fill: #ff69b4 } +.terminal-908541447-r6 { fill: #9393a3 } +.terminal-908541447-r7 { fill: #a684e8 } +.terminal-908541447-r8 { fill: #e1e1e6 } +.terminal-908541447-r9 { fill: #00fa9a } +.terminal-908541447-r10 { fill: #efe3fb } +.terminal-908541447-r11 { fill: #9f9fa5 } +.terminal-908541447-r12 { fill: #632e53 } +.terminal-908541447-r13 { fill: #dfdfe1 } +.terminal-908541447-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-908541447-r15 { fill: #002014;font-weight: bold } +.terminal-908541447-r16 { fill: #8b8b93 } +.terminal-908541447-r17 { fill: #58d1eb;font-weight: bold } +.terminal-908541447-r18 { fill: #6a6a74 } +.terminal-908541447-r19 { fill: #252532 } +.terminal-908541447-r20 { fill: #0f0f1f } +.terminal-908541447-r21 { fill: #ede2f7 } +.terminal-908541447-r22 { fill: #e1e0e4 } +.terminal-908541447-r23 { fill: #a2a2a8;font-weight: bold } +.terminal-908541447-r24 { fill: #210d17 } +.terminal-908541447-r25 { fill: #e0e0e2 } +.terminal-908541447-r26 { fill: #8b8b93;font-weight: bold } +.terminal-908541447-r27 { fill: #e9e1f1 } +.terminal-908541447-r28 { fill: #6f6f78 } +.terminal-908541447-r29 { fill: #00b85f } +.terminal-908541447-r30 { fill: #e2e0e5 } +.terminal-908541447-r31 { fill: #f92672;font-weight: bold } +.terminal-908541447-r32 { fill: #ae81ff } +.terminal-908541447-r33 { fill: #9b9aab;font-weight: bold } +.terminal-908541447-r34 { fill: #e3e3e8;font-weight: bold } +.terminal-908541447-r35 { fill: #552956 } +.terminal-908541447-r36 { fill: #e6db74 } +.terminal-908541447-r37 { fill: #737387 } +.terminal-908541447-r38 { fill: #918d9d } +.terminal-908541447-r39 { fill: #87878f } +.terminal-908541447-r40 { fill: #a2a2a8 } +.terminal-908541447-r41 { fill: #30303b } +.terminal-908541447-r42 { fill: #00fa9a;font-weight: bold } +.terminal-908541447-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-908541447-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -GEThttps://jsonplaceholder.typicode.com/posts                                        ■■■■■■■ Send  - -╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response  200 OK ─╮ - GET echo││HeadersBodyQueryAuthInfoOBodyHeadersCookiesTrace - GET get random user││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││ Content-Type     application/json   1  [ -▼ jsonplaceholder/││ Referer          https://example.c  2    {                           -▼ posts/││ Accept-Encoding  gzip               3  "userId"1,              -█ GET get all││ Cache-Control    no-cache           4  "id"1,                  - GET get one││  5  "title""sunt aut  - POS create││facere repellat provident  - DEL delete a post││occaecati excepturi optio  -▼ comments/││reprehenderit",               - GET get comments││  6  "body""quia et  - GET get comments (via param)││suscipit\nsuscipit  - PUT edit a comment││recusandae consequuntur  -▼ todos/││expedita et  - GET get all││cum\nreprehenderit  - GET get one││molestiae ut ut quas  -▼ users/││totam\nnostrum rerum est  - GET get a user││autem sunt rem eveniet  - GET get all users││architecto" - POS create a user││  7    },                          - PUT update a user││  8    {                           - DEL delete a user││  9  "userId"1,              -││ 10  "id"2,                  -││ 11  "title""qui est esse" -││Name 12  "body""est rerum  -│────────────────────────────────────││Valuetempore vitae\nsequi sint  -Retrieve all posts││ Add header 1:1read-onlyJSONWrap X -╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + + + +GEThttps://jsonplaceholder.typicode.com/posts                                        ■■■■■■■ Send  + +╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response  200 OK ─╮ + GET echo││HeadersBodyQueryAuthInfoOBodyHeadersCookiesTrace + GET get random user││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││ Content-Type     application/json   1  [ +▼ jsonplaceholder/││ Referer          https://example.c  2    {                           +▼ posts/││ Accept-Encoding  gzip               3  "userId"1,              +█ GET get all││ Cache-Control    no-cache           4  "id"1,                  + GET get one││  5  "title""sunt aut  + POS create││facere repellat provident  + DEL delete a post││occaecati excepturi optio  +▼ comments/││reprehenderit",               + GET get comments││  6  "body""quia et  + GET get comments (via param)││suscipit\nsuscipit  + PUT edit a comment││recusandae consequuntur  +▼ todos/││expedita et  + GET get all││cum\nreprehenderit  + GET get one││molestiae ut ut quas  +▼ users/││totam\nnostrum rerum est  + GET get a user││autem sunt rem eveniet  + GET get all users││architecto" + POS create a user││  7    },                          + PUT update a user││  8    {                           + DEL delete a user││  9  "userId"1,              +││ 10  "id"2,                  +││ 11  "title""qui est esse" +││Name 12  "body""est rerum  +│────────────────────────────────────││Valuetempore vitae\nsequi sint  +Retrieve all posts││ Add header 1:1read-onlyJSONWrap X +╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg index 665646c4..f8c579f1 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__json.svg @@ -19,208 +19,208 @@ font-weight: 700; } - .terminal-635321123-matrix { + .terminal-3798022933-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-635321123-title { + .terminal-3798022933-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-635321123-r1 { fill: #1e1f1f } -.terminal-635321123-r2 { fill: #c5c8c6 } -.terminal-635321123-r3 { fill: #c47fe0 } -.terminal-635321123-r4 { fill: #e4f0f9;text-decoration: underline; } -.terminal-635321123-r5 { fill: #e4f0f9 } -.terminal-635321123-r6 { fill: #acd3ed } -.terminal-635321123-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } -.terminal-635321123-r8 { fill: #de4e88;text-decoration: underline; } -.terminal-635321123-r9 { fill: #3498db;font-style: italic; } -.terminal-635321123-r10 { fill: #181919 } -.terminal-635321123-r11 { fill: #051a0e } -.terminal-635321123-r12 { fill: #5e6060 } -.terminal-635321123-r13 { fill: #cfbbdc } -.terminal-635321123-r14 { fill: #9b59b6 } -.terminal-635321123-r15 { fill: #1e1f1f;font-weight: bold } -.terminal-635321123-r16 { fill: #707273 } -.terminal-635321123-r17 { fill: #707273;font-weight: bold } -.terminal-635321123-r18 { fill: #929495 } -.terminal-635321123-r19 { fill: #58d1eb;font-weight: bold } -.terminal-635321123-r20 { fill: #007129 } -.terminal-635321123-r21 { fill: #d6d9da } -.terminal-635321123-r22 { fill: #1d1d1e } -.terminal-635321123-r23 { fill: #5a5c5c } -.terminal-635321123-r24 { fill: #596060;font-weight: bold } -.terminal-635321123-r25 { fill: #181a1a;font-weight: bold } -.terminal-635321123-r26 { fill: #1a1a1a } -.terminal-635321123-r27 { fill: #ecf0f1;font-style: italic; } -.terminal-635321123-r28 { fill: #1e1f1f;font-style: italic; } -.terminal-635321123-r29 { fill: #8e44ad;font-weight: bold;font-style: italic; } -.terminal-635321123-r30 { fill: #27ae60;font-style: italic; } -.terminal-635321123-r31 { fill: #8e44ad;font-weight: bold } -.terminal-635321123-r32 { fill: #27ae60 } -.terminal-635321123-r33 { fill: #e67e22 } -.terminal-635321123-r34 { fill: #767878 } -.terminal-635321123-r35 { fill: #cbcece } -.terminal-635321123-r36 { fill: #27ae60;font-weight: bold } -.terminal-635321123-r37 { fill: #cccfd0;font-weight: bold } -.terminal-635321123-r38 { fill: #cccfd0 } -.terminal-635321123-r39 { fill: #5b5d5e } -.terminal-635321123-r40 { fill: #e0e4e5 } -.terminal-635321123-r41 { fill: #b386c7 } -.terminal-635321123-r42 { fill: #595a5b } -.terminal-635321123-r43 { fill: #848787 } -.terminal-635321123-r44 { fill: #dbdfe0 } -.terminal-635321123-r45 { fill: #62c18b;font-weight: bold } -.terminal-635321123-r46 { fill: #af6cca;font-weight: bold } -.terminal-635321123-r47 { fill: #232424 } + .terminal-3798022933-r1 { fill: #1e1f1f } +.terminal-3798022933-r2 { fill: #c5c8c6 } +.terminal-3798022933-r3 { fill: #c47fe0 } +.terminal-3798022933-r4 { fill: #e4f0f9;text-decoration: underline; } +.terminal-3798022933-r5 { fill: #e4f0f9 } +.terminal-3798022933-r6 { fill: #acd3ed } +.terminal-3798022933-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } +.terminal-3798022933-r8 { fill: #de4e88;text-decoration: underline; } +.terminal-3798022933-r9 { fill: #3498db;font-style: italic; } +.terminal-3798022933-r10 { fill: #181919 } +.terminal-3798022933-r11 { fill: #051a0e } +.terminal-3798022933-r12 { fill: #5e6060 } +.terminal-3798022933-r13 { fill: #cfbbdc } +.terminal-3798022933-r14 { fill: #9b59b6 } +.terminal-3798022933-r15 { fill: #1e1f1f;font-weight: bold } +.terminal-3798022933-r16 { fill: #707273 } +.terminal-3798022933-r17 { fill: #707273;font-weight: bold } +.terminal-3798022933-r18 { fill: #929495 } +.terminal-3798022933-r19 { fill: #58d1eb;font-weight: bold } +.terminal-3798022933-r20 { fill: #007129 } +.terminal-3798022933-r21 { fill: #d6d9da } +.terminal-3798022933-r22 { fill: #1d1d1e } +.terminal-3798022933-r23 { fill: #5a5c5c } +.terminal-3798022933-r24 { fill: #596060;font-weight: bold } +.terminal-3798022933-r25 { fill: #181a1a;font-weight: bold } +.terminal-3798022933-r26 { fill: #1a1a1a } +.terminal-3798022933-r27 { fill: #ecf0f1;font-style: italic; } +.terminal-3798022933-r28 { fill: #1e1f1f;font-style: italic; } +.terminal-3798022933-r29 { fill: #8e44ad;font-weight: bold;font-style: italic; } +.terminal-3798022933-r30 { fill: #27ae60;font-style: italic; } +.terminal-3798022933-r31 { fill: #8e44ad;font-weight: bold } +.terminal-3798022933-r32 { fill: #27ae60 } +.terminal-3798022933-r33 { fill: #e67e22 } +.terminal-3798022933-r34 { fill: #767878 } +.terminal-3798022933-r35 { fill: #cbcece } +.terminal-3798022933-r36 { fill: #27ae60;font-weight: bold } +.terminal-3798022933-r37 { fill: #cccfd0;font-weight: bold } +.terminal-3798022933-r38 { fill: #cccfd0 } +.terminal-3798022933-r39 { fill: #5b5d5e } +.terminal-3798022933-r40 { fill: #e0e4e5 } +.terminal-3798022933-r41 { fill: #b386c7 } +.terminal-3798022933-r42 { fill: #595a5b } +.terminal-3798022933-r43 { fill: #848787 } +.terminal-3798022933-r44 { fill: #dbdfe0 } +.terminal-3798022933-r45 { fill: #62c18b;font-weight: bold } +.terminal-3798022933-r46 { fill: #af6cca;font-weight: bold } +.terminal-3798022933-r47 { fill: #232424 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - + - - -Posting                                                                                        - -POSThttps://jsonplaceholder.typicode.com/posts                              Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ -▼ posts/HeadersBodyQueryAuthInfoOptions - GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get oneRaw (json, text, etc.) -█ POS create1  { - DEL delete a post2  "title""foo",                                          -▼ comments/3  "body""bar",                                           - GET get comments4  "userId"1 - GET get comments (via pa5  }                                                          - PUT edit a comment -▼ todos/2:1JSONWrap X - GET get all╰───────────────────────────────────────────────────────────────╯ - GET get one│╭──────────────────────────────────────────────────── Response ─╮ -▼ users/││BodyHeadersCookiesTrace - GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -│─────────────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Hel + + +Posting                                                                                        + +POSThttps://jsonplaceholder.typicode.com/posts                              Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ +▼ posts/HeadersBodyQueryAuthInfoOptions + GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get oneRaw (json, text, etc.) +█ POS create1  { + DEL delete a post2  "title""foo",                                          +▼ comments/3  "body""bar",                                           + GET get comments4  "userId"1 + GET get comments (via pa5  }                                                          + PUT edit a comment +▼ todos/2:1JSONWrap X + GET get all╰───────────────────────────────────────────────────────────────╯ + GET get one│╭──────────────────────────────────────────────────── Response ─╮ +▼ users/││BodyHeadersCookiesTrace + GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +│─────────────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Hel diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg index 6871b9b3..144883e6 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeComplex.test_highlighting_applied_from_custom_theme__url.svg @@ -19,198 +19,198 @@ font-weight: 700; } - .terminal-3030719150-matrix { + .terminal-1686575776-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3030719150-title { + .terminal-1686575776-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3030719150-r1 { fill: #1e1f1f } -.terminal-3030719150-r2 { fill: #c5c8c6 } -.terminal-3030719150-r3 { fill: #c47fe0 } -.terminal-3030719150-r4 { fill: #e4f0f9;text-decoration: underline; } -.terminal-3030719150-r5 { fill: #e4f0f9 } -.terminal-3030719150-r6 { fill: #acd3ed } -.terminal-3030719150-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } -.terminal-3030719150-r8 { fill: #de4e88;text-decoration: underline; } -.terminal-3030719150-r9 { fill: #3498db;font-style: italic; } -.terminal-3030719150-r10 { fill: #181919 } -.terminal-3030719150-r11 { fill: #1a1a1a } -.terminal-3030719150-r12 { fill: #051a0e } -.terminal-3030719150-r13 { fill: #5e6060 } -.terminal-3030719150-r14 { fill: #cfbbdc } -.terminal-3030719150-r15 { fill: #9b59b6 } -.terminal-3030719150-r16 { fill: #1e1f1f;font-weight: bold } -.terminal-3030719150-r17 { fill: #707273 } -.terminal-3030719150-r18 { fill: #929495 } -.terminal-3030719150-r19 { fill: #58d1eb;font-weight: bold } -.terminal-3030719150-r20 { fill: #596060;font-weight: bold } -.terminal-3030719150-r21 { fill: #181a1a;font-weight: bold } -.terminal-3030719150-r22 { fill: #c3a4d3 } -.terminal-3030719150-r23 { fill: #1d1d1e } -.terminal-3030719150-r24 { fill: #5a5c5c } -.terminal-3030719150-r25 { fill: #d9dee1 } -.terminal-3030719150-r26 { fill: #cccfd0;font-weight: bold } -.terminal-3030719150-r27 { fill: #cccfd0 } -.terminal-3030719150-r28 { fill: #5b5d5e } -.terminal-3030719150-r29 { fill: #e0e4e5 } -.terminal-3030719150-r30 { fill: #b386c7 } -.terminal-3030719150-r31 { fill: #767878 } -.terminal-3030719150-r32 { fill: #595a5b } -.terminal-3030719150-r33 { fill: #848787 } -.terminal-3030719150-r34 { fill: #dbdfe0 } -.terminal-3030719150-r35 { fill: #62c18b;font-weight: bold } -.terminal-3030719150-r36 { fill: #af6cca;font-weight: bold } -.terminal-3030719150-r37 { fill: #232424 } + .terminal-1686575776-r1 { fill: #1e1f1f } +.terminal-1686575776-r2 { fill: #c5c8c6 } +.terminal-1686575776-r3 { fill: #c47fe0 } +.terminal-1686575776-r4 { fill: #e4f0f9;text-decoration: underline; } +.terminal-1686575776-r5 { fill: #e4f0f9 } +.terminal-1686575776-r6 { fill: #acd3ed } +.terminal-1686575776-r7 { fill: #9b59b6;font-weight: bold;text-decoration: underline; } +.terminal-1686575776-r8 { fill: #de4e88;text-decoration: underline; } +.terminal-1686575776-r9 { fill: #3498db;font-style: italic; } +.terminal-1686575776-r10 { fill: #181919 } +.terminal-1686575776-r11 { fill: #1a1a1a } +.terminal-1686575776-r12 { fill: #051a0e } +.terminal-1686575776-r13 { fill: #5e6060 } +.terminal-1686575776-r14 { fill: #cfbbdc } +.terminal-1686575776-r15 { fill: #9b59b6 } +.terminal-1686575776-r16 { fill: #1e1f1f;font-weight: bold } +.terminal-1686575776-r17 { fill: #707273 } +.terminal-1686575776-r18 { fill: #929495 } +.terminal-1686575776-r19 { fill: #58d1eb;font-weight: bold } +.terminal-1686575776-r20 { fill: #596060;font-weight: bold } +.terminal-1686575776-r21 { fill: #181a1a;font-weight: bold } +.terminal-1686575776-r22 { fill: #c3a4d3 } +.terminal-1686575776-r23 { fill: #1d1d1e } +.terminal-1686575776-r24 { fill: #5a5c5c } +.terminal-1686575776-r25 { fill: #d9dee1 } +.terminal-1686575776-r26 { fill: #cccfd0;font-weight: bold } +.terminal-1686575776-r27 { fill: #cccfd0 } +.terminal-1686575776-r28 { fill: #5b5d5e } +.terminal-1686575776-r29 { fill: #e0e4e5 } +.terminal-1686575776-r30 { fill: #b386c7 } +.terminal-1686575776-r31 { fill: #767878 } +.terminal-1686575776-r32 { fill: #595a5b } +.terminal-1686575776-r33 { fill: #848787 } +.terminal-1686575776-r34 { fill: #dbdfe0 } +.terminal-1686575776-r35 { fill: #62c18b;font-weight: bold } +.terminal-1686575776-r36 { fill: #af6cca;font-weight: bold } +.terminal-1686575776-r37 { fill: #232424 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - + - - -Posting                                                                                        - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ - GET get allHeadersBodyQueryAuthInfoOptions -█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -None -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╰───────────────────────────────────────────────────────────────╯ -│╭──────────────────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -││ -││ -││ -││ -│─────────────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + +Posting                                                                                        + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ + GET get allHeadersBodyQueryAuthInfoOptions +█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +None +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╰───────────────────────────────────────────────────────────────╯ +│╭──────────────────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +││ +││ +││ +││ +│─────────────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg index c06f8ebe..14c85773 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__json.svg @@ -19,207 +19,207 @@ font-weight: 700; } - .terminal-3673487078-matrix { + .terminal-2545874648-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3673487078-title { + .terminal-2545874648-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3673487078-r1 { fill: #1d1f20 } -.terminal-3673487078-r2 { fill: #c5c8c6 } -.terminal-3673487078-r3 { fill: #ff5c51 } -.terminal-3673487078-r4 { fill: #ddf3f5;text-decoration: underline; } -.terminal-3673487078-r5 { fill: #ddf3f5 } -.terminal-3673487078-r6 { fill: #99dbe3 } -.terminal-3673487078-r7 { fill: #d32f2f } -.terminal-3673487078-r8 { fill: #797979 } -.terminal-3673487078-r9 { fill: #00acc1 } -.terminal-3673487078-r10 { fill: #212121 } -.terminal-3673487078-r11 { fill: #e1effb } -.terminal-3673487078-r12 { fill: #5a6065 } -.terminal-3673487078-r13 { fill: #ddadb4 } -.terminal-3673487078-r14 { fill: #d22f2f } -.terminal-3673487078-r15 { fill: #1d1f20;font-weight: bold } -.terminal-3673487078-r16 { fill: #6c7378 } -.terminal-3673487078-r17 { fill: #6c7378;font-weight: bold } -.terminal-3673487078-r18 { fill: #8c969c } -.terminal-3673487078-r19 { fill: #58d1eb;font-weight: bold } -.terminal-3673487078-r20 { fill: #00640d } -.terminal-3673487078-r21 { fill: #cfdbe3 } -.terminal-3673487078-r22 { fill: #1c1e1f } -.terminal-3673487078-r23 { fill: #575c61 } -.terminal-3673487078-r24 { fill: #747779;font-weight: bold } -.terminal-3673487078-r25 { fill: #1f2021;font-weight: bold } -.terminal-3673487078-r26 { fill: #889197 } -.terminal-3673487078-r27 { fill: #1d1617 } -.terminal-3673487078-r28 { fill: #575c61;font-weight: bold } -.terminal-3673487078-r29 { fill: #f9e3e3 } -.terminal-3673487078-r30 { fill: #569cd6;font-weight: bold } -.terminal-3673487078-r31 { fill: #ce9178 } -.terminal-3673487078-r32 { fill: #b5cea8 } -.terminal-3673487078-r33 { fill: #71797e } -.terminal-3673487078-r34 { fill: #c5cfd7 } -.terminal-3673487078-r35 { fill: #43a047;font-weight: bold } -.terminal-3673487078-r36 { fill: #c4d1da;font-weight: bold } -.terminal-3673487078-r37 { fill: #c4d1da } -.terminal-3673487078-r38 { fill: #585e62 } -.terminal-3673487078-r39 { fill: #d9e6f0 } -.terminal-3673487078-r40 { fill: #d7696c } -.terminal-3673487078-r41 { fill: #555b5f } -.terminal-3673487078-r42 { fill: #7f888e } -.terminal-3673487078-r43 { fill: #d4e0ea } -.terminal-3673487078-r44 { fill: #73b87d;font-weight: bold } -.terminal-3673487078-r45 { fill: #eb4640;font-weight: bold } -.terminal-3673487078-r46 { fill: #222425 } + .terminal-2545874648-r1 { fill: #1d1f20 } +.terminal-2545874648-r2 { fill: #c5c8c6 } +.terminal-2545874648-r3 { fill: #ff5c51 } +.terminal-2545874648-r4 { fill: #ddf3f5;text-decoration: underline; } +.terminal-2545874648-r5 { fill: #ddf3f5 } +.terminal-2545874648-r6 { fill: #99dbe3 } +.terminal-2545874648-r7 { fill: #d32f2f } +.terminal-2545874648-r8 { fill: #797979 } +.terminal-2545874648-r9 { fill: #00acc1 } +.terminal-2545874648-r10 { fill: #212121 } +.terminal-2545874648-r11 { fill: #e1effb } +.terminal-2545874648-r12 { fill: #5a6065 } +.terminal-2545874648-r13 { fill: #ddadb4 } +.terminal-2545874648-r14 { fill: #d22f2f } +.terminal-2545874648-r15 { fill: #1d1f20;font-weight: bold } +.terminal-2545874648-r16 { fill: #6c7378 } +.terminal-2545874648-r17 { fill: #6c7378;font-weight: bold } +.terminal-2545874648-r18 { fill: #8c969c } +.terminal-2545874648-r19 { fill: #58d1eb;font-weight: bold } +.terminal-2545874648-r20 { fill: #00640d } +.terminal-2545874648-r21 { fill: #cfdbe3 } +.terminal-2545874648-r22 { fill: #1c1e1f } +.terminal-2545874648-r23 { fill: #575c61 } +.terminal-2545874648-r24 { fill: #747779;font-weight: bold } +.terminal-2545874648-r25 { fill: #1f2021;font-weight: bold } +.terminal-2545874648-r26 { fill: #889197 } +.terminal-2545874648-r27 { fill: #1d1617 } +.terminal-2545874648-r28 { fill: #575c61;font-weight: bold } +.terminal-2545874648-r29 { fill: #f9e3e3 } +.terminal-2545874648-r30 { fill: #569cd6;font-weight: bold } +.terminal-2545874648-r31 { fill: #ce9178 } +.terminal-2545874648-r32 { fill: #b5cea8 } +.terminal-2545874648-r33 { fill: #71797e } +.terminal-2545874648-r34 { fill: #c5cfd7 } +.terminal-2545874648-r35 { fill: #43a047;font-weight: bold } +.terminal-2545874648-r36 { fill: #c4d1da;font-weight: bold } +.terminal-2545874648-r37 { fill: #c4d1da } +.terminal-2545874648-r38 { fill: #585e62 } +.terminal-2545874648-r39 { fill: #d9e6f0 } +.terminal-2545874648-r40 { fill: #d7696c } +.terminal-2545874648-r41 { fill: #555b5f } +.terminal-2545874648-r42 { fill: #7f888e } +.terminal-2545874648-r43 { fill: #d4e0ea } +.terminal-2545874648-r44 { fill: #73b87d;font-weight: bold } +.terminal-2545874648-r45 { fill: #eb4640;font-weight: bold } +.terminal-2545874648-r46 { fill: #222425 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - + - - -Posting                                                                                        - -POSThttps://jsonplaceholder.typicode.com/posts                              Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ -▼ posts/HeadersBodyQueryAuthInfoOptions - GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get oneRaw (json, text, etc.) -█ POS create1  { - DEL delete a post2  "title""foo",                                          -▼ comments/3  "body""bar",                                           - GET get comments4  "userId"1 - GET get comments (via pa5  }                                                          - PUT edit a comment -▼ todos/2:1JSONWrap X - GET get all╰───────────────────────────────────────────────────────────────╯ - GET get one│╭──────────────────────────────────────────────────── Response ─╮ -▼ users/││BodyHeadersCookiesTrace - GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -│─────────────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Hel + + +Posting                                                                                        + +POSThttps://jsonplaceholder.typicode.com/posts                              Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ +▼ posts/HeadersBodyQueryAuthInfoOptions + GET get all━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get oneRaw (json, text, etc.) +█ POS create1  { + DEL delete a post2  "title""foo",                                          +▼ comments/3  "body""bar",                                           + GET get comments4  "userId"1 + GET get comments (via pa5  }                                                          + PUT edit a comment +▼ todos/2:1JSONWrap X + GET get all╰───────────────────────────────────────────────────────────────╯ + GET get one│╭──────────────────────────────────────────────────── Response ─╮ +▼ users/││BodyHeadersCookiesTrace + GET get a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +│─────────────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰─────────── jsonplaceholder ─╯╰───────────────────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Hel diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg index cf194648..64e1ee5b 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_sensible_defaults__url.svg @@ -19,198 +19,198 @@ font-weight: 700; } - .terminal-65135865-matrix { + .terminal-3018646763-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-65135865-title { + .terminal-3018646763-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-65135865-r1 { fill: #1d1f20 } -.terminal-65135865-r2 { fill: #c5c8c6 } -.terminal-65135865-r3 { fill: #ff5c51 } -.terminal-65135865-r4 { fill: #ddf3f5;text-decoration: underline; } -.terminal-65135865-r5 { fill: #ddf3f5 } -.terminal-65135865-r6 { fill: #99dbe3 } -.terminal-65135865-r7 { fill: #d32f2f } -.terminal-65135865-r8 { fill: #797979 } -.terminal-65135865-r9 { fill: #00acc1 } -.terminal-65135865-r10 { fill: #212121 } -.terminal-65135865-r11 { fill: #43a047 } -.terminal-65135865-r12 { fill: #e1effb } -.terminal-65135865-r13 { fill: #5a6065 } -.terminal-65135865-r14 { fill: #ddadb4 } -.terminal-65135865-r15 { fill: #d22f2f } -.terminal-65135865-r16 { fill: #1d1f20;font-weight: bold } -.terminal-65135865-r17 { fill: #6c7378 } -.terminal-65135865-r18 { fill: #8c969c } -.terminal-65135865-r19 { fill: #58d1eb;font-weight: bold } -.terminal-65135865-r20 { fill: #747779;font-weight: bold } -.terminal-65135865-r21 { fill: #1f2021;font-weight: bold } -.terminal-65135865-r22 { fill: #da9096 } -.terminal-65135865-r23 { fill: #1c1e1f } -.terminal-65135865-r24 { fill: #575c61 } -.terminal-65135865-r25 { fill: #f6fbfe } -.terminal-65135865-r26 { fill: #c4d1da;font-weight: bold } -.terminal-65135865-r27 { fill: #c4d1da } -.terminal-65135865-r28 { fill: #585e62 } -.terminal-65135865-r29 { fill: #d9e6f0 } -.terminal-65135865-r30 { fill: #d7696c } -.terminal-65135865-r31 { fill: #71797e } -.terminal-65135865-r32 { fill: #555b5f } -.terminal-65135865-r33 { fill: #7f888e } -.terminal-65135865-r34 { fill: #d4e0ea } -.terminal-65135865-r35 { fill: #73b87d;font-weight: bold } -.terminal-65135865-r36 { fill: #eb4640;font-weight: bold } -.terminal-65135865-r37 { fill: #222425 } + .terminal-3018646763-r1 { fill: #1d1f20 } +.terminal-3018646763-r2 { fill: #c5c8c6 } +.terminal-3018646763-r3 { fill: #ff5c51 } +.terminal-3018646763-r4 { fill: #ddf3f5;text-decoration: underline; } +.terminal-3018646763-r5 { fill: #ddf3f5 } +.terminal-3018646763-r6 { fill: #99dbe3 } +.terminal-3018646763-r7 { fill: #d32f2f } +.terminal-3018646763-r8 { fill: #797979 } +.terminal-3018646763-r9 { fill: #00acc1 } +.terminal-3018646763-r10 { fill: #212121 } +.terminal-3018646763-r11 { fill: #43a047 } +.terminal-3018646763-r12 { fill: #e1effb } +.terminal-3018646763-r13 { fill: #5a6065 } +.terminal-3018646763-r14 { fill: #ddadb4 } +.terminal-3018646763-r15 { fill: #d22f2f } +.terminal-3018646763-r16 { fill: #1d1f20;font-weight: bold } +.terminal-3018646763-r17 { fill: #6c7378 } +.terminal-3018646763-r18 { fill: #8c969c } +.terminal-3018646763-r19 { fill: #58d1eb;font-weight: bold } +.terminal-3018646763-r20 { fill: #747779;font-weight: bold } +.terminal-3018646763-r21 { fill: #1f2021;font-weight: bold } +.terminal-3018646763-r22 { fill: #da9096 } +.terminal-3018646763-r23 { fill: #1c1e1f } +.terminal-3018646763-r24 { fill: #575c61 } +.terminal-3018646763-r25 { fill: #f6fbfe } +.terminal-3018646763-r26 { fill: #c4d1da;font-weight: bold } +.terminal-3018646763-r27 { fill: #c4d1da } +.terminal-3018646763-r28 { fill: #585e62 } +.terminal-3018646763-r29 { fill: #d9e6f0 } +.terminal-3018646763-r30 { fill: #d7696c } +.terminal-3018646763-r31 { fill: #71797e } +.terminal-3018646763-r32 { fill: #555b5f } +.terminal-3018646763-r33 { fill: #7f888e } +.terminal-3018646763-r34 { fill: #d4e0ea } +.terminal-3018646763-r35 { fill: #73b87d;font-weight: bold } +.terminal-3018646763-r36 { fill: #eb4640;font-weight: bold } +.terminal-3018646763-r37 { fill: #222425 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - + - - -Posting                                                                                        - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  - -╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ - GET get allHeadersBodyQueryAuthInfoOptions -█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -None -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╰───────────────────────────────────────────────────────────────╯ -│╭──────────────────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -││ -││ -││ -││ -│─────────────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + +Posting                                                                                        + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID/$lol/ Send  + +╭─ Collection ────────────────╮╭───────────────────────────────────────────────────── Request ─╮ + GET get allHeadersBodyQueryAuthInfoOptions +█ GET get one━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +None +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱The request doesn't have a body.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╰───────────────────────────────────────────────────────────────╯ +│╭──────────────────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +││ +││ +││ +││ +│─────────────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰───────────────────── todos ─╯╰───────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg index 71fd383e..316c2ba8 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg @@ -19,169 +19,169 @@ font-weight: 700; } - .terminal-196906796-matrix { + .terminal-3208220446-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-196906796-title { + .terminal-3208220446-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-196906796-r1 { fill: #171819 } -.terminal-196906796-r2 { fill: #c5c8c6 } -.terminal-196906796-r3 { fill: #17191a } -.terminal-196906796-r4 { fill: #cc4940 } -.terminal-196906796-r5 { fill: #b0c2c4;text-decoration: underline; } -.terminal-196906796-r6 { fill: #b0c2c4 } -.terminal-196906796-r7 { fill: #7aafb5 } -.terminal-196906796-r8 { fill: #d22f2f } -.terminal-196906796-r9 { fill: #1a1a1a } -.terminal-196906796-r10 { fill: #b4bfc8 } -.terminal-196906796-r11 { fill: #484c50 } -.terminal-196906796-r12 { fill: #f9e3e3 } -.terminal-196906796-r13 { fill: #a82525 } -.terminal-196906796-r14 { fill: #171819;font-weight: bold } -.terminal-196906796-r15 { fill: #b08a90 } -.terminal-196906796-r16 { fill: #ba7b7b;font-weight: bold } -.terminal-196906796-r17 { fill: #c7b5b5;font-weight: bold } -.terminal-196906796-r18 { fill: #17191a;font-weight: bold } -.terminal-196906796-r19 { fill: #1e88e5;font-weight: bold } -.terminal-196906796-r20 { fill: #70787c } -.terminal-196906796-r21 { fill: #565b5f } -.terminal-196906796-r22 { fill: #a5afb5 } -.terminal-196906796-r23 { fill: #c4c8cb } -.terminal-196906796-r24 { fill: #565b5f;font-weight: bold } -.terminal-196906796-r25 { fill: #bababa } -.terminal-196906796-r26 { fill: #00500a } -.terminal-196906796-r27 { fill: #7e7e7e } -.terminal-196906796-r28 { fill: #b8c2c9 } -.terminal-196906796-r29 { fill: #9ca7ae;font-weight: bold } -.terminal-196906796-r30 { fill: #9ca7ae } -.terminal-196906796-r31 { fill: #464b4e } -.terminal-196906796-r32 { fill: #adb8c0 } -.terminal-196906796-r33 { fill: #ac5456 } -.terminal-196906796-r34 { fill: #5a6064 } -.terminal-196906796-r35 { fill: #44484c } -.terminal-196906796-r36 { fill: #656c71 } -.terminal-196906796-r37 { fill: #a9b3bb } -.terminal-196906796-r38 { fill: #5c9364;font-weight: bold } -.terminal-196906796-r39 { fill: #bc3833;font-weight: bold } -.terminal-196906796-r40 { fill: #1b1c1d } + .terminal-3208220446-r1 { fill: #171819 } +.terminal-3208220446-r2 { fill: #c5c8c6 } +.terminal-3208220446-r3 { fill: #17191a } +.terminal-3208220446-r4 { fill: #cc4940 } +.terminal-3208220446-r5 { fill: #b0c2c4;text-decoration: underline; } +.terminal-3208220446-r6 { fill: #b0c2c4 } +.terminal-3208220446-r7 { fill: #7aafb5 } +.terminal-3208220446-r8 { fill: #d22f2f } +.terminal-3208220446-r9 { fill: #1a1a1a } +.terminal-3208220446-r10 { fill: #b4bfc8 } +.terminal-3208220446-r11 { fill: #484c50 } +.terminal-3208220446-r12 { fill: #f9e3e3 } +.terminal-3208220446-r13 { fill: #a82525 } +.terminal-3208220446-r14 { fill: #171819;font-weight: bold } +.terminal-3208220446-r15 { fill: #b08a90 } +.terminal-3208220446-r16 { fill: #ba7b7b;font-weight: bold } +.terminal-3208220446-r17 { fill: #c7b5b5;font-weight: bold } +.terminal-3208220446-r18 { fill: #17191a;font-weight: bold } +.terminal-3208220446-r19 { fill: #1e88e5;font-weight: bold } +.terminal-3208220446-r20 { fill: #70787c } +.terminal-3208220446-r21 { fill: #565b5f } +.terminal-3208220446-r22 { fill: #a5afb5 } +.terminal-3208220446-r23 { fill: #c4c8cb } +.terminal-3208220446-r24 { fill: #565b5f;font-weight: bold } +.terminal-3208220446-r25 { fill: #bababa } +.terminal-3208220446-r26 { fill: #00500a } +.terminal-3208220446-r27 { fill: #7e7e7e } +.terminal-3208220446-r28 { fill: #b8c2c9 } +.terminal-3208220446-r29 { fill: #9ca7ae;font-weight: bold } +.terminal-3208220446-r30 { fill: #9ca7ae } +.terminal-3208220446-r31 { fill: #464b4e } +.terminal-3208220446-r32 { fill: #adb8c0 } +.terminal-3208220446-r33 { fill: #ac5456 } +.terminal-3208220446-r34 { fill: #5a6064 } +.terminal-3208220446-r35 { fill: #44484c } +.terminal-3208220446-r36 { fill: #656c71 } +.terminal-3208220446-r37 { fill: #a9b3bb } +.terminal-3208220446-r38 { fill: #5c9364;font-weight: bold } +.terminal-3208220446-r39 { fill: #bc3833;font-weight: bold } +.terminal-3208220446-r40 { fill: #1b1c1d } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - + - - -Posting                                                                    - -GET Send  -anothertest -╭─ Collection── Request ─╮ - GET echo  theme: anothertesttions - GET get ranSet the theme to anothertest━━━━━━━━━━━━ - POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all      NameValue Add header  - GET get one      ╰─────────────────────────────────────────────────╯ - POS create       ╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + +Posting                                                                    + +GET Send  +anothertest +╭─ Collection── Request ─╮ + GET echo  theme: anothertesttions + GET get ranSet the theme to anothertest━━━━━━━━━━━━ + POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all      NameValue Add header  + GET get one      ╰─────────────────────────────────────────────────╯ + POS create       ╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg b/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg index caeacb5d..2cea1c3c 100644 --- a/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg +++ b/tests/__snapshots__/test_snapshots/TestHelpScreen.test_help_screen_appears.svg @@ -19,246 +19,247 @@ font-weight: 700; } - .terminal-2326056393-matrix { + .terminal-3399498736-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2326056393-title { + .terminal-3399498736-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2326056393-r1 { fill: #9c9c9c } -.terminal-2326056393-r2 { fill: #c5c8c6 } -.terminal-2326056393-r3 { fill: #dfdfdf } -.terminal-2326056393-r4 { fill: #b2903c } -.terminal-2326056393-r5 { fill: #9ca6ae;text-decoration: underline; } -.terminal-2326056393-r6 { fill: #9ca6ae } -.terminal-2326056393-r7 { fill: #6d8ea6 } -.terminal-2326056393-r8 { fill: #505050 } -.terminal-2326056393-r9 { fill: #9d9d9d } -.terminal-2326056393-r10 { fill: #9aa1a5 } -.terminal-2326056393-r11 { fill: #707070 } -.terminal-2326056393-r12 { fill: #313131 } -.terminal-2326056393-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-2326056393-r14 { fill: #e0e0e0 } -.terminal-2326056393-r15 { fill: #463012 } -.terminal-2326056393-r16 { fill: #121212 } -.terminal-2326056393-r17 { fill: #6a6b6d;font-weight: bold } -.terminal-2326056393-r18 { fill: #9e9e9f;font-weight: bold } -.terminal-2326056393-r19 { fill: #a6a6a6;font-weight: bold } -.terminal-2326056393-r20 { fill: #4b4b4b } -.terminal-2326056393-r21 { fill: #626262 } -.terminal-2326056393-r22 { fill: #1b1b1b } -.terminal-2326056393-r23 { fill: #191919 } -.terminal-2326056393-r24 { fill: #626262;font-weight: bold } -.terminal-2326056393-r25 { fill: #8d8d8d;font-weight: bold } -.terminal-2326056393-r26 { fill: #005a27 } -.terminal-2326056393-r27 { fill: #a6a6a6 } -.terminal-2326056393-r28 { fill: #e1e1e1;font-weight: bold } -.terminal-2326056393-r29 { fill: #e1e1e1 } -.terminal-2326056393-r30 { fill: #e0e0e1 } -.terminal-2326056393-r31 { fill: #e0e0e1;font-weight: bold } -.terminal-2326056393-r32 { fill: #dfe1e2 } -.terminal-2326056393-r33 { fill: #626466 } -.terminal-2326056393-r34 { fill: #dfe1e2;font-weight: bold } -.terminal-2326056393-r35 { fill: #717171 } -.terminal-2326056393-r36 { fill: #131313 } -.terminal-2326056393-r37 { fill: #0d0d0d } -.terminal-2326056393-r38 { fill: #707070;font-weight: bold } -.terminal-2326056393-r39 { fill: #5f5f5f } -.terminal-2326056393-r40 { fill: #727272 } -.terminal-2326056393-r41 { fill: #545454 } -.terminal-2326056393-r42 { fill: #171717 } -.terminal-2326056393-r43 { fill: #2a613a;font-weight: bold } -.terminal-2326056393-r44 { fill: #b2822d;font-weight: bold } -.terminal-2326056393-r45 { fill: #999999 } + .terminal-3399498736-r1 { fill: #9c9c9d } +.terminal-3399498736-r2 { fill: #c5c8c6 } +.terminal-3399498736-r3 { fill: #dfdfe0 } +.terminal-3399498736-r4 { fill: #b2669a } +.terminal-3399498736-r5 { fill: #0e0b15;text-decoration: underline; } +.terminal-3399498736-r6 { fill: #0e0b15 } +.terminal-3399498736-r7 { fill: #2e2540 } +.terminal-3399498736-r8 { fill: #50505e } +.terminal-3399498736-r9 { fill: #9d9da1 } +.terminal-3399498736-r10 { fill: #a79eaf } +.terminal-3399498736-r11 { fill: #6f6f73 } +.terminal-3399498736-r12 { fill: #2e2e3f } +.terminal-3399498736-r13 { fill: #dfdfe1;font-weight: bold } +.terminal-3399498736-r14 { fill: #dfdfe1 } +.terminal-3399498736-r15 { fill: #45203a } +.terminal-3399498736-r16 { fill: #0f0f1f } +.terminal-3399498736-r17 { fill: #6b6b77;font-weight: bold } +.terminal-3399498736-r18 { fill: #9e9ea2;font-weight: bold } +.terminal-3399498736-r19 { fill: #a5a5ab;font-weight: bold } +.terminal-3399498736-r20 { fill: #4a4a51 } +.terminal-3399498736-r21 { fill: #616166 } +.terminal-3399498736-r22 { fill: #191923 } +.terminal-3399498736-r23 { fill: #19192d } +.terminal-3399498736-r24 { fill: #616166;font-weight: bold } +.terminal-3399498736-r25 { fill: #8b8b93;font-weight: bold } +.terminal-3399498736-r26 { fill: #008042 } +.terminal-3399498736-r27 { fill: #a5a5ab } +.terminal-3399498736-r28 { fill: #e0e0e2;font-weight: bold } +.terminal-3399498736-r29 { fill: #e0e0e2 } +.terminal-3399498736-r30 { fill: #e1e0e4 } +.terminal-3399498736-r31 { fill: #e1e0e4;font-weight: bold } +.terminal-3399498736-r32 { fill: #e2e0e5 } +.terminal-3399498736-r33 { fill: #65626d } +.terminal-3399498736-r34 { fill: #e2e0e5;font-weight: bold } +.terminal-3399498736-r35 { fill: #707074 } +.terminal-3399498736-r36 { fill: #11111c } +.terminal-3399498736-r37 { fill: #0d0e2e } +.terminal-3399498736-r38 { fill: #6f6f78;font-weight: bold } +.terminal-3399498736-r39 { fill: #6f6f78 } +.terminal-3399498736-r40 { fill: #5e5e64 } +.terminal-3399498736-r41 { fill: #727276 } +.terminal-3399498736-r42 { fill: #535359 } +.terminal-3399498736-r43 { fill: #15151f } +.terminal-3399498736-r44 { fill: #027d51;font-weight: bold } +.terminal-3399498736-r45 { fill: #b2588c;font-weight: bold } +.terminal-3399498736-r46 { fill: #99999a } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  -▁▁Focused Widget Help (Address Bar)▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ -╭─ Collectio Request ─╮ - GET echoAddress Barions - GET get raEnter the URL to send a request to. Refer to ━━━━━━━━━━━ - POS echo pvariables from the environment (loaded via ╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplace--env) using $variable or ${variable} syntax. ╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/Resolved variables will be highlighted green. ╱╱╱╱╱╱╱╱╱╱╱ - GET geMove the cursor over a variable to preview the╱╱╱╱╱╱╱╱╱╱╱ - GET gevalue. Base URL suggestions are loaded based ╱╱╱╱╱╱╱╱╱╱╱ - POS cron the URLs found in the currently open ╱╱╱╱╱╱╱╱╱╱╱ - DEL decollection. Press ctrl+l to quickly focus this╱╱╱╱╱╱╱╱╱╱╱ -▼ commebar from elsewhere.╱╱╱╱╱╱╱╱╱╱╱ - GET ╱╱╱╱╱╱╱╱╱╱╱ - GET All Keybindings╱╱╱╱╱╱╱╱╱╱╱ - PUT  Key     Description                   ╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/ cursor left                   ╱╱╱╱╱╱╱╱╱╱╱ - GET gectrl+← cursor left word               header  - GET ge cursor right                  ───────────╯ -▼ users/ctrl+→ cursor right word              Response ─╮ - GET ge delete left                    - GET gehome home                          ━━━━━━━━━━━ - POS crctrl+a home                           - PUT upend end                            - DEL dectrl+e end                            -delete delete right                   -ctrl+d delete right                   - submit                         - -Press ESC to dismiss. -│───────────Note: This page relates to the widget that is  -This is ancurrently focused. -server we  -see exactl▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  +▁▁Focused Widget Help (Address Bar)▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ +╭─ Collectio Request ─╮ + GET echoAddress Barions + GET get raEnter the URL to send a request to. Refer to ━━━━━━━━━━━ + POS echo pvariables from the environment (loaded via ╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplace--env) using $variable or ${variable} syntax. ╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/Resolved variables will be highlighted green. ╱╱╱╱╱╱╱╱╱╱╱ + GET geMove the cursor over a variable to preview the╱╱╱╱╱╱╱╱╱╱╱ + GET gevalue. Base URL suggestions are loaded based ╱╱╱╱╱╱╱╱╱╱╱ + POS cron the URLs found in the currently open ╱╱╱╱╱╱╱╱╱╱╱ + DEL decollection. Press ctrl+l to quickly focus this╱╱╱╱╱╱╱╱╱╱╱ +▼ commebar from elsewhere.╱╱╱╱╱╱╱╱╱╱╱ + GET ╱╱╱╱╱╱╱╱╱╱╱ + GET All Keybindings╱╱╱╱╱╱╱╱╱╱╱ + PUT  Key     Description                   ╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/ cursor left                   ╱╱╱╱╱╱╱╱╱╱╱ + GET gectrl+← cursor left word               header  + GET ge cursor right                  ───────────╯ +▼ users/ctrl+→ cursor right word              Response ─╮ + GET ge delete left                    + GET gehome home                          ━━━━━━━━━━━ + POS crctrl+a home                           + PUT upend end                            + DEL dectrl+e end                            +delete delete right                   +ctrl+d delete right                   + submit                         + +Press ESC to dismiss. +│───────────Note: This page relates to the widget that is  +This is ancurrently focused. +server we  +see exactl▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg index b8bd382f..c34cacc3 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_click_switch.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-1980658723-matrix { + .terminal-3801157206-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1980658723-title { + .terminal-3801157206-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1980658723-r1 { fill: #e0e0e0 } -.terminal-1980658723-r2 { fill: #c5c8c6 } -.terminal-1980658723-r3 { fill: #ffcf56 } -.terminal-1980658723-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1980658723-r5 { fill: #dfeef9 } -.terminal-1980658723-r6 { fill: #9dcbee } -.terminal-1980658723-r7 { fill: #737373 } -.terminal-1980658723-r8 { fill: #e1e1e1 } -.terminal-1980658723-r9 { fill: #dde6ed } -.terminal-1980658723-r10 { fill: #a0a0a0 } -.terminal-1980658723-r11 { fill: #64451a } -.terminal-1980658723-r12 { fill: #fea62b } -.terminal-1980658723-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-1980658723-r14 { fill: #989a9c;font-weight: bold } -.terminal-1980658723-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-1980658723-r16 { fill: #6c6c6c } -.terminal-1980658723-r17 { fill: #8d8d8d } -.terminal-1980658723-r18 { fill: #885c1e } -.terminal-1980658723-r19 { fill: #323232 } -.terminal-1980658723-r20 { fill: #4ebf71;font-weight: bold } -.terminal-1980658723-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-1980658723-r22 { fill: #0d0d0d } -.terminal-1980658723-r23 { fill: #008139 } -.terminal-1980658723-r24 { fill: #313131;font-weight: bold } -.terminal-1980658723-r25 { fill: #313131 } -.terminal-1980658723-r26 { fill: #a2a2a2 } -.terminal-1980658723-r27 { fill: #1c1c1c } -.terminal-1980658723-r28 { fill: #b77923 } -.terminal-1980658723-r29 { fill: #888888 } -.terminal-1980658723-r30 { fill: #a4a4a4 } -.terminal-1980658723-r31 { fill: #787878 } -.terminal-1980658723-r32 { fill: #212121 } -.terminal-1980658723-r33 { fill: #3c8b54;font-weight: bold } -.terminal-1980658723-r34 { fill: #ffba41;font-weight: bold } -.terminal-1980658723-r35 { fill: #dbdbdb } + .terminal-3801157206-r1 { fill: #dfdfe1 } +.terminal-3801157206-r2 { fill: #c5c8c6 } +.terminal-3801157206-r3 { fill: #ff93dd } +.terminal-3801157206-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3801157206-r5 { fill: #15111e } +.terminal-3801157206-r6 { fill: #43365c } +.terminal-3801157206-r7 { fill: #737387 } +.terminal-3801157206-r8 { fill: #e1e1e6 } +.terminal-3801157206-r9 { fill: #efe3fb } +.terminal-3801157206-r10 { fill: #9f9fa5 } +.terminal-3801157206-r11 { fill: #632e53 } +.terminal-3801157206-r12 { fill: #ff69b4 } +.terminal-3801157206-r13 { fill: #dfdfe1;font-weight: bold } +.terminal-3801157206-r14 { fill: #9b9aab;font-weight: bold } +.terminal-3801157206-r15 { fill: #e3e3e8;font-weight: bold } +.terminal-3801157206-r16 { fill: #6a6a74 } +.terminal-3801157206-r17 { fill: #8b8b93 } +.terminal-3801157206-r18 { fill: #873c69 } +.terminal-3801157206-r19 { fill: #30303b } +.terminal-3801157206-r20 { fill: #00fa9a;font-weight: bold } +.terminal-3801157206-r21 { fill: #8b8b93;font-weight: bold } +.terminal-3801157206-r22 { fill: #0d0e2e } +.terminal-3801157206-r23 { fill: #00b85f } +.terminal-3801157206-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-3801157206-r25 { fill: #2e2e3c } +.terminal-3801157206-r26 { fill: #a0a0a6 } +.terminal-3801157206-r27 { fill: #191928 } +.terminal-3801157206-r28 { fill: #b74e87 } +.terminal-3801157206-r29 { fill: #87878f } +.terminal-3801157206-r30 { fill: #a3a3a9 } +.terminal-3801157206-r31 { fill: #777780 } +.terminal-3801157206-r32 { fill: #1f1f2d } +.terminal-3801157206-r33 { fill: #04b375;font-weight: bold } +.terminal-3801157206-r34 { fill: #ff7ec8;font-weight: bold } +.terminal-3801157206-r35 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━━━━ - POS echo postX Follow redirects -▼ jsonplaceholder/ -▼ posts/X Verify SSL certificates - GET get all - GET get one╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━━━━ + POS echo postX Follow redirects +▼ jsonplaceholder/ +▼ posts/X Verify SSL certificates + GET get all + GET get one╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg index 09a360b7..e51a16c2 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-3192216544-matrix { + .terminal-1550907473-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3192216544-title { + .terminal-1550907473-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3192216544-r1 { fill: #e0e0e0 } -.terminal-3192216544-r2 { fill: #c5c8c6 } -.terminal-3192216544-r3 { fill: #ffcf56 } -.terminal-3192216544-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3192216544-r5 { fill: #dfeef9 } -.terminal-3192216544-r6 { fill: #9dcbee } -.terminal-3192216544-r7 { fill: #737373 } -.terminal-3192216544-r8 { fill: #e1e1e1 } -.terminal-3192216544-r9 { fill: #dde6ed } -.terminal-3192216544-r10 { fill: #a0a0a0 } -.terminal-3192216544-r11 { fill: #fea62b } -.terminal-3192216544-r12 { fill: #e0e0e0;font-weight: bold } -.terminal-3192216544-r13 { fill: #64451a } -.terminal-3192216544-r14 { fill: #794f14;font-weight: bold } -.terminal-3192216544-r15 { fill: #211505;font-weight: bold } -.terminal-3192216544-r16 { fill: #6c6c6c } -.terminal-3192216544-r17 { fill: #8d8d8d } -.terminal-3192216544-r18 { fill: #272727 } -.terminal-3192216544-r19 { fill: #242424 } -.terminal-3192216544-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-3192216544-r21 { fill: #0d0d0d } -.terminal-3192216544-r22 { fill: #008139 } -.terminal-3192216544-r23 { fill: #8c9092 } -.terminal-3192216544-r24 { fill: #313131;font-weight: bold } -.terminal-3192216544-r25 { fill: #313131 } -.terminal-3192216544-r26 { fill: #a2a2a2 } -.terminal-3192216544-r27 { fill: #1c1c1c } -.terminal-3192216544-r28 { fill: #b77923 } -.terminal-3192216544-r29 { fill: #888888 } -.terminal-3192216544-r30 { fill: #a4a4a4 } -.terminal-3192216544-r31 { fill: #787878 } -.terminal-3192216544-r32 { fill: #212121 } -.terminal-3192216544-r33 { fill: #3c8b54;font-weight: bold } -.terminal-3192216544-r34 { fill: #ffba41;font-weight: bold } -.terminal-3192216544-r35 { fill: #dbdbdb } + .terminal-1550907473-r1 { fill: #dfdfe1 } +.terminal-1550907473-r2 { fill: #c5c8c6 } +.terminal-1550907473-r3 { fill: #ff93dd } +.terminal-1550907473-r4 { fill: #15111e;text-decoration: underline; } +.terminal-1550907473-r5 { fill: #15111e } +.terminal-1550907473-r6 { fill: #43365c } +.terminal-1550907473-r7 { fill: #737387 } +.terminal-1550907473-r8 { fill: #e1e1e6 } +.terminal-1550907473-r9 { fill: #efe3fb } +.terminal-1550907473-r10 { fill: #9f9fa5 } +.terminal-1550907473-r11 { fill: #ff69b4 } +.terminal-1550907473-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-1550907473-r13 { fill: #632e53 } +.terminal-1550907473-r14 { fill: #793155;font-weight: bold } +.terminal-1550907473-r15 { fill: #210d17;font-weight: bold } +.terminal-1550907473-r16 { fill: #6a6a74 } +.terminal-1550907473-r17 { fill: #8b8b93 } +.terminal-1550907473-r18 { fill: #252532 } +.terminal-1550907473-r19 { fill: #252441 } +.terminal-1550907473-r20 { fill: #8b8b93;font-weight: bold } +.terminal-1550907473-r21 { fill: #0d0e2e } +.terminal-1550907473-r22 { fill: #00b85f } +.terminal-1550907473-r23 { fill: #918d9d } +.terminal-1550907473-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-1550907473-r25 { fill: #2e2e3c } +.terminal-1550907473-r26 { fill: #a0a0a6 } +.terminal-1550907473-r27 { fill: #191928 } +.terminal-1550907473-r28 { fill: #b74e87 } +.terminal-1550907473-r29 { fill: #87878f } +.terminal-1550907473-r30 { fill: #a3a3a9 } +.terminal-1550907473-r31 { fill: #777780 } +.terminal-1550907473-r32 { fill: #1f1f2d } +.terminal-1550907473-r33 { fill: #04b375;font-weight: bold } +.terminal-1550907473-r34 { fill: #ff7ec8;font-weight: bold } +.terminal-1550907473-r35 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_loads.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_loads.svg index 62572147..a8abe089 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_loads.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_loads.svg @@ -19,168 +19,169 @@ font-weight: 700; } - .terminal-1069741935-matrix { + .terminal-2359678916-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1069741935-title { + .terminal-2359678916-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1069741935-r1 { fill: #9c9c9c } -.terminal-1069741935-r2 { fill: #c5c8c6 } -.terminal-1069741935-r3 { fill: #dfdfdf } -.terminal-1069741935-r4 { fill: #b2903c } -.terminal-1069741935-r5 { fill: #211a0b;font-weight: bold } -.terminal-1069741935-r6 { fill: #9ca6ae;text-decoration: underline; } -.terminal-1069741935-r7 { fill: #9ca6ae } -.terminal-1069741935-r8 { fill: #6d8ea6 } -.terminal-1069741935-r9 { fill: #505050 } -.terminal-1069741935-r10 { fill: #9d9d9d } -.terminal-1069741935-r11 { fill: #9aa1a5 } -.terminal-1069741935-r12 { fill: #707070 } -.terminal-1069741935-r13 { fill: #463012 } -.terminal-1069741935-r14 { fill: #6a6b6d;font-weight: bold } -.terminal-1069741935-r15 { fill: #9e9e9f;font-weight: bold } -.terminal-1069741935-r16 { fill: #9c9c9c;font-weight: bold } -.terminal-1069741935-r17 { fill: #4b4b4b } -.terminal-1069741935-r18 { fill: #626262 } -.terminal-1069741935-r19 { fill: #1b1b1b } -.terminal-1069741935-r20 { fill: #b1741e } -.terminal-1069741935-r21 { fill: #191919 } -.terminal-1069741935-r22 { fill: #626262;font-weight: bold } -.terminal-1069741935-r23 { fill: #090909 } -.terminal-1069741935-r24 { fill: #005a27 } -.terminal-1069741935-r25 { fill: #626466 } -.terminal-1069741935-r26 { fill: #222222;font-weight: bold } -.terminal-1069741935-r27 { fill: #222222 } -.terminal-1069741935-r28 { fill: #717171 } -.terminal-1069741935-r29 { fill: #131313 } -.terminal-1069741935-r30 { fill: #805418 } -.terminal-1069741935-r31 { fill: #5f5f5f } -.terminal-1069741935-r32 { fill: #727272 } -.terminal-1069741935-r33 { fill: #545454 } -.terminal-1069741935-r34 { fill: #171717 } -.terminal-1069741935-r35 { fill: #2a613a;font-weight: bold } -.terminal-1069741935-r36 { fill: #cf7e00 } -.terminal-1069741935-r37 { fill: #211505 } -.terminal-1069741935-r38 { fill: #727272;font-weight: bold } + .terminal-2359678916-r1 { fill: #9c9c9d } +.terminal-2359678916-r2 { fill: #c5c8c6 } +.terminal-2359678916-r3 { fill: #dfdfe0 } +.terminal-2359678916-r4 { fill: #b2669a } +.terminal-2359678916-r5 { fill: #21131c;font-weight: bold } +.terminal-2359678916-r6 { fill: #0e0b15;text-decoration: underline; } +.terminal-2359678916-r7 { fill: #0e0b15 } +.terminal-2359678916-r8 { fill: #2e2540 } +.terminal-2359678916-r9 { fill: #50505e } +.terminal-2359678916-r10 { fill: #9d9da1 } +.terminal-2359678916-r11 { fill: #a79eaf } +.terminal-2359678916-r12 { fill: #6f6f73 } +.terminal-2359678916-r13 { fill: #45203a } +.terminal-2359678916-r14 { fill: #6b6b77;font-weight: bold } +.terminal-2359678916-r15 { fill: #9e9ea2;font-weight: bold } +.terminal-2359678916-r16 { fill: #9c9c9d;font-weight: bold } +.terminal-2359678916-r17 { fill: #4a4a51 } +.terminal-2359678916-r18 { fill: #616166 } +.terminal-2359678916-r19 { fill: #191923 } +.terminal-2359678916-r20 { fill: #b2497e } +.terminal-2359678916-r21 { fill: #19192d } +.terminal-2359678916-r22 { fill: #616166;font-weight: bold } +.terminal-2359678916-r23 { fill: #090920 } +.terminal-2359678916-r24 { fill: #008042 } +.terminal-2359678916-r25 { fill: #65626d } +.terminal-2359678916-r26 { fill: #20202a;font-weight: bold } +.terminal-2359678916-r27 { fill: #20202a } +.terminal-2359678916-r28 { fill: #707074 } +.terminal-2359678916-r29 { fill: #11111c } +.terminal-2359678916-r30 { fill: #80365e } +.terminal-2359678916-r31 { fill: #5e5e64 } +.terminal-2359678916-r32 { fill: #727276 } +.terminal-2359678916-r33 { fill: #535359 } +.terminal-2359678916-r34 { fill: #15151f } +.terminal-2359678916-r35 { fill: #027d51;font-weight: bold } +.terminal-2359678916-r36 { fill: #d13c8c } +.terminal-2359678916-r37 { fill: #210d17 } +.terminal-2359678916-r38 { fill: #707077 } +.terminal-2359678916-r39 { fill: #707077;font-weight: bold } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -1GET2Enter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ -tabecho││qHeaderswBodyeQueryrAuthtInfoyOptions - GET get random user  ││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post        ││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all      ││NameValue Add header  - GET get one      │╰─────────────────────────────────────────────────╯ - POS create       │╭────────────────────────────────────── Response ─╮ - DEL delete a post││aBodysHeadersdCookiesfTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱Press a key to jump╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -ESC to dismiss                                  + + + + +Posting                                                                    + +1GET2Enter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ +tabecho││qHeaderswBodyeQueryrAuthtInfoyOptions + GET get random user  ││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post        ││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all      ││NameValue Add header  + GET get one      │╰─────────────────────────────────────────────────╯ + POS create       │╭────────────────────────────────────── Response ─╮ + DEL delete a post││aBodysHeadersdCookiesfTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱Press a key to jump╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +ESC to dismiss                                  diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg index 936d90e8..3e52aa0a 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__auth.svg @@ -19,246 +19,246 @@ font-weight: 700; } - .terminal-3228411582-matrix { + .terminal-4264542321-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3228411582-title { + .terminal-4264542321-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3228411582-r1 { fill: #e0e0e0 } -.terminal-3228411582-r2 { fill: #c5c8c6 } -.terminal-3228411582-r3 { fill: #ffcf56 } -.terminal-3228411582-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3228411582-r5 { fill: #dfeef9 } -.terminal-3228411582-r6 { fill: #9dcbee } -.terminal-3228411582-r7 { fill: #ffa62b } -.terminal-3228411582-r8 { fill: #939393 } -.terminal-3228411582-r9 { fill: #0178d4 } -.terminal-3228411582-r10 { fill: #e1e1e1 } -.terminal-3228411582-r11 { fill: #dde6ed } -.terminal-3228411582-r12 { fill: #a0a0a0 } -.terminal-3228411582-r13 { fill: #64451a } -.terminal-3228411582-r14 { fill: #fea62b } -.terminal-3228411582-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-3228411582-r16 { fill: #8d8d8d } -.terminal-3228411582-r17 { fill: #6c6c6c } -.terminal-3228411582-r18 { fill: #58d1eb;font-weight: bold } -.terminal-3228411582-r19 { fill: #885c1e } -.terminal-3228411582-r20 { fill: #989a9c;font-weight: bold } -.terminal-3228411582-r21 { fill: #e3e3e4;font-weight: bold } -.terminal-3228411582-r22 { fill: #8d8d8d;font-weight: bold } -.terminal-3228411582-r23 { fill: #a3a3a3 } -.terminal-3228411582-r24 { fill: #008139 } -.terminal-3228411582-r25 { fill: #ba3c5b } -.terminal-3228411582-r26 { fill: #313131;font-weight: bold } -.terminal-3228411582-r27 { fill: #313131 } -.terminal-3228411582-r28 { fill: #a2a2a2 } -.terminal-3228411582-r29 { fill: #1c1c1c } -.terminal-3228411582-r30 { fill: #b77923 } -.terminal-3228411582-r31 { fill: #888888 } -.terminal-3228411582-r32 { fill: #a4a4a4 } -.terminal-3228411582-r33 { fill: #787878 } -.terminal-3228411582-r34 { fill: #212121 } -.terminal-3228411582-r35 { fill: #3c8b54;font-weight: bold } -.terminal-3228411582-r36 { fill: #ffba41;font-weight: bold } -.terminal-3228411582-r37 { fill: #dbdbdb } + .terminal-4264542321-r1 { fill: #dfdfe1 } +.terminal-4264542321-r2 { fill: #c5c8c6 } +.terminal-4264542321-r3 { fill: #ff93dd } +.terminal-4264542321-r4 { fill: #15111e;text-decoration: underline; } +.terminal-4264542321-r5 { fill: #15111e } +.terminal-4264542321-r6 { fill: #43365c } +.terminal-4264542321-r7 { fill: #ff69b4 } +.terminal-4264542321-r8 { fill: #9393a3 } +.terminal-4264542321-r9 { fill: #a684e8 } +.terminal-4264542321-r10 { fill: #e1e1e6 } +.terminal-4264542321-r11 { fill: #efe3fb } +.terminal-4264542321-r12 { fill: #9f9fa5 } +.terminal-4264542321-r13 { fill: #632e53 } +.terminal-4264542321-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-4264542321-r15 { fill: #8b8b93 } +.terminal-4264542321-r16 { fill: #6a6a74 } +.terminal-4264542321-r17 { fill: #58d1eb;font-weight: bold } +.terminal-4264542321-r18 { fill: #873c69 } +.terminal-4264542321-r19 { fill: #9b9aab;font-weight: bold } +.terminal-4264542321-r20 { fill: #e3e3e8;font-weight: bold } +.terminal-4264542321-r21 { fill: #8b8b93;font-weight: bold } +.terminal-4264542321-r22 { fill: #e0e0e2 } +.terminal-4264542321-r23 { fill: #a2a2a8 } +.terminal-4264542321-r24 { fill: #00b85f } +.terminal-4264542321-r25 { fill: #ff4500 } +.terminal-4264542321-r26 { fill: #2e2e3c;font-weight: bold } +.terminal-4264542321-r27 { fill: #2e2e3c } +.terminal-4264542321-r28 { fill: #a0a0a6 } +.terminal-4264542321-r29 { fill: #191928 } +.terminal-4264542321-r30 { fill: #b74e87 } +.terminal-4264542321-r31 { fill: #87878f } +.terminal-4264542321-r32 { fill: #a3a3a9 } +.terminal-4264542321-r33 { fill: #777780 } +.terminal-4264542321-r34 { fill: #1f1f2d } +.terminal-4264542321-r35 { fill: #04b375;font-weight: bold } +.terminal-4264542321-r36 { fill: #ff7ec8;font-weight: bold } +.terminal-4264542321-r37 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://postman-echo.com/post                       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━ -█ POS echo postAuth type             Authorization headers -▼ jsonplaceholder/Basicwill be generated  -▼ posts/when the request is  - GET get allsent. - GET get one - POS createUsername                                      - DEL delete a postdarren                                      -▼ comments/ - GET get commentsPassword                                      - GET get comments$domain - PUT edit a comme -▼ todos/ - GET get all - GET get one -▼ users/╰─────────────────────────────────────────────────╯ - GET get a user│╭────────────────────────────────────── Response ─╮ - GET get all users││BodyHeadersCookiesTrace - POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -│───────────────────────││ -Echo server for post ││ -requests.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +POSThttps://postman-echo.com/post                       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━╺━━━━━━━━━━━━━━━━━━ +█ POS echo postAuth type             Authorization headers +▼ jsonplaceholder/Basicwill be generated  +▼ posts/when the request is  + GET get allsent. + GET get one + POS createUsername                                      + DEL delete a postdarren                                      +▼ comments/ + GET get commentsPassword                                      + GET get comments$domain + PUT edit a comme +▼ todos/ + GET get all + GET get one +▼ users/╰─────────────────────────────────────────────────╯ + GET get a user│╭────────────────────────────────────── Response ─╮ + GET get all users││BodyHeadersCookiesTrace + POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +│───────────────────────││ +Echo server for post ││ +requests.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg index f8146994..886bb825 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__body.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-4254555682-matrix { + .terminal-2798669157-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4254555682-title { + .terminal-2798669157-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4254555682-r1 { fill: #e0e0e0 } -.terminal-4254555682-r2 { fill: #c5c8c6 } -.terminal-4254555682-r3 { fill: #ffcf56 } -.terminal-4254555682-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-4254555682-r5 { fill: #dfeef9 } -.terminal-4254555682-r6 { fill: #9dcbee } -.terminal-4254555682-r7 { fill: #ffa62b } -.terminal-4254555682-r8 { fill: #939393 } -.terminal-4254555682-r9 { fill: #0178d4 } -.terminal-4254555682-r10 { fill: #e1e1e1 } -.terminal-4254555682-r11 { fill: #dde6ed } -.terminal-4254555682-r12 { fill: #a0a0a0 } -.terminal-4254555682-r13 { fill: #64451a } -.terminal-4254555682-r14 { fill: #fea62b } -.terminal-4254555682-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-4254555682-r16 { fill: #8d8d8d } -.terminal-4254555682-r17 { fill: #6c6c6c } -.terminal-4254555682-r18 { fill: #58d1eb;font-weight: bold } -.terminal-4254555682-r19 { fill: #885c1e } -.terminal-4254555682-r20 { fill: #a3a3a3 } -.terminal-4254555682-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-4254555682-r22 { fill: #a3a3a3;font-weight: bold } -.terminal-4254555682-r23 { fill: #e8e8e8 } -.terminal-4254555682-r24 { fill: #008139 } -.terminal-4254555682-r25 { fill: #707070 } -.terminal-4254555682-r26 { fill: #569cd6;font-weight: bold } -.terminal-4254555682-r27 { fill: #ce9178 } -.terminal-4254555682-r28 { fill: #b5cea8 } -.terminal-4254555682-r29 { fill: #989a9c;font-weight: bold } -.terminal-4254555682-r30 { fill: #e3e3e4;font-weight: bold } -.terminal-4254555682-r31 { fill: #888888 } -.terminal-4254555682-r32 { fill: #323232 } -.terminal-4254555682-r33 { fill: #4ebf71;font-weight: bold } -.terminal-4254555682-r34 { fill: #313131;font-weight: bold } -.terminal-4254555682-r35 { fill: #313131 } -.terminal-4254555682-r36 { fill: #a2a2a2 } -.terminal-4254555682-r37 { fill: #1c1c1c } -.terminal-4254555682-r38 { fill: #b77923 } -.terminal-4254555682-r39 { fill: #a4a4a4 } -.terminal-4254555682-r40 { fill: #787878 } -.terminal-4254555682-r41 { fill: #212121 } -.terminal-4254555682-r42 { fill: #3c8b54;font-weight: bold } -.terminal-4254555682-r43 { fill: #ffba41;font-weight: bold } -.terminal-4254555682-r44 { fill: #dbdbdb } + .terminal-2798669157-r1 { fill: #dfdfe1 } +.terminal-2798669157-r2 { fill: #c5c8c6 } +.terminal-2798669157-r3 { fill: #ff93dd } +.terminal-2798669157-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2798669157-r5 { fill: #15111e } +.terminal-2798669157-r6 { fill: #43365c } +.terminal-2798669157-r7 { fill: #ff69b4 } +.terminal-2798669157-r8 { fill: #9393a3 } +.terminal-2798669157-r9 { fill: #a684e8 } +.terminal-2798669157-r10 { fill: #e1e1e6 } +.terminal-2798669157-r11 { fill: #efe3fb } +.terminal-2798669157-r12 { fill: #9f9fa5 } +.terminal-2798669157-r13 { fill: #632e53 } +.terminal-2798669157-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-2798669157-r15 { fill: #8b8b93 } +.terminal-2798669157-r16 { fill: #6a6a74 } +.terminal-2798669157-r17 { fill: #58d1eb;font-weight: bold } +.terminal-2798669157-r18 { fill: #873c69 } +.terminal-2798669157-r19 { fill: #e0e0e2 } +.terminal-2798669157-r20 { fill: #a2a2a8 } +.terminal-2798669157-r21 { fill: #8b8b93;font-weight: bold } +.terminal-2798669157-r22 { fill: #a2a2a8;font-weight: bold } +.terminal-2798669157-r23 { fill: #e8e8e9 } +.terminal-2798669157-r24 { fill: #00b85f } +.terminal-2798669157-r25 { fill: #6f6f78 } +.terminal-2798669157-r26 { fill: #f92672;font-weight: bold } +.terminal-2798669157-r27 { fill: #e6db74 } +.terminal-2798669157-r28 { fill: #ae81ff } +.terminal-2798669157-r29 { fill: #9b9aab;font-weight: bold } +.terminal-2798669157-r30 { fill: #e3e3e8;font-weight: bold } +.terminal-2798669157-r31 { fill: #87878f } +.terminal-2798669157-r32 { fill: #30303b } +.terminal-2798669157-r33 { fill: #00fa9a;font-weight: bold } +.terminal-2798669157-r34 { fill: #2e2e3c;font-weight: bold } +.terminal-2798669157-r35 { fill: #2e2e3c } +.terminal-2798669157-r36 { fill: #a0a0a6 } +.terminal-2798669157-r37 { fill: #191928 } +.terminal-2798669157-r38 { fill: #b74e87 } +.terminal-2798669157-r39 { fill: #a3a3a9 } +.terminal-2798669157-r40 { fill: #777780 } +.terminal-2798669157-r41 { fill: #1f1f2d } +.terminal-2798669157-r42 { fill: #04b375;font-weight: bold } +.terminal-2798669157-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-2798669157-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://jsonplaceholder.typicode.com/posts          Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo postRaw (json, text, etc.) -▼ jsonplaceholder/1  { -▼ posts/2  "title""foo",                            - GET get all3  "body""bar",                             - GET get one4  "userId"1 -█ POS create5  } - DEL delete a post -▼ comments/ - GET get comments1:1JSONWrap X - GET get comments╰─────────────────────────────────────────────────╯ - PUT edit a comme│╭────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace - GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -│───────────────────────││ -Create a new post││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +POSThttps://jsonplaceholder.typicode.com/posts          Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo postRaw (json, text, etc.) +▼ jsonplaceholder/1  { +▼ posts/2  "title""foo",                            + GET get all3  "body""bar",                             + GET get one4  "userId"1 +█ POS create5  } + DEL delete a post +▼ comments/ + GET get comments1:1JSONWrap X + GET get comments╰─────────────────────────────────────────────────╯ + PUT edit a comme│╭────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace + GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +│───────────────────────││ +Create a new post││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg index 32cc2a2b..bf70ef44 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg @@ -19,202 +19,202 @@ font-weight: 700; } - .terminal-1611738499-matrix { + .terminal-3067937669-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1611738499-title { + .terminal-3067937669-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1611738499-r1 { fill: #e0e0e0 } -.terminal-1611738499-r2 { fill: #c5c8c6 } -.terminal-1611738499-r3 { fill: #ffcf56 } -.terminal-1611738499-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1611738499-r5 { fill: #dfeef9 } -.terminal-1611738499-r6 { fill: #9dcbee } -.terminal-1611738499-r7 { fill: #737373 } -.terminal-1611738499-r8 { fill: #e1e1e1 } -.terminal-1611738499-r9 { fill: #dde6ed } -.terminal-1611738499-r10 { fill: #a0a0a0 } -.terminal-1611738499-r11 { fill: #fea62b } -.terminal-1611738499-r12 { fill: #e0e0e0;font-weight: bold } -.terminal-1611738499-r13 { fill: #64451a } -.terminal-1611738499-r14 { fill: #8d8d8d } -.terminal-1611738499-r15 { fill: #6c6c6c } -.terminal-1611738499-r16 { fill: #272727 } -.terminal-1611738499-r17 { fill: #242424 } -.terminal-1611738499-r18 { fill: #8d8d8d;font-weight: bold } -.terminal-1611738499-r19 { fill: #008139 } -.terminal-1611738499-r20 { fill: #211505;font-weight: bold } -.terminal-1611738499-r21 { fill: #8c9092 } -.terminal-1611738499-r22 { fill: #313131;font-weight: bold } -.terminal-1611738499-r23 { fill: #313131 } -.terminal-1611738499-r24 { fill: #a2a2a2 } -.terminal-1611738499-r25 { fill: #1c1c1c } -.terminal-1611738499-r26 { fill: #b77923 } -.terminal-1611738499-r27 { fill: #888888 } -.terminal-1611738499-r28 { fill: #a4a4a4 } -.terminal-1611738499-r29 { fill: #787878 } -.terminal-1611738499-r30 { fill: #212121 } -.terminal-1611738499-r31 { fill: #3c8b54;font-weight: bold } -.terminal-1611738499-r32 { fill: #ffba41;font-weight: bold } -.terminal-1611738499-r33 { fill: #dbdbdb } + .terminal-3067937669-r1 { fill: #dfdfe1 } +.terminal-3067937669-r2 { fill: #c5c8c6 } +.terminal-3067937669-r3 { fill: #ff93dd } +.terminal-3067937669-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3067937669-r5 { fill: #15111e } +.terminal-3067937669-r6 { fill: #43365c } +.terminal-3067937669-r7 { fill: #737387 } +.terminal-3067937669-r8 { fill: #e1e1e6 } +.terminal-3067937669-r9 { fill: #efe3fb } +.terminal-3067937669-r10 { fill: #9f9fa5 } +.terminal-3067937669-r11 { fill: #ff69b4 } +.terminal-3067937669-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-3067937669-r13 { fill: #632e53 } +.terminal-3067937669-r14 { fill: #8b8b93 } +.terminal-3067937669-r15 { fill: #6a6a74 } +.terminal-3067937669-r16 { fill: #252532 } +.terminal-3067937669-r17 { fill: #252441 } +.terminal-3067937669-r18 { fill: #8b8b93;font-weight: bold } +.terminal-3067937669-r19 { fill: #00b85f } +.terminal-3067937669-r20 { fill: #210d17;font-weight: bold } +.terminal-3067937669-r21 { fill: #918d9d } +.terminal-3067937669-r22 { fill: #2e2e3c;font-weight: bold } +.terminal-3067937669-r23 { fill: #2e2e3c } +.terminal-3067937669-r24 { fill: #a0a0a6 } +.terminal-3067937669-r25 { fill: #191928 } +.terminal-3067937669-r26 { fill: #b74e87 } +.terminal-3067937669-r27 { fill: #87878f } +.terminal-3067937669-r28 { fill: #a3a3a9 } +.terminal-3067937669-r29 { fill: #777780 } +.terminal-3067937669-r30 { fill: #1f1f2d } +.terminal-3067937669-r31 { fill: #04b375;font-weight: bold } +.terminal-3067937669-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-3067937669-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all usersNameValue Add header  - POS create a user╰─────────────────────────────────────────────────╯ - PUT update a user╭────────────────────────────────────── Response ─╮ - DEL delete a userBodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - - - - - - -1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all usersNameValue Add header  + POS create a user╰─────────────────────────────────────────────────╯ + PUT update a user╭────────────────────────────────────── Response ─╮ + DEL delete a userBodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + + + + + + +1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg index fe88cc38..dfea5531 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__options.svg @@ -19,246 +19,245 @@ font-weight: 700; } - .terminal-4110365933-matrix { + .terminal-1445352581-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4110365933-title { + .terminal-1445352581-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4110365933-r1 { fill: #e0e0e0 } -.terminal-4110365933-r2 { fill: #c5c8c6 } -.terminal-4110365933-r3 { fill: #ffcf56 } -.terminal-4110365933-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-4110365933-r5 { fill: #dfeef9 } -.terminal-4110365933-r6 { fill: #9dcbee } -.terminal-4110365933-r7 { fill: #ffa62b } -.terminal-4110365933-r8 { fill: #939393 } -.terminal-4110365933-r9 { fill: #0178d4 } -.terminal-4110365933-r10 { fill: #e1e1e1 } -.terminal-4110365933-r11 { fill: #dde6ed } -.terminal-4110365933-r12 { fill: #a0a0a0 } -.terminal-4110365933-r13 { fill: #64451a } -.terminal-4110365933-r14 { fill: #fea62b } -.terminal-4110365933-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-4110365933-r16 { fill: #8d8d8d } -.terminal-4110365933-r17 { fill: #6c6c6c } -.terminal-4110365933-r18 { fill: #58d1eb;font-weight: bold } -.terminal-4110365933-r19 { fill: #885c1e } -.terminal-4110365933-r20 { fill: #989a9c;font-weight: bold } -.terminal-4110365933-r21 { fill: #e3e3e4;font-weight: bold } -.terminal-4110365933-r22 { fill: #323232 } -.terminal-4110365933-r23 { fill: #4ebf71;font-weight: bold } -.terminal-4110365933-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-4110365933-r25 { fill: #008139 } -.terminal-4110365933-r26 { fill: #313131;font-weight: bold } -.terminal-4110365933-r27 { fill: #313131 } -.terminal-4110365933-r28 { fill: #a2a2a2 } -.terminal-4110365933-r29 { fill: #1c1c1c } -.terminal-4110365933-r30 { fill: #b77923 } -.terminal-4110365933-r31 { fill: #888888 } -.terminal-4110365933-r32 { fill: #a4a4a4 } -.terminal-4110365933-r33 { fill: #787878 } -.terminal-4110365933-r34 { fill: #212121 } -.terminal-4110365933-r35 { fill: #3c8b54;font-weight: bold } -.terminal-4110365933-r36 { fill: #ffba41;font-weight: bold } -.terminal-4110365933-r37 { fill: #dbdbdb } + .terminal-1445352581-r1 { fill: #dfdfe1 } +.terminal-1445352581-r2 { fill: #c5c8c6 } +.terminal-1445352581-r3 { fill: #ff93dd } +.terminal-1445352581-r4 { fill: #15111e;text-decoration: underline; } +.terminal-1445352581-r5 { fill: #15111e } +.terminal-1445352581-r6 { fill: #43365c } +.terminal-1445352581-r7 { fill: #ff69b4 } +.terminal-1445352581-r8 { fill: #9393a3 } +.terminal-1445352581-r9 { fill: #a684e8 } +.terminal-1445352581-r10 { fill: #e1e1e6 } +.terminal-1445352581-r11 { fill: #efe3fb } +.terminal-1445352581-r12 { fill: #9f9fa5 } +.terminal-1445352581-r13 { fill: #632e53 } +.terminal-1445352581-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-1445352581-r15 { fill: #8b8b93 } +.terminal-1445352581-r16 { fill: #6a6a74 } +.terminal-1445352581-r17 { fill: #58d1eb;font-weight: bold } +.terminal-1445352581-r18 { fill: #873c69 } +.terminal-1445352581-r19 { fill: #9b9aab;font-weight: bold } +.terminal-1445352581-r20 { fill: #e3e3e8;font-weight: bold } +.terminal-1445352581-r21 { fill: #30303b } +.terminal-1445352581-r22 { fill: #00fa9a;font-weight: bold } +.terminal-1445352581-r23 { fill: #8b8b93;font-weight: bold } +.terminal-1445352581-r24 { fill: #00b85f } +.terminal-1445352581-r25 { fill: #2e2e3c;font-weight: bold } +.terminal-1445352581-r26 { fill: #2e2e3c } +.terminal-1445352581-r27 { fill: #a0a0a6 } +.terminal-1445352581-r28 { fill: #191928 } +.terminal-1445352581-r29 { fill: #b74e87 } +.terminal-1445352581-r30 { fill: #87878f } +.terminal-1445352581-r31 { fill: #a3a3a9 } +.terminal-1445352581-r32 { fill: #777780 } +.terminal-1445352581-r33 { fill: #1f1f2d } +.terminal-1445352581-r34 { fill: #04b375;font-weight: bold } +.terminal-1445352581-r35 { fill: #ff7ec8;font-weight: bold } +.terminal-1445352581-r36 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSThttps://postman-echo.com/post                       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━ -█ POS echo postX Follow redirects -▼ jsonplaceholder/ -▼ posts/X Verify SSL certificates - GET get all - GET get oneX Attach cookies - POS create - DEL delete a postProxy URL                                      -▼ comments/ - GET get comments - GET get commentsTimeout                                        - PUT edit a comme0.2                                      -▼ todos/ - GET get all - GET get one -▼ users/╰─────────────────────────────────────────────────╯ - GET get a user│╭────────────────────────────────────── Response ─╮ - GET get all users││BodyHeadersCookiesTrace - POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - PUT update a user││ - DEL delete a user││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -││ -│───────────────────────││ -Echo server for post ││ -requests.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +POSThttps://postman-echo.com/post                       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╸━━━━━━━╺━━━ +█ POS echo postX Follow redirects +▼ jsonplaceholder/ +▼ posts/X Verify SSL certificates + GET get all + GET get oneX Attach cookies + POS create + DEL delete a postProxy URL                                      +▼ comments/ + GET get comments + GET get commentsTimeout                                        + PUT edit a comme0.2                                      +▼ todos/ + GET get all + GET get one +▼ users/╰─────────────────────────────────────────────────╯ + GET get a user│╭────────────────────────────────────── Response ─╮ + GET get all users││BodyHeadersCookiesTrace + POS create a user││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + PUT update a user││ + DEL delete a user││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +││ +│───────────────────────││ +Echo server for post ││ +requests.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg index decdeb72..85602e0c 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__query_params.svg @@ -19,212 +19,211 @@ font-weight: 700; } - .terminal-1582788273-matrix { + .terminal-2008242638-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1582788273-title { + .terminal-2008242638-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1582788273-r1 { fill: #e0e0e0 } -.terminal-1582788273-r2 { fill: #c5c8c6 } -.terminal-1582788273-r3 { fill: #ffcf56 } -.terminal-1582788273-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1582788273-r5 { fill: #dfeef9 } -.terminal-1582788273-r6 { fill: #9dcbee } -.terminal-1582788273-r7 { fill: #ffa62b } -.terminal-1582788273-r8 { fill: #939393 } -.terminal-1582788273-r9 { fill: #0178d4 } -.terminal-1582788273-r10 { fill: #e1e1e1 } -.terminal-1582788273-r11 { fill: #dde6ed } -.terminal-1582788273-r12 { fill: #a0a0a0 } -.terminal-1582788273-r13 { fill: #64451a } -.terminal-1582788273-r14 { fill: #fea62b } -.terminal-1582788273-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-1582788273-r16 { fill: #8d8d8d } -.terminal-1582788273-r17 { fill: #6c6c6c } -.terminal-1582788273-r18 { fill: #58d1eb;font-weight: bold } -.terminal-1582788273-r19 { fill: #885c1e } -.terminal-1582788273-r20 { fill: #121212 } -.terminal-1582788273-r21 { fill: #dee5eb } -.terminal-1582788273-r22 { fill: #e0e0e1 } -.terminal-1582788273-r23 { fill: #dfe1e2 } -.terminal-1582788273-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-1582788273-r25 { fill: #dee4e8 } -.terminal-1582788273-r26 { fill: #008139 } -.terminal-1582788273-r27 { fill: #737373 } -.terminal-1582788273-r28 { fill: #8c9092 } -.terminal-1582788273-r29 { fill: #989a9c;font-weight: bold } -.terminal-1582788273-r30 { fill: #e3e3e4;font-weight: bold } -.terminal-1582788273-r31 { fill: #313131;font-weight: bold } -.terminal-1582788273-r32 { fill: #313131 } -.terminal-1582788273-r33 { fill: #a2a2a2 } -.terminal-1582788273-r34 { fill: #1c1c1c } -.terminal-1582788273-r35 { fill: #b77923 } -.terminal-1582788273-r36 { fill: #0d0d0d } -.terminal-1582788273-r37 { fill: #888888 } -.terminal-1582788273-r38 { fill: #a4a4a4 } -.terminal-1582788273-r39 { fill: #787878 } -.terminal-1582788273-r40 { fill: #212121 } -.terminal-1582788273-r41 { fill: #3c8b54;font-weight: bold } -.terminal-1582788273-r42 { fill: #ffba41;font-weight: bold } -.terminal-1582788273-r43 { fill: #dbdbdb } + .terminal-2008242638-r1 { fill: #dfdfe1 } +.terminal-2008242638-r2 { fill: #c5c8c6 } +.terminal-2008242638-r3 { fill: #ff93dd } +.terminal-2008242638-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2008242638-r5 { fill: #15111e } +.terminal-2008242638-r6 { fill: #43365c } +.terminal-2008242638-r7 { fill: #ff69b4 } +.terminal-2008242638-r8 { fill: #9393a3 } +.terminal-2008242638-r9 { fill: #a684e8 } +.terminal-2008242638-r10 { fill: #e1e1e6 } +.terminal-2008242638-r11 { fill: #efe3fb } +.terminal-2008242638-r12 { fill: #9f9fa5 } +.terminal-2008242638-r13 { fill: #632e53 } +.terminal-2008242638-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-2008242638-r15 { fill: #8b8b93 } +.terminal-2008242638-r16 { fill: #6a6a74 } +.terminal-2008242638-r17 { fill: #58d1eb;font-weight: bold } +.terminal-2008242638-r18 { fill: #873c69 } +.terminal-2008242638-r19 { fill: #0f0f1f } +.terminal-2008242638-r20 { fill: #ede2f7 } +.terminal-2008242638-r21 { fill: #e1e0e4 } +.terminal-2008242638-r22 { fill: #e2e0e5 } +.terminal-2008242638-r23 { fill: #8b8b93;font-weight: bold } +.terminal-2008242638-r24 { fill: #e9e1f1 } +.terminal-2008242638-r25 { fill: #00b85f } +.terminal-2008242638-r26 { fill: #737387 } +.terminal-2008242638-r27 { fill: #918d9d } +.terminal-2008242638-r28 { fill: #9b9aab;font-weight: bold } +.terminal-2008242638-r29 { fill: #e3e3e8;font-weight: bold } +.terminal-2008242638-r30 { fill: #2e2e3c;font-weight: bold } +.terminal-2008242638-r31 { fill: #2e2e3c } +.terminal-2008242638-r32 { fill: #a0a0a6 } +.terminal-2008242638-r33 { fill: #191928 } +.terminal-2008242638-r34 { fill: #b74e87 } +.terminal-2008242638-r35 { fill: #0d0e2e } +.terminal-2008242638-r36 { fill: #87878f } +.terminal-2008242638-r37 { fill: #a3a3a9 } +.terminal-2008242638-r38 { fill: #777780 } +.terminal-2008242638-r39 { fill: #1f1f2d } +.terminal-2008242638-r40 { fill: #04b375;font-weight: bold } +.terminal-2008242638-r41 { fill: #ff7ec8;font-weight: bold } +.terminal-2008242638-r42 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com/comments       Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━╸━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post postId                            1       -▼ jsonplaceholder/ foo                               bar     -▼ posts/ beep                              boop    - GET get all onetwothree                       123     - GET get one areallyreallyreallyreallylongkey  avalue  - POS create - DEL delete a post -▼ comments/ - GET get commentKeyValue Add   -█ GET get commen╰─────────────────────────────────────────────────╯ - PUT edit a comm│╭────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace - GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ -│───────────────────────││ -Retrieve the comments││ -for a post using the ││ -query string││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com/comments       Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━╸━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post postId                            1       +▼ jsonplaceholder/ foo                               bar     +▼ posts/ beep                              boop    + GET get all onetwothree                       123     + GET get one areallyreallyreallyreallylongkey  avalue  + POS create + DEL delete a post +▼ comments/ + GET get commentKeyValue Add   +█ GET get commen╰─────────────────────────────────────────────────╯ + PUT edit a comm│╭────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace + GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ +│───────────────────────││ +Retrieve the comments││ +for a post using the ││ +query string││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg b/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg index baeff8a1..3164b9aa 100644 --- a/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg +++ b/tests/__snapshots__/test_snapshots/TestMethodSelection.test_select_post_method.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-1596083855-matrix { + .terminal-3855540643-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1596083855-title { + .terminal-3855540643-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1596083855-r1 { fill: #e0e0e0 } -.terminal-1596083855-r2 { fill: #c5c8c6 } -.terminal-1596083855-r3 { fill: #ffcf56 } -.terminal-1596083855-r4 { fill: #211808;text-decoration: underline; } -.terminal-1596083855-r5 { fill: #211808 } -.terminal-1596083855-r6 { fill: #664a1a } -.terminal-1596083855-r7 { fill: #737373 } -.terminal-1596083855-r8 { fill: #e1e1e1 } -.terminal-1596083855-r9 { fill: #dde6ed } -.terminal-1596083855-r10 { fill: #a0a0a0 } -.terminal-1596083855-r11 { fill: #64451a } -.terminal-1596083855-r12 { fill: #989a9c;font-weight: bold } -.terminal-1596083855-r13 { fill: #e3e3e4;font-weight: bold } -.terminal-1596083855-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-1596083855-r15 { fill: #6c6c6c } -.terminal-1596083855-r16 { fill: #8d8d8d } -.terminal-1596083855-r17 { fill: #272727 } -.terminal-1596083855-r18 { fill: #fea62b } -.terminal-1596083855-r19 { fill: #242424 } -.terminal-1596083855-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-1596083855-r21 { fill: #0d0d0d } -.terminal-1596083855-r22 { fill: #008139 } -.terminal-1596083855-r23 { fill: #8c9092 } -.terminal-1596083855-r24 { fill: #313131;font-weight: bold } -.terminal-1596083855-r25 { fill: #313131 } -.terminal-1596083855-r26 { fill: #a2a2a2 } -.terminal-1596083855-r27 { fill: #1c1c1c } -.terminal-1596083855-r28 { fill: #b77923 } -.terminal-1596083855-r29 { fill: #888888 } -.terminal-1596083855-r30 { fill: #a4a4a4 } -.terminal-1596083855-r31 { fill: #787878 } -.terminal-1596083855-r32 { fill: #212121 } -.terminal-1596083855-r33 { fill: #3c8b54;font-weight: bold } -.terminal-1596083855-r34 { fill: #ffba41;font-weight: bold } -.terminal-1596083855-r35 { fill: #dbdbdb } + .terminal-3855540643-r1 { fill: #dfdfe1 } +.terminal-3855540643-r2 { fill: #c5c8c6 } +.terminal-3855540643-r3 { fill: #ff93dd } +.terminal-3855540643-r4 { fill: #21101a;text-decoration: underline; } +.terminal-3855540643-r5 { fill: #21101a } +.terminal-3855540643-r6 { fill: #663250 } +.terminal-3855540643-r7 { fill: #737387 } +.terminal-3855540643-r8 { fill: #e1e1e6 } +.terminal-3855540643-r9 { fill: #efe3fb } +.terminal-3855540643-r10 { fill: #9f9fa5 } +.terminal-3855540643-r11 { fill: #632e53 } +.terminal-3855540643-r12 { fill: #9b9aab;font-weight: bold } +.terminal-3855540643-r13 { fill: #e3e3e8;font-weight: bold } +.terminal-3855540643-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-3855540643-r15 { fill: #6a6a74 } +.terminal-3855540643-r16 { fill: #8b8b93 } +.terminal-3855540643-r17 { fill: #252532 } +.terminal-3855540643-r18 { fill: #ff69b4 } +.terminal-3855540643-r19 { fill: #252441 } +.terminal-3855540643-r20 { fill: #8b8b93;font-weight: bold } +.terminal-3855540643-r21 { fill: #0d0e2e } +.terminal-3855540643-r22 { fill: #00b85f } +.terminal-3855540643-r23 { fill: #918d9d } +.terminal-3855540643-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-3855540643-r25 { fill: #2e2e3c } +.terminal-3855540643-r26 { fill: #a0a0a6 } +.terminal-3855540643-r27 { fill: #191928 } +.terminal-3855540643-r28 { fill: #b74e87 } +.terminal-3855540643-r29 { fill: #87878f } +.terminal-3855540643-r30 { fill: #a3a3a9 } +.terminal-3855540643-r31 { fill: #777780 } +.terminal-3855540643-r32 { fill: #1f1f2d } +.terminal-3855540643-r33 { fill: #04b375;font-weight: bold } +.terminal-3855540643-r34 { fill: #ff7ec8;font-weight: bold } +.terminal-3855540643-r35 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -POSTEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +POSTEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg b/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg index 03bd99a3..21bd067c 100644 --- a/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg +++ b/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg @@ -19,171 +19,171 @@ font-weight: 700; } - .terminal-1506597801-matrix { + .terminal-1288239160-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1506597801-title { + .terminal-1288239160-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1506597801-r1 { fill: #9c9c9c } -.terminal-1506597801-r2 { fill: #c5c8c6 } -.terminal-1506597801-r3 { fill: #dfdfdf } -.terminal-1506597801-r4 { fill: #b2903c } -.terminal-1506597801-r5 { fill: #9ca6ae;text-decoration: underline; } -.terminal-1506597801-r6 { fill: #9ca6ae } -.terminal-1506597801-r7 { fill: #6d8ea6 } -.terminal-1506597801-r8 { fill: #505050 } -.terminal-1506597801-r9 { fill: #313131 } -.terminal-1506597801-r10 { fill: #e0e0e0;font-weight: bold } -.terminal-1506597801-r11 { fill: #9d9d9d } -.terminal-1506597801-r12 { fill: #9aa1a5 } -.terminal-1506597801-r13 { fill: #707070 } -.terminal-1506597801-r14 { fill: #121212 } -.terminal-1506597801-r15 { fill: #463012 } -.terminal-1506597801-r16 { fill: #e0e0e0 } -.terminal-1506597801-r17 { fill: #626262 } -.terminal-1506597801-r18 { fill: #e1e1e1 } -.terminal-1506597801-r19 { fill: #4b4b4b } -.terminal-1506597801-r20 { fill: #1b1b1b } -.terminal-1506597801-r21 { fill: #8d8d8d } -.terminal-1506597801-r22 { fill: #191919 } -.terminal-1506597801-r23 { fill: #626262;font-weight: bold } -.terminal-1506597801-r24 { fill: #737373 } -.terminal-1506597801-r25 { fill: #a5a5a5 } -.terminal-1506597801-r26 { fill: #005a27 } -.terminal-1506597801-r27 { fill: #9e9e9f;font-weight: bold } -.terminal-1506597801-r28 { fill: #626466 } -.terminal-1506597801-r29 { fill: #3e3e3e } -.terminal-1506597801-r30 { fill: #e3e3e3 } -.terminal-1506597801-r31 { fill: #e4e4e4 } -.terminal-1506597801-r32 { fill: #211505 } -.terminal-1506597801-r33 { fill: #0d0d0d } -.terminal-1506597801-r34 { fill: #717171 } -.terminal-1506597801-r35 { fill: #131313 } -.terminal-1506597801-r36 { fill: #5f5f5f } -.terminal-1506597801-r37 { fill: #727272 } -.terminal-1506597801-r38 { fill: #545454 } -.terminal-1506597801-r39 { fill: #171717 } -.terminal-1506597801-r40 { fill: #2a613a;font-weight: bold } -.terminal-1506597801-r41 { fill: #ffba41;font-weight: bold } -.terminal-1506597801-r42 { fill: #dadada } + .terminal-1288239160-r1 { fill: #9c9c9d } +.terminal-1288239160-r2 { fill: #c5c8c6 } +.terminal-1288239160-r3 { fill: #dfdfe0 } +.terminal-1288239160-r4 { fill: #b2669a } +.terminal-1288239160-r5 { fill: #0e0b15;text-decoration: underline; } +.terminal-1288239160-r6 { fill: #0e0b15 } +.terminal-1288239160-r7 { fill: #2e2540 } +.terminal-1288239160-r8 { fill: #50505e } +.terminal-1288239160-r9 { fill: #2e2e3f } +.terminal-1288239160-r10 { fill: #dfdfe1;font-weight: bold } +.terminal-1288239160-r11 { fill: #9d9da1 } +.terminal-1288239160-r12 { fill: #a79eaf } +.terminal-1288239160-r13 { fill: #6f6f73 } +.terminal-1288239160-r14 { fill: #0f0f1f } +.terminal-1288239160-r15 { fill: #45203a } +.terminal-1288239160-r16 { fill: #dfdfe1 } +.terminal-1288239160-r17 { fill: #616166 } +.terminal-1288239160-r18 { fill: #e1e1e6 } +.terminal-1288239160-r19 { fill: #4a4a51 } +.terminal-1288239160-r20 { fill: #191923 } +.terminal-1288239160-r21 { fill: #8b8b93 } +.terminal-1288239160-r22 { fill: #19192d } +.terminal-1288239160-r23 { fill: #616166;font-weight: bold } +.terminal-1288239160-r24 { fill: #737387 } +.terminal-1288239160-r25 { fill: #a5a5b2 } +.terminal-1288239160-r26 { fill: #008042 } +.terminal-1288239160-r27 { fill: #9e9ea2;font-weight: bold } +.terminal-1288239160-r28 { fill: #65626d } +.terminal-1288239160-r29 { fill: #403e62 } +.terminal-1288239160-r30 { fill: #e3e3e8 } +.terminal-1288239160-r31 { fill: #e5e4e9 } +.terminal-1288239160-r32 { fill: #210d17 } +.terminal-1288239160-r33 { fill: #0d0e2e } +.terminal-1288239160-r34 { fill: #707074 } +.terminal-1288239160-r35 { fill: #11111c } +.terminal-1288239160-r36 { fill: #5e5e64 } +.terminal-1288239160-r37 { fill: #727276 } +.terminal-1288239160-r38 { fill: #535359 } +.terminal-1288239160-r39 { fill: #15151f } +.terminal-1288239160-r40 { fill: #027d51;font-weight: bold } +.terminal-1288239160-r41 { fill: #ff7ec8;font-weight: bold } +.terminal-1288239160-r42 { fill: #dadadb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  - -╭─ Collection ────Title                            ─────── Request ─╮ - GET echo        foo                            oOptions - GET get random u━━━━━━━━━━━━━━━━━ - POS echo post   File name optional╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholderfoo.posting.yamlrs.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all Description optional Add header  - GET get one bar─────────────────╯ - POS create  ────── Response ─╮ - DEL delete aDirectory                         -▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ - GET get co - GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - PUT edit a comm││ -▼ todos/││ - GET get all      ││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ESC Cancel  ^n Create  + + + + +Posting                                                                    + +GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  + +╭─ Collection ────Title                            ─────── Request ─╮ + GET echo        foo                            oOptions + GET get random u━━━━━━━━━━━━━━━━━ + POS echo post   File name optional╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholderfoo.posting.yamlrs.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all Description optional Add header  + GET get one bar─────────────────╯ + POS create  ────── Response ─╮ + DEL delete aDirectory                         +▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ + GET get co + GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + PUT edit a comm││ +▼ todos/││ + GET get all      ││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ESC Cancel  ^n Create  diff --git a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg index 4e21d0ca..98432369 100644 --- a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg +++ b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-2484910599-matrix { + .terminal-1710837915-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2484910599-title { + .terminal-1710837915-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2484910599-r1 { fill: #e0e0e0 } -.terminal-2484910599-r2 { fill: #c5c8c6 } -.terminal-2484910599-r3 { fill: #ffcf56 } -.terminal-2484910599-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2484910599-r5 { fill: #dfeef9 } -.terminal-2484910599-r6 { fill: #9dcbee } -.terminal-2484910599-r7 { fill: #737373 } -.terminal-2484910599-r8 { fill: #e1e1e1 } -.terminal-2484910599-r9 { fill: #dde6ed } -.terminal-2484910599-r10 { fill: #a0a0a0 } -.terminal-2484910599-r11 { fill: #fea62b } -.terminal-2484910599-r12 { fill: #e0e0e0;font-weight: bold } -.terminal-2484910599-r13 { fill: #64451a } -.terminal-2484910599-r14 { fill: #8d8d8d } -.terminal-2484910599-r15 { fill: #6c6c6c } -.terminal-2484910599-r16 { fill: #272727 } -.terminal-2484910599-r17 { fill: #242424 } -.terminal-2484910599-r18 { fill: #8d8d8d;font-weight: bold } -.terminal-2484910599-r19 { fill: #008139 } -.terminal-2484910599-r20 { fill: #794f14;font-weight: bold } -.terminal-2484910599-r21 { fill: #211505;font-weight: bold } -.terminal-2484910599-r22 { fill: #8c9092 } -.terminal-2484910599-r23 { fill: #0d0d0d } -.terminal-2484910599-r24 { fill: #313131;font-weight: bold } -.terminal-2484910599-r25 { fill: #313131 } -.terminal-2484910599-r26 { fill: #a2a2a2 } -.terminal-2484910599-r27 { fill: #1c1c1c } -.terminal-2484910599-r28 { fill: #b77923 } -.terminal-2484910599-r29 { fill: #56c278 } -.terminal-2484910599-r30 { fill: #40ae66;font-weight: bold } -.terminal-2484910599-r31 { fill: #e0e3e4 } -.terminal-2484910599-r32 { fill: #ffba41;font-weight: bold } -.terminal-2484910599-r33 { fill: #dbdbdb } + .terminal-1710837915-r1 { fill: #dfdfe1 } +.terminal-1710837915-r2 { fill: #c5c8c6 } +.terminal-1710837915-r3 { fill: #ff93dd } +.terminal-1710837915-r4 { fill: #15111e;text-decoration: underline; } +.terminal-1710837915-r5 { fill: #15111e } +.terminal-1710837915-r6 { fill: #43365c } +.terminal-1710837915-r7 { fill: #737387 } +.terminal-1710837915-r8 { fill: #e1e1e6 } +.terminal-1710837915-r9 { fill: #efe3fb } +.terminal-1710837915-r10 { fill: #9f9fa5 } +.terminal-1710837915-r11 { fill: #ff69b4 } +.terminal-1710837915-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-1710837915-r13 { fill: #632e53 } +.terminal-1710837915-r14 { fill: #8b8b93 } +.terminal-1710837915-r15 { fill: #6a6a74 } +.terminal-1710837915-r16 { fill: #252532 } +.terminal-1710837915-r17 { fill: #252441 } +.terminal-1710837915-r18 { fill: #8b8b93;font-weight: bold } +.terminal-1710837915-r19 { fill: #00b85f } +.terminal-1710837915-r20 { fill: #793155;font-weight: bold } +.terminal-1710837915-r21 { fill: #210d17;font-weight: bold } +.terminal-1710837915-r22 { fill: #918d9d } +.terminal-1710837915-r23 { fill: #0d0e2e } +.terminal-1710837915-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-1710837915-r25 { fill: #2e2e3c } +.terminal-1710837915-r26 { fill: #a0a0a6 } +.terminal-1710837915-r27 { fill: #191928 } +.terminal-1710837915-r28 { fill: #b74e87 } +.terminal-1710837915-r29 { fill: #0cfa9f } +.terminal-1710837915-r30 { fill: #0ce48c;font-weight: bold } +.terminal-1710837915-r31 { fill: #e3e3e6 } +.terminal-1710837915-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-1710837915-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -█ GET fooNameValue Add header  - GET get all╰─────────────────────────────────────────────────╯ - GET get one╭────────────────────────────────────── Response ─╮ - POS createBodyHeadersCookiesTrace - DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -▼ comments/ - GET get comment - GET get comment -───────────────────────Request saved -barjsonplaceholder/posts/foo.posting.ya -╰── sample-collections ─╯╰───────────ml - ^j Send  ^t Method  ^s Save  ^n New  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +█ GET fooNameValue Add header  + GET get all╰─────────────────────────────────────────────────╯ + GET get one╭────────────────────────────────────── Response ─╮ + POS createBodyHeadersCookiesTrace + DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +▼ comments/ + GET get comment + GET get comment +───────────────────────Request saved +barjsonplaceholder/posts/foo.posting.ya +╰── sample-collections ─╯╰───────────ml + ^j Send  ^t Method  ^s Save  ^n New  diff --git a/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg b/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg index c3c38576..2ef2c84d 100644 --- a/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg +++ b/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg @@ -19,174 +19,174 @@ font-weight: 700; } - .terminal-3411227047-matrix { + .terminal-3104656709-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3411227047-title { + .terminal-3104656709-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3411227047-r1 { fill: #9c9c9c } -.terminal-3411227047-r2 { fill: #c5c8c6 } -.terminal-3411227047-r3 { fill: #dfdfdf } -.terminal-3411227047-r4 { fill: #b2903c } -.terminal-3411227047-r5 { fill: #9ca6ae;text-decoration: underline; } -.terminal-3411227047-r6 { fill: #9ca6ae } -.terminal-3411227047-r7 { fill: #6d8ea6 } -.terminal-3411227047-r8 { fill: #505050 } -.terminal-3411227047-r9 { fill: #313131 } -.terminal-3411227047-r10 { fill: #e0e0e0;font-weight: bold } -.terminal-3411227047-r11 { fill: #9d9d9d } -.terminal-3411227047-r12 { fill: #9aa1a5 } -.terminal-3411227047-r13 { fill: #707070 } -.terminal-3411227047-r14 { fill: #121212 } -.terminal-3411227047-r15 { fill: #463012 } -.terminal-3411227047-r16 { fill: #e0e0e0 } -.terminal-3411227047-r17 { fill: #626262 } -.terminal-3411227047-r18 { fill: #3e3e3e } -.terminal-3411227047-r19 { fill: #e3e3e3 } -.terminal-3411227047-r20 { fill: #211505 } -.terminal-3411227047-r21 { fill: #9c9c9c;font-weight: bold } -.terminal-3411227047-r22 { fill: #4b4b4b } -.terminal-3411227047-r23 { fill: #b1741e } -.terminal-3411227047-r24 { fill: #1b1b1b } -.terminal-3411227047-r25 { fill: #8d8d8d } -.terminal-3411227047-r26 { fill: #626262;font-weight: bold } -.terminal-3411227047-r27 { fill: #737373 } -.terminal-3411227047-r28 { fill: #e1e1e1 } -.terminal-3411227047-r29 { fill: #a5a5a5 } -.terminal-3411227047-r30 { fill: #9e9e9e } -.terminal-3411227047-r31 { fill: #3b280f } -.terminal-3411227047-r32 { fill: #005a27 } -.terminal-3411227047-r33 { fill: #6a6b6d;font-weight: bold } -.terminal-3411227047-r34 { fill: #9e9e9f;font-weight: bold } -.terminal-3411227047-r35 { fill: #e2e2e2 } -.terminal-3411227047-r36 { fill: #0d0d0d } -.terminal-3411227047-r37 { fill: #717171 } -.terminal-3411227047-r38 { fill: #131313 } -.terminal-3411227047-r39 { fill: #5f5f5f } -.terminal-3411227047-r40 { fill: #727272 } -.terminal-3411227047-r41 { fill: #545454 } -.terminal-3411227047-r42 { fill: #171717 } -.terminal-3411227047-r43 { fill: #2a613a;font-weight: bold } -.terminal-3411227047-r44 { fill: #ffba41;font-weight: bold } -.terminal-3411227047-r45 { fill: #dadada } + .terminal-3104656709-r1 { fill: #9c9c9d } +.terminal-3104656709-r2 { fill: #c5c8c6 } +.terminal-3104656709-r3 { fill: #dfdfe0 } +.terminal-3104656709-r4 { fill: #b2669a } +.terminal-3104656709-r5 { fill: #0e0b15;text-decoration: underline; } +.terminal-3104656709-r6 { fill: #0e0b15 } +.terminal-3104656709-r7 { fill: #2e2540 } +.terminal-3104656709-r8 { fill: #50505e } +.terminal-3104656709-r9 { fill: #2e2e3f } +.terminal-3104656709-r10 { fill: #dfdfe1;font-weight: bold } +.terminal-3104656709-r11 { fill: #9d9da1 } +.terminal-3104656709-r12 { fill: #a79eaf } +.terminal-3104656709-r13 { fill: #6f6f73 } +.terminal-3104656709-r14 { fill: #0f0f1f } +.terminal-3104656709-r15 { fill: #45203a } +.terminal-3104656709-r16 { fill: #dfdfe1 } +.terminal-3104656709-r17 { fill: #616166 } +.terminal-3104656709-r18 { fill: #403e62 } +.terminal-3104656709-r19 { fill: #e3e3e8 } +.terminal-3104656709-r20 { fill: #210d17 } +.terminal-3104656709-r21 { fill: #9c9c9d;font-weight: bold } +.terminal-3104656709-r22 { fill: #4a4a51 } +.terminal-3104656709-r23 { fill: #b2497e } +.terminal-3104656709-r24 { fill: #191923 } +.terminal-3104656709-r25 { fill: #8b8b93 } +.terminal-3104656709-r26 { fill: #616166;font-weight: bold } +.terminal-3104656709-r27 { fill: #737387 } +.terminal-3104656709-r28 { fill: #e1e1e6 } +.terminal-3104656709-r29 { fill: #a5a5b2 } +.terminal-3104656709-r30 { fill: #9e9ea1 } +.terminal-3104656709-r31 { fill: #3b1c3c } +.terminal-3104656709-r32 { fill: #008042 } +.terminal-3104656709-r33 { fill: #6b6b77;font-weight: bold } +.terminal-3104656709-r34 { fill: #9e9ea2;font-weight: bold } +.terminal-3104656709-r35 { fill: #e2e2e6 } +.terminal-3104656709-r36 { fill: #0d0e2e } +.terminal-3104656709-r37 { fill: #707074 } +.terminal-3104656709-r38 { fill: #11111c } +.terminal-3104656709-r39 { fill: #5e5e64 } +.terminal-3104656709-r40 { fill: #727276 } +.terminal-3104656709-r41 { fill: #535359 } +.terminal-3104656709-r42 { fill: #15151f } +.terminal-3104656709-r43 { fill: #027d51;font-weight: bold } +.terminal-3104656709-r44 { fill: #ff7ec8;font-weight: bold } +.terminal-3104656709-r45 { fill: #dadadb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  - -╭─ Collection ────Title                            ─────── Request ─╮ - GET echo        Foo: BaroOptions - GET get random u╺━━━━━━━━━━━━━━━ - POS echo post   File name optional -▼ jsonplaceholderfoo-bar.posting.yaml -▼ posts/ - GET get allDescription optional - GET get one baz                             ─────────────────╯ - POS create  ────── Response ─╮ - DEL delete aDirectory                         -▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ - GET get co - GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - PUT edit a comm││ -│───────────────────────││ -Retrieve all posts││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ESC Cancel  ^n Create  + + + + +Posting                                                                    + +GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  + +╭─ Collection ────Title                            ─────── Request ─╮ + GET echo        Foo: BaroOptions + GET get random u╺━━━━━━━━━━━━━━━ + POS echo post   File name optional +▼ jsonplaceholderfoo-bar.posting.yaml +▼ posts/ + GET get allDescription optional + GET get one baz                             ─────────────────╯ + POS create  ────── Response ─╮ + DEL delete aDirectory                         +▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ + GET get co + GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + PUT edit a comm││ +│───────────────────────││ +Retrieve all posts││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ESC Cancel  ^n Create  diff --git a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg index 5d262b8e..220e2427 100644 --- a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg +++ b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-2892528199-matrix { + .terminal-2405076578-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2892528199-title { + .terminal-2405076578-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2892528199-r1 { fill: #e0e0e0 } -.terminal-2892528199-r2 { fill: #c5c8c6 } -.terminal-2892528199-r3 { fill: #ffcf56 } -.terminal-2892528199-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2892528199-r5 { fill: #dfeef9 } -.terminal-2892528199-r6 { fill: #9dcbee } -.terminal-2892528199-r7 { fill: #ffa62b } -.terminal-2892528199-r8 { fill: #939393 } -.terminal-2892528199-r9 { fill: #0178d4 } -.terminal-2892528199-r10 { fill: #e1e1e1 } -.terminal-2892528199-r11 { fill: #4ebf71 } -.terminal-2892528199-r12 { fill: #dde6ed } -.terminal-2892528199-r13 { fill: #a0a0a0 } -.terminal-2892528199-r14 { fill: #fea62b } -.terminal-2892528199-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-2892528199-r16 { fill: #64451a } -.terminal-2892528199-r17 { fill: #8d8d8d } -.terminal-2892528199-r18 { fill: #58d1eb;font-weight: bold } -.terminal-2892528199-r19 { fill: #6c6c6c } -.terminal-2892528199-r20 { fill: #272727 } -.terminal-2892528199-r21 { fill: #121212 } -.terminal-2892528199-r22 { fill: #dee5eb } -.terminal-2892528199-r23 { fill: #e0e0e1 } -.terminal-2892528199-r24 { fill: #dfe1e2 } -.terminal-2892528199-r25 { fill: #8d8d8d;font-weight: bold } -.terminal-2892528199-r26 { fill: #dee4e8 } -.terminal-2892528199-r27 { fill: #008139 } -.terminal-2892528199-r28 { fill: #794f14;font-weight: bold } -.terminal-2892528199-r29 { fill: #211505;font-weight: bold } -.terminal-2892528199-r30 { fill: #737373 } -.terminal-2892528199-r31 { fill: #8c9092 } -.terminal-2892528199-r32 { fill: #0a180e } -.terminal-2892528199-r33 { fill: #a3a3a3;font-weight: bold } -.terminal-2892528199-r34 { fill: #e8e8e8 } -.terminal-2892528199-r35 { fill: #707070 } -.terminal-2892528199-r36 { fill: #569cd6;font-weight: bold } -.terminal-2892528199-r37 { fill: #b5cea8 } -.terminal-2892528199-r38 { fill: #ce9178 } -.terminal-2892528199-r39 { fill: #888888 } -.terminal-2892528199-r40 { fill: #a3a3a3 } -.terminal-2892528199-r41 { fill: #323232 } -.terminal-2892528199-r42 { fill: #4ebf71;font-weight: bold } -.terminal-2892528199-r43 { fill: #ffba41;font-weight: bold } -.terminal-2892528199-r44 { fill: #dbdbdb } + .terminal-2405076578-r1 { fill: #dfdfe1 } +.terminal-2405076578-r2 { fill: #c5c8c6 } +.terminal-2405076578-r3 { fill: #ff93dd } +.terminal-2405076578-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2405076578-r5 { fill: #15111e } +.terminal-2405076578-r6 { fill: #43365c } +.terminal-2405076578-r7 { fill: #ff69b4 } +.terminal-2405076578-r8 { fill: #9393a3 } +.terminal-2405076578-r9 { fill: #a684e8 } +.terminal-2405076578-r10 { fill: #e1e1e6 } +.terminal-2405076578-r11 { fill: #00fa9a } +.terminal-2405076578-r12 { fill: #efe3fb } +.terminal-2405076578-r13 { fill: #9f9fa5 } +.terminal-2405076578-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-2405076578-r15 { fill: #632e53 } +.terminal-2405076578-r16 { fill: #8b8b93 } +.terminal-2405076578-r17 { fill: #58d1eb;font-weight: bold } +.terminal-2405076578-r18 { fill: #6a6a74 } +.terminal-2405076578-r19 { fill: #252532 } +.terminal-2405076578-r20 { fill: #0f0f1f } +.terminal-2405076578-r21 { fill: #ede2f7 } +.terminal-2405076578-r22 { fill: #e1e0e4 } +.terminal-2405076578-r23 { fill: #e2e0e5 } +.terminal-2405076578-r24 { fill: #8b8b93;font-weight: bold } +.terminal-2405076578-r25 { fill: #e9e1f1 } +.terminal-2405076578-r26 { fill: #00b85f } +.terminal-2405076578-r27 { fill: #793155;font-weight: bold } +.terminal-2405076578-r28 { fill: #210d17;font-weight: bold } +.terminal-2405076578-r29 { fill: #737387 } +.terminal-2405076578-r30 { fill: #918d9d } +.terminal-2405076578-r31 { fill: #002014 } +.terminal-2405076578-r32 { fill: #a2a2a8;font-weight: bold } +.terminal-2405076578-r33 { fill: #e8e8e9 } +.terminal-2405076578-r34 { fill: #e0e0e2 } +.terminal-2405076578-r35 { fill: #6f6f78 } +.terminal-2405076578-r36 { fill: #f92672;font-weight: bold } +.terminal-2405076578-r37 { fill: #ae81ff } +.terminal-2405076578-r38 { fill: #e6db74 } +.terminal-2405076578-r39 { fill: #87878f } +.terminal-2405076578-r40 { fill: #a2a2a8 } +.terminal-2405076578-r41 { fill: #30303b } +.terminal-2405076578-r42 { fill: #00fa9a;font-weight: bold } +.terminal-2405076578-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-2405076578-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                            - -GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  - -╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post Content-Type     application/json      -▼ jsonplaceholder/ Referer          https://example.com/  -▼ posts/ Accept-Encoding  gzip                  -█ GET get all Cache-Control    no-cache              - GET get one - POS create - DEL delete a post -▼ comments/ - GET get commentsNameValue Add header  - GET get comments (╰───────────────────────────────────────────────────────╯ - PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ -▼ todos/BodyHeadersCookiesTrace - GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one  1  [ -▼ users/  2    {                                             - GET get a user  3  "userId"1,                                - GET get all users  4  "id"1,                                    - POS create a user  5  "title""sunt aut facere repellat  - PUT update a userprovident occaecati excepturi optio  - DEL delete a userreprehenderit",                                 -  6  "body""quia et suscipit\nsuscipit  -─────────────────────────recusandae consequuntur expedita et  -Retrieve all posts1:1read-onlyJSONWrap X -╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + + + +Posting                                                                            + +GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  + +╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post Content-Type     application/json      +▼ jsonplaceholder/ Referer          https://example.com/  +▼ posts/ Accept-Encoding  gzip                  +█ GET get all Cache-Control    no-cache              + GET get one + POS create + DEL delete a post +▼ comments/ + GET get commentsNameValue Add header  + GET get comments (╰───────────────────────────────────────────────────────╯ + PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ +▼ todos/BodyHeadersCookiesTrace + GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one  1  [ +▼ users/  2    {                                             + GET get a user  3  "userId"1,                                + GET get all users  4  "id"1,                                    + POS create a user  5  "title""sunt aut facere repellat  + PUT update a userprovident occaecati excepturi optio  + DEL delete a userreprehenderit",                                 +  6  "body""quia et suscipit\nsuscipit  +─────────────────────────recusandae consequuntur expedita et  +Retrieve all posts1:1read-onlyJSONWrap X +╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg index 15df6401..304c98f8 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_appears_on_typing.svg @@ -19,170 +19,170 @@ font-weight: 700; } - .terminal-1253450977-matrix { + .terminal-2902371197-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1253450977-title { + .terminal-2902371197-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1253450977-r1 { fill: #e0e0e0 } -.terminal-1253450977-r2 { fill: #c5c8c6 } -.terminal-1253450977-r3 { fill: #ffcf56 } -.terminal-1253450977-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1253450977-r5 { fill: #dfeef9 } -.terminal-1253450977-r6 { fill: #9dcbee } -.terminal-1253450977-r7 { fill: #3e3e3e } -.terminal-1253450977-r8 { fill: #e3e3e3 } -.terminal-1253450977-r9 { fill: #211505 } -.terminal-1253450977-r10 { fill: #dde6ed } -.terminal-1253450977-r11 { fill: #a0a0a0 } -.terminal-1253450977-r12 { fill: #fea62b } -.terminal-1253450977-r13 { fill: #e5ebf2;font-weight: bold } -.terminal-1253450977-r14 { fill: #e5e5e5;font-weight: bold } -.terminal-1253450977-r15 { fill: #64451a } -.terminal-1253450977-r16 { fill: #e5ebf2 } -.terminal-1253450977-r17 { fill: #a5a5a5 } -.terminal-1253450977-r18 { fill: #989a9c;font-weight: bold } -.terminal-1253450977-r19 { fill: #e3e3e4;font-weight: bold } -.terminal-1253450977-r20 { fill: #6c6c6c } -.terminal-1253450977-r21 { fill: #8d8d8d } -.terminal-1253450977-r22 { fill: #272727 } -.terminal-1253450977-r23 { fill: #242424 } -.terminal-1253450977-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-1253450977-r25 { fill: #0d0d0d } -.terminal-1253450977-r26 { fill: #008139 } -.terminal-1253450977-r27 { fill: #737373 } -.terminal-1253450977-r28 { fill: #e1e1e1 } -.terminal-1253450977-r29 { fill: #8c9092 } -.terminal-1253450977-r30 { fill: #313131;font-weight: bold } -.terminal-1253450977-r31 { fill: #313131 } -.terminal-1253450977-r32 { fill: #a2a2a2 } -.terminal-1253450977-r33 { fill: #1c1c1c } -.terminal-1253450977-r34 { fill: #b77923 } -.terminal-1253450977-r35 { fill: #888888 } -.terminal-1253450977-r36 { fill: #a4a4a4 } -.terminal-1253450977-r37 { fill: #787878 } -.terminal-1253450977-r38 { fill: #212121 } -.terminal-1253450977-r39 { fill: #3c8b54;font-weight: bold } -.terminal-1253450977-r40 { fill: #ffba41;font-weight: bold } -.terminal-1253450977-r41 { fill: #dbdbdb } + .terminal-2902371197-r1 { fill: #dfdfe1 } +.terminal-2902371197-r2 { fill: #c5c8c6 } +.terminal-2902371197-r3 { fill: #ff93dd } +.terminal-2902371197-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2902371197-r5 { fill: #15111e } +.terminal-2902371197-r6 { fill: #43365c } +.terminal-2902371197-r7 { fill: #403e62 } +.terminal-2902371197-r8 { fill: #e3e3e8 } +.terminal-2902371197-r9 { fill: #210d17 } +.terminal-2902371197-r10 { fill: #efe3fb } +.terminal-2902371197-r11 { fill: #9f9fa5 } +.terminal-2902371197-r12 { fill: #ff69b4 } +.terminal-2902371197-r13 { fill: #170b21;font-weight: bold } +.terminal-2902371197-r14 { fill: #e5e5ea;font-weight: bold } +.terminal-2902371197-r15 { fill: #632e53 } +.terminal-2902371197-r16 { fill: #170b21 } +.terminal-2902371197-r17 { fill: #a5a5b2 } +.terminal-2902371197-r18 { fill: #9b9aab;font-weight: bold } +.terminal-2902371197-r19 { fill: #e3e3e8;font-weight: bold } +.terminal-2902371197-r20 { fill: #6a6a74 } +.terminal-2902371197-r21 { fill: #8b8b93 } +.terminal-2902371197-r22 { fill: #252532 } +.terminal-2902371197-r23 { fill: #252441 } +.terminal-2902371197-r24 { fill: #8b8b93;font-weight: bold } +.terminal-2902371197-r25 { fill: #0d0e2e } +.terminal-2902371197-r26 { fill: #00b85f } +.terminal-2902371197-r27 { fill: #737387 } +.terminal-2902371197-r28 { fill: #e1e1e6 } +.terminal-2902371197-r29 { fill: #918d9d } +.terminal-2902371197-r30 { fill: #2e2e3c;font-weight: bold } +.terminal-2902371197-r31 { fill: #2e2e3c } +.terminal-2902371197-r32 { fill: #a0a0a6 } +.terminal-2902371197-r33 { fill: #191928 } +.terminal-2902371197-r34 { fill: #b74e87 } +.terminal-2902371197-r35 { fill: #87878f } +.terminal-2902371197-r36 { fill: #a3a3a9 } +.terminal-2902371197-r37 { fill: #777780 } +.terminal-2902371197-r38 { fill: #1f1f2d } +.terminal-2902371197-r39 { fill: #04b375;font-weight: bold } +.terminal-2902371197-r40 { fill: #ff7ec8;font-weight: bold } +.terminal-2902371197-r41 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttp Send  -https://api.randomuser.me            -╭─ Collection ────https://jsonplaceholder.typicode.com────────── Request ─╮ - GET echohttps://postman-echo.com            InfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GEThttp Send  +https://api.randomuser.me            +╭─ Collection ────https://jsonplaceholder.typicode.com────────── Request ─╮ + GET echohttps://postman-echo.com            InfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg index 26350621..395809db 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_enter_key.svg @@ -19,170 +19,169 @@ font-weight: 700; } - .terminal-2184128277-matrix { + .terminal-2543498502-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2184128277-title { + .terminal-2543498502-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2184128277-r1 { fill: #e0e0e0 } -.terminal-2184128277-r2 { fill: #c5c8c6 } -.terminal-2184128277-r3 { fill: #ffcf56 } -.terminal-2184128277-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2184128277-r5 { fill: #dfeef9 } -.terminal-2184128277-r6 { fill: #9dcbee } -.terminal-2184128277-r7 { fill: #3e3e3e } -.terminal-2184128277-r8 { fill: #ffa62b } -.terminal-2184128277-r9 { fill: #9a9a9a } -.terminal-2184128277-r10 { fill: #0178d4 } -.terminal-2184128277-r11 { fill: #211505 } -.terminal-2184128277-r12 { fill: #e3e3e3 } -.terminal-2184128277-r13 { fill: #dde6ed } -.terminal-2184128277-r14 { fill: #a0a0a0 } -.terminal-2184128277-r15 { fill: #64451a } -.terminal-2184128277-r16 { fill: #989a9c;font-weight: bold } -.terminal-2184128277-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-2184128277-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-2184128277-r19 { fill: #6c6c6c } -.terminal-2184128277-r20 { fill: #8d8d8d } -.terminal-2184128277-r21 { fill: #272727 } -.terminal-2184128277-r22 { fill: #fea62b } -.terminal-2184128277-r23 { fill: #242424 } -.terminal-2184128277-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-2184128277-r25 { fill: #0d0d0d } -.terminal-2184128277-r26 { fill: #008139 } -.terminal-2184128277-r27 { fill: #737373 } -.terminal-2184128277-r28 { fill: #e1e1e1 } -.terminal-2184128277-r29 { fill: #8c9092 } -.terminal-2184128277-r30 { fill: #313131;font-weight: bold } -.terminal-2184128277-r31 { fill: #313131 } -.terminal-2184128277-r32 { fill: #a2a2a2 } -.terminal-2184128277-r33 { fill: #1c1c1c } -.terminal-2184128277-r34 { fill: #b77923 } -.terminal-2184128277-r35 { fill: #888888 } -.terminal-2184128277-r36 { fill: #a4a4a4 } -.terminal-2184128277-r37 { fill: #787878 } -.terminal-2184128277-r38 { fill: #212121 } -.terminal-2184128277-r39 { fill: #3c8b54;font-weight: bold } -.terminal-2184128277-r40 { fill: #ffba41;font-weight: bold } -.terminal-2184128277-r41 { fill: #dbdbdb } + .terminal-2543498502-r1 { fill: #dfdfe1 } +.terminal-2543498502-r2 { fill: #c5c8c6 } +.terminal-2543498502-r3 { fill: #ff93dd } +.terminal-2543498502-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2543498502-r5 { fill: #15111e } +.terminal-2543498502-r6 { fill: #43365c } +.terminal-2543498502-r7 { fill: #403e62 } +.terminal-2543498502-r8 { fill: #ff69b4 } +.terminal-2543498502-r9 { fill: #9b9aab } +.terminal-2543498502-r10 { fill: #a684e8 } +.terminal-2543498502-r11 { fill: #210d17 } +.terminal-2543498502-r12 { fill: #e3e3e8 } +.terminal-2543498502-r13 { fill: #efe3fb } +.terminal-2543498502-r14 { fill: #9f9fa5 } +.terminal-2543498502-r15 { fill: #632e53 } +.terminal-2543498502-r16 { fill: #9b9aab;font-weight: bold } +.terminal-2543498502-r17 { fill: #e3e3e8;font-weight: bold } +.terminal-2543498502-r18 { fill: #dfdfe1;font-weight: bold } +.terminal-2543498502-r19 { fill: #6a6a74 } +.terminal-2543498502-r20 { fill: #8b8b93 } +.terminal-2543498502-r21 { fill: #252532 } +.terminal-2543498502-r22 { fill: #252441 } +.terminal-2543498502-r23 { fill: #8b8b93;font-weight: bold } +.terminal-2543498502-r24 { fill: #0d0e2e } +.terminal-2543498502-r25 { fill: #00b85f } +.terminal-2543498502-r26 { fill: #737387 } +.terminal-2543498502-r27 { fill: #e1e1e6 } +.terminal-2543498502-r28 { fill: #918d9d } +.terminal-2543498502-r29 { fill: #2e2e3c;font-weight: bold } +.terminal-2543498502-r30 { fill: #2e2e3c } +.terminal-2543498502-r31 { fill: #a0a0a6 } +.terminal-2543498502-r32 { fill: #191928 } +.terminal-2543498502-r33 { fill: #b74e87 } +.terminal-2543498502-r34 { fill: #87878f } +.terminal-2543498502-r35 { fill: #a3a3a9 } +.terminal-2543498502-r36 { fill: #777780 } +.terminal-2543498502-r37 { fill: #1f1f2d } +.terminal-2543498502-r38 { fill: #04b375;font-weight: bold } +.terminal-2543498502-r39 { fill: #ff7ec8;font-weight: bold } +.terminal-2543498502-r40 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg index 26350621..395809db 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_completion_selected_via_tab_key.svg @@ -19,170 +19,169 @@ font-weight: 700; } - .terminal-2184128277-matrix { + .terminal-2543498502-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2184128277-title { + .terminal-2543498502-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2184128277-r1 { fill: #e0e0e0 } -.terminal-2184128277-r2 { fill: #c5c8c6 } -.terminal-2184128277-r3 { fill: #ffcf56 } -.terminal-2184128277-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-2184128277-r5 { fill: #dfeef9 } -.terminal-2184128277-r6 { fill: #9dcbee } -.terminal-2184128277-r7 { fill: #3e3e3e } -.terminal-2184128277-r8 { fill: #ffa62b } -.terminal-2184128277-r9 { fill: #9a9a9a } -.terminal-2184128277-r10 { fill: #0178d4 } -.terminal-2184128277-r11 { fill: #211505 } -.terminal-2184128277-r12 { fill: #e3e3e3 } -.terminal-2184128277-r13 { fill: #dde6ed } -.terminal-2184128277-r14 { fill: #a0a0a0 } -.terminal-2184128277-r15 { fill: #64451a } -.terminal-2184128277-r16 { fill: #989a9c;font-weight: bold } -.terminal-2184128277-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-2184128277-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-2184128277-r19 { fill: #6c6c6c } -.terminal-2184128277-r20 { fill: #8d8d8d } -.terminal-2184128277-r21 { fill: #272727 } -.terminal-2184128277-r22 { fill: #fea62b } -.terminal-2184128277-r23 { fill: #242424 } -.terminal-2184128277-r24 { fill: #8d8d8d;font-weight: bold } -.terminal-2184128277-r25 { fill: #0d0d0d } -.terminal-2184128277-r26 { fill: #008139 } -.terminal-2184128277-r27 { fill: #737373 } -.terminal-2184128277-r28 { fill: #e1e1e1 } -.terminal-2184128277-r29 { fill: #8c9092 } -.terminal-2184128277-r30 { fill: #313131;font-weight: bold } -.terminal-2184128277-r31 { fill: #313131 } -.terminal-2184128277-r32 { fill: #a2a2a2 } -.terminal-2184128277-r33 { fill: #1c1c1c } -.terminal-2184128277-r34 { fill: #b77923 } -.terminal-2184128277-r35 { fill: #888888 } -.terminal-2184128277-r36 { fill: #a4a4a4 } -.terminal-2184128277-r37 { fill: #787878 } -.terminal-2184128277-r38 { fill: #212121 } -.terminal-2184128277-r39 { fill: #3c8b54;font-weight: bold } -.terminal-2184128277-r40 { fill: #ffba41;font-weight: bold } -.terminal-2184128277-r41 { fill: #dbdbdb } + .terminal-2543498502-r1 { fill: #dfdfe1 } +.terminal-2543498502-r2 { fill: #c5c8c6 } +.terminal-2543498502-r3 { fill: #ff93dd } +.terminal-2543498502-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2543498502-r5 { fill: #15111e } +.terminal-2543498502-r6 { fill: #43365c } +.terminal-2543498502-r7 { fill: #403e62 } +.terminal-2543498502-r8 { fill: #ff69b4 } +.terminal-2543498502-r9 { fill: #9b9aab } +.terminal-2543498502-r10 { fill: #a684e8 } +.terminal-2543498502-r11 { fill: #210d17 } +.terminal-2543498502-r12 { fill: #e3e3e8 } +.terminal-2543498502-r13 { fill: #efe3fb } +.terminal-2543498502-r14 { fill: #9f9fa5 } +.terminal-2543498502-r15 { fill: #632e53 } +.terminal-2543498502-r16 { fill: #9b9aab;font-weight: bold } +.terminal-2543498502-r17 { fill: #e3e3e8;font-weight: bold } +.terminal-2543498502-r18 { fill: #dfdfe1;font-weight: bold } +.terminal-2543498502-r19 { fill: #6a6a74 } +.terminal-2543498502-r20 { fill: #8b8b93 } +.terminal-2543498502-r21 { fill: #252532 } +.terminal-2543498502-r22 { fill: #252441 } +.terminal-2543498502-r23 { fill: #8b8b93;font-weight: bold } +.terminal-2543498502-r24 { fill: #0d0e2e } +.terminal-2543498502-r25 { fill: #00b85f } +.terminal-2543498502-r26 { fill: #737387 } +.terminal-2543498502-r27 { fill: #e1e1e6 } +.terminal-2543498502-r28 { fill: #918d9d } +.terminal-2543498502-r29 { fill: #2e2e3c;font-weight: bold } +.terminal-2543498502-r30 { fill: #2e2e3c } +.terminal-2543498502-r31 { fill: #a0a0a6 } +.terminal-2543498502-r32 { fill: #191928 } +.terminal-2543498502-r33 { fill: #b74e87 } +.terminal-2543498502-r34 { fill: #87878f } +.terminal-2543498502-r35 { fill: #a3a3a9 } +.terminal-2543498502-r36 { fill: #777780 } +.terminal-2543498502-r37 { fill: #1f1f2d } +.terminal-2543498502-r38 { fill: #04b375;font-weight: bold } +.terminal-2543498502-r39 { fill: #ff7ec8;font-weight: bold } +.terminal-2543498502-r40 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg index de63b518..47f2f16a 100644 --- a/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg +++ b/tests/__snapshots__/test_snapshots/TestUrlBar.test_dropdown_filters_on_typing.svg @@ -19,169 +19,169 @@ font-weight: 700; } - .terminal-3271823869-matrix { + .terminal-453222327-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3271823869-title { + .terminal-453222327-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3271823869-r1 { fill: #e0e0e0 } -.terminal-3271823869-r2 { fill: #c5c8c6 } -.terminal-3271823869-r3 { fill: #ffcf56 } -.terminal-3271823869-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3271823869-r5 { fill: #dfeef9 } -.terminal-3271823869-r6 { fill: #9dcbee } -.terminal-3271823869-r7 { fill: #3e3e3e } -.terminal-3271823869-r8 { fill: #e3e3e3 } -.terminal-3271823869-r9 { fill: #211505 } -.terminal-3271823869-r10 { fill: #dde6ed } -.terminal-3271823869-r11 { fill: #a0a0a0 } -.terminal-3271823869-r12 { fill: #fea62b } -.terminal-3271823869-r13 { fill: #e5e5e5;font-weight: bold } -.terminal-3271823869-r14 { fill: #e5ebf2;font-weight: bold } -.terminal-3271823869-r15 { fill: #64451a } -.terminal-3271823869-r16 { fill: #989a9c;font-weight: bold } -.terminal-3271823869-r17 { fill: #e3e3e4;font-weight: bold } -.terminal-3271823869-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-3271823869-r19 { fill: #6c6c6c } -.terminal-3271823869-r20 { fill: #8d8d8d } -.terminal-3271823869-r21 { fill: #272727 } -.terminal-3271823869-r22 { fill: #242424 } -.terminal-3271823869-r23 { fill: #8d8d8d;font-weight: bold } -.terminal-3271823869-r24 { fill: #0d0d0d } -.terminal-3271823869-r25 { fill: #008139 } -.terminal-3271823869-r26 { fill: #737373 } -.terminal-3271823869-r27 { fill: #e1e1e1 } -.terminal-3271823869-r28 { fill: #8c9092 } -.terminal-3271823869-r29 { fill: #313131;font-weight: bold } -.terminal-3271823869-r30 { fill: #313131 } -.terminal-3271823869-r31 { fill: #a2a2a2 } -.terminal-3271823869-r32 { fill: #1c1c1c } -.terminal-3271823869-r33 { fill: #b77923 } -.terminal-3271823869-r34 { fill: #888888 } -.terminal-3271823869-r35 { fill: #a4a4a4 } -.terminal-3271823869-r36 { fill: #787878 } -.terminal-3271823869-r37 { fill: #212121 } -.terminal-3271823869-r38 { fill: #3c8b54;font-weight: bold } -.terminal-3271823869-r39 { fill: #ffba41;font-weight: bold } -.terminal-3271823869-r40 { fill: #dbdbdb } + .terminal-453222327-r1 { fill: #dfdfe1 } +.terminal-453222327-r2 { fill: #c5c8c6 } +.terminal-453222327-r3 { fill: #ff93dd } +.terminal-453222327-r4 { fill: #15111e;text-decoration: underline; } +.terminal-453222327-r5 { fill: #15111e } +.terminal-453222327-r6 { fill: #43365c } +.terminal-453222327-r7 { fill: #403e62 } +.terminal-453222327-r8 { fill: #e3e3e8 } +.terminal-453222327-r9 { fill: #210d17 } +.terminal-453222327-r10 { fill: #efe3fb } +.terminal-453222327-r11 { fill: #9f9fa5 } +.terminal-453222327-r12 { fill: #ff69b4 } +.terminal-453222327-r13 { fill: #e5e5ea;font-weight: bold } +.terminal-453222327-r14 { fill: #170b21;font-weight: bold } +.terminal-453222327-r15 { fill: #632e53 } +.terminal-453222327-r16 { fill: #9b9aab;font-weight: bold } +.terminal-453222327-r17 { fill: #e3e3e8;font-weight: bold } +.terminal-453222327-r18 { fill: #dfdfe1;font-weight: bold } +.terminal-453222327-r19 { fill: #6a6a74 } +.terminal-453222327-r20 { fill: #8b8b93 } +.terminal-453222327-r21 { fill: #252532 } +.terminal-453222327-r22 { fill: #252441 } +.terminal-453222327-r23 { fill: #8b8b93;font-weight: bold } +.terminal-453222327-r24 { fill: #0d0e2e } +.terminal-453222327-r25 { fill: #00b85f } +.terminal-453222327-r26 { fill: #737387 } +.terminal-453222327-r27 { fill: #e1e1e6 } +.terminal-453222327-r28 { fill: #918d9d } +.terminal-453222327-r29 { fill: #2e2e3c;font-weight: bold } +.terminal-453222327-r30 { fill: #2e2e3c } +.terminal-453222327-r31 { fill: #a0a0a6 } +.terminal-453222327-r32 { fill: #191928 } +.terminal-453222327-r33 { fill: #b74e87 } +.terminal-453222327-r34 { fill: #87878f } +.terminal-453222327-r35 { fill: #a3a3a9 } +.terminal-453222327-r36 { fill: #777780 } +.terminal-453222327-r37 { fill: #1f1f2d } +.terminal-453222327-r38 { fill: #04b375;font-weight: bold } +.terminal-453222327-r39 { fill: #ff7ec8;font-weight: bold } +.terminal-453222327-r40 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETjson Send  -https://jsonplaceholder.typicode.com -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echo││HeadersBodyQueryAuthInfoOptions - GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all││NameValue Add header  - GET get one│╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETjson Send  +https://jsonplaceholder.typicode.com +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echo││HeadersBodyQueryAuthInfoOptions + GET get random user││━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/││╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all││NameValue Add header  + GET get one│╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg index 15e83d98..d798f140 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_request_section.svg @@ -19,154 +19,154 @@ font-weight: 700; } - .terminal-3964314419-matrix { + .terminal-1799760719-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3964314419-title { + .terminal-1799760719-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3964314419-r1 { fill: #e0e0e0 } -.terminal-3964314419-r2 { fill: #c5c8c6 } -.terminal-3964314419-r3 { fill: #ffcf56 } -.terminal-3964314419-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-3964314419-r5 { fill: #dfeef9 } -.terminal-3964314419-r6 { fill: #9dcbee } -.terminal-3964314419-r7 { fill: #737373 } -.terminal-3964314419-r8 { fill: #e1e1e1 } -.terminal-3964314419-r9 { fill: #dde6ed } -.terminal-3964314419-r10 { fill: #a0a0a0 } -.terminal-3964314419-r11 { fill: #64451a } -.terminal-3964314419-r12 { fill: #fea62b } -.terminal-3964314419-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-3964314419-r14 { fill: #989a9c;font-weight: bold } -.terminal-3964314419-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-3964314419-r16 { fill: #6c6c6c } -.terminal-3964314419-r17 { fill: #8d8d8d } -.terminal-3964314419-r18 { fill: #885c1e } -.terminal-3964314419-r19 { fill: #242424 } -.terminal-3964314419-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-3964314419-r21 { fill: #0d0d0d } -.terminal-3964314419-r22 { fill: #008139 } -.terminal-3964314419-r23 { fill: #8c9092 } -.terminal-3964314419-r24 { fill: #ffba41;font-weight: bold } -.terminal-3964314419-r25 { fill: #dbdbdb } + .terminal-1799760719-r1 { fill: #dfdfe1 } +.terminal-1799760719-r2 { fill: #c5c8c6 } +.terminal-1799760719-r3 { fill: #ff93dd } +.terminal-1799760719-r4 { fill: #15111e;text-decoration: underline; } +.terminal-1799760719-r5 { fill: #15111e } +.terminal-1799760719-r6 { fill: #43365c } +.terminal-1799760719-r7 { fill: #737387 } +.terminal-1799760719-r8 { fill: #e1e1e6 } +.terminal-1799760719-r9 { fill: #efe3fb } +.terminal-1799760719-r10 { fill: #9f9fa5 } +.terminal-1799760719-r11 { fill: #632e53 } +.terminal-1799760719-r12 { fill: #ff69b4 } +.terminal-1799760719-r13 { fill: #dfdfe1;font-weight: bold } +.terminal-1799760719-r14 { fill: #9b9aab;font-weight: bold } +.terminal-1799760719-r15 { fill: #e3e3e8;font-weight: bold } +.terminal-1799760719-r16 { fill: #6a6a74 } +.terminal-1799760719-r17 { fill: #8b8b93 } +.terminal-1799760719-r18 { fill: #873c69 } +.terminal-1799760719-r19 { fill: #252441 } +.terminal-1799760719-r20 { fill: #8b8b93;font-weight: bold } +.terminal-1799760719-r21 { fill: #0d0e2e } +.terminal-1799760719-r22 { fill: #00b85f } +.terminal-1799760719-r23 { fill: #918d9d } +.terminal-1799760719-r24 { fill: #ff7ec8;font-weight: bold } +.terminal-1799760719-r25 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -│───────────────────────│╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -This is an echo ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -server we can use to ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -see exactly what ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -request is being ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -sent.NameValue Add header  -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +│───────────────────────│╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +This is an echo ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +server we can use to ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +see exactly what ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +request is being ╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +sent.NameValue Add header  +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg index a211caab..d595ae90 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_expand_then_reset.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-682587345-matrix { + .terminal-309201154-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-682587345-title { + .terminal-309201154-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-682587345-r1 { fill: #e0e0e0 } -.terminal-682587345-r2 { fill: #c5c8c6 } -.terminal-682587345-r3 { fill: #ffcf56 } -.terminal-682587345-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-682587345-r5 { fill: #dfeef9 } -.terminal-682587345-r6 { fill: #9dcbee } -.terminal-682587345-r7 { fill: #737373 } -.terminal-682587345-r8 { fill: #e1e1e1 } -.terminal-682587345-r9 { fill: #dde6ed } -.terminal-682587345-r10 { fill: #a0a0a0 } -.terminal-682587345-r11 { fill: #64451a } -.terminal-682587345-r12 { fill: #fea62b } -.terminal-682587345-r13 { fill: #e0e0e0;font-weight: bold } -.terminal-682587345-r14 { fill: #989a9c;font-weight: bold } -.terminal-682587345-r15 { fill: #e3e3e4;font-weight: bold } -.terminal-682587345-r16 { fill: #6c6c6c } -.terminal-682587345-r17 { fill: #8d8d8d } -.terminal-682587345-r18 { fill: #885c1e } -.terminal-682587345-r19 { fill: #242424 } -.terminal-682587345-r20 { fill: #8d8d8d;font-weight: bold } -.terminal-682587345-r21 { fill: #0d0d0d } -.terminal-682587345-r22 { fill: #008139 } -.terminal-682587345-r23 { fill: #8c9092 } -.terminal-682587345-r24 { fill: #313131;font-weight: bold } -.terminal-682587345-r25 { fill: #313131 } -.terminal-682587345-r26 { fill: #a2a2a2 } -.terminal-682587345-r27 { fill: #1c1c1c } -.terminal-682587345-r28 { fill: #b77923 } -.terminal-682587345-r29 { fill: #888888 } -.terminal-682587345-r30 { fill: #a4a4a4 } -.terminal-682587345-r31 { fill: #787878 } -.terminal-682587345-r32 { fill: #212121 } -.terminal-682587345-r33 { fill: #3c8b54;font-weight: bold } -.terminal-682587345-r34 { fill: #ffba41;font-weight: bold } -.terminal-682587345-r35 { fill: #dbdbdb } + .terminal-309201154-r1 { fill: #dfdfe1 } +.terminal-309201154-r2 { fill: #c5c8c6 } +.terminal-309201154-r3 { fill: #ff93dd } +.terminal-309201154-r4 { fill: #15111e;text-decoration: underline; } +.terminal-309201154-r5 { fill: #15111e } +.terminal-309201154-r6 { fill: #43365c } +.terminal-309201154-r7 { fill: #737387 } +.terminal-309201154-r8 { fill: #e1e1e6 } +.terminal-309201154-r9 { fill: #efe3fb } +.terminal-309201154-r10 { fill: #9f9fa5 } +.terminal-309201154-r11 { fill: #632e53 } +.terminal-309201154-r12 { fill: #ff69b4 } +.terminal-309201154-r13 { fill: #dfdfe1;font-weight: bold } +.terminal-309201154-r14 { fill: #9b9aab;font-weight: bold } +.terminal-309201154-r15 { fill: #e3e3e8;font-weight: bold } +.terminal-309201154-r16 { fill: #6a6a74 } +.terminal-309201154-r17 { fill: #8b8b93 } +.terminal-309201154-r18 { fill: #873c69 } +.terminal-309201154-r19 { fill: #252441 } +.terminal-309201154-r20 { fill: #8b8b93;font-weight: bold } +.terminal-309201154-r21 { fill: #0d0e2e } +.terminal-309201154-r22 { fill: #00b85f } +.terminal-309201154-r23 { fill: #918d9d } +.terminal-309201154-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-309201154-r25 { fill: #2e2e3c } +.terminal-309201154-r26 { fill: #a0a0a6 } +.terminal-309201154-r27 { fill: #191928 } +.terminal-309201154-r28 { fill: #b74e87 } +.terminal-309201154-r29 { fill: #87878f } +.terminal-309201154-r30 { fill: #a3a3a9 } +.terminal-309201154-r31 { fill: #777780 } +.terminal-309201154-r32 { fill: #1f1f2d } +.terminal-309201154-r33 { fill: #04b375;font-weight: bold } +.terminal-309201154-r34 { fill: #ff7ec8;font-weight: bold } +.terminal-309201154-r35 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create│╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create│╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg index 2690f905..24cca2e8 100644 --- a/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg +++ b/tests/__snapshots__/test_snapshots/TestUserInterfaceShortcuts.test_hide_collection_browser.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-1469096930-matrix { + .terminal-3721920745-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1469096930-title { + .terminal-3721920745-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1469096930-r1 { fill: #e0e0e0 } -.terminal-1469096930-r2 { fill: #c5c8c6 } -.terminal-1469096930-r3 { fill: #ffcf56 } -.terminal-1469096930-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-1469096930-r5 { fill: #dfeef9 } -.terminal-1469096930-r6 { fill: #9dcbee } -.terminal-1469096930-r7 { fill: #3e3e3e } -.terminal-1469096930-r8 { fill: #211505 } -.terminal-1469096930-r9 { fill: #7c7c7c } -.terminal-1469096930-r10 { fill: #e3e3e3 } -.terminal-1469096930-r11 { fill: #dde6ed } -.terminal-1469096930-r12 { fill: #a0a0a0 } -.terminal-1469096930-r13 { fill: #64451a } -.terminal-1469096930-r14 { fill: #e0e0e0;font-weight: bold } -.terminal-1469096930-r15 { fill: #6c6c6c } -.terminal-1469096930-r16 { fill: #272727 } -.terminal-1469096930-r17 { fill: #fea62b } -.terminal-1469096930-r18 { fill: #242424 } -.terminal-1469096930-r19 { fill: #737373 } -.terminal-1469096930-r20 { fill: #e1e1e1 } -.terminal-1469096930-r21 { fill: #8c9092 } -.terminal-1469096930-r22 { fill: #313131;font-weight: bold } -.terminal-1469096930-r23 { fill: #313131 } -.terminal-1469096930-r24 { fill: #a2a2a2 } -.terminal-1469096930-r25 { fill: #1c1c1c } -.terminal-1469096930-r26 { fill: #b77923 } -.terminal-1469096930-r27 { fill: #888888 } -.terminal-1469096930-r28 { fill: #a4a4a4 } -.terminal-1469096930-r29 { fill: #787878 } -.terminal-1469096930-r30 { fill: #212121 } -.terminal-1469096930-r31 { fill: #3c8b54;font-weight: bold } -.terminal-1469096930-r32 { fill: #ffba41;font-weight: bold } -.terminal-1469096930-r33 { fill: #dbdbdb } + .terminal-3721920745-r1 { fill: #dfdfe1 } +.terminal-3721920745-r2 { fill: #c5c8c6 } +.terminal-3721920745-r3 { fill: #ff93dd } +.terminal-3721920745-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3721920745-r5 { fill: #15111e } +.terminal-3721920745-r6 { fill: #43365c } +.terminal-3721920745-r7 { fill: #403e62 } +.terminal-3721920745-r8 { fill: #210d17 } +.terminal-3721920745-r9 { fill: #7e7c92 } +.terminal-3721920745-r10 { fill: #e3e3e8 } +.terminal-3721920745-r11 { fill: #efe3fb } +.terminal-3721920745-r12 { fill: #9f9fa5 } +.terminal-3721920745-r13 { fill: #632e53 } +.terminal-3721920745-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-3721920745-r15 { fill: #6a6a74 } +.terminal-3721920745-r16 { fill: #252532 } +.terminal-3721920745-r17 { fill: #ff69b4 } +.terminal-3721920745-r18 { fill: #252441 } +.terminal-3721920745-r19 { fill: #737387 } +.terminal-3721920745-r20 { fill: #e1e1e6 } +.terminal-3721920745-r21 { fill: #918d9d } +.terminal-3721920745-r22 { fill: #2e2e3c;font-weight: bold } +.terminal-3721920745-r23 { fill: #2e2e3c } +.terminal-3721920745-r24 { fill: #a0a0a6 } +.terminal-3721920745-r25 { fill: #191928 } +.terminal-3721920745-r26 { fill: #b74e87 } +.terminal-3721920745-r27 { fill: #87878f } +.terminal-3721920745-r28 { fill: #a3a3a9 } +.terminal-3721920745-r29 { fill: #777780 } +.terminal-3721920745-r30 { fill: #1f1f2d } +.terminal-3721920745-r31 { fill: #04b375;font-weight: bold } +.terminal-3721920745-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-3721920745-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭──────────────────────────────────────────────────────────────── Request ─╮ -HeadersBodyQueryAuthInfoOptions -━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -NameValue Add header  -╰──────────────────────────────────────────────────────────────────────────╯ -╭─────────────────────────────────────────────────────────────── Response ─╮ -BodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - -1:1read-onlyJSONWrap X -╰──────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭──────────────────────────────────────────────────────────────── Request ─╮ +HeadersBodyQueryAuthInfoOptions +━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +NameValue Add header  +╰──────────────────────────────────────────────────────────────────────────╯ +╭─────────────────────────────────────────────────────────────── Response ─╮ +BodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + +1:1read-onlyJSONWrap X +╰──────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg index c60a667f..96419154 100644 --- a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg +++ b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg @@ -19,174 +19,173 @@ font-weight: 700; } - .terminal-255893633-matrix { + .terminal-2587761538-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-255893633-title { + .terminal-2587761538-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-255893633-r1 { fill: #e0e0e0 } -.terminal-255893633-r2 { fill: #c5c8c6 } -.terminal-255893633-r3 { fill: #ffcf56 } -.terminal-255893633-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-255893633-r5 { fill: #dfeef9 } -.terminal-255893633-r6 { fill: #9dcbee } -.terminal-255893633-r7 { fill: #3e3e3e } -.terminal-255893633-r8 { fill: #ffa62b } -.terminal-255893633-r9 { fill: #9a9a9a } -.terminal-255893633-r10 { fill: #0178d4 } -.terminal-255893633-r11 { fill: #e3e3e3 } -.terminal-255893633-r12 { fill: #4ebf71;text-decoration: underline; } -.terminal-255893633-r13 { fill: #211505 } -.terminal-255893633-r14 { fill: #dde6ed } -.terminal-255893633-r15 { fill: #a0a0a0 } -.terminal-255893633-r16 { fill: #64451a } -.terminal-255893633-r17 { fill: #8d8d8d } -.terminal-255893633-r18 { fill: #e0e0e0;font-weight: bold } -.terminal-255893633-r19 { fill: #58d1eb;font-weight: bold } -.terminal-255893633-r20 { fill: #6c6c6c } -.terminal-255893633-r21 { fill: #989a9c;font-weight: bold } -.terminal-255893633-r22 { fill: #e3e3e4;font-weight: bold } -.terminal-255893633-r23 { fill: #272727 } -.terminal-255893633-r24 { fill: #fea62b } -.terminal-255893633-r25 { fill: #121212 } -.terminal-255893633-r26 { fill: #dee5eb } -.terminal-255893633-r27 { fill: #e0e0e1 } -.terminal-255893633-r28 { fill: #dfe1e2 } -.terminal-255893633-r29 { fill: #dee4e8 } -.terminal-255893633-r30 { fill: #0d0d0d } -.terminal-255893633-r31 { fill: #737373 } -.terminal-255893633-r32 { fill: #e1e1e1 } -.terminal-255893633-r33 { fill: #8c9092 } -.terminal-255893633-r34 { fill: #313131;font-weight: bold } -.terminal-255893633-r35 { fill: #313131 } -.terminal-255893633-r36 { fill: #a2a2a2 } -.terminal-255893633-r37 { fill: #1c1c1c } -.terminal-255893633-r38 { fill: #b77923 } -.terminal-255893633-r39 { fill: #888888 } -.terminal-255893633-r40 { fill: #a4a4a4 } -.terminal-255893633-r41 { fill: #787878 } -.terminal-255893633-r42 { fill: #212121 } -.terminal-255893633-r43 { fill: #3c8b54;font-weight: bold } -.terminal-255893633-r44 { fill: #ffba41;font-weight: bold } -.terminal-255893633-r45 { fill: #dbdbdb } + .terminal-2587761538-r1 { fill: #dfdfe1 } +.terminal-2587761538-r2 { fill: #c5c8c6 } +.terminal-2587761538-r3 { fill: #ff93dd } +.terminal-2587761538-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2587761538-r5 { fill: #15111e } +.terminal-2587761538-r6 { fill: #43365c } +.terminal-2587761538-r7 { fill: #403e62 } +.terminal-2587761538-r8 { fill: #ff69b4 } +.terminal-2587761538-r9 { fill: #9b9aab } +.terminal-2587761538-r10 { fill: #a684e8 } +.terminal-2587761538-r11 { fill: #e3e3e8 } +.terminal-2587761538-r12 { fill: #00fa9a;text-decoration: underline; } +.terminal-2587761538-r13 { fill: #210d17 } +.terminal-2587761538-r14 { fill: #efe3fb } +.terminal-2587761538-r15 { fill: #9f9fa5 } +.terminal-2587761538-r16 { fill: #632e53 } +.terminal-2587761538-r17 { fill: #8b8b93 } +.terminal-2587761538-r18 { fill: #dfdfe1;font-weight: bold } +.terminal-2587761538-r19 { fill: #58d1eb;font-weight: bold } +.terminal-2587761538-r20 { fill: #6a6a74 } +.terminal-2587761538-r21 { fill: #9b9aab;font-weight: bold } +.terminal-2587761538-r22 { fill: #e3e3e8;font-weight: bold } +.terminal-2587761538-r23 { fill: #252532 } +.terminal-2587761538-r24 { fill: #0f0f1f } +.terminal-2587761538-r25 { fill: #ede2f7 } +.terminal-2587761538-r26 { fill: #e1e0e4 } +.terminal-2587761538-r27 { fill: #e2e0e5 } +.terminal-2587761538-r28 { fill: #e9e1f1 } +.terminal-2587761538-r29 { fill: #0d0e2e } +.terminal-2587761538-r30 { fill: #737387 } +.terminal-2587761538-r31 { fill: #e1e1e6 } +.terminal-2587761538-r32 { fill: #918d9d } +.terminal-2587761538-r33 { fill: #2e2e3c;font-weight: bold } +.terminal-2587761538-r34 { fill: #2e2e3c } +.terminal-2587761538-r35 { fill: #a0a0a6 } +.terminal-2587761538-r36 { fill: #191928 } +.terminal-2587761538-r37 { fill: #b74e87 } +.terminal-2587761538-r38 { fill: #87878f } +.terminal-2587761538-r39 { fill: #a3a3a9 } +.terminal-2587761538-r40 { fill: #777780 } +.terminal-2587761538-r41 { fill: #1f1f2d } +.terminal-2587761538-r42 { fill: #04b375;font-weight: bold } +.terminal-2587761538-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-2587761538-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  -                               TODO_ID = 1                                 -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET get all││HeadersBodyQueryAuthInfoOptions -█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ Content-Type     application/json      -││ Referer          https://example.com/  -││ Accept-Encoding  gzip                  -││NameValue Add header  -│╰─────────────────────────────────────────────────╯ -│╭────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -│───────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  +                               TODO_ID = 1                                 +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET get all││HeadersBodyQueryAuthInfoOptions +█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ Content-Type     application/json      +││ Referer          https://example.com/  +││ Accept-Encoding  gzip                  +││NameValue Add header  +│╰─────────────────────────────────────────────────╯ +│╭────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +│───────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg b/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg index 92a1fc4e..6127748f 100644 --- a/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg +++ b/tests/__snapshots__/test_snapshots/TestVariables.test_unresolved_variables_highlighted.svg @@ -19,209 +19,208 @@ font-weight: 700; } - .terminal-4156698609-matrix { + .terminal-371790475-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4156698609-title { + .terminal-371790475-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4156698609-r1 { fill: #e0e0e0 } -.terminal-4156698609-r2 { fill: #c5c8c6 } -.terminal-4156698609-r3 { fill: #ffcf56 } -.terminal-4156698609-r4 { fill: #dfeef9;text-decoration: underline; } -.terminal-4156698609-r5 { fill: #dfeef9 } -.terminal-4156698609-r6 { fill: #9dcbee } -.terminal-4156698609-r7 { fill: #ffa62b } -.terminal-4156698609-r8 { fill: #939393 } -.terminal-4156698609-r9 { fill: #0178d4 } -.terminal-4156698609-r10 { fill: #e1e1e1 } -.terminal-4156698609-r11 { fill: #dde6ed } -.terminal-4156698609-r12 { fill: #a0a0a0 } -.terminal-4156698609-r13 { fill: #64451a } -.terminal-4156698609-r14 { fill: #fea62b } -.terminal-4156698609-r15 { fill: #e0e0e0;font-weight: bold } -.terminal-4156698609-r16 { fill: #8d8d8d } -.terminal-4156698609-r17 { fill: #6c6c6c } -.terminal-4156698609-r18 { fill: #58d1eb;font-weight: bold } -.terminal-4156698609-r19 { fill: #272727 } -.terminal-4156698609-r20 { fill: #242424 } -.terminal-4156698609-r21 { fill: #8d8d8d;font-weight: bold } -.terminal-4156698609-r22 { fill: #008139 } -.terminal-4156698609-r23 { fill: #3e3e3e } -.terminal-4156698609-r24 { fill: #ba3c5b } -.terminal-4156698609-r25 { fill: #e3e3e3 } -.terminal-4156698609-r26 { fill: #211505 } -.terminal-4156698609-r27 { fill: #313131;font-weight: bold } -.terminal-4156698609-r28 { fill: #313131 } -.terminal-4156698609-r29 { fill: #a2a2a2 } -.terminal-4156698609-r30 { fill: #989a9c;font-weight: bold } -.terminal-4156698609-r31 { fill: #e3e3e4;font-weight: bold } -.terminal-4156698609-r32 { fill: #1c1c1c } -.terminal-4156698609-r33 { fill: #b77923 } -.terminal-4156698609-r34 { fill: #888888 } -.terminal-4156698609-r35 { fill: #a4a4a4 } -.terminal-4156698609-r36 { fill: #787878 } -.terminal-4156698609-r37 { fill: #212121 } -.terminal-4156698609-r38 { fill: #3c8b54;font-weight: bold } -.terminal-4156698609-r39 { fill: #ffba41;font-weight: bold } -.terminal-4156698609-r40 { fill: #dbdbdb } + .terminal-371790475-r1 { fill: #dfdfe1 } +.terminal-371790475-r2 { fill: #c5c8c6 } +.terminal-371790475-r3 { fill: #ff93dd } +.terminal-371790475-r4 { fill: #15111e;text-decoration: underline; } +.terminal-371790475-r5 { fill: #15111e } +.terminal-371790475-r6 { fill: #43365c } +.terminal-371790475-r7 { fill: #ff69b4 } +.terminal-371790475-r8 { fill: #9393a3 } +.terminal-371790475-r9 { fill: #a684e8 } +.terminal-371790475-r10 { fill: #e1e1e6 } +.terminal-371790475-r11 { fill: #efe3fb } +.terminal-371790475-r12 { fill: #9f9fa5 } +.terminal-371790475-r13 { fill: #632e53 } +.terminal-371790475-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-371790475-r15 { fill: #8b8b93 } +.terminal-371790475-r16 { fill: #6a6a74 } +.terminal-371790475-r17 { fill: #58d1eb;font-weight: bold } +.terminal-371790475-r18 { fill: #252532 } +.terminal-371790475-r19 { fill: #252441 } +.terminal-371790475-r20 { fill: #8b8b93;font-weight: bold } +.terminal-371790475-r21 { fill: #00b85f } +.terminal-371790475-r22 { fill: #403e62 } +.terminal-371790475-r23 { fill: #ff4500 } +.terminal-371790475-r24 { fill: #e3e3e8 } +.terminal-371790475-r25 { fill: #210d17 } +.terminal-371790475-r26 { fill: #2e2e3c;font-weight: bold } +.terminal-371790475-r27 { fill: #2e2e3c } +.terminal-371790475-r28 { fill: #a0a0a6 } +.terminal-371790475-r29 { fill: #9b9aab;font-weight: bold } +.terminal-371790475-r30 { fill: #e3e3e8;font-weight: bold } +.terminal-371790475-r31 { fill: #191928 } +.terminal-371790475-r32 { fill: #b74e87 } +.terminal-371790475-r33 { fill: #87878f } +.terminal-371790475-r34 { fill: #a3a3a9 } +.terminal-371790475-r35 { fill: #777780 } +.terminal-371790475-r36 { fill: #1f1f2d } +.terminal-371790475-r37 { fill: #04b375;font-weight: bold } +.terminal-371790475-r38 { fill: #ff7ec8;font-weight: bold } +.terminal-371790475-r39 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                                                          - -GEThttps://jsonplaceholder.typicode.com/todos                                                Send  - -╭─ Collection ──────────────────────╮╭───────────────────────────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no parameters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ comments/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get commentsfoo                      $nope/${nope} Add   - GET get comments (via param)╰───────────────────────────────────────────────────────────────────────────╯ - PUT edit a comment│╭──────────────────────────────────────────────────────────────── Response ─╮ -▼ todos/││BodyHeadersCookiesTrace -█ GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one││ -▼ users/││ - GET get a user││ - GET get all users││ - POS create a user││ - PUT update a user││ - DEL delete a user││ -││ -│───────────────────────────────────││ -Retrieve all todos││1:1read-onlyJSONWrap X -╰────────────── sample-collections ─╯╰───────────────────────────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^q Quit  f1 Help  + + + + +Posting                                                                                                          + +GEThttps://jsonplaceholder.typicode.com/todos                                                Send  + +╭─ Collection ──────────────────────╮╭───────────────────────────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━━━━━━━━━╸━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no parameters.╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + POS create╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + DEL delete a post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ comments/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get commentsfoo                      $nope/${nope} Add   + GET get comments (via param)╰───────────────────────────────────────────────────────────────────────────╯ + PUT edit a comment│╭──────────────────────────────────────────────────────────────── Response ─╮ +▼ todos/││BodyHeadersCookiesTrace +█ GET get all││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one││ +▼ users/││ + GET get a user││ + GET get all users││ + POS create a user││ + PUT update a user││ + DEL delete a user││ +││ +│───────────────────────────────────││ +Retrieve all todos││1:1read-onlyJSONWrap X +╰────────────── sample-collections ─╯╰───────────────────────────────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  From d877cbfb7ea167628a35755cc0560b98a1a49f5a Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 11:41:10 +0100 Subject: [PATCH 06/50] Better empty state for the collection tree --- src/posting/widgets/collection/browser.py | 49 +++++++++++++++++++---- 1 file changed, 42 insertions(+), 7 deletions(-) diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 43065906..867337be 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -12,7 +12,7 @@ from textual.geometry import Region from textual.message import Message from textual.reactive import Reactive, reactive -from textual.widgets import Static, Tree +from textual.widgets import Label, Static, Tree from textual.widgets.tree import TreeNode from posting.collection import Collection, RequestModel @@ -66,6 +66,16 @@ def __init__( ) self.cached_base_urls: set[str] = set() + @dataclass + class RequestAdded(Message): + request: RequestModel + node: TreeNode[CollectionNode] + tree: "CollectionTree" + + @property + def control(self) -> "CollectionTree": + return self.tree + @dataclass class RequestSelected(Message): request: RequestModel @@ -319,12 +329,23 @@ def add_request( parent_node: TreeNode[CollectionNode], after: TreeNode[CollectionNode] | int | None = None, before: TreeNode[CollectionNode] | int | None = None, - ) -> TreeNode[CollectionNode]: + ) -> TreeNode[CollectionNode] | None: """Add a new request to the tree, and cache data from it.""" self.cache_request(request) - return parent_node.add_leaf( - request.name, data=request, after=after, before=before - ) + try: + added_node = parent_node.add_leaf( + request.name, data=request, after=after, before=before + ) + except Exception as e: + self.notify( + title="Error adding request.", + message=f"{e}", + timeout=3, + ) + return None + else: + self.post_message(self.RequestAdded(request, parent_node, self)) + return added_node def cache_request(self, request: RequestModel) -> None: def get_base_url(url: str) -> str | None: @@ -393,6 +414,11 @@ class CollectionBrowser(Vertical): background: transparent; } + #empty-collection-label { + color: $text-muted; + padding: 1 2; + } + } """ @@ -412,8 +438,11 @@ def compose(self) -> ComposeResult: self.border_title = "Collection" self.add_class("section") collection = self.collection - if collection is None: - return + + yield Static( + "[i]Collection is empty.[/]\nPress [b]ctrl+s[/b] to save the current request.", + id="empty-collection-label", + ) tree = CollectionTree( label=collection.name, @@ -447,6 +476,12 @@ def add_collection_to_tree( yield tree yield RequestPreview() + @on(CollectionTree.RequestAdded) + def on_request_added(self, event: CollectionTree.RequestAdded) -> None: + self.query_one("#empty-collection-label").display = ( + len(event.tree.root.children) == 0 + ) + @on(CollectionTree.RequestSelected) def on_request_selected(self, event: CollectionTree.RequestSelected) -> None: if isinstance(event.node.data, RequestModel): From 79a63a2e700e917b9bba549ac207a36b461a8ffb Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 12:01:38 +0100 Subject: [PATCH 07/50] Add config for collection browser position --- README.md | 1 + src/posting/config.py | 12 ++++++++++++ src/posting/widgets/collection/browser.py | 2 ++ 3 files changed, 15 insertions(+) diff --git a/README.md b/README.md index 13a3fc02..359ae431 100644 --- a/README.md +++ b/README.md @@ -232,6 +232,7 @@ Dotenv files are separate from collections, although you may wish to include the | `heading.show_host` (`POSTING_HEADING__SHOW_HOST`) | `true`, `false` (Default: `true`) | Show/hide the hostname in the app header. | | `heading.show_version` (`POSTING_HEADING__SHOW_VERSION`) | `true`, `false` (Default: `true`) | Show/hide the version in the app header. | | `url_bar.show_value_preview` (`POSTING_URL_BAR__SHOW_VALUE_PREVIEW`) | `true`, `false` (Default: `true`) | Show/hide the variable value preview below the URL bar. | +| `collection_browser.position` (`POSTING_COLLECTION_BROWSER__POSITION`) | `"left"`, `"right"` (Default: `"left"`) | The position of the collection browser on screen. | | `pager` (`POSTING_PAGER`) | (Default: `$PAGER`) | Command to use for paging text. | | `pager_json` (`POSTING_PAGER_JSON`) | (Default: `$PAGER`) | Command to use for paging JSON. | | `editor` (`POSTING_EDITOR`) | (Default: `$EDITOR`) | Command to use for opening files in an external editor. | diff --git a/src/posting/config.py b/src/posting/config.py index 51e4646b..172d9888 100644 --- a/src/posting/config.py +++ b/src/posting/config.py @@ -83,6 +83,13 @@ class CommandPaletteSettings(BaseModel): """If enabled, the command palette will display a preview of the selected theme when the cursor is over it.""" +class CollectionBrowserSettings(BaseModel): + """Configuration for the collection browser.""" + + position: Literal["left", "right"] = Field(default="left") + """The position of the collection browser on screen.""" + + class Settings(BaseSettings): model_config = SettingsConfigDict( env_file=".env", @@ -130,6 +137,11 @@ class Settings(BaseSettings): url_bar: UrlBarSettings = Field(default_factory=UrlBarSettings) """Configuration for the URL bar.""" + collection_browser: CollectionBrowserSettings = Field( + default_factory=CollectionBrowserSettings + ) + """Configuration for the collection browser.""" + command_palette: CommandPaletteSettings = Field( default_factory=CommandPaletteSettings ) diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 867337be..8d839843 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -16,6 +16,7 @@ from textual.widgets.tree import TreeNode from posting.collection import Collection, RequestModel +from posting.config import SETTINGS from posting.help_screen import HelpData from posting.widgets.collection.new_request_modal import ( NewRequestData, @@ -435,6 +436,7 @@ def __init__( self.collection = collection def compose(self) -> ComposeResult: + self.styles.dock = SETTINGS.get().collection_browser.position self.border_title = "Collection" self.add_class("section") collection = self.collection From 448321f9d73fc6e93d4f6152d7493790ee47ec68 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:18:37 +0100 Subject: [PATCH 08/50] Catching duplicates --- src/posting/app.py | 1 + src/posting/widgets/collection/browser.py | 37 ++++++++++++++----- .../widgets/collection/new_request_modal.py | 31 ++++++++++++++++ 3 files changed, 60 insertions(+), 9 deletions(-) diff --git a/src/posting/app.py b/src/posting/app.py index b9880058..7ac58113 100644 --- a/src/posting/app.py +++ b/src/posting/app.py @@ -587,6 +587,7 @@ class Posting(App[None], inherit_bindings=False): "ctrl+c", "app.quit", description="Quit", + priority=True, ), Binding("f1,ctrl+question_mark", "help", "Help"), Binding("f8", "save_screenshot", "Save screenshot", show=False), diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 8d839843..57fb411c 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -8,6 +8,7 @@ from rich.text import Text, TextType from textual import on from textual.app import ComposeResult +from textual.binding import Binding from textual.containers import Vertical, VerticalScroll from textual.geometry import Region from textual.message import Message @@ -38,11 +39,16 @@ class CollectionTree(PostingTree[CollectionNode]): description="""\ Shows all `*.posting.yaml` request files resolved from the specified collection directory. Press `ctrl+n` to create a new request at the current cursor location. +Press `d` to duplicate the request under the cursor. `j` and `k` can be used to navigate the tree. `J` and `K` jumps between sub-collections. """, ) + BINDINGS = [ + Binding("d", "duplicate_request", "Duplicate Request"), + ] + COMPONENT_CLASSES = { "node-selected", } @@ -190,11 +196,11 @@ def on_node_selected(self, event: Tree.NodeSelected[CollectionNode]) -> None: self._clear_line_cache() self.refresh() - async def new_request_flow(self, initial_request: RequestModel | None) -> None: + async def new_request_flow(self, templated_from: RequestModel | None) -> None: """Start the flow to create a new request. Args: - initial_request: If the user has already started filling out request info + templated_from: If the user has already started filling out request info in the UI, then we can pre-fill the modal with that info. """ # Determine where in the tree the new request will live. @@ -238,10 +244,10 @@ def _handle_new_request_data(new_request_data: NewRequestData | None) -> None: file_name = new_request_data.file_name final_path = root_path / request_directory / f"{file_name}" - if initial_request is not None: + if templated_from is not None: # Ensure that any data which was filled by the user in the UI is included in the # node data, alongside the typed title and filename from the modal. - new_request = initial_request.model_copy( + new_request = templated_from.model_copy( update={ "name": request_name, "description": request_description, @@ -305,21 +311,23 @@ def _handle_new_request_data(new_request_data: NewRequestData | None) -> None: def post_new_request() -> None: self.screen.set_focus(focused_before) self.select_node(new_node) - self.scroll_to_node(new_node, animate=False) + if new_node is not None: + self.scroll_to_node(new_node, animate=False) self.call_after_refresh(post_new_request) - parent_path = parent_node.data.path + parent_path = parent_node.data.path if parent_node.data else None assert parent_path is not None, "parent should have a path" await self.app.push_screen( NewRequestModal( initial_directory=str( parent_path.resolve().relative_to(root_path.resolve()) ), - initial_title="" if initial_request is None else initial_request.name, + initial_title="" if templated_from is None else templated_from.name, initial_description="" - if initial_request is None - else initial_request.description, + if templated_from is None + else templated_from.description, + parent_node=parent_node, ), callback=_handle_new_request_data, ) @@ -348,6 +356,17 @@ def add_request( self.post_message(self.RequestAdded(request, parent_node, self)) return added_node + async def action_duplicate_request(self) -> None: + currently_open = self.cursor_node + if currently_open is None: + return + + current_request = currently_open.data + if not isinstance(current_request, RequestModel): + return + + await self.new_request_flow(templated_from=current_request) + def cache_request(self, request: RequestModel) -> None: def get_base_url(url: str) -> str | None: try: diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 00d556e0..3579be69 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -1,15 +1,21 @@ from dataclasses import dataclass +from typing import TYPE_CHECKING from textual import on from textual.app import ComposeResult from textual.binding import Binding from textual.containers import Horizontal, VerticalScroll from textual.screen import ModalScreen +from textual.validation import ValidationResult, Validator from textual.widgets import Button, Footer, Input, Label +from textual.widgets.tree import TreeNode from posting.save_request import FILE_SUFFIX, generate_request_filename from posting.widgets.input import PostingInput from posting.widgets.text_area import PostingTextArea +if TYPE_CHECKING: + from posting.widgets.collection.browser import CollectionNode + @dataclass class NewRequestData: @@ -79,6 +85,7 @@ def __init__( initial_directory: str, initial_title: str = "", initial_description: str = "", + parent_node: TreeNode["CollectionNode"] | None = None, name: str | None = None, id: str | None = None, classes: str | None = None, @@ -88,6 +95,7 @@ def __init__( self._initial_description = initial_description self._initial_directory = initial_directory self._generated_filename = "" + self._parent_node = parent_node def compose(self) -> ComposeResult: with VerticalScroll() as vs: @@ -165,6 +173,29 @@ def create_request(self) -> None: if not title: title = generated_filename + # Check if a request with the same name already exists in the collection. + if self._parent_node is not None: + parent_path = ( + self._parent_node.data.path if self._parent_node.data else None + ) + if parent_path is not None: + for path in parent_path.iterdir(): + stem = path.stem + i = stem.rfind(".") + if 0 < i < len(stem) - 1: + name = stem[:i] + new_file_stem = file_name[: len(file_name) - len(FILE_SUFFIX)] + print(name, new_file_stem) + if name == new_file_stem: + # Don't create duplicates. Notify and return. + self.notify( + "A request with this name already exists.", + severity="error", + ) + return + else: + continue + self.dismiss( NewRequestData( file_name=file_name, From a690e4996a3198156e597a261418217764d1c97b Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:19:58 +0100 Subject: [PATCH 09/50] Focus filename input when duplicate name for new file --- src/posting/widgets/collection/new_request_modal.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 3579be69..6473e598 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -159,7 +159,8 @@ def action_create_request(self) -> None: self.create_request() def create_request(self) -> None: - file_name = self.query_one("#file-name-input", Input).value + file_name_input = self.query_one("#file-name-input", Input) + file_name = file_name_input.value directory = self.query_one("#directory-input", Input).value description = self.query_one("#description-textarea", PostingTextArea).text @@ -192,6 +193,7 @@ def create_request(self) -> None: "A request with this name already exists.", severity="error", ) + file_name_input.focus() return else: continue From 40950d791436cb9bfe23098b20cc7b6c0d91be4e Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:26:16 +0100 Subject: [PATCH 10/50] Factoring out _file_exists check --- .../widgets/collection/new_request_modal.py | 39 +++++++++++-------- 1 file changed, 22 insertions(+), 17 deletions(-) diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 6473e598..1dd9e072 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -1,4 +1,5 @@ from dataclasses import dataclass +from pathlib import Path from typing import TYPE_CHECKING from textual import on from textual.app import ComposeResult @@ -180,23 +181,12 @@ def create_request(self) -> None: self._parent_node.data.path if self._parent_node.data else None ) if parent_path is not None: - for path in parent_path.iterdir(): - stem = path.stem - i = stem.rfind(".") - if 0 < i < len(stem) - 1: - name = stem[:i] - new_file_stem = file_name[: len(file_name) - len(FILE_SUFFIX)] - print(name, new_file_stem) - if name == new_file_stem: - # Don't create duplicates. Notify and return. - self.notify( - "A request with this name already exists.", - severity="error", - ) - file_name_input.focus() - return - else: - continue + exists = self._file_exists(file_name, parent_path) + if exists: + self.notify( + "A request with this name already exists.", + severity="error", + ) self.dismiss( NewRequestData( @@ -206,3 +196,18 @@ def create_request(self) -> None: directory=directory, ) ) + + def _file_exists(self, file_name: str, parent_directory: Path) -> bool: + for path in parent_directory.iterdir(): + stem = path.stem + i = stem.rfind(".") + if 0 < i < len(stem) - 1: + name = stem[:i] + new_file_stem = file_name[: len(file_name) - len(FILE_SUFFIX)] + if name == new_file_stem: + # Don't create duplicates. Notify and return. + return True + else: + continue + + return False From 2e42c934145e31e02fb1eb4c78ad2caf293c740b Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:34:04 +0100 Subject: [PATCH 11/50] Update collection browser description --- src/posting/widgets/collection/browser.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 57fb411c..ca0d3c9d 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -38,10 +38,11 @@ class CollectionTree(PostingTree[CollectionNode]): title="Collection Browser", description="""\ Shows all `*.posting.yaml` request files resolved from the specified collection directory. -Press `ctrl+n` to create a new request at the current cursor location. -Press `d` to duplicate the request under the cursor. -`j` and `k` can be used to navigate the tree. -`J` and `K` jumps between sub-collections. +- Press `ctrl+n` to create a new request at the current cursor location. +- Press `d` to quickly duplicate the request under the cursor (without showing the request info modal). +- Press `D` (`shift`+`d`) to duplicate the request under the cursor (showing the request info modal so you can edit title/description/directory). +- `j` and `k` can be used to navigate the tree. +- `J` and `K` jumps between sub-collections. """, ) From 0c855fb6fbd94bdb8025ab5d43fc427ce533e9d9 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:54:22 +0100 Subject: [PATCH 12/50] Upgrade Textual to 0.76.0 --- pyproject.toml | 2 +- requirements-dev.lock | 2 +- requirements.lock | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 6e3b5444..e3198f5f 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -16,7 +16,7 @@ dependencies = [ "pydantic-settings==2.3.4", "python-dotenv==1.0.1", "textual-autocomplete==3.0.0a9", - "textual[syntax]==0.74.0", + "textual[syntax]==0.76.0", ] readme = "README.md" requires-python = ">= 3.11" diff --git a/requirements-dev.lock b/requirements-dev.lock index 4947cb04..423e046d 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -156,7 +156,7 @@ sniffio==1.3.1 # via httpx syrupy==4.6.1 # via pytest-textual-snapshot -textual==0.74.0 +textual==0.76.0 # via posting # via pytest-textual-snapshot # via textual-autocomplete diff --git a/requirements.lock b/requirements.lock index 8f3ace48..0dbede75 100644 --- a/requirements.lock +++ b/requirements.lock @@ -63,7 +63,7 @@ rich==13.7.1 sniffio==1.3.1 # via anyio # via httpx -textual==0.74.0 +textual==0.76.0 # via posting # via textual-autocomplete textual-autocomplete==3.0.0a9 From d813c5b531045f73ac450a9e279b7c02c43595c5 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 19:55:25 +0100 Subject: [PATCH 13/50] Block creating requests with duplicate name --- src/posting/widgets/collection/new_request_modal.py | 1 + 1 file changed, 1 insertion(+) diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 1dd9e072..f4bd7400 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -187,6 +187,7 @@ def create_request(self) -> None: "A request with this name already exists.", severity="error", ) + return self.dismiss( NewRequestData( From 1efcb2c66529a8a1d891179d8199618ece20cf2a Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 22:35:02 +0100 Subject: [PATCH 14/50] Quick duplicating requests --- src/posting/files.py | 91 +++++++++++++++++++ src/posting/save_request.py | 1 + src/posting/widgets/collection/browser.py | 61 +++++++++++-- .../widgets/collection/new_request_modal.py | 20 +--- .../widgets/request/request_options.py | 2 +- 5 files changed, 150 insertions(+), 25 deletions(-) create mode 100644 src/posting/files.py diff --git a/src/posting/files.py b/src/posting/files.py new file mode 100644 index 00000000..9a3a0bb3 --- /dev/null +++ b/src/posting/files.py @@ -0,0 +1,91 @@ +from pathlib import Path + +from posting.save_request import FILE_SUFFIX + + +def get_request_file_stem_and_suffix(file_name: str) -> tuple[str, str]: + if file_name.endswith(FILE_SUFFIX) or file_name.endswith("posting.yml"): + file_name_parts = file_name.split(".") + file_suffix = ".".join(file_name_parts[-2:]) + file_stem = ".".join(file_name_parts[:-2]) + else: + raise ValueError(f"Not a request file: {file_name}") + return file_stem, file_suffix + + +def request_file_exists(file_name: str, parent_directory: Path) -> bool: + """Return True if a file with the same stem exists in the given parent directory, otherwise False. + + Args: + file_name (str): The name of the file to check for. + parent_directory (Path): The parent directory to check in. + + Returns: + bool: True if a file with the same stem exists in the given parent directory, otherwise False. + """ + for path in parent_directory.iterdir(): + if not path.name.endswith(FILE_SUFFIX) or path.name.endswith("posting.yml"): + continue + + stem = path.stem + i = stem.rfind(".") + if 0 < i < len(stem) - 1: + name = stem[:i] + file_stem, _ = get_request_file_stem_and_suffix(file_name) + if name == file_stem: + return True + else: + continue + + return False + + +def get_unique_request_filename(file_name: str, parent_directory: Path) -> str: + """ + Generate a unique filename by appending a number if the file already exists. + + Args: + file_name (str): The original filename. + parent_directory (Path): The directory where the file will be saved. + + Returns: + str: A unique filename with a number appended if necessary. + """ + if not request_file_exists(file_name, parent_directory): + return file_name + + file_stem, _ = get_request_file_stem_and_suffix(file_name) + + # Check for existing numbered files to determine pad width and next number + existing_files = set(parent_directory.glob(f"{file_stem}*posting.yaml")) | set( + parent_directory.glob(f"{file_stem}*posting.yml") + ) + existing_file_names = {f.name for f in existing_files} + + # Keep checking candidate file names until we find a unique one. + candidate_name = file_name + while candidate_name in existing_file_names: + # get the highest number + try: + candidate_stem, _ = get_request_file_stem_and_suffix(candidate_name) + print("candidate_stem", candidate_stem) + except ValueError: + # Not a request file. + continue + + split_candidate_stem = candidate_stem.rsplit("-", 1) + if len(split_candidate_stem) == 2: + try: + width = len(split_candidate_stem[1]) + number = int(split_candidate_stem[1]) + except ValueError: + width = 2 + number = 0 + else: + width = 2 + number = 0 + + number = int(number) + 1 + candidate_name = f"{file_stem}-{number:0{width}d}.posting.yaml" + + return candidate_name diff --git a/src/posting/save_request.py b/src/posting/save_request.py index e9c12ce5..7a3e5d0f 100644 --- a/src/posting/save_request.py +++ b/src/posting/save_request.py @@ -14,4 +14,5 @@ def slugify(text: str) -> str: def generate_request_filename(request_title: str) -> str: """Generate a filename for a request, NOT including the file suffix.""" + print("generating request filename for title", request_title) return slugify(request_title) diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index ca0d3c9d..9d1d3fe8 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -18,7 +18,9 @@ from posting.collection import Collection, RequestModel from posting.config import SETTINGS +from posting.files import get_unique_request_filename from posting.help_screen import HelpData +from posting.save_request import generate_request_filename from posting.widgets.collection.new_request_modal import ( NewRequestData, NewRequestModal, @@ -39,15 +41,26 @@ class CollectionTree(PostingTree[CollectionNode]): description="""\ Shows all `*.posting.yaml` request files resolved from the specified collection directory. - Press `ctrl+n` to create a new request at the current cursor location. -- Press `d` to quickly duplicate the request under the cursor (without showing the request info modal). -- Press `D` (`shift`+`d`) to duplicate the request under the cursor (showing the request info modal so you can edit title/description/directory). +- Press `d` to duplicate the request under the cursor (showing the request info modal so you can edit title/description/directory). +- Press `D` (`shift`+`d`) to quickly duplicate the request under the cursor (without showing the request info modal). - `j` and `k` can be used to navigate the tree. - `J` and `K` jumps between sub-collections. """, ) BINDINGS = [ - Binding("d", "duplicate_request", "Duplicate Request"), + Binding( + "d", + "duplicate_request", + "Dupe", + # tooltip="Duplicate the request under the cursor and show the 'New Request' modal to change the name/description.", + ), + Binding( + "x", + "quick_duplicate_request", + "Quick Dupe", + # tooltip="Duplicate the request and automatically assign a unique name.", + ), ] COMPONENT_CLASSES = { @@ -358,16 +371,52 @@ def add_request( return added_node async def action_duplicate_request(self) -> None: - currently_open = self.cursor_node - if currently_open is None: + cursor_node = self.cursor_node + if cursor_node is None: return - current_request = currently_open.data + current_request = cursor_node.data if not isinstance(current_request, RequestModel): return await self.new_request_flow(templated_from=current_request) + def action_quick_duplicate_request(self) -> None: + print("===== ===== == foo") + cursor_node = self.cursor_node + if cursor_node is None: + return + + cursor_request = cursor_node.data + if not isinstance(cursor_request, RequestModel): + return + + original_path = cursor_request.path if cursor_request.path is not None else None + if not original_path: + return + + new_name = cursor_request.name + new_filename = generate_request_filename(new_name) + ".posting.yaml" + + print("new_filename", new_filename) + + new_filename = get_unique_request_filename(new_filename, original_path.parent) + + new_path = ( + (original_path.parent / new_filename) + if original_path + else Path(new_filename) + ) + cursor_request_copy = cursor_request.model_copy( + update={"name": new_name, "path": new_path} + ) + cursor_request_copy.save_to_disk(new_path) + self.add_request( + request=cursor_request_copy, + parent_node=cursor_node.parent if cursor_node.parent else self.root, + after=cursor_node, + ) + def cache_request(self, request: RequestModel) -> None: def get_base_url(url: str) -> str | None: try: diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index f4bd7400..602db724 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -6,9 +6,9 @@ from textual.binding import Binding from textual.containers import Horizontal, VerticalScroll from textual.screen import ModalScreen -from textual.validation import ValidationResult, Validator from textual.widgets import Button, Footer, Input, Label from textual.widgets.tree import TreeNode +from posting.files import request_file_exists from posting.save_request import FILE_SUFFIX, generate_request_filename from posting.widgets.input import PostingInput @@ -181,8 +181,7 @@ def create_request(self) -> None: self._parent_node.data.path if self._parent_node.data else None ) if parent_path is not None: - exists = self._file_exists(file_name, parent_path) - if exists: + if request_file_exists(file_name, parent_path): self.notify( "A request with this name already exists.", severity="error", @@ -197,18 +196,3 @@ def create_request(self) -> None: directory=directory, ) ) - - def _file_exists(self, file_name: str, parent_directory: Path) -> bool: - for path in parent_directory.iterdir(): - stem = path.stem - i = stem.rfind(".") - if 0 < i < len(stem) - 1: - name = stem[:i] - new_file_stem = file_name[: len(file_name) - len(FILE_SUFFIX)] - if name == new_file_stem: - # Don't create duplicates. Notify and return. - return True - else: - continue - - return False diff --git a/src/posting/widgets/request/request_options.py b/src/posting/widgets/request/request_options.py index e36473ce..5aa54924 100644 --- a/src/posting/widgets/request/request_options.py +++ b/src/posting/widgets/request/request_options.py @@ -107,7 +107,7 @@ def compose(self) -> ComposeResult: value=str(self.options.timeout), id="timeout", type="number", - validate_on=["changed"], + validate_on={"changed"}, ) # A panel which the description of the option will be From 40058475b7cf7762c54d95b33ced40a3aedf6616 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 22:36:43 +0100 Subject: [PATCH 15/50] Removing some debugging, updating quick dupe key --- src/posting/files.py | 1 - src/posting/widgets/collection/browser.py | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/src/posting/files.py b/src/posting/files.py index 9a3a0bb3..a2671682 100644 --- a/src/posting/files.py +++ b/src/posting/files.py @@ -68,7 +68,6 @@ def get_unique_request_filename(file_name: str, parent_directory: Path) -> str: # get the highest number try: candidate_stem, _ = get_request_file_stem_and_suffix(candidate_name) - print("candidate_stem", candidate_stem) except ValueError: # Not a request file. continue diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 9d1d3fe8..ada6a409 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -56,7 +56,7 @@ class CollectionTree(PostingTree[CollectionNode]): # tooltip="Duplicate the request under the cursor and show the 'New Request' modal to change the name/description.", ), Binding( - "x", + "D", "quick_duplicate_request", "Quick Dupe", # tooltip="Duplicate the request and automatically assign a unique name.", @@ -382,7 +382,6 @@ async def action_duplicate_request(self) -> None: await self.new_request_flow(templated_from=current_request) def action_quick_duplicate_request(self) -> None: - print("===== ===== == foo") cursor_node = self.cursor_node if cursor_node is None: return From f89793268c4cf3c22a5289a2e0c2b2d85dcf14dd Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 22:46:55 +0100 Subject: [PATCH 16/50] Fix help screen --- .coverage | Bin 53248 -> 53248 bytes src/posting/help_screen.py | 17 +++++++++++------ src/posting/widgets/datatable.py | 4 ++-- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.coverage b/.coverage index 16f5fb9a6e0e292720a3a33ab88487156ce0413e..4a486d129bcec59feb0cecdf3a13097be154d0df 100644 GIT binary patch delta 2968 zcmZvedvH|M9mmhz-%a-3z4xB8*=+WeeUtZV^CG+x9s?$uq=2m>9UdXXH3Trh1SoVQ z2~|$3rXX`VjvWRFGuDB&0~n@`N*Urdi&v}Ov$y!yFhZizWUV~s8USKJU4IQVdHsYsZnZZ`aks{eV@KT zuhX-%aqXP;y4I^bp_OXL@{y(A(r&4-XzF?Oi2AI$MD;5-mA93hN~(b=N{{;2s&R8=aTUG+7?cq_D zO`XjxF&@b;X8Y?3q$+>`9MC7xmRnD1oEcI47d(xT7ovg`f>+0>&6xLIpDTe{Y#MA@zZYjh*s1L}& z$<;uEO%4EhOvH;D(j-5tX~>d%?1_f3?420sWv?})$(ewbC+D{|HMO<3ZE9-bd-Hn$ zEl3X4H+9C6n+>`FJtAslHd-VXujOQO8V%W*d>uT`XlviNc@s~pascWQi5D6*cBIkH z)-?tlPCKBf55J!$+cw0yj-P5=XzHm_0Fi5ChzyWl5f4GeZ}IPxkT#&q$MbO>zN*Fa zsPTdV7?XB<+W3krB~|$6+PB8L#-n(RQKo0>`z>?zr?fInvYfLVv~*Z>^;7jZSHrQh$ZsoAhtVokLnsgmtj z=94Pefn}9)c^R~_c`Gv5k~$l2Av61ASvc83@IZIVk#cC8OyXxa(J>_j@M9tNM-_Im z&LS7*!{b62<{elxIix>oWuB--F06p{_tUMcF{;T0CD8o+_-#=v=TA=AA9c%l5onoA z*Vc4Av5mit+=sR1&70P8E$4xzu$lEl&VDeD!q(NNOIfUYd8Rz26k?*@K)ov^9DoJM zv&oc0lWPXvJHb47Oym?dSfv1~UXhjJ4?~^AS{wYbZ?ZsgyRS7^Wp5!YpIkqAsM|7m z@uaTZZ#GW|9uaw&jjH74Rb9N-blJt=!sJ?pQr-8qhe|P!Sj;_Ir_n*5X+dnxPJJ^v(eCE8dKs~LW zMX2wqFXx;`=hqlflq#t?bgnF^Kd59c_Jw+Ew1hi3VZU-Lkw_dl8bBMneKtBJDLUgH z{GsOJ+4pZ(hpy!Qt`NsMe?bzpJq_C8smAs)14V~vD;B&rcQ2KwP=Qg zI=JPqoc`g=kQ}BN+*zb{9~-^Cdhb)`YxaKl#et`uY`O5p-%?j!_$Ck-zCt7iwX>tU z9eOHF=gHV?@lhMQ_kz!1rfJEdDeb1|)XJ?+IUY$LX6JUhHlVF%?tVSXo7{A&>(9{s3EH=P9DmS_(4}3NhlMhwS1IJSoX4# ztLV;swRF@xVa<%N!9M4l2`5}q4GOK{bBGFNTAf@Vub|R7+?uFhrn8eOui&M#xFssM z-7~qF9M4z$-N~kVW+RWz;L@YTY_u=CXF4}+MPKB~K01w?vkSW`_>}y)e(&z3uAa5# zzF$g*dPi>EBD9Lfg9Vq|2o?O}=!p}c)2UqX93a%IAzTF4=+vkb)K*+w)N6Wd~Gdm}KMuR(BcJLEA6S(x&81f?&zk+(l zF)iZ>{_IO`Y4F=MLw7VQE#*Qu>znr>K6Du+{&?4IrV%b#r<{=pE#_7*)Gdu(ygT~x z<(qzu7IDQDT;(5raS&2zA@^`#z()(XG20)H@lD=lsk`i{`CMrCvEZ(}O`CaE+xIXY9)X%06$o)Q?Yk?w&?v$<<`ud05haw*LcUyLiBh$Y{# zcvfFJIess(a%&pXL{pl_&(^Hhc%)#y9RS2chF0>z|AsGhemIfd&NA&=o;lvXa|K7PeWc5i|i7 zEQ2|MMKE137b*n9P$KAqd_fmv32NXJw17iUg$zLj?3_KS$qea2NClf<3Zx0jU=;)) zsrrW>a~6(HmI I*cny&52zahA^-pY delta 2913 zcmZ9N4OEm>8prQD&wRWy@7F+s%m6bC2#A0T!+@aT3`#2CAYoY|^4%OI`H~qkY-7f( zS1ViX+&!IKljxkzsoibUbXUudBwI84pxSNIT@@*7Ep1V0H$Y=%?|U_)eb1TsJI0>X2WtrivF7Zg#LMbi@rdwVgJVVvLSW_JBy9q7iIjNZeBt@ zAdkPR+0ohI545zea`@M+TIKTxd|m$R&hErKKno^USGTNM-AX=z`gL8cq#?zHOG;Cj zT-;J>RXYK-;cKN7=w*`i&GPA@L9FZ0-ZLMw~CEix;>azFAnqCWxZcF1{~Zld7bd;$}WZ zct?0jY!b?OH-ErT&C6Ul7iYL+IB3{nNY#(%cj>kILiRKE1^oj8=-(4k`3u}{xy$TE z;9}}B zHj|D!Ryc`oUR>c|((tF`I~6lE4km>RaapIv!yIPv6;JX)GTvB|la!PQCBNwSKNHx= zi&L8H=Cx8i^}6!fiX4Z%rmlc0(+7*4ptCwMkF_e!A3c2h@6!+xS}KG8{u(EMLN% zl8$p98AiFkNUusya0j?QN~^h-qzdjCZle^>trtHt91~B9e-azGHDVRlWEc|7!WdUA zToO(T?{JmE9?mUn7rKQ;VX06o*o7GW5`T(+gUjPzj z0ubKT5y?U!SM^Zj#O`p%;OV32r^kN+^>0{k>fr0Ig%s(P;^sqdT{yG>8C57=zEjQU z3r*pH2^ULhp_e10?%f~1oI5r!==7N6#iW`MAAZC(RNv#-3aZfff(FSd&m?kDP&>S% zS@nIByLa=ZeP5f!_Cl?=a;uyVLN&=I)&i!_tPM%NVT4VIH zk{}n8Fv0j>_L=YgTj^kpvWMi!Quw&h8=0}P&OI8`%5#Y%3XD#kLjogL9%GPalW2at!Mnok#A4!{p3I- z_;2n%FRFd=Dumu0`@z-((bg-mC>C9HAT+dwA!nP$=$E+g)hBIi zn%qp&Cyvx#*9qzJN+K=I!tm?V zU=0bQGygSBZIxG$uqdO)rCcsT7q5>G`h%-=Tc2iL30)Z;mgH(uw@)9mAe3=-_n||; z%gc!pmmZ#V6x~RL82LVuW=#uEtXhcrgO8ni6(hhEg-u8J&*#bhQ zPOH3($PW~yh6gwpdvGJs2NDP097Q&S!e5}!4WoQFX-J;>!v_#Pc^*X$k6WVUDk7yN z+1NdiNaVHMiKw&3D#>>d(QfZyM$V0oJbV5-8z)y1#hh4Y8+xiAta1g(imceaEl%qt zVS55D-sW`jav4eDEZH#RVXi}!yh!;gNRAChe2RtX(=d2s{CcF8jYJ9xR^oweS;3vx zM!r1GMav7x*t99(5C7~r_wfhA7dM?B)v)pcB1Xrg?NZ$-mnf65cZ4I>9YqcQj9lJX zFtHZpJiPw%4Vu#@>O{u7c*>q^mfb|o6~nHf;PAOa;ncCW+ze8qx_+?9MWp1$ zm0PC-dm?`ayF82J^YuM@MlLq&Y&-4Q`H|<$hwtuhYeW0nBG(vO*f>QlBrVx&-Pv7+ zvA0L-c5HjJG88=M(G|*hq|l`fJ6vBqG|=69an}o6XkXj@w&t2q)zwX?FVZ^iX!pSQ z_j3}I!_u0EM~_NhpH|uX83V~pF0loP-QrsD6Y)Kx}fLh8dSV@@)HIx~! zf-)VJQ%-~XDAV9x%2ZfJITh}vOopYpptA2IsG@=$?xM885=tvnP$qzvG9DIFTA+;5 z45gH@u!wRBEToKq1(YVZlkyHIp^S$4lu}7 dHl-eB?d? ComposeResult: yield HelpModalHeader(f"[b]{name}[/] Help") bindings = widget._bindings - keys: list[tuple[str, Binding]] = [ - binding for binding in bindings.keys.items() - ] + keys: list[tuple[str, list[Binding]]] = list( + bindings.key_to_bindings.items() + ) if keys: yield Label(" [b]All Keybindings[/]", id="bindings-title") @@ -175,15 +175,20 @@ def compose(self) -> ComposeResult: ) table.cursor_vertical_escape = False table.add_columns("Key", "Description") - for key, binding in keys: + for key, bindings in keys: table.add_row( Text( - binding.key_display or self.app.get_key_display(key), + ", ".join( + binding.key_display + if binding.key_display + else self.app.get_key_display(key) + for binding in bindings + ), style="bold", no_wrap=True, end="", ), - binding.description.lower(), + bindings[0].description.lower(), ) yield table diff --git a/src/posting/widgets/datatable.py b/src/posting/widgets/datatable.py index 47686f8f..78527506 100644 --- a/src/posting/widgets/datatable.py +++ b/src/posting/widgets/datatable.py @@ -9,7 +9,7 @@ from textual.widgets.data_table import CellDoesNotExist, CellKey, RowKey -class PostingDataTable(DataTable[str]): +class PostingDataTable(DataTable[str | Text]): DEFAULT_CSS = """\ PostingDataTable { &.empty { @@ -54,7 +54,7 @@ def control(self) -> "PostingDataTable": def add_row( self, - *cells: str, + *cells: str | Text, height: int | None = 1, key: str | None = None, label: str | Text | None = None, From 050750cd9d476a2b593783adf7c88543407e4a6c Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 22:50:32 +0100 Subject: [PATCH 17/50] Updating snapshot tests --- .coverage | Bin 53248 -> 53248 bytes ...alette.test_can_type_to_filter_options.svg | 179 +++++++------- ..._set_on_startup_and_in_command_palette.svg | 185 +++++++------- .../TestJumpMode.test_focus_switch.svg | 176 ++++++------- ...test_request_loaded_into_view__headers.svg | 212 ++++++++-------- ..._tree_correctly_and_notification_shown.svg | 172 ++++++------- .../TestSendRequest.test_send_request.svg | 234 +++++++++--------- ...solved_variables_highlight_and_preview.svg | 195 +++++++-------- 8 files changed, 676 insertions(+), 677 deletions(-) diff --git a/.coverage b/.coverage index 4a486d129bcec59feb0cecdf3a13097be154d0df..a6c31fd4b662c4487e50426730a63911165591f6 100644 GIT binary patch delta 1429 zcmXZaTTB#J7zgk(`z?E$+e(+qavAOmuDGCBQ!8DH7gR(M@eVE^qN0E(#%dFG)>=;! zSwfphZ2ABa(gz<}wURa}ZNUfIcqvWVmp0|rmX;=%#n80eWVVOT?#u80{m(fwvy%yQ zL!cYpkLR2pBy8lIpH=s$P2*&Z?E(?6h^K59#9YxOnuJART<90>2secH1iw%#>=ND- zB*Dnv=6m=L`SW~@{0YC8FXG?eU2=1DN}ozyQc!A;YNWMN znq(B`#gI5I{%rfJcbR>`YOlYN8Bu?wBBGwk5nMgps9n6ej+@kaujZQCiP1&RX_Hs8 z)FVdD>Pl5Cx5MG^&09&N*`Mg3m8^6p=&j0FmA@behQQqBYS~09SS`hK0zJe+T$~5S z3b=W&(t~VtIDOs+Ya;1>mR&LW)6WZrzkd>%xI8)&q0oJ-^hWDbzv)gRA!Ojk@Kmes zdTHJB&Xm?~?_Nr>(7kL&WR$DZ#M3=2#yTEnaznDUjFxNX+R}xnyV*qXE*kvP6O-D< zZE5^&w#goOP0pcZ+7E53N_Me1!G7NJ%d>wE=+Z9I>n^QerU=OqSRn@#%%%Y8&-tJZ# z*g|CXpP9x)dWyyT75+SSC-$3|pBrgWPnd)4+>O9gC?wO9Y(3dM;v~d9bgQoq1X|CU zxaIn~ezK4OQS<~Gv$OQY<3(gZeRsHZ;jO8V$LpZSS?|ugAB3)^LbCLq32`(h(qpVv z^IiHN53}blv3@XVL9Dk(&PR6VM-xlJJ*v zPBX1#l|5~clW7f0$tiwrdU$U7+UPTdr`4>9P4+2cZA+g<6`Q1_JBifCLcXHcvB!9> zxjG!&VQqcKS}3CjdT({ylhh4nw!yFp&Y;=QfM&vRG!>4ZiEtQ=g##!L+ff@7qgL34 zT3{<`hApTGiqHtyj2dAR3b4_{z6k@Ug*dN)b7&s4psV35nhVWn4xC0k(1fmpMsx+7 zLfvo@T@LkV7Mws`a170WIy4=QqG?czrl?SZAsMRCB&b3a@SzD%iN-?(8V83^Cmcj$ vU_TlS`_L%Zi#lKr`U;ezk+2(G24$!ncA@bylwy!zCn~}YRDhD6?%e+XJcnbW delta 1328 zcmXZaS!i5U7zgls^UZ$Onapx$pUj>~GF$egGu0wUD1@L$L77%dAM%ne4?)mog3^Oz zwOlCpkec>Qkft^C!K5{b(uY`SL0<%$W@xAutcgT4Nux8K`=$5g_dox0znQy@&B53l zeClPD%f4f*a_iLf^6(R;%`(CWuL?=a2>%Da$$!T$^4Ite`Lp~P{&l{{M|msHau2zC z+~ZNs1&%thmit#i!zr;;MK}92YN$r^P`rC&q;X;hC@| zEDH<57s6G`vjwYsU>1iiCG@O$=+fJIc8Eyo2jkuBrh0okYwBkVtT|4Os=tpX-%aai z4hKv(Yqi>q`5<#{)NdmZt#nm?xLsU-cz^4+k2iMp9ulTyhqJoSE!nd^60h?6F#<@+~!8gyaeP`{mwM(ngon@W#nEqklG zrO#$Q8W<}t7L5i{Pd7xP#ZPRic`9hPYCobMuInN)O&4_4OnpV|n^HW?`w#a2>h)cv3ic;k8J0%%NLOa{b@+3}!$CHLik$nMX5~EAIyHr?h8zj+% z`I)c9vS_4TT@H?*&CrD=pcM^68uddXsz4Owz=c}CiJHNIn!t`4p&m7W4b_7c)q#ux zNCx^9)InLmbsHQ-TcL>Np@3$g56wU?nuZ><1-j8D=tNV{fi^-rnuInq4tX>NIW!7c zGy)m4p$sh;LePu`p$QE@3iUw}^+E#mKpb^L40S;SbwU_*Km%%r5LypG)CK|63Vu`u VAL^CBi$MerDu5g1LAgGc{U7{77;pdp diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg index 0cde64f3..df60329b 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg @@ -19,166 +19,165 @@ font-weight: 700; } - .terminal-2331259748-matrix { + .terminal-4097681083-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2331259748-title { + .terminal-4097681083-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2331259748-r1 { fill: #b2b2b4 } -.terminal-2331259748-r2 { fill: #c5c8c6 } -.terminal-2331259748-r3 { fill: #dfdfe0 } -.terminal-2331259748-r4 { fill: #cc75b0 } -.terminal-2331259748-r5 { fill: #100d18;text-decoration: underline; } -.terminal-2331259748-r6 { fill: #100d18 } -.terminal-2331259748-r7 { fill: #352b49 } -.terminal-2331259748-r8 { fill: #33314e } -.terminal-2331259748-r9 { fill: #ff69b4 } -.terminal-2331259748-r10 { fill: #b5b5b9 } -.terminal-2331259748-r11 { fill: #bfb5c8 } -.terminal-2331259748-r12 { fill: #7f7f84 } -.terminal-2331259748-r13 { fill: #210d17 } -.terminal-2331259748-r14 { fill: #4f2442 } -.terminal-2331259748-r15 { fill: #7b7b88;font-weight: bold } -.terminal-2331259748-r16 { fill: #b5b5b9;font-weight: bold } -.terminal-2331259748-r17 { fill: #dfdfe0;font-weight: bold } -.terminal-2331259748-r18 { fill: #fed700;font-weight: bold } -.terminal-2331259748-r19 { fill: #54545c } -.terminal-2331259748-r20 { fill: #6f6f75 } -.terminal-2331259748-r21 { fill: #1d1d28 } -.terminal-2331259748-r22 { fill: #1d1c34 } -.terminal-2331259748-r23 { fill: #6f6f75;font-weight: bold } -.terminal-2331259748-r24 { fill: #00934c } -.terminal-2331259748-r25 { fill: #74707d } -.terminal-2331259748-r26 { fill: #242430;font-weight: bold } -.terminal-2331259748-r27 { fill: #242430 } -.terminal-2331259748-r28 { fill: #808084 } -.terminal-2331259748-r29 { fill: #141420 } -.terminal-2331259748-r30 { fill: #923e6c } -.terminal-2331259748-r31 { fill: #6c6c72 } -.terminal-2331259748-r32 { fill: #828287 } -.terminal-2331259748-r33 { fill: #5f5f66 } -.terminal-2331259748-r34 { fill: #181824 } -.terminal-2331259748-r35 { fill: #038f5d;font-weight: bold } -.terminal-2331259748-r36 { fill: #cc64a0;font-weight: bold } -.terminal-2331259748-r37 { fill: #afafb0 } + .terminal-4097681083-r1 { fill: #b2b2b4 } +.terminal-4097681083-r2 { fill: #c5c8c6 } +.terminal-4097681083-r3 { fill: #dfdfe0 } +.terminal-4097681083-r4 { fill: #cc75b0 } +.terminal-4097681083-r5 { fill: #100d18;text-decoration: underline; } +.terminal-4097681083-r6 { fill: #100d18 } +.terminal-4097681083-r7 { fill: #352b49 } +.terminal-4097681083-r8 { fill: #33314e } +.terminal-4097681083-r9 { fill: #ff69b4 } +.terminal-4097681083-r10 { fill: #b5b5b9 } +.terminal-4097681083-r11 { fill: #bfb5c8 } +.terminal-4097681083-r12 { fill: #7f7f84 } +.terminal-4097681083-r13 { fill: #4f2442 } +.terminal-4097681083-r14 { fill: #7b7b88;font-weight: bold } +.terminal-4097681083-r15 { fill: #b5b5b9;font-weight: bold } +.terminal-4097681083-r16 { fill: #dfdfe0;font-weight: bold } +.terminal-4097681083-r17 { fill: #fed700;font-weight: bold } +.terminal-4097681083-r18 { fill: #54545c } +.terminal-4097681083-r19 { fill: #6f6f75 } +.terminal-4097681083-r20 { fill: #1d1d28 } +.terminal-4097681083-r21 { fill: #1d1c34 } +.terminal-4097681083-r22 { fill: #6f6f75;font-weight: bold } +.terminal-4097681083-r23 { fill: #00934c } +.terminal-4097681083-r24 { fill: #74707d } +.terminal-4097681083-r25 { fill: #242430;font-weight: bold } +.terminal-4097681083-r26 { fill: #242430 } +.terminal-4097681083-r27 { fill: #808084 } +.terminal-4097681083-r28 { fill: #141420 } +.terminal-4097681083-r29 { fill: #923e6c } +.terminal-4097681083-r30 { fill: #6c6c72 } +.terminal-4097681083-r31 { fill: #828287 } +.terminal-4097681083-r32 { fill: #5f5f66 } +.terminal-4097681083-r33 { fill: #181824 } +.terminal-4097681083-r34 { fill: #038f5d;font-weight: bold } +.terminal-4097681083-r35 { fill: #cc64a0;font-weight: bold } +.terminal-4097681083-r36 { fill: #afafb0 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -view -╭─ Collection── Request ─╮ - GET echoview: expand request                           tions - GET get ranExpand the request section━━━━━━━━━━━━ - POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ - GET getToggle the collection browserd header  - GET get────────────╯ - POS create       │╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GET Send  +view                                          +╭─ Collection── Request ─╮ + GET echoview: expand request                           tions + GET get ranExpand the request section━━━━━━━━━━━━ + POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ + GET getToggle the collection browserd header  + GET get────────────╯ + POS create       │╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg index 316c2ba8..972dae2e 100644 --- a/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg +++ b/tests/__snapshots__/test_snapshots/TestCustomThemeSimple.test_theme_set_on_startup_and_in_command_palette.svg @@ -19,169 +19,168 @@ font-weight: 700; } - .terminal-3208220446-matrix { + .terminal-3572088326-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3208220446-title { + .terminal-3572088326-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3208220446-r1 { fill: #171819 } -.terminal-3208220446-r2 { fill: #c5c8c6 } -.terminal-3208220446-r3 { fill: #17191a } -.terminal-3208220446-r4 { fill: #cc4940 } -.terminal-3208220446-r5 { fill: #b0c2c4;text-decoration: underline; } -.terminal-3208220446-r6 { fill: #b0c2c4 } -.terminal-3208220446-r7 { fill: #7aafb5 } -.terminal-3208220446-r8 { fill: #d22f2f } -.terminal-3208220446-r9 { fill: #1a1a1a } -.terminal-3208220446-r10 { fill: #b4bfc8 } -.terminal-3208220446-r11 { fill: #484c50 } -.terminal-3208220446-r12 { fill: #f9e3e3 } -.terminal-3208220446-r13 { fill: #a82525 } -.terminal-3208220446-r14 { fill: #171819;font-weight: bold } -.terminal-3208220446-r15 { fill: #b08a90 } -.terminal-3208220446-r16 { fill: #ba7b7b;font-weight: bold } -.terminal-3208220446-r17 { fill: #c7b5b5;font-weight: bold } -.terminal-3208220446-r18 { fill: #17191a;font-weight: bold } -.terminal-3208220446-r19 { fill: #1e88e5;font-weight: bold } -.terminal-3208220446-r20 { fill: #70787c } -.terminal-3208220446-r21 { fill: #565b5f } -.terminal-3208220446-r22 { fill: #a5afb5 } -.terminal-3208220446-r23 { fill: #c4c8cb } -.terminal-3208220446-r24 { fill: #565b5f;font-weight: bold } -.terminal-3208220446-r25 { fill: #bababa } -.terminal-3208220446-r26 { fill: #00500a } -.terminal-3208220446-r27 { fill: #7e7e7e } -.terminal-3208220446-r28 { fill: #b8c2c9 } -.terminal-3208220446-r29 { fill: #9ca7ae;font-weight: bold } -.terminal-3208220446-r30 { fill: #9ca7ae } -.terminal-3208220446-r31 { fill: #464b4e } -.terminal-3208220446-r32 { fill: #adb8c0 } -.terminal-3208220446-r33 { fill: #ac5456 } -.terminal-3208220446-r34 { fill: #5a6064 } -.terminal-3208220446-r35 { fill: #44484c } -.terminal-3208220446-r36 { fill: #656c71 } -.terminal-3208220446-r37 { fill: #a9b3bb } -.terminal-3208220446-r38 { fill: #5c9364;font-weight: bold } -.terminal-3208220446-r39 { fill: #bc3833;font-weight: bold } -.terminal-3208220446-r40 { fill: #1b1c1d } + .terminal-3572088326-r1 { fill: #171819 } +.terminal-3572088326-r2 { fill: #c5c8c6 } +.terminal-3572088326-r3 { fill: #17191a } +.terminal-3572088326-r4 { fill: #cc4940 } +.terminal-3572088326-r5 { fill: #b0c2c4;text-decoration: underline; } +.terminal-3572088326-r6 { fill: #b0c2c4 } +.terminal-3572088326-r7 { fill: #7aafb5 } +.terminal-3572088326-r8 { fill: #d22f2f } +.terminal-3572088326-r9 { fill: #1a1a1a } +.terminal-3572088326-r10 { fill: #b4bfc8 } +.terminal-3572088326-r11 { fill: #484c50 } +.terminal-3572088326-r12 { fill: #a82525 } +.terminal-3572088326-r13 { fill: #171819;font-weight: bold } +.terminal-3572088326-r14 { fill: #b08a90 } +.terminal-3572088326-r15 { fill: #ba7b7b;font-weight: bold } +.terminal-3572088326-r16 { fill: #c7b5b5;font-weight: bold } +.terminal-3572088326-r17 { fill: #17191a;font-weight: bold } +.terminal-3572088326-r18 { fill: #1e88e5;font-weight: bold } +.terminal-3572088326-r19 { fill: #70787c } +.terminal-3572088326-r20 { fill: #565b5f } +.terminal-3572088326-r21 { fill: #a5afb5 } +.terminal-3572088326-r22 { fill: #c4c8cb } +.terminal-3572088326-r23 { fill: #565b5f;font-weight: bold } +.terminal-3572088326-r24 { fill: #bababa } +.terminal-3572088326-r25 { fill: #00500a } +.terminal-3572088326-r26 { fill: #7e7e7e } +.terminal-3572088326-r27 { fill: #b8c2c9 } +.terminal-3572088326-r28 { fill: #9ca7ae;font-weight: bold } +.terminal-3572088326-r29 { fill: #9ca7ae } +.terminal-3572088326-r30 { fill: #464b4e } +.terminal-3572088326-r31 { fill: #adb8c0 } +.terminal-3572088326-r32 { fill: #ac5456 } +.terminal-3572088326-r33 { fill: #5a6064 } +.terminal-3572088326-r34 { fill: #44484c } +.terminal-3572088326-r35 { fill: #656c71 } +.terminal-3572088326-r36 { fill: #a9b3bb } +.terminal-3572088326-r37 { fill: #5c9364;font-weight: bold } +.terminal-3572088326-r38 { fill: #bc3833;font-weight: bold } +.terminal-3572088326-r39 { fill: #1b1c1d } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -anothertest -╭─ Collection── Request ─╮ - GET echo  theme: anothertesttions - GET get ranSet the theme to anothertest━━━━━━━━━━━━ - POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all      NameValue Add header  - GET get one      ╰─────────────────────────────────────────────────╯ - POS create       ╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GET Send  +anothertest                                   +╭─ Collection── Request ─╮ + GET echo  theme: anothertesttions + GET get ranSet the theme to anothertest━━━━━━━━━━━━ + POS echo po╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all      NameValue Add header  + GET get one      ╰─────────────────────────────────────────────────╯ + POS create       ╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o  diff --git a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg index e51a16c2..b2c661ef 100644 --- a/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg +++ b/tests/__snapshots__/test_snapshots/TestJumpMode.test_focus_switch.svg @@ -19,164 +19,164 @@ font-weight: 700; } - .terminal-1550907473-matrix { + .terminal-2342695891-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1550907473-title { + .terminal-2342695891-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1550907473-r1 { fill: #dfdfe1 } -.terminal-1550907473-r2 { fill: #c5c8c6 } -.terminal-1550907473-r3 { fill: #ff93dd } -.terminal-1550907473-r4 { fill: #15111e;text-decoration: underline; } -.terminal-1550907473-r5 { fill: #15111e } -.terminal-1550907473-r6 { fill: #43365c } -.terminal-1550907473-r7 { fill: #737387 } -.terminal-1550907473-r8 { fill: #e1e1e6 } -.terminal-1550907473-r9 { fill: #efe3fb } -.terminal-1550907473-r10 { fill: #9f9fa5 } -.terminal-1550907473-r11 { fill: #ff69b4 } -.terminal-1550907473-r12 { fill: #dfdfe1;font-weight: bold } -.terminal-1550907473-r13 { fill: #632e53 } -.terminal-1550907473-r14 { fill: #793155;font-weight: bold } -.terminal-1550907473-r15 { fill: #210d17;font-weight: bold } -.terminal-1550907473-r16 { fill: #6a6a74 } -.terminal-1550907473-r17 { fill: #8b8b93 } -.terminal-1550907473-r18 { fill: #252532 } -.terminal-1550907473-r19 { fill: #252441 } -.terminal-1550907473-r20 { fill: #8b8b93;font-weight: bold } -.terminal-1550907473-r21 { fill: #0d0e2e } -.terminal-1550907473-r22 { fill: #00b85f } -.terminal-1550907473-r23 { fill: #918d9d } -.terminal-1550907473-r24 { fill: #2e2e3c;font-weight: bold } -.terminal-1550907473-r25 { fill: #2e2e3c } -.terminal-1550907473-r26 { fill: #a0a0a6 } -.terminal-1550907473-r27 { fill: #191928 } -.terminal-1550907473-r28 { fill: #b74e87 } -.terminal-1550907473-r29 { fill: #87878f } -.terminal-1550907473-r30 { fill: #a3a3a9 } -.terminal-1550907473-r31 { fill: #777780 } -.terminal-1550907473-r32 { fill: #1f1f2d } -.terminal-1550907473-r33 { fill: #04b375;font-weight: bold } -.terminal-1550907473-r34 { fill: #ff7ec8;font-weight: bold } -.terminal-1550907473-r35 { fill: #dbdbdd } + .terminal-2342695891-r1 { fill: #dfdfe1 } +.terminal-2342695891-r2 { fill: #c5c8c6 } +.terminal-2342695891-r3 { fill: #ff93dd } +.terminal-2342695891-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2342695891-r5 { fill: #15111e } +.terminal-2342695891-r6 { fill: #43365c } +.terminal-2342695891-r7 { fill: #737387 } +.terminal-2342695891-r8 { fill: #e1e1e6 } +.terminal-2342695891-r9 { fill: #efe3fb } +.terminal-2342695891-r10 { fill: #9f9fa5 } +.terminal-2342695891-r11 { fill: #ff69b4 } +.terminal-2342695891-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-2342695891-r13 { fill: #632e53 } +.terminal-2342695891-r14 { fill: #793155;font-weight: bold } +.terminal-2342695891-r15 { fill: #210d17;font-weight: bold } +.terminal-2342695891-r16 { fill: #6a6a74 } +.terminal-2342695891-r17 { fill: #8b8b93 } +.terminal-2342695891-r18 { fill: #252532 } +.terminal-2342695891-r19 { fill: #252441 } +.terminal-2342695891-r20 { fill: #8b8b93;font-weight: bold } +.terminal-2342695891-r21 { fill: #0d0e2e } +.terminal-2342695891-r22 { fill: #00b85f } +.terminal-2342695891-r23 { fill: #918d9d } +.terminal-2342695891-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-2342695891-r25 { fill: #2e2e3c } +.terminal-2342695891-r26 { fill: #a0a0a6 } +.terminal-2342695891-r27 { fill: #191928 } +.terminal-2342695891-r28 { fill: #b74e87 } +.terminal-2342695891-r29 { fill: #87878f } +.terminal-2342695891-r30 { fill: #a3a3a9 } +.terminal-2342695891-r31 { fill: #777780 } +.terminal-2342695891-r32 { fill: #1f1f2d } +.terminal-2342695891-r33 { fill: #04b375;font-weight: bold } +.terminal-2342695891-r34 { fill: #ff7ec8;font-weight: bold } +.terminal-2342695891-r35 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o  diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg index bf70ef44..29252e22 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg @@ -19,202 +19,202 @@ font-weight: 700; } - .terminal-3067937669-matrix { + .terminal-3054092024-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3067937669-title { + .terminal-3054092024-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3067937669-r1 { fill: #dfdfe1 } -.terminal-3067937669-r2 { fill: #c5c8c6 } -.terminal-3067937669-r3 { fill: #ff93dd } -.terminal-3067937669-r4 { fill: #15111e;text-decoration: underline; } -.terminal-3067937669-r5 { fill: #15111e } -.terminal-3067937669-r6 { fill: #43365c } -.terminal-3067937669-r7 { fill: #737387 } -.terminal-3067937669-r8 { fill: #e1e1e6 } -.terminal-3067937669-r9 { fill: #efe3fb } -.terminal-3067937669-r10 { fill: #9f9fa5 } -.terminal-3067937669-r11 { fill: #ff69b4 } -.terminal-3067937669-r12 { fill: #dfdfe1;font-weight: bold } -.terminal-3067937669-r13 { fill: #632e53 } -.terminal-3067937669-r14 { fill: #8b8b93 } -.terminal-3067937669-r15 { fill: #6a6a74 } -.terminal-3067937669-r16 { fill: #252532 } -.terminal-3067937669-r17 { fill: #252441 } -.terminal-3067937669-r18 { fill: #8b8b93;font-weight: bold } -.terminal-3067937669-r19 { fill: #00b85f } -.terminal-3067937669-r20 { fill: #210d17;font-weight: bold } -.terminal-3067937669-r21 { fill: #918d9d } -.terminal-3067937669-r22 { fill: #2e2e3c;font-weight: bold } -.terminal-3067937669-r23 { fill: #2e2e3c } -.terminal-3067937669-r24 { fill: #a0a0a6 } -.terminal-3067937669-r25 { fill: #191928 } -.terminal-3067937669-r26 { fill: #b74e87 } -.terminal-3067937669-r27 { fill: #87878f } -.terminal-3067937669-r28 { fill: #a3a3a9 } -.terminal-3067937669-r29 { fill: #777780 } -.terminal-3067937669-r30 { fill: #1f1f2d } -.terminal-3067937669-r31 { fill: #04b375;font-weight: bold } -.terminal-3067937669-r32 { fill: #ff7ec8;font-weight: bold } -.terminal-3067937669-r33 { fill: #dbdbdd } + .terminal-3054092024-r1 { fill: #dfdfe1 } +.terminal-3054092024-r2 { fill: #c5c8c6 } +.terminal-3054092024-r3 { fill: #ff93dd } +.terminal-3054092024-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3054092024-r5 { fill: #15111e } +.terminal-3054092024-r6 { fill: #43365c } +.terminal-3054092024-r7 { fill: #737387 } +.terminal-3054092024-r8 { fill: #e1e1e6 } +.terminal-3054092024-r9 { fill: #efe3fb } +.terminal-3054092024-r10 { fill: #9f9fa5 } +.terminal-3054092024-r11 { fill: #ff69b4 } +.terminal-3054092024-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-3054092024-r13 { fill: #632e53 } +.terminal-3054092024-r14 { fill: #8b8b93 } +.terminal-3054092024-r15 { fill: #6a6a74 } +.terminal-3054092024-r16 { fill: #252532 } +.terminal-3054092024-r17 { fill: #252441 } +.terminal-3054092024-r18 { fill: #8b8b93;font-weight: bold } +.terminal-3054092024-r19 { fill: #00b85f } +.terminal-3054092024-r20 { fill: #210d17;font-weight: bold } +.terminal-3054092024-r21 { fill: #918d9d } +.terminal-3054092024-r22 { fill: #2e2e3c;font-weight: bold } +.terminal-3054092024-r23 { fill: #2e2e3c } +.terminal-3054092024-r24 { fill: #a0a0a6 } +.terminal-3054092024-r25 { fill: #191928 } +.terminal-3054092024-r26 { fill: #b74e87 } +.terminal-3054092024-r27 { fill: #87878f } +.terminal-3054092024-r28 { fill: #a3a3a9 } +.terminal-3054092024-r29 { fill: #777780 } +.terminal-3054092024-r30 { fill: #1f1f2d } +.terminal-3054092024-r31 { fill: #04b375;font-weight: bold } +.terminal-3054092024-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-3054092024-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all usersNameValue Add header  - POS create a user╰─────────────────────────────────────────────────╯ - PUT update a user╭────────────────────────────────────── Response ─╮ - DEL delete a userBodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - - - - - - -1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all usersNameValue Add header  + POS create a user╰─────────────────────────────────────────────────╯ + PUT update a user╭────────────────────────────────────── Response ─╮ + DEL delete a userBodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + + + + + + +1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o  diff --git a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg index 98432369..e9bc521c 100644 --- a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg +++ b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-1710837915-matrix { + .terminal-61034583-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1710837915-title { + .terminal-61034583-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1710837915-r1 { fill: #dfdfe1 } -.terminal-1710837915-r2 { fill: #c5c8c6 } -.terminal-1710837915-r3 { fill: #ff93dd } -.terminal-1710837915-r4 { fill: #15111e;text-decoration: underline; } -.terminal-1710837915-r5 { fill: #15111e } -.terminal-1710837915-r6 { fill: #43365c } -.terminal-1710837915-r7 { fill: #737387 } -.terminal-1710837915-r8 { fill: #e1e1e6 } -.terminal-1710837915-r9 { fill: #efe3fb } -.terminal-1710837915-r10 { fill: #9f9fa5 } -.terminal-1710837915-r11 { fill: #ff69b4 } -.terminal-1710837915-r12 { fill: #dfdfe1;font-weight: bold } -.terminal-1710837915-r13 { fill: #632e53 } -.terminal-1710837915-r14 { fill: #8b8b93 } -.terminal-1710837915-r15 { fill: #6a6a74 } -.terminal-1710837915-r16 { fill: #252532 } -.terminal-1710837915-r17 { fill: #252441 } -.terminal-1710837915-r18 { fill: #8b8b93;font-weight: bold } -.terminal-1710837915-r19 { fill: #00b85f } -.terminal-1710837915-r20 { fill: #793155;font-weight: bold } -.terminal-1710837915-r21 { fill: #210d17;font-weight: bold } -.terminal-1710837915-r22 { fill: #918d9d } -.terminal-1710837915-r23 { fill: #0d0e2e } -.terminal-1710837915-r24 { fill: #2e2e3c;font-weight: bold } -.terminal-1710837915-r25 { fill: #2e2e3c } -.terminal-1710837915-r26 { fill: #a0a0a6 } -.terminal-1710837915-r27 { fill: #191928 } -.terminal-1710837915-r28 { fill: #b74e87 } -.terminal-1710837915-r29 { fill: #0cfa9f } -.terminal-1710837915-r30 { fill: #0ce48c;font-weight: bold } -.terminal-1710837915-r31 { fill: #e3e3e6 } -.terminal-1710837915-r32 { fill: #ff7ec8;font-weight: bold } -.terminal-1710837915-r33 { fill: #dbdbdd } + .terminal-61034583-r1 { fill: #dfdfe1 } +.terminal-61034583-r2 { fill: #c5c8c6 } +.terminal-61034583-r3 { fill: #ff93dd } +.terminal-61034583-r4 { fill: #15111e;text-decoration: underline; } +.terminal-61034583-r5 { fill: #15111e } +.terminal-61034583-r6 { fill: #43365c } +.terminal-61034583-r7 { fill: #737387 } +.terminal-61034583-r8 { fill: #e1e1e6 } +.terminal-61034583-r9 { fill: #efe3fb } +.terminal-61034583-r10 { fill: #9f9fa5 } +.terminal-61034583-r11 { fill: #ff69b4 } +.terminal-61034583-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-61034583-r13 { fill: #632e53 } +.terminal-61034583-r14 { fill: #8b8b93 } +.terminal-61034583-r15 { fill: #6a6a74 } +.terminal-61034583-r16 { fill: #252532 } +.terminal-61034583-r17 { fill: #252441 } +.terminal-61034583-r18 { fill: #8b8b93;font-weight: bold } +.terminal-61034583-r19 { fill: #00b85f } +.terminal-61034583-r20 { fill: #793155;font-weight: bold } +.terminal-61034583-r21 { fill: #210d17;font-weight: bold } +.terminal-61034583-r22 { fill: #918d9d } +.terminal-61034583-r23 { fill: #0d0e2e } +.terminal-61034583-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-61034583-r25 { fill: #2e2e3c } +.terminal-61034583-r26 { fill: #a0a0a6 } +.terminal-61034583-r27 { fill: #191928 } +.terminal-61034583-r28 { fill: #b74e87 } +.terminal-61034583-r29 { fill: #0cfa9f } +.terminal-61034583-r30 { fill: #0ce48c;font-weight: bold } +.terminal-61034583-r31 { fill: #e3e3e6 } +.terminal-61034583-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-61034583-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -█ GET fooNameValue Add header  - GET get all╰─────────────────────────────────────────────────╯ - GET get one╭────────────────────────────────────── Response ─╮ - POS createBodyHeadersCookiesTrace - DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -▼ comments/ - GET get comment - GET get comment -───────────────────────Request saved -barjsonplaceholder/posts/foo.posting.ya -╰── sample-collections ─╯╰───────────ml - ^j Send  ^t Method  ^s Save  ^n New  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +█ GET fooNameValue Add header  + GET get all╰─────────────────────────────────────────────────╯ + GET get one╭────────────────────────────────────── Response ─╮ + POS createBodyHeadersCookiesTrace + DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +▼ comments/ + GET get comment + GET get comment +───────────────────────Request saved +barjsonplaceholder/posts/foo.posting.ya +╰── sample-collections ─╯╰───────────ml + d Dupe  D Quick Dupe  ^j Send  ^t Me diff --git a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg index 220e2427..50e19ec7 100644 --- a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg +++ b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-2405076578-matrix { + .terminal-889164643-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2405076578-title { + .terminal-889164643-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2405076578-r1 { fill: #dfdfe1 } -.terminal-2405076578-r2 { fill: #c5c8c6 } -.terminal-2405076578-r3 { fill: #ff93dd } -.terminal-2405076578-r4 { fill: #15111e;text-decoration: underline; } -.terminal-2405076578-r5 { fill: #15111e } -.terminal-2405076578-r6 { fill: #43365c } -.terminal-2405076578-r7 { fill: #ff69b4 } -.terminal-2405076578-r8 { fill: #9393a3 } -.terminal-2405076578-r9 { fill: #a684e8 } -.terminal-2405076578-r10 { fill: #e1e1e6 } -.terminal-2405076578-r11 { fill: #00fa9a } -.terminal-2405076578-r12 { fill: #efe3fb } -.terminal-2405076578-r13 { fill: #9f9fa5 } -.terminal-2405076578-r14 { fill: #dfdfe1;font-weight: bold } -.terminal-2405076578-r15 { fill: #632e53 } -.terminal-2405076578-r16 { fill: #8b8b93 } -.terminal-2405076578-r17 { fill: #58d1eb;font-weight: bold } -.terminal-2405076578-r18 { fill: #6a6a74 } -.terminal-2405076578-r19 { fill: #252532 } -.terminal-2405076578-r20 { fill: #0f0f1f } -.terminal-2405076578-r21 { fill: #ede2f7 } -.terminal-2405076578-r22 { fill: #e1e0e4 } -.terminal-2405076578-r23 { fill: #e2e0e5 } -.terminal-2405076578-r24 { fill: #8b8b93;font-weight: bold } -.terminal-2405076578-r25 { fill: #e9e1f1 } -.terminal-2405076578-r26 { fill: #00b85f } -.terminal-2405076578-r27 { fill: #793155;font-weight: bold } -.terminal-2405076578-r28 { fill: #210d17;font-weight: bold } -.terminal-2405076578-r29 { fill: #737387 } -.terminal-2405076578-r30 { fill: #918d9d } -.terminal-2405076578-r31 { fill: #002014 } -.terminal-2405076578-r32 { fill: #a2a2a8;font-weight: bold } -.terminal-2405076578-r33 { fill: #e8e8e9 } -.terminal-2405076578-r34 { fill: #e0e0e2 } -.terminal-2405076578-r35 { fill: #6f6f78 } -.terminal-2405076578-r36 { fill: #f92672;font-weight: bold } -.terminal-2405076578-r37 { fill: #ae81ff } -.terminal-2405076578-r38 { fill: #e6db74 } -.terminal-2405076578-r39 { fill: #87878f } -.terminal-2405076578-r40 { fill: #a2a2a8 } -.terminal-2405076578-r41 { fill: #30303b } -.terminal-2405076578-r42 { fill: #00fa9a;font-weight: bold } -.terminal-2405076578-r43 { fill: #ff7ec8;font-weight: bold } -.terminal-2405076578-r44 { fill: #dbdbdd } + .terminal-889164643-r1 { fill: #dfdfe1 } +.terminal-889164643-r2 { fill: #c5c8c6 } +.terminal-889164643-r3 { fill: #ff93dd } +.terminal-889164643-r4 { fill: #15111e;text-decoration: underline; } +.terminal-889164643-r5 { fill: #15111e } +.terminal-889164643-r6 { fill: #43365c } +.terminal-889164643-r7 { fill: #ff69b4 } +.terminal-889164643-r8 { fill: #9393a3 } +.terminal-889164643-r9 { fill: #a684e8 } +.terminal-889164643-r10 { fill: #e1e1e6 } +.terminal-889164643-r11 { fill: #00fa9a } +.terminal-889164643-r12 { fill: #efe3fb } +.terminal-889164643-r13 { fill: #9f9fa5 } +.terminal-889164643-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-889164643-r15 { fill: #632e53 } +.terminal-889164643-r16 { fill: #8b8b93 } +.terminal-889164643-r17 { fill: #58d1eb;font-weight: bold } +.terminal-889164643-r18 { fill: #6a6a74 } +.terminal-889164643-r19 { fill: #252532 } +.terminal-889164643-r20 { fill: #0f0f1f } +.terminal-889164643-r21 { fill: #ede2f7 } +.terminal-889164643-r22 { fill: #e1e0e4 } +.terminal-889164643-r23 { fill: #e2e0e5 } +.terminal-889164643-r24 { fill: #8b8b93;font-weight: bold } +.terminal-889164643-r25 { fill: #e9e1f1 } +.terminal-889164643-r26 { fill: #00b85f } +.terminal-889164643-r27 { fill: #793155;font-weight: bold } +.terminal-889164643-r28 { fill: #210d17;font-weight: bold } +.terminal-889164643-r29 { fill: #737387 } +.terminal-889164643-r30 { fill: #918d9d } +.terminal-889164643-r31 { fill: #002014 } +.terminal-889164643-r32 { fill: #a2a2a8;font-weight: bold } +.terminal-889164643-r33 { fill: #e8e8e9 } +.terminal-889164643-r34 { fill: #e0e0e2 } +.terminal-889164643-r35 { fill: #6f6f78 } +.terminal-889164643-r36 { fill: #f92672;font-weight: bold } +.terminal-889164643-r37 { fill: #ae81ff } +.terminal-889164643-r38 { fill: #e6db74 } +.terminal-889164643-r39 { fill: #87878f } +.terminal-889164643-r40 { fill: #a2a2a8 } +.terminal-889164643-r41 { fill: #30303b } +.terminal-889164643-r42 { fill: #00fa9a;font-weight: bold } +.terminal-889164643-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-889164643-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                            - -GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  - -╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post Content-Type     application/json      -▼ jsonplaceholder/ Referer          https://example.com/  -▼ posts/ Accept-Encoding  gzip                  -█ GET get all Cache-Control    no-cache              - GET get one - POS create - DEL delete a post -▼ comments/ - GET get commentsNameValue Add header  - GET get comments (╰───────────────────────────────────────────────────────╯ - PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ -▼ todos/BodyHeadersCookiesTrace - GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one  1  [ -▼ users/  2    {                                             - GET get a user  3  "userId"1,                                - GET get all users  4  "id"1,                                    - POS create a user  5  "title""sunt aut facere repellat  - PUT update a userprovident occaecati excepturi optio  - DEL delete a userreprehenderit",                                 -  6  "body""quia et suscipit\nsuscipit  -─────────────────────────recusandae consequuntur expedita et  -Retrieve all posts1:1read-onlyJSONWrap X -╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help  + + + + +Posting                                                                            + +GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  + +╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post Content-Type     application/json      +▼ jsonplaceholder/ Referer          https://example.com/  +▼ posts/ Accept-Encoding  gzip                  +█ GET get all Cache-Control    no-cache              + GET get one + POS create + DEL delete a post +▼ comments/ + GET get commentsNameValue Add header  + GET get comments (╰───────────────────────────────────────────────────────╯ + PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ +▼ todos/BodyHeadersCookiesTrace + GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one  1  [ +▼ users/  2    {                                             + GET get a user  3  "userId"1,                                + GET get all users  4  "id"1,                                    + POS create a user  5  "title""sunt aut facere repellat  + PUT update a userprovident occaecati excepturi optio  + DEL delete a userreprehenderit",                                 +  6  "body""quia et suscipit\nsuscipit  +─────────────────────────recusandae consequuntur expedita et  +Retrieve all posts1:1read-onlyJSONWrap X +╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ + d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c diff --git a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg index 96419154..c2bcd294 100644 --- a/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg +++ b/tests/__snapshots__/test_snapshots/TestVariables.test_resolved_variables_highlight_and_preview.svg @@ -19,173 +19,174 @@ font-weight: 700; } - .terminal-2587761538-matrix { + .terminal-1782248387-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-2587761538-title { + .terminal-1782248387-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-2587761538-r1 { fill: #dfdfe1 } -.terminal-2587761538-r2 { fill: #c5c8c6 } -.terminal-2587761538-r3 { fill: #ff93dd } -.terminal-2587761538-r4 { fill: #15111e;text-decoration: underline; } -.terminal-2587761538-r5 { fill: #15111e } -.terminal-2587761538-r6 { fill: #43365c } -.terminal-2587761538-r7 { fill: #403e62 } -.terminal-2587761538-r8 { fill: #ff69b4 } -.terminal-2587761538-r9 { fill: #9b9aab } -.terminal-2587761538-r10 { fill: #a684e8 } -.terminal-2587761538-r11 { fill: #e3e3e8 } -.terminal-2587761538-r12 { fill: #00fa9a;text-decoration: underline; } -.terminal-2587761538-r13 { fill: #210d17 } -.terminal-2587761538-r14 { fill: #efe3fb } -.terminal-2587761538-r15 { fill: #9f9fa5 } -.terminal-2587761538-r16 { fill: #632e53 } -.terminal-2587761538-r17 { fill: #8b8b93 } -.terminal-2587761538-r18 { fill: #dfdfe1;font-weight: bold } -.terminal-2587761538-r19 { fill: #58d1eb;font-weight: bold } -.terminal-2587761538-r20 { fill: #6a6a74 } -.terminal-2587761538-r21 { fill: #9b9aab;font-weight: bold } -.terminal-2587761538-r22 { fill: #e3e3e8;font-weight: bold } -.terminal-2587761538-r23 { fill: #252532 } -.terminal-2587761538-r24 { fill: #0f0f1f } -.terminal-2587761538-r25 { fill: #ede2f7 } -.terminal-2587761538-r26 { fill: #e1e0e4 } -.terminal-2587761538-r27 { fill: #e2e0e5 } -.terminal-2587761538-r28 { fill: #e9e1f1 } -.terminal-2587761538-r29 { fill: #0d0e2e } -.terminal-2587761538-r30 { fill: #737387 } -.terminal-2587761538-r31 { fill: #e1e1e6 } -.terminal-2587761538-r32 { fill: #918d9d } -.terminal-2587761538-r33 { fill: #2e2e3c;font-weight: bold } -.terminal-2587761538-r34 { fill: #2e2e3c } -.terminal-2587761538-r35 { fill: #a0a0a6 } -.terminal-2587761538-r36 { fill: #191928 } -.terminal-2587761538-r37 { fill: #b74e87 } -.terminal-2587761538-r38 { fill: #87878f } -.terminal-2587761538-r39 { fill: #a3a3a9 } -.terminal-2587761538-r40 { fill: #777780 } -.terminal-2587761538-r41 { fill: #1f1f2d } -.terminal-2587761538-r42 { fill: #04b375;font-weight: bold } -.terminal-2587761538-r43 { fill: #ff7ec8;font-weight: bold } -.terminal-2587761538-r44 { fill: #dbdbdd } + .terminal-1782248387-r1 { fill: #dfdfe1 } +.terminal-1782248387-r2 { fill: #c5c8c6 } +.terminal-1782248387-r3 { fill: #ff93dd } +.terminal-1782248387-r4 { fill: #15111e;text-decoration: underline; } +.terminal-1782248387-r5 { fill: #15111e } +.terminal-1782248387-r6 { fill: #43365c } +.terminal-1782248387-r7 { fill: #403e62 } +.terminal-1782248387-r8 { fill: #ff69b4 } +.terminal-1782248387-r9 { fill: #9b9aab } +.terminal-1782248387-r10 { fill: #a684e8 } +.terminal-1782248387-r11 { fill: #e3e3e8 } +.terminal-1782248387-r12 { fill: #00fa9a;text-decoration: underline; } +.terminal-1782248387-r13 { fill: #210d17 } +.terminal-1782248387-r14 { fill: #efe3fb } +.terminal-1782248387-r15 { fill: #9f9fa5 } +.terminal-1782248387-r16 { fill: #170b21;font-weight: bold } +.terminal-1782248387-r17 { fill: #632e53 } +.terminal-1782248387-r18 { fill: #8b8b93 } +.terminal-1782248387-r19 { fill: #dfdfe1;font-weight: bold } +.terminal-1782248387-r20 { fill: #58d1eb;font-weight: bold } +.terminal-1782248387-r21 { fill: #6a6a74 } +.terminal-1782248387-r22 { fill: #9b9aab;font-weight: bold } +.terminal-1782248387-r23 { fill: #e3e3e8;font-weight: bold } +.terminal-1782248387-r24 { fill: #252532 } +.terminal-1782248387-r25 { fill: #0f0f1f } +.terminal-1782248387-r26 { fill: #ede2f7 } +.terminal-1782248387-r27 { fill: #e1e0e4 } +.terminal-1782248387-r28 { fill: #e2e0e5 } +.terminal-1782248387-r29 { fill: #e9e1f1 } +.terminal-1782248387-r30 { fill: #0d0e2e } +.terminal-1782248387-r31 { fill: #737387 } +.terminal-1782248387-r32 { fill: #e1e1e6 } +.terminal-1782248387-r33 { fill: #918d9d } +.terminal-1782248387-r34 { fill: #2e2e3c;font-weight: bold } +.terminal-1782248387-r35 { fill: #2e2e3c } +.terminal-1782248387-r36 { fill: #a0a0a6 } +.terminal-1782248387-r37 { fill: #191928 } +.terminal-1782248387-r38 { fill: #b74e87 } +.terminal-1782248387-r39 { fill: #87878f } +.terminal-1782248387-r40 { fill: #a3a3a9 } +.terminal-1782248387-r41 { fill: #777780 } +.terminal-1782248387-r42 { fill: #1f1f2d } +.terminal-1782248387-r43 { fill: #04b375;font-weight: bold } +.terminal-1782248387-r44 { fill: #ff7ec8;font-weight: bold } +.terminal-1782248387-r45 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  -                               TODO_ID = 1                                 -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET get all││HeadersBodyQueryAuthInfoOptions -█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ Content-Type     application/json      -││ Referer          https://example.com/  -││ Accept-Encoding  gzip                  -││NameValue Add header  -│╰─────────────────────────────────────────────────╯ -│╭────────────────────────────────────── Response ─╮ -││BodyHeadersCookiesTrace -││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -││ -││ -││ -│───────────────────────││ -Retrieve one todo││1:1read-onlyJSONWrap X -╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GEThttps://jsonplaceholder.typicode.com/todos/$TODO_ID Send  +                               TODO_ID = 1                      $TODO_ID +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET get all││HeadersBodyQueryAuthInfoOptions +█ GET get one││━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ Content-Type     application/json      +││ Referer          https://example.com/  +││ Accept-Encoding  gzip                  +││NameValue Add header  +│╰─────────────────────────────────────────────────╯ +│╭────────────────────────────────────── Response ─╮ +││BodyHeadersCookiesTrace +││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +││ +││ +││ +│───────────────────────││ +Retrieve one todo││1:1read-onlyJSONWrap X +╰─────────────── todos ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help From a12a2d2c1d05ae389d179247fcaeb742ef0874d6 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 22:51:27 +0100 Subject: [PATCH 18/50] Removing debugging prints --- src/posting/save_request.py | 1 - src/posting/widgets/collection/browser.py | 3 --- 2 files changed, 4 deletions(-) diff --git a/src/posting/save_request.py b/src/posting/save_request.py index 7a3e5d0f..e9c12ce5 100644 --- a/src/posting/save_request.py +++ b/src/posting/save_request.py @@ -14,5 +14,4 @@ def slugify(text: str) -> str: def generate_request_filename(request_title: str) -> str: """Generate a filename for a request, NOT including the file suffix.""" - print("generating request filename for title", request_title) return slugify(request_title) diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index ada6a409..7ae26870 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -396,9 +396,6 @@ def action_quick_duplicate_request(self) -> None: new_name = cursor_request.name new_filename = generate_request_filename(new_name) + ".posting.yaml" - - print("new_filename", new_filename) - new_filename = get_unique_request_filename(new_filename, original_path.parent) new_path = ( From 34ab8524a4d07f8a4725d6b540c6c3d0571067d9 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Sun, 11 Aug 2024 23:40:25 +0100 Subject: [PATCH 19/50] Ensure request location on disk in Info tab doesnt clip out of view (it now wraps) --- src/posting/widgets/request/request_metadata.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/posting/widgets/request/request_metadata.py b/src/posting/widgets/request/request_metadata.py index 566de37d..31497e6b 100644 --- a/src/posting/widgets/request/request_metadata.py +++ b/src/posting/widgets/request/request_metadata.py @@ -1,7 +1,7 @@ from textual.app import ComposeResult from textual.containers import VerticalScroll from textual.reactive import Reactive, reactive -from textual.widgets import Input, Label +from textual.widgets import Input, Label, Static from posting.collection import RequestModel from posting.widgets.text_area import PostingTextArea @@ -50,7 +50,7 @@ def compose(self) -> ComposeResult: yield Label("Description [dim]optional[/dim]") yield PostingTextArea(id="description-textarea") - yield Label("", id="request-path") + yield Static("", id="request-path") @property def request_name_input(self) -> Input: @@ -61,8 +61,8 @@ def request_description_textarea(self) -> PostingTextArea: return self.query_one("#description-textarea", PostingTextArea) @property - def request_path_label(self) -> Label: - return self.query_one("#request-path", Label) + def request_path_label(self) -> Static: + return self.query_one("#request-path", Static) @property def request_name(self) -> str: From aa126ff465efe9306a52bf51f9c66392a8417db0 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Mon, 12 Aug 2024 21:56:13 +0100 Subject: [PATCH 20/50] Keeping requests in sorted order on insertion --- src/posting/collection.py | 22 ++++++++--- src/posting/widgets/collection/browser.py | 47 +++++++++++++++++++---- 2 files changed, 56 insertions(+), 13 deletions(-) diff --git a/src/posting/collection.py b/src/posting/collection.py index 7ab336ef..1639fe2c 100644 --- a/src/posting/collection.py +++ b/src/posting/collection.py @@ -1,4 +1,5 @@ from __future__ import annotations +from functools import total_ordering from pathlib import Path from string import Template from typing import Any, Literal, get_args @@ -100,6 +101,12 @@ def to_httpx_args(self) -> dict[str, Any]: return httpx_args +def request_sort_key(request: RequestModel) -> tuple[int, str]: + method_order = {"GET": 0, "POST": 1, "PUT": 2, "PATCH": 3, "DELETE": 4} + return (method_order.get(request.method, 5), request.name) + + +@total_ordering class RequestModel(BaseModel): name: str = Field(default="") """The name of the request. This is used to identify the request in the UI. @@ -231,6 +238,14 @@ def save_to_disk(self, path: Path) -> None: path.parent.mkdir(parents=True, exist_ok=True) path.write_text(yaml_content, encoding="utf-8") + def __lt__(self, other: RequestModel) -> bool: + return request_sort_key(self) < request_sort_key(other) + + def __eq__(self, other: object) -> bool: + if isinstance(other, RequestModel): + return request_sort_key(self) == request_sort_key(other) + return NotImplemented + class Contact(BaseModel): name: str | None = None @@ -361,11 +376,8 @@ def sort_collection(collection: Collection): # Sort subcollections collection.children.sort(key=lambda x: x.name) - # Sort requests - method_order = {"GET": 0, "POST": 1, "PUT": 2, "PATCH": 3, "DELETE": 4} - collection.requests.sort( - key=lambda x: (method_order.get(x.method, 5), x.name) - ) + # Sort requests in this collection + collection.requests.sort(key=request_sort_key) # Recursively sort child collections for child in collection.children: diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index 7ae26870..e00a009a 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -1,3 +1,4 @@ +import bisect from dataclasses import dataclass from functools import partial import os @@ -13,10 +14,10 @@ from textual.geometry import Region from textual.message import Message from textual.reactive import Reactive, reactive -from textual.widgets import Label, Static, Tree +from textual.widgets import Static, Tree from textual.widgets.tree import TreeNode -from posting.collection import Collection, RequestModel +from posting.collection import Collection, RequestModel, request_sort_key from posting.config import SETTINGS from posting.files import get_unique_request_filename from posting.help_screen import HelpData @@ -301,14 +302,44 @@ def _handle_new_request_data(new_request_data: NewRequestData | None) -> None: pointer = pointer.add(part, data=new_collection) pointer.expand() - # Attach to the relevant node + new_request_parent = pointer + parent_collection = new_request_parent.data + sibling_requests: list[RequestModel] = ( + parent_collection.requests + if isinstance(parent_collection, Collection) + else [] + ) + + # Find where to insert the new request amongst its new siblings. + if sibling_requests: + index = bisect.bisect_left( + sibling_requests, + new_request, + ) + if index == len(sibling_requests): + before = None + else: + before = index + else: + before = None + + if before: + sibling_requests.insert(before, new_request) + else: + sibling_requests.append(new_request) + + parent_collection.requests = sibling_requests + # If the cursor and the newly added node have the same parent, then the cursor node + # and the newly added node are siblings, so we should insert the newly added node + # in an appropriate position relative to the cursor node. + # Find where to insert the new request. + + # Attach to the relevant node. Note that the cursor node is not relevant here. + # The only thing that matters is the directory path specified by the user. new_node = self.add_request( new_request, - parent_node if pointer is self.root else pointer, - after=None if parent_node == cursor_node else cursor_node, - before=0 - if parent_node == cursor_node and len(parent_node.children) > 0 - else None, + new_request_parent, + before=before, ) self.currently_open = new_node From f6a73a839f55f3c46b39ec602eeb53e782b34a76 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Mon, 12 Aug 2024 22:08:22 +0100 Subject: [PATCH 21/50] Add valid filename check --- src/posting/files.py | 52 +++++++++++++++++++ .../widgets/collection/new_request_modal.py | 1 - 2 files changed, 52 insertions(+), 1 deletion(-) diff --git a/src/posting/files.py b/src/posting/files.py index a2671682..2e874cb0 100644 --- a/src/posting/files.py +++ b/src/posting/files.py @@ -3,6 +3,58 @@ from posting.save_request import FILE_SUFFIX +import os +import re + + +def is_valid_filename(filename: str) -> bool: + # Check if the filename is empty or None + if not filename or filename.strip() == "": + return False + + # Ensure the filename doesn't contain path separators + if os.path.sep in filename or (os.path.altsep and os.path.altsep in filename): + return False + + # Check if the filename is too long (255 characters is a common limit) + if len(filename) > 255: + return False + + # Check for reserved names (Windows) + reserved_names = [ + "CON", + "PRN", + "AUX", + "NUL", + "COM1", + "COM2", + "COM3", + "COM4", + "COM5", + "COM6", + "COM7", + "COM8", + "COM9", + "LPT1", + "LPT2", + "LPT3", + "LPT4", + "LPT5", + "LPT6", + "LPT7", + "LPT8", + "LPT9", + ] + name_without_ext = os.path.splitext(filename)[0].upper() + if name_without_ext in reserved_names: + return False + + if re.search(r"\.\.", filename) or filename.startswith("."): + return False + + return True + + def get_request_file_stem_and_suffix(file_name: str) -> tuple[str, str]: if file_name.endswith(FILE_SUFFIX) or file_name.endswith("posting.yml"): file_name_parts = file_name.split(".") diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 602db724..0c5e6388 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -1,5 +1,4 @@ from dataclasses import dataclass -from pathlib import Path from typing import TYPE_CHECKING from textual import on from textual.app import ComposeResult From 06e0860759b62576c28307de6810b3763717acc6 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Mon, 12 Aug 2024 22:15:22 +0100 Subject: [PATCH 22/50] Add tests for checking filenames --- tests/test_files.py | 58 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 tests/test_files.py diff --git a/tests/test_files.py b/tests/test_files.py new file mode 100644 index 00000000..e41246de --- /dev/null +++ b/tests/test_files.py @@ -0,0 +1,58 @@ +import pytest +from posting.files import is_valid_filename + + +@pytest.mark.parametrize( + "filename, expected", + [ + ("valid_filename.txt", True), + ("", False), + (" ", False), + ("file/with/path.txt", False), + ("a" * 255, True), + ("a" * 256, False), + ("CON", False), + ("PRN.txt", False), + ("AUX.log", False), + ("NUL.dat", False), + ("COM1.bin", False), + ("LPT1.tmp", False), + ("file..with..dots.txt", False), + (".hidden_file.txt", False), + ("normal.file.txt", True), + ("file-with-dashes.txt", True), + ("file_with_underscores.txt", True), + ("file with spaces.txt", True), + ("file.with.multiple.extensions.txt", True), + # Path traversal attack tests + ("../filename.txt", False), + ("filename/../something.txt", False), + ("foo/../bar/baz.txt", False), + ("foo/./bar/baz.txt", False), + # Absolute path tests + ("/etc/passwd", False), + ("/var/log/system.log", False), + ("/home/user/file.txt", False), + ("/file.txt", False), + ("C:/Program Files/file.txt", False), + ], +) +def test_is_valid_filename(filename, expected): + assert is_valid_filename(filename) == expected + + +def test_is_valid_filename_with_none(): + assert is_valid_filename(None) == False + + +@pytest.mark.parametrize( + "os_specific_filename, expected", + [ + ("COM0", True), # COM0 is not in the reserved list + ("LPT0", True), # LPT0 is not in the reserved list + ("CON.txt", False), + ("AUX.log", False), + ], +) +def test_is_valid_filename_os_specific(os_specific_filename, expected): + assert is_valid_filename(os_specific_filename) == expected From 1907f5e9ceaa777697e753faa88148ede0cc2677 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 12:49:11 +0100 Subject: [PATCH 23/50] Validating filenames in new request popup --- src/posting/posting.scss | 7 +++++ .../widgets/collection/new_request_modal.py | 26 +++++++++++++++++-- 2 files changed, 31 insertions(+), 2 deletions(-) diff --git a/src/posting/posting.scss b/src/posting/posting.scss index 3b5b9df0..830b9bbe 100644 --- a/src/posting/posting.scss +++ b/src/posting/posting.scss @@ -303,11 +303,18 @@ Input { height: 1; background: $surface; border: none; + &.-invalid { + padding-left: 0; + border-left: outer $error; + } &:focus { background: $surface-lighten-1; padding-left: 0; border-left: outer $surface-lighten-2; + &.-invalid { + border-left: outer $error; + } & .input--cursor { color: $text; diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 0c5e6388..83145cfe 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -5,9 +5,10 @@ from textual.binding import Binding from textual.containers import Horizontal, VerticalScroll from textual.screen import ModalScreen +from textual.validation import ValidationResult, Validator from textual.widgets import Button, Footer, Input, Label from textual.widgets.tree import TreeNode -from posting.files import request_file_exists +from posting.files import is_valid_filename, request_file_exists from posting.save_request import FILE_SUFFIX, generate_request_filename from posting.widgets.input import PostingInput @@ -31,6 +32,15 @@ class NewRequestData: """The directory of the request.""" +class FileNameValidator(Validator): + def validate(self, value: str) -> ValidationResult: + return ( + self.success() + if is_valid_filename(value) + else self.failure("File name cannot be empty") + ) + + class NewRequestModal(ModalScreen[NewRequestData | None]): """A modal for saving a request to disk if it has not already been saved. @@ -112,7 +122,9 @@ def compose(self) -> ComposeResult: yield Label("File name [dim]optional[/dim]") with Horizontal(): yield PostingInput( - placeholder="Enter a file name", id="file-name-input" + placeholder="Enter a file name", + id="file-name-input", + validators=[FileNameValidator()], ) yield Label(".posting.yaml", id="file-suffix-label") @@ -147,15 +159,25 @@ def on_title_changed(self, event: Input.Changed) -> None: value = event.value self._generated_filename = generate_request_filename(value) file_name_input = self.query_one("#file-name-input", Input) + file_name_input.value = self._generated_filename file_name_input.placeholder = self._generated_filename + file_name_input.cursor_position = len(self._generated_filename) file_name_input.refresh() @on(Input.Submitted) @on(Button.Pressed, selector="#create-button") def on_create(self, event: Input.Submitted | Button.Pressed) -> None: + file_name_input = self.query_one("#file-name-input", Input) + if not file_name_input.is_valid: + self.notify("Invalid file name", severity="error") + return self.create_request() def action_create_request(self) -> None: + file_name_input = self.query_one("#file-name-input", Input) + if not file_name_input.is_valid: + self.notify("Invalid file name", severity="error") + return self.create_request() def create_request(self) -> None: From d70eb349d237ed961385fbb989f35bad83375a52 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 13:04:19 +0100 Subject: [PATCH 24/50] Better validation on new requests --- .../widgets/collection/new_request_modal.py | 71 +++++++++++++++---- 1 file changed, 57 insertions(+), 14 deletions(-) diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 83145cfe..48238279 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -41,6 +41,20 @@ def validate(self, value: str) -> ValidationResult: ) +class DirectoryValidator(Validator): + def validate(self, value: str) -> ValidationResult: + def is_valid_directory(value: str) -> bool: + if not value or ".." in value or value.startswith("/") or ":" in value: + return False + return True + + return ( + self.success() + if is_valid_directory(value) + else self.failure("Invalid directory") + ) + + class NewRequestModal(ModalScreen[NewRequestData | None]): """A modal for saving a request to disk if it has not already been saved. @@ -140,6 +154,7 @@ def compose(self) -> ComposeResult: self._initial_directory, placeholder="Enter a directory", id="directory-input", + validators=[DirectoryValidator()], ) yield Button.success("Create request", id="create-button") @@ -158,7 +173,7 @@ def on_title_changed(self, event: Input.Changed) -> None: """ value = event.value self._generated_filename = generate_request_filename(value) - file_name_input = self.query_one("#file-name-input", Input) + file_name_input = self.file_name_input file_name_input.value = self._generated_filename file_name_input.placeholder = self._generated_filename file_name_input.cursor_position = len(self._generated_filename) @@ -167,24 +182,37 @@ def on_title_changed(self, event: Input.Changed) -> None: @on(Input.Submitted) @on(Button.Pressed, selector="#create-button") def on_create(self, event: Input.Submitted | Button.Pressed) -> None: - file_name_input = self.query_one("#file-name-input", Input) - if not file_name_input.is_valid: - self.notify("Invalid file name", severity="error") - return - self.create_request() + self.validate_and_create_request() def action_create_request(self) -> None: - file_name_input = self.query_one("#file-name-input", Input) + self.validate_and_create_request() + + def validate_and_create_request( + self, + ) -> None: + title_input = self.title_input + file_name_input = self.file_name_input + description_textarea = self.description_textarea + directory_input = self.directory_input + + if not directory_input.is_valid: + self.notify( + "Directory must be relative to the collection root.", + severity="error", + ) + return + if not file_name_input.is_valid: - self.notify("Invalid file name", severity="error") + self.notify( + "Invalid file name.", + severity="error", + ) return - self.create_request() - def create_request(self) -> None: - file_name_input = self.query_one("#file-name-input", Input) file_name = file_name_input.value - directory = self.query_one("#directory-input", Input).value - description = self.query_one("#description-textarea", PostingTextArea).text + title = title_input.value + description = description_textarea.text + directory = directory_input.value generated_filename = self._generated_filename if not file_name: @@ -192,7 +220,6 @@ def create_request(self) -> None: else: file_name += FILE_SUFFIX - title = self.query_one("#title-input", Input).value if not title: title = generated_filename @@ -217,3 +244,19 @@ def create_request(self) -> None: directory=directory, ) ) + + @property + def file_name_input(self) -> Input: + return self.query_one("#file-name-input", Input) + + @property + def title_input(self) -> Input: + return self.query_one("#title-input", Input) + + @property + def description_textarea(self) -> PostingTextArea: + return self.query_one("#description-textarea", PostingTextArea) + + @property + def directory_input(self) -> Input: + return self.query_one("#directory-input", Input) From 64b6a6c98aea6da6635bfe4abef7e75471d61d2b Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 13:27:19 +0100 Subject: [PATCH 25/50] Substituting auth config --- src/posting/app.py | 54 ++++++++++++++++++--------------------- src/posting/collection.py | 15 ++++++++--- 2 files changed, 37 insertions(+), 32 deletions(-) diff --git a/src/posting/app.py b/src/posting/app.py index 7ac58113..6f78c6a9 100644 --- a/src/posting/app.py +++ b/src/posting/app.py @@ -175,10 +175,6 @@ def compose(self) -> ComposeResult: async def send_request(self) -> None: self.url_bar.clear_events() request_options = self.request_options.to_model() - verify_ssl = request_options.verify_ssl - proxy_url = request_options.proxy_url or None - timeout = request_options.timeout - auth = self.request_auth.to_httpx_auth() cert_config = SETTINGS.get().ssl httpx_cert_config: list[str] = [] @@ -189,24 +185,32 @@ async def send_request(self) -> None: if password := cert_config.password: httpx_cert_config.append(password.get_secret_value()) - verify: str | bool = verify_ssl - if verify_ssl and cert_config.ca_bundle is not None: - # If verification is enabled and a CA bundle is supplied, - # use the CA bundle. - verify = cert_config.ca_bundle - cert = cast(CertTypes, tuple(httpx_cert_config)) try: + # We must apply the template before we can do anything else. + request_model = self.build_request_model(request_options) + variables = get_variables() + try: + request_model.apply_template(variables) + except SubstitutionError as e: + log.error(e) + raise + + verify_ssl = request_model.options.verify_ssl + verify: str | bool = verify_ssl + if verify_ssl and cert_config.ca_bundle is not None: + # If verification is enabled and a CA bundle is supplied, + # use the CA bundle. + verify = cert_config.ca_bundle + async with httpx.AsyncClient( verify=verify, cert=cert, - proxy=proxy_url, - timeout=timeout, - auth=auth, + proxy=request_model.options.proxy_url or None, + timeout=request_model.options.timeout, + auth=request_model.auth.to_httpx_auth() if request_model.auth else None, ) as client: - request = self.build_httpx_request( - request_options, client, apply_template=True - ) + request = self.build_httpx_request(request_model, client) request.headers["User-Agent"] = ( f"Posting/{VERSION} (Terminal-based API client)" ) @@ -216,9 +220,9 @@ async def send_request(self) -> None: print("follow redirects =", request_options.follow_redirects) print("verify =", request_options.verify_ssl) print("attach cookies =", request_options.attach_cookies) - print("proxy =", proxy_url) - print("timeout =", timeout) - print("auth =", auth) + print("proxy =", request_model.options.proxy_url) + print("timeout =", request_model.options.timeout) + print("auth =", request_model.auth) response = await client.send( request=request, follow_redirects=request_options.follow_redirects, @@ -424,21 +428,13 @@ def on_params_changed( def build_httpx_request( self, - request_options: Options, + request_model: RequestModel, client: httpx.AsyncClient, - apply_template: bool, ) -> httpx.Request: """Build an httpx request from the UI.""" - request_model = self.build_request_model(request_options) - if apply_template: - variables = get_variables() - try: - request_model.apply_template(variables) - except SubstitutionError as e: - log.error(e) - raise request = request_model.to_httpx(client) request.extensions = {"trace": self.log_request_trace_event} + return request async def log_request_trace_event(self, event: Event, info: dict[str, Any]) -> None: diff --git a/src/posting/collection.py b/src/posting/collection.py index 1639fe2c..be23f2ca 100644 --- a/src/posting/collection.py +++ b/src/posting/collection.py @@ -38,6 +38,15 @@ class Auth(BaseModel): basic: BasicAuth | None = Field(default=None) digest: DigestAuth | None = Field(default=None) + def to_httpx_auth(self) -> httpx.Auth | None: + if self.type == "basic": + assert self.basic is not None + return httpx.BasicAuth(self.basic.username, self.basic.password) + elif self.type == "digest": + assert self.digest is not None + return httpx.DigestAuth(self.digest.username, self.digest.password) + return None + class BasicAuth(BaseModel): username: str = Field(default="") @@ -187,13 +196,13 @@ def apply_template(self, variables: dict[str, Any]) -> None: template = Template(param.value) param.value = template.substitute(variables) - if self.auth: - if self.auth.basic: + if self.auth is not None: + if self.auth.basic is not None: template = Template(self.auth.basic.username) self.auth.basic.username = template.substitute(variables) template = Template(self.auth.basic.password) self.auth.basic.password = template.substitute(variables) - if self.auth.digest: + if self.auth.digest is not None: template = Template(self.auth.digest.username) self.auth.digest.username = template.substitute(variables) template = Template(self.auth.digest.password) From 0ce67e2024a74b6efaa86d40b475919730d96157 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 13:35:00 +0100 Subject: [PATCH 26/50] Updating snapshots --- .coverage | Bin 53248 -> 53248 bytes pyproject.toml | 2 +- ...alette.test_can_type_to_filter_options.svg | 179 ++++++++-------- ...uest.test_dialog_loads_and_can_be_used.svg | 189 +++++++++-------- ...elected__dialog_is_prefilled_correctly.svg | 195 +++++++++--------- 5 files changed, 282 insertions(+), 283 deletions(-) diff --git a/.coverage b/.coverage index a6c31fd4b662c4487e50426730a63911165591f6..4593a81730a79aee3235ae0ea7c248b1e8e17021 100644 GIT binary patch delta 1694 zcmZWoX;4#F7`-ny>s#&%NJ1bXfC8gdHU%S~L2;vM5;v-d@ zHNnrAnb8;d1AINdnP0^x@xkaB>OkM1{ip$LL>4q2DY-80C+>K2!pv+=Hc114fFEWC z;p-NyF$jVgWu^J?CHAuN!s3_WHMqf66PHHk1^U65SX8 z!R*nBV6P}BEy{BeeViHsi*M2vD<|b4Sm+D(Sy>9piZ9qgB}RyAE#Vr;s5e+&NCx0e+eA|X@8ok( zCpyPpLZ!+`=BP3QskjH|Q>K7jz#mjX?q@z3y~Ca0b!ZS-nP*%Lw-ili&RCqu!B{BZ zk5+4lLmEnhAFeS_K^WzRn8$=b6Xn0tzg`4}!`c5+{JaQ=f)-!PEml^l9tRitf_+v- z#v9=*3LmkCnvf1AkLdA_ADjWs7$Nxk!M-bm$QV6Lqp;ByY@kD7%81Z?}TniINsKd9H`KEkl3zkWTUKj7Q=(TY4(mo5CJB5e{JKGDA=#_x& zroU$Iuovl->`wL#_C+>_&0xb=H7jTCFgKVp%weXHDPq>~`TVvw90;J)X+{TMMfIwq(TL{(qY~8oL3@?t&BTPhOCDn7YuV;7reWP3y2!q0p%Eg=^pr>$F zZDd-E_yUQnTF--9p1$r>RssO%_}%L^pEjqzccwjCi0J<0M0L2sp%9moM0L<^K3-f# z(AqIrTQ|wFlt4pZMcnoKPi*l@wYY@DV*@;A)r-8bt8>lnDxJ8PP?Oc3DIHZ^H(NZ> zy{F6+kb>M+C>L!+LOf*@tpu16uCLRFSqM~f3pBL2h#)O{VOeUVbga0L1oIett}cB1 z0s`ac+#7r8-ZSppJ@v2KTvaF26>{-;A|MqVCT0>aU5U|-(5m?asujhORB;|b6>^WT z{`^D9wBMYKj>Was?pQb-7RT(K$dmEm)jG ziW8*AcxeQvdk_qQL3cbk)T@+IoK2KK7_(O*6K6?PDntwdYsg8H+N3Tiz)xxnNyChK zat}X@f)e9ygWkW{gdW8(N{#Pw?@1)(cLxT}9>8~NCN%%D15tD^FaqG|1g-(h)raAL zS`A{vwPdO;BG=ea+Y0fr`s|n>aW$bP8a&&K9YSS#9hA8G=C0*gaTTFML*rmaI@J&H z!TRMZmWx?KAL@9G$Lk)472VGFpL+X${lGN15hT3kxVlAl?VRB1(>+&`4W@7Hmzlqq rLvQYT^km=%H_*Dst}e%i201u+g>2gHXlwcWaiim^%9ZwU!_2<`auhF& delta 1577 zcmZ9KdrTBZ9LHyv-Fxls%z-@a0e3tEOp6?76(4|rt+mMA;)5nudw85zrSggp3#P!e zjcX!j)l6e+42q^rtX4!wjP(VrH5M9e6O(FNsi-uVsDPLj5WMSv#-Ka@eCGF?@Ao(R z-SsvhZxd<}vf_UxCkZ8`B%jP7MjXI*a3?;B73{*aZoY^>_Ed+Bo|1~fO7~`ur;Htn5D=I% zwOv(HG3jsC(PNItH0>+%-Q{H;6mMWclLmo>Q-$vG(o$F1`iZ+4)zt4WK@~O1k&vfz z<#@=^wQ`gJA&@#%=;_bq?bWvJ?i`sJXmr9%!Erzs3HuGTyGzZe(Z8tvm4AIMwAApUgkx#!F1q#Bd?#dlN@G_Oh@(!6KQI?m^z$s(UJvazhv@q zx+2}xt{O<&q)obNDMd<lXtL0}{yk z=$9HT`ntTbqx<-O`=_{tekkU*lGU2*q%-_lAbqKU;FsVe*Zl1)%k^+&IdiXYwP&f z7j`-cSTdgm)eZICAO2rdP2u>rlvVx7!hwLRb zWjUjD!L+I&$)3+JQokknuLu9iHjQ49**=!|FX{6FGuJvZhwBZBgOz4s|LmUn{_eB> z_>l{l5OBcRfmDi}wXg&&N*;qukv?oNM=fKh7jnaNN-m>tUDwJ5FN=$JY<)IB=1_tpc8psZsR dL$uS<(=d^LA=_bVEB*cR)wE#Os>8dp{s&}%|1JOk diff --git a/pyproject.toml b/pyproject.toml index e3198f5f..468bb2ad 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,8 +15,8 @@ dependencies = [ "pyyaml==6.0.1", "pydantic-settings==2.3.4", "python-dotenv==1.0.1", - "textual-autocomplete==3.0.0a9", "textual[syntax]==0.76.0", + "textual-autocomplete==3.0.0a9", ] readme = "README.md" requires-python = ">= 3.11" diff --git a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg index df60329b..0cde64f3 100644 --- a/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg +++ b/tests/__snapshots__/test_snapshots/TestCommandPalette.test_can_type_to_filter_options.svg @@ -19,165 +19,166 @@ font-weight: 700; } - .terminal-4097681083-matrix { + .terminal-2331259748-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-4097681083-title { + .terminal-2331259748-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-4097681083-r1 { fill: #b2b2b4 } -.terminal-4097681083-r2 { fill: #c5c8c6 } -.terminal-4097681083-r3 { fill: #dfdfe0 } -.terminal-4097681083-r4 { fill: #cc75b0 } -.terminal-4097681083-r5 { fill: #100d18;text-decoration: underline; } -.terminal-4097681083-r6 { fill: #100d18 } -.terminal-4097681083-r7 { fill: #352b49 } -.terminal-4097681083-r8 { fill: #33314e } -.terminal-4097681083-r9 { fill: #ff69b4 } -.terminal-4097681083-r10 { fill: #b5b5b9 } -.terminal-4097681083-r11 { fill: #bfb5c8 } -.terminal-4097681083-r12 { fill: #7f7f84 } -.terminal-4097681083-r13 { fill: #4f2442 } -.terminal-4097681083-r14 { fill: #7b7b88;font-weight: bold } -.terminal-4097681083-r15 { fill: #b5b5b9;font-weight: bold } -.terminal-4097681083-r16 { fill: #dfdfe0;font-weight: bold } -.terminal-4097681083-r17 { fill: #fed700;font-weight: bold } -.terminal-4097681083-r18 { fill: #54545c } -.terminal-4097681083-r19 { fill: #6f6f75 } -.terminal-4097681083-r20 { fill: #1d1d28 } -.terminal-4097681083-r21 { fill: #1d1c34 } -.terminal-4097681083-r22 { fill: #6f6f75;font-weight: bold } -.terminal-4097681083-r23 { fill: #00934c } -.terminal-4097681083-r24 { fill: #74707d } -.terminal-4097681083-r25 { fill: #242430;font-weight: bold } -.terminal-4097681083-r26 { fill: #242430 } -.terminal-4097681083-r27 { fill: #808084 } -.terminal-4097681083-r28 { fill: #141420 } -.terminal-4097681083-r29 { fill: #923e6c } -.terminal-4097681083-r30 { fill: #6c6c72 } -.terminal-4097681083-r31 { fill: #828287 } -.terminal-4097681083-r32 { fill: #5f5f66 } -.terminal-4097681083-r33 { fill: #181824 } -.terminal-4097681083-r34 { fill: #038f5d;font-weight: bold } -.terminal-4097681083-r35 { fill: #cc64a0;font-weight: bold } -.terminal-4097681083-r36 { fill: #afafb0 } + .terminal-2331259748-r1 { fill: #b2b2b4 } +.terminal-2331259748-r2 { fill: #c5c8c6 } +.terminal-2331259748-r3 { fill: #dfdfe0 } +.terminal-2331259748-r4 { fill: #cc75b0 } +.terminal-2331259748-r5 { fill: #100d18;text-decoration: underline; } +.terminal-2331259748-r6 { fill: #100d18 } +.terminal-2331259748-r7 { fill: #352b49 } +.terminal-2331259748-r8 { fill: #33314e } +.terminal-2331259748-r9 { fill: #ff69b4 } +.terminal-2331259748-r10 { fill: #b5b5b9 } +.terminal-2331259748-r11 { fill: #bfb5c8 } +.terminal-2331259748-r12 { fill: #7f7f84 } +.terminal-2331259748-r13 { fill: #210d17 } +.terminal-2331259748-r14 { fill: #4f2442 } +.terminal-2331259748-r15 { fill: #7b7b88;font-weight: bold } +.terminal-2331259748-r16 { fill: #b5b5b9;font-weight: bold } +.terminal-2331259748-r17 { fill: #dfdfe0;font-weight: bold } +.terminal-2331259748-r18 { fill: #fed700;font-weight: bold } +.terminal-2331259748-r19 { fill: #54545c } +.terminal-2331259748-r20 { fill: #6f6f75 } +.terminal-2331259748-r21 { fill: #1d1d28 } +.terminal-2331259748-r22 { fill: #1d1c34 } +.terminal-2331259748-r23 { fill: #6f6f75;font-weight: bold } +.terminal-2331259748-r24 { fill: #00934c } +.terminal-2331259748-r25 { fill: #74707d } +.terminal-2331259748-r26 { fill: #242430;font-weight: bold } +.terminal-2331259748-r27 { fill: #242430 } +.terminal-2331259748-r28 { fill: #808084 } +.terminal-2331259748-r29 { fill: #141420 } +.terminal-2331259748-r30 { fill: #923e6c } +.terminal-2331259748-r31 { fill: #6c6c72 } +.terminal-2331259748-r32 { fill: #828287 } +.terminal-2331259748-r33 { fill: #5f5f66 } +.terminal-2331259748-r34 { fill: #181824 } +.terminal-2331259748-r35 { fill: #038f5d;font-weight: bold } +.terminal-2331259748-r36 { fill: #cc64a0;font-weight: bold } +.terminal-2331259748-r37 { fill: #afafb0 } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GET Send  -view                                          -╭─ Collection── Request ─╮ - GET echoview: expand request                           tions - GET get ranExpand the request section━━━━━━━━━━━━ - POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ - GET getToggle the collection browserd header  - GET get────────────╯ - POS create       │╭────────────────────────────────────── Response ─╮ - DEL delete a post││BodyHeadersCookiesTrace -│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo ││ -server we can use to ││ -see exactly what ││ -request is being ││ -sent.││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help + + + + +Posting                                                                    + +GET Send  +view +╭─ Collection── Request ─╮ + GET echoview: expand request                           tions + GET get ranExpand the request section━━━━━━━━━━━━ + POS echo poview: expand response                          ╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplacehExpand the response section╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/view: toggle collection browser                ╱╱╱╱╱╱╱╱╱╱╱╱ + GET getToggle the collection browserd header  + GET get────────────╯ + POS create       │╭────────────────────────────────────── Response ─╮ + DEL delete a post││BodyHeadersCookiesTrace +│───────────────────────││━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo ││ +server we can use to ││ +see exactly what ││ +request is being ││ +sent.││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Quit  f1 Help diff --git a/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg b/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg index 21bd067c..83c631f6 100644 --- a/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg +++ b/tests/__snapshots__/test_snapshots/TestNewRequest.test_dialog_loads_and_can_be_used.svg @@ -19,171 +19,170 @@ font-weight: 700; } - .terminal-1288239160-matrix { + .terminal-3379148047-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-1288239160-title { + .terminal-3379148047-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-1288239160-r1 { fill: #9c9c9d } -.terminal-1288239160-r2 { fill: #c5c8c6 } -.terminal-1288239160-r3 { fill: #dfdfe0 } -.terminal-1288239160-r4 { fill: #b2669a } -.terminal-1288239160-r5 { fill: #0e0b15;text-decoration: underline; } -.terminal-1288239160-r6 { fill: #0e0b15 } -.terminal-1288239160-r7 { fill: #2e2540 } -.terminal-1288239160-r8 { fill: #50505e } -.terminal-1288239160-r9 { fill: #2e2e3f } -.terminal-1288239160-r10 { fill: #dfdfe1;font-weight: bold } -.terminal-1288239160-r11 { fill: #9d9da1 } -.terminal-1288239160-r12 { fill: #a79eaf } -.terminal-1288239160-r13 { fill: #6f6f73 } -.terminal-1288239160-r14 { fill: #0f0f1f } -.terminal-1288239160-r15 { fill: #45203a } -.terminal-1288239160-r16 { fill: #dfdfe1 } -.terminal-1288239160-r17 { fill: #616166 } -.terminal-1288239160-r18 { fill: #e1e1e6 } -.terminal-1288239160-r19 { fill: #4a4a51 } -.terminal-1288239160-r20 { fill: #191923 } -.terminal-1288239160-r21 { fill: #8b8b93 } -.terminal-1288239160-r22 { fill: #19192d } -.terminal-1288239160-r23 { fill: #616166;font-weight: bold } -.terminal-1288239160-r24 { fill: #737387 } -.terminal-1288239160-r25 { fill: #a5a5b2 } -.terminal-1288239160-r26 { fill: #008042 } -.terminal-1288239160-r27 { fill: #9e9ea2;font-weight: bold } -.terminal-1288239160-r28 { fill: #65626d } -.terminal-1288239160-r29 { fill: #403e62 } -.terminal-1288239160-r30 { fill: #e3e3e8 } -.terminal-1288239160-r31 { fill: #e5e4e9 } -.terminal-1288239160-r32 { fill: #210d17 } -.terminal-1288239160-r33 { fill: #0d0e2e } -.terminal-1288239160-r34 { fill: #707074 } -.terminal-1288239160-r35 { fill: #11111c } -.terminal-1288239160-r36 { fill: #5e5e64 } -.terminal-1288239160-r37 { fill: #727276 } -.terminal-1288239160-r38 { fill: #535359 } -.terminal-1288239160-r39 { fill: #15151f } -.terminal-1288239160-r40 { fill: #027d51;font-weight: bold } -.terminal-1288239160-r41 { fill: #ff7ec8;font-weight: bold } -.terminal-1288239160-r42 { fill: #dadadb } + .terminal-3379148047-r1 { fill: #9c9c9d } +.terminal-3379148047-r2 { fill: #c5c8c6 } +.terminal-3379148047-r3 { fill: #dfdfe0 } +.terminal-3379148047-r4 { fill: #b2669a } +.terminal-3379148047-r5 { fill: #0e0b15;text-decoration: underline; } +.terminal-3379148047-r6 { fill: #0e0b15 } +.terminal-3379148047-r7 { fill: #2e2540 } +.terminal-3379148047-r8 { fill: #50505e } +.terminal-3379148047-r9 { fill: #2e2e3f } +.terminal-3379148047-r10 { fill: #dfdfe1;font-weight: bold } +.terminal-3379148047-r11 { fill: #9d9da1 } +.terminal-3379148047-r12 { fill: #a79eaf } +.terminal-3379148047-r13 { fill: #6f6f73 } +.terminal-3379148047-r14 { fill: #0f0f1f } +.terminal-3379148047-r15 { fill: #45203a } +.terminal-3379148047-r16 { fill: #dfdfe1 } +.terminal-3379148047-r17 { fill: #616166 } +.terminal-3379148047-r18 { fill: #e1e1e6 } +.terminal-3379148047-r19 { fill: #4a4a51 } +.terminal-3379148047-r20 { fill: #191923 } +.terminal-3379148047-r21 { fill: #8b8b93 } +.terminal-3379148047-r22 { fill: #19192d } +.terminal-3379148047-r23 { fill: #616166;font-weight: bold } +.terminal-3379148047-r24 { fill: #a5a5b2 } +.terminal-3379148047-r25 { fill: #008042 } +.terminal-3379148047-r26 { fill: #9e9ea2;font-weight: bold } +.terminal-3379148047-r27 { fill: #65626d } +.terminal-3379148047-r28 { fill: #403e62 } +.terminal-3379148047-r29 { fill: #e3e3e8 } +.terminal-3379148047-r30 { fill: #e5e4e9 } +.terminal-3379148047-r31 { fill: #210d17 } +.terminal-3379148047-r32 { fill: #0d0e2e } +.terminal-3379148047-r33 { fill: #707074 } +.terminal-3379148047-r34 { fill: #11111c } +.terminal-3379148047-r35 { fill: #5e5e64 } +.terminal-3379148047-r36 { fill: #727276 } +.terminal-3379148047-r37 { fill: #535359 } +.terminal-3379148047-r38 { fill: #15151f } +.terminal-3379148047-r39 { fill: #027d51;font-weight: bold } +.terminal-3379148047-r40 { fill: #ff7ec8;font-weight: bold } +.terminal-3379148047-r41 { fill: #dadadb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  - -╭─ Collection ────Title                            ─────── Request ─╮ - GET echo        foo                            oOptions - GET get random u━━━━━━━━━━━━━━━━━ - POS echo post   File name optional╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholderfoo.posting.yamlrs.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all Description optional Add header  - GET get one bar─────────────────╯ - POS create  ────── Response ─╮ - DEL delete aDirectory                         -▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ - GET get co - GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - PUT edit a comm││ -▼ todos/││ - GET get all      ││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - f3 Pager  f4 Editor  ESC Cancel  ^n Create  + + + + +Posting                                                                    + +GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  + +╭─ Collection ────Title                            ─────── Request ─╮ + GET echo        foo                            oOptions + GET get random u━━━━━━━━━━━━━━━━━ + POS echo post   File name optional╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholderfoo               .posting.yamlrs.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all Description optional Add header  + GET get one bar─────────────────╯ + POS create  ────── Response ─╮ + DEL delete aDirectory                         +▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ + GET get co + GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + PUT edit a comm││ +▼ todos/││ + GET get all      ││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + f3 Pager  f4 Editor  ESC Cancel  ^n Create  diff --git a/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg b/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg index 2ef2c84d..0d49f4bc 100644 --- a/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg +++ b/tests/__snapshots__/test_snapshots/TestSave.test_no_request_selected__dialog_is_prefilled_correctly.svg @@ -19,174 +19,173 @@ font-weight: 700; } - .terminal-3104656709-matrix { + .terminal-2332101151-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3104656709-title { + .terminal-2332101151-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3104656709-r1 { fill: #9c9c9d } -.terminal-3104656709-r2 { fill: #c5c8c6 } -.terminal-3104656709-r3 { fill: #dfdfe0 } -.terminal-3104656709-r4 { fill: #b2669a } -.terminal-3104656709-r5 { fill: #0e0b15;text-decoration: underline; } -.terminal-3104656709-r6 { fill: #0e0b15 } -.terminal-3104656709-r7 { fill: #2e2540 } -.terminal-3104656709-r8 { fill: #50505e } -.terminal-3104656709-r9 { fill: #2e2e3f } -.terminal-3104656709-r10 { fill: #dfdfe1;font-weight: bold } -.terminal-3104656709-r11 { fill: #9d9da1 } -.terminal-3104656709-r12 { fill: #a79eaf } -.terminal-3104656709-r13 { fill: #6f6f73 } -.terminal-3104656709-r14 { fill: #0f0f1f } -.terminal-3104656709-r15 { fill: #45203a } -.terminal-3104656709-r16 { fill: #dfdfe1 } -.terminal-3104656709-r17 { fill: #616166 } -.terminal-3104656709-r18 { fill: #403e62 } -.terminal-3104656709-r19 { fill: #e3e3e8 } -.terminal-3104656709-r20 { fill: #210d17 } -.terminal-3104656709-r21 { fill: #9c9c9d;font-weight: bold } -.terminal-3104656709-r22 { fill: #4a4a51 } -.terminal-3104656709-r23 { fill: #b2497e } -.terminal-3104656709-r24 { fill: #191923 } -.terminal-3104656709-r25 { fill: #8b8b93 } -.terminal-3104656709-r26 { fill: #616166;font-weight: bold } -.terminal-3104656709-r27 { fill: #737387 } -.terminal-3104656709-r28 { fill: #e1e1e6 } -.terminal-3104656709-r29 { fill: #a5a5b2 } -.terminal-3104656709-r30 { fill: #9e9ea1 } -.terminal-3104656709-r31 { fill: #3b1c3c } -.terminal-3104656709-r32 { fill: #008042 } -.terminal-3104656709-r33 { fill: #6b6b77;font-weight: bold } -.terminal-3104656709-r34 { fill: #9e9ea2;font-weight: bold } -.terminal-3104656709-r35 { fill: #e2e2e6 } -.terminal-3104656709-r36 { fill: #0d0e2e } -.terminal-3104656709-r37 { fill: #707074 } -.terminal-3104656709-r38 { fill: #11111c } -.terminal-3104656709-r39 { fill: #5e5e64 } -.terminal-3104656709-r40 { fill: #727276 } -.terminal-3104656709-r41 { fill: #535359 } -.terminal-3104656709-r42 { fill: #15151f } -.terminal-3104656709-r43 { fill: #027d51;font-weight: bold } -.terminal-3104656709-r44 { fill: #ff7ec8;font-weight: bold } -.terminal-3104656709-r45 { fill: #dadadb } + .terminal-2332101151-r1 { fill: #9c9c9d } +.terminal-2332101151-r2 { fill: #c5c8c6 } +.terminal-2332101151-r3 { fill: #dfdfe0 } +.terminal-2332101151-r4 { fill: #b2669a } +.terminal-2332101151-r5 { fill: #0e0b15;text-decoration: underline; } +.terminal-2332101151-r6 { fill: #0e0b15 } +.terminal-2332101151-r7 { fill: #2e2540 } +.terminal-2332101151-r8 { fill: #50505e } +.terminal-2332101151-r9 { fill: #2e2e3f } +.terminal-2332101151-r10 { fill: #dfdfe1;font-weight: bold } +.terminal-2332101151-r11 { fill: #9d9da1 } +.terminal-2332101151-r12 { fill: #a79eaf } +.terminal-2332101151-r13 { fill: #6f6f73 } +.terminal-2332101151-r14 { fill: #0f0f1f } +.terminal-2332101151-r15 { fill: #45203a } +.terminal-2332101151-r16 { fill: #dfdfe1 } +.terminal-2332101151-r17 { fill: #616166 } +.terminal-2332101151-r18 { fill: #403e62 } +.terminal-2332101151-r19 { fill: #e3e3e8 } +.terminal-2332101151-r20 { fill: #210d17 } +.terminal-2332101151-r21 { fill: #9c9c9d;font-weight: bold } +.terminal-2332101151-r22 { fill: #4a4a51 } +.terminal-2332101151-r23 { fill: #b2497e } +.terminal-2332101151-r24 { fill: #191923 } +.terminal-2332101151-r25 { fill: #8b8b93 } +.terminal-2332101151-r26 { fill: #616166;font-weight: bold } +.terminal-2332101151-r27 { fill: #e1e1e6 } +.terminal-2332101151-r28 { fill: #a5a5b2 } +.terminal-2332101151-r29 { fill: #3b1c3c } +.terminal-2332101151-r30 { fill: #008042 } +.terminal-2332101151-r31 { fill: #9e9ea1 } +.terminal-2332101151-r32 { fill: #6b6b77;font-weight: bold } +.terminal-2332101151-r33 { fill: #9e9ea2;font-weight: bold } +.terminal-2332101151-r34 { fill: #e2e2e6 } +.terminal-2332101151-r35 { fill: #0d0e2e } +.terminal-2332101151-r36 { fill: #707074 } +.terminal-2332101151-r37 { fill: #11111c } +.terminal-2332101151-r38 { fill: #5e5e64 } +.terminal-2332101151-r39 { fill: #727276 } +.terminal-2332101151-r40 { fill: #535359 } +.terminal-2332101151-r41 { fill: #15151f } +.terminal-2332101151-r42 { fill: #027d51;font-weight: bold } +.terminal-2332101151-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-2332101151-r44 { fill: #dadadb } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  - -╭─ Collection ────Title                            ─────── Request ─╮ - GET echo        Foo: BaroOptions - GET get random u╺━━━━━━━━━━━━━━━ - POS echo post   File name optional -▼ jsonplaceholderfoo-bar.posting.yaml -▼ posts/ - GET get allDescription optional - GET get one baz                             ─────────────────╯ - POS create  ────── Response ─╮ - DEL delete aDirectory                         -▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ - GET get co - GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ - PUT edit a comm││ -│───────────────────────││ -Retrieve all posts││1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - ESC Cancel  ^n Create  + + + + +Posting                                                                    + +GETEnter▁▁ New request ▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁▁ Send  + +╭─ Collection ────Title                            ─────── Request ─╮ + GET echo        Foo: BaroOptions + GET get random u╺━━━━━━━━━━━━━━━ + POS echo post   File name optional +▼ jsonplaceholderfoo-bar           .posting.yaml +▼ posts/ + GET get allDescription optional + GET get one baz                             ─────────────────╯ + POS create  ────── Response ─╮ + DEL delete aDirectory                         +▼ comments/jsonplaceholder/posts          ━━━━━━━━━━━━━━━━━ + GET get co + GET get co▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔ + PUT edit a comm││ +│───────────────────────││ +Retrieve all posts││1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + ESC Cancel  ^n Create  From 806635ff165f4fea5fba283431bf688e6665465b Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 18:21:42 +0100 Subject: [PATCH 27/50] Fixing insertion locatoin --- src/posting/collection.py | 2 +- src/posting/widgets/collection/browser.py | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/posting/collection.py b/src/posting/collection.py index be23f2ca..5fccd0f7 100644 --- a/src/posting/collection.py +++ b/src/posting/collection.py @@ -112,7 +112,7 @@ def to_httpx_args(self) -> dict[str, Any]: def request_sort_key(request: RequestModel) -> tuple[int, str]: method_order = {"GET": 0, "POST": 1, "PUT": 2, "PATCH": 3, "DELETE": 4} - return (method_order.get(request.method, 5), request.name) + return (method_order.get(request.method.upper(), 5), request.name) @total_ordering diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index e00a009a..ef0bcfc2 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -312,7 +312,7 @@ def _handle_new_request_data(new_request_data: NewRequestData | None) -> None: # Find where to insert the new request amongst its new siblings. if sibling_requests: - index = bisect.bisect_left( + index = bisect.bisect_right( sibling_requests, new_request, ) @@ -323,7 +323,7 @@ def _handle_new_request_data(new_request_data: NewRequestData | None) -> None: else: before = None - if before: + if before is not None: sibling_requests.insert(before, new_request) else: sibling_requests.append(new_request) From 28e2f78bea444c17d5e256d3c91cbe0eca1f6872 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 18:22:50 +0100 Subject: [PATCH 28/50] Downgrade textual --- pyproject.toml | 2 +- requirements-dev.lock | 2 +- requirements.lock | 2 +- src/posting/widgets/collection/browser.py | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index 468bb2ad..1ac96f24 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ dependencies = [ "pyyaml==6.0.1", "pydantic-settings==2.3.4", "python-dotenv==1.0.1", - "textual[syntax]==0.76.0", + "textual[syntax]==0.75.0", "textual-autocomplete==3.0.0a9", ] readme = "README.md" diff --git a/requirements-dev.lock b/requirements-dev.lock index 423e046d..77d5b8e7 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -156,7 +156,7 @@ sniffio==1.3.1 # via httpx syrupy==4.6.1 # via pytest-textual-snapshot -textual==0.76.0 +textual==0.75.0 # via posting # via pytest-textual-snapshot # via textual-autocomplete diff --git a/requirements.lock b/requirements.lock index 0dbede75..30410761 100644 --- a/requirements.lock +++ b/requirements.lock @@ -63,7 +63,7 @@ rich==13.7.1 sniffio==1.3.1 # via anyio # via httpx -textual==0.76.0 +textual==0.75.0 # via posting # via textual-autocomplete textual-autocomplete==3.0.0a9 diff --git a/src/posting/widgets/collection/browser.py b/src/posting/widgets/collection/browser.py index ef0bcfc2..02677911 100644 --- a/src/posting/widgets/collection/browser.py +++ b/src/posting/widgets/collection/browser.py @@ -17,7 +17,7 @@ from textual.widgets import Static, Tree from textual.widgets.tree import TreeNode -from posting.collection import Collection, RequestModel, request_sort_key +from posting.collection import Collection, RequestModel from posting.config import SETTINGS from posting.files import get_unique_request_filename from posting.help_screen import HelpData From fc2f8673957960133d983e3059b99a9191477233 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 18:24:00 +0100 Subject: [PATCH 29/50] Upgrade Textual --- .coverage | Bin 53248 -> 53248 bytes pyproject.toml | 2 +- requirements-dev.lock | 2 +- requirements.lock | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.coverage b/.coverage index 4593a81730a79aee3235ae0ea7c248b1e8e17021..e9b2a9d07f7dc404a70c6cad3e3a7a0eaa218230 100644 GIT binary patch delta 1415 zcmX}rYfM{Z7zglkcuEgFJvT~$-fz$rN-2ewJ8P##;{~(KX`Idgafx#=8Tdh#eSpF+ z?}t%f^UP(M%z$5vX2Le3Cg3&}qh@T*4>NH_3QaU;SHfjX#T8N`N@zvc=XLe)-e2Bp_T*CCVF#WW+?VjHuv3(*1L4; zGV|XNJuEP1U(|hSzs*0{$uL7j@h@(-U-}rlH*?Q!HF1j>dVHVBjOCV^w_h&Xx}TdF z7*3p=yndJAM&dfwpm4;K$9ziG6FW_k%<4&LMLrq$LL%x628pFtGtk0)K~HM(6ZeHC zQmt-|H$AE+!F*w7Ibx+j5uYwCBV{y2_^!n>{Kl2_uJU?Co(xA>(_p${NHcIwoJX@8`MB=hIRrgKFcNzkY?tjPwlgC=u* zYtiw5m79LP852n8GVTos%@HhH>}q zCR%txOIC&nEzZo%fj}B*W2@F$FEbDPP)hR8He97`A9#Y9PraQPcyRd7)kwljVzdth zXVdV(p+}hfb7dHFpOZAGN5-A6Nu-{RUH&C2JOA+2s~bjzL}}rxynhX}tIJI8t4%9M z>S(1@++a;4LQ}x!Dms_T<)&xcOy8hWCbhKmcn8_F%;wsu2hU9=fO!r z>d)iOMl-3RZOEYwxU$`Y$utxUZ9d*33nV~mn=Jy_B)bI$;-^cqwJUKYzME94dna~V zOeFv32$XBrKTl?UxVHNH$ntt&fcVsoQHS`{KU-p&W6u+>dUm2xG2$No|G2AWCp=I` z+-mP={XrM~C5Nd$^2?pScGVRr#7Wn_V(lBHGgtdcS7JS7Ar4wKC|WF=TFuO9{*6ls zmeDa?^I#)3I%<-%YdeC*z4OAqmpH90EkhqqEOb~VEbM9X>U^YJ^`w1t?`HKt+Iivl z>rzVM=)9mFcA#NsL4y!OeGoyNP>ouk5;a0O%0n4yfKs#w%qRyXs2)scArzxJP*4C_ zPhY44NQtj!Flgtkqwhv3p65J%qE~u1bCMp~5)3RjTrg0mILjsfQINi&``sMe3|IhoL^CqXA zebCtl*TPuiN8vfF@vF*D-7WkQld3Lb_*wN2{0n|WUB-9wm-$-0g3snnypC6JFSs#o znCs_maZOyc_BNN!MQcmB5N$rE)g}lF!Y`acc%=SE7!Ym?z3S&eo8S_53Tc8(P-s>) zKWpx5ZfQQ&T+wu>f7O%@1n8crRE_V)`mw4;k|$p8N@oYfr(Fr|0Fo_dRnf91sVOYO zd~;s!UAyK_&eBew((m&Z$Z;CY)(Io){kQt@5~n3qw1|xAVCTk{=Xxh!nia%F8zJJZ zf>f-BFjhs%X)qX_j^R{2IZU%HSo-nntnsHKGk;#1T=cV%L$oXml3v9>la^;Qcp1Ym zQ`5dh$B-lI`tW4AD{}VpZ!bo)w=2m(x>IN9)h3V zaAjVezJC4pi8L_@tsTC>ca>xx-JsJH1ggninu7QzB^gn23t{(&4|*(RL8O4TcC~Zt zrg~|3(Rriiy`oO{_gP8>*-Zz6N^K&$XxQ#QbE8H!U+uW{!KHy0AwqMSLb!6z%Jd~E z$xb@gDVt>(B%h`>h2*MxBvy5Wh7SGx&gk-dX88J*6d^NxRl}e!BjX5S}daQ4*2l~w9IqgO=B-x)cOaHftbIOgBkubA(BZ;2+YjySE z7dCQE%<$MYDao1j`_Qv0a+;=%vr5vs-qN$-q($uZm<`QzZLvFmUTy8ZYelKqOiqbj zPaNMw2m1IwV&o=rQe5yvWSpQyWZZ<2VdBQ_3=RTM8fg<6E2R%Ht5ygk4Rjg5Sz4>l zXT0vq;}=%jU(MJZ22w8;T@9+Lqtop+X_SMdwu|((qY)F|1v6%bk$z`7S9PS8&Mnak zBOpDVWPJCQjY?8OE8V71R!^#FvRTajU;2E${yPy&Yln#=m9z|rbegBSykH_uar&wW zwvl7v^oQGG4df`D#)V54%u}w8EDy*!m-8yMJUK$^&`>)}Ww9$zOv=Q}?qWDdO2wbL zqjg(a%bD%xSNt6Ja@B7y&%YMgp2)k`8U%N?k{**K!D%!en$Q@iM=el|n&2230%a%% zdr&nLpeopn`ok_%2|G~*jP8 zXeb;(jZlsT!(lWC4xxciiW=Y``UaGsdN_avKryO={b-mLiZBRJh-zRT%ER8z`V#*G DqYY+q diff --git a/pyproject.toml b/pyproject.toml index 1ac96f24..468bb2ad 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -15,7 +15,7 @@ dependencies = [ "pyyaml==6.0.1", "pydantic-settings==2.3.4", "python-dotenv==1.0.1", - "textual[syntax]==0.75.0", + "textual[syntax]==0.76.0", "textual-autocomplete==3.0.0a9", ] readme = "README.md" diff --git a/requirements-dev.lock b/requirements-dev.lock index 77d5b8e7..423e046d 100644 --- a/requirements-dev.lock +++ b/requirements-dev.lock @@ -156,7 +156,7 @@ sniffio==1.3.1 # via httpx syrupy==4.6.1 # via pytest-textual-snapshot -textual==0.75.0 +textual==0.76.0 # via posting # via pytest-textual-snapshot # via textual-autocomplete diff --git a/requirements.lock b/requirements.lock index 30410761..0dbede75 100644 --- a/requirements.lock +++ b/requirements.lock @@ -63,7 +63,7 @@ rich==13.7.1 sniffio==1.3.1 # via anyio # via httpx -textual==0.75.0 +textual==0.76.0 # via posting # via textual-autocomplete textual-autocomplete==3.0.0a9 From 6213e53fb90372a755e88332a5afa81d8185d1e1 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 18:36:13 +0100 Subject: [PATCH 30/50] Ensure filename input can still be blank --- src/posting/widgets/collection/new_request_modal.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/posting/widgets/collection/new_request_modal.py b/src/posting/widgets/collection/new_request_modal.py index 48238279..f853b731 100644 --- a/src/posting/widgets/collection/new_request_modal.py +++ b/src/posting/widgets/collection/new_request_modal.py @@ -135,11 +135,15 @@ def compose(self) -> ComposeResult: yield Label("File name [dim]optional[/dim]") with Horizontal(): - yield PostingInput( + filename_input = PostingInput( placeholder="Enter a file name", id="file-name-input", validators=[FileNameValidator()], ) + # Empty is valid, because we'll generate a filename if the user leaves + # the file name input blank. + filename_input.valid_empty = True + yield filename_input yield Label(".posting.yaml", id="file-suffix-label") yield Label("Description [dim]optional[/dim]") From badce8a37f17190b2f3aafe512605453cd27b6d8 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Tue, 13 Aug 2024 22:38:06 +0100 Subject: [PATCH 31/50] Adding guide --- README.md | 2 +- docs/guide/collections.md | 31 +++++++++ docs/guide/command_palette.md | 0 docs/guide/configuration.md | 125 ++++++++++++++++++++++++++++++++++ docs/guide/environments.md | 56 +++++++++++++++ docs/guide/index.md | 11 +++ docs/guide/navigation.md | 45 ++++++++++++ docs/guide/requests.md | 22 ++++++ docs/overrides/home.html | 28 +++++++- docs/roadmap.md | 39 +++++++++++ docs/stylesheets/extra.css | 99 +++++++++++++++++++++++---- mkdocs.yml | 27 ++++++++ 12 files changed, 468 insertions(+), 17 deletions(-) create mode 100644 docs/guide/collections.md create mode 100644 docs/guide/command_palette.md create mode 100644 docs/guide/configuration.md create mode 100644 docs/guide/environments.md create mode 100644 docs/guide/index.md create mode 100644 docs/guide/navigation.md create mode 100644 docs/guide/requests.md create mode 100644 docs/roadmap.md diff --git a/README.md b/README.md index 359ae431..aa70e4fb 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# Posting. +# Posting **A powerful HTTP client that lives in your terminal.** diff --git a/docs/guide/collections.md b/docs/guide/collections.md new file mode 100644 index 00000000..060861b4 --- /dev/null +++ b/docs/guide/collections.md @@ -0,0 +1,31 @@ +## Overview + +A *collection* is just a directory on your file system which may or may not contain requests in the `.posting.yaml` format. + +There's absolutely nothing special about a collection. +It contains no "special files" or metadata -- it's just a directory. +It could even be empty. +"Collection" is simply the name we give to the directory which we've loaded into Posting. + +## The default collection + +If you launch Posting without any arguments, it will load the default collection. +You can check where this is by running `posting locate collection`. + +## Loading a collection + +If you want to load a collection, you can do so by passing the path to the collection directory to Posting. + +## Example + + + +To open a collection (a directory containing requests), use the `--collection` option: + +```bash +posting --collection path/to/collection +``` + +This will recursively find and display requests in the sidebar. +If you don't supply a directory, Posting will use the default collection directory. +You can check where this is by running `posting locate collection`. \ No newline at end of file diff --git a/docs/guide/command_palette.md b/docs/guide/command_palette.md new file mode 100644 index 00000000..e69de29b diff --git a/docs/guide/configuration.md b/docs/guide/configuration.md new file mode 100644 index 00000000..3a691055 --- /dev/null +++ b/docs/guide/configuration.md @@ -0,0 +1,125 @@ +Posting can be configured using a configuration file, environment variables, and/or `.env` files. + +Configuration values are loaded in the following order of precedence (highest to lowest): + +1. Configuration file +2. Environment variables +3. `.env` files + +The range of available configuration will be greatly expanded in the future. + +## Configuration file + +You can write configuration for Posting using YAML. + +The location of the config file can be checked using the command `posting locate config`. + +Here's an example configuration file: + +```yaml +theme: galaxy +layout: horizontal +response: + prettify_json: false +heading: + visible: true + show_host: false +``` + +## Environment variables + +All configuration values can also be set as environment variables. + +Simply prefix the name of the config with `POSTING_` and set it as an environment variable. + +For nested configuration values, use `__` as the delimiter. So to set `heading.visible` to `false`, you can set the environment variable `POSTING_HEADING__VISIBLE=false`. + +For example, to set the theme to `galaxy`, you can set the environment variable `POSTING_THEME=galaxy`. + +## dotenv (`.env`) files + +Posting also supports `.env` (dotenv) files, which are useful if you want to swap out environment variable values depending on the environment you're working in (for example, "dev" vs "prod"). + +You can tell Posting to use a `.env` file using the `--env` option. +This option can be supplied multiple times to load multiple `.env` files. + +Here's an example `.env` file: + +```bash +POSTING_THEME="cobalt" +POSTING_LAYOUT="vertical" +POSTING_HEADING__VISIBLE="false" +``` + +Dotenv files are separate from collections, although you may wish to include them inside a collection to make it easy to version and share with others. + +## Full configuration reference + +The table below lists all available configuration options and their environment variable equivalents, their default values, and descriptions. + +| Config Key (Env Var) | Values (Default) | Description | +|----------------------|------------------|-------------| +| `theme` (`POSTING_THEME`) | `"posting"`, `"galaxy"`, `"monokai"`, `"solarized-light"`, `"nautilus"`, `"nebula"`, `"alpine"`, `"cobalt"`, `"twilight"`, `"hacker"` (Default: `"posting"`) | Sets the theme of the application. | +| `load_user_themes` (`POSTING_LOAD_USER_THEMES`) | `true`, `false` (Default: `true`) | If enabled, load user themes from the theme directory, allowing them to be specified in config and selected via the command palette. | +| `load_builtin_themes` (`POSTING_LOAD_BUILTIN_THEMES`) | `true`, `false` (Default: `true`) | If enabled, load builtin themes, allowing them to be specified in config and selected via the command palette. | +| `theme_directory` (`POSTING_THEME_DIRECTORY`) | (Default: `${XDG_DATA_HOME}/posting/themes`) | The directory containing user themes. | +| `layout` (`POSTING_LAYOUT`) | `"vertical"`, `"horizontal"` (Default: `"horizontal"`) | Sets the layout of the application. | +| `use_host_environment` (`POSTING_USE_HOST_ENVIRONMENT`) | `true`, `false` (Default: `false`) | Allow/deny using environment variables from the host machine in requests via `$env:` syntax. When disabled, only variables defined explicitly in `.env` files will be available for use. | +| `animation` (`POSTING_ANIMATION`) | `"none"`, `"basic"`, `"full"` (Default: `"none"`) | Controls the animation level. | +| `response.prettify_json` (`POSTING_RESPONSE__PRETTIFY_JSON`) | `true`, `false` (Default: `true`) | If enabled, JSON responses will be pretty-formatted. | +| `response.show_size_and_time` (`POSTING_RESPONSE__SHOW_SIZE_AND_TIME`) | `true`, `false` (Default: `true`) | If enabled, the size and time taken for the response will be displayed in the response area border subtitle. | +| `heading.visible` (`POSTING_HEADING__VISIBLE`) | `true`, `false` (Default: `true`) | Show/hide the app header. | +| `heading.show_host` (`POSTING_HEADING__SHOW_HOST`) | `true`, `false` (Default: `true`) | Show/hide the hostname in the app header. | +| `heading.show_version` (`POSTING_HEADING__SHOW_VERSION`) | `true`, `false` (Default: `true`) | Show/hide the version in the app header. | +| `url_bar.show_value_preview` (`POSTING_URL_BAR__SHOW_VALUE_PREVIEW`) | `true`, `false` (Default: `true`) | Show/hide the variable value preview below the URL bar. | +| `collection_browser.position` (`POSTING_COLLECTION_BROWSER__POSITION`) | `"left"`, `"right"` (Default: `"left"`) | The position of the collection browser on screen. | +| `pager` (`POSTING_PAGER`) | (Default: `$PAGER`) | Command to use for paging text. | +| `pager_json` (`POSTING_PAGER_JSON`) | (Default: `$PAGER`) | Command to use for paging JSON. | +| `editor` (`POSTING_EDITOR`) | (Default: `$EDITOR`) | Command to use for opening files in an external editor. | +| `ssl.ca_bundle` (`POSTING_SSL__CA_BUNDLE`) | Absolute path (Default: `unset`) | Absolute path to a CA bundle file/dir. If not set, the [Certifi](https://pypi.org/project/certifi/) CA bundle will be used. | +| `ssl.verify` (`POSTING_SSL__VERIFY`) | `true`, `false` (Default: `true`) | Verify server identity. | +| `ssl.certificate_path` (`POSTING_SSL__CERTIFICATE_PATH`) | Absolute path (Default: `unset`) | Absolute path to a client SSL certificate file or directory. | +| `ssl.key_file` (`POSTING_SSL__KEY_FILE`) | Absolute path (Default: `unset`) | Absolute path to a client SSL key file. | +| `ssl.password` (`POSTING_SSL__PASSWORD`) | Password for the key file. (Default: `unset`) | Password to decrypt the key file if it's encrypted. | +| `focus.on_startup` (`POSTING_FOCUS__ON_STARTUP`) | `"url"`, `"method", "collection"` (Default: `"url"`) | Automatically focus the URL bar, method, or collection browser when the app starts. | +| `focus.on_response` (`POSTING_FOCUS__ON_RESPONSE`) | `"body"`, `"tabs"` (Default: `unset`)| Automatically focus the response tabs or response body text area when a response is received. | +| `text_input.blinking_cursor` (`POSTING_TEXT_INPUT__BLINKING_CURSOR`) | `true`, `false` (Default: `true`) | If enabled, the cursor will blink in input widgets and text area widgets. | +| `command_palette.theme_preview` (`POSTING_COMMAND_PALETTE__THEME_PREVIEW`) | `true`, `false` (Default: `false`) | If enabled, the command palette will display a preview of the selected theme when the cursor is over it. This will slow down cursor movement and so is disabled by default. | +| `use_xresources` (`POSTING_USE_XRESOURCES`) | `true`, `false` (Default: `false`) | Try to create themes called `xresources-dark` and `xresources-light` (see the section below) | + +## SSL certificate configuration + +Posting can load custom CA bundles from a `.pem` file. + +The easiest way to do this is in your `config.yaml` file: + +```yaml +ssl: + ca_bundle: 'absolute/path/to/certificate.pem' +``` + +## Environment-specific certificates + +If the required CA bundle differs per environment, you can again use the principle that all configuration can be set as environment variables which can optionally be set and loaded using `--env` and `.env` files: + +```bash +# dev.env +POSTING_SSL__CA_BUNDLE='/path/to/certificate.pem' +``` + +Now load the `dev.env` file when working in the `dev` environment to ensure the dev environment CA bundle is used: + +```bash +posting --env dev.env +``` + +## Client-side certificates + +You can specify local certificates to use as a client-side certificate: + +```yaml +ssl: + certificate_path: /path/to/certificate.pem + key_file: /path/to/key.key # optional + password: '***********' # optional password for key_file +``` diff --git a/docs/guide/environments.md b/docs/guide/environments.md new file mode 100644 index 00000000..bd923aa2 --- /dev/null +++ b/docs/guide/environments.md @@ -0,0 +1,56 @@ +## Overview + +You can use variables in the UI using the `${VARIABLE_NAME}` or `$VARIABLE_NAME` syntax. +These variables will be substituted into outgoing requests. + +

+ url-bar-environments-short +

+ +`.env` files can be loaded using the `--env` option. +Variables from these files can then be used in the UI. + +## Example + +Imagine you're testing an API which exists in both `dev` and `prod` environments. + +The `dev` and `prod` environments share some common variables, but differ in many ways too. +We can model this by having a single `shared.env` file which contains variables which are shared between environments, and then a `dev.env` and `prod.env` file which contain environment specific variables. + +```bash +# file: shared.env +API_PATH="/api/v1" +ENV_NAME="shared" + +# file: dev.env +API_KEY="dev-api-key" +ENV_NAME="dev" +BASE_URL="https://${ENV_NAME}.example.com" + +# file: prod.env +API_KEY="prod-api-key" +ENV_NAME="prod" +BASE_URL="https://${ENV_NAME}.example.com" +``` + +When working in the `dev` environment, you can then load all of the shared variables and all of the development environment specific variables using the `--env` option: + +```bash +posting --env shared.env --env dev.env +``` + +This will load all of the shared variables from `shared.env`, and then load the variables from `dev.env`. Since `ENV_NAME` appears in both files, the value from the `dev.env` file will be used since that was the last one specified. + +Note that you do *not* need to restart to load changes made to these files, +so you can open and edit your env files in an editor of your choice alongside Posting. +However, autocompletion and variable highlighting will not update until Posting is restarted. + +If you want to permit using environment variables that exist on the host machine (i.e. those which are not defined in any `.env` files), you must set the `use_host_environment` config option to `true` (or set the environment variable `POSTING_USE_HOST_ENVIRONMENT=true`). + +### Environment specific config + +Since all Posting configuration options can also be specified as environment variables, we can also put environment specific config inside `.env` files. There's a dedicated "Configuration" section in this document which covers this in more detail. + +For example, if you wanted to use a light theme in the prod environment (as a subtle reminder that you're in production!), you could set the environment variable `POSTING_THEME=solarized-light` inside the `prod.env` file. + +Note that configuration files take precedence over environment variables, so if you set a value in both a `.env` file and a `config.yaml`, the value from the `config.yaml` file will be used. diff --git a/docs/guide/index.md b/docs/guide/index.md new file mode 100644 index 00000000..b5d6819b --- /dev/null +++ b/docs/guide/index.md @@ -0,0 +1,11 @@ +## Installation + +Posting can be installed via [`pipx`](https://pipx.pypa.io/stable/): + +```bash +pipx install posting +``` + +Python 3.11 or later is required. + +More installation methods (`brew`, etc) will be added soon. \ No newline at end of file diff --git a/docs/guide/navigation.md b/docs/guide/navigation.md new file mode 100644 index 00000000..9ac6305c --- /dev/null +++ b/docs/guide/navigation.md @@ -0,0 +1,45 @@ +Posting can be navigated using either mouse or keyboard. + +## Jump mode + +Jump mode is the fastest way to get around. + +Press ctrl+o to enter jump mode, followed by the key corresponding to the widget you want to switch focus to (jump to). + +

+ url-bar-environments-short +

+ +With the default layout, the positioning of keys on the overlays is similar to the positioning of the keys on a QWERTY keyboard. + +To exit jump mode, press esc. + +## Tab navigation + +tab and shift+tab will move focus between widgets, +and j/k/up/down will move around within a widget. + +Some widgets have additional keybindings for navigation. +You can check these by pressing f1 while it is focused. + +Where it makes sense, up and down will also move between widgets. + +## Contextual help + +Many widgets have additional bindings beyond those displayed in the footer. You can view the full list of keybindings for the currently +focused widget, as well as additional usage information and tips, by pressing f1 or ctrl+? (or ctrl+shift+/). + +image + +## Automatic focus switching + +You can use the `focus.on_startup` and `focus.on_response` configuration options to control which widget is focused when the app starts and when a response is received. + +| Config | Default value | Description | +|----------------------|---------------|-------------| +| `focus.on_startup` | `"url"`, `"method", "collection"` (Default: `"url"`) | Automatically focus the URL bar, method, or collection browser when the app starts. | +| `focus.on_response` | `"body"`, `"tabs"` (Default: `unset`)| Automatically focus the response tabs or response body text area when a response is received. | + +## Exiting + +Quit Posting by pressing ctrl+c, or by opening the command palette and selecting "Quit". \ No newline at end of file diff --git a/docs/guide/requests.md b/docs/guide/requests.md new file mode 100644 index 00000000..8d773cd7 --- /dev/null +++ b/docs/guide/requests.md @@ -0,0 +1,22 @@ +Requests are stored directly on your file system as simple YAML files, suffixed with `.posting.yaml` - easy to read, understand, and version control! + +Here's an example of what a request file looks like: + +```yaml +name: Create user +description: Adds a new user to the system. +method: POST +url: https://jsonplaceholder.typicode.com/users +body: + content: |- + { + "firstName": "John", + "email": "john.doe@example.com" + } +headers: +- name: Content-Type + value: application/json +params: +- name: sendWelcomeEmail + value: 'true' +``` \ No newline at end of file diff --git a/docs/overrides/home.html b/docs/overrides/home.html index 940dcbda..077058b2 100644 --- a/docs/overrides/home.html +++ b/docs/overrides/home.html @@ -1,6 +1,6 @@ {% extends "main.html" %} {% block tabs %} - {{ super() }} +{{ super() }} - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get allNameValue Add header  - GET get one╰─────────────────────────────────────────────────╯ - POS create╭────────────────────────────────────── Response ─╮ - DEL delete a postBodyHeadersCookiesTrace -───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -This is an echo  -server we can use to  -see exactly what  -request is being  -sent.1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get allNameValue Add header  + GET get one╰─────────────────────────────────────────────────╯ + POS create╭────────────────────────────────────── Response ─╮ + DEL delete a postBodyHeadersCookiesTrace +───────────────────────━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +This is an echo  +server we can use to  +see exactly what  +request is being  +sent.1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + d Dupe  ⌫ Delete  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump diff --git a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg index 29252e22..6da7b15a 100644 --- a/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg +++ b/tests/__snapshots__/test_snapshots/TestLoadingRequest.test_request_loaded_into_view__headers.svg @@ -19,202 +19,202 @@ font-weight: 700; } - .terminal-3054092024-matrix { + .terminal-3823043935-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-3054092024-title { + .terminal-3823043935-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-3054092024-r1 { fill: #dfdfe1 } -.terminal-3054092024-r2 { fill: #c5c8c6 } -.terminal-3054092024-r3 { fill: #ff93dd } -.terminal-3054092024-r4 { fill: #15111e;text-decoration: underline; } -.terminal-3054092024-r5 { fill: #15111e } -.terminal-3054092024-r6 { fill: #43365c } -.terminal-3054092024-r7 { fill: #737387 } -.terminal-3054092024-r8 { fill: #e1e1e6 } -.terminal-3054092024-r9 { fill: #efe3fb } -.terminal-3054092024-r10 { fill: #9f9fa5 } -.terminal-3054092024-r11 { fill: #ff69b4 } -.terminal-3054092024-r12 { fill: #dfdfe1;font-weight: bold } -.terminal-3054092024-r13 { fill: #632e53 } -.terminal-3054092024-r14 { fill: #8b8b93 } -.terminal-3054092024-r15 { fill: #6a6a74 } -.terminal-3054092024-r16 { fill: #252532 } -.terminal-3054092024-r17 { fill: #252441 } -.terminal-3054092024-r18 { fill: #8b8b93;font-weight: bold } -.terminal-3054092024-r19 { fill: #00b85f } -.terminal-3054092024-r20 { fill: #210d17;font-weight: bold } -.terminal-3054092024-r21 { fill: #918d9d } -.terminal-3054092024-r22 { fill: #2e2e3c;font-weight: bold } -.terminal-3054092024-r23 { fill: #2e2e3c } -.terminal-3054092024-r24 { fill: #a0a0a6 } -.terminal-3054092024-r25 { fill: #191928 } -.terminal-3054092024-r26 { fill: #b74e87 } -.terminal-3054092024-r27 { fill: #87878f } -.terminal-3054092024-r28 { fill: #a3a3a9 } -.terminal-3054092024-r29 { fill: #777780 } -.terminal-3054092024-r30 { fill: #1f1f2d } -.terminal-3054092024-r31 { fill: #04b375;font-weight: bold } -.terminal-3054092024-r32 { fill: #ff7ec8;font-weight: bold } -.terminal-3054092024-r33 { fill: #dbdbdd } + .terminal-3823043935-r1 { fill: #dfdfe1 } +.terminal-3823043935-r2 { fill: #c5c8c6 } +.terminal-3823043935-r3 { fill: #ff93dd } +.terminal-3823043935-r4 { fill: #15111e;text-decoration: underline; } +.terminal-3823043935-r5 { fill: #15111e } +.terminal-3823043935-r6 { fill: #43365c } +.terminal-3823043935-r7 { fill: #737387 } +.terminal-3823043935-r8 { fill: #e1e1e6 } +.terminal-3823043935-r9 { fill: #efe3fb } +.terminal-3823043935-r10 { fill: #9f9fa5 } +.terminal-3823043935-r11 { fill: #ff69b4 } +.terminal-3823043935-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-3823043935-r13 { fill: #632e53 } +.terminal-3823043935-r14 { fill: #8b8b93 } +.terminal-3823043935-r15 { fill: #6a6a74 } +.terminal-3823043935-r16 { fill: #252532 } +.terminal-3823043935-r17 { fill: #252441 } +.terminal-3823043935-r18 { fill: #8b8b93;font-weight: bold } +.terminal-3823043935-r19 { fill: #00b85f } +.terminal-3823043935-r20 { fill: #210d17;font-weight: bold } +.terminal-3823043935-r21 { fill: #918d9d } +.terminal-3823043935-r22 { fill: #2e2e3c;font-weight: bold } +.terminal-3823043935-r23 { fill: #2e2e3c } +.terminal-3823043935-r24 { fill: #a0a0a6 } +.terminal-3823043935-r25 { fill: #191928 } +.terminal-3823043935-r26 { fill: #b74e87 } +.terminal-3823043935-r27 { fill: #87878f } +.terminal-3823043935-r28 { fill: #a3a3a9 } +.terminal-3823043935-r29 { fill: #777780 } +.terminal-3823043935-r30 { fill: #1f1f2d } +.terminal-3823043935-r31 { fill: #04b375;font-weight: bold } +.terminal-3823043935-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-3823043935-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ - GET get all usersNameValue Add header  - POS create a user╰─────────────────────────────────────────────────╯ - PUT update a user╭────────────────────────────────────── Response ─╮ - DEL delete a userBodyHeadersCookiesTrace -━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - - - - - - - - - -1:1read-onlyJSONWrap X -╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ - d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o  + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▶ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ todos/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get one╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ users/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get a user╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ + GET get all usersNameValue Add header  + POS create a user╰─────────────────────────────────────────────────╯ + PUT update a user╭────────────────────────────────────── Response ─╮ + DEL delete a userBodyHeadersCookiesTrace +━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + + + + + + + + + +1:1read-onlyJSONWrap X +╰── sample-collections ─╯╰─────────────────────────────────────────────────╯ + d Dupe  ⌫ Delete  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump diff --git a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg index e9bc521c..57bb3369 100644 --- a/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg +++ b/tests/__snapshots__/test_snapshots/TestNewRequest.test_new_request_added_to_tree_correctly_and_notification_shown.svg @@ -19,162 +19,162 @@ font-weight: 700; } - .terminal-61034583-matrix { + .terminal-723079811-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-61034583-title { + .terminal-723079811-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-61034583-r1 { fill: #dfdfe1 } -.terminal-61034583-r2 { fill: #c5c8c6 } -.terminal-61034583-r3 { fill: #ff93dd } -.terminal-61034583-r4 { fill: #15111e;text-decoration: underline; } -.terminal-61034583-r5 { fill: #15111e } -.terminal-61034583-r6 { fill: #43365c } -.terminal-61034583-r7 { fill: #737387 } -.terminal-61034583-r8 { fill: #e1e1e6 } -.terminal-61034583-r9 { fill: #efe3fb } -.terminal-61034583-r10 { fill: #9f9fa5 } -.terminal-61034583-r11 { fill: #ff69b4 } -.terminal-61034583-r12 { fill: #dfdfe1;font-weight: bold } -.terminal-61034583-r13 { fill: #632e53 } -.terminal-61034583-r14 { fill: #8b8b93 } -.terminal-61034583-r15 { fill: #6a6a74 } -.terminal-61034583-r16 { fill: #252532 } -.terminal-61034583-r17 { fill: #252441 } -.terminal-61034583-r18 { fill: #8b8b93;font-weight: bold } -.terminal-61034583-r19 { fill: #00b85f } -.terminal-61034583-r20 { fill: #793155;font-weight: bold } -.terminal-61034583-r21 { fill: #210d17;font-weight: bold } -.terminal-61034583-r22 { fill: #918d9d } -.terminal-61034583-r23 { fill: #0d0e2e } -.terminal-61034583-r24 { fill: #2e2e3c;font-weight: bold } -.terminal-61034583-r25 { fill: #2e2e3c } -.terminal-61034583-r26 { fill: #a0a0a6 } -.terminal-61034583-r27 { fill: #191928 } -.terminal-61034583-r28 { fill: #b74e87 } -.terminal-61034583-r29 { fill: #0cfa9f } -.terminal-61034583-r30 { fill: #0ce48c;font-weight: bold } -.terminal-61034583-r31 { fill: #e3e3e6 } -.terminal-61034583-r32 { fill: #ff7ec8;font-weight: bold } -.terminal-61034583-r33 { fill: #dbdbdd } + .terminal-723079811-r1 { fill: #dfdfe1 } +.terminal-723079811-r2 { fill: #c5c8c6 } +.terminal-723079811-r3 { fill: #ff93dd } +.terminal-723079811-r4 { fill: #15111e;text-decoration: underline; } +.terminal-723079811-r5 { fill: #15111e } +.terminal-723079811-r6 { fill: #43365c } +.terminal-723079811-r7 { fill: #737387 } +.terminal-723079811-r8 { fill: #e1e1e6 } +.terminal-723079811-r9 { fill: #efe3fb } +.terminal-723079811-r10 { fill: #9f9fa5 } +.terminal-723079811-r11 { fill: #ff69b4 } +.terminal-723079811-r12 { fill: #dfdfe1;font-weight: bold } +.terminal-723079811-r13 { fill: #632e53 } +.terminal-723079811-r14 { fill: #8b8b93 } +.terminal-723079811-r15 { fill: #6a6a74 } +.terminal-723079811-r16 { fill: #252532 } +.terminal-723079811-r17 { fill: #252441 } +.terminal-723079811-r18 { fill: #8b8b93;font-weight: bold } +.terminal-723079811-r19 { fill: #00b85f } +.terminal-723079811-r20 { fill: #793155;font-weight: bold } +.terminal-723079811-r21 { fill: #210d17;font-weight: bold } +.terminal-723079811-r22 { fill: #918d9d } +.terminal-723079811-r23 { fill: #0d0e2e } +.terminal-723079811-r24 { fill: #2e2e3c;font-weight: bold } +.terminal-723079811-r25 { fill: #2e2e3c } +.terminal-723079811-r26 { fill: #a0a0a6 } +.terminal-723079811-r27 { fill: #191928 } +.terminal-723079811-r28 { fill: #b74e87 } +.terminal-723079811-r29 { fill: #0cfa9f } +.terminal-723079811-r30 { fill: #0ce48c;font-weight: bold } +.terminal-723079811-r31 { fill: #e3e3e6 } +.terminal-723079811-r32 { fill: #ff7ec8;font-weight: bold } +.terminal-723079811-r33 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                    - -GETEnter a URL... Send  - -╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ -█ GET fooNameValue Add header  - GET get all╰─────────────────────────────────────────────────╯ - GET get one╭────────────────────────────────────── Response ─╮ - POS createBodyHeadersCookiesTrace - DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ -▼ comments/ - GET get comment - GET get comment -───────────────────────Request saved -barjsonplaceholder/posts/foo.posting.ya -╰── sample-collections ─╯╰───────────ml - d Dupe  D Quick Dupe  ^j Send  ^t Me + + + + +Posting                                                                    + +GETEnter a URL... Send  + +╭─ Collection ──────────╮╭─────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ jsonplaceholder/╱╱╱╱╱╱╱╱╱╱╱╱╱╱There are no headers.╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +▼ posts/╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱ +█ GET fooNameValue Add header  + GET get all╰─────────────────────────────────────────────────╯ + GET get one╭────────────────────────────────────── Response ─╮ + POS createBodyHeadersCookiesTrace + DEL delete a post━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ +▼ comments/ + GET get comment + GET get comment +───────────────────────Request saved +barjsonplaceholder/posts/foo.posting.ya +╰── sample-collections ─╯╰───────────ml + d Dupe  ⌫ Delete  ^j Send  ^t Method diff --git a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg index 50e19ec7..492636f5 100644 --- a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg +++ b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg @@ -19,213 +19,213 @@ font-weight: 700; } - .terminal-889164643-matrix { + .terminal-2695289198-matrix { font-family: Fira Code, monospace; font-size: 20px; line-height: 24.4px; font-variant-east-asian: full-width; } - .terminal-889164643-title { + .terminal-2695289198-title { font-size: 18px; font-weight: bold; font-family: arial; } - .terminal-889164643-r1 { fill: #dfdfe1 } -.terminal-889164643-r2 { fill: #c5c8c6 } -.terminal-889164643-r3 { fill: #ff93dd } -.terminal-889164643-r4 { fill: #15111e;text-decoration: underline; } -.terminal-889164643-r5 { fill: #15111e } -.terminal-889164643-r6 { fill: #43365c } -.terminal-889164643-r7 { fill: #ff69b4 } -.terminal-889164643-r8 { fill: #9393a3 } -.terminal-889164643-r9 { fill: #a684e8 } -.terminal-889164643-r10 { fill: #e1e1e6 } -.terminal-889164643-r11 { fill: #00fa9a } -.terminal-889164643-r12 { fill: #efe3fb } -.terminal-889164643-r13 { fill: #9f9fa5 } -.terminal-889164643-r14 { fill: #dfdfe1;font-weight: bold } -.terminal-889164643-r15 { fill: #632e53 } -.terminal-889164643-r16 { fill: #8b8b93 } -.terminal-889164643-r17 { fill: #58d1eb;font-weight: bold } -.terminal-889164643-r18 { fill: #6a6a74 } -.terminal-889164643-r19 { fill: #252532 } -.terminal-889164643-r20 { fill: #0f0f1f } -.terminal-889164643-r21 { fill: #ede2f7 } -.terminal-889164643-r22 { fill: #e1e0e4 } -.terminal-889164643-r23 { fill: #e2e0e5 } -.terminal-889164643-r24 { fill: #8b8b93;font-weight: bold } -.terminal-889164643-r25 { fill: #e9e1f1 } -.terminal-889164643-r26 { fill: #00b85f } -.terminal-889164643-r27 { fill: #793155;font-weight: bold } -.terminal-889164643-r28 { fill: #210d17;font-weight: bold } -.terminal-889164643-r29 { fill: #737387 } -.terminal-889164643-r30 { fill: #918d9d } -.terminal-889164643-r31 { fill: #002014 } -.terminal-889164643-r32 { fill: #a2a2a8;font-weight: bold } -.terminal-889164643-r33 { fill: #e8e8e9 } -.terminal-889164643-r34 { fill: #e0e0e2 } -.terminal-889164643-r35 { fill: #6f6f78 } -.terminal-889164643-r36 { fill: #f92672;font-weight: bold } -.terminal-889164643-r37 { fill: #ae81ff } -.terminal-889164643-r38 { fill: #e6db74 } -.terminal-889164643-r39 { fill: #87878f } -.terminal-889164643-r40 { fill: #a2a2a8 } -.terminal-889164643-r41 { fill: #30303b } -.terminal-889164643-r42 { fill: #00fa9a;font-weight: bold } -.terminal-889164643-r43 { fill: #ff7ec8;font-weight: bold } -.terminal-889164643-r44 { fill: #dbdbdd } + .terminal-2695289198-r1 { fill: #dfdfe1 } +.terminal-2695289198-r2 { fill: #c5c8c6 } +.terminal-2695289198-r3 { fill: #ff93dd } +.terminal-2695289198-r4 { fill: #15111e;text-decoration: underline; } +.terminal-2695289198-r5 { fill: #15111e } +.terminal-2695289198-r6 { fill: #43365c } +.terminal-2695289198-r7 { fill: #ff69b4 } +.terminal-2695289198-r8 { fill: #9393a3 } +.terminal-2695289198-r9 { fill: #a684e8 } +.terminal-2695289198-r10 { fill: #e1e1e6 } +.terminal-2695289198-r11 { fill: #00fa9a } +.terminal-2695289198-r12 { fill: #efe3fb } +.terminal-2695289198-r13 { fill: #9f9fa5 } +.terminal-2695289198-r14 { fill: #dfdfe1;font-weight: bold } +.terminal-2695289198-r15 { fill: #632e53 } +.terminal-2695289198-r16 { fill: #8b8b93 } +.terminal-2695289198-r17 { fill: #58d1eb;font-weight: bold } +.terminal-2695289198-r18 { fill: #6a6a74 } +.terminal-2695289198-r19 { fill: #252532 } +.terminal-2695289198-r20 { fill: #0f0f1f } +.terminal-2695289198-r21 { fill: #ede2f7 } +.terminal-2695289198-r22 { fill: #e1e0e4 } +.terminal-2695289198-r23 { fill: #e2e0e5 } +.terminal-2695289198-r24 { fill: #8b8b93;font-weight: bold } +.terminal-2695289198-r25 { fill: #e9e1f1 } +.terminal-2695289198-r26 { fill: #00b85f } +.terminal-2695289198-r27 { fill: #793155;font-weight: bold } +.terminal-2695289198-r28 { fill: #210d17;font-weight: bold } +.terminal-2695289198-r29 { fill: #737387 } +.terminal-2695289198-r30 { fill: #918d9d } +.terminal-2695289198-r31 { fill: #002014 } +.terminal-2695289198-r32 { fill: #a2a2a8;font-weight: bold } +.terminal-2695289198-r33 { fill: #e8e8e9 } +.terminal-2695289198-r34 { fill: #e0e0e2 } +.terminal-2695289198-r35 { fill: #6f6f78 } +.terminal-2695289198-r36 { fill: #f92672;font-weight: bold } +.terminal-2695289198-r37 { fill: #ae81ff } +.terminal-2695289198-r38 { fill: #e6db74 } +.terminal-2695289198-r39 { fill: #87878f } +.terminal-2695289198-r40 { fill: #a2a2a8 } +.terminal-2695289198-r41 { fill: #30303b } +.terminal-2695289198-r42 { fill: #00fa9a;font-weight: bold } +.terminal-2695289198-r43 { fill: #ff7ec8;font-weight: bold } +.terminal-2695289198-r44 { fill: #dbdbdd } - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - Posting + Posting - - - - -Posting                                                                            - -GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  - -╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ - GET echoHeadersBodyQueryAuthInfoOptions - GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - POS echo post Content-Type     application/json      -▼ jsonplaceholder/ Referer          https://example.com/  -▼ posts/ Accept-Encoding  gzip                  -█ GET get all Cache-Control    no-cache              - GET get one - POS create - DEL delete a post -▼ comments/ - GET get commentsNameValue Add header  - GET get comments (╰───────────────────────────────────────────────────────╯ - PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ -▼ todos/BodyHeadersCookiesTrace - GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ - GET get one  1  [ -▼ users/  2    {                                             - GET get a user  3  "userId"1,                                - GET get all users  4  "id"1,                                    - POS create a user  5  "title""sunt aut facere repellat  - PUT update a userprovident occaecati excepturi optio  - DEL delete a userreprehenderit",                                 -  6  "body""quia et suscipit\nsuscipit  -─────────────────────────recusandae consequuntur expedita et  -Retrieve all posts1:1read-onlyJSONWrap X -╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ - d Dupe  D Quick Dupe  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c + + + + +Posting                                                                            + +GEThttps://jsonplaceholder.typicode.com/posts        ■■■■■■■ Send  + +╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮ + GET echoHeadersBodyQueryAuthInfoOptions + GET get random user━━━━━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + POS echo post Content-Type     application/json      +▼ jsonplaceholder/ Referer          https://example.com/  +▼ posts/ Accept-Encoding  gzip                  +█ GET get all Cache-Control    no-cache              + GET get one + POS create + DEL delete a post +▼ comments/ + GET get commentsNameValue Add header  + GET get comments (╰───────────────────────────────────────────────────────╯ + PUT edit a comment╭─────────────────────────────────── Response  200 OK ─╮ +▼ todos/BodyHeadersCookiesTrace + GET get all━━━━╺━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ + GET get one  1  [ +▼ users/  2    {                                             + GET get a user  3  "userId"1,                                + GET get all users  4  "id"1,                                    + POS create a user  5  "title""sunt aut facere repellat  + PUT update a userprovident occaecati excepturi optio  + DEL delete a userreprehenderit",                                 +  6  "body""quia et suscipit\nsuscipit  +─────────────────────────recusandae consequuntur expedita et  +Retrieve all posts1:1read-onlyJSONWrap X +╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯ + d Dupe  ⌫ Delete  ^j Send  ^t Method  ^s Save  ^n New  ^p Commands  ^o Jump  ^c Qui From 64e62b9e6dc401423782313654127228cf3d24df Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Wed, 14 Aug 2024 23:24:37 +0100 Subject: [PATCH 49/50] Add CHANGELOG.md to the docs --- docs/CHANGELOG.md | 33 +++++++++++++++++++++++++++++++++ docs/roadmap.md | 12 +++++------- mkdocs.yml | 1 + 3 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 docs/CHANGELOG.md diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md new file mode 100644 index 00000000..90ffe768 --- /dev/null +++ b/docs/CHANGELOG.md @@ -0,0 +1,33 @@ +## 1.11.0 [August 2024] + +### Added + +- This file, `CHANGELOG.md`. +- Launch docs website. +- Duplicate request (with new request popup) under cursor in tree with ++d++. +- "Quick" duplicate request (without new request popup, request name is auto-generated) under cursor in tree with ++shift+d++. +- Delete request (with confirmation modal) under cursor in tree with ++backspace++. +- "Quick" delete request (without confirmation modal) under cursor in tree with ++shift+backspace++. +- "Quit Posting" added to command palette. +- Move the sidebar to the right or left using `collection_browser.position: 'right' | 'left'` config. +- Refinements to "galaxy" theme. +- "galaxy" theme is now default. +- Help text added to "empty state" in the collection browser. +- Extend info in the "Collection Browser" help modal. +- Visual indicator (a red bar on the left) on Input fields that contain invalid values. +- Toast message now appears when trying to submit the 'new request' modal with invalid values. +- Public roadmap (initial brain-dump version). + +### Fixed +- Ensure the location of the request on disk in the `Info` tab wraps instead of clipping out of view. +- Inserting requests in sorted position on creation. +- Prevent creating requests with no name. +- Prevent writing paths in the file-name field in the new request modal. +- Prevent specifying paths outside of the open collection dir in the directory field in the new request modal. +- Fix variables not being substituted into several fields, including auth. + +### Changed + +- Upgrade to Textual version 0.76.0 +- Change logic to render bindings in help modal to reflect new Textual API. +- Sort order of requests in the tree improved. diff --git a/docs/roadmap.md b/docs/roadmap.md index 86cc9910..6f3d5576 100644 --- a/docs/roadmap.md +++ b/docs/roadmap.md @@ -2,9 +2,7 @@ This is a very high level overview of what I'm planning on working on. -It's unrefined and unordered at the moment. - -I would like to work with the community to refine and prioritize this list. +It's unrefined and unordered at the moment, but I would like to work with the community to refine and prioritize this list in the future. ## The Roadmap @@ -14,17 +12,17 @@ I would like to work with the community to refine and prioritize this list. - Duplicate request from the tree. ✅ - Quickly duplicate request from the tree ✅ - Colour-coding for request types (i.e. GET is green, POST is blue, etc.) -- Delete request from the tree. +- Delete request from the tree. ✅ - Add rotating logging - Inserting into the collection tree at the position beside the cursor, not at the bottom ✅ - Improved distribution (move beyond pipx, e.g. `brew`) -- Adding test framework. +- Adding test framework. - More user friendly errors - Keymaps. - I could host themes as YAML files online and offer a `posting themes install foo` which would download and move the file to the users theme directory, which would then be loaded on startup. The app could potentially even have a builtin theme "browser" which lets people preview themes (download the YAML from GitHub into memory to preview it in your app). - Add contributing guide. - External documentation. ✅ -- Uploading files. +- Uploading files. - Making it clear which HTTP headers are set automatically. - Enabling and disabling rows in tables. - Highlighting variables in tables to show if they've resolved or not. @@ -35,5 +33,5 @@ I would like to work with the community to refine and prioritize this list. - Dynamic in-app help system ✅ - Specify certificate path via config or CLI ✅ - Import from Insomnia and Postman. -- Improving OpenAPI import feature. +- Improving OpenAPI import feature. - General UX polish and removing footguns: validation, unsurprising navigation, warning when switching request when there are unsaved changes. \ No newline at end of file diff --git a/mkdocs.yml b/mkdocs.yml index e20e1938..83ee5313 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -36,6 +36,7 @@ nav: - "Themes": "guide/themes.md" - "Importing": "guide/importing.md" - Roadmap: "roadmap.md" + - Changelog: "CHANGELOG.md" plugins: - search - tags From edecf84f0ee98ae9c44c984bd2cbc90bc7a1fb64 Mon Sep 17 00:00:00 2001 From: Darren Burns Date: Thu, 15 Aug 2024 00:03:58 +0100 Subject: [PATCH 50/50] A quick guide --- docs/CHANGELOG.md | 7 +++++ docs/guide/index.md | 66 +++++++++++++++++++++++++++++++++++++++++- docs/guide/requests.md | 19 +++++++++--- 3 files changed, 87 insertions(+), 5 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index 90ffe768..ad4f2f44 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -31,3 +31,10 @@ - Upgrade to Textual version 0.76.0 - Change logic to render bindings in help modal to reflect new Textual API. - Sort order of requests in the tree improved. + + +--- + +!!! note + Changes prior to 1.11.0 are not documented here. + Please see the [Releases page](https://github.com/darrenburns/posting/releases) on GitHub for information on changes prior to 1.11.0. \ No newline at end of file diff --git a/docs/guide/index.md b/docs/guide/index.md index b5d6819b..931bf096 100644 --- a/docs/guide/index.md +++ b/docs/guide/index.md @@ -8,4 +8,68 @@ pipx install posting Python 3.11 or later is required. -More installation methods (`brew`, etc) will be added soon. \ No newline at end of file +More installation methods (`brew`, etc) will be added soon. + +## A quick introduction + +This introduction will show you how to create a simple POST request to the [JSONPlaceholder](https://jsonplaceholder.typicode.com/) mock API to create a new user. It focuses on an efficient keyboard-driven workflow, but you can also use the mouse if you prefer. + +### Collections and requests + +A *collection* is simply a directory which may contain requests saved by Posting. + +If you launch Posting without specifying a collection, any requests you create will be saved in the "default" collection. +This is a directory reserved by Posting on your filesystem, and unrelated to the directory you launched Posting from. + +This is fine for quick throwaway requests, but you'll probably want to create a new collection for each project you work on so that you can check it into version control. + +To create a new collection, simply create a new directory and pass it into Posting: + +```bash +mkdir my-collection +posting --collection my-collection +``` + +Now, any requests you create will be saved in the `my-collection` directory as simple YAML files with the `.posting.yaml` extension. + +### Creating a request + +When you launch Posting, no request is open. + +You can immediately start creating a request, and then save it to disk with ++ctrl+s++. +Let's do just that. +We'll create a simple POST request to the [JSONPlaceholder](https://jsonplaceholder.typicode.com/) mock API to create a new user. + +Press ++ctrl+t++ to open the request method dropdown, then press ++p++ to quickly select the `POST` method. + +Press ++tab++ to move focus to the next widget, which is the URL bar. The URL bar can also be focused with ++ctrl+l++. Type `https://jsonplaceholder.typicode.com/users` into the URL bar. + +### Adding a JSON body + +Press ++ctrl+o++ to enter "jump mode", then press ++w++ to quickly jump to the "Body" tab. + +Press ++j++ (or ++down++) to move the cursor down to the dropdown. Press ++enter++ to open it, and select the option `Raw (json, text, etc.)`. + +Move down to the text area below using ++j++ (or ++down++), and type (or paste) the JSON below. + +```json +{ + "name": "John Doe", + "username": "johndoe", + "email": "john.doe@example.com" +} +``` + +### Viewing keyboard shortcuts + +Now is probably a good time to note that you can see the full list of keyboard shortcuts for the focused widget by pressing ++f1++. The text area widget in particular has a lot of useful shortcuts and supports things like undo/redo. + + +### Sending the request + +Press ++ctrl+j++ to send the request. This shortcut works globally. + +### Saving the request + +Finally, press ++ctrl+s++ to save the request to disk. +Fill out the form on the modal that appears, and press ++enter++ or ++ctrl+n++ to write the request to disk. diff --git a/docs/guide/requests.md b/docs/guide/requests.md index d688aeec..8cde56c5 100644 --- a/docs/guide/requests.md +++ b/docs/guide/requests.md @@ -25,15 +25,26 @@ params: value: 'true' ``` -## Creating a request +## Creating a new request -Press ++ctrl+s++ to save the current request. -A dialog will appear, prompting you to give the request a name, and to select a directory to save it in. +Press ++ctrl+n++ to create a new request. -If you already have a collection loaded, the directory will be pre-selected based on the location of the cursor in the sidebar, so moving the cursor to the correct location before pressing ++ctrl+s++ will save you from needing to type the path. +You'll be prompted to supply a name for the request. +By default, this name is used to generate the filename, but you can also choose your own filename if you wish. + +!!! tip + If you already have a collection loaded, the directory will be pre-selected based on the location of the cursor in the collection tree, so moving the cursor to the correct location *before* pressing ++ctrl+n++ will save you from needing to type out the path. Within the "Directory" field of this dialog, it's important to note that `.` refers to the currently loaded *collection* directory (that is, the directory that was loaded using the `--collection` option), and *not* necessarily the current working directory. +## Saving a request + +Press ++ctrl+s++ to save the currently open request. + +If you haven't saved the request yet, a dialog will appear, prompting you to give the request a name, and to select a directory to save it in. + +If the request is already saved on disk, ++ctrl+s++ will overwrite the previous version with your new changes. + ## Loading requests Requests are stored on your file system as simple YAML files, suffixed with `.posting.yaml`.