Commit Graph
218 Commits
Author SHA1 Message Date
Alexey MilovidovandGitHub 6f4e5650bf Merge pull request #97531 from ClickHouse/play-html-database-loading-hourglass
Show rotating hourglass while loading tables in play.html sidebar
2026-02-22 20:15:44 +01:00
Alexey MilovidovandGitHub 5201b7a13e Merge pull request #97530 from ClickHouse/fix-database-panel-click
Fix database panel closing when clicking on a database name
2026-02-22 20:13:20 +01:00
Alexey MilovidovandClaude Opus 4.6 d6b5dfb760 Address review comments for copy button
- Access raw result text via `rawText` getter on `QueryResultElement`
  instead of reaching into its shadow DOM with `document.getElementById`
- Handle clipboard API unavailability and permission denial with
  appropriate user feedback balloons

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-21 16:36:09 +01:00
Alexey Milovidov 68611e387a Merge remote-tracking branch 'origin/master' into HEAD 2026-02-21 05:03:41 +01:00
Alexey MilovidovandClaude Opus 4.6 ad3f59413e Merge master into play-html-copy-raw-result to resolve conflicts
Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-21 02:52:03 +01:00
Alexey MilovidovandClaude Opus 4.6 7353ba069c Merge master into fix-database-panel-click, resolve conflict in favor of button exclusion
Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-21 02:49:35 +01:00
Alexey MilovidovandClaude Opus 4.6 0002ece457 Add copy button for raw query results in play.html
When query results are displayed in raw form (non-table format), a copy
button with a clipboard icon appears next to the download button. Clicking
it copies the entire raw result to the clipboard and shows a brief
"Result copied" balloon that fades out after one second.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 22:17:15 +01:00
Alexey MilovidovandClaude Opus 4.6 c3ed6a5d22 Show rotating hourglass while loading tables in play.html sidebar
Display a rotating hourglass indicator next to the database name
while the list of tables is being loaded from the server.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 22:08:17 +01:00
Alexey MilovidovandClaude Opus 4.6 41267ff2f7 Refine database panel click fix: exclude only button clicks
Instead of excluding all clicks inside `#databases`, only exclude clicks
on `button` elements. This way, clicking on empty space in the database
panel still toggles it closed, while clicking on database/table buttons
does not accidentally close the panel.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 22:06:04 +01:00
Alexey MilovidovandClaude Opus 4.6 a08a39fa93 Fix database panel closing when clicking on a database name
Clicks inside the `#databases` container were bubbling up to the
`#menu` click handler, which called `toggleDatabases` and closed
the panel. Exclude `#databases` from the toggle condition.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 21:51:13 +01:00
Alexey MilovidovandClaude Opus 4.6 7c85f61718 Fix database panel closing when clicking on a database name
Clicks inside the `#databases` container were bubbling up to the
`#menu` click handler, which called `toggleDatabases` and closed
the panel. Exclude `#databases` from the toggle condition.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 21:48:25 +01:00
Alexey MilovidovandClaude Opus 4.6 b782fe827f Extract logos out of the result component
Move the ClickHouse logo and cloud logo from the `QueryResultElement`
shadow DOM into the main page HTML. The logo visibility is now managed
directly by the main script, so that even with multiple result tables,
the logos are displayed once.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 21:46:35 +01:00
Alexey MilovidovandClaude Opus 4.6 4326aa3280 Extract web components from play.html
Extract two vanilla web components (`<query-result>` and `<query-progress>`)
from `play.html` to encapsulate the result display and progress indication
logic using Shadow DOM.

`QueryProgressElement` encapsulates the hourglass spinner, check mark,
progress bar gradient, and stats text. `QueryResultElement` encapsulates
the data table, raw/unparsed output, error message, chart (uPlot),
and explain graph (dagre), along with all related CSS, cell selection,
keyboard navigation, and column resizing.

This makes the rendering logic reusable and allows multiple instances
to coexist on a single page. CSS custom properties for theming pierce
shadow boundaries automatically.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-20 21:40:31 +01:00
Alexey MilovidovandClaude Opus 4.6 3536d8cc1e Merge master into web-ui-favicon-query-state
Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-15 00:58:59 +01:00
Alexey MilovidovandClaude Opus 4.6 d739c220f8 Display errors from auxiliary queries in Web UI
When an auxiliary query (loading the list of databases or tables)
fails, display the error in the main area the same way as for regular
queries, and hide any previous result. Also prevent the sidebar panel
from being marked as opened on error, and clear the error on
subsequent successful auxiliary queries.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-14 08:31:14 +01:00
Alexey MilovidovandClaude Opus 4.6 f1b7fde0f9 Make the left panel in /play UI clickable to toggle the database list
The entire left panel background now acts as a toggle for the database
list, same as clicking the ClickHouse logo icon. The cursor shows a
right arrow (expand) when collapsed and a left arrow (collapse) when
expanded. Clicks on the GitHub icon and the database toggle icon itself
are excluded from this behavior.

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-14 08:27:29 +01:00
Alexey MilovidovandClaude Opus 4.6 7d57cc3da2 Change favicon to indicate query running state in Web UI
When a query runs for a long time, users often switch to another browser tab
and cannot see when it finishes. The favicon now changes to a gray version
while a query is running and restores to the original yellow when it completes
(success, error, or cancellation).

