From b41bb63286b692246819d1ce301f55883b787076 Mon Sep 17 00:00:00 2001 From: 03hoho03 Date: Sun, 7 Apr 2024 16:01:35 +0900 Subject: [PATCH 1/9] =?UTF-8?q?[#7]=20=EC=95=84=EB=B6=88=EC=8B=A0=20?= =?UTF-8?q?=EA=B4=80=EB=A0=A8=20=EC=83=81=EC=88=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/_constants/ibulsin.ts | 53 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 app/_constants/ibulsin.ts diff --git a/app/_constants/ibulsin.ts b/app/_constants/ibulsin.ts new file mode 100644 index 0000000..bdc4f65 --- /dev/null +++ b/app/_constants/ibulsin.ts @@ -0,0 +1,53 @@ +interface ibulsinVariantsType { + outline: 'outline' + why: 'why' + marketResponse: 'marketResponse' + XYZ: 'XYZ' + xyz: 'xyz' + pretotyping: 'pretotyping' +} +interface explainDataType { + type: string + content: string +} + +export const explainData: explainDataType[] = [ + { + type: 'marketResponse', + content: `아이디어: 넷플릭스(초기 DVD 기반 모델) + + 시장호응가설: 우편 배송 기반의 DVD 대여 서비스를 월정액 요금제, 반납 지연 과태료 무료 정책과 결합하여 많은 사람들이 비디오 가게를 이용하는 대신 우리 서비스에 가입할 것이다. + + 이와같이 시장이 우리의 제품이나 서비스를 어떻게 받아들이지에 대해 정확한 정의를 내리고, 해당 시장 수요가 존재한다는 증거를 찾아내는 것이 시장호응가설 단계에서 해야 할 일이에요.`, + }, + { + type: 'XYZ', + content: `X는 표적시장의 몇 퍼센트를 차지할 수 있을지, Y는 어떤 표적시장에 대한, Z는 표적 시장이 제품에 대해 어떤 방식으로 어느 범위까지 호응 할 것인가를 의미해요 + + 예제: 적어도 10퍼센트의 한국의 직장인들은 관심사가 같은 사람들과 출퇴근 이야기를 나누고 싶어 할 것이다. + `, + }, + { + type: 'xyz', + content: `XYZ 법칙 중 범위를 줄여 봐요. + + 예제: 적어도 10퍼센트의 분당의 직장인들은 관심사가 같은 사람들과 출근에 이야기를 나누고 싶어 할 것 + `, + }, + { + type: 'pretotyping', + content: `설정한 xyz법칙을 간단하게 테스트해봐요. + + 예제: 가볍게 전단지와 홍보패널을 만들어 출퇴근시간에 수원에서 판교까지가는 버스에서 설계한 상품을 얘기하여 사람들의 반응을 살펴본다. + `, + }, +] + +export const ibulsinVariants: ibulsinVariantsType = { + outline: 'outline', + why: 'why', + marketResponse: 'marketResponse', + XYZ: 'XYZ', + xyz: 'xyz', + pretotyping: 'pretotyping', +} From 6d22cd16584b9632533a23b8ed043f99edeabd93 Mon Sep 17 00:00:00 2001 From: 03hoho03 Date: Sun, 7 Apr 2024 16:02:12 +0900 Subject: [PATCH 2/9] =?UTF-8?q?[#23]=20=EC=A0=81=EA=B7=B9=EC=A0=81=20?= =?UTF-8?q?=ED=88=AC=EC=9E=90=EA=B8=B0=EB=B2=95=20=EB=AA=A9=EB=A1=9D=20ato?= =?UTF-8?q?m?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/_store/atom.ts | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 app/_store/atom.ts diff --git a/app/_store/atom.ts b/app/_store/atom.ts new file mode 100644 index 0000000..41cd9b5 --- /dev/null +++ b/app/_store/atom.ts @@ -0,0 +1,24 @@ +import { atom } from 'recoil' + +export interface ActiveInvestmentItemType { + id: string + name: string + score: number +} + +// type ActiveType = Omit +// 시온 그는 신이야... +// 고오급 타입 스크립트,,, + +const investmentItemAtom = atom({ + key: 'investmentItemAtom', + default: [ + { + id: new Date().toISOString(), + name: '', + score: 0, + }, + ], +}) + +export default investmentItemAtom From 320e92b798856089a92a275a91ab9af22cf2c262 Mon Sep 17 00:00:00 2001 From: 03hoho03 Date: Sun, 7 Apr 2024 16:02:43 +0900 Subject: [PATCH 3/9] =?UTF-8?q?[#7]=20xyz=EA=B0=80=EC=84=A4=20=ED=94=84?= =?UTF-8?q?=EB=A6=AC=ED=86=A0=ED=83=80=EC=9D=B4=ED=95=91=20teatarea=20?= =?UTF-8?q?=EC=B6=94=EA=B0=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ibulsin/_components/Textarea/index.tsx | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/app/(route)/verification/ibulsin/_components/Textarea/index.tsx b/app/(route)/verification/ibulsin/_components/Textarea/index.tsx index eb6390d..ad2fa2b 100644 --- a/app/(route)/verification/ibulsin/_components/Textarea/index.tsx +++ b/app/(route)/verification/ibulsin/_components/Textarea/index.tsx @@ -6,11 +6,10 @@ import cn from 'classnames' import { useForm } from 'react-hook-form' interface TextAreaProps { - fieldKey: 'outline' | 'why' | 'marketResponse' | 'XYZ' + fieldKey: 'outline' | 'why' | 'marketResponse' | 'XYZ' | 'xyz' | 'pretotyping' } function Textarea({ fieldKey }: TextAreaProps) { - console.log(fieldKey) const { register, watch } = useForm() const outlineField = register('outline', { @@ -29,6 +28,14 @@ function Textarea({ fieldKey }: TextAreaProps) { required: '', maxLength: { value: 500, message: '최대 500자까지 작성가능합니다.' }, }) + const xyzField = register('xyz', { + required: '', + maxLength: { value: 500, message: '최대 500자까지 작성가능합니다.' }, + }) + const pretotypingField = register('pretotyping', { + required: '', + maxLength: { value: 500, message: '최대 500자까지 작성가능합니다.' }, + }) const fields = { outline: { @@ -47,6 +54,14 @@ function Textarea({ fieldKey }: TextAreaProps) { register: XYZField, MaxLength: 500, }, + xyz: { + register: xyzField, + MaxLength: 500, + }, + pretotyping: { + register: pretotypingField, + MaxLength: 500, + }, } const countCharacters = () => { From 352bab4f4a4f7a2d4a60a65c47134f18a9c17252 Mon Sep 17 00:00:00 2001 From: 03hoho03 Date: Sun, 7 Apr 2024 16:03:20 +0900 Subject: [PATCH 4/9] =?UTF-8?q?[#7]=20xyz=EA=B0=80=EC=84=A4,=20=ED=94=84?= =?UTF-8?q?=EB=A6=AC=ED=86=A0=ED=83=80=EC=9D=B4=ED=95=91=20=EA=B5=AC?= =?UTF-8?q?=ED=98=84?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ibulsin/_components/Step3/index.tsx | 55 ++++++++++++++++++- 1 file changed, 54 insertions(+), 1 deletion(-) diff --git a/app/(route)/verification/ibulsin/_components/Step3/index.tsx b/app/(route)/verification/ibulsin/_components/Step3/index.tsx index 26a1f93..8de3ae7 100644 --- a/app/(route)/verification/ibulsin/_components/Step3/index.tsx +++ b/app/(route)/verification/ibulsin/_components/Step3/index.tsx @@ -2,9 +2,62 @@ import React from 'react' import S from './index.module.css' +import Link from 'next/link' +import Textarea from '../Textarea' +import MoreExplainBtn from '../MoreExplainBtn' +import { ibulsinVariants } from '@/app/_constants/ibulsin' function Step3() { - return
hello
+ const { xyz, pretotyping } = ibulsinVariants + + return ( +
+
+

STEP 3

+

+ xyz 가설과 적극적 투자지표를 +
+ 세워보아요. +

+
+
+
+
+

xyz 가설

+ +
+

+ XYZ 법칙으로 표현된 시장 호응 가설의 범위를 잘게 쪼개 xyz법칙으로 + 표현해보세요. +

+