Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nWDHu-0002Ye-SV for pgadmin-hackers@arkaria.postgresql.org; Mon, 21 Mar 2022 08:21:15 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.92) (envelope-from ) id 1nWDHt-0005KY-3s for pgadmin-hackers@arkaria.postgresql.org; Mon, 21 Mar 2022 08:21:13 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1nWDHs-0005KP-Fa for pgadmin-hackers@lists.postgresql.org; Mon, 21 Mar 2022 08:21:12 +0000 Received: from mail-oi1-x22b.google.com ([2607:f8b0:4864:20::22b]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1nWDHn-0004Rg-Dp for pgadmin-hackers@lists.postgresql.org; Mon, 21 Mar 2022 08:21:11 +0000 Received: by mail-oi1-x22b.google.com with SMTP id 12so15423985oix.12 for ; Mon, 21 Mar 2022 01:21:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=td+EL2+dTJEkfwNORQDFMB8/eYaW5GE66xVmiqPrsYw=; b=AthozmIdRzNWguPFRALtQ68PBUnaGNgFKmTYZuxXr71TIC0LLQUojQtJ+SgC5t6mtt OubkMet1MJklUJJcA2r8GMQ0UZjEADCoMVna6QIsBAlp3mt5Vz5ryQUp4FHlkp8mPtta DIn34WN9YO91ZCWyZNFBrw0HiZrs0rXlpglXntIFHUUPMYIm8bxxwArx4WlBW35PSKkh eZH5upBN3U5c8jiIa7yZ5TnlUu3awZ4Mn7QwtRS3XTurUKqjHI+f7RgYHRg7r44mKbKG 4veX4CI2S/iAZgTvkQ+DNk9O4iecdVSIlMhdJu8c7H2TGwIutCepSyDPVMeB/G55B3KD VxOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=td+EL2+dTJEkfwNORQDFMB8/eYaW5GE66xVmiqPrsYw=; b=5h7GdGTKUnSNQzWgPs5XfojtvWk10gL817tTlW3S//36XMZ0PvfciJrJu+/Rcmi/76 97ZJ5ZbdBMWBtP8WBwgg28qEe7ODehulrdnoMJEo7JJQOf4z7Igp3R7Lvw4ALq6Q0KqH efV2LGsn5sNZsVtH9oUiiHt6qWd7vTcTcIBuLAib2yFswRDGD7CxOzO61XbqHhaiGvgo YYGg5JHj4nKyXFbSZPFgiufcyORDbWKaZqnKb0Z1Inj1GsYXTwAzzaYIDVgmGvkxV3XG EveeyBUQD8DeyFMeJYlC7b0Y5FMR8az/meRk8gmJXSkbwxGPK++wXHJ/iBnLH/FBijqR sHlA== X-Gm-Message-State: AOAM533CxwgXvcY8ZJkAeHda4rj02AK2ltJ7cbfdbGKUB1yTzDMU3GR6 QT+9I0jHEdEw3//Mr1aYf8w8UfnjJ8u3udiqBz+JfOGyb+elahqj97ZXaxwqxt5LU/dlZi6+zW2 JOTN5RbGfiQXKoTmkRo6/7TwjtyD45oDSpWfzBvuwLlksb1PRRhQOKlM7oBa+TUwE3OoZiSmDwC ibnAYNPrAbrdORr+l7h7meyk0IBAS5reEe5eK3lQxxjjMwqghy7rREPSck/K0it55UVKMnhDHBa aM8in1feg== X-Google-Smtp-Source: ABdhPJz8BrJIZLTC0dYXZVvl1LijIbub6J+ogY5SljO15Im2yahK/1SAL+GjmUoyyGvPc7UN0mjeiz3U36uiD0gxQ0I= X-Received: by 2002:a05:6808:d4b:b0:2da:398c:b46a with SMTP id w11-20020a0568080d4b00b002da398cb46amr13367292oik.0.1647850865110; Mon, 21 Mar 2022 01:21:05 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Aditya Toshniwal Date: Mon, 21 Mar 2022 13:50:29 +0530 Message-ID: Subject: Re: pgAdmin 4 commit: Port preferences dialog to React. Fixes #7149 To: Nikhil Mohite Cc: pgadmin-hackers , Akshay Joshi Content-Type: multipart/alternative; boundary="0000000000007549a105dab62da9" X-CLOUD-SEC-AV-Info: enterprisedb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Archived-At: Precedence: bulk --0000000000007549a105dab62da9 Content-Type: text/plain; charset="UTF-8" Hi Nikhil, You have called a ReactDOM.render inside a React component. ReactDOM.render is used only to mount the top React component. I remember we had discussed this and I told you to change. This may lead to unpredictable behaviour. Please change it. On Mon, Mar 21, 2022 at 1:30 PM Akshay Joshi wrote: > Port preferences dialog to React. Fixes #7149 > > Branch > ------ > master > > Details > ------- > > https://git.postgresql.org/gitweb?p=pgadmin4.git;a=commitdiff;h=74e794b4162b771f3ada4cf631bdbe0b43cab91b > Author: Nikhil Mohite > > Modified Files > -------------- > docs/en_US/images/preferences_browser_display.png | Bin 179173 -> 180159 > bytes > .../preferences_browser_keyboard_shortcuts.png | Bin 169108 -> 182931 > bytes > docs/en_US/images/preferences_browser_nodes.png | Bin 127965 -> 117746 > bytes > .../images/preferences_browser_properties.png | Bin 98747 -> 98006 > bytes > .../images/preferences_browser_tab_settings.png | Bin 242214 -> 218830 > bytes > .../en_US/images/preferences_dashboard_display.png | Bin 159705 -> 160834 > bytes > docs/en_US/images/preferences_dashboard_graphs.png | Bin 138376 -> 140864 > bytes > docs/en_US/images/preferences_debugger_display.png | Bin 133908 -> 0 bytes > .../preferences_debugger_keyboard_shortcuts.png | Bin 129497 -> 145405 > bytes > .../images/preferences_erd_keyboard_shortcuts.png | Bin 0 -> 171696 bytes > docs/en_US/images/preferences_misc_themes.png | Bin 112101 -> 122935 > bytes > .../images/preferences_misc_user_language.png | Bin 79006 -> 78854 > bytes > docs/en_US/images/preferences_paths_binary.png | Bin 242831 -> 251426 > bytes > docs/en_US/images/preferences_paths_help.png | Bin 132819 -> 99384 > bytes > docs/en_US/images/preferences_schema_diff.png | Bin 119685 -> 118589 > bytes > .../images/preferences_sql_auto_completion.png | Bin 95318 -> 89668 > bytes > docs/en_US/images/preferences_sql_csv_output.png | Bin 121212 -> 117730 > bytes > docs/en_US/images/preferences_sql_display.png | Bin 148088 -> 151244 > bytes > docs/en_US/images/preferences_sql_editor.png | Bin 221825 -> 196744 > bytes > docs/en_US/images/preferences_sql_explain.png | Bin 103846 -> 91462 > bytes > docs/en_US/images/preferences_sql_formatting.png | Bin 263141 -> 184540 > bytes > .../images/preferences_sql_keyboard_shortcuts.png | Bin 125560 -> 127110 > bytes > docs/en_US/images/preferences_sql_options.png | Bin 235207 -> 187799 > bytes > docs/en_US/images/preferences_sql_results_grid.png | Bin 150806 -> 152498 > bytes > docs/en_US/images/preferences_storage_options.png | Bin 100482 -> 94404 > bytes > docs/en_US/preferences.rst | 12 + > docs/en_US/release_notes_6_8.rst | 2 +- > web/package.json | 7 +- > .../browser/register_browser_preferences.py | 4 +- > .../servers/static/js/binary_path.ui.js | 71 +++ > web/pgadmin/misc/__init__.py | 10 +- > web/pgadmin/misc/file_manager/__init__.py | 10 +- > web/pgadmin/preferences/__init__.py | 138 +++-- > .../static/js/components/PreferencesComponent.jsx | 599 ++++++++++++++++++ > .../static/js/components/PreferencesTree.jsx | 68 +++ > web/pgadmin/preferences/static/js/index.js | 21 + > web/pgadmin/preferences/static/js/preferences.js | 671 > ++------------------- > web/pgadmin/preferences/tests/__init__.py | 8 + > .../preferences/tests/preferences_test_data.json | 27 + > .../preferences/tests/test_preferences_get.py | 39 ++ > .../preferences/tests/test_preferences_update.py | 60 ++ > web/pgadmin/static/img/fonticon/expand.svg | 1 + > .../static/img/fonticon/minimize_collapse.svg | 1 + > web/pgadmin/static/js/SchemaView/DataGridView.jsx | 12 +- > web/pgadmin/static/js/SchemaView/MappedControl.jsx | 85 ++- > web/pgadmin/static/js/SchemaView/index.jsx | 10 +- > web/pgadmin/static/js/components/ExternalIcon.jsx | 6 +- > .../static/js/components/FormComponents.jsx | 421 ++++++++----- > .../static/js/components/KeyboardShortcuts.jsx | 130 ++++ > .../static/js/components/QueryThresholds.jsx | 90 +++ > web/pgadmin/static/js/components/Themes.jsx | 58 ++ > web/pgadmin/static/js/helpers/ModalProvider.jsx | 165 ++++- > web/pgadmin/static/js/helpers/Notifier.jsx | 46 +- > web/pgadmin/static/js/tree/preference_nodes.ts | 247 ++++++++ > web/pgadmin/static/js/tree/preferences_tree.tsx | 53 ++ > web/pgadmin/static/js/tree/tree.js | 152 ++--- > web/pgadmin/static/scss/_alertify.overrides.scss | 3 + > .../sqleditor/utils/query_tool_preferences.py | 20 +- > web/pgadmin/utils/preferences.py | 30 +- > .../components/KeyboardShortcuts.spec.js | 100 +++ > .../javascript/components/QueryThreshold.spec.js | 86 +++ > .../javascript/components/Themes.spec.js | 96 +++ > .../schema_ui_files/binary_path.ui.spec.js | 47 ++ > web/webpack.shim.js | 2 +- > web/yarn.lock | 70 ++- > 65 files changed, 2659 insertions(+), 1019 deletions(-) > > -- Thanks, Aditya Toshniwal pgAdmin Hacker | Software Architect | *edbpostgres.com* "Don't Complain about Heat, Plant a TREE" --0000000000007549a105dab62da9 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Nikhil,

You=C2=A0have called a ReactDOM.render inside a= React component. ReactDOM.render is used only to mount the top React compo= nent.
I remember we had discussed this and I told you to change. This may l= ead to unpredictable behaviour.

Please change it.

On Mon, Mar 21,= 2022 at 1:30 PM Akshay Joshi <akshay.joshi@enterprisedb.com> wrote:
Port preferences dialog to React. Fixe= s #7149

Branch
------
master

Details
-------
https://git.postgresql.org/gitweb?p=3Dpgadmin4.git;a=3Dcommitdi= ff;h=3D74e794b4162b771f3ada4cf631bdbe0b43cab91b
Author: Nikhil Mohite <nikhil.mohite@enterprisedb.com>

Modified Files
--------------
docs/en_US/images/preferences_browser_display.png=C2=A0 | Bin 179173 -> = 180159 bytes
.../preferences_browser_keyboard_shortcuts.png=C2=A0 =C2=A0 =C2=A0| Bin 169= 108 -> 182931 bytes
docs/en_US/images/preferences_browser_nodes.png=C2=A0 =C2=A0 | Bin 127965 -= > 117746 bytes
.../images/preferences_browser_properties.png=C2=A0 =C2=A0 =C2=A0 | Bin 987= 47 -> 98006 bytes
.../images/preferences_browser_tab_settings.png=C2=A0 =C2=A0 | Bin 242214 -= > 218830 bytes
.../en_US/images/preferences_dashboard_display.png | Bin 159705 -> 16083= 4 bytes
docs/en_US/images/preferences_dashboard_graphs.png | Bin 138376 -> 14086= 4 bytes
docs/en_US/images/preferences_debugger_display.png | Bin 133908 -> 0 byt= es
.../preferences_debugger_keyboard_shortcuts.png=C2=A0 =C2=A0 | Bin 129497 -= > 145405 bytes
.../images/preferences_erd_keyboard_shortcuts.png=C2=A0 | Bin 0 -> 17169= 6 bytes
docs/en_US/images/preferences_misc_themes.png=C2=A0 =C2=A0 =C2=A0 | Bin 112= 101 -> 122935 bytes
.../images/preferences_misc_user_language.png=C2=A0 =C2=A0 =C2=A0 | Bin 790= 06 -> 78854 bytes
docs/en_US/images/preferences_paths_binary.png=C2=A0 =C2=A0 =C2=A0| Bin 242= 831 -> 251426 bytes
docs/en_US/images/preferences_paths_help.png=C2=A0 =C2=A0 =C2=A0 =C2=A0| Bi= n 132819 -> 99384 bytes
docs/en_US/images/preferences_schema_diff.png=C2=A0 =C2=A0 =C2=A0 | Bin 119= 685 -> 118589 bytes
.../images/preferences_sql_auto_completion.png=C2=A0 =C2=A0 =C2=A0| Bin 953= 18 -> 89668 bytes
docs/en_US/images/preferences_sql_csv_output.png=C2=A0 =C2=A0| Bin 121212 -= > 117730 bytes
docs/en_US/images/preferences_sql_display.png=C2=A0 =C2=A0 =C2=A0 | Bin 148= 088 -> 151244 bytes
docs/en_US/images/preferences_sql_editor.png=C2=A0 =C2=A0 =C2=A0 =C2=A0| Bi= n 221825 -> 196744 bytes
docs/en_US/images/preferences_sql_explain.png=C2=A0 =C2=A0 =C2=A0 | Bin 103= 846 -> 91462 bytes
docs/en_US/images/preferences_sql_formatting.png=C2=A0 =C2=A0| Bin 263141 -= > 184540 bytes
.../images/preferences_sql_keyboard_shortcuts.png=C2=A0 | Bin 125560 -> = 127110 bytes
docs/en_US/images/preferences_sql_options.png=C2=A0 =C2=A0 =C2=A0 | Bin 235= 207 -> 187799 bytes
docs/en_US/images/preferences_sql_results_grid.png | Bin 150806 -> 15249= 8 bytes
docs/en_US/images/preferences_storage_options.png=C2=A0 | Bin 100482 -> = 94404 bytes
docs/en_US/preferences.rst=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 12 +
docs/en_US/release_notes_6_8.rst=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 =C2=A02 +-
web/package.json=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 = =C2=A07 +-
.../browser/register_browser_preferences.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2= =A0 =C2=A04 +-
.../servers/static/js/binary_path.ui.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 |=C2=A0 71 +++
web/pgadmin/misc/__init__.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 10 +-
web/pgadmin/misc/file_manager/__init__.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= |=C2=A0 10 +-
web/pgadmin/preferences/__init__.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0 =C2=A0 =C2=A0 | 138 +++--
.../static/js/components/PreferencesComponent.jsx=C2=A0 | 599 +++++++++++++= +++++
.../static/js/components/PreferencesTree.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2= =A0 68 +++
web/pgadmin/preferences/static/js/index.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 21 +
web/pgadmin/preferences/static/js/preferences.js=C2=A0 =C2=A0| 671 ++------= -------------
web/pgadmin/preferences/tests/__init__.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= |=C2=A0 =C2=A08 +
.../preferences/tests/preferences_test_data.json=C2=A0 =C2=A0|=C2=A0 27 + .../preferences/tests/test_preferences_get.py=C2=A0 =C2=A0 =C2=A0 |=C2=A0 3= 9 ++
.../preferences/tests/test_preferences_update.py=C2=A0 =C2=A0|=C2=A0 60 ++<= br> web/pgadmin/static/img/fonticon/expand.svg=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 =C2=A01 +
.../static/img/fonticon/minimize_collapse.svg=C2=A0 =C2=A0 =C2=A0 |=C2=A0 = =C2=A01 +
web/pgadmin/static/js/SchemaView/DataGridView.jsx=C2=A0 |=C2=A0 12 +-
web/pgadmin/static/js/SchemaView/MappedControl.jsx |=C2=A0 85 ++-
web/pgadmin/static/js/SchemaView/index.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 10 +-
web/pgadmin/static/js/components/ExternalIcon.jsx=C2=A0 |=C2=A0 =C2=A06 +-<= br> .../static/js/components/FormComponents.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0 | 42= 1 ++++++++-----
.../static/js/components/KeyboardShortcuts.jsx=C2=A0 =C2=A0 =C2=A0| 130 +++= +
.../static/js/components/QueryThresholds.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2= =A0 90 +++
web/pgadmin/static/js/components/Themes.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2= =A0 58 ++
web/pgadmin/static/js/helpers/ModalProvider.jsx=C2=A0 =C2=A0 | 165 ++++- web/pgadmin/static/js/helpers/Notifier.jsx=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 46 +-
web/pgadmin/static/js/tree/preference_nodes.ts=C2=A0 =C2=A0 =C2=A0| 247 +++= +++++
web/pgadmin/static/js/tree/preferences_tree.tsx=C2=A0 =C2=A0 |=C2=A0 53 ++<= br> web/pgadmin/static/js/tree/tree.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0| 152 ++---
web/pgadmin/static/scss/_alertify.overrides.scss=C2=A0 =C2=A0|=C2=A0 =C2=A0= 3 +
.../sqleditor/utils/query_tool_preferences.py=C2=A0 =C2=A0 =C2=A0 |=C2=A0 2= 0 +-
web/pgadmin/utils/preferences.py=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0|=C2=A0 30 +-
.../components/KeyboardShortcuts.spec.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0| 100 +++
.../javascript/components/QueryThreshold.spec.js=C2=A0 =C2=A0|=C2=A0 86 +++=
.../javascript/components/Themes.spec.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0|=C2=A0 96 +++
.../schema_ui_files/binary_path.ui.spec.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2= =A0|=C2=A0 47 ++
web/webpack.shim.js=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 = =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2=A0 =C2=A02 +-<= br> web/yarn.lock=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0= =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 |=C2= =A0 70 ++-
65 files changed, 2659 insertions(+), 1019 deletions(-)



--
Thanks,
Aditya Toshniwal
pgAdmin Hacker=C2=A0| Software A= rchitect=C2=A0| edbpostgres.com
"Don't Complain about Heat, Plant a TREE&qu= ot;
--0000000000007549a105dab62da9--