Commit Graph

138 Commits (master)

Author SHA1 Message Date
Aditya Toshniwal c8d6ff8a6d Fixed an issue where query tool title did not change after 'Save As' until any new change is made. #6193 2023-12-21 17:41:27 +05:30
Nikhil Mohite 04580652ab
Allow users to convert View/Edit table into a Query tool to enable editing the SQL generated. #5908 2023-12-19 15:52:57 +05:30
Pravesh Sharma e64f4f632d
1. Fixed an issue where all rows and filter rows buttons of object explorer toolbar were disabled for views and other supported nodes. #7011
2. Fixed an issue where View/Edit data -> Filter dialog was not editable for catalog objects.
2023-12-04 17:19:05 +05:30
Aditya Toshniwal 16d1df2a1b Fixed an issue where schema diff tool is not loading preferences on start. #7017 2023-11-30 15:31:23 +05:30
Aditya Toshniwal 19cbe8c39f More fixes related to rc-dock changes. #6479 2023-11-20 17:45:17 +05:30
Aditya Toshniwal 75a2d880f6 More fixes for UI issues found when testing wcDocker changes. #6479 2023-11-14 16:47:40 +05:30
Aditya Toshniwal 85dd1e92ad Fix issues found when testing Flask upgrade and wcDocker changes. #6479 2023-11-08 18:07:32 +05:30
Aditya Toshniwal ef0b30b1ca Continue fixing multiple UI issues found when testing wcDocker changes. #6479 2023-11-06 18:08:16 +05:30
Aditya Toshniwal 17acce3e7b Continue fixing multiple UI issues found when testing wcDocker changes. #6479 2023-11-01 20:52:38 +05:30
Aditya Toshniwal e30d2eca90 Continue fixing multiple UI and SonarQube issues found when testing wcDocker changes. #6479 2023-10-30 16:57:01 +05:30
Aditya Toshniwal b11b2a2f50 Continue fixing multiple UI and SonarQube issues found when testing wcDocker changes. #6479 2023-10-27 15:51:45 +05:30
Aditya Toshniwal 3bcac26ff9 Fix multiple UI and SonarQube issues found when testing wcDocker changes. #6479 2023-10-26 12:06:28 +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
Aditya Toshniwal d6cddd8c29
Remove Bootstrap and jQuery from authentication pages and rewrite them in ReactJS. #6295 2023-06-30 16:08:33 +05:30
Aditya Toshniwal f7bc826262 Fix an issue where all the menus are enabled when pgAdmin is opened and no object is selected in the object explorer. #6435 2023-06-22 13:52:39 +05:30
Aditya Toshniwal 745a91393c Fix JS test cases and other JS build issues caused due to dependabot updates. 2023-06-09 18:22:20 +05:30
Nikhil Mohite fec63c6cf3
Text improvement for the OS secret store feature. #5123 2023-05-24 18:06:21 +05:30
Aditya Toshniwal a93c0c8d94
Redirect pgAdmin main window console logs to NW.js server logs. 2023-04-06 15:16:14 +05:30
Aditya Toshniwal f72f4aa359
Dashboard graph Y-axis width should increase with label. #5929 2023-03-14 11:04:08 +05:30
Aditya Toshniwal 713ddb5f62
Remove usage of jQuery in pgAdmin.
Remove usage of Bootstrap in React components. #5701
2023-02-10 10:28:39 +05:30
Nikhil Mohite a48828e7a3
Improve performance by removing signal-based zoom-in, zoom-out, etc functionality from the runtime environment. #5723 2023-01-17 17:18:35 +05:30
Khushboo Vashi 9ff015e73c
Added support of AWS provider for BigAnimal cloud deployment. #5569 2023-01-09 12:32:26 +05:30
Pravesh Sharma 33aea87dea
Incorporated review comments. #5647 2023-01-02 13:30:49 +05:30
Akshay Joshi 98184e5835 Update copyright notices for 2023 2023-01-02 11:53:55 +05:30
Pravesh Sharma 67bc0c23ef
Fixed an issue where row count notification was disappearing automatically. #5647 2023-01-02 10:54:24 +05:30
Aditya Toshniwal ff9daec5ec
Rewrite pgAdmin main menu bar to use React. #5615 2022-12-22 14:25:18 +05:30
Nikhil Mohite 2480d08e0f
Added native menu support in desktop mode. #5503 2022-12-06 18:16:36 +05:30
Aditya Toshniwal f828951fc4
Fix the missing once event handler after backbone removal. #5493 2022-11-28 13:46:12 +05:30
Aditya Toshniwal 8d74de09cc
Remove all traces of Backbone, Underscore. #5493 2022-11-21 10:54:15 +05:30
Aditya Toshniwal ff095fc7c4
More fixes related to ERD color change. #4392 2022-10-13 18:34:34 +05:30
Aditya Toshniwal ae82a4b279
Fix an issue where clear color is not reflecting in color picker. #4392 (#5425) 2022-10-12 16:34:54 +05:30
Aditya Toshniwal 794cbed57c
Added support to specify the background fill color to the table nodes in the ERD tool. #4392 2022-10-12 10:07:30 +05:30
Nikhil Mohite 1b11a6cd4b
Fixed a couple of SonarQube issues. 2022-09-27 14:28:31 +05:30
Nikhil Mohite 45a1dee9f1
Added the close button for all the notifications of the notistack. #5212 2022-09-23 14:01:18 +05:30
Akshay Joshi 18b77f15dd Remove Alertify from pgAdmin completely. Fixes #7619 2022-09-08 15:16:48 +05:30
Nikhil Mohite e1942d8c9e 1) Port schema diff to React. Fixes #6133
2) Remove SlickGrid.
2022-09-07 19:20:03 +05:30
Aditya Toshniwal 0f46f070ed Port the remaining components of the ERD Tool to React. Fixes #7343
1. Make use of MUI styles and remove SCSS.
2. Use the new common components for buttons and tooltips, so that they are consistent.
3. UI design should be aligned with the query tool.
4. Remove tippyjs and Alertify dependencies.
2022-09-06 18:09:13 +05:30
Akshay Joshi e58b9c767b Port search object dialog to React. Fixes #7622 2022-08-30 17:08:12 +05:30
Aditya Toshniwal 09e2c0eac0 1. Explain plan crashes query tool after SonarQube fixes.
2. Fix XSS issue in query tool.
3. Process details for cloud process not showing complete command.
4. Confirm dialog before removing processes.
2022-08-18 18:42:03 +05:30
Akshay Joshi ef91207669 1) Fixed an issue where an existing user is deleted and recreated again in the User Management dialog. Fixes #7618
2) Fixed preferences issue when changing themes.
3) Added validation for user names that already exist.
2022-08-16 17:28:45 +05:30
Akshay Joshi 1e94c3bd81 Fixed Security Hotspot reported by SonarQube. 2022-08-14 07:09:45 +05:30
Aditya Toshniwal c2b23465cc 1) Added support to show all background processes in separate panel. Fixes #3709
2) Port process watcher to React. Fixes #7404
2022-08-11 10:49:45 +05:30
Akshay Joshi 53887c32bf Port change ownership dialog to React. Fixes #7590 2022-08-05 14:11:17 +05:30
Akshay Joshi 81b0d1138b Remove Alertify dialog from Grant Wizard, Import/Export Servers and Cloud. 2022-07-28 10:14:04 +05:30
Akshay Joshi 81f52a82c8 Port About dialog to React. Fixes #7567 2022-07-28 10:11:40 +05:30
Aditya Toshniwal a7fd7d67b3 1. Intermittently failing test cases.
2. Dialog vertical position should be more on the upper side.
3. File not supported error is not showing.

