diff --git a/.coverage b/.coverage
index 967bbc1e..c210a521 100644
Binary files a/.coverage and b/.coverage differ
diff --git a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg
index 1f5e6d1f..46773afd 100644
--- a/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg
+++ b/tests/__snapshots__/test_snapshots/TestConfig.test_config.svg
@@ -19,215 +19,215 @@
font-weight: 700;
}
- .terminal-1596852030-matrix {
+ .terminal-3701146924-matrix {
font-family: Fira Code, monospace;
font-size: 20px;
line-height: 24.4px;
font-variant-east-asian: full-width;
}
- .terminal-1596852030-title {
+ .terminal-3701146924-title {
font-size: 18px;
font-weight: bold;
font-family: arial;
}
- .terminal-1596852030-r1 { fill: #c5c8c6 }
-.terminal-1596852030-r2 { fill: #130f1c;text-decoration: underline; }
-.terminal-1596852030-r3 { fill: #130f1c }
-.terminal-1596852030-r4 { fill: #3c2e58 }
-.terminal-1596852030-r5 { fill: #818cf8 }
-.terminal-1596852030-r6 { fill: #9393a3 }
-.terminal-1596852030-r7 { fill: #9393a3;font-weight: bold }
-.terminal-1596852030-r8 { fill: #00c168 }
-.terminal-1596852030-r9 { fill: #e1e1e6 }
-.terminal-1596852030-r10 { fill: #00fa9a }
-.terminal-1596852030-r11 { fill: #efe3fb }
-.terminal-1596852030-r12 { fill: #9f9fa5 }
-.terminal-1596852030-r13 { fill: #632e53 }
-.terminal-1596852030-r14 { fill: #dfdfe1 }
-.terminal-1596852030-r15 { fill: #ff69b4 }
-.terminal-1596852030-r16 { fill: #dfdfe1;font-weight: bold }
-.terminal-1596852030-r17 { fill: #ecfccb;font-weight: bold }
-.terminal-1596852030-r18 { fill: #8b8b93 }
-.terminal-1596852030-r19 { fill: #58d1eb;font-weight: bold }
-.terminal-1596852030-r20 { fill: #6a6a74 }
-.terminal-1596852030-r21 { fill: #252532 }
-.terminal-1596852030-r22 { fill: #0f0f1f }
-.terminal-1596852030-r23 { fill: #ede2f7 }
-.terminal-1596852030-r24 { fill: #e1e0e4 }
-.terminal-1596852030-r25 { fill: #a2a2a8;font-weight: bold }
-.terminal-1596852030-r26 { fill: #210d17 }
-.terminal-1596852030-r27 { fill: #e0e0e2 }
-.terminal-1596852030-r28 { fill: #8b8b93;font-weight: bold }
-.terminal-1596852030-r29 { fill: #e9e1f1 }
-.terminal-1596852030-r30 { fill: #6f6f78 }
-.terminal-1596852030-r31 { fill: #00b85f }
-.terminal-1596852030-r32 { fill: #e2e0e5 }
-.terminal-1596852030-r33 { fill: #ff79c6;font-weight: bold }
-.terminal-1596852030-r34 { fill: #bd93f9 }
-.terminal-1596852030-r35 { fill: #9b9aab;font-weight: bold }
-.terminal-1596852030-r36 { fill: #e3e3e8;font-weight: bold }
-.terminal-1596852030-r37 { fill: #552956 }
-.terminal-1596852030-r38 { fill: #f1fa8c }
-.terminal-1596852030-r39 { fill: #737387 }
-.terminal-1596852030-r40 { fill: #918d9d }
-.terminal-1596852030-r41 { fill: #87878f }
-.terminal-1596852030-r42 { fill: #a2a2a8 }
-.terminal-1596852030-r43 { fill: #30303b }
-.terminal-1596852030-r44 { fill: #00fa9a;font-weight: bold }
-.terminal-1596852030-r45 { fill: #ff7ec8;font-weight: bold }
-.terminal-1596852030-r46 { fill: #dbdbdd }
+ .terminal-3701146924-r1 { fill: #c5c8c6 }
+.terminal-3701146924-r2 { fill: #130f1c;text-decoration: underline; }
+.terminal-3701146924-r3 { fill: #130f1c }
+.terminal-3701146924-r4 { fill: #3c2e58 }
+.terminal-3701146924-r5 { fill: #818cf8 }
+.terminal-3701146924-r6 { fill: #9393a3 }
+.terminal-3701146924-r7 { fill: #9393a3;font-weight: bold }
+.terminal-3701146924-r8 { fill: #00c168 }
+.terminal-3701146924-r9 { fill: #e1e1e6 }
+.terminal-3701146924-r10 { fill: #00fa9a }
+.terminal-3701146924-r11 { fill: #efe3fb }
+.terminal-3701146924-r12 { fill: #9f9fa5 }
+.terminal-3701146924-r13 { fill: #632e53 }
+.terminal-3701146924-r14 { fill: #dfdfe1 }
+.terminal-3701146924-r15 { fill: #ff69b4 }
+.terminal-3701146924-r16 { fill: #dfdfe1;font-weight: bold }
+.terminal-3701146924-r17 { fill: #002014;font-weight: bold }
+.terminal-3701146924-r18 { fill: #8b8b93 }
+.terminal-3701146924-r19 { fill: #58d1eb;font-weight: bold }
+.terminal-3701146924-r20 { fill: #6a6a74 }
+.terminal-3701146924-r21 { fill: #252532 }
+.terminal-3701146924-r22 { fill: #0f0f1f }
+.terminal-3701146924-r23 { fill: #ede2f7 }
+.terminal-3701146924-r24 { fill: #e1e0e4 }
+.terminal-3701146924-r25 { fill: #a2a2a8;font-weight: bold }
+.terminal-3701146924-r26 { fill: #210d17 }
+.terminal-3701146924-r27 { fill: #e0e0e2 }
+.terminal-3701146924-r28 { fill: #8b8b93;font-weight: bold }
+.terminal-3701146924-r29 { fill: #e9e1f1 }
+.terminal-3701146924-r30 { fill: #6f6f78 }
+.terminal-3701146924-r31 { fill: #00b85f }
+.terminal-3701146924-r32 { fill: #e2e0e5 }
+.terminal-3701146924-r33 { fill: #ff79c6;font-weight: bold }
+.terminal-3701146924-r34 { fill: #bd93f9 }
+.terminal-3701146924-r35 { fill: #9b9aab;font-weight: bold }
+.terminal-3701146924-r36 { fill: #e3e3e8;font-weight: bold }
+.terminal-3701146924-r37 { fill: #552956 }
+.terminal-3701146924-r38 { fill: #f1fa8c }
+.terminal-3701146924-r39 { fill: #737387 }
+.terminal-3701146924-r40 { fill: #918d9d }
+.terminal-3701146924-r41 { fill: #87878f }
+.terminal-3701146924-r42 { fill: #a2a2a8 }
+.terminal-3701146924-r43 { fill: #30303b }
+.terminal-3701146924-r44 { fill: #00fa9a;font-weight: bold }
+.terminal-3701146924-r45 { fill: #ff7ec8;font-weight: bold }
+.terminal-3701146924-r46 { fill: #dbdbdd }
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
- Posting
+ Posting
-
-
-
-
-GET▼https://jsonplaceholder.typicode.com/posts ■■■■■■■ Send
-
-╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response 200 OK ─╮
-│ GET echo││Headers•BodyQueryAuthInfoO││BodyHeadersCookiesTrace│
-│ 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 │
-│────────────────────────────────────││Value││tempore vitae\nsequi sint │
-│Retrieve all posts││ Add header ││1:1read-onlyJSON▼Wrap ▐X▌│
-╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯
- f3 Pager f4 Editor ^j Send ^t Method ^s Save ^n New ^p Commands ^o Jump f1 Help
+
+
+
+
+GET▼https://jsonplaceholder.typicode.com/posts ■■■■■■■ Send
+
+╭─ Collection ───────────────────────╮╭─────────────────────────── Request ─╮╭───────────────── Response 200 OK ─╮
+│ GET echo││Headers•BodyQueryAuthInfoO││BodyHeadersCookiesTrace│
+│ 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 │
+│────────────────────────────────────││Value││tempore vitae\nsequi sint │
+│Retrieve all posts││ Add header ││1:1read-onlyJSON▼Wrap ▐X▌│
+╰─────────────── sample-collections ─╯╰─────────────────────────────────────╯╰─────────────────────────────────────╯
+ f3 Pager f4 Editor ^j Send ^t Method ^s Save ^n New ^p Commands ^o Jump 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 9ad4969e..1f0bd407 100644
--- a/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg
+++ b/tests/__snapshots__/test_snapshots/TestSendRequest.test_send_request.svg
@@ -19,214 +19,214 @@
font-weight: 700;
}
- .terminal-3112254867-matrix {
+ .terminal-1505377380-matrix {
font-family: Fira Code, monospace;
font-size: 20px;
line-height: 24.4px;
font-variant-east-asian: full-width;
}
- .terminal-3112254867-title {
+ .terminal-1505377380-title {
font-size: 18px;
font-weight: bold;
font-family: arial;
}
- .terminal-3112254867-r1 { fill: #e0e0e0 }
-.terminal-3112254867-r2 { fill: #c5c8c6 }
-.terminal-3112254867-r3 { fill: #ffcf56 }
-.terminal-3112254867-r4 { fill: #dfeef9;text-decoration: underline; }
-.terminal-3112254867-r5 { fill: #dfeef9 }
-.terminal-3112254867-r6 { fill: #9dcbee }
-.terminal-3112254867-r7 { fill: #818cf8 }
-.terminal-3112254867-r8 { fill: #939393 }
-.terminal-3112254867-r9 { fill: #939393;font-weight: bold }
-.terminal-3112254867-r10 { fill: #00c168 }
-.terminal-3112254867-r11 { fill: #e1e1e1 }
-.terminal-3112254867-r12 { fill: #4ebf71 }
-.terminal-3112254867-r13 { fill: #dde6ed }
-.terminal-3112254867-r14 { fill: #a0a0a0 }
-.terminal-3112254867-r15 { fill: #fea62b }
-.terminal-3112254867-r16 { fill: #e0e0e0;font-weight: bold }
-.terminal-3112254867-r17 { fill: #64451a }
-.terminal-3112254867-r18 { fill: #8d8d8d }
-.terminal-3112254867-r19 { fill: #58d1eb;font-weight: bold }
-.terminal-3112254867-r20 { fill: #6c6c6c }
-.terminal-3112254867-r21 { fill: #272727 }
-.terminal-3112254867-r22 { fill: #121212 }
-.terminal-3112254867-r23 { fill: #dee5eb }
-.terminal-3112254867-r24 { fill: #e0e0e1 }
-.terminal-3112254867-r25 { fill: #dfe1e2 }
-.terminal-3112254867-r26 { fill: #8d8d8d;font-weight: bold }
-.terminal-3112254867-r27 { fill: #dee4e8 }
-.terminal-3112254867-r28 { fill: #008139 }
-.terminal-3112254867-r29 { fill: #794f14;font-weight: bold }
-.terminal-3112254867-r30 { fill: #211505;font-weight: bold }
-.terminal-3112254867-r31 { fill: #737373 }
-.terminal-3112254867-r32 { fill: #8c9092 }
-.terminal-3112254867-r33 { fill: #ecfccb }
-.terminal-3112254867-r34 { fill: #a3a3a3;font-weight: bold }
-.terminal-3112254867-r35 { fill: #e8e8e8 }
-.terminal-3112254867-r36 { fill: #707070 }
-.terminal-3112254867-r37 { fill: #569cd6;font-weight: bold }
-.terminal-3112254867-r38 { fill: #b5cea8 }
-.terminal-3112254867-r39 { fill: #ce9178 }
-.terminal-3112254867-r40 { fill: #888888 }
-.terminal-3112254867-r41 { fill: #a3a3a3 }
-.terminal-3112254867-r42 { fill: #323232 }
-.terminal-3112254867-r43 { fill: #4ebf71;font-weight: bold }
-.terminal-3112254867-r44 { fill: #ffba41;font-weight: bold }
-.terminal-3112254867-r45 { fill: #dbdbdb }
+ .terminal-1505377380-r1 { fill: #e0e0e0 }
+.terminal-1505377380-r2 { fill: #c5c8c6 }
+.terminal-1505377380-r3 { fill: #ffcf56 }
+.terminal-1505377380-r4 { fill: #dfeef9;text-decoration: underline; }
+.terminal-1505377380-r5 { fill: #dfeef9 }
+.terminal-1505377380-r6 { fill: #9dcbee }
+.terminal-1505377380-r7 { fill: #818cf8 }
+.terminal-1505377380-r8 { fill: #939393 }
+.terminal-1505377380-r9 { fill: #939393;font-weight: bold }
+.terminal-1505377380-r10 { fill: #00c168 }
+.terminal-1505377380-r11 { fill: #e1e1e1 }
+.terminal-1505377380-r12 { fill: #4ebf71 }
+.terminal-1505377380-r13 { fill: #dde6ed }
+.terminal-1505377380-r14 { fill: #a0a0a0 }
+.terminal-1505377380-r15 { fill: #fea62b }
+.terminal-1505377380-r16 { fill: #e0e0e0;font-weight: bold }
+.terminal-1505377380-r17 { fill: #64451a }
+.terminal-1505377380-r18 { fill: #8d8d8d }
+.terminal-1505377380-r19 { fill: #58d1eb;font-weight: bold }
+.terminal-1505377380-r20 { fill: #6c6c6c }
+.terminal-1505377380-r21 { fill: #272727 }
+.terminal-1505377380-r22 { fill: #121212 }
+.terminal-1505377380-r23 { fill: #dee5eb }
+.terminal-1505377380-r24 { fill: #e0e0e1 }
+.terminal-1505377380-r25 { fill: #dfe1e2 }
+.terminal-1505377380-r26 { fill: #8d8d8d;font-weight: bold }
+.terminal-1505377380-r27 { fill: #dee4e8 }
+.terminal-1505377380-r28 { fill: #008139 }
+.terminal-1505377380-r29 { fill: #794f14;font-weight: bold }
+.terminal-1505377380-r30 { fill: #211505;font-weight: bold }
+.terminal-1505377380-r31 { fill: #737373 }
+.terminal-1505377380-r32 { fill: #8c9092 }
+.terminal-1505377380-r33 { fill: #0a180e }
+.terminal-1505377380-r34 { fill: #a3a3a3;font-weight: bold }
+.terminal-1505377380-r35 { fill: #e8e8e8 }
+.terminal-1505377380-r36 { fill: #707070 }
+.terminal-1505377380-r37 { fill: #569cd6;font-weight: bold }
+.terminal-1505377380-r38 { fill: #b5cea8 }
+.terminal-1505377380-r39 { fill: #ce9178 }
+.terminal-1505377380-r40 { fill: #888888 }
+.terminal-1505377380-r41 { fill: #a3a3a3 }
+.terminal-1505377380-r42 { fill: #323232 }
+.terminal-1505377380-r43 { fill: #4ebf71;font-weight: bold }
+.terminal-1505377380-r44 { fill: #ffba41;font-weight: bold }
+.terminal-1505377380-r45 { fill: #dbdbdb }
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
- Posting
+ Posting
-
-
-
-
-Posting
-
-GET▼https://jsonplaceholder.typicode.com/posts ■■■■■■■ Send
-
-╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮
-│ GET echo││Headers•BodyQueryAuthInfoOptions│
-│ 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 comments││NameValue 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 user││provident occaecati excepturi optio │
-│ DEL delete a user││reprehenderit", │
-│││ 6 "body": "quia et suscipit\nsuscipit │
-│─────────────────────────││recusandae consequuntur expedita et │
-│Retrieve all posts││1:1read-onlyJSON▼Wrap ▐X▌│
-╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯
- ^j Send ^t Method ^s Save ^n New ^p Commands ^o Jump f1 Help
+
+
+
+
+Posting
+
+GET▼https://jsonplaceholder.typicode.com/posts ■■■■■■■ Send
+
+╭─ Collection ────────────╮╭───────────────────────────────────────────── Request ─╮
+│ GET echo││Headers•BodyQueryAuthInfoOptions│
+│ 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 comments││NameValue 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 user││provident occaecati excepturi optio │
+│ DEL delete a user││reprehenderit", │
+│││ 6 "body": "quia et suscipit\nsuscipit │
+│─────────────────────────││recusandae consequuntur expedita et │
+│Retrieve all posts││1:1read-onlyJSON▼Wrap ▐X▌│
+╰──── sample-collections ─╯╰───────────────────────────────────────────────────────╯
+ ^j Send ^t Method ^s Save ^n New ^p Commands ^o Jump f1 Help