diff --git a/packages/hoppscotch-common/locales/en.json b/packages/hoppscotch-common/locales/en.json index c036de5b7..b1e96397a 100644 --- a/packages/hoppscotch-common/locales/en.json +++ b/packages/hoppscotch-common/locales/en.json @@ -43,6 +43,7 @@ "rename": "Rename", "restore": "Restore", "save": "Save", + "save_as_example": "Save as example", "scroll_to_bottom": "Scroll to bottom", "scroll_to_top": "Scroll to top", "search": "Search", @@ -224,6 +225,7 @@ "remove_folder": "Are you sure you want to permanently delete this folder?", "remove_history": "Are you sure you want to permanently delete all history?", "remove_request": "Are you sure you want to permanently delete this request?", + "remove_response": "Are you sure you want to permanently delete this response?", "remove_shared_request": "Are you sure you want to permanently delete this shared request?", "remove_team": "Are you sure you want to delete this workspace?", "remove_telemetry": "Are you sure you want to opt-out of Telemetry?", @@ -391,7 +393,8 @@ "codegen": "{request_name} - code", "graphql_response": "GraphQL-Response", "lens": "{request_name} - response", - "realtime_response": "Realtime-Response" + "realtime_response": "Realtime-Response", + "response_interface": "Response-Interface" }, "filter": { "all": "All", @@ -528,7 +531,9 @@ "confirm": "Confirm", "customize_request": "Customize Request", "edit_request": "Edit Request", + "edit_response": "Edit Response", "import_export": "Import / Export", + "response_name": "Response Name", "share_request": "Share Request" }, "mqtt": { @@ -595,6 +600,7 @@ }, "request": { "added": "Request added", + "add": "Add Request", "authorization": "Authorization", "body": "Request Body", "choose_language": "Choose language", @@ -631,6 +637,7 @@ "rename": "Rename Request", "renamed": "Request renamed", "request_variables": "Request variables", + "response_name_exists": "Response name already exists", "run": "Run", "save": "Save", "save_as": "Save as", @@ -650,14 +657,18 @@ "response": { "audio": "Audio", "body": "Response Body", + "duplicated": "Response duplicated", + "duplicate_name_error": "Same name response already exists", "filter_response_body": "Filter JSON response body (uses JSONPath syntax)", "headers": "Headers", "html": "HTML", "image": "Image", "json": "JSON", "pdf": "PDF", + "please_save_request": "Save the request to create example", "preview_html": "Preview HTML", "raw": "Raw", + "renamed": "Response renamed", "size": "Size", "status": "Status", "time": "Time", @@ -666,7 +677,9 @@ "waiting_for_connection": "waiting for connection", "xml": "XML", "generate_data_schema": "Generate Data Schema", - "data_schema": "Data Schema" + "data_schema": "Data Schema", + "saved": "Response saved", + "invalid_name": "Please provide a name for the response" }, "settings": { "accent_color": "Accent color", diff --git a/packages/hoppscotch-common/src/components.d.ts b/packages/hoppscotch-common/src/components.d.ts index e51899b8d..d08d3f35e 100644 --- a/packages/hoppscotch-common/src/components.d.ts +++ b/packages/hoppscotch-common/src/components.d.ts @@ -49,6 +49,8 @@ declare module 'vue' { CollectionsEdit: typeof import('./components/collections/Edit.vue')['default'] CollectionsEditFolder: typeof import('./components/collections/EditFolder.vue')['default'] CollectionsEditRequest: typeof import('./components/collections/EditRequest.vue')['default'] + CollectionsEditResponse: typeof import('./components/collections/EditResponse.vue')['default'] + CollectionsExampleResponse: typeof import('./components/collections/ExampleResponse.vue')['default'] CollectionsGraphql: typeof import('./components/collections/graphql/index.vue')['default'] CollectionsGraphqlAdd: typeof import('./components/collections/graphql/Add.vue')['default'] CollectionsGraphqlAddFolder: typeof import('./components/collections/graphql/AddFolder.vue')['default'] @@ -142,6 +144,11 @@ declare module 'vue' { HttpBodyParameters: typeof import('./components/http/BodyParameters.vue')['default'] HttpCodegen: typeof import('./components/http/Codegen.vue')['default'] HttpCodegenModal: typeof import('./components/http/CodegenModal.vue')['default'] + HttpExampleLenseBodyRenderer: typeof import('./components/http/example/LenseBodyRenderer.vue')['default'] + HttpExampleResponse: typeof import('./components/http/example/Response.vue')['default'] + HttpExampleResponseMeta: typeof import('./components/http/example/ResponseMeta.vue')['default'] + HttpExampleResponseRequest: typeof import('./components/http/example/ResponseRequest.vue')['default'] + HttpExampleResponseTab: typeof import('./components/http/example/ResponseTab.vue')['default'] HttpHeaders: typeof import('./components/http/Headers.vue')['default'] HttpImportCurl: typeof import('./components/http/ImportCurl.vue')['default'] HttpKeyValue: typeof import('./components/http/KeyValue.vue')['default'] @@ -157,6 +164,7 @@ declare module 'vue' { HttpResponse: typeof import('./components/http/Response.vue')['default'] HttpResponseInterface: typeof import('./components/http/ResponseInterface.vue')['default'] HttpResponseMeta: typeof import('./components/http/ResponseMeta.vue')['default'] + HttpSaveResponseName: typeof import('./components/http/SaveResponseName.vue')['default'] HttpSidebar: typeof import('./components/http/Sidebar.vue')['default'] HttpTabHead: typeof import('./components/http/TabHead.vue')['default'] HttpTestResult: typeof import('./components/http/TestResult.vue')['default'] diff --git a/packages/hoppscotch-common/src/components/app/spotlight/entry/RESTRequest.vue b/packages/hoppscotch-common/src/components/app/spotlight/entry/RESTRequest.vue index 062b47459..0ba4cb15b 100644 --- a/packages/hoppscotch-common/src/components/app/spotlight/entry/RESTRequest.vue +++ b/packages/hoppscotch-common/src/components/app/spotlight/entry/RESTRequest.vue @@ -7,9 +7,9 @@ {{ request.method.toUpperCase() }} diff --git a/packages/hoppscotch-common/src/components/collections/AddRequest.vue b/packages/hoppscotch-common/src/components/collections/AddRequest.vue index ae3ebd537..8633cf823 100644 --- a/packages/hoppscotch-common/src/components/collections/AddRequest.vue +++ b/packages/hoppscotch-common/src/components/collections/AddRequest.vue @@ -92,6 +92,9 @@ watch( () => props.show, (show) => { if (show) { + if (tabs.currentActiveTab.value.document.type === "example-response") + return + editingName.value = tabs.currentActiveTab.value.document.request.name } } diff --git a/packages/hoppscotch-common/src/components/collections/Collection.vue b/packages/hoppscotch-common/src/components/collections/Collection.vue index 60860a1b0..0faf43bb6 100644 --- a/packages/hoppscotch-common/src/components/collections/Collection.vue +++ b/packages/hoppscotch-common/src/components/collections/Collection.vue @@ -62,7 +62,7 @@