refs #7313
2022-07-25 11:48:27 +05:30
Aditya Toshniwal 4808df5e95 1) Port the file/storage manager to React. Fixes #7313
2) Allow users to delete files/folders from the storage manager. Fixes #4607
3) Allow users to search within the file/storage manager. Fixes #7389
4) Fixed an issue where new folders cannot be created in the save dialog. Fixes #7524
2022-07-19 15:27:47 +05:30
Nikhil Mohite b283c0ba18 Port Master Password dialog to React. Fixes #7342 2022-07-04 12:16:23 +05:30
Aditya Toshniwal 86b30b3c83 Theme component usage has been fixed, a component should never be wrapped in multiple Theme components. 2022-06-30 15:18:20 +05:30
Nikhil Mohite 45adff6087 Set the position of the dialog to the center of the screen. 2022-06-24 15:14:10 +05:30
Aditya Toshniwal 725726f083 Ensure that the Query Editor should be focused when switching between query tool tabs. Fixes #7441 2022-06-13 14:26:01 +05:30
Nikhil Mohite ae0624ae8a Fixed an issue where Preferences are not saved when the dialog is maximized. Fixes #7383 2022-05-17 11:06:14 +05:30
Akshay Joshi 44f9ba4a57 Port connect server password dialog to React. Fixes #7337 2022-05-16 16:21:14 +05:30
Aditya Toshniwal 25b89f7624 Fixed the following issues for the new query tool:
1) Failed to fetch query history error sometimes.
 2) In copy paste row, if a copied row has [null], then those are pasted as an empty string.
 3) When Data output is empty, show an empty grid.
 4) Schema diff generates a script button resulting in an empty window. Fixes #7306.
 5) Detach the DataOutput panel > Try editing text cell > Text editor is hidden behind the data output panel

