* init
* fix: header saving in ws
* fix: retrieve auth value correctly
* feat: ws settings
* fix: text for inherited auth
* feat: pass down options/settings for ws
* fix: handle run handling on url
* fix: send initial message
* fix: fix header movement and minor cleanup
* fix: message queue
* refactor: faster flushing
* feat: ws tab specific additions
close tab should close connection
`ws` shown in the tab
* chore: remove unused icon
* feat: simplify query URL rendering
* fix: only add to settings if they were added
* chore: revert to original
* fix: restyle web ui
* feat: implement WebSocket response sorting and enhance message handling
- Added WSResponseSortOrder component for toggling message sort order.
- Updated WSMessagesList to accept and utilize sort order.
- Refactored message handling to use 'type' instead of 'direction'.
- Enhanced response state management to include sort order.
* feat: enhance WebSocket handling with redirect and upgrade events
- Added support for 'ws:redirect' and 'ws:upgrade' events in the WebSocket client.
- Updated WSResponseHeaders to format headers correctly.
- Modified WSResponsePane to display headers in the response.
- Improved message handling in the Redux slice for WebSocket events.
* fix: correct fallback for URL retrieval in bruRequestToJson
* feat: enhance WebSocket message handling and styling
- Add new styling for incoming messages in StyledWrapper.
- Update WSMessagesList to handle message sorting and focus.
- Refactor response sort order handling in WSResponseSortOrder.
- Improve WebSocket connection management in ws-client.
* fix: adjust styling for message display
* fix: imports for ws files
* fix: visually simplify the message list
* chore: pkg updates
* fix: remove unused content-type check in WebSocket request preparation
* fix: avoid duplicate messages
avoid message getting queued and sent twice
* feat: beautify the code editor in each message
* feat(websockets): add websocket tests
* tests(websockets): move it a folder up
* fix: hexdump on sent messages
* fix: make the view a lot more compact
* feat: enhance WebSocket message handling and styling
* formatting fixes - batch 1
* chore: formatting fixes batch 2
* chore: format changes batch 3
* chore: format settings batch 4
* chore: clean up
* chore: for now avoid oauth2
* chore: formatting changes batch 6
* test(websocket): add headers handling in tests
- Implemented logic to send headers in websocket messages.
- Added tests for websocket connections and message handling.
- Created locators for common elements in websocket tests.
* chore: cleanup
* test(websocket): refactor to use constant for BRU_FILE_NAME
Updated the test cases to utilize a constant for the BRU_FILE_NAME regex pattern for better maintainability and readability.
* test(websocket): update BRU_FILE_NAME to use regex
Changed BRU_FILE_NAME from a string to a regex pattern for better matching.
* fix(ws-client): rename timeout to handshakeTimeout
Updated the WebSocket connection options to use 'handshakeTimeout' instead of 'timeout' for clarity.
* chore: cleanup
* fix(ShareCollection): update non-exportable request types handling
Refactor hasGrpcRequests to hasNonExportableRequestTypes,
returning an object with a flag and types of requests that
will not be exported.
* feat: inherit timeout from app prefs
* fix: faster queue
* feat: add WSRequestBodyMode component and language detection
- Introduced a new component for selecting request body modes (JSON, XML, TEXT).
- Implemented auto-detection of language for the request body content.
- Created a styled wrapper for improved UI presentation.
* feat: enhance WebSocket message handling with decoder support
- Added decoder field to WebSocket messages in various components.
- Updated prettify functionality to handle XML and JSON formats.
- Modified Redux state to include decoder information.
- Adjusted schema validation to accommodate decoder field.
* refactor: replace decoder with type in WebSocket message handling
* fix: use `body` directly
* chore: reset formatting
* chore: reformat
* chore: reformat
* chore: reformat
* chore: reformat
* chore: base format
* chore: fix lang constructs
* chore: fix message queue flush logic
Ensure that the flushQueue method checks for the existence of the message queue before processing.
Refactor WebSocket test fixtures for better readability by correcting indentation and structure.
* fix: typo
* chore: lint fixes
* chore: lint fixes
* chore: rediff utils
* chore: rediff utils
* chore: remove from CLI
* chore: rediff utils
* chore: rediff utils
* chore: rediff utils
* chore: rediff utils
* chore: fix formatting
* tests(websocket): add websocket persistence tests
* chore: format
* feat(eslint): add TypeScript support and update test file patterns
* fix: turn off single line jsx expressions
* revert lang `ws` removal
* chore: reformat
* feat: better subprotocol support and tests
* chore: reformat
* chore: reformat
* clean up ununsed components
* refactor: locators, tests, new request design
* chore: close app for each test to start afresh
* Revert "chore: close app for each test to start afresh"
This reverts commit 5c2e3bec81.
* refactor: simplify dropdown mode selection
* chore: remove unused changes
* refactor: simplify
* chore: simplify
* fix: loading pulse animation
* refactor: update lodash import syntax
* fix: comments and sanitisation
* refactor: rename BRU_FILE_NAME to BRU_REQ_NAME for consistency
Updated variable names across websocket tests to improve clarity and maintain consistency in naming conventions.
* fix: null check for the initialisation of websocket client
* fix: add poller to check for saved state
* fix: variable message time check for tests
* fix: force wait for elements
* fix: use nth locators instead of wait (draft attempt)
* chore: reformat
* fix: update beta preferences to include websocket support
* feat: GA
* feat: rename `connectionTimeout` to `timeout` and better form
* feat: update WebSocket IPC channel names to use 'renderer' prefix
* feat: add 'oauth2' to supported authentication modes
* chore: add default `json` type in ws
* test: add tests for bruToJson and jsonToBru parsers
- Implemented smoke tests for the bruToJson parser to validate message inference and settings.
* refactor: improve timeout handling in WebSocket client
---------
Co-authored-by: Siddharth Gelera <siddharthgelera@Siddharths-MacBook-Air.local>
Co-authored-by: Sid <siddharth@usebruno.com>
* feat: Enhance EnvironmentVariables component with read-only support for non-string values
* feat: minor refactor and cleanup worker app state
* fix: playwright test flow
---------
Co-authored-by: Bijin Bruno <bijin@usebruno.com>
~ fix oauth2 additional parameters encoding and url handling
~ show authorization tab only for authorization_code grant type
~ set active tab based on grant type
~ update schema validation for grant type-specific parameters
~ add url tooltip in responsepane timeline
~ clean up variable naming and parameter handling
~ basic auth credentials should be assigned to `request.basicAuth` instead `request.auth` object
~ added credentials_placement option, fixed headers issue client credentials flow
~ cache input field values when grant type select box value changes
~ updated logic for - cache input field values when grant type select box value changes
~ updated token expiry timer component logic
* feat: Added ApiKeyAuth component
* feat: Add support for API Key authentication
- Added the ApiKeyAuth component to handle API Key authentication mode.
- Updated the AuthMode component to include an option for API Key authentication.
- Updated the collections schema to include validation for API Key authentication.
- Updated the collectionsSlice to handle API Key authentication in the Redux store.
* refactor: input value handlers
- Removed the separate handleKeyChange, handlePlacementChange and handleValueChange functions and consolidated them into handleAuthChange.
* feat: Update prepare-request to handle API Key authentication in query parameters
* refactor: handling the queryparams placement api key values in the ConfigureRequest function
* refactor: added collection level api key auth
* refactor: updated collection export function
* refactor: add default placement for API key authentication in ApiKeyAuth component
* refactor: add default placement for API key authentication in ApiKeyAuth component in CollectionSettings
* refactor: update generateAuth function to handle API key authentication in postman collection exporter
* refactor: fix typo in API key placement for collection export
* Made minor changes in the logic.
* Updated the importers for postman to handle new auth type.
* pr review changes
* collection root object in export json
* import environment updates
* tests run execution order fix for collection runs
* headers schema update, export only required parts of request
* update auth in object spread
* docs not present in folder level settings
* docs not present in folder level settings
---------
Co-authored-by: Anoop M D <anoop.md1421@gmail.com>
* Removed headers key on folderRootSchema as it seems unlikely that headers are actually required here
* Removed launch.json
* Added back package-locks
* reverted package-lock
* removed only the .required
* feat: add support for state param
* chore: revert package-lock.json
* test: update tests with state param
* chore: revert package-lock.json
* chore: add state to missing places
* Adding state to PKCE toggle
---------
Co-authored-by: Kadam Dhananjay <kadamdhananjay@johndeere.com>
* feat: path parameters (#484)
* add path parameters on bruno-app
* add path parameters on bruno-cli
* fix bruno-schema testing
* fix generate request code not replace path parameter value
---------
Co-authored-by: game5413 <febryanph10@gmail.com>
Co-authored-by: Anoop M D <anoop.md1421@gmail.com>
* feat: Refactor request parameter handling
- Update prepare-request.js to filter and rename 'paths' to 'params' with type 'path'
- Remove 'paths' from export.js and interpolate-vars.js
- Update bru.js to use 'params' instead of 'path'
- Update requestSchema in index.js to use 'keyValueWithTypeSchema' for 'params'
Co-authored-by: game5413 <febryanph10@gmail.com>
Co-authored-by: Anoop M D <anoop.md1421@gmail.com>
* feat: Refactor request parameter handling
* refactor: changes form the review
* refactor: Refactor transformItemsInCollection handling
* refactor: Refactor improved export/import functionalities
* refactor: Remove console.log statement in bruToJson.js
---------
Co-authored-by: game5413 <37659721+game5413@users.noreply.github.com>
Co-authored-by: game5413 <febryanph10@gmail.com>
Co-authored-by: Anoop M D <anoop.md1421@gmail.com>
* Now added the ability to import and export js values. changes made in item schema.
* Improvements upon review
* Fixes.
* refactor: removed the copyRequest function and wrote the logic directly inside the copyItems function.
* refactor: Update getBrunoJsonConfig function to remove unnecessary parameter
* refactor: Update getBrunoJsonConfig function to remove unnecessary parameter and handle auth object dynamically
* refactor: Update OAuth2 grantType handling in transformCollectionToSaveToExportAsFile function
* refactor: Update getBrunoJsonConfig function to remove unnecessary async
* fix(#1003): content type for client_credentials & password grant types
* feature(#1003): added client is & secret for password credentials grant type