diff --git a/package-lock.json b/package-lock.json
index 87cc6350..f57908a7 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -13,7 +13,6 @@
"@electron/remote": "~2.0.1",
"@faker-js/faker": "~6.1.2",
"@jamescoyle/vue-icon": "~0.1.2",
- "@mdi/font": "~7.2.96",
"@mdi/js": "~7.2.96",
"@turf/helpers": "~6.5.0",
"@vueuse/core": "~10.4.1",
@@ -2107,11 +2106,6 @@
"node": ">= 10"
}
},
- "node_modules/@mdi/font": {
- "version": "7.2.96",
- "resolved": "https://registry.npmjs.org/@mdi/font/-/font-7.2.96.tgz",
- "integrity": "sha512-e//lmkmpFUMZKhmCY9zdjRe4zNXfbOIJnn6xveHbaV2kSw5aJ5dLXUxcRt1Gxfi7ZYpFLUWlkG2MGSFAiqAu7w=="
- },
"node_modules/@mdi/js": {
"version": "7.2.96",
"resolved": "https://registry.npmjs.org/@mdi/js/-/js-7.2.96.tgz",
diff --git a/package.json b/package.json
index c877daae..7cf0a2dc 100644
--- a/package.json
+++ b/package.json
@@ -121,7 +121,6 @@
"@electron/remote": "~2.0.1",
"@faker-js/faker": "~6.1.2",
"@jamescoyle/vue-icon": "~0.1.2",
- "@mdi/font": "~7.2.96",
"@mdi/js": "~7.2.96",
"@turf/helpers": "~6.5.0",
"@vueuse/core": "~10.4.1",
diff --git a/src/renderer/components/BaseTextEditor.vue b/src/renderer/components/BaseTextEditor.vue
index e2e07170..45366d56 100644
--- a/src/renderer/components/BaseTextEditor.vue
+++ b/src/renderer/components/BaseTextEditor.vue
@@ -136,9 +136,4 @@ onMounted(() => {
width: 100%;
}
}
-
-.ace_.mdi {
- display: inline-block;
- width: 17px;
-}
diff --git a/src/renderer/components/QueryEditor.vue b/src/renderer/components/QueryEditor.vue
index 61c1597e..70b2d2bd 100644
--- a/src/renderer/components/QueryEditor.vue
+++ b/src/renderer/components/QueryEditor.vue
@@ -403,11 +403,6 @@ defineExpose({ editor });
}
}
-.ace_.mdi {
- display: inline-block;
- width: 17px;
-}
-
.ace_gutter-cell.ace_breakpoint {
&::before {
content: '\F0403';
diff --git a/src/renderer/images/svg/alphabetical-variant.svg b/src/renderer/images/svg/alphabetical-variant.svg
new file mode 100644
index 00000000..63073616
--- /dev/null
+++ b/src/renderer/images/svg/alphabetical-variant.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/arrow-right-bold-box.svg b/src/renderer/images/svg/arrow-right-bold-box.svg
new file mode 100644
index 00000000..e1935c10
--- /dev/null
+++ b/src/renderer/images/svg/arrow-right-bold-box.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/calendar-clock.svg b/src/renderer/images/svg/calendar-clock.svg
new file mode 100644
index 00000000..7135eef4
--- /dev/null
+++ b/src/renderer/images/svg/calendar-clock.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/circle.svg b/src/renderer/images/svg/circle.svg
new file mode 100644
index 00000000..9802fd52
--- /dev/null
+++ b/src/renderer/images/svg/circle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/code-braces.svg b/src/renderer/images/svg/code-braces.svg
new file mode 100644
index 00000000..dd8f3b2c
--- /dev/null
+++ b/src/renderer/images/svg/code-braces.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/cube.svg b/src/renderer/images/svg/cube.svg
new file mode 100644
index 00000000..e9c84827
--- /dev/null
+++ b/src/renderer/images/svg/cube.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/rhombus-split-outline.svg b/src/renderer/images/svg/rhombus-split-outline.svg
new file mode 100644
index 00000000..5fd1f6e1
--- /dev/null
+++ b/src/renderer/images/svg/rhombus-split-outline.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/sync-circle.svg b/src/renderer/images/svg/sync-circle.svg
new file mode 100644
index 00000000..268c3a5b
--- /dev/null
+++ b/src/renderer/images/svg/sync-circle.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/table-cog.svg b/src/renderer/images/svg/table-cog.svg
new file mode 100644
index 00000000..6abeada1
--- /dev/null
+++ b/src/renderer/images/svg/table-cog.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/table-eye.svg b/src/renderer/images/svg/table-eye.svg
new file mode 100644
index 00000000..70b6f528
--- /dev/null
+++ b/src/renderer/images/svg/table-eye.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/images/svg/table.svg b/src/renderer/images/svg/table.svg
new file mode 100644
index 00000000..f2adcf3b
--- /dev/null
+++ b/src/renderer/images/svg/table.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/src/renderer/index.ts b/src/renderer/index.ts
index afb527a3..680763f3 100644
--- a/src/renderer/index.ts
+++ b/src/renderer/index.ts
@@ -1,5 +1,4 @@
'use strict';
-import '@mdi/font/css/materialdesignicons.css';
import 'floating-vue/dist/style.css';
import 'leaflet/dist/leaflet.css';
import '@/scss/main.scss';
diff --git a/src/renderer/libs/ext-language_tools.js b/src/renderer/libs/ext-language_tools.js
index df9375e6..f114386b 100644
--- a/src/renderer/libs/ext-language_tools.js
+++ b/src/renderer/libs/ext-language_tools.js
@@ -1227,42 +1227,42 @@ ace.define('ace/autocomplete/popup', ['require', 'exports', 'module', 'ace/virtu
switch (meta) {
case 'table':
- iconClass = 'mdi-table';
+ iconClass = 'editor-icon-table';
break;
case 'column':
- iconClass = 'mdi-rhombus-split-outline';
+ iconClass = 'editor-icon-rhombus-split-outline';
break;
case 'view':
- iconClass = 'mdi-table-eye';
+ iconClass = 'editor-icon-table-eye';
break;
case 'trigger':
- iconClass = 'mdi-table-cog';
+ iconClass = 'editor-icon-table-cog';
break;
case 'routine':
- iconClass = 'mdi-sync-circle';
+ iconClass = 'editor-icon-sync-circle';
break;
case 'function':
- iconClass = 'mdi-arrow-right-bold-box';
+ iconClass = 'editor-icon-arrow-right-bold-box';
break;
case 'scheduler':
- iconClass = 'mdi-calendar-clock';
+ iconClass = 'editor-icon-calendar-clock';
break;
case 'keyword':
- iconClass = 'mdi-cube';
+ iconClass = 'editor-icon-cube';
break;
case 'snippet':
- iconClass = 'mdi-code-braces';
+ iconClass = 'editor-icon-code-braces';
break;
case 'local':
- iconClass = 'mdi-alphabetical-variant';
+ iconClass = 'editor-icon-alphabetical-variant';
break;
default:
- iconClass = 'mdi-circle';
+ iconClass = 'editor-icon-circle';
break;
}
iconClass && tokens.push({
- type: ` mdi ${iconClass}`,
+ type: ` editor-icon ${iconClass}`,
value: ' '
});
}
diff --git a/src/renderer/scss/_editor-icons.scss b/src/renderer/scss/_editor-icons.scss
new file mode 100644
index 00000000..ce434458
--- /dev/null
+++ b/src/renderer/scss/_editor-icons.scss
@@ -0,0 +1,67 @@
+/* stylelint-disable selector-class-pattern */
+
+/* Only used in ext-language_tools.js */
+.editor-icon {
+ display: inline-block;
+ width: 17px;
+ height: 17px;
+ background-size: cover;
+ position: relative;
+ top: 2px;
+ margin-right: 1px;
+ opacity: 0.7;
+
+ &.editor-icon-table {
+ background-image: url("../images/svg/table.svg");
+ }
+
+ &.editor-icon-rhombus-split-outline {
+ background-image: url("../images/svg/rhombus-split-outline.svg");
+ }
+
+ &.editor-icon-table-eye {
+ background-image: url("../images/svg/table-eye.svg");
+ }
+
+ &.editor-icon-table-cog {
+ background-image: url("../images/svg/table-cog.svg");
+ }
+
+ &.editor-icon-sync-circle {
+ background-image: url("../images/svg/sync-circle.svg");
+ }
+
+ &.editor-icon-arrow-right-bold-box {
+ background-image: url("../images/svg/arrow-right-bold-box.svg");
+ }
+
+ &.editor-icon-calendar-clock {
+ background-image: url("../images/svg/calendar-clock.svg");
+ }
+
+ &.editor-icon-cube {
+ background-image: url("../images/svg/cube.svg");
+ }
+
+ &.editor-icon-code-braces {
+ background-image: url("../images/svg/code-braces.svg");
+ }
+
+ &.editor-icon-alphabetical-variant {
+ background-image: url("../images/svg/alphabetical-variant.svg");
+ }
+
+ &.editor-icon-circle {
+ background-image: url("../images/svg/circle.svg");
+ }
+
+ &::before {
+ line-height: 1;
+ }
+}
+
+.ace_dark {
+ .editor-icon {
+ filter: invert(100%);
+ }
+}
diff --git a/src/renderer/scss/_mdi-additions.scss b/src/renderer/scss/_mdi-additions.scss
deleted file mode 100644
index 80c9ef17..00000000
--- a/src/renderer/scss/_mdi-additions.scss
+++ /dev/null
@@ -1,9 +0,0 @@
-.mdi {
- display: flex;
- align-items: center;
- justify-content: center;
-
- &::before {
- line-height: 1;
- }
-}
diff --git a/src/renderer/scss/main.scss b/src/renderer/scss/main.scss
index 87a269d5..70a6b877 100644
--- a/src/renderer/scss/main.scss
+++ b/src/renderer/scss/main.scss
@@ -5,7 +5,7 @@
@import "data-types";
@import "table-keys";
@import "fake-tables";
-@import "mdi-additions";
+@import "editor-icons";
@import "db-icons";
@import "themes/dark-theme";
@import "themes/light-theme";