Commit Graph

530 Commits

Author SHA1 Message Date
Ashesh Vashi
441cc57bb8
Don't show 'Types of objects' for the 'Cluster' operation. Fixes #7884 2024-09-18 07:48:09 +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
Aditya Toshniwal
57e72ce598 Fixed bugs found when testing react-data-grid upgrade changes. #7705 2024-08-13 13:00:52 +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
Aditya Toshniwal
c6e7ce03cc
Upgrade react-data-grid fork to latest and change pgAdmin accordingly. #7705 2024-07-31 19:12:36 +05:30
Yogesh Mahajan
1eb07608e9
Ensure processes related notifiers disappears. #7219 2024-07-17 13:07:52 +05:30
Pravesh Sharma
a06c13623d
Fixed an issue where theme preview under theme options was broken in pgAdmin server mode. #7626 2024-07-16 10:25:48 +05:30
Khushboo Vashi
6b012193e3 Pin Psycopg Binary packages to 3.1.19 for the ARM64 MacOS platform wheel packages. 2024-07-10 17:43:13 +05:30
Aditya Toshniwal
760e38293c Fix issues found during Electron testing. #7494
Fix application crash when using users dialog. #7607
2024-07-08 19:24:29 +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
Aditya Toshniwal
f8fa1cf6d6
- Fix few SonarQube issues.
- Cleanup NW.js related stuff.
2024-07-02 10:34:30 +05:30
Aditya Toshniwal
91eb60a363
Replace pgAdmin NW.js container with Electron container. #7494 2024-07-01 11:27:42 +05:30
Aditya Toshniwal
31a91409a0 Fixed incorrect sorting of size in statistics tab. #7542 2024-06-19 18:27:43 +05:30
Akshay Joshi
2b04f3ca1d Fixed incorrect handling of the code smell for the reject API call 2024-06-17 18:22:38 +05:30
Yogesh Mahajan
b0e7847962
Fixed bugs found while testing makeStyles JSS changes. #7363 2024-06-17 15:45:40 +05:30
Akshay Joshi
5866da8194 Fixed SonarQube code smells. 2024-06-13 18:48:02 +05:30
Akshay Joshi
dea5335ce5 Fixed the following SonarQube code smells:
1) Do not use the Array index in keys.
2) Import from the same module should be merged.
3) Mutable variables should not be exported.
4) Variables should not be initialized to undefined.
5) startswith or endswith method should be used.
6) Unwrap this unnecessarily grouped subpattern.

