From 38cd37cf746edfe6cc9efd4f068add5a55ca2435 Mon Sep 17 00:00:00 2001 From: webfussel Date: Mon, 12 May 2025 14:56:05 +0200 Subject: [PATCH] add: only delete swipe, edit on tap Edit price cards on tap, only delete swipe exists, fixed dialogs, add ripple --- app/assets/styles/dialog.css | 71 ++++++++++++++++++++++ app/assets/styles/general.css | 37 ------------ app/assets/styles/toolbar.css | 2 +- app/components/Pp/DeleteDialog.vue | 10 +++- app/components/Pp/PriceCard.vue | 13 ++--- app/components/Pp/PriceCardDialog.vue | 84 +++++++++++++-------------- nuxt.config.ts | 10 +++- package-lock.json | 10 ++++ package.json | 1 + 9 files changed, 145 insertions(+), 93 deletions(-) create mode 100644 app/assets/styles/dialog.css diff --git a/app/assets/styles/dialog.css b/app/assets/styles/dialog.css new file mode 100644 index 0000000..afa1065 --- /dev/null +++ b/app/assets/styles/dialog.css @@ -0,0 +1,71 @@ + +dialog { + top: 50%; + left: 50%; + width: 100vw; + translate: -50% -50%; + border: none; + border-radius: var(--radius-default); + background: var(--color-lightest); + font-size: 1rem; + color: var(--color-darkest); + position: relative; + + opacity: 0; + scale: 0; + transition: + opacity var(--transition-default) ease-out, + scale var(--transition-default) ease-out, + overlay var(--transition-default) ease-out allow-discrete, + display var(--transition-default) ease-out allow-discrete; + + &[open] { + opacity: 1; + scale: 1; + + &::backdrop { + background-color: rgb(0 0 0 / 25%); + } + } + + &::backdrop { + z-index: 2000; + background-color: rgb(0 0 0 / 0%); + transition: + display var(--transition-default) allow-discrete, + overlay var(--transition-default) allow-discrete, + background-color var(--transition-default); + } + + & > .wrapper { + display: flex; + flex-direction: column; + gap: 1rem; + } + + & header { + justify-content: space-between; + align-items: center; + padding: var(--padding-default) var(--padding-default) 0; + } + + main { + padding: 0 var(--padding-default); + } + + & footer { + justify-content: space-between; + padding: 0 var(--padding-default) var(--padding-default); + } +} + +@starting-style { + dialog[open] { + opacity: 0; + scale: 0; + + &::backdrop { + background-color: rgb(0 0 0 / 0%); + } + } +} diff --git a/app/assets/styles/general.css b/app/assets/styles/general.css index ec07424..672acd2 100755 --- a/app/assets/styles/general.css +++ b/app/assets/styles/general.css @@ -171,41 +171,4 @@ body { .grow { flex-grow: 1; height: 10px; -} - -dialog { - top: 50%; - left: 50%; - width: 100vw; - transform: translate(-50%, -50%); - border: none; - border-radius: var(--radius-default); - background: var(--color-lightest); - font-size: 1rem; - color: var(--color-darkest); - - & > .wrapper { - display: flex; - flex-direction: column; - gap: 1rem; - } - - & header { - justify-content: space-between; - align-items: center; - padding: var(--padding-default) var(--padding-default) 0; - } - - main { - padding: 0 var(--padding-default); - } - - & footer { - justify-content: space-between; - padding: 0 var(--padding-default) var(--padding-default); - } - - &::backdrop { - background: rgba(0, 0, 0, 0.5); - } } \ No newline at end of file diff --git a/app/assets/styles/toolbar.css b/app/assets/styles/toolbar.css index a634889..7a39e32 100755 --- a/app/assets/styles/toolbar.css +++ b/app/assets/styles/toolbar.css @@ -4,7 +4,7 @@ background: var(--color-main-darkest); position: sticky; bottom: 0; - z-index: 100; + z-index: 1000; box-shadow: var(--box-shadow-upper); & > .Button { diff --git a/app/components/Pp/DeleteDialog.vue b/app/components/Pp/DeleteDialog.vue index b6101ed..b7d5388 100644 --- a/app/components/Pp/DeleteDialog.vue +++ b/app/components/Pp/DeleteDialog.vue @@ -1,9 +1,9 @@