From a9761a8232fc61245ce4823a06bf6335fa4fab2f Mon Sep 17 00:00:00 2001 From: timotheegoguely Date: Wed, 11 Dec 2024 16:00:00 +0100 Subject: [PATCH] Style PhysicalSample card and dialog #45 #54 --- src/assets/css/src/2.blocks.dialog.css | 55 ++++++++++++++++++----- src/components/project/PhysicalSample.vue | 18 +++++--- src/components/project/ProjectStep.vue | 33 ++++++++++---- 3 files changed, 82 insertions(+), 24 deletions(-) diff --git a/src/assets/css/src/2.blocks.dialog.css b/src/assets/css/src/2.blocks.dialog.css index 011de4c..5408374 100644 --- a/src/assets/css/src/2.blocks.dialog.css +++ b/src/assets/css/src/2.blocks.dialog.css @@ -27,7 +27,7 @@ display: flex; gap: var(--space-16); } -.dialog [data-pc-section="header"] h2 { +.dialog:not(#physical-sample) [data-pc-section="header"] h2 { font-family: var(--font-serif); position: absolute; left: 15rem; @@ -40,10 +40,6 @@ text-overflow: ellipsis; margin: 0 auto; } -.dialog#virtual-sample [data-pc-section="header"] h2 { - left: 22.5rem; - right: 22.5rem; -} .dialog [data-pc-name="pcclosebutton"] { color: var(--color-white); } @@ -85,11 +81,6 @@ gap: var(--space-8); } -/* Comments */ -.static#virtual-sample #comments-container { - top: 8rem; -} - /* Footer */ .dialog [data-pc-section="footer"] { height: var(--dialog-footer-h); @@ -99,6 +90,50 @@ display: flex; gap: var(--space-16); } + + +/* Virtual Sample */ +.dialog#virtual-sample [data-pc-section="header"] h2 { + left: 22.5rem; + right: 22.5rem; +} +.dialog.static#virtual-sample #comments-container { + top: 8rem; +} .dialog.static#virtual-sample [data-pc-section="footer"] { display: none; } + +/* Physical Sample */ +.dialog#physical-sample { + --dialog-header-h: 15rem; + --dialog-background: var(--color-grey-50); + padding: var(--space-32); + overflow-y: auto; +} +.dialog#physical-sample [data-pc-section="header"] { + display: flex; + flex-direction: column; + text-align: center; + justify-content: center; + align-items: center; + gap: 0; + padding: var(--space-32); + color: var(--color-white); + background: linear-gradient(90deg, hsla(0, 0%, 10%, .5) 0%, hsla(0, 0%, 10%, .9) 50%, hsla(0, 0%, 10%, .9) 100%), var(--cover), var(--color-black); + background-repeat: no-repeat; + background-size: cover; + border-radius: var(--rounded-xl); +} +.dialog#physical-sample [data-pc-name="pcclosebutton"] { + top: var(--space-40); + right: var(--space-40); +} +.dialog#physical-sample [data-pc-name="content"] { + height: auto; +} +@media (min-width: 90rem) { + .dialog#physical-sample .masonry { + column-count: 3; + } +} \ No newline at end of file diff --git a/src/components/project/PhysicalSample.vue b/src/components/project/PhysicalSample.vue index a36c636..8c5a79d 100644 --- a/src/components/project/PhysicalSample.vue +++ b/src/components/project/PhysicalSample.vue @@ -7,10 +7,18 @@ dismissableMask="true" class="dialog" :closeOnEscape="true" + :style="'--cover: url('+physicalSample.cover+')'" > -
-

Titre de la modal

-
+ +
+ +
@@ -29,7 +37,5 @@ watch(isOpen, (newValue) => { router.push({ name: route.name }); }); const { page } = usePageStore(); -const step = page.steps[page.steps.length - 1]; +const physicalSample = page.steps[page.steps.length - 1]; - - diff --git a/src/components/project/ProjectStep.vue b/src/components/project/ProjectStep.vue index 86f82e9..ae454ad 100644 --- a/src/components/project/ProjectStep.vue +++ b/src/components/project/ProjectStep.vue @@ -155,14 +155,16 @@ @@ -200,3 +202,18 @@ const mergedFiles = computed(() => { return [...staticFiles, ...dynamicFiles]; }); + +