diff --git a/docs/docs/react/components/AspectRatio.mdx b/docs/docs/react/components/AspectRatio.mdx
index 69ade0bba..1bf68cfa1 100644
--- a/docs/docs/react/components/AspectRatio.mdx
+++ b/docs/docs/react/components/AspectRatio.mdx
@@ -3,7 +3,7 @@ import { AspectRatio } from '@modern-kit/react';
# AspectRatio
-주어진 **[aspect-ratio](https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio)** 비율을 맞춰주기 위해 선언적으로 사용하는 유틸 컴포넌트입니다.
+주어진 **[aspect-ratio](https://developer.mozilla.org/en-US/docs/Web/CSS/aspect-ratio)** 비율을 맞춰주기 위해 선언적으로 사용하는 유틸 컴포넌트입니다.
미리 영역을 확보하여 `Layout Shift`를 방지하는데 효과적입니다.
@@ -13,7 +13,7 @@ import { AspectRatio } from '@modern-kit/react';
- `asChild` 속성이 `true`라면 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 을 통해 자식 요소를 그대로 렌더링하고, 자식 요소에 `aspect-ratio` 속성을 적용해 영역을 확보합니다.
- Slot은 자식으로 `단일 요소`만 허용됩니다.
- Slot은 자식으로 컴포넌트가 올 경우 `forwardRef`, `props`를 허용해야 합니다. 허용하지 않으면 정상적으로 동작하지 않습니다.
- - 자세한 내용은 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 문서를 참고해주세요.
+ - `asChild` 속성을 사용 할 경우 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 문서를 참고해주세요.
diff --git a/docs/docs/react/components/InView.mdx b/docs/docs/react/components/InView.mdx
index 14d218ab7..b708db3e1 100644
--- a/docs/docs/react/components/InView.mdx
+++ b/docs/docs/react/components/InView.mdx
@@ -4,17 +4,18 @@ import { InView } from '@modern-kit/react';
`InView`는 `IntersectionObserver`를 선언적으로 활용 할 수 있는 컴포넌트입니다.
+- `@modern-kit/react`의 **[useIntersectionObserver](https://modern-agile-team.github.io/modern-kit/docs/react/hooks/useIntersectionObserver)** 훅을 사용하여 구현되었습니다.
+
관찰 대상이 `Viewport`에 노출될 때(`onIntersectStart`) 혹은 나갈 때(`onIntersectEnd`) 특정 action 함수를 호출 할 수 있는 컴포넌트입니다.
다형성을 지원하기 때문에 `as`, `asChild` 속성을 지원합니다.
- 기본적으로 `div` 태그로 자식 요소를 감싸서 렌더링하며, `as` 속성을 통해 감싸는 요소를 특정 요소로 변경해 렌더링할 수 있습니다. 이때 `해당 요소가 관찰 대상`입니다.
-- `asChild` 속성이 true라면 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 을 통해 자식 요소를 그대로 렌더링하고, `자식 요소를 관찰 대상으로 설정`할 수 있습니다.
+- `asChild` 속성이 true라면 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 을 통해 래퍼 요소 없이 자식 요소를 그대로 렌더링하고, `자식 요소를 관찰 대상으로 설정`할 수 있습니다.
- Slot의 자식은 `단일 요소`만 허용됩니다.
- Slot의 자식으로 컴포넌트가 올 경우 `forwardRef`, `props`를 허용해야 합니다.
- - 자세한 내용은 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 문서를 참고해주세요.
+ - `asChild` 속성을 사용 할 경우 **[Slot](https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot)** 문서를 참고해주세요.
-`@modern-kit/react`의 **[useIntersectionObserver](https://modern-agile-team.github.io/modern-kit/docs/react/hooks/useIntersectionObserver)** 훅을 사용하여 구현되었습니다.
diff --git a/docs/docs/react/components/Slot.mdx b/docs/docs/react/components/Slot.mdx
index 078777284..f2d51cb9d 100644
--- a/docs/docs/react/components/Slot.mdx
+++ b/docs/docs/react/components/Slot.mdx
@@ -10,7 +10,7 @@ Slot은 부모 컴포넌트의 기능을 자식 컴포넌트에 전달하는 합
- 자식 컴포넌트의 구현을 변경하지 않고도 새로운 기능을 추가할 수 있습니다
- 컴포넌트 간의 결합도를 낮추고 재사용성을 높일 수 있습니다
-예를 들어 **[InView](https://modern-agile-team.github.io/modern-kit/docs/react/components/InView)** 나 **[AspectRatio](https://modern-agile-team.github.io/modern-kit/docs/react/components/AspectRatio)** 와 같은 컴포넌트에서 `asChild` prop과 함께 사용되어, 래퍼 요소 없이 자식 컴포넌트에 직접 기능을 주입할 수 있습니다.
+예를 들어 **[InView](https://modern-agile-team.github.io/modern-kit/docs/react/components/InView)** 나 **[AspectRatio](https://modern-agile-team.github.io/modern-kit/docs/react/components/AspectRatio)** 와 같은 컴포넌트에서 `asChild` prop을 사용해서, 래퍼 요소 없이 자식 컴포넌트에 직접 기능을 주입할 수 있습니다.
Slot은 아래와 같은 특징이 있습니다.
1. 자식 요소로 `단일 요소`만 허용됩니다.
@@ -38,6 +38,7 @@ Slot은 아래와 같은 특징이 있습니다.
```
2. 자식 요소로 컴포넌트가 온다면 해당 컴포넌트는 필수적으로 `forwardRef`, `props`를 허용해야 합니다. 허용하지 않으면 기능이 정상적으로 동작하지 않습니다.
+- **[radix-ui#your-component-must-spread-props](https://www.radix-ui.com/primitives/docs/guides/composition#your-component-must-spread-props)**
- **[radix-ui#your-component-must-forward-ref](https://www.radix-ui.com/primitives/docs/guides/composition#your-component-must-forward-ref)**
```tsx title="typescript"
const MyButton = React.forwardRef((props, forwardedRef) => (
diff --git a/packages/react/src/components/AspectRatio/index.tsx b/packages/react/src/components/AspectRatio/index.tsx
index 1641b52e1..508dcc8f3 100644
--- a/packages/react/src/components/AspectRatio/index.tsx
+++ b/packages/react/src/components/AspectRatio/index.tsx
@@ -22,6 +22,7 @@ interface AspectRatioProps {
*
* - 기본적으로 `div` 태그로 자식 요소를 감싸서 렌더링하며, `as` 속성을 통해 감싸는 요소를 특정 요소로 변경해 렌더링할 수 있습니다. 이때, 해당 요소에 `aspect-ratio` 속성을 적용해 영역을 확보합니다.
* - `asChild` 속성이 `true`라면 `Slot`을 통해 자식 요소를 그대로 렌더링하고, 자식 요소에 `aspect-ratio` 속성을 적용해 영역을 확보합니다.
+ * - `asChild` 속성을 사용 할 경우 아래 링크를 참고하세요.
*
* @see https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot
*
@@ -31,12 +32,12 @@ interface AspectRatioProps {
* @param {CSSProperties} props.style - 추가적인 스타일을 지정합니다.
* @param {string} props.className - 추가적인 클래스를 지정합니다.
* @param {string} props.as - 감싸는 요소를 지정합니다. 기본 값은 `div`입니다. 해당 요소에 `aspect-ratio` 속성을 적용해 영역을 확보합니다.
- * @param {boolean} props.asChild - 자식 요소를 그대로 렌더링할지 여부를 지정합니다. `true`일 경우 자식 요소가 그대로 렌더링되며, 자식 요소에 `aspect-ratio` 속성이 적용됩니다.
- *
+ * @param {boolean} props.asChild - `true`일 경우 `Slot`을 통해 자식 요소를 그대로 렌더링하고, 자식 요소에 `aspect-ratio` 속성을 적용해 영역을 확보합니다.
* @returns {JSX.Element} 주어진 aspect-ratio 비율에 맞춰 스타일이 적용된 자식 요소를 반환합니다.
*
* @example
* ```tsx
+ * // Default
*
*
*
@@ -44,6 +45,7 @@ interface AspectRatioProps {
*
* @example
* ```tsx
+ * // as article
*
*
*
@@ -51,6 +53,7 @@ interface AspectRatioProps {
*
* @example
* ```tsx
+ * // asChild
*
*
*
diff --git a/packages/react/src/components/InView/index.tsx b/packages/react/src/components/InView/index.tsx
index 06431a26c..ff4e9b8b1 100644
--- a/packages/react/src/components/InView/index.tsx
+++ b/packages/react/src/components/InView/index.tsx
@@ -24,15 +24,16 @@ interface InViewProps extends UseIntersectionObserverProps {
* 다형성을 지원하기 때문에 `as`, `asChild` 속성을 지원합니다.
*
* - 기본적으로 `div` 태그로 자식 요소를 감싸서 렌더링하며, `as` 속성을 통해 감싸는 요소를 특정 요소로 변경해 렌더링할 수 있습니다. 이때 해당 요소가 관찰 대상입니다.
- * - `asChild` 속성이 `true`라면 `Slot`을 통해 자식 요소를 그대로 렌더링하고, 자식 요소를 관찰 대상으로 설정할 수 있습니다.
+ * - `asChild` 속성이 `true`라면 `Slot`을 통해 래퍼 요소 없이 자식 요소를 그대로 렌더링하고, 자식 요소를 관찰 대상으로 설정할 수 있습니다.
+ * - `asChild` 속성을 사용 할 경우 아래 링크를 참고하세요.
*
* @see https://modern-agile-team.github.io/modern-kit/docs/react/components/Slot
*
*
* @param {InViewProps} props - 컴포넌트에 전달되는 속성들입니다.
* @param {React.ReactNode} props.children - 관찰할 자식 요소입니다.
- * @param {string} props.as - 감싸는 요소를 특정 요소로 변경합니다. 기본 값은 `div`입니다. 해당 요소가 관찰 대상입니다.
- * @param {boolean} props.asChild - 자식 요소를 그대로 렌더링할지 여부를 나타냅니다. `true`일 경우 자식 요소가 그대로 렌더링되며, 자식 요소가 관찰 대상입니다.
+ * @param {string} props.as - 관찰할 요소의 타입입니다. 기본값은 `div`입니다.
+ * @param {boolean} [props.asChild=false] - 자식 요소를 래퍼 요소 없이 렌더링하고, 관찰 대상으로 설정할지 여부입니다. `true`일 경우 `Slot` 컴포넌트를 통해 자식 요소에 직접 props를 전달합니다.
* @param {(entry: IntersectionObserverEntry) => void} props.onIntersectStart - 타겟 요소가 viewport 내에 들어갈 때 호출되는 콜백 함수입니다.
* @param {(entry: IntersectionObserverEntry) => void} props.onIntersectEnd - 타겟 요소가 viewport에서 나갈 때 호출되는 콜백 함수입니다.
* @param {number | number[]} props.threshold - 관찰을 시작할 viewport의 가시성 비율입니다.
@@ -45,15 +46,15 @@ interface InViewProps extends UseIntersectionObserverProps {
*
* @example
* ```tsx
- * // 기본적으로 div로 감싸지며, 해당 div를 관찰 대상으로 설정합니다.
+ * // 기본적으로 `div`로 감싸지며, 해당 `div`를 관찰 대상으로 설정합니다.
*
- * Content1
+ * Contents
*
* ```
*
* @example
* ```tsx
- * // as 속성을 통해 특정 요소로 렌더링할 수 있으며, 해당 요소가 관찰 대상입니다.
+ * // `as` 속성을 통해 감싸는 요소를 특정 요소로 변경해 렌더링할 수 있습니다. 해당 요소를 관찰 대상으로 설정합니다.
*
* List Item1
* List Item2
@@ -62,9 +63,9 @@ interface InViewProps extends UseIntersectionObserverProps {
*
* @example
* ```tsx
- * // asChild 속성을 통해 자식 요소를 그대로 렌더링하고, 자식 요소를 관찰 대상으로 설정할 수 있습니다.
+ * // `asChild`가 `true`라면 `Slot`을 통해 래퍼 요소 없이 자식 요소를 그대로 렌더링하고, 자식 요소를 관찰 대상으로 설정합니다.
*
- * Box1
+ * Contents
*
* ```
*/
diff --git a/packages/react/src/components/Slot/index.tsx b/packages/react/src/components/Slot/index.tsx
index 761519319..d1a6cfd37 100644
--- a/packages/react/src/components/Slot/index.tsx
+++ b/packages/react/src/components/Slot/index.tsx
@@ -17,7 +17,9 @@ export type SlotProps = React.PropsWithChildren<
* Slot은 아래와 같은 특징이 있습니다.
* - 자식 요소로 `단일 요소`만 허용됩니다.
* - 자식 요소로 컴포넌트가 온다면 해당 컴포넌트는 필수적으로 `forwardRef`, `props`를 허용해야 합니다. 허용하지 않으면 기능이 정상적으로 동작하지 않습니다.
+ * - Slot을 사용 할 경우 아래 링크를 참고하세요.
*
+ * @see https://www.radix-ui.com/primitives/docs/guides/composition#your-component-must-spread-props
* @see https://www.radix-ui.com/primitives/docs/guides/composition#your-component-must-forward-ref
*
* @example