233 lines
9.8 KiB
Diff
233 lines
9.8 KiB
Diff
diff --git a/src/screens/Settings/AboutSettings.tsx b/src/screens/Settings/AboutSettings.tsx
|
|
index 9ba067a2f..e34b9f9b0 100644
|
|
--- a/src/screens/Settings/AboutSettings.tsx
|
|
+++ b/src/screens/Settings/AboutSettings.tsx
|
|
@@ -78,7 +78,7 @@ export function AboutSettingsScreen({}: Props) {
|
|
<Layout.Content>
|
|
<SettingsList.Container>
|
|
<SettingsList.LinkItem
|
|
- to="https://bsky.social/about/support/tos"
|
|
+ to="/support/tos"
|
|
label={_(msg`Terms of Service`)}>
|
|
<SettingsList.ItemIcon icon={NewspaperIcon} />
|
|
<SettingsList.ItemText>
|
|
@@ -86,7 +86,7 @@ export function AboutSettingsScreen({}: Props) {
|
|
</SettingsList.ItemText>
|
|
</SettingsList.LinkItem>
|
|
<SettingsList.LinkItem
|
|
- to="https://bsky.social/about/support/privacy-policy"
|
|
+ to="/support/privacy-policy"
|
|
label={_(msg`Privacy Policy`)}>
|
|
<SettingsList.ItemIcon icon={NewspaperIcon} />
|
|
<SettingsList.ItemText>
|
|
diff --git a/src/screens/Takendown.tsx b/src/screens/Takendown.tsx
|
|
index 660aecf1a..f19a62c0f 100644
|
|
--- a/src/screens/Takendown.tsx
|
|
+++ b/src/screens/Takendown.tsx
|
|
@@ -212,10 +212,10 @@ export function Takendown() {
|
|
<Trans>
|
|
Your account was found to be in violation of the{' '}
|
|
<SimpleInlineLinkText
|
|
- label={_(msg`Bluesky Social Terms of Service`)}
|
|
- to="https://bsky.social/about/support/tos"
|
|
+ label={_(msg`syu.is Terms of Service`)}
|
|
+ to="/support/tos"
|
|
style={[a.text_md, a.leading_snug]}>
|
|
- Bluesky Social Terms of Service
|
|
+ syu.is Terms of Service
|
|
</SimpleInlineLinkText>
|
|
. You have been sent an email outlining the specific violation
|
|
and suspension period, if applicable. You can appeal this
|
|
diff --git a/src/view/screens/PrivacyPolicy.tsx b/src/view/screens/PrivacyPolicy.tsx
|
|
index a89eaadc4..71ce7c81f 100644
|
|
--- a/src/view/screens/PrivacyPolicy.tsx
|
|
+++ b/src/view/screens/PrivacyPolicy.tsx
|
|
@@ -1,51 +1,49 @@
|
|
import React from 'react'
|
|
-import {View} from 'react-native'
|
|
-import {msg, Trans} from '@lingui/macro'
|
|
-import {useLingui} from '@lingui/react'
|
|
-import {useFocusEffect} from '@react-navigation/native'
|
|
-
|
|
-import {usePalette} from '#/lib/hooks/usePalette'
|
|
-import {
|
|
- type CommonNavigatorParams,
|
|
- type NativeStackScreenProps,
|
|
-} from '#/lib/routes/types'
|
|
-import {s} from '#/lib/styles'
|
|
-import {useSetMinimalShellMode} from '#/state/shell'
|
|
-import {TextLink} from '#/view/com/util/Link'
|
|
-import {Text} from '#/view/com/util/text/Text'
|
|
-import {ScrollView} from '#/view/com/util/Views'
|
|
+import {ScrollView} from 'react-native'
|
|
import * as Layout from '#/components/Layout'
|
|
-import {ViewHeader} from '../com/util/ViewHeader'
|
|
-
|
|
-type Props = NativeStackScreenProps<CommonNavigatorParams, 'PrivacyPolicy'>
|
|
-export const PrivacyPolicyScreen = (_props: Props) => {
|
|
- const pal = usePalette('default')
|
|
- const {_} = useLingui()
|
|
- const setMinimalShellMode = useSetMinimalShellMode()
|
|
-
|
|
- useFocusEffect(
|
|
- React.useCallback(() => {
|
|
- setMinimalShellMode(false)
|
|
- }, [setMinimalShellMode]),
|
|
- )
|
|
+import {useSetTitle} from '#/lib/hooks/useSetTitle'
|
|
+import {atoms as a, useTheme} from '#/alf'
|
|
+import {Text} from '#/components/Typography'
|
|
+
|
|
+export function PrivacyPolicyScreen() {
|
|
+ useSetTitle('Privacy Policy')
|
|
+ const t = useTheme()
|
|
|
|
return (
|
|
<Layout.Screen>
|
|
- <ViewHeader title={_(msg`Privacy Policy`)} />
|
|
- <ScrollView style={[s.hContentRegion, pal.view]}>
|
|
- <View style={[s.p20]}>
|
|
- <Text style={pal.text}>
|
|
- <Trans>
|
|
- The Privacy Policy has been moved to{' '}
|
|
- <TextLink
|
|
- style={pal.link}
|
|
- href="https://bsky.social/about/support/privacy-policy"
|
|
- text="bsky.social/about/support/privacy-policy"
|
|
- />
|
|
- </Trans>
|
|
- </Text>
|
|
- </View>
|
|
- <View style={s.footerSpacer} />
|
|
+ <ScrollView
|
|
+ style={[a.flex_1, {backgroundColor: t.palette.white}]}
|
|
+ contentContainerStyle={[a.p_lg, a.pt_5xl, a.pb_5xl]}>
|
|
+ <Text style={[a.text_2xl, a.font_bold, a.mb_lg]}>Privacy Policy</Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Data Collection</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ syu.is collects minimal data necessary to provide the service. This includes your account information, posts, and interactions on the AT Protocol network.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Data Storage</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ Your data is stored on the AT Protocol network. Posts and profile information are public by default as part of the decentralized social network.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Third Parties</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ We do not sell your personal information to third parties. Your data may be visible to other users and services on the AT Protocol network.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Contact</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ For privacy-related questions, please contact the administrator.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_xl, a.mb_md]}>日本語</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ syu.isはサービス提供に必要な最小限のデータのみを収集します。投稿やプロフィール情報はAT Protocolネットワーク上で公開されます。個人情報を第三者に販売することはありません。
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_sm, a.mt_xl, {color: t.palette.contrast_500}]}>
|
|
+ Last updated: 2025
|
|
+ </Text>
|
|
</ScrollView>
|
|
</Layout.Screen>
|
|
)
|
|
diff --git a/src/view/screens/TermsOfService.tsx b/src/view/screens/TermsOfService.tsx
|
|
index d843c713c..c6a36268b 100644
|
|
--- a/src/view/screens/TermsOfService.tsx
|
|
+++ b/src/view/screens/TermsOfService.tsx
|
|
@@ -1,49 +1,49 @@
|
|
import React from 'react'
|
|
-import {View} from 'react-native'
|
|
-import {msg, Trans} from '@lingui/macro'
|
|
-import {useLingui} from '@lingui/react'
|
|
-import {useFocusEffect} from '@react-navigation/native'
|
|
-
|
|
-import {usePalette} from '#/lib/hooks/usePalette'
|
|
-import {
|
|
- type CommonNavigatorParams,
|
|
- type NativeStackScreenProps,
|
|
-} from '#/lib/routes/types'
|
|
-import {s} from '#/lib/styles'
|
|
-import {useSetMinimalShellMode} from '#/state/shell'
|
|
-import {TextLink} from '#/view/com/util/Link'
|
|
-import {Text} from '#/view/com/util/text/Text'
|
|
-import {ScrollView} from '#/view/com/util/Views'
|
|
+import {ScrollView} from 'react-native'
|
|
import * as Layout from '#/components/Layout'
|
|
-import {ViewHeader} from '../com/util/ViewHeader'
|
|
-
|
|
-type Props = NativeStackScreenProps<CommonNavigatorParams, 'TermsOfService'>
|
|
-export const TermsOfServiceScreen = (_props: Props) => {
|
|
- const pal = usePalette('default')
|
|
- const setMinimalShellMode = useSetMinimalShellMode()
|
|
- const {_} = useLingui()
|
|
-
|
|
- useFocusEffect(
|
|
- React.useCallback(() => {
|
|
- setMinimalShellMode(false)
|
|
- }, [setMinimalShellMode]),
|
|
- )
|
|
+import {useSetTitle} from '#/lib/hooks/useSetTitle'
|
|
+import {atoms as a, useTheme} from '#/alf'
|
|
+import {Text} from '#/components/Typography'
|
|
+
|
|
+export function TermsOfServiceScreen() {
|
|
+ useSetTitle('Terms of Service')
|
|
+ const t = useTheme()
|
|
|
|
return (
|
|
<Layout.Screen>
|
|
- <ViewHeader title={_(msg`Terms of Service`)} />
|
|
- <ScrollView style={[s.hContentRegion, pal.view]}>
|
|
- <View style={[s.p20]}>
|
|
- <Text style={pal.text}>
|
|
- <Trans>The Terms of Service have been moved to</Trans>{' '}
|
|
- <TextLink
|
|
- style={pal.link}
|
|
- href="https://bsky.social/about/support/tos"
|
|
- text="bsky.social/about/support/tos"
|
|
- />
|
|
- </Text>
|
|
- </View>
|
|
- <View style={s.footerSpacer} />
|
|
+ <ScrollView
|
|
+ style={[a.flex_1, {backgroundColor: t.palette.white}]}
|
|
+ contentContainerStyle={[a.p_lg, a.pt_5xl, a.pb_5xl]}>
|
|
+ <Text style={[a.text_2xl, a.font_bold, a.mb_lg]}>Terms of Service</Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Acceptance</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ By using syu.is, you agree to these terms. If you do not agree, please do not use the service.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Prohibited Content</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ Do not post illegal content, spam, or harass others. Do not impersonate others or spread misinformation.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Account Termination</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ The administrator reserves the right to suspend or terminate accounts that violate these terms.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_lg, a.mb_md]}>Disclaimer</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ This service is provided "as is" without warranty of any kind.
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_lg, a.font_bold, a.mt_xl, a.mb_md]}>日本語</Text>
|
|
+ <Text style={[a.mb_md]}>
|
|
+ syu.isを利用することで、これらの利用規約に同意したものとみなします。違法なコンテンツの投稿、スパム、他者への嫌がらせは禁止です。管理者は規約違反のアカウントを停止する権利を有します。本サービスは現状のまま提供され、いかなる保証もありません。
|
|
+ </Text>
|
|
+
|
|
+ <Text style={[a.text_sm, a.mt_xl, {color: t.palette.contrast_500}]}>
|
|
+ Last updated: 2025
|
|
+ </Text>
|
|
</ScrollView>
|
|
</Layout.Screen>
|
|
)
|