From a153a37e139b2e1d357ac2d34877d97ea5f389bb Mon Sep 17 00:00:00 2001 From: pbruun Date: Thu, 25 Jun 2026 16:48:28 +0200 Subject: [PATCH 1/7] Ground work + more for spots. Added small text box. Advanced medium box with progress bar. and max size with categories --- src/App.vue | 8 +- src/assets/fonts/iconfont/material-icons.css | 38 +++++ src/assets/styles/elements.css | 6 +- src/components/common/AdvancedSpot.vue | 171 +++++++++++++++++++ src/components/common/KBButton.vue | 30 +++- src/components/common/PortalContent.vue | 10 +- src/components/common/SimpleSpot.vue | 121 +++++++++++++ src/components/common/SpotCategories.vue | 123 +++++++++++++ src/components/common/SpotContainer.vue | 126 ++++++++++++++ src/views/Home.vue | 2 +- 10 files changed, 617 insertions(+), 18 deletions(-) create mode 100644 src/components/common/AdvancedSpot.vue create mode 100644 src/components/common/SimpleSpot.vue create mode 100644 src/components/common/SpotCategories.vue create mode 100644 src/components/common/SpotContainer.vue diff --git a/src/App.vue b/src/App.vue index dee38727..57629b7f 100644 --- a/src/App.vue +++ b/src/App.vue @@ -459,7 +459,7 @@ export default defineComponent({ } .search-to-home-enter-from { - margin-top: -50px; + // margin-top: -50px; opacity: 0; position: relative; } @@ -498,7 +498,7 @@ export default defineComponent({ } .home-to-search-enter-from { - margin-top: -50px; + // margin-top: -50px; opacity: 0; position: relative; } @@ -532,7 +532,7 @@ export default defineComponent({ } .record-to-search-enter-from { - margin-top: -50px; + // margin-top: -50px; opacity: 0; position: relative; } @@ -586,7 +586,7 @@ export default defineComponent({ } .search-to-record-leave-to { - margin-top: -50px; + // margin-top: -50px; opacity: 0; position: relative; } diff --git a/src/assets/fonts/iconfont/material-icons.css b/src/assets/fonts/iconfont/material-icons.css index fc4d3f37..68018ab2 100644 --- a/src/assets/fonts/iconfont/material-icons.css +++ b/src/assets/fonts/iconfont/material-icons.css @@ -37,3 +37,41 @@ /* Support for IE. */ font-feature-settings: 'liga'; } +.category-image { + width: 16px; + height: 16px; + background-image: url('@/assets/icons/blue/diverse-blue.svg'); +} +.category-image.diverse { + background-image: url('@/assets/icons/blue/diverse-blue.svg'); +} +.category-image.dokumentar { + background-image: url('@/assets/icons/blue/dokumentar-blue.svg'); +} +.category-image.film-og-serier { + background-image: url('@/assets/icons/blue/fiktion-blue.svg'); +} +.category-image.kultur-og-oplysning { + background-image: url('@/assets/icons/blue/kultur-blue.svg'); +} +.category-image.livsstil { + background-image: url('@/assets/icons/blue/livsstil-blue.svg'); +} +.category-image.musik { + background-image: url('@/assets/icons/blue/musik-blue.svg'); +} +.category-image.nyheder-politik-og-samfund { + background-image: url('@/assets/icons/blue/nyheder-blue.svg'); +} +.category-image.sport { + background-image: url('@/assets/icons/blue/sport-blue.svg'); +} +.category-image.humor-quiz-og-underholdning { + background-image: url('@/assets/icons/blue/underholdning-blue.svg'); +} +.category-image.natur-og-videnskab { + background-image: url('@/assets/icons/blue/videnskab-blue.svg'); +} +.category-image.brn-og-unge { + background-image: url('@/assets/icons/blue/born-blue.svg'); +} \ No newline at end of file diff --git a/src/assets/styles/elements.css b/src/assets/styles/elements.css index a1b9bec5..de71c18d 100644 --- a/src/assets/styles/elements.css +++ b/src/assets/styles/elements.css @@ -2,7 +2,7 @@ /*background-colors*/ --bg-main:#ea9fbc; --bg-cta:#ea9fbc; - --bg-light:#013277; + --bg-light:#ea9fbc1a; --bg-remove:#f7ae3b; --bg-main-hover:#c4f1ed; --bg-disabled:#757575; @@ -13,7 +13,7 @@ --bg-secondary-light: #caf0fe; --bg-secondary-light-20: #F0FBFF; --bg-header: #002e70; - --bg-footer: #002e70; + --bg-footer: #013277; /*colors*/ --color-main:#ea9fbc; @@ -35,7 +35,7 @@ /*rounded*/ --rounded-small: var(--scale-50); - --rounded-medium: var(--scale-150); + --rounded-medium: var(--scale-100); --rounded-large: var(--scale-800); /*padding*/ diff --git a/src/components/common/AdvancedSpot.vue b/src/components/common/AdvancedSpot.vue new file mode 100644 index 00000000..c2fa2ca0 --- /dev/null +++ b/src/components/common/AdvancedSpot.vue @@ -0,0 +1,171 @@ + + + + + diff --git a/src/components/common/KBButton.vue b/src/components/common/KBButton.vue index f97516bb..b882e882 100644 --- a/src/components/common/KBButton.vue +++ b/src/components/common/KBButton.vue @@ -9,15 +9,17 @@ :style="customStyle" > {{ leftIconName }} {{ buttonText }} {{ rightIconName }} @@ -33,15 +35,17 @@ :style="customStyle" > {{ leftIconName }} {{ buttonText }} {{ rightIconName }} @@ -57,15 +61,17 @@ :style="customStyle" > {{ leftIconName }} {{ buttonText }} {{ rightIconName }} @@ -135,6 +141,18 @@ export default defineComponent({ return false; }, }, + customIconLeft: { + type: String, + default() { + return ''; + }, + }, + customIconRight: { + type: String, + default() { + return ''; + }, + }, }, setup(props) { const attrs = useAttrs(); diff --git a/src/components/common/PortalContent.vue b/src/components/common/PortalContent.vue index 6f2d47b6..d894d932 100644 --- a/src/components/common/PortalContent.vue +++ b/src/components/common/PortalContent.vue @@ -1,5 +1,6 @@ @@ -109,6 +139,7 @@ export default defineComponent({ diff --git a/src/components/common/SpotContainer.vue b/src/components/common/SpotContainer.vue index 2af271db..881a5832 100644 --- a/src/components/common/SpotContainer.vue +++ b/src/components/common/SpotContainer.vue @@ -5,7 +5,7 @@
- En kasse til noget display 349.994 minutters noget helt tilbage fra 1952. + En kasse til noget display 349.994 minutters noget helt tilbage fra 1931. From 0881a18d9dd2ae89b37ede57e93204636b2f7cb6 Mon Sep 17 00:00:00 2001 From: pbruun Date: Fri, 26 Jun 2026 09:58:17 +0200 Subject: [PATCH 3/7] Spot sizes and positioning --- src/components/common/SimpleSpot.vue | 6 +++--- src/components/common/SpotCategories.vue | 6 ++++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/components/common/SimpleSpot.vue b/src/components/common/SimpleSpot.vue index 08defc2c..62561870 100644 --- a/src/components/common/SimpleSpot.vue +++ b/src/components/common/SimpleSpot.vue @@ -110,12 +110,12 @@ export default defineComponent({ .spot.max { width: 100%; } -@media (min-width: 1280px) { +@media (min-width: 990px) { .spot.small { - max-width: 20%; + max-width: 23%; } .spot.medium { - max-width: 45%; + max-width: 48%; } } diff --git a/src/components/common/SpotCategories.vue b/src/components/common/SpotCategories.vue index e2306c15..4da21523 100644 --- a/src/components/common/SpotCategories.vue +++ b/src/components/common/SpotCategories.vue @@ -16,6 +16,7 @@ button-color="cta" button-size="small" class="btn-small" + :custom-style="{ marginTop: '-5px' }" :button-text="`${t(`categories.${santizeAndSimplify(category.name)}`)}`" :custom-icon-left="`category-image ${santizeAndSimplify(category.name)}`" :is-router-link="true" @@ -148,8 +149,9 @@ h3 { flex-wrap: wrap; } .spot-categories > * { - margin-right: 10px; - margin-bottom: 10px; + margin-right: 3px; + margin-left: 7px; + margin-bottom: 15px; } h3 .loading { margin-top: -3px; From 482d4b8b9d15f90e51a633c315a85069d22c03d0 Mon Sep 17 00:00:00 2001 From: pbruun Date: Fri, 26 Jun 2026 11:00:56 +0200 Subject: [PATCH 4/7] Position changes and placeholder size change --- src/components/common/SpotCategories.vue | 42 ++++++++++++++++-------- 1 file changed, 29 insertions(+), 13 deletions(-) diff --git a/src/components/common/SpotCategories.vue b/src/components/common/SpotCategories.vue index 4da21523..30bd9b83 100644 --- a/src/components/common/SpotCategories.vue +++ b/src/components/common/SpotCategories.vue @@ -16,7 +16,6 @@ button-color="cta" button-size="small" class="btn-small" - :custom-style="{ marginTop: '-5px' }" :button-text="`${t(`categories.${santizeAndSimplify(category.name)}`)}`" :custom-icon-left="`category-image ${santizeAndSimplify(category.name)}`" :is-router-link="true" @@ -36,13 +35,15 @@ v-else class="loading-container" > -

- - kategorier: -

+
+
+ +

kategorier:

+
+
* { margin-right: 3px; margin-left: 7px; margin-bottom: 15px; } -h3 .loading { - margin-top: -3px; +.loading-header { + display: flex; + width: fit-content; + align-items: baseline; +} +.loading-header .shimmer { + height: calc(var(--fs-sm) - 5px); + width: 35px; + margin: 0; + border-radius: 15px; +} +.loading-header .loading { + width: 35px; + height: calc(var(--fs-sm) - 5px); + margin-right: 5px; } .loading-container { display: flex; @@ -164,11 +180,12 @@ h3 .loading { flex-wrap: wrap; box-sizing: border-box; padding: 0px 12px; + align-items: baseline; } .loading { display: flex; - height: 26px; + height: 14px; background-color: rgba(170, 170, 170, 1); border-radius: 15px; } @@ -182,14 +199,13 @@ h3 .loading { padding: 8px 8px 0px 10px; box-sizing: border-box; margin: 0px 10px; - height: 50px; + height: 34px; border: 2px solid #002e7026; border-radius: 4px; position: relative; text-decoration: none; display: flex; transition: all 0.1s linear 0s; - margin-top: -10px; } .shimmer { From 500a54177ccc16c248ee3f74bb4cec80548d7f5b Mon Sep 17 00:00:00 2001 From: pbruun Date: Fri, 26 Jun 2026 11:43:37 +0200 Subject: [PATCH 5/7] Extra breakpoint for phone view. Can click link spot to activate href. Hover effect for link spot --- src/components/common/SimpleSpot.vue | 16 +++++++++++++--- src/components/common/SpotContainer.vue | 23 ++++++++++++++++++----- 2 files changed, 31 insertions(+), 8 deletions(-) diff --git a/src/components/common/SimpleSpot.vue b/src/components/common/SimpleSpot.vue index 62561870..e409d8c8 100644 --- a/src/components/common/SimpleSpot.vue +++ b/src/components/common/SimpleSpot.vue @@ -52,10 +52,10 @@ export default defineComponent({ display: flex; height: 100%; min-height: 190px; - border-radius: var(--rounded-medium); + border-radius: 0px; border: 1px solid var(--color-border-success); box-sizing: border-box; - margin-bottom: 20px; + position: relative; overflow: hidden; flex-wrap: wrap; @@ -98,7 +98,6 @@ export default defineComponent({ } .spot.small { width: 100%; - max-width: 49%; } .spot.medium { width: 100%; @@ -110,6 +109,17 @@ export default defineComponent({ .spot.max { width: 100%; } + +@media (min-width: 640px) { + .spot.small { + max-width: 49%; + } + .spot { + margin-bottom: 10px; + border-radius: var(--rounded-medium); + } +} + @media (min-width: 990px) { .spot.small { max-width: 23%; diff --git a/src/components/common/SpotContainer.vue b/src/components/common/SpotContainer.vue index 881a5832..3cb57c2e 100644 --- a/src/components/common/SpotContainer.vue +++ b/src/components/common/SpotContainer.vue @@ -11,8 +11,11 @@ spot-size="small" icon-name="link" color="light" + class="spot-link" + @click="activateLink" > @@ -25,7 +28,7 @@ @@ -62,8 +71,12 @@ export default defineComponent({ text-decoration: inherit; border-bottom: 1px solid transparent; } -.link:hover { - transition: border-color linear 0.3s ease-in-out; - border-bottom-color: var(--color-border-success); + +.spot-link:hover { + .link { + transition: border-color linear 0.3s ease-in-out; + border-bottom-color: var(--color-border-success); + } + cursor: pointer; } From 0c117d512eb84ec4cee1bcb52cf13d2233a7fda6 Mon Sep 17 00:00:00 2001 From: pbruun Date: Wed, 1 Jul 2026 15:52:25 +0200 Subject: [PATCH 6/7] color changes and hover effects --- src/assets/styles/elements.css | 5 +++-- src/components/common/KBButton.vue | 10 +++++----- src/components/common/SimpleSpot.vue | 2 +- src/components/common/SpotContainer.vue | 7 +++---- 4 files changed, 12 insertions(+), 12 deletions(-) diff --git a/src/assets/styles/elements.css b/src/assets/styles/elements.css index de71c18d..b322d2f8 100644 --- a/src/assets/styles/elements.css +++ b/src/assets/styles/elements.css @@ -1,6 +1,7 @@ :root{ /*background-colors*/ --bg-main:#ea9fbc; + --bg-main-light:#f0bcd0; --bg-cta:#ea9fbc; --bg-light:#ea9fbc1a; --bg-remove:#f7ae3b; @@ -10,7 +11,7 @@ --bg-transparent: transparent; --bg-golden:#e0b500; --bg-default-gray: #ccc; - --bg-secondary-light: #caf0fe; + --bg-secondary-light: #324666; --bg-secondary-light-20: #F0FBFF; --bg-header: #002e70; --bg-footer: #013277; @@ -25,7 +26,7 @@ /*borders*/ --color-border-active: #001C43; - --color-border-light:#96e2fd; + --color-border-light:#FBECF2; --color-border-golden:#e0b500; --color-border-success:#ea9fbc; --color-border-disabled:#757575; diff --git a/src/components/common/KBButton.vue b/src/components/common/KBButton.vue index b882e882..40a2eb20 100644 --- a/src/components/common/KBButton.vue +++ b/src/components/common/KBButton.vue @@ -182,6 +182,7 @@ export default defineComponent({ width: fit-content; min-height: 34px; line-height: 1; + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15); } .btn-text::first-letter { text-transform: capitalize; @@ -257,7 +258,6 @@ export default defineComponent({ /* Call to action buttons */ .btn-cta { border-radius: var(--rounded-medium); - box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.15); } .btn-cta .btn-text { border-bottom: 1px solid transparent; @@ -265,10 +265,10 @@ export default defineComponent({ transition: 200ms; } .btn-cta:not(:disabled):hover { - transition: all 5s ease 0s; - .btn-text { - border-color: var(--color-border-active); - } + transition: all 0.3s ease 0s; + background-color: var(--bg-main-light); + border-color: var(--color-border-light); + box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0); } .btn-cta.medium .material-icons { font-size: calc(var(--fs-lead) + 8px); diff --git a/src/components/common/SimpleSpot.vue b/src/components/common/SimpleSpot.vue index e409d8c8..25d2ba60 100644 --- a/src/components/common/SimpleSpot.vue +++ b/src/components/common/SimpleSpot.vue @@ -55,11 +55,11 @@ export default defineComponent({ border-radius: 0px; border: 1px solid var(--color-border-success); box-sizing: border-box; - position: relative; overflow: hidden; flex-wrap: wrap; align-content: baseline; + box-shadow: 0 0 14px 0 rgba(0, 0, 0, 0.34) inset; } .spot .icon { width: 40px; diff --git a/src/components/common/SpotContainer.vue b/src/components/common/SpotContainer.vue index 3cb57c2e..9da4c545 100644 --- a/src/components/common/SpotContainer.vue +++ b/src/components/common/SpotContainer.vue @@ -73,10 +73,9 @@ export default defineComponent({ } .spot-link:hover { - .link { - transition: border-color linear 0.3s ease-in-out; - border-bottom-color: var(--color-border-success); - } + transition: background-color 0.3s linear; + background-color: var(--bg-secondary-light); cursor: pointer; + box-shadow: 0 0 14px 0 rgba(0, 0, 0, 0) inset; } From bc3de4328acf3f410f77f443a5618c49a3384cbf Mon Sep 17 00:00:00 2001 From: pbruun Date: Tue, 7 Jul 2026 10:34:03 +0200 Subject: [PATCH 7/7] Color change --- src/components/common/KBButton.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/common/KBButton.vue b/src/components/common/KBButton.vue index 40a2eb20..863f8629 100644 --- a/src/components/common/KBButton.vue +++ b/src/components/common/KBButton.vue @@ -266,7 +266,7 @@ export default defineComponent({ } .btn-cta:not(:disabled):hover { transition: all 0.3s ease 0s; - background-color: var(--bg-main-light); + background-color: var(--bg-main-2); border-color: var(--color-border-light); box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0); }