Closes #85055

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-14 07:55:36 +01:00
Alexey MilovidovandClaude Opus 4.6 de726ed2ab Fix /play UI error on system table queries by setting query_cache_system_table_handling=ignore
The /play Web UI unconditionally enables query cache for all requests.
When a query touches system tables (e.g., `SELECT count() FROM system.tables`),
ClickHouse throws `QUERY_CACHE_USED_WITH_SYSTEM_TABLE` (Code 719).

Add `query_cache_system_table_handling=ignore` to both the execute and download
URL parameter strings so that system table queries silently skip caching
instead of throwing an error.

Closes https://github.com/ClickHouse/ClickHouse/issues/95387

Co-Authored-By: Claude Opus 4.6 <[email protected]>
2026-02-14 05:21:45 +01:00
Cole Smith 0f37f4a576 use natural order for database names
whitespace
2025-12-31 15:36:41 -05:00
Cole Smith ace0185430 use natural order for table names 2025-12-31 15:33:50 -05:00
Sam Kaessner 2cac49569f add a hotkey for commenting out the current line or lines 2025-11-29 14:05:06 -07:00
Alexey Milovidov 45d3b27bd9 Make outline of the selected table cell consistent 2025-11-18 01:41:08 +01:00
Alexey Milovidov e9eef849ed Return back border-collapse 2025-11-18 01:32:29 +01:00
Alexey Milovidov e745e27f62 Make the logo position sticky 2025-11-18 01:19:02 +01:00
Alexey Milovidov c9df79ed9d Fix default theme 2025-11-18 00:38:13 +01:00
Alexey Milovidov e83f64c65b Fix selection in Web UI 2025-11-18 00:20:17 +01:00
Alexey Milovidov 4762858e8e A few changes in Web UI for clarity 2025-11-16 17:11:21 +01:00
Alexey MilovidovandGitHub 064c048a2f Update play.html 2025-11-14 14:00:26 +01:00
Alexey MilovidovandGitHub 9c4dc563c4 Update play.html 2025-11-14 13:58:50 +01:00
Alexey MilovidovandGitHub a48cbab45a Merge branch 'master' into play-download-button 2025-11-14 13:57:29 +01:00
Alexey MilovidovandGitHub 9c703fd7b9 Merge pull request #89771 from ClickHouse/show-table-properties-in-web-ui
Show table properties in Web UI
2025-11-14 12:53:09 +01:00
Alexey Milovidov e2ee429904 Show table properties in Web UI 2025-11-09 01:44:50 +01:00
Alexey Milovidov 4fd2a14a30 Miscellaneous 2025-11-09 00:51:29 +01:00
Alexey Milovidov 9ef8979641 Download option in the Web UI 2025-11-08 23:28:03 +01:00
Alexey Milovidov f8e483fdb4 Temporary commit 2025-11-08 19:48:27 +01:00
Alexey Milovidov c40aab6d22 Download button in the Web UI 2025-11-08 02:46:56 +01:00
Alexey Milovidov 8882c18115 Proper z-index for tooltips 2025-11-08 01:30:23 +01:00
Alexey Milovidov b261345c47 Proper z-index for tooltips 2025-11-08 01:27:56 +01:00
Alexey Milovidov ffee960de0 Better type hints in the Web UI 2025-11-08 01:23:19 +01:00
Alexey Milovidov cdeef5cbc2 I have play.html which contains the source code of the ClickHouse Web UI. It has a feature of resizing table columns. I need a similar feature for resizing the query textarea by dragging its bottom border (it will adjust the height by dragging). At the same time, let's remove the browser-provided default resizer at the bottom right corner. No restriction on the minimum height. 2025-11-04 01:21:53 +01:00
Alexey Milovidov 108f81f8d1 Negative bars in the Web UI 2025-10-27 06:45:52 +01:00
Alexey Milovidov c9c7cc6ee1 Check credentials in the Web UI only on pasting 2025-10-18 01:41:21 +02:00
Alexey Milovidov 6a15f764bd Simplification 2025-08-01 01:39:00 +02:00
Alexey Milovidov 33d3f097c4 Add Lexer.wasm as a build target 2025-07-31 21:28:51 +02:00
Alexey Milovidov 49e3a7a5cd Update standalone lexer 2025-07-31 21:20:55 +02:00
Alexey Milovidov 9bc609913f Minor fixes for Web UI 2025-07-26 06:50:36 +02:00
Alexey MilovidovandGitHub efe3b3b8b4 Merge pull request #84326 from ClickHouse/better-charts-play
Slightly better charts in Web UI
2025-07-26 03:05:30 +02:00
Alexey MilovidovandGitHub 729576993d Merge pull request #84087 from ClickHouse/play-save-password
Web UI: Give browsers a chance to save the password.
2025-07-23 22:38:59 +02:00
Alexey Milovidov 02770ad653 Slightly better charts in Web UI 2025-07-23 22:36:04 +02:00
Alexey Milovidov 0e24746aae Slightly better selection colors in Web UI 2025-07-23 05:01:20 +02:00