* feat: enhance API spec export with environment variables support
- Updated `exportApiSpec` function to accept and process environment variables for multi-server exports.
- Added logic to convert environment variables into a structured format for OpenAPI server entries.
- Enhanced the `CreateApiSpec` component to include environments in the exported YAML content.
- Introduced unit tests to validate the handling of server variables and their integration into the exported API specifications.
* refactor: streamline API spec export logic and improve variable handling
- Simplified variable extraction in `exportApiSpec` by directly assigning capture groups.
- Updated URL interpolation to use request variables instead of global variables for better accuracy.
- Enhanced handling of request body types by replacing early returns with breaks for clearer flow control.
- Adjusted tests to ensure backward compatibility with OpenAPI specifications and server variable handling.
* refactor: improve variable handling and URL processing in OpenAPI exporters
- Streamlined server variable assignment in `exportApiSpec` to handle undefined values more gracefully.
- Enhanced URL path extraction to ensure leading slashes are preserved in `getDefaultUrl` and `extractServerVars`.
- Updated string replacement logic to use `replaceAll` for consistent variable substitution in URLs.
* fix: tags schema updatd to array of string
* tests: added test cases for sanitizing tags, openapi-tags
* fix: enhance tag sanitization to support object input and UTF characters
---------
Co-authored-by: shubh-bruno <shubh-bruno@shubh-bruno.local>
* fix: storing status in example for yml file
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: temporary check for tests
* fix: test cases for status and statusText
* chore: removed logs
* fix: test cases for response status and text
* fix: test cases for response status and text
* fix: resolved comments
* fix: openapi test import test cases
* chore: removed console logs
* fix: status type in response example while import/export of collection
* fix: postman to bruno import
---------
Co-authored-by: shubh-bruno <shubh-bruno@shubh-bruno.local>
* fix: openapi body import
* add: unit test
* fix
* fix
* Revert "fix"
This reverts commit 3219e8af8e.
* fix: we need the same check here too!
* fix: handle number type
* fix: correct empty securitySchemes check
---------
Co-authored-by: Taylore Thornton <tthornton3@chewy.com>
* fix: update test URLs from httpbin to echo.usebruno.com across multiple test files
* fix: standardize URL formatting in insomnia test files
* chore: standardize URL formatting in insomnia test files
* feat: enhance Bru grammar to support response blocks and examples
- Added new grammar rules for response headers, status, and body types (JSON, XML, text).
- Introduced parsing logic for example blocks, allowing multiple examples with various body types.
- Implemented tests for example parsing, including edge cases and complex examples with authentication.
- Created fixture files for simple and complex examples to validate parsing functionality.
feat: extend jsonToBru functionality to support response handling and examples
- Updated jsonToBru to include parsing for response headers, status, and body types (JSON, XML, text).
- Enhanced example handling to support multiple examples with various body types.
- Added comprehensive tests for example parsing, including edge cases and complex scenarios with authentication.
- Created fixture files for testing the new features and validating parsing functionality.
move: files to fixtures folder
refactor: simplify response body handling in Bru grammar and JSON conversion
- Removed specific body type handling (JSON, XML, text) from grammar and semantics.
- Updated response body parsing in jsonToBru to handle a unified response body format.
- Adjusted tests and fixtures to reflect changes in response body structure, ensuring compatibility with the new format.
feat: add response bookmarking functionality to ResponsePane
- Introduced ResponseBookmark component to allow users to save responses as examples.
- Added NameExampleModal for naming saved examples.
- Updated ResponsePane to include the new bookmarking feature.
- Implemented Redux actions to manage response examples in the collections state.
- Enhanced CollectionItem to display saved examples and allow for expansion.
fix: remove unnecessary padding from ExampleItem component
feat: implement delete and rename functionality for examples in ExampleItem component
- Added DeleteExampleModal for confirming deletion of examples.
- Integrated modal for renaming examples with state management.
- Enhanced ExampleItem to handle example deletion and renaming through modals.
- Updated Redux actions to support example updates and deletions in the collections state.
fix: example writing to disc properly
fix: example parsing errors
fix: request with example parsing error
fix: handle examples in collections and requests
feat: implement response example functionality in the application
- Added ResponseExample component to handle displaying and editing response examples.
- Integrated ResponseExampleRequestPane and ResponseExampleResponsePane for structured request and response handling.
- Enhanced RequestTabPanel and RequestTab components to support response-example tabs.
- Introduced new styled components for better UI/UX in response examples.
- Updated theme files to include styles for response examples.
- Implemented URL bar for editing request URLs in response examples.
- Added functionality for managing headers and parameters in response examples.
- Improved overall structure and organization of response example components.
add styles for example url bar
feat: add Checkbox component and Table-v2 for enhanced UI
- Introduced a new Checkbox component for better user interaction in forms.
- Added Table-v2 component to improve table rendering and resizing functionality.
- Updated existing components to utilize the new Checkbox and Table-v2 for managing headers and parameters in response examples.
- Enhanced styling for better visual consistency across components.
- Updated theme files to include styles for the new components.
feat: implement custom scrollbar styles for response example components
fix: features
add actions , view more
feat: enhance response example functionality
- Added GenerateCodeItem component for generating code snippets from response examples.
- Integrated modal for code generation within ResponseExample component.
- Updated ResponseExampleTopBar to handle example name and description editing.
- Improved state management for response examples, including new actions for updating names and descriptions.
- Enhanced ResponseExampleRequestPane to support editing and saving request details.
- Refactored URL handling in ResponseExampleUrlBar to utilize example-specific data.
- Improved overall user experience with better UI elements and state management.
feat: enhance response example management and UI components
feat: enhance editing capabilities in response example components
feat: update multipart form parameter handling in response examples
feat: refactor response example parameter handling and enhance UI interactions
feat: introduce RadioButton component and update Checkbox usage in response examples
fix: styles
fix radio button styling
fixed radio button styles
feat: add create example from sidebar
feat: enhance ResponseExample components with layout adjustments and new HeightBoundContainer
feat: add Checkbox and RadioButton components with comprehensive tests for rendering, user interactions, and accessibility
feat: playwright test csaes
rm: comments
fix: linting
fix: tests
refactor: update response example tests and enhance functionality
fix: tests
fix: e2e-tests
refactor: implement hasRequestChanges utility for better change detection
rm: console
rm: consoles
fix: lint
fix: tests
fix: response header disabled by default issue
Feat/with bru example parser (#5892)
* fix: response header disabled by default issue
feat: new parsing logic
fix: change test cases to accomodate new brulang
add: path params features
rm:consoles
six: make tab permanent on double click
fix width
feat: add status editing
feat: review fixes
review fixes
fix: review fixes
fix: post review
mv: test files
fix: review
* fix: lint
* fix: review comments
* fix: icons folder strcuture
fix: tests
fix: lint
fix: unit tests
feat: body mode selector
fix: close all collections
rm: example
feat added tests. lang change
feat: add custom status text
fix: status update
feat: add body mode, update tests
add default name prefilled for example
fix: active tab styles, prefilled name, text fixes
fix : pkg lock
fix: review
fix: review comments
fix: hide cursor when readonly
fix: height
fix: null body
fix: response body parsing
fix: test cases
feat: add method support for examples
fix: reponse parsing
fix: update response body type when content type is updated
rm : commented code
feat: update parser logic
fix: organize files
feat: enhance examples handling in collection export and import
feat: postman imports fro examples
feat: enhance OpenAPI import functionality to support examples
feat: support postman export
fix: postman export import
fix: open api tests, remove requestbody related logic
rm: examples
fix: move common attributes files
ui fixes
fix: clone issue
fix: create example from request menu
review fixes
more review fixes
mv: files, fix mode req error
organize files
fix:tests
fix: save dot issue
fix: bugs
fix: postman export
fix: import path params
* chore:improve modal handling in environment and response example tests
fix: test issues resolved
* chore: update response example tests to use new fixture files and improve cleanup logic
---------
Co-authored-by: Abhishek S Lal <abhishek@usebruno.com>
Co-authored-by: Bijin Bruno <bijin@usebruno.com>
test: add unit tests for collection name handling based on OpenAPI title
fix: trim whitespace from info.title and improve default collection name handling
fix: simplify collection name assignment by using optional chaining
removed two console.log and improved the error message.
refactor: standardize single quotes in OpenAPI test cases
test: add case for empty title defaulting to Untitled Collection
* feat: add function in bruno converters package
* add: example for openapi yaml to bruno conversion
* add: converting json to yaml in converters
* fix
This contains the bulk of the changes apart from renaming files.
This is a continuation of #2341.
Co-authored-by: lohit <lohit@usebruno.com>
Co-authored-by: pooja-bruno <pooja@usebruno.com>