mirror of https://github.com/Fabio286/antares.git
refactor: changed material design icon pack
This commit is contained in:
parent
7651d05b37
commit
5473858323
28
README.md
28
README.md
|
@ -17,7 +17,7 @@ If you are curious to try this early state of Antares you can download and insta
|
||||||
|
|
||||||
Why am I developing an SQL client when there are a lot of thom on the market?-->
|
Why am I developing an SQL client when there are a lot of thom on the market?-->
|
||||||
|
|
||||||
## Hot to contribute
|
## How to contribute
|
||||||
|
|
||||||
- [Translate Antares](https://github.com/EStarium/antares/wiki/Translate-Antares)
|
- [Translate Antares](https://github.com/EStarium/antares/wiki/Translate-Antares)
|
||||||
|
|
||||||
|
@ -25,19 +25,19 @@ Why am I developing an SQL client when there are a lot of thom on the market?-->
|
||||||
|
|
||||||
This is a roadmap with major features will come in near future.
|
This is a roadmap with major features will come in near future.
|
||||||
|
|
||||||
- [ ] Options to insert new database records.
|
- Options to insert new database records.
|
||||||
- [ ] Improvements of query editor area.
|
- Improvements of query editor area.
|
||||||
- [ ] Multiple query tabs.
|
- Multiple query tabs.
|
||||||
- [ ] Tables management (add/edit/delete).
|
- Tables management (add/edit/delete).
|
||||||
- [ ] Stored procedures, schedulers and trigger support.
|
- Stored procedures, views, schedulers and trigger support.
|
||||||
- [ ] Database tools.
|
- Database tools.
|
||||||
- [ ] Context menu shortcuts.
|
- Context menu shortcuts.
|
||||||
- [ ] Keyboard shortcuts.
|
- Keyboard shortcuts.
|
||||||
- [ ] More secure password storage.
|
- More secure password storage.
|
||||||
- [ ] Query logs console.
|
- Query logs console.
|
||||||
- [ ] Fake data filler.
|
- Fake data filler.
|
||||||
- [ ] Import/export and migration.
|
- Import/export and migration.
|
||||||
- [ ] Themes.
|
- Themes.
|
||||||
|
|
||||||
## Currently supported
|
## Currently supported
|
||||||
|
|
||||||
|
|
|
@ -48,11 +48,11 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
"@mdi/font": "^5.5.55",
|
||||||
"codemirror": "^5.56.0",
|
"codemirror": "^5.56.0",
|
||||||
"electron-log": "^4.2.2",
|
"electron-log": "^4.2.2",
|
||||||
"electron-updater": "^4.3.4",
|
"electron-updater": "^4.3.4",
|
||||||
"lodash": "^4.17.19",
|
"lodash": "^4.17.19",
|
||||||
"material-design-icons": "^3.0.1",
|
|
||||||
"moment": "^2.27.0",
|
"moment": "^2.27.0",
|
||||||
"mssql": "^6.2.1",
|
"mssql": "^6.2.1",
|
||||||
"mysql": "^2.18.1",
|
"mysql": "^2.18.1",
|
||||||
|
|
|
@ -27,7 +27,11 @@ export default class {
|
||||||
name: field.COLUMN_NAME,
|
name: field.COLUMN_NAME,
|
||||||
key: field.COLUMN_KEY.toLowerCase(),
|
key: field.COLUMN_KEY.toLowerCase(),
|
||||||
type: field.DATA_TYPE,
|
type: field.DATA_TYPE,
|
||||||
precision: field.DATETIME_PRECISION
|
numPrecision: field.NUMERIC_PRECISION,
|
||||||
|
datePrecision: field.DATETIME_PRECISION,
|
||||||
|
charLength: field.CHARACTER_MAXIMUM_LENGTH,
|
||||||
|
isNullable: field.IS_NULLABLE,
|
||||||
|
default: field.COLUMN_DEFAULT
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,14 +1,15 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="toast mt-2" :class="notificationStatus.className">
|
<div class="toast mt-2" :class="notificationStatus.className">
|
||||||
<span class="p-vcentered text-left" :class="{'expanded': isExpanded}">
|
<span class="p-vcentered text-left" :class="{'expanded': isExpanded}">
|
||||||
<i class="material-icons mr-1">{{ notificationStatus.iconName }}</i>
|
<i class="mdi mdi-24px mr-2" :class="notificationStatus.iconName" />
|
||||||
<span class="notification-message">{{ message }}</span>
|
<span class="notification-message">{{ message }}</span>
|
||||||
</span>
|
</span>
|
||||||
<i
|
<i
|
||||||
v-if="isExpandable"
|
v-if="isExpandable"
|
||||||
class="material-icons c-hand"
|
class="mdi mdi-24px c-hand expand-btn"
|
||||||
|
:class="isExpanded ? 'mdi-chevron-up' : 'mdi-chevron-down'"
|
||||||
@click="toggleExpand"
|
@click="toggleExpand"
|
||||||
>{{ isExpanded ? 'expand_less' : 'expand_more' }}</i>
|
/>
|
||||||
<button class="btn btn-clear ml-2" @click="hideToast" />
|
<button class="btn btn-clear ml-2" @click="hideToast" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
@ -38,19 +39,19 @@ export default {
|
||||||
switch (this.status) {
|
switch (this.status) {
|
||||||
case 'success':
|
case 'success':
|
||||||
className = 'toast-success';
|
className = 'toast-success';
|
||||||
iconName = 'done';
|
iconName = 'mdi-check';
|
||||||
break;
|
break;
|
||||||
case 'error':
|
case 'error':
|
||||||
className = 'toast-error';
|
className = 'toast-error';
|
||||||
iconName = 'error';
|
iconName = 'mdi-alert-rhombus';
|
||||||
break;
|
break;
|
||||||
case 'warning':
|
case 'warning':
|
||||||
className = 'toast-warning';
|
className = 'toast-warning';
|
||||||
iconName = 'warning';
|
iconName = 'mdi-alert';
|
||||||
break;
|
break;
|
||||||
case 'primary':
|
case 'primary':
|
||||||
className = 'toast-primary';
|
className = 'toast-primary';
|
||||||
iconName = 'info_outline';
|
iconName = 'mdi-information-outline';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -88,6 +89,10 @@ export default {
|
||||||
max-width: 30rem;
|
max-width: 30rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.expand-btn {
|
||||||
|
align-items: initial;
|
||||||
|
}
|
||||||
|
|
||||||
.expanded .notification-message {
|
.expanded .notification-message {
|
||||||
white-space: initial;
|
white-space: initial;
|
||||||
}
|
}
|
||||||
|
|
|
@ -34,19 +34,19 @@ export default {
|
||||||
switch (this.status) {
|
switch (this.status) {
|
||||||
case 'success':
|
case 'success':
|
||||||
className = 'toast-success';
|
className = 'toast-success';
|
||||||
iconTag = '<i class="material-icons mr-1">done</i>';
|
iconTag = '<i class="mdi mdi-24px mdi-check mr-1"></i>';
|
||||||
break;
|
break;
|
||||||
case 'error':
|
case 'error':
|
||||||
className = 'toast-error';
|
className = 'toast-error';
|
||||||
iconTag = '<i class="material-icons mr-1">error</i>';
|
iconTag = '<i class="mdi mdi-24px mdi-alert-rhombus mr-1"></i>';
|
||||||
break;
|
break;
|
||||||
case 'warning':
|
case 'warning':
|
||||||
className = 'toast-warning';
|
className = 'toast-warning';
|
||||||
iconTag = '<i class="material-icons mr-1">warning</i>';
|
iconTag = '<i class="mdi mdi-24px mdi-alert mr-1"></i>';
|
||||||
break;
|
break;
|
||||||
case 'primary':
|
case 'primary':
|
||||||
className = 'toast-primary';
|
className = 'toast-primary';
|
||||||
iconTag = '<i class="material-icons mr-1">info_outline</i>';
|
iconTag = '<i class="mdi mdi-24px mdi-information-outline mr-1"></i>';
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -49,7 +49,7 @@
|
||||||
<div class="form-group mb-4">
|
<div class="form-group mb-4">
|
||||||
<div class="col-6 col-sm-12">
|
<div class="col-6 col-sm-12">
|
||||||
<label class="form-label">
|
<label class="form-label">
|
||||||
<i class="material-icons md-18 mr-1">translate</i>
|
<i class="mdi mdi-18px mdi-translate mr-1" />
|
||||||
{{ $t('word.language') }}:
|
{{ $t('word.language') }}:
|
||||||
</label>
|
</label>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
<template>
|
<template>
|
||||||
<div class="empty">
|
<div class="empty">
|
||||||
<div class="empty-icon">
|
<div class="empty-icon">
|
||||||
<i class="material-icons md-48">system_update_alt</i>
|
<i class="mdi mdi-48px mdi-cloud-download" />
|
||||||
</div>
|
</div>
|
||||||
<p class="empty-title h5">
|
<p class="empty-title h5">
|
||||||
{{ updateMessage }}
|
{{ updateMessage }}
|
||||||
|
|
|
@ -4,10 +4,10 @@
|
||||||
@closeContext="$emit('closeContext')"
|
@closeContext="$emit('closeContext')"
|
||||||
>
|
>
|
||||||
<div class="context-element" @click="showEditModal(contextConnection)">
|
<div class="context-element" @click="showEditModal(contextConnection)">
|
||||||
<i class="material-icons md-18 text-light pr-1">edit</i> {{ $t('word.edit') }}
|
<i class="mdi mdi-18px mdi-pencil text-light pr-1" /> {{ $t('word.edit') }}
|
||||||
</div>
|
</div>
|
||||||
<div class="context-element" @click="showConfirmModal">
|
<div class="context-element" @click="showConfirmModal">
|
||||||
<i class="material-icons md-18 text-light pr-1">delete</i> {{ $t('word.delete') }}
|
<i class="mdi mdi-18px mdi-delete text-light pr-1" /> {{ $t('word.delete') }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ConfirmModal
|
<ConfirmModal
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div class="column col-12 empty text-light">
|
<div class="column col-12 empty text-light">
|
||||||
<div class="empty-icon">
|
<div class="empty-icon">
|
||||||
<i class="material-icons md-48">mood</i>
|
<i class="mdi mdi-48px mdi-emoticon" />
|
||||||
</div>
|
</div>
|
||||||
<p class="empty-title h5">
|
<p class="empty-title h5">
|
||||||
{{ $t('message.appWelcome') }}
|
{{ $t('message.appWelcome') }}
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
<div class="footer-left-elements">
|
<div class="footer-left-elements">
|
||||||
<ul class="footer-elements">
|
<ul class="footer-elements">
|
||||||
<li class="footer-element">
|
<li class="footer-element">
|
||||||
<i class="material-icons md-18 mr-1">memory</i>
|
<i class="mdi mdi-18px mdi-memory mr-1" />
|
||||||
<small>{{ appVersion }}</small>
|
<small>{{ appVersion }}</small>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -12,14 +12,14 @@
|
||||||
<div class="footer-right-elements">
|
<div class="footer-right-elements">
|
||||||
<ul class="footer-elements">
|
<ul class="footer-elements">
|
||||||
<li class="footer-element footer-link" @click="openOutside('https://www.patreon.com/fabio286')">
|
<li class="footer-element footer-link" @click="openOutside('https://www.patreon.com/fabio286')">
|
||||||
<i class="material-icons md-18 mr-1">favorite</i>
|
<i class="mdi mdi-18px mdi-coffee mr-1" />
|
||||||
<small>{{ $t('word.donate') }}</small>
|
<small>{{ $t('word.donate') }}</small>
|
||||||
</li>
|
</li>
|
||||||
<li class="footer-element footer-link" @click="openOutside('https://github.com/EStarium/antares/issues')">
|
<li class="footer-element footer-link" @click="openOutside('https://github.com/EStarium/antares/issues')">
|
||||||
<i class="material-icons md-18">bug_report</i>
|
<i class="mdi mdi-18px mdi-bug" />
|
||||||
</li>
|
</li>
|
||||||
<li class="footer-element footer-link" @click="showSettingModal('about')">
|
<li class="footer-element footer-link" @click="showSettingModal('about')">
|
||||||
<i class="material-icons md-18">info_outline</i>
|
<i class="mdi mdi-18px mdi-information-outline" />
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -28,7 +28,7 @@
|
||||||
@click="showNewConnModal"
|
@click="showNewConnModal"
|
||||||
@mouseover.self="tooltipPosition"
|
@mouseover.self="tooltipPosition"
|
||||||
>
|
>
|
||||||
<i class="settingbar-element-icon material-icons text-light">add</i>
|
<i class="settingbar-element-icon mdi mdi-24px mdi-plus text-light" />
|
||||||
<span class="ex-tooltip-content">{{ $t('message.addConnection') }}</span>
|
<span class="ex-tooltip-content">{{ $t('message.addConnection') }}</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -37,7 +37,7 @@
|
||||||
<div class="settingbar-bottom-elements">
|
<div class="settingbar-bottom-elements">
|
||||||
<ul class="settingbar-elements">
|
<ul class="settingbar-elements">
|
||||||
<li class="settingbar-element btn btn-link ex-tooltip" @click="showSettingModal('general')">
|
<li class="settingbar-element btn btn-link ex-tooltip" @click="showSettingModal('general')">
|
||||||
<i class="settingbar-element-icon material-icons text-light">settings</i>
|
<i class="settingbar-element-icon mdi mdi-24px mdi-cog text-light" />
|
||||||
<span class="ex-tooltip-content">{{ $t('word.settings') }}</span>
|
<span class="ex-tooltip-content">{{ $t('word.settings') }}</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
|
@ -13,24 +13,24 @@
|
||||||
class="titlebar-element"
|
class="titlebar-element"
|
||||||
@click="openDevTools"
|
@click="openDevTools"
|
||||||
>
|
>
|
||||||
<i class="material-icons">code</i>
|
<i class="mdi mdi-24px mdi-code-tags" />
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div
|
||||||
v-if="isDevelopment"
|
v-if="isDevelopment"
|
||||||
class="titlebar-element"
|
class="titlebar-element"
|
||||||
@click="reload"
|
@click="reload"
|
||||||
>
|
>
|
||||||
<i class="material-icons">refresh</i>
|
<i class="mdi mdi-24px mdi-refresh" />
|
||||||
</div>
|
</div>
|
||||||
<div class="titlebar-element" @click="minimizeApp">
|
<div class="titlebar-element" @click="minimizeApp">
|
||||||
<i class="material-icons">remove</i>
|
<i class="mdi mdi-24px mdi-minus" />
|
||||||
</div>
|
</div>
|
||||||
<div class="titlebar-element" @click="toggleFullScreen">
|
<div class="titlebar-element" @click="toggleFullScreen">
|
||||||
<i v-if="isMaximized" class="material-icons">fullscreen_exit</i>
|
<i v-if="isMaximized" class="mdi mdi-24px mdi-fullscreen-exit" />
|
||||||
<i v-else class="material-icons">fullscreen</i>
|
<i v-else class="mdi mdi-24px mdi-fullscreen" />
|
||||||
</div>
|
</div>
|
||||||
<div class="titlebar-element close-button" @click="closeApp">
|
<div class="titlebar-element close-button" @click="closeApp">
|
||||||
<i class="material-icons">close</i>
|
<i class="mdi mdi-24px mdi-close" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
class="tab-item"
|
class="tab-item"
|
||||||
>
|
>
|
||||||
<a class="tab-link">
|
<a class="tab-link">
|
||||||
<i class="material-icons md-18 mr-1">tune</i>
|
<i class="mdi mdi-18px mdi-tune mr-1" />
|
||||||
<span :title="workspace.breadcrumbs.table">{{ $t('word.properties').toUpperCase() }}: {{ workspace.breadcrumbs.table }}</span>
|
<span :title="workspace.breadcrumbs.table">{{ $t('word.properties').toUpperCase() }}: {{ workspace.breadcrumbs.table }}</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
@ -19,7 +19,7 @@
|
||||||
@click="selectTab({uid: workspace.uid, tab: 1})"
|
@click="selectTab({uid: workspace.uid, tab: 1})"
|
||||||
>
|
>
|
||||||
<a class="tab-link">
|
<a class="tab-link">
|
||||||
<i class="material-icons md-18 mr-1">grid_on</i>
|
<i class="mdi mdi-18px mdi-table mr-1" />
|
||||||
<span :title="workspace.breadcrumbs.table">{{ $t('word.data').toUpperCase() }}: {{ workspace.breadcrumbs.table }}</span>
|
<span :title="workspace.breadcrumbs.table">{{ $t('word.data').toUpperCase() }}: {{ workspace.breadcrumbs.table }}</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<div class="columns">
|
<div class="columns">
|
||||||
<div class="column col-12 empty text-light">
|
<div class="column col-12 empty text-light">
|
||||||
<div class="empty-icon">
|
<div class="empty-icon">
|
||||||
<i class="material-icons md-48">cloud_off</i>
|
<i class="mdi mdi-48px mdi-power-plug-off" />
|
||||||
</div>
|
</div>
|
||||||
<p class="empty-title h5">
|
<p class="empty-title h5">
|
||||||
{{ $t('word.disconnected') }}
|
{{ $t('word.disconnected') }}
|
||||||
|
|
|
@ -10,16 +10,16 @@
|
||||||
<span class="workspace-explorebar-title">{{ connectionName }}</span>
|
<span class="workspace-explorebar-title">{{ connectionName }}</span>
|
||||||
<span v-if="workspace.connected" class="workspace-explorebar-tools">
|
<span v-if="workspace.connected" class="workspace-explorebar-tools">
|
||||||
<i
|
<i
|
||||||
class="material-icons md-18 c-hand"
|
class="mdi mdi-18px mdi-refresh c-hand"
|
||||||
:class="{'rotate':isRefreshing}"
|
:class="{'rotate':isRefreshing}"
|
||||||
:title="$t('word.refresh')"
|
:title="$t('word.refresh')"
|
||||||
@click="refresh"
|
@click="refresh"
|
||||||
>refresh</i>
|
/>
|
||||||
<i
|
<i
|
||||||
class="material-icons md-18 c-hand mr-1 ml-2"
|
class="mdi mdi-18px mdi-power-plug-off c-hand mr-1 ml-2"
|
||||||
:title="$t('word.disconnect')"
|
:title="$t('word.disconnect')"
|
||||||
@click="disconnectWorkspace(connection.uid)"
|
@click="disconnectWorkspace(connection.uid)"
|
||||||
>exit_to_app</i>
|
/>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
<WorkspaceConnectPanel
|
<WorkspaceConnectPanel
|
||||||
|
|
|
@ -5,8 +5,8 @@
|
||||||
:class="{'text-bold': breadcrumbs.schema === database.name}"
|
:class="{'text-bold': breadcrumbs.schema === database.name}"
|
||||||
@click="changeBreadcrumbs({schema: database.name, table:null})"
|
@click="changeBreadcrumbs({schema: database.name, table:null})"
|
||||||
>
|
>
|
||||||
<i class="icon material-icons md-18 mr-1">navigate_next</i>
|
<i class="icon mdi mdi-18px mdi-chevron-right" />
|
||||||
<i class="material-icons md-18 mr-1">view_agenda</i>
|
<i class="mdi mdi-18px mdi-database mr-1" />
|
||||||
<span>{{ database.name }}</span>
|
<span>{{ database.name }}</span>
|
||||||
</summary>
|
</summary>
|
||||||
<div class="accordion-body">
|
<div class="accordion-body">
|
||||||
|
@ -20,7 +20,7 @@
|
||||||
@click="changeBreadcrumbs({schema: database.name, table: table.TABLE_NAME})"
|
@click="changeBreadcrumbs({schema: database.name, table: table.TABLE_NAME})"
|
||||||
>
|
>
|
||||||
<a class="table-name">
|
<a class="table-name">
|
||||||
<i class="material-icons md-18 mr-1">grid_on</i>
|
<i class="mdi mdi-18px mdi-table mr-1" />
|
||||||
<span>{{ table.TABLE_NAME }}</span>
|
<span>{{ table.TABLE_NAME }}</span>
|
||||||
</a>
|
</a>
|
||||||
</li>
|
</li>
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
@click="runQuery(query)"
|
@click="runQuery(query)"
|
||||||
>
|
>
|
||||||
<span>{{ $t('word.run') }}</span>
|
<span>{{ $t('word.run') }}</span>
|
||||||
<i class="material-icons text-success">play_arrow</i>
|
<i class="mdi mdi-24px mdi-play text-success" />
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="workspace-query-info">
|
<div class="workspace-query-info">
|
||||||
|
|
|
@ -23,12 +23,16 @@
|
||||||
<div class="table-column-title" @click="sort(field.name)">
|
<div class="table-column-title" @click="sort(field.name)">
|
||||||
<i
|
<i
|
||||||
v-if="field.key"
|
v-if="field.key"
|
||||||
class="material-icons column-key c-help"
|
class="mdi mdi-key column-key c-help"
|
||||||
:class="`key-${field.key}`"
|
:class="`key-${field.key}`"
|
||||||
:title="keyName(field.key)"
|
:title="keyName(field.key)"
|
||||||
>vpn_key</i>
|
/>
|
||||||
<span>{{ field.name }}</span>
|
<span>{{ field.name }}</span>
|
||||||
<i v-if="currentSort === field.name" class="material-icons sort-icon">{{ currentSortDir === 'asc' ? 'arrow_upward':'arrow_downward' }}</i>
|
<i
|
||||||
|
v-if="currentSort === field.name"
|
||||||
|
class="mdi sort-icon"
|
||||||
|
:class="currentSortDir === 'asc' ? 'mdi-sort-ascending':'mdi-sort-descending'"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -148,7 +152,7 @@ export default {
|
||||||
let length = 0;
|
let length = 0;
|
||||||
const field = this.fields.filter(field => field.name === cKey)[0];
|
const field = this.fields.filter(field => field.name === cKey)[0];
|
||||||
if (field)
|
if (field)
|
||||||
length = field.precision;
|
length = field.datePrecision;
|
||||||
|
|
||||||
return length;
|
return length;
|
||||||
},
|
},
|
||||||
|
@ -291,23 +295,4 @@ export default {
|
||||||
line-height: 1;
|
line-height: 1;
|
||||||
margin-left: 0.2rem;
|
margin-left: 0.2rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
.column-key {
|
|
||||||
transform: rotate(90deg);
|
|
||||||
font-size: 0.7rem;
|
|
||||||
line-height: 1.5;
|
|
||||||
margin-right: 0.2rem;
|
|
||||||
|
|
||||||
&.key-pri {
|
|
||||||
color: goldenrod;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.key-uni {
|
|
||||||
color: deepskyblue;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.key-mul {
|
|
||||||
color: palegreen;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
</style>
|
</style>
|
||||||
|
|
|
@ -4,7 +4,7 @@
|
||||||
@closeContext="closeContext"
|
@closeContext="closeContext"
|
||||||
>
|
>
|
||||||
<div class="context-element" @click="showConfirmModal">
|
<div class="context-element" @click="showConfirmModal">
|
||||||
<i class="material-icons md-18 text-light pr-1">delete</i> {{ $tc('message.deleteRows', selectedRows.length) }}
|
<i class="mdi mdi-18px mdi-delete text-light pr-1" /> {{ $tc('message.deleteRows', selectedRows.length) }}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ConfirmModal
|
<ConfirmModal
|
||||||
|
|
|
@ -83,16 +83,16 @@
|
||||||
class="img-responsive p-centered bg-checkered"
|
class="img-responsive p-centered bg-checkered"
|
||||||
>
|
>
|
||||||
<div v-else class="text-center">
|
<div v-else class="text-center">
|
||||||
<i class="material-icons md-36">insert_drive_file</i>
|
<i class="mdi mdi-36px mdi-file" />
|
||||||
</div>
|
</div>
|
||||||
<div class="editor-buttons mt-2">
|
<div class="editor-buttons mt-2">
|
||||||
<button class="btn btn-link btn-sm" @click="downloadFile">
|
<button class="btn btn-link btn-sm" @click="downloadFile">
|
||||||
<span>{{ $t('word.download') }}</span>
|
<span>{{ $t('word.download') }}</span>
|
||||||
<i class="material-icons ml-1">file_download</i>
|
<i class="mdi mdi-24px mdi-download ml-1" />
|
||||||
</button>
|
</button>
|
||||||
<button class="btn btn-link btn-sm" @click="prepareToDelete">
|
<button class="btn btn-link btn-sm" @click="prepareToDelete">
|
||||||
<span>{{ $t('word.delete') }}</span>
|
<span>{{ $t('word.delete') }}</span>
|
||||||
<i class="material-icons ml-1">delete_forever</i>
|
<i class="mdi mdi-24px mdi-delete-forever ml-1" />
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -255,7 +255,7 @@ export default {
|
||||||
let length = 0;
|
let length = 0;
|
||||||
const field = this.fields.filter(field => field.name === cKey)[0];
|
const field = this.fields.filter(field => field.name === cKey)[0];
|
||||||
if (field)
|
if (field)
|
||||||
length = field.precision;
|
length = field.datePrecision;
|
||||||
|
|
||||||
return length;
|
return length;
|
||||||
},
|
},
|
||||||
|
@ -346,7 +346,7 @@ export default {
|
||||||
const downloadLink = document.createElement('a');
|
const downloadLink = document.createElement('a');
|
||||||
|
|
||||||
downloadLink.href = `data:${this.contentInfo.mime};base64, ${bufferToBase64(this.editingContent)}`;
|
downloadLink.href = `data:${this.contentInfo.mime};base64, ${bufferToBase64(this.editingContent)}`;
|
||||||
downloadLink.setAttribute('download', `${this.field}.${this.contentInfo.ext}`);
|
downloadLink.setAttribute('download', `${this.editingField}.${this.contentInfo.ext}`);
|
||||||
document.body.appendChild(downloadLink);
|
document.body.appendChild(downloadLink);
|
||||||
|
|
||||||
downloadLink.click();
|
downloadLink.click();
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
@click="reloadTable"
|
@click="reloadTable"
|
||||||
>
|
>
|
||||||
<span>{{ $t('word.refresh') }}</span>
|
<span>{{ $t('word.refresh') }}</span>
|
||||||
<i class="material-icons ml-1">refresh</i>
|
<i class="mdi mdi-24px mdi-refresh ml-1" />
|
||||||
</button>
|
</button>
|
||||||
<button
|
<button
|
||||||
class="btn btn-link btn-sm"
|
class="btn btn-link btn-sm"
|
||||||
|
@ -17,7 +17,7 @@
|
||||||
@click="showAddModal"
|
@click="showAddModal"
|
||||||
>
|
>
|
||||||
<span>{{ $t('word.add') }}</span>
|
<span>{{ $t('word.add') }}</span>
|
||||||
<i class="material-icons ml-1">playlist_add</i>
|
<i class="mdi mdi-24px mdi-playlist-plus ml-1" />
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="workspace-query-info">
|
<div class="workspace-query-info">
|
||||||
|
@ -64,7 +64,8 @@ export default {
|
||||||
isQuering: false,
|
isQuering: false,
|
||||||
results: {},
|
results: {},
|
||||||
fields: [],
|
fields: [],
|
||||||
lastTable: null
|
lastTable: null,
|
||||||
|
isAddModal: false
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
|
@ -138,7 +139,12 @@ export default {
|
||||||
reloadTable () {
|
reloadTable () {
|
||||||
this.getTableData();
|
this.getTableData();
|
||||||
},
|
},
|
||||||
showAddModal () {}
|
showAddModal () {
|
||||||
|
this.isAddModal = true;
|
||||||
|
},
|
||||||
|
hideAddModal () {
|
||||||
|
this.isAddModal = false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
|
|
||||||
import 'material-design-icons/iconfont/material-icons.css';
|
import '@mdi/font/css/materialdesignicons.css';
|
||||||
import '@/scss/main.scss';
|
import '@/scss/main.scss';
|
||||||
|
|
||||||
import App from '@/App.vue';
|
import App from '@/App.vue';
|
||||||
|
|
|
@ -1,38 +1,9 @@
|
||||||
.material-icons {
|
.mdi {
|
||||||
// TODO: rewrite with rem
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
/* Rules for sizing the icon. */
|
&::before {
|
||||||
&.md-18 {
|
line-height: 1;
|
||||||
font-size: 18px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-24 {
|
|
||||||
font-size: 24px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-36 {
|
|
||||||
font-size: 36px;
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-48 {
|
|
||||||
font-size: 48px;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Rules for using icons as black on a light background. */
|
|
||||||
&.md-dark {
|
|
||||||
color: rgba(0, 0, 0, 0.54);
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-dark.md-inactive {
|
|
||||||
color: rgba(0, 0, 0, 0.26);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Rules for using icons as white on a dark background. */
|
|
||||||
&.md-light {
|
|
||||||
color: rgba(255, 255, 255, 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
&.md-light.md-inactive {
|
|
||||||
color: rgba(255, 255, 255, 0.3);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,18 @@
|
||||||
|
.column-key {
|
||||||
|
transform: rotate(90deg);
|
||||||
|
font-size: 0.7rem;
|
||||||
|
line-height: 1.5;
|
||||||
|
margin-right: 0.2rem;
|
||||||
|
|
||||||
|
&.key-pri {
|
||||||
|
color: goldenrod;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.key-uni {
|
||||||
|
color: deepskyblue;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.key-mul {
|
||||||
|
color: palegreen;
|
||||||
|
}
|
||||||
|
}
|
|
@ -2,6 +2,7 @@
|
||||||
@import "variables";
|
@import "variables";
|
||||||
@import "transitions";
|
@import "transitions";
|
||||||
@import "data-types";
|
@import "data-types";
|
||||||
|
@import "table-keys";
|
||||||
@import "fake-tables";
|
@import "fake-tables";
|
||||||
@import "mdi-additions";
|
@import "mdi-additions";
|
||||||
@import "db-icons";
|
@import "db-icons";
|
||||||
|
@ -133,6 +134,10 @@ body {
|
||||||
background: $bg-color-gray;
|
background: $bg-color-gray;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.form-input:not(:placeholder-shown):invalid:focus {
|
||||||
|
background: $bg-color-gray;
|
||||||
|
}
|
||||||
|
|
||||||
.form-select:not([multiple]):not([size]):focus {
|
.form-select:not([multiple]):not([size]):focus {
|
||||||
border-color: $primary-color;
|
border-color: $primary-color;
|
||||||
}
|
}
|
||||||
|
@ -156,7 +161,7 @@ body {
|
||||||
}
|
}
|
||||||
|
|
||||||
.btn.loading {
|
.btn.loading {
|
||||||
> .material-icons,
|
> .mdi,
|
||||||
> span {
|
> span {
|
||||||
visibility: hidden;
|
visibility: hidden;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue