1
1
mirror of https://github.com/Fabio286/antares.git synced 2025-06-05 21:59:22 +02:00

fix(PostgreSQL): error with materialized view tabs

This commit is contained in:
2025-02-13 18:01:19 +01:00
parent 704f70819b
commit 41e797f9e2
17 changed files with 25 additions and 25 deletions

View File

@ -348,7 +348,7 @@ export class PostgreSQLClient extends BaseClient {
matviewowner AS owner, matviewowner AS owner,
ispopulated AS is_populated, ispopulated AS is_populated,
definition, definition,
'materializedview' AS table_type 'materializedView' AS table_type
FROM pg_matviews FROM pg_matviews
WHERE schemaname = '${db.database}' WHERE schemaname = '${db.database}'
ORDER BY schema_name, ORDER BY schema_name,
@ -408,8 +408,8 @@ export class PostgreSQLClient extends BaseClient {
name: table.table_name, name: table.table_name,
type: table.table_type === 'VIEW' type: table.table_type === 'VIEW'
? 'view' ? 'view'
: table.table_type === 'materializedview' : table.table_type === 'materializedView'
? 'materializedview' ? 'materializedView'
: 'table', : 'table',
rows: table.reltuples, rows: table.reltuples,
size: tableSize, size: tableSize,

View File

@ -64,7 +64,7 @@
> >
<BaseIcon <BaseIcon
class="mt-1 mr-1" class="mt-1 mr-1"
:icon-name="['view', 'materializedview'].includes(element.elementType) ? 'mdiTableEye' : 'mdiTable'" :icon-name="['view', 'materializedView'].includes(element.elementType) ? 'mdiTableEye' : 'mdiTable'"
:size="18" :size="18"
/> />
<span :title="`${t('general.data').toUpperCase()}: ${t(`database.${element.elementType}`)}`"> <span :title="`${t('general.data').toUpperCase()}: ${t(`database.${element.elementType}`)}`">
@ -81,7 +81,7 @@
<a v-else-if="element.type === 'data'" class="tab-link"> <a v-else-if="element.type === 'data'" class="tab-link">
<BaseIcon <BaseIcon
class="mt-1 mr-1" class="mt-1 mr-1"
:icon-name="['view', 'materializedview'].includes(element.elementType) ? 'mdiTableEye' : 'mdiTable'" :icon-name="['view', 'materializedView'].includes(element.elementType) ? 'mdiTableEye' : 'mdiTable'"
:size="18" :size="18"
/> />
<span :title="`${t('general.data').toUpperCase()}: ${t(`database.${element.elementType}`)}`"> <span :title="`${t('general.data').toUpperCase()}: ${t(`database.${element.elementType}`)}`">

View File

@ -143,7 +143,7 @@
:selected-schema="selectedSchema" :selected-schema="selectedSchema"
:context-event="miscContextEvent" :context-event="miscContextEvent"
@open-create-view-tab="openCreateElementTab('view')" @open-create-view-tab="openCreateElementTab('view')"
@open-create-materializedview-tab="openCreateElementTab('materialized-view')" @open-create-materializedView-tab="openCreateElementTab('materialized-view')"
@open-create-trigger-tab="openCreateElementTab('trigger')" @open-create-trigger-tab="openCreateElementTab('trigger')"
@open-create-trigger-function-tab="openCreateElementTab('trigger-function')" @open-create-trigger-function-tab="openCreateElementTab('trigger-function')"
@open-create-routine-tab="openCreateElementTab('routine')" @open-create-routine-tab="openCreateElementTab('routine')"

View File

@ -16,9 +16,9 @@
/> {{ t('database.createNewView') }}</span> /> {{ t('database.createNewView') }}</span>
</div> </div>
<div <div
v-if="props.selectedMisc === 'materializedview'" v-if="props.selectedMisc === 'materializedView'"
class="context-element" class="context-element"
@click="emit('open-create-materializedview-tab')" @click="emit('open-create-materializedView-tab')"
> >
<span class="d-flex"> <span class="d-flex">
<BaseIcon <BaseIcon
@ -106,7 +106,7 @@ const props = defineProps({
const emit = defineEmits([ const emit = defineEmits([
'open-create-view-tab', 'open-create-view-tab',
'open-create-materializedview-tab', 'open-create-materializedView-tab',
'open-create-trigger-tab', 'open-create-trigger-tab',
'open-create-routine-tab', 'open-create-routine-tab',
'open-create-function-tab', 'open-create-function-tab',

View File

@ -121,7 +121,7 @@
<summary <summary
class="accordion-header misc-name" class="accordion-header misc-name"
:class="{'text-bold': breadcrumbs.schema === database.name && breadcrumbs.trigger}" :class="{'text-bold': breadcrumbs.schema === database.name && breadcrumbs.trigger}"
@contextmenu.prevent="showMiscFolderContext($event, 'materializedview')" @contextmenu.prevent="showMiscFolderContext($event, 'materializedView')"
> >
<BaseIcon <BaseIcon
class="misc-icon mr-1" class="misc-icon mr-1"
@ -133,7 +133,7 @@
icon-name="mdiFolderOpen" icon-name="mdiFolderOpen"
:size="18" :size="18"
/> />
{{ t('database.materializedview', 2) }} {{ t('database.materializedView', 2) }}
</summary> </summary>
<div class="accordion-body"> <div class="accordion-body">
<div> <div>
@ -496,9 +496,9 @@ const filteredViews = computed(() => {
const filteredMatViews = computed(() => { const filteredMatViews = computed(() => {
if (props.searchMethod === 'elements') if (props.searchMethod === 'elements')
return props.database.tables.filter(table => table.name.search(searchTerm.value) >= 0 && table.type === 'materializedview'); return props.database.tables.filter(table => table.name.search(searchTerm.value) >= 0 && table.type === 'materializedView');
else else
return props.database.tables.filter(table => table.type === 'materializedview'); return props.database.tables.filter(table => table.type === 'materializedView');
}); });
const filteredTriggers = computed(() => { const filteredTriggers = computed(() => {

View File

@ -50,7 +50,7 @@
class="text-light mt-1 mr-1" class="text-light mt-1 mr-1"
icon-name="mdiTableEye" icon-name="mdiTableEye"
:size="18" :size="18"
/> {{ t('database.materializedview') }}</span> /> {{ t('database.materializedView') }}</span>
</div> </div>
<div <div
v-if="workspace.customizations.triggerAdd" v-if="workspace.customizations.triggerAdd"

View File

@ -48,7 +48,7 @@
/> {{ t('application.settings') }}</span> /> {{ t('application.settings') }}</span>
</div> </div>
<div <div
v-if="selectedTable && selectedTable.type === 'materializedview' && customizations.materializedViewSettings" v-if="selectedTable && selectedTable.type === 'materializedView' && customizations.materializedViewSettings"
class="context-element" class="context-element"
@click="openMaterializedViewSettingTab" @click="openMaterializedViewSettingTab"
> >

View File

@ -195,7 +195,7 @@ const saveChanges = async () => {
uid: props.connection.uid, uid: props.connection.uid,
schema: props.schema, schema: props.schema,
elementName: localView.value.name, elementName: localView.value.name,
elementType: 'materializedview', elementType: 'materializedView',
type: 'materialized-view-props' type: 'materialized-view-props'
}); });

View File

@ -227,7 +227,7 @@ const saveChanges = async () => {
schema: props.schema, schema: props.schema,
elementName: oldName, elementName: oldName,
elementNewName: localView.value.name, elementNewName: localView.value.name,
elementType: 'materializedview' elementType: 'materializedView'
}); });
changeBreadcrumbs({ schema: props.schema, view: localView.value.name }); changeBreadcrumbs({ schema: props.schema, view: localView.value.name });

View File

@ -141,7 +141,7 @@ export const csCZ = {
total: 'Celkem', total: 'Celkem',
table: 'Tabulka | Tabulky', table: 'Tabulka | Tabulky',
view: 'Pohled | Pohledy', view: 'Pohled | Pohledy',
materializedview: 'Materializovaný pohled', materializedView: 'Materializovaný pohled',
definer: 'Definér', definer: 'Definér',
algorithm: 'Algoritmus', algorithm: 'Algoritmus',
trigger: 'Trigger | Triggery', trigger: 'Trigger | Triggery',

View File

@ -141,7 +141,7 @@ export const enUS = {
total: 'Total', total: 'Total',
table: 'Table | Tables', table: 'Table | Tables',
view: 'View | Views', view: 'View | Views',
materializedview: 'Materialized view | Materialized views', materializedView: 'Materialized view | Materialized views',
definer: 'Definer', definer: 'Definer',
algorithm: 'Algorithm', algorithm: 'Algorithm',
trigger: 'Trigger | Triggers', trigger: 'Trigger | Triggers',

View File

@ -141,7 +141,7 @@ export const esES = {
total: 'Total', total: 'Total',
table: 'Tabla | Tablas', table: 'Tabla | Tablas',
view: 'Vista | Vistas', view: 'Vista | Vistas',
materializedview: 'Vista Materializada | Vistas Materializadas', materializedView: 'Vista Materializada | Vistas Materializadas',
definer: 'Definidor', definer: 'Definidor',
algorithm: 'Algoritmo', algorithm: 'Algoritmo',
trigger: 'Disparador | Disparadores', trigger: 'Disparador | Disparadores',

View File

@ -140,7 +140,7 @@ export const heIL = {
total: 'סך הכל', total: 'סך הכל',
table: 'טבלה | טבלאות', table: 'טבלה | טבלאות',
view: 'תצוגה | תצוגות', view: 'תצוגה | תצוגות',
materializedview: 'תצוגה ממומשת | תצוגות ממומשות', materializedView: 'תצוגה ממומשת | תצוגות ממומשות',
definer: 'מגדיר', definer: 'מגדיר',
algorithm: 'אלגוריתם', algorithm: 'אלגוריתם',
trigger: 'טריגר | טריגרים', trigger: 'טריגר | טריגרים',

View File

@ -275,7 +275,7 @@ export const nlNL = {
savedQueries: 'Opgeslagen queries', savedQueries: 'Opgeslagen queries',
searchForElements: 'Zoek naar elementen', searchForElements: 'Zoek naar elementen',
searchForSchemas: 'Zoek naar schema\'s', searchForSchemas: 'Zoek naar schema\'s',
materializedview: 'Materialized view | Materialized views', materializedView: 'Materialized view | Materialized views',
createNewMaterializedView: 'Materialized view maken', createNewMaterializedView: 'Materialized view maken',
newMaterializedView: 'Nieuwe materialized view' newMaterializedView: 'Nieuwe materialized view'
}, },

View File

@ -270,7 +270,7 @@ export const ruRU = {
importQueryErrors: 'Внимание: {n} ошибка возникла | Внимание: {n} ошибок произошло', importQueryErrors: 'Внимание: {n} ошибка возникла | Внимание: {n} ошибок произошло',
executedQueries: '{n} запрос выполнен | {n} запросов выполнено', executedQueries: '{n} запрос выполнен | {n} запросов выполнено',
insert: 'Вставить', insert: 'Вставить',
materializedview: 'Материализованное представление | Материализованные представления', materializedView: 'Материализованное представление | Материализованные представления',
exportTable: 'Экспорт таблицы', exportTable: 'Экспорт таблицы',
createNewMaterializedView: 'Создать новое материализованное представление', createNewMaterializedView: 'Создать новое материализованное представление',
newMaterializedView: 'Новое материализованное представление', newMaterializedView: 'Новое материализованное представление',

View File

@ -270,7 +270,7 @@ export const uzUZ = {
importQueryErrors: 'Diqqat: {n} xato yuz berdi | Diqqat: {n} xatolar yuz berdi', importQueryErrors: 'Diqqat: {n} xato yuz berdi | Diqqat: {n} xatolar yuz berdi',
executedQueries: '{n} soʻrov bajarildi | {n} soʻrovlar bajarildi', executedQueries: '{n} soʻrov bajarildi | {n} soʻrovlar bajarildi',
insert: 'Kiritish', insert: 'Kiritish',
materializedview: 'Materializatsiya qilingan korinish | Materializatsiya qilingan korinishlar', materializedView: 'Materializatsiya qilingan korinish | Materializatsiya qilingan korinishlar',
exportTable: 'Jadvalni eksport qilish', exportTable: 'Jadvalni eksport qilish',
createNewMaterializedView: 'Yangi materializatsiya qilingan korinish yaratish', createNewMaterializedView: 'Yangi materializatsiya qilingan korinish yaratish',
newMaterializedView: 'Yangi materializatsiya qilingan korinish', newMaterializedView: 'Yangi materializatsiya qilingan korinish',

View File

@ -132,7 +132,7 @@ export const zhCN = {
total: '总计', total: '总计',
table: '表 | 表', table: '表 | 表',
view: '视图 | 视图', view: '视图 | 视图',
materializedview: '实体化视图 | 实体化视图', materializedView: '实体化视图 | 实体化视图',
definer: '定义者', definer: '定义者',
algorithm: '算法', algorithm: '算法',
trigger: '触发器 | 触发器', trigger: '触发器 | 触发器',