refs #6131
2022-04-25 18:11:39 +05:30
Aditya Toshniwal c5ca394cec 1. Add min width to panels.
2. Fix issues related to New connection in query tool. Also fixed some existing bugs related to this.

refs #6131
2022-04-22 18:17:01 +05:30
Aditya Toshniwal e5ef6a7b21 Fixed following issues for Query Tool (after React Porting):
1) Find/Replace both opens the same dialogue box.(by clicking menu option)
2) Add New Server Connection > Server options keep loading(For multiple Server groups & should have some server)
3) Fixed CSS issues of slickgrid at various places.
4) C should be captial in ’<New connection…>'
5) In pop title for New Connection, all words should be capital.(Add new connection)
6) Explain > Analaysis tab > Column heading missing ROWS PLAN with cost & In explain only.
7) Explain > Analaysis tab > with cost enabled > Upward arrow size does not match with font of number. Arrow is little bigger than number.
8) Boolean default is not considered while ading new row.(try table from feature test defaults)
9) In query history , when not query history present, warning icon size big. Match it to warning message - No history found
10) Select table/db object > Open query tool from Tools menu > NOT FOUND error is shown. Existing issue, fixed.
11) Any cell just open by clicking it > Do NOT change any thing > Click Ok > Cell is shown as edited.

