diff --git a/next.config.mjs b/next.config.mjs index 2937f57..dceb1b9 100644 --- a/next.config.mjs +++ b/next.config.mjs @@ -1,7 +1,10 @@ /** @type {import('next').NextConfig} */ const nextConfig = { images: { - domains: ['picsum.photos'], // 허용할 외부 이미지 도메인 추가 + domains: [ + 'chik.s3.ap-northeast-2.amazonaws.com', + 'scontent-gmp1-1.cdninstagram.com', + ], // 허용할 외부 이미지 도메인 추가 }, }; diff --git a/src/app/layout.tsx b/src/app/layout.tsx index 3010045..5b8d62f 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -22,7 +22,7 @@ export default function RootLayout({ }>) { return ( - +
{children}
diff --git a/src/app/page.tsx b/src/app/page.tsx index ad1e142..b951933 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -15,8 +15,8 @@ const Home = () => { className="pointer-events-none" /> - {/* 배경 그라데이션 */} -
+ +

@@ -24,8 +24,10 @@ const Home = () => {
칙스냅

+
+

@@ -33,10 +35,11 @@ const Home = () => {
찾고 있으신가요?

+

- 나에게 맞는 스냅 작가님을 찾기 + 나만을 위한, 내가 원하는 스타일에 맞는
- 어려우셨다면 저희가 찾아드릴게요! + 작가를 칙스냅에서 찾아보세요

diff --git a/src/app/photographer/page.tsx b/src/app/photographer/page.tsx index e98cefa..d35264c 100644 --- a/src/app/photographer/page.tsx +++ b/src/app/photographer/page.tsx @@ -3,32 +3,92 @@ import React, { useEffect, useState } from 'react'; import Image from 'next/image'; import Link from 'next/link'; -import { useRouter, useSearchParams } from 'next/navigation'; -import { photographers_mu } from '@/data/database'; +import { useSearchParams } from 'next/navigation'; import Loading from '@/components/Loading'; +import { photoData, photographerData, snapTypeChoice } from '@/data/database'; +import { Photographer } from '@/types'; const RecommendedPhotographers = () => { const [isLoading, setIsLoading] = useState(true); - const router = useRouter(); - - useEffect(() => { - const timer = setTimeout(() => { - setIsLoading(false); - }, 1500); // 2.5초 - - return () => clearTimeout(timer); - }, []); + const [data, setData] = useState([]); const searchParams = useSearchParams(); - const type = searchParams.get('type'); - const moods = searchParams.get('moods'); - //type, price, moods 정보로 작가 추리는 로직 여기서 구현하고 바로 띄우면 될듯. + const processRecommendation = async () => { + const types = searchParams + .get('type') + ?.split(',') + .map((item: string) => +item); + const moods = searchParams + .get('moods') + ?.split(',') + .map((id: string) => photoData.find((item) => item.id === +id)?.mood) + .sort(); + if (!types || !moods) return; + + const filteredPhotographerByType = photographerData.filter((item) => + types.some((type: any) => item.types.includes(type)), + ); + + const photoMoodMap = new Map( + photoData.map((photo) => [photo.id, photo.mood]), + ); + + const photographerMoodCounts = filteredPhotographerByType.map( + (photographer) => { + // 모든 사진작가들에 대해, + const moodCounts = new Map(); + for (const imageId of photographer.works) { + //순회하는 사진작가 작품 이미지의 무드를 + const mood = photoMoodMap.get(imageId); + if (mood !== undefined) { + // moodId, + moodCounts.set(mood, (moodCounts.get(mood) || 0) + 1); + } + } + return { photographer, moodCounts }; + }, + ); + + const moodSortedPhotographers = moods.map((mood) => + [...photographerMoodCounts] + .sort( + (a, b) => + (b.moodCounts.get(mood!) || 0) - (a.moodCounts.get(mood!) || 0), + ) + .map((item) => item.photographer), + ); + + const selectedPhotographers = new Set(); + const moodIndices = new Array(moods.length).fill(0); + + while (selectedPhotographers.size < 3) { + for (let i = 0; i < moods.length; i++) { + if (moodIndices[i] < moodSortedPhotographers[i].length) { + const photographer = moodSortedPhotographers[i][moodIndices[i]]; + selectedPhotographers.add(photographer); + moodIndices[i]++; + if (selectedPhotographers.size === 3) break; + } + } + if ( + moodIndices.every( + (index, i) => index === moodSortedPhotographers[i].length, + ) + ) + break; + } + console.log(Array.from(selectedPhotographers)); + setData(Array.from(selectedPhotographers)); + }; - // 배열을 랜덤하게 섞고 처음 3명의 작가만 선택 - const selectedPhotographers = [...photographers_mu] - .sort(() => Math.random() - 0.5) - .slice(0, 3); + useEffect(() => { + console.log('hello', data); + if (data.length === 0) { + processRecommendation(); + } + setIsLoading(false); + }, []); if (isLoading) { return ; // 로딩 중일 때 로딩 컴포넌트 표시 @@ -45,20 +105,20 @@ const RecommendedPhotographers = () => {
- {selectedPhotographers.map((photographer) => ( + {data.map((photographer: Photographer) => (
{photographer.name} { - {`@${photographer.instagramId}`} + {`@${photographer.instagram_id}`}
@@ -82,28 +142,32 @@ const RecommendedPhotographers = () => {
{photographer.price}
- {photographer.services.map((value, index) => ( + {photographer.types.map((typeId, index) => (
- {value} + {snapTypeChoice[typeId].title}
))}
- {photographer.workImages.map((value, index) => ( -
- example image -
- ))} + {photographerData + .find((item) => item.id === photographer.id) + ?.works.slice(0, 3) + .map((imageId, index) => ( +
+ item.id === imageId)?.url! + } + alt="example image" + layout="fill" + className="rounded-[0.25rem] object-cover" + /> +
+ ))}
diff --git a/src/app/select-mood/page.tsx b/src/app/select-mood/page.tsx index e7bc450..ebb3191 100644 --- a/src/app/select-mood/page.tsx +++ b/src/app/select-mood/page.tsx @@ -3,12 +3,17 @@ import { useState } from 'react'; import Link from 'next/link'; import { useSearchParams } from 'next/navigation'; -import { group1, group2, group3 } from '@/data/database'; import MoodImageGroup from '@/components/MoodImageGroup'; +import { + images_couple, + images_personal, + images_wedding, +} from '@/data/database'; const SelectMood = () => { const searchParams = useSearchParams(); const type = searchParams.get('type'); + const [selectedMoods, setSelectedMoods] = useState([]); const toggleMood = (id: number) => { @@ -41,17 +46,17 @@ const SelectMood = () => {
diff --git a/src/app/select-price/loading.tsx b/src/app/select-price/loading.tsx deleted file mode 100644 index 80cc5b9..0000000 --- a/src/app/select-price/loading.tsx +++ /dev/null @@ -1,11 +0,0 @@ -import React from 'react'; - -const Loading = () => { - return ( -
-
-
- ); -}; - -export default Loading; diff --git a/src/app/select-price/page.tsx b/src/app/select-price/page.tsx deleted file mode 100644 index e088a19..0000000 --- a/src/app/select-price/page.tsx +++ /dev/null @@ -1,39 +0,0 @@ -'use client'; - -import { useState } from 'react'; -import Link from 'next/link'; -import { useSearchParams } from 'next/navigation'; -import RangeSlider from '../../components/RangeSlider'; - -const SelectPrice = () => { - const searchParams = useSearchParams(); - const type = searchParams.get('type'); - const [priceRange, setPriceRange] = useState<[number, number]>([1, 5]); - - return ( -
-

희망하는 가격대를 선택해주세요

- setPriceRange(values as [number, number])} - /> - -

- {priceRange[0].toLocaleString()}만원 - {priceRange[1].toLocaleString()} - 만원 -

- - - 다음 - -
- ); -}; - -export default SelectPrice; diff --git a/src/app/select-type/page.tsx b/src/app/select-type/page.tsx index 4e8455b..228c5a0 100644 --- a/src/app/select-type/page.tsx +++ b/src/app/select-type/page.tsx @@ -3,14 +3,14 @@ import { useState } from 'react'; import Link from 'next/link'; import Image from 'next/image'; -import { snapTypes } from '@/data/database'; +import { snapTypeChoice } from '@/data/database'; import IsNotChecked from '@/data/grayCheck.svg'; import IsChecked from '@/data/whiteCheck.svg'; const SelectType = () => { - const [selectedTypes, setSelectedTypes] = useState([]); + const [selectedTypes, setSelectedTypes] = useState([]); - const handleSelectType = (typeId: string) => { + const handleSelectType = (typeId: number) => { if (selectedTypes.includes(typeId)) { // 이미 선택된 경우, 선택 해제 setSelectedTypes(selectedTypes.filter((id) => id !== typeId)); @@ -35,13 +35,13 @@ const SelectType = () => {
- {snapTypes.map((type) => ( + {snapTypeChoice.map((type, index) => (
handleSelectType(type.id)} + onClick={() => handleSelectType(index)} > { />
-
-

{type.title}

-

{type.description}

-
+

{type.title}

{selectedTypes.includes(type.id) {
0 ? `/select-mood?type=${selectedTypes.join(',')}` diff --git a/src/components/ClipContainer.tsx b/src/components/ClipContainer.tsx index 1fea526..584f457 100644 --- a/src/components/ClipContainer.tsx +++ b/src/components/ClipContainer.tsx @@ -58,7 +58,7 @@ const ClipContainer = ({ children }: any) => {
{path !== '/' && path !== '/request-notification' && ( -
+
router.back()}>
void; } @@ -22,14 +23,17 @@ const MoodImageGroup = ({ onClick={() => toggleMood(image.id)} > {image.alt} + {selectedMoods.includes(image.id) && (
{'checked'} diff --git a/src/data/1.png b/src/data/1.png deleted file mode 100644 index 52beef4..0000000 Binary files a/src/data/1.png and /dev/null differ diff --git a/src/data/11.png b/src/data/11.png deleted file mode 100644 index 97a4a84..0000000 Binary files a/src/data/11.png and /dev/null differ diff --git a/src/data/12.png b/src/data/12.png deleted file mode 100644 index 4ef141a..0000000 Binary files a/src/data/12.png and /dev/null differ diff --git a/src/data/13.png b/src/data/13.png deleted file mode 100644 index a0df391..0000000 Binary files a/src/data/13.png and /dev/null differ diff --git a/src/data/2.png b/src/data/2.png deleted file mode 100644 index ac7f552..0000000 Binary files a/src/data/2.png and /dev/null differ diff --git a/src/data/3.png b/src/data/3.png deleted file mode 100644 index 97c4fcd..0000000 Binary files a/src/data/3.png and /dev/null differ diff --git a/src/data/4.png b/src/data/4.png deleted file mode 100644 index d5e1af3..0000000 Binary files a/src/data/4.png and /dev/null differ diff --git a/src/data/database.ts b/src/data/database.ts index e633328..5cff924 100644 --- a/src/data/database.ts +++ b/src/data/database.ts @@ -1,156 +1,1383 @@ -import { MoodImage, Photographer, SnapType } from '@/types'; +import { Photographer, SnapImage } from '@/types'; -import image_11 from '@/data/personalSnap.png'; -import image_12 from '@/data/coupleSnap.png'; -import image_13 from '@/data/weddingSnap.png'; -import image_1 from '@/data/1.png'; -import image_2 from '@/data/2.png'; -import image_3 from '@/data/3.png'; -import image_4 from '@/data/4.png'; +import personalImg from '@/data/personalSnap.png'; +import coupleImg from '@/data/coupleSnap.png'; +import weddingImg from '@/data/weddingSnap.png'; -export const snapTypes: SnapType[] = [ +export const snapTypeChoice = [ { - id: 'personal', title: '개인', - description: '화보, 프로필 사진 촬영', - image: image_11, + image: personalImg, }, { - id: 'couple', - title: '커플 / 우정', - description: '2인 이상 촬영', - image: image_12, + title: '단체 / 우정', + image: coupleImg, }, { - id: 'wedding', - title: '결혼', - description: '웨딩, 본식 등 촬영', - image: image_13, + title: '커플 / 결혼', + image: weddingImg, }, ]; -export const photographers_mu: Photographer[] = [ +export const photographerData: Photographer[] = [ { id: 1, - name: 'kim_photo', - instagramId: 'chik_snap', - services: ['개인 스냅', '커플 스냅'], - profileImg: image_1, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'mandori.photo', + name: '만도리', + price: '12만원 - 17만원', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/440624499_315230698291736_5215642510004701920_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=108&_nc_ohc=KN3aw1_Jr0sQ7kNvgFRD7iP&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAZKXgmrPlY3HslEzZQuMc7UUBv7LlqDucrT6NU2T0sRw&oe=66CE631E&_nc_sid=8b3546', + works: [85, 86, 87], + types: [0, 1], }, { id: 2, - name: '이스냅', - instagramId: 'chik_snap', - services: ['일반스냅', '결혼사진'], - profileImg: image_2, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'ourownfilm', + name: '요환', + price: '25만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/438416966_967733958069098_3611121345989776830_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=102&_nc_ohc=TErpuJLFW0IQ7kNvgGOWBl7&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAgZt6qPfPReuaJT-WYeb5lTYtwgwwpwVYW2npBH1MJmg&oe=66CE88BB&_nc_sid=8b3546', + works: [91, 92, 93, 94, 95], + types: [0, 1], }, { id: 3, - name: '박사진', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_3, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: '_hajifilm', + name: '하 지 ,', + price: '10만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/447772128_1137463040645574_3910032134659509705_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=106&_nc_ohc=wtwf22aKjAgQ7kNvgEqFPQy&edm=APHcPcMBAAAA&ccb=7-5&oh=00_AYC5nR_kaEjJ9VrEmXfFBFul5gh5TVqHNVeXZUS7GMZBnw&oe=66CE8E88&_nc_sid=bef7bc', + works: [11, 12], + types: [0, 1], }, { id: 4, - name: '정스튜디오1', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_4, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'studio__jae', + name: '스튜디오 재', + price: '5만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/455906115_1055651632931293_4596442812233006290_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=101&_nc_ohc=b3lw4hNeeW8Q7kNvgGVLh7X&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYBLK3NtXKqcWcJ3s8_oSpW6qSOXKDr5HdvMHyeGXv61DQ&oe=66CE8EBC&_nc_sid=8b3546', + works: [130, 131, 132, 133, 134, 135], + types: [0, 1], }, { id: 5, - name: '정스튜디오2', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_4, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'from.yours.y', + name: '애:연화', + price: '6만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/409851962_1092867108831941_7078217159483230204_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=105&_nc_ohc=PS-Oo-npKuIQ7kNvgHiMcoL&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAgElPIVIvVQ5J2uATup6kn9YqM74GEVI57HXwTkjdupA&oe=66CE64CF&_nc_sid=8b3546', + works: [41, 42], + types: [0], }, { id: 6, - name: '정스튜디오3', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_4, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'usee_pic', + name: '유시', + price: '13만원 - 17만원', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/427673639_1550902759044319_120663642108229272_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=40WRNe_rBDUQ7kNvgHjjuZ7&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYBhFAZ8UWxGeyWqt7yaQ6mq2U1Weu6561ObR4h0w44fRg&oe=66CE95EA&_nc_sid=8b3546', + works: [142, 143, 144, 145, 146, 147, 148, 149], + types: [0, 1], }, { id: 7, - name: '정스튜디오4', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_4, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: '_greamlight', + name: '서안', + price: '8만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/454671478_1049877573162746_7980255629148174458_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=102&_nc_ohc=tnghGOgLbeoQ7kNvgHzM49h&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAzAjmjkrNlYbGJYJyVfVDo3ZqJmaMet2vuk9MqunRKnQ&oe=66CE6214&_nc_sid=8b3546', + works: [9, 10], + types: [0, 2], }, { id: 8, - name: '정스튜디오5', - instagramId: 'chik_snap', - services: ['졸업사진', '결혼사진'], - profileImg: image_4, - workImages: [ - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - 'https://picsum.photos/800/600', - ], - price: '10만원 - 25만원', + instagram_id: 'seoro.snap', + name: '서로스냅', + price: '15만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/452673578_3746874225594935_1728955975780058108_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=111&_nc_ohc=Dm-foKS8aH0Q7kNvgF5JRH4&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDFVBL0QKeo3n2IcwMgVPfAzWU5l9jTEPyKEJd_KgE7Sw&oe=66CE8D0B&_nc_sid=8b3546', + works: [112, 113, 114, 115, 116, 117, 118, 119, 120], + types: [0, 1], + }, + { + id: 9, + instagram_id: 'koofilm__', + name: '구자까', + price: '16만5천원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/449853364_504277135374066_6823700767016637320_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=106&_nc_ohc=4oB5eQ97dmYQ7kNvgEqlP_w&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYCGjGCAb_iJuwHnIHHYjCMejlDX9me_cpnaA4C9FxEX-g&oe=66CE80B5&_nc_sid=8b3546', + works: [69, 70, 71, 72, 73, 74, 75, 76, 77, 78], + types: [1], + }, + { + id: 10, + instagram_id: 'ehoomarchive', + name: '에움', + price: '16만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/456619502_1156761368770192_1827335668555829915_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=104&_nc_ohc=RSXDX6AdCK4Q7kNvgGp78WD&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYBq7FeUCHZfKoOxyvY-WukYJ5ibK6Md4R7L0YEHjPeNAg&oe=66CE774D&_nc_sid=8b3546', + works: [22, 23, 24, 25, 26, 27, 28, 29], + types: [0, 1], + }, + { + id: 11, + instagram_id: 'soooopy', + name: '수피', + price: '10만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/452768154_410469642139050_4499251393491501276_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=106&_nc_ohc=o0wOODBOTPgQ7kNvgGdtEBm&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAdoDSs3hziWnBXOl53AtoGAS30b3CPxPx-JvezkbLzFQ&oe=66CE68AB&_nc_sid=8b3546', + works: [], + types: [], + }, + { + id: 12, + instagram_id: 'episode._._', + name: '에피소드', + price: '4만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/430453746_408771685062960_7299584373527546183_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=100&_nc_ohc=WlhEFdi8tqYQ7kNvgET4mVM&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYC1RNFBFX5hdYa_HGV2XsjYIdYUfLIchVeB9GdAJThtHQ&oe=66CE746A&_nc_sid=8b3546', + works: [32, 33, 34, 35, 36, 37, 30, 31], + types: [0, 1], + }, + { + id: 13, + instagram_id: 'oas_isphoto', + name: 'oasisphoto', + price: '8만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/419821181_739347798162033_8787888388980866746_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=109&_nc_ohc=4Qves-_md7AQ7kNvgG7KMO_&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYCsFHeA88BvtwQ9rCFi9nqTemreKHzkn_mImv3RAl247w&oe=66CE93D7&_nc_sid=8b3546', + works: [88, 89, 90], + types: [0, 1], + }, + { + id: 14, + instagram_id: 'peace_tiff', + name: '평화', + price: '8만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/434510548_1440828309883954_6253905094591164976_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=110&_nc_ohc=q0q5PWOwWW4Q7kNvgHkPdBF&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDZydKucy5OlSd10ZgQUME3zPZAHTpd8q_YGNSYu0f-LA&oe=66CE5E07&_nc_sid=8b3546', + works: [96, 97, 98, 99, 100, 101, 102, 103, 104, 105], + types: [0, 1], + }, + { + id: 15, + instagram_id: 'dang.pic', + name: '당신의 시간', + price: '', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/437741140_773200551446877_1754790474335095897_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=109&_nc_ohc=tGLbG4T4HosQ7kNvgFIjkNW&_nc_gid=37e0a26d3b2646209da3b584d1380566&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDs0khdTHSg9_nEEeCYmLOqlpkFy3La-9DtWnWXEFv0LQ&oe=66CE6792&_nc_sid=8b3546', + works: [], + types: [], + }, + { + id: 16, + instagram_id: 'i__.film', + name: '김지영-아이필름', + price: '7만5천원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/453445802_472785702129617_9108689563745973563_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=105&_nc_ohc=pR_PUKOIOggQ7kNvgHg1qjf&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDWUZ9iJMFzPQTY9k0CA4SeBC_zdS2zsQ2tDU3NCPukMw&oe=66CE79B2&_nc_sid=8b3546', + works: [43], + types: [0], + }, + { + id: 17, + instagram_id: 'sunnya_snap', + name: '햇님', + price: '5만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/448850239_454269630885287_8333687839809902304_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=111&_nc_ohc=MyCUldW6ybsQ7kNvgFRpc3S&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYCzDuk6r8Fuc8RoR6_5did1zxj83pKJlyUfdKJoxq2P0A&oe=66CE61A0&_nc_sid=8b3546', + works: [136, 137, 138, 139, 140, 141], + types: [0], + }, + { + id: 18, + instagram_id: 'jay44_pic', + name: '재이', + price: '10만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/319729563_680897370342503_7915787681963537989_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=111&_nc_ohc=3NJRsrf0rUgQ7kNvgFL4KPB&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDQzuKODc-nZh8YKQpyEMGIFTZ7TnR5FqUcdQRwkoDu4w&oe=66CE6A2A&_nc_sid=8b3546', + works: [1, 2, 3, 4, 5, 44, 45, 46, 47], + types: [0, 2], + }, + { + id: 19, + instagram_id: 'alpaca__snappic', + name: '이성준', + price: '3만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/350881467_997563288265109_5940974714230900750_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=105&_nc_ohc=qP4VrMBmokAQ7kNvgGRIuU4&_nc_gid=9104fdcba2934ece8a9795721ca7f65a&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAGPlg_CQe8UohidU_4xSxbDIk-An4LkwJm7WLVO3ErHA&oe=66CE5D83&_nc_sid=8b3546', + works: [19, 20, 21], + types: [0, 1], + }, + { + id: 20, + instagram_id: 'lee_han_photo', + name: '리한필름', + price: '9만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/393298155_297390533108911_6093576485745995522_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=jkUhnZ0NP24Q7kNvgH9CY1m&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYD-TTS1lCdEMKr7cQ2sxyP_olS5ZAqo1Ql9-D15ZXkXHw&oe=66CE5E16&_nc_sid=8b3546', + works: [79, 80, 81, 82, 83, 84], + types: [0, 2], + }, + { + id: 21, + instagram_id: 'sian_film', + name: '시안필름', + price: '12만원 - 18만원', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/447595603_1616857905831040_1666063235105105138_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=104&_nc_ohc=6widu7aKo0wQ7kNvgFPMMc3&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDHTgvfJeCpARGaXgC2J6UZ31hd89JrwrJbT_DHKFrIxQ&oe=66CE7B17&_nc_sid=8b3546', + works: [121, 122, 123, 124, 125, 126], + types: [0, 1], + }, + { + id: 22, + instagram_id: 'sa_you.snap', + name: '사유스냅', + price: '11만원 - 17만원', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/445498420_2509467192774733_8634698314016902347_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=101&_nc_ohc=6YBAB4kS5SgQ7kNvgFmu8Yz&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAVv29i_E1Av2lS4QiLHdVK9O6zzziR2Mc1dlgBIV1z_w&oe=66CE74A4&_nc_sid=8b3546', + works: [], + types: [], + }, + { + id: 23, + instagram_id: 'hoyeon_snap', + name: '호연스냅', + price: '민선아', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/450454469_1206253394065209_1037501442316588171_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=109&_nc_ohc=pCq0PIq0dUkQ7kNvgFR9XwW&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDMcdyIpK1C-FjCaGMj4yTWMzbNZFx-dsmk90T3OlHEcA&oe=66CE823B&_nc_sid=8b3546', + works: [], + types: [], + }, + { + id: 24, + instagram_id: 'jjang_precious', + name: '은지', + price: '4만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/453231197_503888498708957_205978375803874523_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=105&_nc_ohc=2Sikn8eGahAQ7kNvgFflStE&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYDbxuZ4q3CENliWMc95YBUOPqQOIgTA_kbPPZZEgHtcGg&oe=66CE780C&_nc_sid=8b3546', + works: [64, 65, 66, 67, 68], + types: [0, 1], + }, + { + id: 25, + instagram_id: 'seolha_film', + name: '설하필름', + price: '15만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/433991366_1180814976633158_5495152942405629253_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=102&_nc_ohc=GrjAowoGcCsQ7kNvgEQ8Tc0&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYA6xmrlQBm3S9e-phq5FaUQA_mBf4C0OnGDCuUDmolkkQ&oe=66CE8958&_nc_sid=8b3546', + works: [106, 107, 108, 109, 110, 111], + types: [0, 1], + }, + { + id: 26, + instagram_id: 'so.so.snap', + name: '소소스냅', + price: '', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/453586551_1032554651807523_5261650247756186642_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=103&_nc_ohc=ms7Cds6RSSUQ7kNvgGbi81H&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYD2nCmvJYNOhiKF6yodhIO-AsnaIcg6L8kzVDL-zihQdA&oe=66CE8F97&_nc_sid=8b3546', + works: [128, 129, 127], + types: [1], + }, + { + id: 27, + instagram_id: 'feelingoflovesnap', + name: '연인감정', + price: '23만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/430901368_747531934018112_4121661451295647691_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=108&_nc_ohc=-6fhY65eccIQ7kNvgHTYMd5&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYC0k8JKf5XQTrYS8fbcrMAcPb9u6t6gvN22EN3WL3YOUQ&oe=66CE66B7&_nc_sid=8b3546', + works: [40, 38, 39], + types: [1], + }, + { + id: 28, + instagram_id: 'jihaeng_snap', + name: '지행이', + price: '8만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/435306007_1143514713749443_8700627001922204082_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=107&_nc_ohc=qDII5Zv7W40Q7kNvgEiZpUY&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYBAJy0ZVtiF-GQhmu2N_bJcjUKncGo3dXJnwo6d9X77wg&oe=66CE8AEA&_nc_sid=8b3546', + works: [48, 49, 50, 51, 52, 53], + types: [0, 1], + }, + { + id: 29, + instagram_id: '_seorok_', + name: '서록', + price: '15만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/455033965_8094821963899882_3189032366043320212_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=110&_nc_ohc=wAoYIihveF8Q7kNvgGMsRp5&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYCqLQj9KBqBfjdxEg1nRo3WJ_R5d5O2l4bVJhAntrM6LQ&oe=66CE7650&_nc_sid=8b3546', + works: [13, 14, 15, 16, 17, 18], + types: [0, 1], + }, + { + id: 30, + instagram_id: 'jipi__snap', + name: '지피', + price: '7만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/436337709_440922348542324_2390230296383197753_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=108&_nc_ohc=Wux2l5iAonoQ7kNvgHUvMzb&edm=APHcPcMBAAAA&ccb=7-5&oh=00_AYBLSwSRFF5_1yWJn_FgPxB_jcXowYRIAZSaBOX8cRkmYg&oe=66CE806A&_nc_sid=bef7bc', + works: [54, 55, 56, 57, 58, 59, 60, 61, 62, 63], + types: [0, 1, 2], + }, + { + id: 31, + instagram_id: '_from.delight_', + name: '프롬딜라이트', + price: '16만원 -', + profile_image_url: + 'https://scontent-gmp1-1.cdninstagram.com/v/t51.2885-19/425214419_919235542792182_1987620801557603099_n.jpg?stp=dst-jpg_s150x150&_nc_ht=scontent-gmp1-1.cdninstagram.com&_nc_cat=106&_nc_ohc=HcQwanq4pYcQ7kNvgE_Z8gI&edm=AOQ1c0wBAAAA&ccb=7-5&oh=00_AYAYUz331FCXjMfHFUH3vObzAKnCwcUUonLTQNCVyVAAkQ&oe=66CE8A5D&_nc_sid=8b3546', + works: [8, 6, 7], + types: [1], }, ]; -export const moodImages_mu: MoodImage[] = [ - { id: 1, src: image_1, alt: 'Mood 1' }, - { id: 2, src: image_2, alt: 'Mood 2' }, - { id: 3, src: image_3, alt: 'Mood 3' }, - { id: 4, src: image_4, alt: 'Mood 4' }, - { id: 5, src: image_1, alt: 'Mood 5' }, - { id: 6, src: image_2, alt: 'Mood 6' }, - { id: 7, src: image_1, alt: 'Mood 1' }, - { id: 8, src: image_2, alt: 'Mood 2' }, - { id: 9, src: image_3, alt: 'Mood 3' }, - { id: 10, src: image_4, alt: 'Mood 4' }, - { id: 11, src: image_1, alt: 'Mood 5' }, - { id: 12, src: image_2, alt: 'Mood 6' }, +export const photoData: SnapImage[] = [ + { + id: 1, + snap_type: 0, + photographer_id: 18, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/Jay44_pic2%2BA4.png', + }, + { + id: 2, + snap_type: 0, + photographer_id: 18, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/Jay44_pic4%2BA5.png', + }, + { + id: 3, + snap_type: 2, + photographer_id: 18, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/Jay44_pic7%2BC2.png', + }, + { + id: 4, + snap_type: 2, + photographer_id: 18, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/Jay44_pic8%2BC5.png', + }, + { + id: 5, + snap_type: 2, + photographer_id: 18, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/Jay44_pic9%2BC2.png', + }, + { + id: 6, + snap_type: 1, + photographer_id: 31, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_from.delight_1%2BB7.png', + }, + { + id: 7, + snap_type: 1, + photographer_id: 31, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_from.delight_2%2BB3.png', + }, + { + id: 8, + snap_type: 1, + photographer_id: 31, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_from.delight_3%2BB4.png', + }, + { + id: 9, + snap_type: 0, + photographer_id: 7, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_greamlight1%2BA1.png', + }, + { + id: 10, + snap_type: 2, + photographer_id: 7, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_greamlight2%2BC1.png', + }, + { + id: 11, + snap_type: 1, + photographer_id: 3, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_hajifilm1%2BB5.png', + }, + { + id: 12, + snap_type: 0, + photographer_id: 3, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_hajifilm2%2BA2.png', + }, + { + id: 13, + snap_type: 1, + photographer_id: 29, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_1%2BB1.png', + }, + { + id: 14, + snap_type: 0, + photographer_id: 29, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_2%2BA1.png', + }, + { + id: 15, + snap_type: 1, + photographer_id: 29, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_3%2BB2.png', + }, + { + id: 16, + snap_type: 0, + photographer_id: 29, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_4%2BA2.png', + }, + { + id: 17, + snap_type: 1, + photographer_id: 29, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_5%2BB1.png', + }, + { + id: 18, + snap_type: 0, + photographer_id: 29, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/_seorok_6%2BA2.png', + }, + { + id: 19, + snap_type: 0, + photographer_id: 19, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/alpaca__snappic1%2BA5.png', + }, + { + id: 20, + snap_type: 0, + photographer_id: 19, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/alpaca__snappic2%2BA7.png', + }, + { + id: 21, + snap_type: 1, + photographer_id: 19, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/alpaca__snappic3%2BB7.png', + }, + { + id: 22, + snap_type: 1, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive1%2BB1.png', + }, + { + id: 23, + snap_type: 1, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive2%2BB1.png', + }, + { + id: 24, + snap_type: 1, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive3%2BB1.png', + }, + { + id: 25, + snap_type: 1, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive4%2BB1.png', + }, + { + id: 26, + snap_type: 0, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive5%2BA1.png', + }, + { + id: 27, + snap_type: 0, + photographer_id: 10, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive6%2BA3.png', + }, + { + id: 28, + snap_type: 0, + photographer_id: 10, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive7%2BA2.png', + }, + { + id: 29, + snap_type: 1, + photographer_id: 10, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ehoomarchive8%2BB1.png', + }, + { + id: 30, + snap_type: 0, + photographer_id: 12, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._1%2BA5.png', + }, + { + id: 31, + snap_type: 1, + photographer_id: 12, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._2%2BB3.png', + }, + { + id: 32, + snap_type: 0, + photographer_id: 12, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._3%2BA5.png', + }, + { + id: 33, + snap_type: 0, + photographer_id: 12, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._4%2BA5.png', + }, + { + id: 34, + snap_type: 0, + photographer_id: 12, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._5%2BA5.png', + }, + { + id: 35, + snap_type: 1, + photographer_id: 12, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._6%2BB3.png', + }, + { + id: 36, + snap_type: 1, + photographer_id: 12, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._7%2BB3.png', + }, + { + id: 37, + snap_type: 1, + photographer_id: 12, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/episode._._8%2BB5.png', + }, + { + id: 38, + snap_type: 1, + photographer_id: 27, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/feelingoflovesnap1%2BB5.png', + }, + { + id: 39, + snap_type: 1, + photographer_id: 27, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/feelingoflovesnap2%2BB5.png', + }, + { + id: 40, + snap_type: 1, + photographer_id: 27, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/feelingoflovesnap3%2BB5.png', + }, + { + id: 41, + snap_type: 0, + photographer_id: 5, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/from.yours.y1%2BA6.png', + }, + { + id: 42, + snap_type: 0, + photographer_id: 5, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/from.yours.y2%2BA1.png', + }, + { + id: 43, + snap_type: 0, + photographer_id: 16, + mood: 5, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/i__.film%2BA5.png', + }, + { + id: 44, + snap_type: 0, + photographer_id: 18, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jay44_pic1%2BA1.png', + }, + { + id: 45, + snap_type: 0, + photographer_id: 18, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jay44_pic3%2BA1.png', + }, + { + id: 46, + snap_type: 0, + photographer_id: 18, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jay44_pic4%2BA2.png', + }, + { + id: 47, + snap_type: 0, + photographer_id: 18, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jay44_pic5%2BA2.png', + }, + { + id: 48, + snap_type: 0, + photographer_id: 28, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap1%2BA1.png', + }, + { + id: 49, + snap_type: 0, + photographer_id: 28, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap2%2BA4.png', + }, + { + id: 50, + snap_type: 1, + photographer_id: 28, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap3%2BB4.png', + }, + { + id: 51, + snap_type: 1, + photographer_id: 28, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap4%2BB7.png', + }, + { + id: 52, + snap_type: 1, + photographer_id: 28, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap5%2BB4.png', + }, + { + id: 53, + snap_type: 0, + photographer_id: 28, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jihaeng_snap6%2BA4.png', + }, + { + id: 54, + snap_type: 0, + photographer_id: 30, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap1%2BA3.png', + }, + { + id: 55, + snap_type: 1, + photographer_id: 30, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap10%2BB2.png', + }, + { + id: 56, + snap_type: 0, + photographer_id: 30, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap2%2BA3.png', + }, + { + id: 57, + snap_type: 0, + photographer_id: 30, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap3%2BA7.png', + }, + { + id: 58, + snap_type: 0, + photographer_id: 30, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap4%2BA7.png', + }, + { + id: 59, + snap_type: 2, + photographer_id: 30, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap5%2BC2.png', + }, + { + id: 60, + snap_type: 2, + photographer_id: 30, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap6%2BC2.png', + }, + { + id: 61, + snap_type: 2, + photographer_id: 30, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap7%2BC1.png', + }, + { + id: 62, + snap_type: 1, + photographer_id: 30, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap8%2BB2.png', + }, + { + id: 63, + snap_type: 1, + photographer_id: 30, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jipi__snap9%2BB2.png', + }, + { + id: 64, + snap_type: 0, + photographer_id: 24, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jjang_precious1%2BA3.png', + }, + { + id: 65, + snap_type: 1, + photographer_id: 24, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jjang_precious2%2BB3.png', + }, + { + id: 66, + snap_type: 0, + photographer_id: 24, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jjang_precious3%2BA7.png', + }, + { + id: 67, + snap_type: 0, + photographer_id: 24, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jjang_precious4%2BA7.png', + }, + { + id: 68, + snap_type: 1, + photographer_id: 24, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/jjang_precious5%2BB3.png', + }, + { + id: 69, + snap_type: 1, + photographer_id: 9, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__10%2BB4.png', + }, + { + id: 70, + snap_type: 1, + photographer_id: 9, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__11%2BB6.png', + }, + { + id: 71, + snap_type: 1, + photographer_id: 9, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__2%2BB1.png', + }, + { + id: 72, + snap_type: 1, + photographer_id: 9, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__3%2BB1.png', + }, + { + id: 73, + snap_type: 1, + photographer_id: 9, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__4%2BB1.png', + }, + { + id: 74, + snap_type: 1, + photographer_id: 9, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__5%2BB2.png', + }, + { + id: 75, + snap_type: 1, + photographer_id: 9, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__6%2BB1.png', + }, + { + id: 76, + snap_type: 1, + photographer_id: 9, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__7%2BB1.png', + }, + { + id: 77, + snap_type: 1, + photographer_id: 9, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__8%2BB2.png', + }, + { + id: 78, + snap_type: 1, + photographer_id: 9, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/koofilm__9%2BB2.png', + }, + { + id: 79, + snap_type: 0, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo1%2BA3.png', + }, + { + id: 80, + snap_type: 0, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo2%2BA3.png', + }, + { + id: 81, + snap_type: 0, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo3%2BA3.png', + }, + { + id: 82, + snap_type: 2, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo4%2BC3.png', + }, + { + id: 83, + snap_type: 2, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo5%2BC3.png', + }, + { + id: 84, + snap_type: 2, + photographer_id: 20, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/lee_han_photo6%2BC3.png', + }, + { + id: 85, + snap_type: 0, + photographer_id: 1, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/mandori.photo1%2BA2.png', + }, + { + id: 86, + snap_type: 1, + photographer_id: 1, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/mandori.photo2%2BB7.png', + }, + { + id: 87, + snap_type: 0, + photographer_id: 1, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/mandori.photo3%2BA1.png', + }, + { + id: 88, + snap_type: 0, + photographer_id: 13, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/oas_isphoto%2BA2.png', + }, + { + id: 89, + snap_type: 1, + photographer_id: 13, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/oas_isphoto1%2BB4.png', + }, + { + id: 90, + snap_type: 1, + photographer_id: 13, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/oas_isphoto4%2BB4.png', + }, + { + id: 91, + snap_type: 1, + photographer_id: 2, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ourownfilm1%2BB3.png', + }, + { + id: 92, + snap_type: 1, + photographer_id: 2, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ourownfilm2%2BB3.png', + }, + { + id: 93, + snap_type: 0, + photographer_id: 2, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ourownfilm4%2BA4.png', + }, + { + id: 94, + snap_type: 0, + photographer_id: 2, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ourownfilm5%2BA4.png', + }, + { + id: 95, + snap_type: 0, + photographer_id: 2, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/ourownfilm6%2BA6.png', + }, + { + id: 96, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff1%2BB4.png', + }, + { + id: 97, + snap_type: 0, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff10%2BA4.png', + }, + { + id: 98, + snap_type: 0, + photographer_id: 14, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff11%2BA3.png', + }, + { + id: 99, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff2%2BB4.png', + }, + { + id: 100, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff3%2BB4.png', + }, + { + id: 101, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff5%2BB4.png', + }, + { + id: 102, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff6%2BB4.png', + }, + { + id: 103, + snap_type: 1, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff7%2BB4.png', + }, + { + id: 104, + snap_type: 0, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff8%2BA4.png', + }, + { + id: 105, + snap_type: 0, + photographer_id: 14, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/peace_tiff9%2BA4.png', + }, + { + id: 106, + snap_type: 0, + photographer_id: 25, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film1%2BA4.png', + }, + { + id: 107, + snap_type: 0, + photographer_id: 25, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film2%2BA3.png', + }, + { + id: 108, + snap_type: 0, + photographer_id: 25, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film3%2BA4.png', + }, + { + id: 109, + snap_type: 1, + photographer_id: 25, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film4%2BB2.png', + }, + { + id: 110, + snap_type: 1, + photographer_id: 25, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film5%2BB2.png', + }, + { + id: 111, + snap_type: 1, + photographer_id: 25, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seolha_film6%2BB1.png', + }, + { + id: 112, + snap_type: 1, + photographer_id: 8, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap1%2BB4.jpg', + }, + { + id: 113, + snap_type: 1, + photographer_id: 8, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap1%2BB4.png', + }, + { + id: 114, + snap_type: 1, + photographer_id: 8, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap2%2BB7.png', + }, + { + id: 115, + snap_type: 0, + photographer_id: 8, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap3%2BA2.png', + }, + { + id: 116, + snap_type: 1, + photographer_id: 8, + mood: 7, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap4%2BB7.png', + }, + { + id: 117, + snap_type: 1, + photographer_id: 8, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap5%2BB4.png', + }, + { + id: 118, + snap_type: 1, + photographer_id: 8, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap6%2BB4.png', + }, + { + id: 119, + snap_type: 1, + photographer_id: 8, + mood: 4, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap7%2BB4.png', + }, + { + id: 120, + snap_type: 0, + photographer_id: 8, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/seoro.snap8%2BA2.png', + }, + { + id: 121, + snap_type: 0, + photographer_id: 21, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film1%2BA1.png', + }, + { + id: 122, + snap_type: 1, + photographer_id: 21, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film1%2BB3.png', + }, + { + id: 123, + snap_type: 0, + photographer_id: 21, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film2%2BA1.png', + }, + { + id: 124, + snap_type: 1, + photographer_id: 21, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film5%2BB3.png', + }, + { + id: 125, + snap_type: 1, + photographer_id: 21, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film6%2BB3.png', + }, + { + id: 126, + snap_type: 1, + photographer_id: 21, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sian_film7%2BB3.png', + }, + { + id: 127, + snap_type: 1, + photographer_id: 26, + mood: 1, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/so.so.snap1%2BB1.png', + }, + { + id: 128, + snap_type: 1, + photographer_id: 26, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/so.so.snap2%2BB3.png', + }, + { + id: 129, + snap_type: 1, + photographer_id: 26, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/so.so.snap3%2BB3.png', + }, + { + id: 130, + snap_type: 0, + photographer_id: 4, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae1%2BA6.png', + }, + { + id: 131, + snap_type: 0, + photographer_id: 4, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae2%2BA6.png', + }, + { + id: 132, + snap_type: 0, + photographer_id: 4, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae3%2BA6.png', + }, + { + id: 133, + snap_type: 1, + photographer_id: 4, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae4%2BB2.png', + }, + { + id: 134, + snap_type: 1, + photographer_id: 4, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae5%2BB2.png', + }, + { + id: 135, + snap_type: 1, + photographer_id: 4, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/studio__jae6%2BB2.png', + }, + { + id: 136, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap1%2BA2.png', + }, + { + id: 137, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap2%2BA2.png', + }, + { + id: 138, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap3%2BA2.png', + }, + { + id: 139, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap4%2BA2.png', + }, + { + id: 140, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap5%2BA2.png', + }, + { + id: 141, + snap_type: 0, + photographer_id: 17, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/sunnya_snap6%2BA2.png', + }, + { + id: 142, + snap_type: 1, + photographer_id: 6, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic1%2BB6.png', + }, + { + id: 143, + snap_type: 0, + photographer_id: 6, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic2%2BA3.png', + }, + { + id: 144, + snap_type: 0, + photographer_id: 6, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic3%2BA3.png', + }, + { + id: 145, + snap_type: 0, + photographer_id: 6, + mood: 3, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic4%2BA3.png', + }, + { + id: 146, + snap_type: 0, + photographer_id: 6, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic5%2BA2.png', + }, + { + id: 147, + snap_type: 0, + photographer_id: 6, + mood: 2, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic6%2BA2.png', + }, + { + id: 148, + snap_type: 1, + photographer_id: 6, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic8%2BB6.png', + }, + { + id: 149, + snap_type: 1, + photographer_id: 6, + mood: 6, + url: 'https://chik.s3.ap-northeast-2.amazonaws.com/photo/usee_pic9%2BB6.png', + }, ]; -export const group1 = moodImages_mu.slice(0, 4); -export const group2 = moodImages_mu.slice(4, 8); -export const group3 = moodImages_mu.slice(8, 12); +export const images_personal = photoData.filter((item) => item.snap_type === 0); +export const images_couple = photoData.filter((item) => item.snap_type === 1); +export const images_wedding = photoData.filter((item) => item.snap_type === 2); diff --git a/src/lib/utils.ts b/src/lib/utils.ts index 0dba1f8..559af11 100644 --- a/src/lib/utils.ts +++ b/src/lib/utils.ts @@ -22,3 +22,24 @@ export const handlePhoneNumberChange = ( setValue(formattedNumber); } }; + +// Base64 encoded SVG to use as placeholder +export const toBase64 = (str: string) => + typeof window === 'undefined' + ? Buffer.from(str).toString('base64') + : window.btoa(str); + +// SVG shimmer effect +export const shimmer = (w: number, h: number) => ` + + + + + + + + + + + +`; diff --git a/src/types/index.ts b/src/types/index.ts index ebb86ec..ada8e70 100644 --- a/src/types/index.ts +++ b/src/types/index.ts @@ -4,19 +4,31 @@ export interface MoodImage { alt: string; } +// export interface SnapType { +// id: 0|1|2; +// title: string; +// image: any; +// } + +// 개인/일상, 단체/우정, 커플/결혼 +export type SnapType = 0 | 1 | 2; + +export type MoodType = 1 | 2 | 3 | 4 | 5 | 6 | 7; + +export interface SnapImage { + id: number; // 순서 -> 규민이가 작성하는 JSON 배열 순서대로 + snap_type: SnapType; // 노가다 + photographer_id: number | null; // 순서 + mood: MoodType; // A1~A7 -> 1~7 채워줘야할듯. + url: string; +} + export interface Photographer { id: number; name: string; - instagramId: string; - profileImg: any; - workImages: string[]; - services: string[]; + instagram_id: string; + profile_image_url: string; + works: number[]; + types: SnapType[]; price: string; } - -export interface SnapType { - id: string; - title: string; - description: string; - image: any; -}