From a14cac6d5c5967a47ca76a1d1a420115114c3bbf Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Sat, 16 Apr 2022 21:20:09 +0200 Subject: [PATCH 001/521] refactor: removed empty sources --- src/tools/bip39-generator/bip39-generator.vue | 3 --- src/tools/color-converter/color-converter.vue | 3 --- src/tools/date-time-converter/date-time-converter.vue | 3 --- src/tools/encryption/encryption.vue | 3 --- src/tools/hash-text/hash-text.vue | 3 --- src/tools/lorem-ipsum-generator/lorem-ipsum-generator.vue | 3 --- src/tools/qr-code-generator/qr-code-generator.vue | 3 --- src/tools/text-statistics/text-statistics.vue | 3 --- src/tools/token-generator/token-generator.tool.vue | 3 --- src/tools/url-encoder/url-encoder.vue | 3 --- src/tools/uuid-generator/uuid-generator.vue | 3 --- 11 files changed, 33 deletions(-) diff --git a/src/tools/bip39-generator/bip39-generator.vue b/src/tools/bip39-generator/bip39-generator.vue index f81ce8fa..d5f91188 100644 --- a/src/tools/bip39-generator/bip39-generator.vue +++ b/src/tools/bip39-generator/bip39-generator.vue @@ -164,6 +164,3 @@ const { copy: copyEntropy } = useCopy({ source: entropy, text: 'Entropy copied t const { copy: copyPassphrase } = useCopy({ source: passphrase, text: 'Passphrase copied to the clipboard' }) - - \ No newline at end of file diff --git a/src/tools/color-converter/color-converter.vue b/src/tools/color-converter/color-converter.vue index 1c29d735..8727ae7a 100644 --- a/src/tools/color-converter/color-converter.vue +++ b/src/tools/color-converter/color-converter.vue @@ -92,6 +92,3 @@ function onInputUpdated(value: string, omit: string) { onInputUpdated(hex.value, 'hex') - - \ No newline at end of file diff --git a/src/tools/date-time-converter/date-time-converter.vue b/src/tools/date-time-converter/date-time-converter.vue index 3f182db4..641ef62b 100644 --- a/src/tools/date-time-converter/date-time-converter.vue +++ b/src/tools/date-time-converter/date-time-converter.vue @@ -126,6 +126,3 @@ const formats = [ ] - - \ No newline at end of file diff --git a/src/tools/encryption/encryption.vue b/src/tools/encryption/encryption.vue index efe2be9a..7ad4e6a5 100644 --- a/src/tools/encryption/encryption.vue +++ b/src/tools/encryption/encryption.vue @@ -121,6 +121,3 @@ const decryptOutput = computed(() => algos[decryptAlgo.value].decrypt(decryptInp - - \ No newline at end of file diff --git a/src/tools/hash-text/hash-text.vue b/src/tools/hash-text/hash-text.vue index a71ae679..6ccac0e7 100644 --- a/src/tools/hash-text/hash-text.vue +++ b/src/tools/hash-text/hash-text.vue @@ -73,6 +73,3 @@ const hashedText = computed(() => algos[algo.value](clearText.value).toString()) const { copy } = useCopy({ source: hashedText, text: 'Hash copied to the clipboard' }) - - \ No newline at end of file diff --git a/src/tools/lorem-ipsum-generator/lorem-ipsum-generator.vue b/src/tools/lorem-ipsum-generator/lorem-ipsum-generator.vue index b9c62c16..c04f261c 100644 --- a/src/tools/lorem-ipsum-generator/lorem-ipsum-generator.vue +++ b/src/tools/lorem-ipsum-generator/lorem-ipsum-generator.vue @@ -104,6 +104,3 @@ const { copy } = useCopy({ source: loremIpsumText, text: 'Lorem ipsum copied to - - \ No newline at end of file diff --git a/src/tools/qr-code-generator/qr-code-generator.vue b/src/tools/qr-code-generator/qr-code-generator.vue index 8f2161d3..b1646c55 100644 --- a/src/tools/qr-code-generator/qr-code-generator.vue +++ b/src/tools/qr-code-generator/qr-code-generator.vue @@ -84,6 +84,3 @@ const { qrcode } = useQRCode({ const { download } = useDownloadFileFromBase64({ source: qrcode, filename: 'qr-code.png' }) - - \ No newline at end of file diff --git a/src/tools/text-statistics/text-statistics.vue b/src/tools/text-statistics/text-statistics.vue index 90504ce2..335a5e1d 100644 --- a/src/tools/text-statistics/text-statistics.vue +++ b/src/tools/text-statistics/text-statistics.vue @@ -36,6 +36,3 @@ import { getStringSizeInBytes } from './text-statistics.service' const text = ref('Lorem ipsum dolor sit amet, consectetur adipiscing elit. Commodo risus faucibus varius volutpat habitasse suspendisse justo inceptos primis mi. Fusce molestie lorem bibendum habitasse litora adipiscing turpis egestas quis nec. Non id conubia vulputate etiam iaculis vitae venenatis hac fusce condimentum. Adipiscing pellentesque venenatis ornare pulvinar tempus hac montes velit erat convallis.') - - \ No newline at end of file diff --git a/src/tools/token-generator/token-generator.tool.vue b/src/tools/token-generator/token-generator.tool.vue index 28de8381..09effe22 100644 --- a/src/tools/token-generator/token-generator.tool.vue +++ b/src/tools/token-generator/token-generator.tool.vue @@ -106,6 +106,3 @@ function refreshToken() { refreshToken() - - \ No newline at end of file diff --git a/src/tools/url-encoder/url-encoder.vue b/src/tools/url-encoder/url-encoder.vue index c77cc757..fcb36b91 100644 --- a/src/tools/url-encoder/url-encoder.vue +++ b/src/tools/url-encoder/url-encoder.vue @@ -130,6 +130,3 @@ const { copy: copyDecoded } = useCopy({ source: decodeOutput, text: 'Decoded str - - \ No newline at end of file diff --git a/src/tools/uuid-generator/uuid-generator.vue b/src/tools/uuid-generator/uuid-generator.vue index fb723b8a..de5c4794 100644 --- a/src/tools/uuid-generator/uuid-generator.vue +++ b/src/tools/uuid-generator/uuid-generator.vue @@ -65,6 +65,3 @@ const { copy } = useCopy({ source: uuids, text: 'UUIDs copied to the clipboard' refreshUUIDs() - - \ No newline at end of file From 4112fa532e3d4be190d52bf3b11e0d4c3625a402 Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Sat, 16 Apr 2022 21:21:47 +0200 Subject: [PATCH 002/521] refactor: throw an error object instead of string --- src/tools/date-time-converter/date-time-converter.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tools/date-time-converter/date-time-converter.vue b/src/tools/date-time-converter/date-time-converter.vue index 641ef62b..eff3e033 100644 --- a/src/tools/date-time-converter/date-time-converter.vue +++ b/src/tools/date-time-converter/date-time-converter.vue @@ -73,7 +73,7 @@ function onDateInputChanged(value: string) { const formatted: Date | string = toDate(value) if (!isDate(formatted) || isNaN(formatted.getTime())) { - throw 'invalid date' + throw new Error('Invalid date') } baseDate.value = formatted From 71f79a5bbfe0dd5451a435c0a55e8b77ee7d3848 Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Mon, 18 Apr 2022 08:36:22 +0200 Subject: [PATCH 003/521] fix(menu): menu auto closed on mobile --- src/components/MenuLayout.vue | 26 ++++++++++++-------------- src/stores/style.store.ts | 28 ++++++++++++++++++++++------ 2 files changed, 34 insertions(+), 20 deletions(-) diff --git a/src/components/MenuLayout.vue b/src/components/MenuLayout.vue index f5db7003..721a14d7 100644 --- a/src/components/MenuLayout.vue +++ b/src/components/MenuLayout.vue @@ -9,8 +9,6 @@ :show-trigger="false" :native-scrollbar="false" :position="siderPosition" - @collapse="isMenuCollapsed = true" - @expand="isMenuCollapsed = false" > @@ -36,24 +34,24 @@ const siderPosition = computed(() => isSmallScreen.value ? 'absolute' : 'static' \ No newline at end of file diff --git a/src/stores/style.store.ts b/src/stores/style.store.ts index 79c372cf..bc168f8a 100644 --- a/src/stores/style.store.ts +++ b/src/stores/style.store.ts @@ -1,11 +1,27 @@ -import { useMediaQuery, useStorage } from '@vueuse/core'; +import { useMediaQuery, useStorage, whenever } from '@vueuse/core'; import { defineStore } from 'pinia'; import type { Ref } from 'vue'; export const useStyleStore = defineStore('style', { - state: () => ({ - isDarkTheme: useStorage('isDarkTheme', true) as Ref, - isMenuCollapsed: useStorage('isMenuCollapsed', false) as Ref, - isSmallScreen: useMediaQuery('(max-width: 700px)'), - }), + state: () => { + const isDarkTheme = useStorage('isDarkTheme', true) as Ref; + const isSmallScreen = useMediaQuery('(max-width: 700px)'); + const isMenuCollapsed = useStorage('isMenuCollapsed', !isSmallScreen.value) as Ref; + + whenever( + () => !isSmallScreen.value, + () => (isMenuCollapsed.value = false) + ); + + whenever( + () => isSmallScreen.value, + () => (isMenuCollapsed.value = true) + ); + + return { + isDarkTheme, + isMenuCollapsed, + isSmallScreen, + }; + }, }); From cbf0b3d6995e47d371a8fbcfccd65ba304fb08dc Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Mon, 18 Apr 2022 08:49:39 +0200 Subject: [PATCH 004/521] fix(qr-code): responsive layout --- src/tools/qr-code-generator/qr-code-generator.vue | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/tools/qr-code-generator/qr-code-generator.vue b/src/tools/qr-code-generator/qr-code-generator.vue index b1646c55..86ccdc26 100644 --- a/src/tools/qr-code-generator/qr-code-generator.vue +++ b/src/tools/qr-code-generator/qr-code-generator.vue @@ -1,8 +1,9 @@