refs #6131
2022-04-20 19:02:16 +05:30
Aditya Toshniwal 9c30d983bd Fixed following issues for query tool after react porting:
1) Add New Server Connection > Server options keep loading(For empty Server group).
 2) After clicking indent/Unindent(for all operations) for large query option left as it is till operation completes
 3) Check sign beside options in Execute Option/Copy Header is little bit big
 4) In explain > Analysis tab does not show ROWS column
 5) In explain > Explain > analysis previous explain output is NOT cleared. New rows are appended. Same applies to the statistics tab.
 6) Update new query tool connection tool tip. Fixes #7289
 7) Explain-Analyze > Loops column is empty.
 8) Explain-Analyze with Verbose & Costs > in ROW X columns upward arrows are missing.
 9) Explain-Analyze with all option checked > background colors are missing for timing.
 10) Explain-Analyze > Additional bullet is added before Hash Cond.
 11) Browser Tree > Filtered rows icon is not working.
 12) Create table with timestamp and default value as function now() > Add new row > Enter mandatory columns except column where default value is function(now()) > Click Save > New row added but column with default value has value [default]. not updated to actual value. / Default values are not considered for any column while adding a new entry.
 13) Disable execute options in View/Edit data.
 14) The Boolean column always shows null.
 15) In Query history Remove & Remove all buttons are stuck to each other.
 16) On Remove all, the right panel is empty.
 17) Create a column with boolean[]/ text[], Try to add a new entry from data grid, enter “” quotes > Click Ok > Now try edit cell > You can not change value.
 18) In query history - Select queries are suffixed by ’Save Data’ icon
 19) Edit any table with PK > Try to insert duplicate PK > Error thrown > Correct pK value > Still old error shown > Not able to add new entry (This works when focus is moved from edited cell)
 20) Clicking arrows after opening dropdown options, does not collapse dropdown.

refs #6131
2022-04-18 12:50:51 +05:30
Aditya Toshniwal b5b9ee46a1 1) Port query tool to React. Fixes #6131
2) Added status bar to the Query Tool. Fixes #3253
3) Ensure that row numbers should be visible in view when scrolling horizontally. Fixes #3989
4) Allow removing a single query history. Refs #4113
5) Partially fixed Macros usability issues. Ref #6969
6) Fixed an issue where the Query tool opens on minimum size if the user opens multiple query tool Window quickly. Fixes #6725
7) Relocate GIS Viewer Button to the Left Side of the Results Table. Fixes #6830
8) Fixed an issue where the connection bar is not visible. Fixes #7188
9) Fixed an issue where an Empty message popup after running a query. Fixes #7260
10) Ensure that Autocomplete should work after changing the connection. Fixes #7262
11) Fixed an issue where the copy and paste row does not work if the first column contains no data. Fixes #7294
2022-04-07 17:36:56 +05:30
Akshay Joshi 38278c179e Ensure that the master password dialog is popped up if the crypt key is missing. Fixes #6960 2022-04-04 17:00:18 +05:30
Nikhil Mohite 07527ba69b Fixed maximize button issue on the preferences dialog.
refs #7149
2022-04-03 12:27:47 +05:30
Nikhil Mohite 0b4a874f30 Fixed an issue where unexpected error messages are displayed when users change the language via preferences. Fixes #7267 2022-03-24 16:08:13 +05:30
Nikhil Mohite 2f37f0ca51 Fixes for the preferences dialog
1) Add server mode validation in the binary path.
  2) Updated preferences tree rendering to avoid using the ReactDOM render.
  3) Updated CSS for keyboard shortcuts checkbox border makes it consistent with input box border.
  4) Fixed jasmine test case and improved code coverage.
  5) Fixed SonarQube issues.
  6) Added validation to disable "Maximum column with" option if "Column sized by" option is set to "Column name" in Query Tool -> Result grid.
  7) Updated documentation with the latest screenshots.
  8) Correct typo in the documentation. Fixes #7261

