mirror of
https://github.com/supabase/supabase.git
synced 2026-09-09 11:30:17 +08:00
- Marketplace index page - update order of feature partner integrations in hero - fix z-index on MarketplaceFilterBar in "list" view <img width="275" height="104" alt="Screenshot 2026-06-02 at 17 07 29" src="https://github.com/user-attachments/assets/5cef64f9-895e-4f8d-8f30-153ddd5c89dd" /> - Marketplace detail page - use "prose" css styling on overview content for better text styling (heading with top padding, etc) - refine FilesView in overview tab to only show swipeable and zoomable previews (so the big image doesn't occupy too much space) + lazy load FilesView component - improve page loading state - improve overview side rail sticky-top and remove redundant "About" label <img width="1333" height="732" alt="Screenshot 2026-06-02 at 17 20 29" src="https://github.com/user-attachments/assets/8f3dd4a0-c241-4b7f-b8c8-192e1d7a616d" /> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Interactive carousel with image zoom capability for viewing integration preview images * **Bug Fixes** * Fixed z-index layering issue with marketplace filter bar * **Refactor** * Redesigned marketplace detail page header with breadcrumb navigation * Updated integration image handling structure with enhanced metadata * Optimized dynamic loading for integration file viewers <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
54 lines
1.2 KiB
TypeScript
54 lines
1.2 KiB
TypeScript
import 'swiper/css'
|
|
|
|
import content from '~/data/home/content'
|
|
import type { Example } from 'data/Examples'
|
|
import { useRouter } from 'next/router'
|
|
import React, { FC } from 'react'
|
|
import { Swiper, SwiperSlide } from 'swiper/react'
|
|
|
|
import ExampleCard from '../ExampleCard'
|
|
|
|
interface Props {
|
|
examples: Example[]
|
|
className?: string
|
|
}
|
|
|
|
const ExamplesMobile: FC<Props> = ({ examples, className }: any) => {
|
|
const { basePath } = useRouter()
|
|
|
|
return (
|
|
<div className={className}>
|
|
<Swiper
|
|
style={{ zIndex: 0, marginRight: '1px' }}
|
|
initialSlide={0}
|
|
spaceBetween={12}
|
|
slidesPerView={1.1}
|
|
speed={300}
|
|
watchOverflow
|
|
threshold={2}
|
|
updateOnWindowResize
|
|
className="px-6! w-full overflow-visible"
|
|
breakpoints={{
|
|
320: {
|
|
slidesPerView: 1.1,
|
|
},
|
|
540: {
|
|
slidesPerView: 1.6,
|
|
},
|
|
720: {
|
|
slidesPerView: 2.5,
|
|
},
|
|
}}
|
|
>
|
|
{examples.map((example: Example, i: number) => (
|
|
<SwiperSlide key={`${content}-${i}`}>
|
|
<ExampleCard {...example} showProducts inHomepage />
|
|
</SwiperSlide>
|
|
))}
|
|
</Swiper>
|
|
</div>
|
|
)
|
|
}
|
|
|
|
export default ExamplesMobile
|