@@ -117,7 +115,7 @@ defineExpose({
})
-
diff --git a/src/components/MosaicModal.vue b/src/components/MosaicModal.vue
index 5d1ebc2..14d80cd 100644
--- a/src/components/MosaicModal.vue
+++ b/src/components/MosaicModal.vue
@@ -8,8 +8,10 @@
-
{{ item.title }}
-
+
+ {{ item.title }}
+
+
@@ -27,7 +29,7 @@ const emit = defineEmits(['close'])
position: fixed;
inset: 0;
align-items: flex-start;
- padding-top: desktop-vh(27px);
+ padding-top: desktop-vw(27px);
.window {
background: var(--theme-bg);
@@ -43,15 +45,18 @@ const emit = defineEmits(['close'])
.dl-row:first-child {
border-top: none;
+ padding-top: 0;
}
}
&.content {
- padding: desktop-vw(34px) desktop-vw(24px);
border-radius: desktop-vw(10px);
grid-column: 6 / span 7;
- max-height: desktop-vh(879px);
- overflow: auto;
+ .lenis {
+ max-height: desktop-vh(900px);
+ overflow: auto;
+ padding: desktop-vw(34px) desktop-vw(24px);
+ }
.title {
text-align: center;
margin-bottom: 1em;
diff --git a/src/components/MosaicScroll.vue b/src/components/MosaicScroll.vue
index fa35de5..0475d25 100644
--- a/src/components/MosaicScroll.vue
+++ b/src/components/MosaicScroll.vue
@@ -5,13 +5,8 @@
:initialIndex="0"
:generateContent="generateMosaicContent"
>
-
-
+
+
@@ -28,18 +23,6 @@ const props = defineProps({
// Initialize mosaic layout generator
const { generateLayout, populateCells } = useMosaicLayout()
-// const generateGifContent = (cell) => {
-// return {
-// id: `gif-${cell.id}`,
-// width: Math.floor(cell.width),
-// height: Math.floor(cell.height),
-// note: _shuffle(
-// 'curabitur euismod ultrices porttitor. Vivamus magna sapien, pretium at ullamcorper semper, sollicitudin et magna curabitur eget dolor a neque facilisis semper pellentesque euismod luctus urna, non aliquam justo aliquet id vestibulum quis lobortis diam nulla facilisi phasellus et rutrum lectus vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Praesent mattis felis condimentum, gravida lacus id, pretium neque. Donec cursus augue a dui placerat porttitor.Vestibulum rhoncus lectus nisl, nec gravida ex sollicitudin vel etiam dictum ac lacus ac elementum donec turpis eros, aliquam in nibh a, posuere tristique neque. Nunc cursus molestie consectetur.Integer placerat lorem eu nunc semper porta.'.split(
-// ' ',
-// ),
-// ).join(' '),
-// }
-// }
const generateCellContent = () => {
const itemIndex = Math.floor(Math.random() * props.items.length)
return props.items[itemIndex]
@@ -53,8 +36,6 @@ const generateMosaicContent = async (index) => {
const targetCells = baseCellCount + variance
const layoutOptions = {
- minCellWidth: 200,
- minCellHeight: 200,
targetCells: targetCells,
}
@@ -62,7 +43,7 @@ const generateMosaicContent = async (index) => {
const cells = generateLayout(layoutOptions)
// Populate cells with GIF content
- const populatedCells = populateCells(cells, generateCellContent)
+ const populatedCells = populateCells(cells.value, generateCellContent)
return {
cells: populatedCells,
@@ -70,7 +51,7 @@ const generateMosaicContent = async (index) => {
}
-
diff --git a/src/routes.js b/src/routes.js
new file mode 100644
index 0000000..7f51c01
--- /dev/null
+++ b/src/routes.js
@@ -0,0 +1,11 @@
+import index from './pages/index.vue'
+
+export default {
+ routes: [
+ {
+ path: '/',
+ component: index,
+ name: 'home',
+ },
+ ],
+}