Additionally, addressed many other SonarQube rules.
2024-06-12 18:09:06 +05:30
Yogesh Mahajan
6357672387
Provide an option to set the theme based on the OS theme. #5932 2024-06-12 16:18:37 +05:30
Akshay Joshi
8857f0d179 Fix SonarQube code smells:
1) String literals should not be duplicated.
2) Prefer using an optional chain expression instead, as it's more concise and easier to read.
3) Expected the Promise rejection reason to be an Error.
2024-06-10 18:04:32 +05:30
Yogesh Mahajan
cc999ae5a5
Remove the usage of MUI makeStyles as it doesn't support React 18. #7363 2024-06-06 17:13:12 +05:30
Akshay Joshi
29a526626f Fixed an issue where the size displayed as 'NaN B' for all databases in the statistics tab. #7524 2024-06-03 17:10:11 +05:30
Ahmad
5c30695d66
Fixed Typos 2024-05-23 12:52:41 +05:30
Aditya Toshniwal
dd45f06d50
Added support for viewing PGD Clusters. #7215 2024-05-20 16:54:49 +05:30
Aditya Toshniwal
5ec6faff13
Upgrade react-table from v7 to v8. #7419 2024-05-07 16:31:04 +05:30
Khushboo Vashi
f4761f55f7 Fixed Multi-Factor Authentication bypass vulnerability (CVE-2024-4215). #7425 2024-04-29 13:41:02 +05:30
Pravesh Sharma
7c6fdcb12e
Disabled auto-fill on password fields. #2410 2024-04-29 11:44:17 +05:30
Akshay Joshi
30d2d1b23e Fixed the following code smells:
1) useState call is not destructured into value + setter pair.
2) A fragment with only one child is redundant.
3) Unnecessary '.apply()' and '.call()'.
4) Expected the Promise rejection reason to be an Error.
2024-04-09 19:18:56 +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
Akshay Joshi
edec9adbfb
Fixed SonarQube code smell 'Unnecessary use of boolean literals in conditional expression'. 2024-04-08 17:19:51 +05:30
Khushboo Vashi
fbbbfe22dd Fixed a remote code execution issue in the validate binary path (CVE-2024-3116). #7326 2024-04-01 11:34:01 +05:30
Aditya Toshniwal
ace73ebb60
Added support for viewing Log Based Clusters. #7216
Co-authored-by: Akshay Joshi <akshay.joshi@enterprisedb.com>
2024-03-28 12:19:34 +05:30
Akshay Joshi
097b630738
Added support for EDB Job Scheduler. #7098 2024-03-18 11:53:59 +05:30
Aditya Toshniwal
43f4cc4e17 Fix an issue where type column in dependencies tab is not showing correct label. #7225 2024-02-26 11:59:30 +05:30
Aditya Toshniwal
a5530f59f7 Fix sonarqube issues for the rule - 'If' statement should not be the only statement in 'else' block 2024-02-26 11:55:36 +05:30
Aditya Toshniwal
29e85a6b06 Fix SonarQube issues 2024-02-22 16:54:20 +05:30
Aditya Toshniwal
d3ede3151a
Upgrade CodeMirror from version 5 to 6. #7097 2024-02-21 11:15:25 +05:30
Aditya Toshniwal
721290b1e9 Fix an issue where type column in dependents/dependencies tab is not showing correct label. #7225 2024-02-20 16:23:05 +05:30
Pravesh Sharma
f7045b58d4
Fixed an issue where format sql was messing up operator. #5083
- The formatting is done on client side now using sql-formattor JS lib. Backend API based formatting is removed.
- Added new options data type case, expression width, function case, lines between queries, logical operator new line and new line before semicolon available in the new lib.
- Removed old options comma-first notations, re-indent aligned, re-indent, strip comments and wrap after N characters as not available in the new library.
- Capitalise casing is replaced with Preserve casing as it is not supported by the new library.
- Also fixes #6785, #6990, #7115.
2024-02-02 12:28:25 +05:30
Aditya Toshniwal
cdf49d6300 Fix failing feature tests 2024-01-30 13:01:57 +05:30
Aditya Toshniwal
028b70203c Fix SonarQube bugs 2024-01-29 18:39:30 +05:30
Akshay Joshi
639a28fbfc Fixed code smell 'Prefer using an optional chain expression instead, as it's more concise and easier to read'. 2024-01-25 16:51:40 +05:30
Akshay Joshi
0e0cbc40b8 Fixed SonarQube code smell Replace the unused local variable with '_'. 2024-01-24 18:33:43 +05:30
Akshay Joshi
30509d1bc1
Added copy server support, allowing the duplication of existing servers with the option to make certain modifications. #6085 (#7106)
Added copy server support, allowing the duplication of existing servers with the option to make certain modifications. #6085
2024-01-08 12:16:49 +05:30
Akshay Joshi
740ce15bd7 Update copyright notices for 2024 2024-01-01 14:13:48 +05:30
Nikhil Mohite
a4e9f04a2e
Fixed an issue where changes done to a node using edit dialog are not reflecting on the properties tab if the properties tab is active. #7041 2023-12-27 11:06:04 +05:30
Akshay Joshi
338bb64a55 Fixed an issue where reading process logs throws an error when DATA_DIR is moved to a networked drive. #6803 2023-11-23 16:32:52 +05:30
Aditya Toshniwal
19cbe8c39f More fixes related to rc-dock changes. #6479 2023-11-20 17:45:17 +05:30
Aditya Toshniwal
0bc044fa67 Fixed an issue where Geometry Viewer renders geometry incorrectly after trying to view 3D or non-4326 SRID geometry. #6017 2023-11-17 16:29:01 +05:30
Aditya Toshniwal
75a2d880f6 More fixes for UI issues found when testing wcDocker changes. #6479 2023-11-14 16:47:40 +05:30
Yogesh Mahajan
0d8adf9ced
Ensure backup/restore/maintenance works with invalid pgpass file parameter. #6820 2023-11-06 18:02:52 +05:30