diff --git a/package.json b/package.json index cc82e1bf..7d747ea9 100644 --- a/package.json +++ b/package.json @@ -43,6 +43,7 @@ "axios": "^0.26.1", "date-fns": "^2.28.0", "electron-store": "^8.0.1", + "floating-vue": "^2.0.0-beta.17", "fs-extra": "^10.0.1", "highlight.js": "^11.5.1", "html2canvas": "^1.4.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index db3343ee..4f2813bb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -44,6 +44,7 @@ specifiers: eslint-plugin-prettier: ^4.0.0 eslint-plugin-promise: ^6.0.0 eslint-plugin-vue: ^8.2.0 + floating-vue: ^2.0.0-beta.17 fs-extra: ^10.0.1 highlight.js: ^11.5.1 html2canvas: ^1.4.1 @@ -92,6 +93,7 @@ dependencies: axios: 0.26.1 date-fns: 2.28.0 electron-store: 8.0.1 + floating-vue: 2.0.0-beta.17_vue@3.2.33 fs-extra: 10.0.1 highlight.js: 11.5.1 html2canvas: 1.4.1 @@ -1704,6 +1706,16 @@ packages: - supports-color dev: true + /@floating-ui/core/0.3.1: + resolution: {integrity: sha512-ensKY7Ub59u16qsVIFEo2hwTCqZ/r9oZZFh51ivcLGHfUwTn8l1Xzng8RJUe91H/UP8PeqeBronAGx0qmzwk2g==} + dev: false + + /@floating-ui/dom/0.1.10: + resolution: {integrity: sha512-4kAVoogvQm2N0XE0G6APQJuCNuErjOfPW8Ux7DFxh8+AfugWflwVJ5LDlHOwrwut7z/30NUvdtHzQ3zSip4EzQ==} + dependencies: + '@floating-ui/core': 0.3.1 + dev: false + /@hapi/address/2.1.4: resolution: {integrity: sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==} deprecated: Moved to 'npm install @sideway/address' @@ -7064,6 +7076,16 @@ packages: resolution: {integrity: sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw==} dev: true + /floating-vue/2.0.0-beta.17_vue@3.2.33: + resolution: {integrity: sha512-zgHPIdlILFxMEq2kLpeUpE3SUSd/zHI4pNAO2QYtp2rATkiSOlcLJidTDjG3mcBKzN3ahoAF6t/FhA1VbMTkAg==} + peerDependencies: + vue: ^3.2.0 + dependencies: + '@floating-ui/dom': 0.1.10 + vue: 3.2.33 + vue-resize: 2.0.0-alpha.1_vue@3.2.33 + dev: false + /flow-parser/0.168.0: resolution: {integrity: sha512-YMlc+6vvyDPqWKOpzmyifJXBbwlNdqznuy8YBHxX1/90F8d+NnhsxMe1u/ok5LNvNJVJ2TVMkWudu0BUKOSawA==} engines: {node: '>=0.4.0'} @@ -12875,6 +12897,14 @@ packages: - supports-color dev: true + /vue-resize/2.0.0-alpha.1_vue@3.2.33: + resolution: {integrity: sha512-7+iqOueLU7uc9NrMfrzbG8hwMqchfVfSzpVlCMeJQe4pyibqyoifDNbKTZvwxZKDvGkB+PdFeKvnGZMoEb8esg==} + peerDependencies: + vue: ^3.0.0 + dependencies: + vue: 3.2.33 + dev: false + /vue-router/4.0.14_vue@3.2.33: resolution: {integrity: sha512-wAO6zF9zxA3u+7AkMPqw9LjoUCjSxfFvINQj3E/DceTt6uEz1XZLraDhdg2EYmvVwTBSGlLYsUw8bDmx0754Mw==} peerDependencies: diff --git a/src/main/services/i18n/locales/en/common.json b/src/main/services/i18n/locales/en/common.json index 0de458ca..1ec24573 100644 --- a/src/main/services/i18n/locales/en/common.json +++ b/src/main/services/i18n/locales/en/common.json @@ -50,5 +50,7 @@ "darkMode": "Dark Mode", "background": "Background", "restartApp": "Restart massCode", - "updateAvailable": "Update Available" + "updateAvailable": "Update Available", + "hide": "Hide", + "show": "Show" } \ No newline at end of file diff --git a/src/main/services/i18n/locales/en/menu.json b/src/main/services/i18n/locales/en/menu.json index e43c71bb..b7a6daa4 100644 --- a/src/main/services/i18n/locales/en/menu.json +++ b/src/main/services/i18n/locales/en/menu.json @@ -63,5 +63,6 @@ "format": "Format", "previewMarkdown": "Preview Markdown", "previewCode": "Preview Code", + "previewScreenshot": "Preview Screenshot" } } \ No newline at end of file diff --git a/src/main/services/i18n/locales/ru/common.json b/src/main/services/i18n/locales/ru/common.json index aaea5935..e12d1d80 100644 --- a/src/main/services/i18n/locales/ru/common.json +++ b/src/main/services/i18n/locales/ru/common.json @@ -49,5 +49,7 @@ "darkMode": "Темный режим", "background": "Фон", "restartApp": "Перезагрузить massCode", - "updateAvailable": "Доступно обновление" + "updateAvailable": "Доступно обновление", + "hide": "Hide", + "show": "Show" } \ No newline at end of file diff --git a/src/main/services/i18n/locales/ru/menu.json b/src/main/services/i18n/locales/ru/menu.json index 9c7a5296..e3464b31 100644 --- a/src/main/services/i18n/locales/ru/menu.json +++ b/src/main/services/i18n/locales/ru/menu.json @@ -62,6 +62,7 @@ "copy": "Скопировать сниппет в буфер", "format": "Форматировать", "previewMarkdown": "Просмотр Markdown", - "previewCode": "Просмотр результата HTML/CSS" + "previewCode": "Просмотр результата HTML/CSS", + "previewScreenshot": "Просмотр скриншота" } } \ No newline at end of file diff --git a/src/renderer/assets/scss/vendor.scss b/src/renderer/assets/scss/vendor.scss index 9acfd6a8..e619d6f7 100644 --- a/src/renderer/assets/scss/vendor.scss +++ b/src/renderer/assets/scss/vendor.scss @@ -64,11 +64,25 @@ .toast-container { .toast { - width: 400px; &-text { display: flex; align-items: center; } } -} \ No newline at end of file +} + +.v-popper { + &--theme-tooltip { + .v-popper { + &__inner { + font-size: 12px; + padding: 4px 8px !important; + border-radius: 3px !important; + } + &__arrow-container { + display: none; + } + } + } +} diff --git a/src/renderer/components/sidebar/TheSidebar.vue b/src/renderer/components/sidebar/TheSidebar.vue index cbb1b51b..f467fed2 100644 --- a/src/renderer/components/sidebar/TheSidebar.vue +++ b/src/renderer/components/sidebar/TheSidebar.vue @@ -43,7 +43,7 @@ type="folders" > diff --git a/src/renderer/components/snippets/SnippetHeader.vue b/src/renderer/components/snippets/SnippetHeader.vue index 07f65392..e191fcb1 100644 --- a/src/renderer/components/snippets/SnippetHeader.vue +++ b/src/renderer/components/snippets/SnippetHeader.vue @@ -12,23 +12,48 @@
- + - + - + - +
diff --git a/src/renderer/components/snippets/SnippetListHeader.vue b/src/renderer/components/snippets/SnippetListHeader.vue index 0ac9eb01..c0eca2cd 100644 --- a/src/renderer/components/snippets/SnippetListHeader.vue +++ b/src/renderer/components/snippets/SnippetListHeader.vue @@ -8,6 +8,7 @@ > diff --git a/src/renderer/main.ts b/src/renderer/main.ts index bfe66803..9d3aacf1 100644 --- a/src/renderer/main.ts +++ b/src/renderer/main.ts @@ -6,9 +6,12 @@ import PerfectScrollbar from 'vue3-perfect-scrollbar' import 'vue3-perfect-scrollbar/dist/vue3-perfect-scrollbar.css' import 'vercel-toast/dist/vercel-toast.css' import './assets/scss/main.scss' +import FloatingVue from 'floating-vue' +import 'floating-vue/dist/style.css' createApp(App) .use(createPinia()) .use(router) .use(PerfectScrollbar) + .use(FloatingVue) .mount('#app') diff --git a/src/renderer/views/Preferences.vue b/src/renderer/views/Preferences.vue index c335d28f..a286afe0 100644 --- a/src/renderer/views/Preferences.vue +++ b/src/renderer/views/Preferences.vue @@ -2,7 +2,10 @@

{{ i18n.t('preferences:title') }}

- +