diff --git a/apps/client/src/layouts/desktop_layout.tsx b/apps/client/src/layouts/desktop_layout.tsx index 96d7c09ee..f689f1082 100644 --- a/apps/client/src/layouts/desktop_layout.tsx +++ b/apps/client/src/layouts/desktop_layout.tsx @@ -7,8 +7,6 @@ import NoteTitleWidget from "../widgets/note_title.jsx"; import NoteDetailWidget from "../widgets/note_detail.js"; import PromotedAttributesWidget from "../widgets/promoted_attributes.js"; import NoteListWidget from "../widgets/note_list.js"; -import SqlResultWidget from "../widgets/sql_result.js"; -import SqlTableSchemasWidget from "../widgets/sql_table_schemas.js"; import NoteIconWidget from "../widgets/note_icon.jsx"; import ScrollingContainer from "../widgets/containers/scrolling_container.js"; import RootContainer from "../widgets/containers/root_container.js"; @@ -43,6 +41,7 @@ import { DESKTOP_FLOATING_BUTTONS } from "../widgets/FloatingButtonsDefinitions. import SearchResult from "../widgets/search_result.jsx"; import GlobalMenu from "../widgets/buttons/global_menu.jsx"; import SqlResults from "../widgets/sql_result.js"; +import SqlTableSchemas from "../widgets/sql_table_schemas.js"; export default class DesktopLayout { @@ -137,7 +136,7 @@ export default class DesktopLayout { new ScrollingContainer() .filling() .child(new PromotedAttributesWidget()) - .child(new SqlTableSchemasWidget()) + .child() .child(new NoteDetailWidget()) .child(new NoteListWidget(false)) .child() diff --git a/apps/client/src/stylesheets/theme-next/pages.css b/apps/client/src/stylesheets/theme-next/pages.css index 93cc30589..9816f21fb 100644 --- a/apps/client/src/stylesheets/theme-next/pages.css +++ b/apps/client/src/stylesheets/theme-next/pages.css @@ -96,7 +96,6 @@ background: var(--background) !important; color: var(--color) !important; line-height: unset; - cursor: help; } .sql-table-schemas-widget .sql-table-schemas button:hover, @@ -106,18 +105,6 @@ --color: var(--main-text-color); } -/* Tooltip */ - -.tooltip .table-schema { - font-family: var(--monospace-font-family); - font-size: .85em; -} - -/* Data type */ -.tooltip .table-schema td:nth-child(2) { - color: var(--muted-text-color); -} - /* * NOTE MAP */ diff --git a/apps/client/src/widgets/sql_table_schemas.css b/apps/client/src/widgets/sql_table_schemas.css new file mode 100644 index 000000000..d13a71dfd --- /dev/null +++ b/apps/client/src/widgets/sql_table_schemas.css @@ -0,0 +1,43 @@ +.sql-table-schemas-widget { + padding: 12px; + padding-right: 10%; + contain: none !important; +} + +.sql-table-schemas > .dropdown { + display: inline-block !important; +} + +.sql-table-schemas button.btn { + padding: 0.25rem 0.4rem; + font-size: 0.875rem; + line-height: 0.5; + border: 1px solid var(--button-border-color); + border-radius: var(--button-border-radius); + background: var(--button-background-color); + color: var(--button-text-color); + cursor: pointer; +} + +.sql-console-result-container { + width: 100%; + font-size: smaller; + margin-top: 10px; + flex-grow: 1; + overflow: auto; + min-height: 0; +} + +.table-schema td { + padding: 5px; +} + +.dropdown .table-schema { + font-family: var(--monospace-font-family); + font-size: .85em; +} + +/* Data type */ +.dropdown .table-schema td:nth-child(2) { + color: var(--muted-text-color); +} \ No newline at end of file diff --git a/apps/client/src/widgets/sql_table_schemas.ts b/apps/client/src/widgets/sql_table_schemas.ts deleted file mode 100644 index 5a15881c4..000000000 --- a/apps/client/src/widgets/sql_table_schemas.ts +++ /dev/null @@ -1,94 +0,0 @@ -import { t } from "../services/i18n.js"; -import NoteContextAwareWidget from "./note_context_aware_widget.js"; -import server from "../services/server.js"; -import type FNote from "../entities/fnote.js"; - -const TPL = /*html*/` -
- - - ${t("sql_table_schemas.tables")}: - -
`; - -interface SchemaResponse { - name: string; - columns: { - name: string; - type: string; - }[]; -} - -export default class SqlTableSchemasWidget extends NoteContextAwareWidget { - - private tableSchemasShown?: boolean; - private $sqlConsoleTableSchemas!: JQuery; - - isEnabled() { - return this.note && this.note.mime === "text/x-sqlite;schema=trilium" && super.isEnabled(); - } - - doRender() { - this.$widget = $(TPL); - this.contentSized(); - - this.$sqlConsoleTableSchemas = this.$widget.find(".sql-table-schemas"); - } - - async refreshWithNote(note: FNote) { - if (this.tableSchemasShown) { - return; - } - - this.tableSchemasShown = true; - - const tableSchema = await server.get("sql/schema"); - - for (const table of tableSchema) { - const $tableLink = $('