refs #7149
2022-03-23 13:28:35 +05:30
Nikhil Mohite 74e794b416 Port preferences dialog to React. Fixes #7149 2022-03-21 13:29:26 +05:30
Aditya Toshniwal 44b2f49839 Enhances the modal provider to make it more reusable. 2022-02-23 14:27:48 +05:30
Aditya Toshniwal bc4e8a3c82 Implemented utilities in React to make porting easier for pgAdmin tools. 2022-02-11 10:36:24 +05:30
Aditya Toshniwal bc0b25d995 1) Fixed an issue where a warning message was shown after database creation/modification. Fixes #7142.
2) Added error boundary to schema view which will improve the exception stack trace details.
3) Fixed Jasmine test cases.
2022-01-31 13:41:22 +05:30
Akshay Joshi 1013d7ccdd Fixed code smell reported by SonarQube. 2022-01-20 16:58:21 +05:30
Akshay Joshi c98fb887cc Fixed code smell 'Unexpected empty arrow function' reported by SonarQube. 2022-01-12 17:32:20 +05:30
Akshay Joshi 2786f7ac5a Update copyright notices for 2022 2022-01-04 13:54:25 +05:30
Nikhil Mohite e18ce2c9e3 Updates CSS and structure in Wizard, also fixed css issues in GrantWizard. 2021-12-31 14:16:50 +05:30
Nikhil Mohite 191e2b6242 Fixed an issue where an operation error message pop up showing the database object's name incorrectly. Fixes #7078 2021-12-28 13:49:04 +05:30
Akshay Joshi 262dcdcf54 Added postion relative to show error message properly. 2021-12-24 17:37:59 +05:30
Nikhil Mohite 45179ccb8c Change logic for grant wizard, wizard component, and updated CSS. 2021-12-22 18:26:21 +05:30
Akshay Joshi ebee7a5b72 Fixed linter errors. 2021-12-22 14:44:57 +05:30
Akshay Joshi ae73f13812 Added beforeNext and beforeBack method in Wizard. 2021-12-22 14:25:08 +05:30
Akshay Joshi 02b83146be 1) Added spacing for message and loading spinner.
2) Rename the GrantWizard Dialog.
3) Return the activeStep from disableNextStep function.
2021-12-21 18:00:07 +05:30
Akshay Joshi f24348b2b0 Fixed an issue where notifier not working when opening query tool in a new
window and then open it in the new tab.
2021-12-08 18:15:13 +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
Aditya Toshniwal dfdaf7f6d1 Implemented React based modal provider to create models on the fly.
Also, use this to replace Alertify alert and confirm dialog.
2021-12-03 12:50:24 +05:30
Akshay Joshi c6424e3897 Replaced alertifyjs notifiers with React-based notistack. Fixes #7004 2021-12-02 16:05:52 +05:30
Nikhil Mohite 40b8da8223 Fixed theme related issues after react porting. 2021-10-04 18:00:09 +05:30
Aditya Toshniwal 357a020828 Table node related fixes:
1. File select control sets the value for all other to last selected file. Fixes #6814
2. Vacuum parameters-related issues. Fixes #6777
3. Exclusion removes all columns if one row is removed. Fixes #6771
2021-10-01 12:57:04 +05:30
Nikhil Mohite 15a494c189 Fixed review comments for Grant Wizard.
refs #6687
2021-09-23 14:40:38 +05:30
Akshay Joshi 4bfffa3806 Port FTS Configurations node to react. Fixes #6638 2021-09-09 13:06:24 +05:30
Aditya Toshniwal bb5e2b98e9 Stability and bug fixes in schemaview react framework. 2021-09-09 13:03:54 +05:30
Aditya Toshniwal 0ddd053e88 Framework stability fixes. 2021-09-09 13:03:54 +05:30
Aditya Toshniwal 9bfef1f6e5 - Add feature to allow collection header form using CustomControl. - Framework stability and bug fixes. 2021-09-09 13:03:38 +05:30
Aditya Toshniwal 764677431f Added React framework for the properties dialog and port Server Group, Server, and Database dialogs.
Following changes done for the framework:
 - Framework for creating React based dynamic form view out of a pre-defined UI schema. Previously, it was based on Backform/Backbone.
 - The new framework and components will use MaterialUI as the base. Previously, Bootstrap/Backform/jQuery components were used.
 - The new code uses JSS instead of CSS since material UI and most modern React libraries also use JSS. In the future, this will allow us to change the theme in real-time without refresh.
 - 90% code covered by 80-85 new jasmine test cases.
 - Server group node UI Schema migration to new, with schema test cases.
 - Server node UI Schema migration to new, with schema test cases.
 - Database node UI Schema migration to new, with schema test cases.
 - Few other UI changes.

Fixes #6130
2021-09-09 12:20:59 +05:30