From 4ea44ff8600bd3390e5e6da60e3de2e8afc96232 Mon Sep 17 00:00:00 2001 From: Aggre Date: Sun, 26 Jan 2025 10:28:46 +0900 Subject: [PATCH] update PostButton --- src/components/Global/Header.astro | 1 + src/pages/passport/Layout.astro | 30 +++++-- src/pages/passport/[eoa]/[...ids]/index.astro | 11 +-- src/pages/passport/[id]/edit.astro | 2 + src/pages/passport/components/PostButton.vue | 78 ++++++++++++++----- .../components/UserProfileEditButton.svelte | 44 ----------- 6 files changed, 86 insertions(+), 80 deletions(-) delete mode 100644 src/pages/passport/components/UserProfileEditButton.svelte diff --git a/src/components/Global/Header.astro b/src/components/Global/Header.astro index 97059f8e8..f95e95c10 100644 --- a/src/components/Global/Header.astro +++ b/src/components/Global/Header.astro @@ -8,6 +8,7 @@ import NavbarResponsive from './NavbarResponsive.vue' type Props = { connectButton?: 'show' | 'hidden' | 'show-when-signedin' + postButton?: 'show' | 'hidden' | 'show-when-signedin' pageTitle?: string } diff --git a/src/pages/passport/Layout.astro b/src/pages/passport/Layout.astro index 6e20d2e07..25b489270 100644 --- a/src/pages/passport/Layout.astro +++ b/src/pages/passport/Layout.astro @@ -23,6 +23,7 @@ type Props = { preload?: { as: string; href: string }[] connectButton?: 'show' | 'hidden' | 'show-when-signedin' showSkinSwitcher?: boolean + showPostButton?: 'hidden' | 'post' | 'edit' } const { @@ -35,6 +36,7 @@ const { preload = [], connectButton, showSkinSwitcher = true, + showPostButton = 'hidden', } = Astro.props as Props const passportSkinTheme = await whenDefined(sTokenPayload, (payload: string) => @@ -150,12 +152,28 @@ const langs = parseAcceptLanguage(Astro.request.headers.get('Accept-Language')) /> ) } - - + { + showPostButton !== 'hidden' && ( + + ) + } + { + showPostButton !== 'hidden' && ( + + ) + }
@@ -235,15 +235,6 @@ const [
) } - - - - diff --git a/src/pages/passport/[id]/edit.astro b/src/pages/passport/[id]/edit.astro index 9cbf6dd61..66a32c5ef 100644 --- a/src/pages/passport/[id]/edit.astro +++ b/src/pages/passport/[id]/edit.astro @@ -19,6 +19,8 @@ const isLocal = connectButton="show-when-signedin" theme="light" showSkinSwitcher={false} + showPostButton="post" + eoa={id} >
diff --git a/src/pages/passport/components/PostButton.vue b/src/pages/passport/components/PostButton.vue index 907a05a32..88bdb334b 100644 --- a/src/pages/passport/components/PostButton.vue +++ b/src/pages/passport/components/PostButton.vue @@ -2,14 +2,22 @@ import { i18nFactory } from '@devprotocol/clubs-core' import { Strings } from '../i18n' import { onMounted, ref } from 'vue' +import { connection } from '@devprotocol/clubs-core/connection' -const props = defineProps<{ langs: string[] }>() +const props = defineProps<{ + eoa?: string + skinId?: string + mode?: 'post' | 'edit' +}>() const i18nBase = i18nFactory(Strings) -const i18n = ref(i18nBase(props.langs)) +const i18n = ref(i18nBase(navigator.languages)) +const account = ref() onMounted(() => { - i18n.value = i18nBase(navigator.languages) + connection().account.subscribe((acc) => { + account.value = acc + }) }) const click = () => { @@ -20,22 +28,52 @@ const click = () => { diff --git a/src/pages/passport/components/UserProfileEditButton.svelte b/src/pages/passport/components/UserProfileEditButton.svelte deleted file mode 100644 index bced6f209..000000000 --- a/src/pages/passport/components/UserProfileEditButton.svelte +++ /dev/null @@ -1,44 +0,0 @@ - - -{#if eoa === address} - - - - -{/if}