Commit Graph

114 Commits (2fd2a144f179e9fb29a3a866231c181be5ca1114)

Author SHA1 Message Date
Akshay Joshi d26b63fdf5
Use 'Drop' instead of 'Delete' for object commands to make destructive actions more deliberate. #8958 2025-07-16 18:02:24 +05:30
Yogesh Mahajan 67c18cb082
Fix the SonarQube issues and issues reported during testing. #3319 2025-06-13 13:14:36 +05:30
Aditya Toshniwal 1e0e9c4f7d
1) Open preferences in a new tab instead of a dialog for better user experience. #6743
2) Add a search box to enable searching within the preferences tab. #2864
2025-06-12 19:03:54 +05:30
Yogesh Mahajan 68e559c613
Added support to preserve the workspace, query windows, and pgAdmin state during an abrupt shutdown or restart. #3319 2025-06-05 16:50:38 +05:30
Yogesh Mahajan 33389fc48e
Fix feature test failures for PG servers. 2025-04-24 15:57:48 +05:30
Akshay Joshi 964d211260 Copyright updated for 2025 2025-01-01 11:26:42 +05:30
Rohit Bhati 8af25ba0c1
Change button labels and color in delete confirmation dialog for all objects to improve UX. #6513 2024-12-18 17:25:36 +05:30
Aditya Toshniwal 9a8d520abd Fix few issues found in menu rendering code and GUI test cases 2024-11-14 14:49:07 +05:30
Ashesh Vashi e9af0c3226
Improved the extendability of the SchemaView and DataGridView. (#7876)
Restructured these modules for ease of maintenance and apply the single
responsibility principle (wherever applicable).

* SchemaView

 - Split the code based on the functionality and responsibility.
 - Introduced a new View 'InlineView' instead of using the
   'nextInline' configuration of the fields to have a better, and
   manageable view.
 - Using the separate class 'SchemaState' for managing the data and
   states of the SchemaView (separated from the 'useSchemaState'
   custom hook).
 - Introduced three new custom hooks 'useFieldValue',
   'useFieldOptions', 'useFieldError' for the individual control to
   use for each Schema Field.
 - Don't pass value as the parameter props, and let the
   'useFieldValue' and other custom hooks to decide, whether to
   rerender the control itself or the whole dialog/view. (single
   responsibility principle)
 - Introduced a new data store with a subscription facility.
 - Moving the field metadata (option) evaluation to a separate place
   for better management, and each option can be defined for a
   particular kind of field (for example - collection, row, cell,
   general, etc).
 - Allow to provide custom control for all kind of Schema field.

* DataGridView

 - Same as SchemaView, split the DataGridView call into smaller,
   manageable chunks. (For example - grid, row, mappedCell, etc).
 - Use context based approach for providing the row and table data
   instead of passing them as parameters to every component
   separately.
 - Have a facility to extend this feature separately in future.
   (for example - selectable cell, column grouping, etc.)
 - Separated the features like deletable, editable, reorder,
   expandable etc. cells using the above feature support.
 - Added ability to provide the CustomHeader, and CustomRow through the
   Schema field, which will extend the ability to customize better.
 - Removed the 'DataGridViewWithHeaderForm' as it has been achieved
   through providing 'CustomHeader', and also introduced
   'DataGridFormHeader' (a custom header) to achieve the same feature
   as 'DataGridViewWithHeaderForm'.
2024-09-09 14:27:31 +05:30
Ashesh Vashi 52af8d3e49
Introduce custom React Hook useSchemaState to simplify SchemaView component. #7776
Changes include: 
- Simplify current SchemaView code
- Add ability to reuse the schema data & state management implementation outside the SchemaDialogView component.
- Further split components in small and manageable separate files.
- Removed the 'DepListenerContext' context as there was no need for separate context.
- Added a reload functionality in the 'useSchemaState'
- Changes in feature tests.
2024-08-02 09:59:01 +05:30
Khushboo Vashi 4f415f9768
Added support for viewing PostgreSQL Server Logs in Text, CSV and JSON formats. #3981 2024-07-03 16:17:29 +05:30
Yogesh Mahajan 102e0a9839
- Update MUI v4 to v5
- Remove the SCSS dependency completely and use MUI for theming.
- Update - date-fns, @date-io, notistack. Remove - popper.js, sass-loader.
- Cleanup webpack config.
- Port PSQL tool to use MUI themes instead of SCSS theme.
- Theme change will reflect realtime without refreshing pgAdmin.
2024-04-09 08:21:14 +05:30
Aditya Toshniwal c0a1429664 Fix failing feature tests 2024-03-26 11:20:04 +05:30
Aditya Toshniwal d3ede3151a
Upgrade CodeMirror from version 5 to 6. #7097 2024-02-21 11:15:25 +05:30
Yogesh Mahajan 5a74022e8a
Allow preferences customization using a configuration file. #6058 2024-02-15 14:58:31 +05:30
Akshay Joshi 740ce15bd7 Update copyright notices for 2024 2024-01-01 14:13:48 +05:30
Aditya Toshniwal 862f101772
Significant changes to use ReactJS extensively.
1. Replace the current layout library wcDocker with ReactJS based rc-dock. #6479
2. Have close buttons on individual panel tabs instead of common. #2821
3. Changes in the context menu on panel tabs - Add close, close all and close others menu items. #5394
4. Allow closing all the tabs, including SQL and Properties. #4733
5. Changes in docking behaviour of different tabs based on user requests and remove lock layout menu.
6. Fix an issue where the scroll position of panels was not remembered on Firefox. #2986
7. Reset layout now will not require page refresh and is done spontaneously.
8. Use the zustand store for storing preferences instead of plain JS objects. This will help reflecting preferences immediately.
9. The above fix incorrect format (no indent) of SQL stored functions/procedures. #6720
10. New version check is moved to an async request now instead of app start to improve startup performance.
11. Remove jQuery and Bootstrap completely.
12. Replace jasmine and karma test runner with jest. Migrate all the JS test cases to jest. This will save time in writing and debugging JS tests.
13. Other important code improvements and cleanup.
2023-10-23 17:43:17 +05:30
Yogesh Mahajan a607ab2d94
Another try to fix role related feature tests. 2023-03-29 13:48:54 +05:30
Yogesh Mahajan fc0e36b313
Removed old path library used to validate client secret path while google authentication. #5750 2023-03-28 11:27:16 +05:30
Yogesh Mahajan 97bd417ea8
Fixed intermittent failures for the role related feature tests. 2023-03-27 11:51:28 +05:30
Yogesh Mahajan 3de2e625b5
Fix feature test failures caused due to invalid binary path. 2023-03-15 18:54:22 +05:30
Yogesh Mahajan 3841bc5253
Fixed feature test failures occurring due to tree changes. 2023-01-04 10:44:22 +05:30
Akshay Joshi 98184e5835 Update copyright notices for 2023 2023-01-02 11:53:55 +05:30
Aditya Toshniwal 5c34c10d4e
- Move pgadmin4-treeview to pgAdmin main repo.
- Use react based context menu for browser tree. #5615.
- Fix feature tests failure.
2023-01-02 10:51:13 +05:30
Aditya Toshniwal ff9daec5ec
Rewrite pgAdmin main menu bar to use React. #5615 2022-12-22 14:25:18 +05:30
Yogesh Mahajan 7b96bf857c
Fixed intermittent feature test failures. 2022-11-29 17:35:07 +05:30
Yogesh Mahajan cbf5886430 Fixed the following code smells:
1. Use concise character class syntax
2. Add a "break" statement or remove this "else" clause.
3. Replace this generic exception class with a more specific one.
4. Use a regular expression literal instead of the 'RegExp' constructor.
5. Use the opposite operator ("not in") instead.
2022-09-10 13:48:14 +05:30
Akshay Joshi 3b95a416ca Fixed 'Remove the unnecessary boolean literals' code smell. 2022-09-09 15:23:18 +05:30
Akshay Joshi 18b77f15dd Remove Alertify from pgAdmin completely. Fixes #7619 2022-09-08 15:16:48 +05:30
Yogesh Mahajan 8f2bda2309 1) Preserve the settings set by the user in the import/export data dialog. Fixes #7428
2) Fixed the JSON editor issue of hiding the first record. Fixes #7520
2022-07-18 10:54:03 +05:30
Yogesh Mahajan 683528b81c Fixed feature tests. 2022-07-12 11:10:23 +05:30
Yogesh Mahajan 1a5e60c44f Fixed feature tests. 2022-07-08 18:25:00 +05:30
Yogesh Mahajan 23869cd61f Fixed an issue where users would not be able to authenticate in Azure on Linux platforms. Fixes #7495 2022-06-23 18:19:32 +05:30
Yogesh Mahajan 95f63f6af8 Fixed feature tests. 2022-06-22 17:47:09 +05:30
Pradip Parkale 6465dc951c Fixed feature test case failed as a result of converting preferences and other dialogs to React. 2022-05-17 19:06:24 +05:30
Aditya Toshniwal ca8e14455f Fixed the following issues:
1. Feature test cases for the new query tool.
 2. Query tool panel rename is not persisting.
