diff --git a/components/IconButton.vue b/components/IconButton.vue
index 4f7792e..a34155a 100644
--- a/components/IconButton.vue
+++ b/components/IconButton.vue
@@ -6,11 +6,11 @@
-
+
-
+
@@ -18,7 +18,7 @@
-
+
@@ -49,12 +49,18 @@
const modalStore = useModalStore()
const isExternalLink = computed(() => {
- return props.link && !props.link.endsWith('.pdf')
+ return props.link && !props.link.endsWith('.pdf') && !props.link.startsWith('/')
+ })
+
+ const isInternalPage = computed(() => {
+ return props.link && props.link.startsWith('/') && !props.link.endsWith('.pdf')
})
const openDocument = () => {
if (props.link?.endsWith('.pdf')) {
modalStore.setModalProps('pdf', 'aspect-[1/1.414]', true, '', '', '', props.link)
+ } else if (props.link?.startsWith('/')) {
+ modalStore.setModalProps('document', 'aspect-[1/1.414]', true, '', '', '', '', '', props.link)
}
}
diff --git a/components/ImageSlider.vue b/components/ImageSlider.vue
index 4f4f930..85bed3e 100644
--- a/components/ImageSlider.vue
+++ b/components/ImageSlider.vue
@@ -1,6 +1,6 @@
-
+
+ style="max-width: calc(100% - 80px); max-height: 70vh; object-fit: contain;"/>
diff --git a/components/Modal/Modal.vue b/components/Modal/Modal.vue
index 35052e1..c8bb9e9 100644
--- a/components/Modal/Modal.vue
+++ b/components/Modal/Modal.vue
@@ -98,7 +98,7 @@ provide('modal', api)
class="w-full transform overflow-hidden bg-white text-left align-middle shadow-xl transition-all"
:class="{
'h-screen': fullscreen,
- 'max-w-[85vw] rounded-lg': !fullscreen,
+ 'max-w-[min(85vw,1200px)] rounded-lg': !fullscreen,
}"
:style="!fullscreen ? { maxHeight } : {}"
>
diff --git a/layouts/default.vue b/layouts/default.vue
index 2245b52..1b0b730 100644
--- a/layouts/default.vue
+++ b/layouts/default.vue
@@ -39,8 +39,11 @@
-
-
+
+
+
+
+
@@ -48,8 +51,8 @@
-
-
+
diff --git a/stores/ModalStore.js b/stores/ModalStore.js
index ccfa8a8..1323320 100644
--- a/stores/ModalStore.js
+++ b/stores/ModalStore.js
@@ -1,9 +1,9 @@
import {defineStore} from "pinia";
export const useModalStore = defineStore("ModalStore", {
- state: () => ({"type": "", "aspect":"", "isOpen":false, "bucket":"", "gallery":"", "vimeo_trackid": "", "pdfUrl": "", "soundcloudUrl": ""}),
+ state: () => ({"type": "", "aspect":"", "isOpen":false, "bucket":"", "gallery":"", "vimeo_trackid": "", "pdfUrl": "", "soundcloudUrl": "", "iframeUrl": ""}),
actions: {
- setModalProps(type, aspect, isOpen, bucket, gallery, vimeo_trackid, pdfUrl, soundcloudUrl) {
+ setModalProps(type, aspect, isOpen, bucket, gallery, vimeo_trackid, pdfUrl, soundcloudUrl, iframeUrl) {
this.type = type
this.aspect = aspect
this.isOpen = isOpen
@@ -12,6 +12,7 @@ export const useModalStore = defineStore("ModalStore", {
this.vimeo_trackid = vimeo_trackid
this.pdfUrl = pdfUrl
this.soundcloudUrl = soundcloudUrl
+ this.iframeUrl = iframeUrl
}
}
})
\ No newline at end of file