Skip to content

Commit

Permalink
refactor: native handler 빈값 추가
Browse files Browse the repository at this point in the history
  • Loading branch information
sikkzz committed Feb 7, 2025
1 parent dea2ba5 commit 8697b80
Show file tree
Hide file tree
Showing 6 changed files with 16 additions and 11 deletions.
4 changes: 2 additions & 2 deletions src/components/Home/Home.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,12 +24,12 @@ const Home = () => {
<IconButton
text="갤러리"
iconName="gallery"
onClick={() => send({ type: AppBridgeMessageType.OPEN_GALLERY })}
onClick={() => send({ type: AppBridgeMessageType.OPEN_GALLERY, payload: "" })}
/>
<IconButton
text="카메라"
iconName="camera"
onClick={() => send({ type: AppBridgeMessageType.OPEN_CAMERA })}
onClick={() => send({ type: AppBridgeMessageType.OPEN_CAMERA, payload: "" })}
/>
</div>
</div>
Expand Down
2 changes: 1 addition & 1 deletion src/components/RecognitionFail/RecognitionFail.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ const RecognitionFail = () => {
<Button
text="다시 촬영하기"
variant="secondary"
onClick={() => send({ type: AppBridgeMessageType.OPEN_CAMERA })}
onClick={() => send({ type: AppBridgeMessageType.OPEN_CAMERA, payload: "" })}
/>
</div>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,17 @@ export type AppBridgeMessage =

export interface OpenCameraMessage {
type: AppBridgeMessageType.OPEN_CAMERA;
payload: "";
}

export interface OpenGalleryMessage {
type: AppBridgeMessageType.OPEN_GALLERY;
payload: "";
}

export interface ShareMessage {
type: AppBridgeMessageType.SHARE;
payload: "";
}

export interface CreateReviewMessage {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@ import { AppBridgeMessageType } from "@/components/provider/AppBridgeProvider/Ap
import type { AppBridgeMessage } from "@/components/provider/AppBridgeProvider/AppBridgeMessage.types";

const iosHandlers = {
[AppBridgeMessageType.OPEN_CAMERA]: () => window.webkit?.messageHandlers.openCamera.postMessage(),
[AppBridgeMessageType.OPEN_GALLERY]: () =>
window.webkit?.messageHandlers.openGallery.postMessage(),
[AppBridgeMessageType.SHARE]: () => window.webkit?.messageHandlers.share.postMessage(),
[AppBridgeMessageType.OPEN_CAMERA]: (message: string) =>
window.webkit?.messageHandlers.openCamera.postMessage(message),
[AppBridgeMessageType.OPEN_GALLERY]: (message: string) =>
window.webkit?.messageHandlers.openGallery.postMessage(message),
[AppBridgeMessageType.SHARE]: (message: string) =>
window.webkit?.messageHandlers.share.postMessage(message),
[AppBridgeMessageType.CREATE_REVIEW]: (message: { payload: { json: string } }) =>
window.webkit?.messageHandlers.createReview.postMessage(message.payload.json),
[AppBridgeMessageType.COPY]: (message: { payload: { json: string } }) =>
Expand Down
2 changes: 1 addition & 1 deletion src/pages/HomePage.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ const HomePage = () => {
<Navbar.LeftButton onClick={navigateToHome}>
<Icon name="logo" />
</Navbar.LeftButton>
<Navbar.RightButton onClick={() => send({ type: AppBridgeMessageType.SHARE })}>
<Navbar.RightButton onClick={() => send({ type: AppBridgeMessageType.SHARE, payload: "" })}>
<Text variant="bodySm" color="secondary">
앱 공유하기
</Text>
Expand Down
6 changes: 3 additions & 3 deletions src/types/global.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ declare global {
interface Window {
webkit?: {
messageHandlers: {
openCamera: MessageHandler;
openGallery: MessageHandler;
share: MessageHandler;
openCamera: MessageHandler<string>;
openGallery: MessageHandler<string>;
share: MessageHandler<string>;
createReview: MessageHandler<string>;
copy: MessageHandler<string>;
};
Expand Down

0 comments on commit 8697b80

Please sign in to comment.