import './miniAppSettings.scss'; import React, { useContext, useEffect, useState } from 'react'; import { useTranslation } from 'react-i18next'; import { IonButton, IonButtons, IonContent, IonHeader, IonItem, IonItemDivider, IonLabel, IonList, IonListHeader, IonTitle, IonToolbar, } from '@ionic/react'; import Button from '../../components/Button'; import Modal from '../../components/Modal'; import Switch from '../../components/Switch'; import { MiniAppContext } from '../../context/miniAppContext'; export interface MiniAppSettingsProps { visible: boolean; toggleVisible: (v: boolean) => void; } const MiniAppSettings: React.FC = (props) => { const { t } = useTranslation(); const { visible, toggleVisible } = props; const { state, dispatch } = useContext(MiniAppContext); const [navigationStyle, setNavigationStyle] = useState('none'); useEffect(() => { if (state.window.navigationStyle !== 'none' && visible) { setNavigationStyle(state.window.navigationStyle || 'none'); dispatch({ type: 'UPDATE_WINDOW', payload: { navigationStyle: 'none' }, }); } if (!visible && navigationStyle !== 'none') { dispatch({ type: 'UPDATE_WINDOW', payload: { navigationStyle }, }); } }, [state.window.navigationStyle, dispatch, visible, navigationStyle]); return (
toggleVisible(false)}> {t('button.close')} {t('menuSheet.settings')} お知らせの受信
サービスからのお知らせ
必須
おトクな情報などをお届けします
許可している情報
PayPayに登録されている情報
電話番号
toggleSwitch('paypay_information', i)} />
メールアドレス
必須
未登録
PayPay残高の参照
toggleSwitch('paypay_information', i)} />
氏名
未登録
表示名
080808080
プロフィール画像
未登録
本人確認情報
本人確認情報
toggleSwitch('paypay_information', i)} />
支払い方法
決済時にPayPayでの支払い
必須
現在位置情報
現在位置情報
toggleSwitch('paypay_information', i)} />
デバイスへのアクセス
カメラへのアクセス
toggleSwitch('paypay_information', i)} />
写真へのアクセス
toggleSwitch('paypay_information', i)} />
連絡先へのアクセス
toggleSwitch('paypay_information', i)} />
デバイス情報
端末のバッテリー情報
toggleSwitch('paypay_information', i)} />
); }; export default MiniAppSettings;