From 025f556023c29f8f31dc00870c80a9d790bbb2f4 Mon Sep 17 00:00:00 2001 From: Corentin THOMASSET Date: Sat, 14 Oct 2023 18:24:54 +0200 Subject: [PATCH 1/7] refactor(ui): switched naive tooltip components to custom ones (#661) --- components.d.ts | 2 + pnpm-lock.yaml | 23 ++++- src/components/FavoriteButton.vue | 27 +++--- src/components/InputCopyable.vue | 13 ++- src/components/NavbarButtons.vue | 83 ++++++++----------- src/components/SpanCopyable.vue | 16 +--- src/components/TextareaCopyable.vue | 40 ++------- src/layouts/base.layout.vue | 52 ++++++------ .../benchmark-builder/dynamic-values.vue | 13 ++- .../editor/menu-bar-item.vue | 14 ++-- .../otp-code-generator-and-validator.vue | 15 ++-- .../token-display.vue | 76 +++++------------ .../user-agent-result-cards.vue | 13 ++- src/ui/c-tooltip/c-tooltip.demo.vue | 18 ++++ src/ui/c-tooltip/c-tooltip.vue | 15 +++- 15 files changed, 177 insertions(+), 243 deletions(-) diff --git a/components.d.ts b/components.d.ts index 1a5ce1a9..3b7d96ea 100644 --- a/components.d.ts +++ b/components.d.ts @@ -90,6 +90,8 @@ declare module '@vue/runtime-core' { IconMdiDownload: typeof import('~icons/mdi/download')['default'] IconMdiEye: typeof import('~icons/mdi/eye')['default'] IconMdiEyeOff: typeof import('~icons/mdi/eye-off')['default'] + IconMdiFavoriteFilled: typeof import('~icons/mdi/favorite-filled')['default'] + IconMdiHeart: typeof import('~icons/mdi/heart')['default'] IconMdiPause: typeof import('~icons/mdi/pause')['default'] IconMdiPlay: typeof import('~icons/mdi/play')['default'] IconMdiRecord: typeof import('~icons/mdi/record')['default'] diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 65579a34..2428cee6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3272,7 +3272,7 @@ packages: dependencies: '@unhead/dom': 0.5.1 '@unhead/schema': 0.5.1 - '@vueuse/shared': 10.4.1(vue@3.3.4) + '@vueuse/shared': 10.5.0(vue@3.3.4) unhead: 0.5.1 vue: 3.3.4 transitivePeerDependencies: @@ -3854,10 +3854,10 @@ packages: - vue dev: false - /@vueuse/shared@10.4.1(vue@3.3.4): - resolution: {integrity: sha512-vz5hbAM4qA0lDKmcr2y3pPdU+2EVw/yzfRsBdu+6+USGa4PxqSQRYIUC9/NcT06y+ZgaTsyURw2I9qOFaaXHAg==} + /@vueuse/shared@10.5.0(vue@3.3.4): + resolution: {integrity: sha512-18iyxbbHYLst9MqU1X1QNdMHIjks6wC7XTVf0KNOv5es/Ms6gjVFCAAWTVP2JStuGqydg3DT+ExpFORUEi9yhg==} dependencies: - vue-demi: 0.14.5(vue@3.3.4) + vue-demi: 0.14.6(vue@3.3.4) transitivePeerDependencies: - '@vue/composition-api' - vue @@ -8790,6 +8790,21 @@ packages: vue: 3.3.4 dev: false + /vue-demi@0.14.6(vue@3.3.4): + resolution: {integrity: sha512-8QA7wrYSHKaYgUxDA5ZC24w+eHm3sYCbp0EzcDwKqN3p6HqtTCGR/GVsPyZW92unff4UlcSh++lmqDWN3ZIq4w==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + peerDependencies: + '@vue/composition-api': ^1.0.0-rc.1 + vue: ^3.0.0-0 || ^2.6.0 + peerDependenciesMeta: + '@vue/composition-api': + optional: true + dependencies: + vue: 3.3.4 + dev: false + /vue-eslint-parser@9.3.1(eslint@8.47.0): resolution: {integrity: sha512-Clr85iD2XFZ3lJ52/ppmUDG/spxQu6+MAeHXjjyI4I1NUYZ9xmenQp4N0oaHJhrA8OOxltCVxMRfANGa70vU0g==} engines: {node: ^14.17.0 || >=16.0.0} diff --git a/src/components/FavoriteButton.vue b/src/components/FavoriteButton.vue index ef180a65..c3f0aaad 100644 --- a/src/components/FavoriteButton.vue +++ b/src/components/FavoriteButton.vue @@ -1,6 +1,4 @@ diff --git a/src/components/InputCopyable.vue b/src/components/InputCopyable.vue index ed678954..a69a039a 100644 --- a/src/components/InputCopyable.vue +++ b/src/components/InputCopyable.vue @@ -13,14 +13,11 @@ const tooltipText = computed(() => isJustCopied.value ? 'Copied!' : 'Copy to cli diff --git a/src/components/NavbarButtons.vue b/src/components/NavbarButtons.vue index 5b1a3a4e..653afdd2 100644 --- a/src/components/NavbarButtons.vue +++ b/src/components/NavbarButtons.vue @@ -7,56 +7,43 @@ const { isDarkTheme } = toRefs(styleStore); diff --git a/src/components/TextareaCopyable.vue b/src/components/TextareaCopyable.vue index b349d041..8b0aae61 100644 --- a/src/components/TextareaCopyable.vue +++ b/src/components/TextareaCopyable.vue @@ -40,7 +40,7 @@ const tooltipText = computed(() => isJustCopied.value ? 'Copied!' : copyMessage. diff --git a/src/tools/benchmark-builder/dynamic-values.vue b/src/tools/benchmark-builder/dynamic-values.vue index 975a545c..e048ef99 100644 --- a/src/tools/benchmark-builder/dynamic-values.vue +++ b/src/tools/benchmark-builder/dynamic-values.vue @@ -39,14 +39,11 @@ function onInputEnter(index: number) { autofocus @keydown.enter="onInputEnter(index)" /> - - - Delete value - + + + + + diff --git a/src/tools/html-wysiwyg-editor/editor/menu-bar-item.vue b/src/tools/html-wysiwyg-editor/editor/menu-bar-item.vue index 9a4cf1bd..5be23292 100644 --- a/src/tools/html-wysiwyg-editor/editor/menu-bar-item.vue +++ b/src/tools/html-wysiwyg-editor/editor/menu-bar-item.vue @@ -6,13 +6,9 @@ const { icon, title, action, isActive } = toRefs(props); diff --git a/src/tools/otp-code-generator-and-validator/otp-code-generator-and-validator.vue b/src/tools/otp-code-generator-and-validator/otp-code-generator-and-validator.vue index 7b26a098..6bd881c0 100644 --- a/src/tools/otp-code-generator-and-validator/otp-code-generator-and-validator.vue +++ b/src/tools/otp-code-generator-and-validator/otp-code-generator-and-validator.vue @@ -61,19 +61,16 @@ const secretValidationRules = [ :validation-rules="secretValidationRules" >
- +
diff --git a/src/tools/otp-code-generator-and-validator/token-display.vue b/src/tools/otp-code-generator-and-validator/token-display.vue index 5313b0be..317f0831 100644 --- a/src/tools/otp-code-generator-and-validator/token-display.vue +++ b/src/tools/otp-code-generator-and-validator/token-display.vue @@ -11,7 +11,7 @@ const { tokens } = toRefs(props); - - diff --git a/src/tools/user-agent-parser/user-agent-result-cards.vue b/src/tools/user-agent-parser/user-agent-result-cards.vue index ed4724cb..eeea0730 100644 --- a/src/tools/user-agent-parser/user-agent-result-cards.vue +++ b/src/tools/user-agent-parser/user-agent-result-cards.vue @@ -25,14 +25,11 @@ const { userAgentInfo, sections } = toRefs(props);
- - - {{ label }} - + + + {{ getValue(userAgentInfo) }} + +
diff --git a/src/ui/c-tooltip/c-tooltip.demo.vue b/src/ui/c-tooltip/c-tooltip.demo.vue index d3852573..edd1364a 100644 --- a/src/ui/c-tooltip/c-tooltip.demo.vue +++ b/src/ui/c-tooltip/c-tooltip.demo.vue @@ -1,3 +1,7 @@ + + diff --git a/src/ui/c-tooltip/c-tooltip.vue b/src/ui/c-tooltip/c-tooltip.vue index 095315fb..0f47e711 100644 --- a/src/ui/c-tooltip/c-tooltip.vue +++ b/src/ui/c-tooltip/c-tooltip.vue @@ -1,23 +1,30 @@ diff --git a/src/ui/c-table/c-table.demo.vue b/src/ui/c-table/c-table.demo.vue new file mode 100644 index 00000000..b2cf8a77 --- /dev/null +++ b/src/ui/c-table/c-table.demo.vue @@ -0,0 +1,20 @@ + + + diff --git a/src/ui/c-table/c-table.types.ts b/src/ui/c-table/c-table.types.ts new file mode 100644 index 00000000..6c658f34 --- /dev/null +++ b/src/ui/c-table/c-table.types.ts @@ -0,0 +1,4 @@ +export type HeaderConfiguration = (string | { + key: string + label?: string +})[] | Record; diff --git a/src/ui/c-table/c-table.vue b/src/ui/c-table/c-table.vue new file mode 100644 index 00000000..9f734a9f --- /dev/null +++ b/src/ui/c-table/c-table.vue @@ -0,0 +1,65 @@ + + + diff --git a/unocss.config.ts b/unocss.config.ts index 6da68739..04c04830 100644 --- a/unocss.config.ts +++ b/unocss.config.ts @@ -20,5 +20,6 @@ export default defineConfig({ shortcuts: { 'pretty-scrollbar': 'scrollbar scrollbar-rounded scrollbar-thumb-color-gray-300 scrollbar-track-color-gray-100 dark:scrollbar-thumb-color-#424242 dark:scrollbar-track-color-#686868', 'divider': 'h-1px bg-current op-10', + 'bg-surface': 'bg-#ffffff dark:bg-#232323', }, }); From 88b881880c0b307e3a0c1954dc2f5474f39a144b Mon Sep 17 00:00:00 2001 From: Corentin THOMASSET Date: Sun, 15 Oct 2023 00:48:18 +0200 Subject: [PATCH 5/7] refactor(ci): reduced timeout in e2e (#666) --- .github/workflows/e2e-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/e2e-tests.yml b/.github/workflows/e2e-tests.yml index 3c089ad7..b5b04096 100644 --- a/.github/workflows/e2e-tests.yml +++ b/.github/workflows/e2e-tests.yml @@ -6,7 +6,7 @@ on: - main jobs: test: - timeout-minutes: 60 + timeout-minutes: 10 runs-on: ubuntu-latest strategy: matrix: From b408df82c1d8a0123e552048421b37afcf5189c6 Mon Sep 17 00:00:00 2001 From: Corentin Thomasset Date: Sun, 15 Oct 2023 23:41:55 +0200 Subject: [PATCH 6/7] refactor(c-table): added description on c-table for accessibility --- src/ui/c-table/c-table.vue | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/ui/c-table/c-table.vue b/src/ui/c-table/c-table.vue index 9f734a9f..9354cc9a 100644 --- a/src/ui/c-table/c-table.vue +++ b/src/ui/c-table/c-table.vue @@ -2,7 +2,7 @@ import _ from 'lodash'; import type { HeaderConfiguration } from './c-table.types'; -const props = withDefaults(defineProps<{ data?: Record[]; headers?: HeaderConfiguration ; hideHeaders?: boolean }>(), { data: () => [], headers: undefined, hideHeaders: false }); +const props = withDefaults(defineProps<{ data?: Record[]; headers?: HeaderConfiguration ; hideHeaders?: boolean; description?: string }>(), { data: () => [], headers: undefined, hideHeaders: false, description: 'Data table' }); const { data, headers: rawHeaders, hideHeaders } = toRefs(props); const headers = computed(() => { @@ -38,7 +38,7 @@ const headers = computed(() => {