* feat: add SVG support for HTML preview in response format handling
* feat: enhance content type detection by adding support for AVIF and SVG formats
* fix: exclude SVG from byte format type detection in response preview
* feat: add helper function to detect SVG content in response handling
* fix: ensure SVG content type detection is case insensitive and remove EPS detection
* fix: correct byte offset for AVIF content type detection in response handling
* refactor: enhance WSRequestPane and WSResponsePane with ResponsiveTabs component
- Replaced custom tab implementation with ResponsiveTabs for better consistency and usability.
- Utilized useMemo and useCallback for performance optimizations in tab management.
- Cleaned up unused styles and improved error handling in both components.
- Updated StyledWrapper to remove legacy tab styles, streamlining the component structure.
* refactor: streamline authentication components and enhance WSRequestPane layout
- Removed unnecessary margin from StyledWrapper in ApiKeyAuth, BasicAuth, and BearerAuth components for a cleaner layout.
- Introduced a new right content area in WSRequestPane for better organization of authentication modes.
- Added a 'No Auth' view in WSAuth for improved user feedback when no authentication is selected.
- Cleaned up unused imports and optimized component structure for maintainability.
* refactor: simplify HtmlPreview component by extracting render logic into a separate function
* refactor: wrap renderHtmlPreview in a fragment for improved JSX structure
* fix: update preview visibility check in response format tests
* refactor: enhance GrpcRequestPane and GrpcResponsePane with ResponsiveTabs component
- Replaced custom tab implementation with ResponsiveTabs for better structure and usability.
- Utilized useMemo and useCallback for performance optimizations in GrpcRequestPane.
- Removed unused imports and simplified tab management logic.
- Updated StyledWrapper to remove legacy tab styles, improving maintainability.
* fix: handle optional chaining for auth mode in GrpcRequestPane
* feat: enhance GrpcRequestPane and GrpcResponsePane with tab initialization and response count indicators
* refactor: simplify GrpcResponsePane tab management and enhance ResponsiveTabs key handling
- Removed unnecessary useMemo for tab initialization in GrpcResponsePane.
- Updated tab comparison logic in ResponsiveTabs to use key arrays for improved performance.
- Adjusted test locator for response tab count to use role-based selection for better accessibility.
* feat: add support for 'none' auth mode in GrpcAuth and integrate GrpcAuthMode in GrpcRequestPane
- Updated StyledWrapper in ApiKeyAuth, BasicAuth, BearerAuth, OAuth2, WsseAuth, and GrpcAuth components to remove unnecessary margin-top, ensuring a uniform appearance across authentication interfaces.
- Adjusted margin in GrantTypeSelector and WSAuth components for better layout consistency.
* refactor: update import statement and enhance error handling in GrpcRequestPane
- Changed the import of 'find' from lodash to a direct import for better clarity.
- Improved error handling by returning null during initialization when requestPaneTab is not set, ensuring smoother user experience.
* refactor: integrate StyledWrapper in SearchInput for improved styling
* refactor: update StyledWrapper color and adjust margin in GrpcTimelineItem for improved layout consistency
* refactor: remove HTML validation functions and simplify HtmlPreview component logic
* chore: fix playwright - removed body value check since response is rendered in webview
---------
Co-authored-by: Bijin A B <bijin@usebruno.com>
* fix: sse sequence in ipc layer
* fix: remove tick rate and flushing
* fix: added sequence logic for websockets
* fix: added sequence logic for websockets per request based
* fix: correct the order for how the messages are added.
`WSMessagesList` already handles a lot of the ordering for us, don't modify the order the messages are added since redirect and connection are internal states, it changes the execution trail
* chore: reduce whitespace diffs
* fix: a possible null case exception
Though we always create an empty data buffer at source so shouldn't happen unless that is modified
* fix: implement sequence logic for WebSocket messages
* fix: remove unused sequenceState property from WsClient
* fix: update message sorting logic to handle missing sequence numbers
* fix: remove unused lodash import
* fix: add clean method to sequencer for better sequence management
* fix: don't show dropdown when streaming
---------
Co-authored-by: Sid <siddharth@usebruno.com>
* refactor: update color references in OAuth2 components to use theme.primary.text for improved consistency
* refactor: update modal size in ImportCollectionLocation component for improved consistency
* refactor: set isActiveTab prop in QueryResponse component and update active color in StyledWrapper for consistency
* style: update warning icon color in RemoveCollection and ConfirmSwitchEnv components to use theme colors
* fix: font size in BulkEditor
* style: update error message styling to use theme colors in QueryResult component
* style: update warning icon color
* style: update warning color in ConfirmSwitchEnv
* chore: minor pr comment
---------
Co-authored-by: Bijin A B <bijin@usebruno.com>
* style: enhance button layout and input styles across multiple components for improved UI consistency
* style: update RequestsNotLoaded component with new warning styles and enhance theme color definitions for status indicators
* refactor: update theme usage across components for consistency
- Changed color references from theme.brand to theme.primary.text in various StyledWrapper components.
- Added hover effects to enhance UI interactivity in CollectionSettings and FolderSettings.
- Removed unnecessary margin and padding adjustments in several components for cleaner layout.
- Improved accessibility by ensuring aria attributes are correctly set in MenuDropdown.
- Standardized styling for method indicators in RequestPane components.
These changes aim to create a more cohesive look and feel across the application while adhering to the updated theme guidelines.
* refactor: clean up method selector styling in NewRequest component
* chore: temp playwright test fixes
* refactor: update modal sizes across various components for consistency
- Changed modal size from "sm" to "md" in RenameWorkspace, CreateApiSpec, CloneCollection, DeleteCollectionItem, and RenameCollection components.
- Improved styling in HttpMethodSelector by adding padding for better layout.
- Updated theme color references in multiple theme files to use a new palette structure for consistency and maintainability.
* refactor: enhance styling and theme integration in TimelineItem components
- Updated HttpMethodSelector to clarify padding calculation in comments.
- Integrated theme colors for OAuth2 indicator and timestamp in TimelineItem for better visual consistency.
- Adjusted Method component to use uppercase styling for method display.
- Modified RelativeTime component to apply muted text color for improved readability.
- Updated INFO color in dark and light themes for better contrast and accessibility.
* refactor: remove duplicate import statements in theme files
- Cleaned up import statements in vscode.js and light-pastel.js by removing redundant lines for improved code clarity and maintainability.
* refactor: improve styling and theme integration in various components
- Added accent color and cursor style for checkbox inputs in Modal's StyledWrapper.
- Updated border-radius values in HttpMethodSelector and NewRequest StyledWrapper components to use theme variables for consistency.
- Introduced a new textbox class in NewRequest StyledWrapper for better styling control.
- Changed modal size from "sm" to "md" in CreateEnvironment for improved layout.
---------
Co-authored-by: Bijin A B <bijin@usebruno.com>
* fix: use theme styling within timeline
* fix: remove inline styling and use css classes
* fix: network logs within dev tools
* compact timeline for grpc
* refactor: standardize CSS class naming in StyledWrapper components for better readability
* remove styling configuration from Network component
* fix: update colors
* update colors
* fix: color
* fix: theme within grpc timeline
* fix: use font from the theme
* remove y padding to make timeline item more compact
* fix: font
* fix: padding
* fix: use fira code
* fix: icon spacing
* add border to the method search
* show bg for message section within request
* refactor: replace button elements with Button component for consistency and improved styling across various components
* chore: css cleanup
* chore: fix collection doc cancel button
---------
Co-authored-by: Bijin A B <bijin@usebruno.com>
* refactor: update ResponsePane and QueryResultTypeSelector for improved tab handling and styling
- Adjusted the expanded width for right-side action buttons in ResponsePane.
- Refactored view tab toggle logic to enhance clarity and functionality.
- Introduced new styling for result view tabs and dropdown buttons.
- Added icon support for format options in QueryResultTypeSelector, improving visual feedback.
- Implemented dropdown state management to ensure proper interaction with active tabs.
* refactor: remove console log from ResponsePane for cleaner code
- Added Redux state management for response format and view tab in ResponsePane.
- Implemented useCallback hooks for handling format changes and view tab toggling.
- Updated component to utilize persisted values from Redux, improving user experience by maintaining state across sessions.
* Introduced hideResultTypeSelector prop to conditionally render the QueryResultTypeSelector in the QueryResponse component.
* Updated BodyBlock to pass the type prop to control the visibility of the result type selector based on the request or response context.
* Adjusted styling in StyledWrapper for improved layout consistency.
* style: Update padding and margin in StyledWrapper for improved layout; adjust ActionIcon size in ResponseLayoutToggle for better UI consistency; enhance title bar color handling in Electron app
* feat: Enhance AppTitleBar with Windows-specific controls and OS detection
* refactor: Improve OS detection and error handling in AppTitleBar; streamline maximize state management
* feat: Implement IPC communication for maximize/unmaximize events in AppTitleBar; enhance state management in Electron main process
* Refactor dropdown components to use MenuDropdown for improved functionality and keyboard accessibility
- Replaced Dropdown with MenuDropdown in various components including BodyModeSelector, AuthMode, and RequestBodyMode.
- Updated styles and structure for better usability and accessibility.
- Removed unused Dropdown component and its associated styles.
- Enhanced action buttons in ResponsePane and Collection components with ActionIcon for better UI consistency.
* fix: Update HttpMethodSelector styles and tests for improved accessibility
- Changed the class name for the "Add Custom" button to include 'text-link' for better styling.
- Updated tests to use role-based queries for dropdown items, enhancing accessibility checks.
- Ensured the correct application of classes in tests to reflect the updated structure.
* refactor: Improve component accessibility and consistency
* fix: update hover behavior for collection actions menu in runner.ts
* refactor: streamline hover interactions for collection actions across tests
* refactor: enhance component structure and accessibility across response actions
* fix: correct fill property syntax in StyledWrapper for consistent styling
* refactor: simplify isDisabled logic in response components for clarity
* fix: correct tabIndex logic in ResponseCopy component for improved accessibility
* fix: update tabIndex logic in ResponseBookmark component for improved accessibility
* fix: enable action buttons in ResponsePaneActions for improved usability
* refactor: remove unnecessary tabIndex attributes in response components for improved accessibility
* refactor: remove keyDown event handlers from response components for cleaner interaction
* refactor: remove SidebarHeader component and related styles for improved structure
* refactor: update content type detection to use base64 decoding
* fix: some styling issues and autofocus issues in input resolved
* refactor: enhance ResponsePane and QueryResult components for improved response handling and size display
* refactor: simplify size display logic in ResponseSize component
* refactor: improve size formatting logic in ResponseSize component for better readability
* refactor: enhance base64 decoding function to handle invalid input and improve error handling
* fix: Improved logic for determining right side expandability based on container width and provided width.
* refactor: Standardize naming for right-side expandability a
* refactor: Simplify collection interaction in keyboard shortcuts tests
* refactor: Update right-side expandability logic in ResponsiveTabs and StyledWrapper components
* feat: add response data type selector in response viewer
* chore: fixed lint issue
* test: add test for resonse format change and preview.
* refactor: streamline response format tests with utility functions for navigation and format switching
* refactor: simplify ButtonDropdown component and enhance QueryResultTypeSelector with header and toggle switch
* feat: enhance ButtonDropdown with prefix and suffix props; implement content type detection and update QueryResult for improved format handling
* fix: lint errors resolved
* fix: remove unnecessary blank line to resolve lint issues
* fix: update response format tests
* refactor: remove preview tab locator from response format tests
* fix: update dependency in useEffect to include previewFormatOptions for accurate format handling
* refactor: reorganize imports and enhance QueryResult component for improved format handling and error display
* fix: update error messages in response format preview tests and adjust version in JSON fixture
* feat: add drag detection to HtmlPreview component and update structure for improved user interaction
* refactor: update ResponsePane components for improved structure and functionality;
replace QueryResult with QueryResponse, enhance layout handling, and streamline response actions
* refactor: remove ButtonDropdown component and associated styles;
* refactor: moved ErrorAlert to ui folder
* fix: lint error
* feat: add data-testid attributes to Collection and CollectionItem components for improved testability
* feat: hide dropdown on select in response selector
* fix: update QueryResult component to use detectedContentType for format handling
* test: update ResponseLayoutToggle tests to use data-testid for button selection
* feat: add data-testid attribute to ResponseClear component for improved testability
* refactor: implement clickResponseAction utility for streamlined response action handling in tests
* feat: add data-testid attribute to ResponseCopy component for enhanced testability
* fix: unwanted code in test
* #1884 - Add support for text/event-stream content-type
* #1884 - Fix bugs with streaming
Fix bug when streaming response is not ok
Fix bug when clearing response of streaming request
Show text signaling that the response is being streamed in the reponse status
Update response size when new data is streamed in
* #1884 - Fix multiple requests when spamming send button
* #1884 - Add time counter for streamed response and fix final time
* #1884 - Run post script only at end of streamed request
* #1884 - add support for automatic "upgrade" to streaming data
* #1884 - adjustments for stopwatch in stream implementation and remove unused imports
* #1884 - fix imports indentation in useIpcEvents.js
* #1884 - remove stream data ended export function from collections
---------
Co-authored-by: Siddharth Gelera <ahoy@barelyhuman.dev>
* fix: example naming
* fix: request not being saved when initialized with empty url
* remove check for method
* fix: improve the logic for get initial name
* fix test