2022-05-12 18:29:09 +05:30
Yogesh Mahajan ce8e6b47c1 Fixed feature tests. 2022-02-16 18:03:42 +05:30
Nikhil Mohite e7e4d5cf0a Fixed feature test cases for maintenance dialog. 2022-01-18 14:51:02 +05:30
Akshay Joshi e38c38cd58 Fixed following SonarQube code smells:
1) Remove this useless assignment to a variable.
2) Remove the unused local variable.
2022-01-12 14:53:19 +05:30
Akshay Joshi 2786f7ac5a Update copyright notices for 2022 2022-01-04 13:54:25 +05:30
Akshay Joshi fd53e4f5f9 Replace Alertify alert and confirm with React-based model dialog. Fixes #7053 2021-12-07 18:52:40 +05:30
Yogesh Mahajan 19984d6563 Fixed feature test failures due to React porting of backup dialog. 2021-11-23 17:36:10 +05:30
Yogesh Mahajan 246bb01736 Fixed feature test cases. 2021-11-18 17:13:32 +05:30
Yogesh Mahajan 77931d2315 Uses selenium 4.0.0a6 which works with python 3.6 2021-11-12 11:56:44 +05:30
Yogesh Mahajan 9479f0e632 Fixed feature test cases after react porting. 2021-11-10 11:50:20 +05:30
Akshay Joshi 7b85253465 Corrected some menu lables. 2021-10-27 11:05:23 +05:30
huangj.fnst@fujitsu.com 8a21d9b500 Fixed some typos in the documentation and comments. 2021-10-14 11:13:16 +05:30
Aditya Toshniwal 81b78dd2b2 Do not block the query editor window when running a query. Fixes #3920 2021-06-23 12:22:24 +05:30
Yogesh Mahajan 2486b79450 Fixed feature tests failure issue due to binary path feature. 2021-06-23 11:55:27 +05:30
Yogesh Mahajan 2d58f60a53 Modifies the way to execute feature tests in parallel and it should be configured in Server Mode. 2021-05-27 11:01:25 +05:30