@tryghost/activitypub 3.1.9 → 3.1.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/activitypub.js +1 -1
- package/dist/{at-sign-HA7s9_yo.mjs → at-sign-WxdwrLgJ.mjs} +3 -3
- package/dist/at-sign-WxdwrLgJ.mjs.map +1 -0
- package/dist/{avatar-flipboard-swo-37SU.mjs → avatar-flipboard-DSiWdH0F.mjs} +3 -3
- package/dist/avatar-flipboard-DSiWdH0F.mjs.map +1 -0
- package/dist/{bluesky-sharing-CLCMkEbr.mjs → bluesky-sharing-B86jF6P2.mjs} +7 -7
- package/dist/bluesky-sharing-B86jF6P2.mjs.map +1 -0
- package/dist/{copy-DpM3ttP6.mjs → copy-Dv_Mr41S.mjs} +3 -3
- package/dist/copy-Dv_Mr41S.mjs.map +1 -0
- package/dist/{deleted-feed-item-Dpgdv7Am.mjs → deleted-feed-item-DwgIr7vo.mjs} +9 -9
- package/dist/deleted-feed-item-DwgIr7vo.mjs.map +1 -0
- package/dist/edit-profile-BJDgAblO.mjs +3810 -0
- package/dist/edit-profile-BJDgAblO.mjs.map +1 -0
- package/dist/{feed-CUigsjj5.mjs → feed-Dg6CeeCP.mjs} +12 -12
- package/dist/feed-Dg6CeeCP.mjs.map +1 -0
- package/dist/{hash-cJ8IUw77.mjs → hash-CSsTpjMi.mjs} +3 -3
- package/dist/hash-CSsTpjMi.mjs.map +1 -0
- package/dist/{inbox-gnZvtbNZ.mjs → inbox-DexTffBg.mjs} +3 -3
- package/dist/inbox-DexTffBg.mjs.map +1 -0
- package/dist/{index-DBDE7Pwv.mjs → index-BCgaO9tm.mjs} +2 -2
- package/dist/index-BCgaO9tm.mjs.map +1 -0
- package/dist/{index-BHjT-eBh.mjs → index-BgIuNjJ4.mjs} +21 -21
- package/dist/index-BgIuNjJ4.mjs.map +1 -0
- package/dist/{index-VTkGUYnZ.mjs → index-C5SK4d-U.mjs} +93 -93
- package/dist/index-C5SK4d-U.mjs.map +1 -0
- package/dist/{index-DRdHe0Xx.mjs → index-D0zVs-Le.mjs} +8 -8
- package/dist/index-D0zVs-Le.mjs.map +1 -0
- package/dist/{index-DJ5p5ESW.mjs → index-DHVdVxus.mjs} +13567 -12741
- package/dist/index-DHVdVxus.mjs.map +1 -0
- package/dist/{index-Dc5IUcEt.mjs → index-DunzATiq.mjs} +49 -49
- package/dist/index-DunzATiq.mjs.map +1 -0
- package/dist/{index-BC1Q-I5Z.mjs → index-Kd9Hi0Fn.mjs} +26 -26
- package/dist/index-Kd9Hi0Fn.mjs.map +1 -0
- package/dist/{index-DOW1_Ph3.mjs → index-Vj6Uo60G.mjs} +56 -56
- package/dist/index-Vj6Uo60G.mjs.map +1 -0
- package/dist/{moderation-CF26LtsR.mjs → moderation-DltWXOVa.mjs} +7 -7
- package/dist/moderation-DltWXOVa.mjs.map +1 -0
- package/dist/{note-C7a3fpfu.mjs → note-m0fl222x.mjs} +6 -6
- package/dist/note-m0fl222x.mjs.map +1 -0
- package/dist/{reply-DNHDDszZ.mjs → reply-BwjYYb5Y.mjs} +3 -3
- package/dist/reply-BwjYYb5Y.mjs.map +1 -0
- package/dist/separator-CdEv3ahM.mjs +39 -0
- package/dist/separator-CdEv3ahM.mjs.map +1 -0
- package/dist/{settings-CK06at6A.mjs → settings-BdWI832x.mjs} +3 -3
- package/dist/settings-BdWI832x.mjs.map +1 -0
- package/dist/{step-1-CWOu7-_P.mjs → step-1-xd_G9AFI.mjs} +8 -8
- package/dist/{step-1-CWOu7-_P.mjs.map → step-1-xd_G9AFI.mjs.map} +1 -1
- package/dist/{step-2-Dcy43H6c.mjs → step-2-C-T0bLP6.mjs} +14 -14
- package/dist/step-2-C-T0bLP6.mjs.map +1 -0
- package/dist/{step-3-Dav_Yy5B.mjs → step-3-Cxv0ahQZ.mjs} +15 -15
- package/dist/step-3-Cxv0ahQZ.mjs.map +1 -0
- package/dist/{tabs-B7coKvuk.mjs → tabs-BDqPEpa2.mjs} +224 -226
- package/dist/tabs-BDqPEpa2.mjs.map +1 -0
- package/dist/{topic-filter-BIhCARLH.mjs → topic-filter-C1NL6HYi.mjs} +4 -4
- package/dist/topic-filter-C1NL6HYi.mjs.map +1 -0
- package/package.json +26 -11
- package/dist/at-sign-HA7s9_yo.mjs.map +0 -1
- package/dist/avatar-flipboard-swo-37SU.mjs.map +0 -1
- package/dist/bluesky-sharing-CLCMkEbr.mjs.map +0 -1
- package/dist/copy-DpM3ttP6.mjs.map +0 -1
- package/dist/deleted-feed-item-Dpgdv7Am.mjs.map +0 -1
- package/dist/edit-profile-C4Z2TwUh.mjs +0 -3741
- package/dist/edit-profile-C4Z2TwUh.mjs.map +0 -1
- package/dist/feed-CUigsjj5.mjs.map +0 -1
- package/dist/hash-cJ8IUw77.mjs.map +0 -1
- package/dist/inbox-gnZvtbNZ.mjs.map +0 -1
- package/dist/index-BC1Q-I5Z.mjs.map +0 -1
- package/dist/index-BHjT-eBh.mjs.map +0 -1
- package/dist/index-DBDE7Pwv.mjs.map +0 -1
- package/dist/index-DJ5p5ESW.mjs.map +0 -1
- package/dist/index-DOW1_Ph3.mjs.map +0 -1
- package/dist/index-DRdHe0Xx.mjs.map +0 -1
- package/dist/index-Dc5IUcEt.mjs.map +0 -1
- package/dist/index-VTkGUYnZ.mjs.map +0 -1
- package/dist/moderation-CF26LtsR.mjs.map +0 -1
- package/dist/note-C7a3fpfu.mjs.map +0 -1
- package/dist/reply-DNHDDszZ.mjs.map +0 -1
- package/dist/separator-D4W12X08.mjs +0 -116
- package/dist/separator-D4W12X08.mjs.map +0 -1
- package/dist/settings-CK06at6A.mjs.map +0 -1
- package/dist/step-2-Dcy43H6c.mjs.map +0 -1
- package/dist/step-3-Dav_Yy5B.mjs.map +0 -1
- package/dist/tabs-B7coKvuk.mjs.map +0 -1
- package/dist/topic-filter-BIhCARLH.mjs.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"moderation-CF26LtsR.mjs","sources":["../src/views/preferences/components/moderation.tsx"],"sourcesContent":["import APAvatar from '@components/global/ap-avatar';\nimport ActivityItem from '@components/activities/activity-item';\nimport Layout from '@components/layout';\nimport ProfilePreviewHoverCard from '@components/global/profile-preview-hover-card';\nimport React, {useState} from 'react';\nimport {Account} from '@src/api/activitypub';\nimport {Button, H2, LucideIcon, NoValueLabel, NoValueLabelIcon, Skeleton, Tabs, TabsContent, TabsList, TabsTrigger} from '@tryghost/shade';\nimport {handleProfileClick} from '@src/utils/handle-profile-click';\nimport {toast} from 'sonner';\nimport {useBlockDomainMutationForUser, useBlockMutationForUser, useBlockedAccountsForUser, useBlockedDomainsForUser, useUnblockDomainMutationForUser, useUnblockMutationForUser} from '@hooks/use-activity-pub-queries';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\n\nconst Moderation: React.FC = () => {\n const {data: blockedAccountsData, isLoading: blockedAccountsLoading} = useBlockedAccountsForUser('index');\n const {data: blockedDomainsData, isLoading: blockedDomainsLoading} = useBlockedDomainsForUser('index');\n\n const blockedAccounts = blockedAccountsLoading\n ? Array(5).fill({apId: '', name: '', handle: '', avatarUrl: ''})\n : blockedAccountsData?.pages.flatMap(page => page.accounts) ?? [];\n const blockedDomains = blockedDomainsLoading\n ? Array(5).fill({apId: '', name: ''})\n : blockedDomainsData?.pages.flatMap(page => page.domains) ?? [];\n\n const blockMutation = useBlockMutationForUser('index');\n const unblockMutation = useUnblockMutationForUser('index');\n const [unblockedAccountIds, setUnblockedAccountIds] = useState<Set<string>>(new Set());\n\n const blockDomainMutation = useBlockDomainMutationForUser('index');\n const unblockDomainMutation = useUnblockDomainMutationForUser('index');\n const [unblockedDomainIds, setUnblockedDomainIds] = useState<Set<string>>(new Set());\n\n const [hoveredItemId, setHoveredItemId] = useState<string | null>(null);\n const navigate = useNavigateWithBasePath();\n\n const handleUnblock = (account: Account) => {\n setUnblockedAccountIds((prev) => {\n const newSet = new Set([...prev]);\n newSet.add(account.apId);\n return newSet;\n });\n\n unblockMutation.mutate(account);\n\n toast.success('User unblocked');\n };\n\n const handleBlock = (account: Account) => {\n setUnblockedAccountIds((prev) => {\n const newSet = new Set([...prev]);\n newSet.delete(account.apId);\n return newSet;\n });\n\n blockMutation.mutate(account);\n\n toast.success('User blocked');\n };\n\n const handleDomainUnblock = (domain: {url: string}) => {\n setUnblockedDomainIds((prev) => {\n const newSet = new Set([...prev]);\n newSet.add(domain.url);\n return newSet;\n });\n\n unblockDomainMutation.mutate({url: domain.url});\n\n toast.success('Domain unblocked');\n };\n\n const handleDomainBlock = (domain: {url: string}) => {\n setUnblockedDomainIds((prev) => {\n const newSet = new Set([...prev]);\n newSet.delete(domain.url);\n return newSet;\n });\n\n blockDomainMutation.mutate({url: domain.url});\n\n toast.success('Domain blocked');\n };\n\n return (\n <Layout>\n <div className='mx-auto max-w-[620px] py-[min(4vh,48px)]'>\n <div className='flex items-center justify-between gap-8'>\n <H2>Moderation</H2>\n </div>\n <div className='mt-6'>\n <Tabs defaultValue=\"blocked_users\" variant='underline'>\n <TabsList>\n <TabsTrigger value=\"blocked_users\">Blocked users</TabsTrigger>\n <TabsTrigger value=\"blocked_domains\">Blocked domains</TabsTrigger>\n </TabsList>\n <TabsContent className='mt-2' value=\"blocked_users\">\n {!blockedAccountsLoading && blockedAccounts.length === 0 ? (\n <NoValueLabel>\n <NoValueLabelIcon><LucideIcon.Ban /></NoValueLabelIcon>\n <div className='mt-2 flex max-w-[400px] flex-col items-center gap-1 text-center'>\n <p>When you block someone, they won't be able to follow you or interact with your content on the social web.</p>\n </div>\n </NoValueLabel>\n ) : (\n blockedAccounts.map((account, index) => (\n <ProfilePreviewHoverCard key={account.apId ? account.apId : `loading-${index}`} actor={account} isCurrentUser={true}>\n <div>\n <ActivityItem\n onClick={!blockedAccountsLoading ? () => handleProfileClick(account.handle, navigate) : undefined}\n >\n <APAvatar\n author={\n {\n icon: {\n url: account.avatarUrl\n },\n name: account.name,\n handle: account.handle\n }\n } />\n <div className='flex min-w-0 flex-col'>\n <span className='block truncate font-semibold text-black dark:text-white'>{!blockedAccountsLoading ? account.name : <Skeleton className='w-24' />}</span>\n <span className='block truncate text-sm text-gray-600'>{!blockedAccountsLoading ? account.handle : <Skeleton className='w-40' />}</span>\n </div>\n\n {unblockedAccountIds.has(account.apId) ? (\n <Button\n className='hover:bg-red/5! ml-auto min-w-[90px] text-red hover:text-red-400'\n variant='outline'\n onClick={(e) => {\n e.stopPropagation();\n handleBlock(account);\n }}\n >\n Block\n </Button>\n ) : (\n !blockedAccountsLoading ?\n <Button\n className='ml-auto min-w-[90px]'\n variant='destructive'\n onClick={(e) => {\n e.stopPropagation();\n handleUnblock(account);\n }}\n onMouseEnter={() => setHoveredItemId(account.apId)}\n onMouseLeave={() => setHoveredItemId(null)}\n >\n {hoveredItemId === account.apId ? 'Unblock' : 'Blocked'}\n </Button> :\n <div className='ml-auto w-16'>\n <Skeleton />\n </div>\n )}\n </ActivityItem>\n </div>\n </ProfilePreviewHoverCard>\n ))\n )}\n </TabsContent>\n <TabsContent className='mt-[11px]' value=\"blocked_domains\">\n {!blockedDomainsLoading && blockedDomains.length === 0 ? (\n <NoValueLabel>\n <NoValueLabelIcon><LucideIcon.Ban /></NoValueLabelIcon>\n <div className='mt-2 flex max-w-[400px] flex-col items-center gap-1 text-center'>\n <p>When you block a domain, all users from that domain won't be able to follow you or interact with your content.</p>\n </div>\n </NoValueLabel>\n ) : (\n blockedDomains.map((domain, index) => (\n <ActivityItem key={domain.url ? domain.url : `loading-${index}`}>\n <div className='flex min-w-0 flex-col'>\n <span className='block truncate font-semibold text-black dark:text-white'>\n {!blockedDomainsLoading ? new URL(domain.url).hostname : <Skeleton className='w-48' />}\n </span>\n </div>\n\n {unblockedDomainIds.has(domain.url) ? (\n <Button\n className='hover:bg-red/5! ml-auto min-w-[90px] text-red hover:text-red-400'\n variant='outline'\n onClick={() => handleDomainBlock(domain)}\n >\n Block\n </Button>\n ) : (\n !blockedDomainsLoading ?\n <Button\n className='ml-auto min-w-[90px]'\n variant='destructive'\n onClick={() => handleDomainUnblock(domain)}\n onMouseEnter={() => setHoveredItemId(domain.url)}\n onMouseLeave={() => setHoveredItemId(null)}\n >\n {hoveredItemId === domain.url ? 'Unblock' : 'Blocked'}\n </Button> :\n <div className='ml-auto w-16'>\n <Skeleton />\n </div>\n )}\n </ActivityItem>\n ))\n )}\n </TabsContent>\n </Tabs>\n </div>\n </div>\n </Layout>\n );\n};\n\nexport default Moderation;\n"],"names":["Moderation","blockedAccountsData","blockedAccountsLoading","useBlockedAccountsForUser","blockedDomainsData","blockedDomainsLoading","useBlockedDomainsForUser","blockedAccounts","page","blockedDomains","blockMutation","useBlockMutationForUser","unblockMutation","useUnblockMutationForUser","unblockedAccountIds","setUnblockedAccountIds","useState","blockDomainMutation","useBlockDomainMutationForUser","unblockDomainMutation","useUnblockDomainMutationForUser","unblockedDomainIds","setUnblockedDomainIds","hoveredItemId","setHoveredItemId","navigate","useNavigateWithBasePath","handleUnblock","account","prev","newSet","toast","handleBlock","handleDomainUnblock","domain","handleDomainBlock","jsx","Layout","jsxs","H2","Tabs","TabsList","TabsTrigger","TabsContent","NoValueLabel","NoValueLabelIcon","LucideIcon.Ban","index","ProfilePreviewHoverCard","ActivityItem","handleProfileClick","APAvatar","Skeleton","Button","e"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"note-C7a3fpfu.mjs","sources":["../src/views/feed/note.tsx"],"sourcesContent":["import APAvatar from '@src/components/global/ap-avatar';\nimport APReplyBox from '@src/components/global/ap-reply-box';\nimport DeletedFeedItem from '@src/components/feed/deleted-feed-item';\nimport FeedItem from '@components/feed/feed-item';\nimport Layout from '@src/components/layout/layout';\nimport ProfilePreviewHoverCard from '@components/global/profile-preview-hover-card';\nimport React, {useEffect, useRef, useState} from 'react';\nimport ShowRepliesButton from '@src/components/global/show-replies-button';\nimport getUsername from '@src/utils/get-username';\nimport {Activity} from '@tryghost/admin-x-framework/api/activitypub';\nimport {EmptyViewIcon, EmptyViewIndicator} from '@src/components/global/empty-view-indicator';\nimport {LoadingIndicator, LucideIcon, Skeleton} from '@tryghost/shade';\nimport {handleProfileClick} from '@src/utils/handle-profile-click';\nimport {isPendingActivity} from '@src/utils/pending-activity';\nimport {renderTimestamp} from '@src/utils/render-timestamp';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\nimport {useNavigationStack, useParams} from '@tryghost/admin-x-framework';\nimport {useReplyChainData} from '@hooks/use-reply-chain-data';\n\nconst FeedItemDivider: React.FC = () => (\n <div className=\"h-px w-full bg-gray-200 dark:bg-gray-950\"></div>\n);\n\nconst Note = () => {\n const {postId} = useParams();\n const {canGoBack} = useNavigationStack();\n\n const [expandedChains, setExpandedChains] = useState<Set<string>>(new Set());\n const [fullyExpandedChains, setFullyExpandedChains] = useState<Set<string>>(new Set());\n const [loadingChains, setLoadingChains] = useState<Set<string>>(new Set());\n const [isLoadingMoreTopLevelReplies, setIsLoadingMoreTopLevelReplies] = useState(false);\n const repliesRef = useRef<HTMLDivElement>(null);\n const postRef = useRef<HTMLDivElement>(null);\n const observerRef = useRef<IntersectionObserver | null>(null);\n const loadMoreRef = useRef<HTMLDivElement | null>(null);\n const navigate = useNavigateWithBasePath();\n\n const {\n threadParents,\n post: currentPost,\n processedReplies,\n isLoading,\n loadMoreChildren,\n loadMoreChildReplies,\n hasMoreChildren,\n hasMoreChildReplies\n } = useReplyChainData(decodeURIComponent(postId ?? ''), {includeAncestors: true});\n\n const object = currentPost?.object;\n\n const replyCount = object?.replyCount ?? 0;\n const [hasScrolledToPost, setHasScrolledToPost] = useState(false);\n\n useEffect(() => {\n if (postRef.current && threadParents.length > 0 && !hasScrolledToPost) {\n postRef.current.scrollIntoView({\n behavior: 'instant',\n block: 'start'\n });\n setHasScrolledToPost(true);\n }\n }, [threadParents, hasScrolledToPost]);\n\n useEffect(() => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n\n const container = document.querySelector('[data-scrollable-container]') as HTMLElement;\n if (!container) {\n return;\n }\n\n observerRef.current = new IntersectionObserver(async (entries) => {\n if (entries[0].isIntersecting && hasMoreChildren && !isLoadingMoreTopLevelReplies) {\n setIsLoadingMoreTopLevelReplies(true);\n try {\n await loadMoreChildren();\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to load more top-level replies:', error);\n } finally {\n setIsLoadingMoreTopLevelReplies(false);\n }\n }\n }, {\n root: container,\n rootMargin: '200px'\n });\n\n if (loadMoreRef.current) {\n observerRef.current.observe(loadMoreRef.current);\n }\n\n return () => {\n if (observerRef.current) {\n observerRef.current.disconnect();\n }\n };\n }, [hasMoreChildren, isLoadingMoreTopLevelReplies, loadMoreChildren]);\n\n if (isLoading) {\n return (\n <Layout>\n <div className='mx-auto flex max-w-[620px] flex-col items-center gap-3 pt-9 lg:px-8'>\n <div className='flex w-full items-center gap-3'>\n <Skeleton className='size-10 rounded-full' />\n <div className='grow pt-1'>\n <Skeleton className='w-24' />\n <Skeleton className='w-3/5' />\n </div>\n </div>\n <div className='mb-7 w-full'>\n <Skeleton />\n <Skeleton className='w-4/5' />\n <Skeleton />\n </div>\n <FeedItemDivider />\n <div className='flex w-full items-center gap-3 py-3'>\n <Skeleton className='block size-full' containerClassName='size-10 rounded-full overflow-hidden' />\n <div>\n <Skeleton className='w-52' />\n <Skeleton className='w-28' />\n </div>\n </div>\n <FeedItemDivider />\n </div>\n </Layout>\n );\n }\n\n if (!currentPost) {\n return (\n <Layout>\n <div className='mx-auto mt-4 flex w-full max-w-[620px] flex-col items-center'>\n <EmptyViewIndicator>\n <EmptyViewIcon><LucideIcon.Hash /></EmptyViewIcon>\n <div>Error loading note.</div>\n </EmptyViewIndicator>\n </div>\n </Layout>\n );\n }\n\n function handleDelete() {\n // Reply count will be updated via cache invalidation\n }\n\n function toggleChain(chainId: string) {\n setExpandedChains((prev) => {\n const newSet = new Set(prev);\n if (newSet.has(chainId)) {\n newSet.delete(chainId);\n } else {\n newSet.add(chainId);\n setFullyExpandedChains((fullyExpanded) => {\n const newFullyExpanded = new Set(fullyExpanded);\n newFullyExpanded.add(chainId);\n return newFullyExpanded;\n });\n }\n return newSet;\n });\n }\n\n async function loadMoreForChain(chainId: string, childIndex: number) {\n if (loadingChains.has(chainId)) {\n return;\n }\n\n setLoadingChains(prev => new Set(prev).add(chainId));\n\n try {\n if (loadMoreChildReplies) {\n await loadMoreChildReplies(childIndex);\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to load more replies for chain:', error);\n } finally {\n setLoadingChains((prev) => {\n const newSet = new Set(prev);\n newSet.delete(chainId);\n return newSet;\n });\n }\n }\n\n return (\n <Layout>\n <div className='mx-auto flex h-full max-w-[620px] flex-col'>\n <div className='relative flex-1'>\n <div className='grow overflow-y-auto'>\n <div className={`mx-auto px-8 pb-10 pt-5 max-lg:px-0`}>\n {!threadParents.length &&\n <ProfilePreviewHoverCard actor={currentPost.actor} isCurrentUser={currentPost.object.authored}>\n <div className={`col-[2/3] mx-auto flex w-full cursor-pointer items-center gap-3 ${canGoBack ? 'pt-10 max-md:pt-5' : 'pt-5'}`}>\n <div className='relative z-10'>\n <APAvatar author={currentPost.actor} showFollowButton={!currentPost.object.authored && !currentPost.actor.followedByMe}/>\n </div>\n <div className='relative z-10 flex w-full min-w-0 cursor-pointer flex-col overflow-visible text-[1.5rem]' onClick={(e) => {\n handleProfileClick(currentPost.actor, navigate, e);\n }}>\n <div className='flex w-full'>\n <span className='min-w-0 truncate whitespace-nowrap font-semibold hover:underline'>{currentPost.actor.name}</span>\n </div>\n <div className='flex w-full'>\n <span className='truncate text-gray-700 after:mx-1 after:font-normal after:text-gray-700 after:content-[\"·\"]'>{getUsername(currentPost.actor)}</span>\n <span className='text-gray-700'>{renderTimestamp(object, !object.authored)}</span>\n </div>\n </div>\n </div>\n </ProfilePreviewHoverCard>\n }\n\n {threadParents.map((item) => {\n return (\n item.object.type === 'Tombstone' ? (\n <DeletedFeedItem last={false} />\n ) : (\n <FeedItem\n actor={item.actor}\n allowDelete={false}\n commentCount={item.object.replyCount ?? 0}\n last={false}\n layout='reply'\n likeCount={item.object.likeCount ?? 0}\n object={item.object}\n repostCount={item.object.repostCount ?? 0}\n type='Note'\n onClick={() => {\n navigate(`/${item.object.type === 'Article' ? 'reader' : 'notes'}/${encodeURIComponent(item.object.id)}`);\n }}\n />\n )\n );\n })}\n <div ref={postRef} className={`${canGoBack ? 'scroll-mt-[12px]' : 'scroll-mt-[124px]'}`}>\n <div className={`${threadParents.length > 0 && 'min-h-[calc(100vh-52px)]'}`}>\n <FeedItem\n actor={currentPost.actor}\n allowDelete={false}\n commentCount={replyCount}\n last={true}\n layout={'modal'}\n likeCount={object.likeCount ?? 0}\n object={object}\n repostCount={object.repostCount}\n showHeader={threadParents.length > 0}\n showStats={true}\n type='Note'\n />\n <APReplyBox\n object={object}\n />\n <FeedItemDivider />\n <div ref={repliesRef}>\n {\n processedReplies.map((replyGroup, groupIndex) => {\n const isLastGroup = groupIndex === processedReplies.length - 1;\n const chainId = replyGroup.mainReply.id;\n const isExpanded = expandedChains.has(chainId);\n const isFullyExpanded = fullyExpandedChains.has(chainId);\n const isChainLoading = loadingChains.has(chainId);\n const hasChain = replyGroup.chain.length > 0;\n\n return (\n <React.Fragment key={replyGroup.mainReply.id}>\n <FeedItem\n actor={replyGroup.mainReply.actor}\n allowDelete={replyGroup.mainReply.object.authored}\n commentCount={replyGroup.mainReply.object.replyCount ?? 0}\n isChainParent={hasChain}\n isPending={isPendingActivity(replyGroup.mainReply.id)}\n last={!hasChain}\n layout='reply'\n likeCount={replyGroup.mainReply.object.likeCount ?? 0}\n object={replyGroup.mainReply.object}\n parentId={object.id}\n repostCount={replyGroup.mainReply.object.repostCount ?? 0}\n type='Note'\n onClick={() => {\n navigate(`/notes/${encodeURIComponent(replyGroup.mainReply.id)}`);\n }}\n onDelete={handleDelete}\n />\n\n {hasChain && replyGroup.chain[0] && (\n <FeedItem\n key={replyGroup.chain[0].id}\n actor={replyGroup.chain[0].actor}\n allowDelete={replyGroup.chain[0].object.authored}\n commentCount={replyGroup.chain[0].object.replyCount ?? 0}\n isChainContinuation={true}\n isPending={isPendingActivity(replyGroup.chain[0].id)}\n last={replyGroup.chain.length === 1}\n layout='reply'\n likeCount={replyGroup.chain[0].object.likeCount ?? 0}\n object={replyGroup.chain[0].object}\n parentId={object.id}\n repostCount={replyGroup.chain[0].object.repostCount ?? 0}\n type='Note'\n onClick={() => {\n navigate(`/notes/${encodeURIComponent(replyGroup.chain[0].id)}`);\n }}\n onDelete={handleDelete}\n />\n )}\n\n {hasChain && isExpanded && replyGroup.chain.slice(1).map((chainItem: Activity, chainIndex: number) => {\n const isLastChainItem = chainIndex === replyGroup.chain.slice(1).length - 1;\n const hasMoreReplies = hasMoreChildReplies && hasMoreChildReplies(groupIndex);\n const shouldShowConnector = isLastChainItem && hasMoreReplies;\n\n return (\n <FeedItem\n key={chainItem.id}\n actor={chainItem.actor}\n allowDelete={chainItem.object.authored}\n commentCount={chainItem.object.replyCount ?? 0}\n isChainContinuation={true}\n isPending={isPendingActivity(chainItem.id)}\n last={isLastChainItem && !shouldShowConnector}\n layout='reply'\n likeCount={chainItem.object.likeCount ?? 0}\n object={chainItem.object}\n parentId={object.id}\n repostCount={chainItem.object.repostCount ?? 0}\n type='Note'\n onClick={() => {\n navigate(`/notes/${encodeURIComponent(chainItem.id)}`);\n }}\n onDelete={handleDelete}\n />\n );\n })}\n\n {hasChain && replyGroup.chain.length > 1 && !isExpanded && (\n <ShowRepliesButton\n variant='expand'\n onClick={() => toggleChain(chainId)}\n />\n )}\n\n {hasChain && isExpanded && isFullyExpanded && hasMoreChildReplies && hasMoreChildReplies(groupIndex) && (\n <ShowRepliesButton\n loading={isChainLoading}\n variant='loadMore'\n onClick={() => loadMoreForChain(chainId, groupIndex)}\n />\n )}\n\n {!isLastGroup && <FeedItemDivider />}\n </React.Fragment>\n );\n })\n }\n\n {isLoadingMoreTopLevelReplies && (\n <div className='flex flex-col items-center justify-center text-center'>\n <LoadingIndicator size='md' />\n </div>\n )}\n </div>\n\n {hasMoreChildren && <div ref={loadMoreRef} className='h-1'></div>}\n </div>\n </div>\n </div>\n </div>\n </div>\n </div>\n </Layout>\n );\n};\n\nexport default Note;\n"],"names":["FeedItemDivider","jsx","Note","postId","useParams","canGoBack","useNavigationStack","expandedChains","setExpandedChains","useState","fullyExpandedChains","setFullyExpandedChains","loadingChains","setLoadingChains","isLoadingMoreTopLevelReplies","setIsLoadingMoreTopLevelReplies","repliesRef","useRef","postRef","observerRef","loadMoreRef","navigate","useNavigateWithBasePath","threadParents","currentPost","processedReplies","isLoading","loadMoreChildren","loadMoreChildReplies","hasMoreChildren","hasMoreChildReplies","useReplyChainData","object","replyCount","hasScrolledToPost","setHasScrolledToPost","useEffect","container","entries","error","Layout","jsxs","Skeleton","EmptyViewIndicator","EmptyViewIcon","LucideIcon.Hash","handleDelete","toggleChain","chainId","prev","newSet","fullyExpanded","newFullyExpanded","loadMoreForChain","childIndex","ProfilePreviewHoverCard","APAvatar","e","handleProfileClick","getUsername","item","DeletedFeedItem","FeedItem","APReplyBox","replyGroup","groupIndex","isLastGroup","isExpanded","isFullyExpanded","isChainLoading","hasChain","React","isPendingActivity","chainItem","chainIndex","isLastChainItem","hasMoreReplies","shouldShowConnector","ShowRepliesButton","LoadingIndicator"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"reply-DNHDDszZ.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/reply.js"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M20 18v-2a4 4 0 0 0-4-4H4\", key: \"5vmcpk\" }],\n [\"path\", { d: \"m9 17-5-5 5-5\", key: \"nvlc11\" }]\n];\nconst Reply = createLucideIcon(\"reply\", __iconNode);\n\nexport { __iconNode, Reply as default };\n//# sourceMappingURL=reply.js.map\n"],"names":["__iconNode","Reply","createLucideIcon"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,6BAA6B,KAAK,SAAQ,CAAE;AAAA,EAC1D,CAAC,QAAQ,EAAE,GAAG,iBAAiB,KAAK,SAAQ,CAAE;AAChD,GACMC,IAAQC,EAAiB,SAASF,CAAU;","x_google_ignoreList":[0]}
|
|
@@ -1,116 +0,0 @@
|
|
|
1
|
-
import { aj as u, ay as b, az as c, aA as d, j as f, aB as S, aC as x, aD as P, s as j } from "./index-DJ5p5ESW.mjs";
|
|
2
|
-
var O = Symbol.for("react.lazy"), y = b[" use ".trim().toString()];
|
|
3
|
-
function R(r) {
|
|
4
|
-
return typeof r == "object" && r !== null && "then" in r;
|
|
5
|
-
}
|
|
6
|
-
function N(r) {
|
|
7
|
-
return r != null && typeof r == "object" && "$$typeof" in r && r.$$typeof === O && "_payload" in r && R(r._payload);
|
|
8
|
-
}
|
|
9
|
-
// @__NO_SIDE_EFFECTS__
|
|
10
|
-
function _(r) {
|
|
11
|
-
const o = /* @__PURE__ */ A(r), e = u((n, t) => {
|
|
12
|
-
let { children: i, ...s } = n;
|
|
13
|
-
N(i) && typeof y == "function" && (i = y(i._payload));
|
|
14
|
-
const a = c.toArray(i), l = a.find(T);
|
|
15
|
-
if (l) {
|
|
16
|
-
const p = l.props.children, E = a.map((m) => m === l ? c.count(p) > 1 ? c.only(null) : d(p) ? p.props.children : null : m);
|
|
17
|
-
return /* @__PURE__ */ f.jsx(o, { ...s, ref: t, children: d(p) ? S(p, void 0, E) : null });
|
|
18
|
-
}
|
|
19
|
-
return /* @__PURE__ */ f.jsx(o, { ...s, ref: t, children: i });
|
|
20
|
-
});
|
|
21
|
-
return e.displayName = `${r}.Slot`, e;
|
|
22
|
-
}
|
|
23
|
-
// @__NO_SIDE_EFFECTS__
|
|
24
|
-
function A(r) {
|
|
25
|
-
const o = u((e, n) => {
|
|
26
|
-
let { children: t, ...i } = e;
|
|
27
|
-
if (N(t) && typeof y == "function" && (t = y(t._payload)), d(t)) {
|
|
28
|
-
const s = $(t), a = I(i, t.props);
|
|
29
|
-
return t.type !== x && (a.ref = n ? P(n, s) : s), S(t, a);
|
|
30
|
-
}
|
|
31
|
-
return c.count(t) > 1 ? c.only(null) : null;
|
|
32
|
-
});
|
|
33
|
-
return o.displayName = `${r}.SlotClone`, o;
|
|
34
|
-
}
|
|
35
|
-
var C = Symbol("radix.slottable");
|
|
36
|
-
function T(r) {
|
|
37
|
-
return d(r) && typeof r.type == "function" && "__radixId" in r.type && r.type.__radixId === C;
|
|
38
|
-
}
|
|
39
|
-
function I(r, o) {
|
|
40
|
-
const e = { ...o };
|
|
41
|
-
for (const n in o) {
|
|
42
|
-
const t = r[n], i = o[n];
|
|
43
|
-
/^on[A-Z]/.test(n) ? t && i ? e[n] = (...a) => {
|
|
44
|
-
const l = i(...a);
|
|
45
|
-
return t(...a), l;
|
|
46
|
-
} : t && (e[n] = t) : n === "style" ? e[n] = { ...t, ...i } : n === "className" && (e[n] = [t, i].filter(Boolean).join(" "));
|
|
47
|
-
}
|
|
48
|
-
return { ...r, ...e };
|
|
49
|
-
}
|
|
50
|
-
function $(r) {
|
|
51
|
-
var n, t;
|
|
52
|
-
let o = (n = Object.getOwnPropertyDescriptor(r.props, "ref")) == null ? void 0 : n.get, e = o && "isReactWarning" in o && o.isReactWarning;
|
|
53
|
-
return e ? r.ref : (o = (t = Object.getOwnPropertyDescriptor(r, "ref")) == null ? void 0 : t.get, e = o && "isReactWarning" in o && o.isReactWarning, e ? r.props.ref : r.props.ref || r.ref);
|
|
54
|
-
}
|
|
55
|
-
var w = [
|
|
56
|
-
"a",
|
|
57
|
-
"button",
|
|
58
|
-
"div",
|
|
59
|
-
"form",
|
|
60
|
-
"h2",
|
|
61
|
-
"h3",
|
|
62
|
-
"img",
|
|
63
|
-
"input",
|
|
64
|
-
"label",
|
|
65
|
-
"li",
|
|
66
|
-
"nav",
|
|
67
|
-
"ol",
|
|
68
|
-
"p",
|
|
69
|
-
"select",
|
|
70
|
-
"span",
|
|
71
|
-
"svg",
|
|
72
|
-
"ul"
|
|
73
|
-
], z = w.reduce((r, o) => {
|
|
74
|
-
const e = /* @__PURE__ */ _(`Primitive.${o}`), n = u((t, i) => {
|
|
75
|
-
const { asChild: s, ...a } = t, l = s ? e : o;
|
|
76
|
-
return typeof window < "u" && (window[Symbol.for("radix-ui")] = !0), /* @__PURE__ */ f.jsx(l, { ...a, ref: i });
|
|
77
|
-
});
|
|
78
|
-
return n.displayName = `Primitive.${o}`, { ...r, [o]: n };
|
|
79
|
-
}, {}), D = "Separator", v = "horizontal", L = ["horizontal", "vertical"], g = u((r, o) => {
|
|
80
|
-
const { decorative: e, orientation: n = v, ...t } = r, i = W(n) ? n : v, a = e ? { role: "none" } : { "aria-orientation": i === "vertical" ? i : void 0, role: "separator" };
|
|
81
|
-
return /* @__PURE__ */ f.jsx(
|
|
82
|
-
z.div,
|
|
83
|
-
{
|
|
84
|
-
"data-orientation": i,
|
|
85
|
-
...a,
|
|
86
|
-
...t,
|
|
87
|
-
ref: o
|
|
88
|
-
}
|
|
89
|
-
);
|
|
90
|
-
});
|
|
91
|
-
g.displayName = D;
|
|
92
|
-
function W(r) {
|
|
93
|
-
return L.includes(r);
|
|
94
|
-
}
|
|
95
|
-
var h = g;
|
|
96
|
-
const V = u(
|
|
97
|
-
({ className: r, orientation: o = "horizontal", decorative: e = !0, ...n }, t) => /* @__PURE__ */ f.jsx(
|
|
98
|
-
h,
|
|
99
|
-
{
|
|
100
|
-
ref: t,
|
|
101
|
-
className: j(
|
|
102
|
-
"shrink-0 bg-border",
|
|
103
|
-
o === "horizontal" ? "h-[1px] w-full" : "h-full w-[1px]",
|
|
104
|
-
r
|
|
105
|
-
),
|
|
106
|
-
decorative: e,
|
|
107
|
-
orientation: o,
|
|
108
|
-
...n
|
|
109
|
-
}
|
|
110
|
-
)
|
|
111
|
-
);
|
|
112
|
-
V.displayName = h.displayName;
|
|
113
|
-
export {
|
|
114
|
-
V as S
|
|
115
|
-
};
|
|
116
|
-
//# sourceMappingURL=separator-D4W12X08.mjs.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"separator-D4W12X08.mjs","sources":["../../../node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-slot/dist/index.mjs","../../../node_modules/@radix-ui/react-separator/node_modules/@radix-ui/react-primitive/dist/index.mjs","../../../node_modules/@radix-ui/react-separator/dist/index.mjs","../../shade/es/components/ui/separator.js"],"sourcesContent":["// src/slot.tsx\nimport * as React from \"react\";\nimport { composeRefs } from \"@radix-ui/react-compose-refs\";\nimport { Fragment as Fragment2, jsx } from \"react/jsx-runtime\";\nvar REACT_LAZY_TYPE = Symbol.for(\"react.lazy\");\nvar use = React[\" use \".trim().toString()];\nfunction isPromiseLike(value) {\n return typeof value === \"object\" && value !== null && \"then\" in value;\n}\nfunction isLazyComponent(element) {\n return element != null && typeof element === \"object\" && \"$$typeof\" in element && element.$$typeof === REACT_LAZY_TYPE && \"_payload\" in element && isPromiseLike(element._payload);\n}\n// @__NO_SIDE_EFFECTS__\nfunction createSlot(ownerName) {\n const SlotClone = /* @__PURE__ */ createSlotClone(ownerName);\n const Slot2 = React.forwardRef((props, forwardedRef) => {\n let { children, ...slotProps } = props;\n if (isLazyComponent(children) && typeof use === \"function\") {\n children = use(children._payload);\n }\n const childrenArray = React.Children.toArray(children);\n const slottable = childrenArray.find(isSlottable);\n if (slottable) {\n const newElement = slottable.props.children;\n const newChildren = childrenArray.map((child) => {\n if (child === slottable) {\n if (React.Children.count(newElement) > 1) return React.Children.only(null);\n return React.isValidElement(newElement) ? newElement.props.children : null;\n } else {\n return child;\n }\n });\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children: React.isValidElement(newElement) ? React.cloneElement(newElement, void 0, newChildren) : null });\n }\n return /* @__PURE__ */ jsx(SlotClone, { ...slotProps, ref: forwardedRef, children });\n });\n Slot2.displayName = `${ownerName}.Slot`;\n return Slot2;\n}\nvar Slot = /* @__PURE__ */ createSlot(\"Slot\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlotClone(ownerName) {\n const SlotClone = React.forwardRef((props, forwardedRef) => {\n let { children, ...slotProps } = props;\n if (isLazyComponent(children) && typeof use === \"function\") {\n children = use(children._payload);\n }\n if (React.isValidElement(children)) {\n const childrenRef = getElementRef(children);\n const props2 = mergeProps(slotProps, children.props);\n if (children.type !== React.Fragment) {\n props2.ref = forwardedRef ? composeRefs(forwardedRef, childrenRef) : childrenRef;\n }\n return React.cloneElement(children, props2);\n }\n return React.Children.count(children) > 1 ? React.Children.only(null) : null;\n });\n SlotClone.displayName = `${ownerName}.SlotClone`;\n return SlotClone;\n}\nvar SLOTTABLE_IDENTIFIER = Symbol(\"radix.slottable\");\n// @__NO_SIDE_EFFECTS__\nfunction createSlottable(ownerName) {\n const Slottable2 = ({ children }) => {\n return /* @__PURE__ */ jsx(Fragment2, { children });\n };\n Slottable2.displayName = `${ownerName}.Slottable`;\n Slottable2.__radixId = SLOTTABLE_IDENTIFIER;\n return Slottable2;\n}\nvar Slottable = /* @__PURE__ */ createSlottable(\"Slottable\");\nfunction isSlottable(child) {\n return React.isValidElement(child) && typeof child.type === \"function\" && \"__radixId\" in child.type && child.type.__radixId === SLOTTABLE_IDENTIFIER;\n}\nfunction mergeProps(slotProps, childProps) {\n const overrideProps = { ...childProps };\n for (const propName in childProps) {\n const slotPropValue = slotProps[propName];\n const childPropValue = childProps[propName];\n const isHandler = /^on[A-Z]/.test(propName);\n if (isHandler) {\n if (slotPropValue && childPropValue) {\n overrideProps[propName] = (...args) => {\n const result = childPropValue(...args);\n slotPropValue(...args);\n return result;\n };\n } else if (slotPropValue) {\n overrideProps[propName] = slotPropValue;\n }\n } else if (propName === \"style\") {\n overrideProps[propName] = { ...slotPropValue, ...childPropValue };\n } else if (propName === \"className\") {\n overrideProps[propName] = [slotPropValue, childPropValue].filter(Boolean).join(\" \");\n }\n }\n return { ...slotProps, ...overrideProps };\n}\nfunction getElementRef(element) {\n let getter = Object.getOwnPropertyDescriptor(element.props, \"ref\")?.get;\n let mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.ref;\n }\n getter = Object.getOwnPropertyDescriptor(element, \"ref\")?.get;\n mayWarn = getter && \"isReactWarning\" in getter && getter.isReactWarning;\n if (mayWarn) {\n return element.props.ref;\n }\n return element.props.ref || element.ref;\n}\nexport {\n Slot as Root,\n Slot,\n Slottable,\n createSlot,\n createSlottable\n};\n//# sourceMappingURL=index.mjs.map\n","// src/primitive.tsx\nimport * as React from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { createSlot } from \"@radix-ui/react-slot\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NODES = [\n \"a\",\n \"button\",\n \"div\",\n \"form\",\n \"h2\",\n \"h3\",\n \"img\",\n \"input\",\n \"label\",\n \"li\",\n \"nav\",\n \"ol\",\n \"p\",\n \"select\",\n \"span\",\n \"svg\",\n \"ul\"\n];\nvar Primitive = NODES.reduce((primitive, node) => {\n const Slot = createSlot(`Primitive.${node}`);\n const Node = React.forwardRef((props, forwardedRef) => {\n const { asChild, ...primitiveProps } = props;\n const Comp = asChild ? Slot : node;\n if (typeof window !== \"undefined\") {\n window[Symbol.for(\"radix-ui\")] = true;\n }\n return /* @__PURE__ */ jsx(Comp, { ...primitiveProps, ref: forwardedRef });\n });\n Node.displayName = `Primitive.${node}`;\n return { ...primitive, [node]: Node };\n}, {});\nfunction dispatchDiscreteCustomEvent(target, event) {\n if (target) ReactDOM.flushSync(() => target.dispatchEvent(event));\n}\nvar Root = Primitive;\nexport {\n Primitive,\n Root,\n dispatchDiscreteCustomEvent\n};\n//# sourceMappingURL=index.mjs.map\n","// src/separator.tsx\nimport * as React from \"react\";\nimport { Primitive } from \"@radix-ui/react-primitive\";\nimport { jsx } from \"react/jsx-runtime\";\nvar NAME = \"Separator\";\nvar DEFAULT_ORIENTATION = \"horizontal\";\nvar ORIENTATIONS = [\"horizontal\", \"vertical\"];\nvar Separator = React.forwardRef((props, forwardedRef) => {\n const { decorative, orientation: orientationProp = DEFAULT_ORIENTATION, ...domProps } = props;\n const orientation = isValidOrientation(orientationProp) ? orientationProp : DEFAULT_ORIENTATION;\n const ariaOrientation = orientation === \"vertical\" ? orientation : void 0;\n const semanticProps = decorative ? { role: \"none\" } : { \"aria-orientation\": ariaOrientation, role: \"separator\" };\n return /* @__PURE__ */ jsx(\n Primitive.div,\n {\n \"data-orientation\": orientation,\n ...semanticProps,\n ...domProps,\n ref: forwardedRef\n }\n );\n});\nSeparator.displayName = NAME;\nfunction isValidOrientation(orientation) {\n return ORIENTATIONS.includes(orientation);\n}\nvar Root = Separator;\nexport {\n Root,\n Separator\n};\n//# sourceMappingURL=index.mjs.map\n","import { jsx } from \"react/jsx-runtime\";\nimport * as React from \"react\";\nimport * as SeparatorPrimitive from \"@radix-ui/react-separator\";\nimport { cn } from \"../../lib/utils.js\";\nconst Separator = React.forwardRef(\n ({ className, orientation = \"horizontal\", decorative = true, ...props }, ref) => /* @__PURE__ */ jsx(\n SeparatorPrimitive.Root,\n {\n ref,\n className: cn(\n \"shrink-0 bg-border\",\n orientation === \"horizontal\" ? \"h-[1px] w-full\" : \"h-full w-[1px]\",\n className\n ),\n decorative,\n orientation,\n ...props\n }\n )\n);\nSeparator.displayName = SeparatorPrimitive.Root.displayName;\nexport {\n Separator\n};\n//# sourceMappingURL=separator.js.map\n"],"names":["REACT_LAZY_TYPE","use","React","isPromiseLike","value","isLazyComponent","element","createSlot","ownerName","SlotClone","createSlotClone","Slot2","React.forwardRef","props","forwardedRef","children","slotProps","childrenArray","React.Children","slottable","isSlottable","newElement","newChildren","child","React.isValidElement","jsx","React.cloneElement","childrenRef","getElementRef","props2","mergeProps","React.Fragment","composeRefs","SLOTTABLE_IDENTIFIER","childProps","overrideProps","propName","slotPropValue","childPropValue","args","result","getter","_a","mayWarn","_b","NODES","Primitive","primitive","node","Slot","Node","asChild","primitiveProps","Comp","NAME","DEFAULT_ORIENTATION","ORIENTATIONS","Separator","decorative","orientationProp","domProps","orientation","isValidOrientation","semanticProps","Root","className","ref","SeparatorPrimitive.Root","cn"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"settings-CK06at6A.mjs","sources":["../src/views/preferences/components/settings.tsx"],"sourcesContent":["import EditProfile from './edit-profile';\nimport React, {useState} from 'react';\nimport {Account} from '@src/api/activitypub';\nimport {Button, Dialog, DialogContent, DialogHeader, DialogTitle, DialogTrigger, H4, LucideIcon, cn} from '@tryghost/shade';\nimport {Link} from '@tryghost/admin-x-framework';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\n\ninterface SettingsProps {\n account?: Account;\n className?: string;\n}\n\nconst Settings: React.FC<SettingsProps> = ({account, className = ''}) => {\n const [isEditingProfile, setIsEditingProfile] = useState(false);\n const navigate = useNavigateWithBasePath();\n\n return (\n <div className={`flex flex-col ${className}`}>\n <SettingSeparator />\n <SettingItem>\n <SettingHeader>\n <SettingTitle>Account</SettingTitle>\n <SettingDescription>\n Edit your profile information and account details\n </SettingDescription>\n </SettingHeader>\n <Dialog open={isEditingProfile} onOpenChange={setIsEditingProfile}>\n <DialogTrigger>\n <SettingAction><Button variant='secondary'>Edit profile</Button></SettingAction>\n </DialogTrigger>\n <DialogContent onOpenAutoFocus={e => e.preventDefault()}>\n <DialogHeader>\n <DialogTitle>Profile settings</DialogTitle>\n </DialogHeader>\n {account && <EditProfile account={account} setIsEditingProfile={setIsEditingProfile} />}\n </DialogContent>\n </Dialog>\n </SettingItem>\n <SettingItem withHover onClick={() => navigate('/preferences/moderation')}>\n <SettingHeader>\n <SettingTitle>Moderation</SettingTitle>\n <SettingDescription>Manage blocked users and domains</SettingDescription>\n </SettingHeader>\n <SettingAction className='flex items-center gap-2'>\n <LucideIcon.ChevronRight size={20} />\n </SettingAction>\n </SettingItem>\n <SettingItem withHover onClick={() => navigate('/preferences/bluesky-sharing')}>\n <SettingHeader>\n <SettingTitle>Bluesky sharing</SettingTitle>\n <SettingDescription>Share content directly on Bluesky</SettingDescription>\n </SettingHeader>\n <SettingAction className='flex items-center gap-2'>\n {account?.blueskyEnabled ? <span className='font-medium text-black'>On</span> : <span>Off</span>}\n <LucideIcon.ChevronRight size={20} />\n </SettingAction>\n </SettingItem>\n <SettingSeparator />\n <SettingItem href='https://ghost.org/help/social-web/' withHover>\n <SettingHeader>\n <SettingTitle>Help</SettingTitle>\n <SettingDescription>Social web guides and support resources</SettingDescription>\n </SettingHeader>\n <SettingAction><LucideIcon.ExternalLink size={18} /></SettingAction>\n </SettingItem>\n </div>\n );\n};\n\nconst SettingTitle = H4;\n\ninterface SettingDescriptionProps {\n children: React.ReactNode;\n className?: string;\n}\n\nconst SettingDescription: React.FC<SettingDescriptionProps> = ({children, className = ''}) => {\n return (\n <span className={`text-sm text-gray-700 ${className}`}>\n {children}\n </span>\n );\n};\n\ninterface SettingHeaderProps {\n children: React.ReactNode;\n className?: string;\n}\n\nconst SettingHeader: React.FC<SettingHeaderProps> = ({children, className = ''}) => {\n return (\n <div className={`relative flex flex-col gap-0.5 ${className}`}>\n {children}\n </div>\n );\n};\n\ninterface SettingActionProps {\n children: React.ReactNode;\n className?: string;\n}\n\nexport const SettingAction: React.FC<SettingActionProps> = ({children, className = ''}) => {\n return (\n <div className={`relative text-gray-500 ${className}`}>\n {children}\n </div>\n );\n};\n\ninterface SettingItemProps {\n children: React.ReactNode;\n className?: string;\n withHover?: boolean;\n to?: string;\n href?: string;\n onClick?: () => void;\n}\n\nconst SettingItem: React.FC<SettingItemProps> = ({children, className = '', withHover = false, to, href, onClick}) => {\n const baseClasses = 'flex items-center justify-between py-3 gap-4';\n const hoverClasses = withHover ? 'relative cursor-pointer before:absolute before:inset-x-[-16px] before:inset-y-[-1px] before:rounded-md before:bg-gray-50 before:opacity-0 before:transition-opacity before:will-change-[opacity] hover:z-10 hover:cursor-pointer hover:border-b-transparent hover:before:opacity-100 dark:before:bg-gray-950' : '';\n const itemClasses = cn(baseClasses, hoverClasses, className);\n\n if (to) {\n return (\n <Link\n className={itemClasses}\n to={to}\n >\n {children}\n </Link>\n );\n }\n\n if (href) {\n return (\n <a\n className={itemClasses}\n href={href}\n rel='noreferrer'\n target='_blank'\n >\n {children}\n </a>\n );\n }\n\n if (onClick) {\n return (\n <div\n className={itemClasses}\n role=\"button\"\n tabIndex={0}\n onClick={onClick}\n >\n {children}\n </div>\n );\n }\n\n return (\n <div className={itemClasses}>\n {children}\n </div>\n );\n};\n\nconst SettingSeparator: React.FC = () => {\n return (\n <hr className='my-3 h-px border-0 bg-gray-200 dark:bg-gray-950' />\n );\n};\n\nexport default Settings;\n"],"names":["Settings","account","className","isEditingProfile","setIsEditingProfile","useState","navigate","useNavigateWithBasePath","jsxs","jsx","SettingSeparator","SettingItem","SettingHeader","SettingTitle","SettingDescription","Dialog","DialogTrigger","SettingAction","Button","DialogContent","e","DialogHeader","DialogTitle","EditProfile","LucideIcon.ChevronRight","LucideIcon.ExternalLink","H4","children","withHover","to","href","onClick","itemClasses","cn","Link"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"step-2-Dcy43H6c.mjs","sources":["../../../node_modules/lucide-react/dist/esm/icons/trending-up.js","../src/assets/images/onboarding/ap-dashed-lines.png","../src/assets/images/onboarding/ap-dashed-lines-dark.png","../src/assets/images/onboarding/avatar-verge.png","../src/components/layout/onboarding/step-2.tsx"],"sourcesContent":["/**\n * @license lucide-react v0.553.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"path\", { d: \"M16 7h6v6\", key: \"box55l\" }],\n [\"path\", { d: \"m22 7-8.5 8.5-5-5L2 17\", key: \"1t1m79\" }]\n];\nconst TrendingUp = createLucideIcon(\"trending-up\", __iconNode);\n\nexport { __iconNode, TrendingUp as default };\n//# sourceMappingURL=trending-up.js.map\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAACZoAAAbmCAMAAAACXGcgAAAAk1BMVEUAAACwuMGvucGwucGvuMKut8GvuMGwu8mut8KuuMOuuMKut8Gut8Gut8Gut8Kvt8GvuMGut8Gvt8Kut8GuuMKut8GvuMKut8Gvt8Gut8Gvt8Gut8Gut8GuuMGut8Gut8Gut8Gut8Gut8Kut8GvuMKvuMKvt8Gut8Gut8GuuMKvuMKvuMGut8Gut8Gut8Gut8Gut8HHW7EVAAAAMXRSTlMACg4HGBUbBScRHyNSMypYXE03Oi1sSHQwYj9neUPHcL+ditCkg7fYfpeQqrDu4Of18VvCRwAAKvNJREFUeNrs3LEJADAMA0ETFd5/46yQUoG7KR4EGgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAF5lAAAoIc0AAGpIMwCAGtkBAKCDNAMAqGHQBAAAAAAAAAAAAAAAAAAAAOBbOY7NAABKrDQDLjt3dAIwDMNQ0ElqivdfuDP0T4G7KR4IBECM5XQWACDFWgUAQAZpBgAQQ5oBAAAAAAAAAAAAAAAAAAAAcK0z3jMAAEK8swsAgAzSDAAgxkwBAJBhugAAyLANmgAAAAAAAAAAAAAAAAAAf51TAABkaMdmAAAppBkAQIx+Cj527tgIQBiIgeDbYJi3+++XGsgU7FZxgUYAQIaWZgAAKfp5CwCACGNKMwAAAAAAAAAAAAAAAACAn8YsAAAy3LsAAMggzQAAYvQeBQBAhN7GZgAAIebuAgAgwjWvAgAAAAAAAAAAAAAAAADgl7HeAgAgwjo+ZwEAQvTxOQsAEGKeVQAARPjYu2MbAGEgBoAfguBFJCoK9p+UGehc3E3hxvZYewEAEGGuqwAAyLCpAQAAAAAAAAAAAAAAAAAA/DR2dwAAACG2PgoAgAijbc4CAISYvQoAgAhn3wUAQAbRDAAghhNNAAAAAAAAAAAAAAAAAIC/5uWpCQAgxPkYNgMASPG8BQBAhhbNAABS9DsKAOBj546NGIShIAp+jGFAGhEgB+6/Umogu2C3jJu5R4T2PwsAgAiL0QwAAAAAAAAAAAAAAAAA4K3+KwAAMlxjLQAAIhzjUwAARGhjKwAAIuzjWwAARNhGKwAAIqxeAAAAAAAAAAAAAAAAAAAAb/VbcxYAIESfmrMAACH2qTkLABBim0cBABDhnFcBABBhmXcBwMPeHZwwDMRAFFUcjBOMTwt7EGz/bboG38bwXhUCwXwgg4gmAAAAAAAAAAAAAAC8yFEAAETY+ywAACLsbXMWACDE1jZnAQBCfHsUAAAZehUAABnG0GoCAAAAAAAAAAAAAAAAAHjoENEEAAixrS4AADIsm7MAACnW9NEEAAgx5qcAAIhwzX8BABDh104zAAAAbnbu5YRhIIoB4LPZfMiuA5vkYALuv03X4JsOM2VISAAAAAAAAAAAAADARYuFJgBAimP6nAUACPGdawEAEGGbrQAAiPCbrwIAIEKfzwIAIEL7S80AAAAAAAAAAAAAAAAAAC5a26MAAIiwD+8ZAAAh3qMXAAAR+tgLAIAI97EVAAARbuMoAAAiLB+FJgAAAAAAJzt3cIMwEANA0AHBwWHA4YGi9F9oasjPj5k2VloAAAAAAAAAAOCkZd4CAIAWZv4CAIAW7rkHAAAtLLkGAAAtjMwAAKCHrBEAALSwva8BAAAAAAAAAAAAAAAAAMAZ4/EJAABaWMpzFgCgi28FAAA9rHUJAABa+NczAABoYa8ZAAC08NoETQAAAAAAAAAO9u4gB0EgioLgj0QzKhAjxjhMvP81OQO7t6g6SDcAAAAAAABw0rpPBQBAhLmrZwAAhPj2WwEAEGHrrQAAiPDunwIAIMLatwIAIML9eS0AAAAAAAAAAAAAAAAAAE5pux0AAECIffwKAIAIy1gKAIAIbfwLAIAIjzEXAAARLuNVAABEmJqJJgAAAAAAAAAAAAc7d3DCMAwFUfAjEROCIU6IInxS/126Bt/2MFPFwsIDAAAAAG7a9m8BABDhOT4FAECEx9CcBQAI0cZZAABkGKsAAMhwrFYAAETYLDMAAAAAAAAAAAAAAAAAgJv68S4AACL0pTkLAJBizF4AAEQ4p+gsAECIfb4KAIAI//krAAAiNH8mAAAAAAAAAAAAAAAXe3eQwiAQRUHwEd0IgmjMEGGyn/ufMGdw94WqezQNAADctfUlAACUcPU5AACUsPZvAAAoofUjAACU8O4tAACUcPY9AACUME0BAAAAAAAAAAAAAACeQggAAFDFPuwAAACKaOMXAABKOMYaAABKOMcWAABKmMcnAACU8BpXAAAAAAAAAAAAAAAAAAC4Z1kCAH/27tiEYSCKguAXAsHZiVFkozOCgwPj/gtUDcpeMNPHskCE97QDAAAI8ZhHAQAQoc1eAABEWOevAADI0MdSAABE+JxrAQAAAAAAAAAAAAAAAABwS3sWAAAR2rADAABIMUYBAJChj1YAAEQ4x1YAAER4jb0AAIjwPSSaAAAAAAAAAAAAAAAAAAA3bftSAABE6H87AOBi715SEAaCKIqWA4NfOkaMieBQsHr/C8waMqvBOdt4PC4ARax9CQAASmhdDgAAoIi5zwEAQAn3PgYAACVcm0ETAAAAAAAAAAAAAAAAAGCnYboEAAAl3PIbAACU8MkWAACUMOUaAACUcMp3AABQwjl/AQBACYfRDQAAAAAAAAAAAAAAAAAAYKfj4xkAAJSw5CsAAChhyH/Axt4d2yAQQzEA/SmQoACuQYhDVyQKRfZfkBmuc/HeGpZtACDCbY0CACBD7wUAQIbRLwUAQITjaAUAAAAAAAAAAAAAAAAAwBntuRUAABFaXwUAQIY1DZsBAIQY0x0AAECI17wXAAARPnMvAAAiXHeBJgAAAAAAAAAAAAAAAADASdtbRRMAIMRvPgoAgAhfm7MAACn+7Nw7DoJQFAXAQ0FDBD9RE9EGQix87H99roHuFjMLmUu7BgCAEp7bKwAAlDBvjwAAUEI3DgEAAAAAAAAAAAAAAAAA4JB5vQUAgBJO7RwAAEqYm3MWAKCIsX0CAEAJQ/sFAIAS+rYFAIAapj4AAAAAAAAAAAAAAAAAABwyLe8AAFDCfV8DAEAJ/b4EAIASuv0bAIA/O3eQgjAQBFG0A7rKRhASRRczEBoR738+z+CuhPdO0TTUJ8PRSwEAEGH2WgAARFg8zQAAAAAAAAAAAAAAAAAAfnSenwIAIENrzgIApJh9KgAAIrz7VgAARNh7KwAAIjycZgAAKYwAAAAAAAAAAAAAAADgj0jOAgCkOMZaAABEeI1rAQAQYR+aswAAIS7jXgAARNjGswDgy94doyAMhEEY/VmCpFAsRBGLTUgsFPf+5/MM6aZ47xRTzQdEuA3TDAAAAAAAAAAAAAAAAADgoDapaAIAhLj3awEAEOG8LgUAQIRH/xQAABGe/V0AAESY+igAADL8vgUAAAAAAAAAAAAAAAAAwCFtvhQAABFefSsAACLMPmcBAFK0vhYAABn63goAgAhjPxUAABGWbS6APzt3bIMwEEVB8IuACKQzITpL4LN17r9C1+DsBTN1rBYAAAAAAAAAAAAAAACAW75rAQCQYYwCACDDz3MWACDFPjxnAQBCbENsBgAQ4hyvAgAgwnK8CwAAAAAAAAAAAAAAAACAW9b2KAAAIvznpwAAiHBMz1kAgBB9tgIAIEKbvQAAiLDMrQAAiPDsWjMAAOBi715SIoqhKIreJFghIiWIT7DhB4V62Mn8h2fLAdjLZ61RbEK4BwAAAAAAAAAAAACAf3o6LDUBW6o1AIZznB8BsJ1SijQDBvTg5iywn5KEGTCmt/MnAHYjzIBBXc73AABgCPn8DoBd1BQAQzuMaAK7qClJMwCAEdSkzAAARpGFGQAAAAD8KQEAwBBKztoMmMb16zUAllVy9scMmMi13wJgWU2YAVO5dHMAwMKEGTCZ3gMAgDF89vsAWE1q3suAKd36cwCsJbUmzYA5vTzmAFhKu2u5BgAAA8jCDIBf9u4gpYEgiAJozaRnSPeAQRLMQhFEohgd5v63c5W1S7s7753iQ/2qAgAA4GZQMAMAqMMwTVMAAPD/himlrGMGNO/6EwDty4IZ0IXPzfUMoAeCGdCF1807AKBpuwDox/d2DIBmjSkFQD+u2yEAGjWmOVnLBHpy2c4B0KY8z5N5JtCVh6M1AKBVO8EMAAAAAG7GOQAAqME4l+JdJgBABYZSio4ZAEAVdiUJZkC/Lu+nAGiIl0xAz97WxwBoQQ6A7l3X5wCoXy6LbAb077y+BEDtclkWHTPgDhzWrwCo3LAss2AG3IOn9SMAaudcBnAnxlMJAAAA+EPW/QcAqMO07PcpAPhl7w5WIoaBAAzHbtuNKa2XHIILInrwIMV9/6fTi+DiyVMG+30PEX7IMAPQ3XnJeXYsEwAghCLMAAAA6ObyaucsEMxk9h84rMv+kgACmXJeEsBBPezvCSCMKW9bMWMGHFbdnxJAGEWYAYdW9rcEEMZJmAHHtl8TQACaDOCLG5pABNO2JQAAAhi3WpdzAgCgu1Lr4j8TACCEO2EGAAAAAN9Gs/8Atx4/nhNAD2NtzblMgBvlaucs0MN9bW0ZEgA/DdIM6GJoWZgB/OJpBP7E+n8AgH9kTgAAhDC3VZsBAEQwt3U1YwYAEMGwrkWYAQDEMJ4SAAAAn+zcSwrDIBSGUVP7MJVkoCUDwf1vsxS6B+/gnFX84OcFgJ/8PB4JAID1cm2t+ZYJABDArfdWNWYAACEchhkAAAAA/OWi/QcACCGX3o8EAMB6ZfReNGYAABEcwzADAAjiZpgBACyX9wQAQAS5jJYAAFgvlzFGSQAArNeH+B8AIIi7YQYAAAAAf9vZEwAAAWznnNPJDACAAOqc89SYAQBE8Bx1SwAAhPBKAAAstr0TAAAR7J/r0v4DAASwt+ua1VMmAEAA1TDjy94dpDYMBEEUHQe1J5CJREshiwHd/5rG4DtML947xV8UFABQRRdmAADrfTUAAEqIM23/AQAqiDPzfjYAAJZ7Zv5/25gBAFTQb2EGAAAAAB9xRQMAoIC4Ms8GAMByj2sY/wMA1NAzhRkAQBEhzAAAlgufTAAANcQcswEAsF7MMXJvAAAs13PkbmMGAFDCjzADAFhPkgEAFBHT9h8AoISYxzEeDQCA5d5hZmMGAFDCPv6EGQBADV2YAQAst/02AAAq2O7j2Bov9u4gBWEgCKLooEOCaLADZnAI3v+aklN0L947RS0+FABAumuYacwAAEr4hGEGAFDEapgBAOR7NAAASugjtP8AABX0EfF+NgAA0j0j3hozAIAS1tf33gAAAACASx/afwCAEvqY89cAAEh3G3OGxgwAoII1DDMAgCq6YQYAkK77ZAIAqGHZz70BAJBv2c8ztgYAQLr7POemMQMAKOFjmAEA5DPJAACKWHbtPwBACVf8P28NAIB04zjE/wAANWyGGQDAn707SG0YiMEwKmzihTEJTTwk7QzMtvc/YRtyCGnx3ik+0A+qYhVmAADptp8AAKCC7WhtCwAA0r3DrN+dMgEACrgLMwCAKlZhBgCQ7xIAAJSwHdP2HwCggv2Ys18DAIB01zmN/wEAali/H8IMAAAAAD722x4AABSw357PIwAASHf5D7N+BgAA+RZhBgBQhpkZAEC+cwkAACo4+/gKAADynX0MGzMAgAqWMZowAwCo4SHMAADy+ZIJAFDEq9n+AwCU8GrjtwUAwB97d5DaQAxEUbCFQ8CZGOKFM3KCMAwIdP8TGoPv0L2oOsVb/JbId1vr1gMAgAKurjIBAKpwAQAAkK//BQAAFfTHWucAACDdK8wexv8AABV8CzMAgCrOwgwAIN8WAACU0Pdp+w8AUEHf57x/BAAA6X7mvH8FAAAFbMIMAAAAAN5OY/dRJgBABaex5rwEAADpLus4/j1mBgBQwSbMAADK+AwAAJK10QIAgALamMcIAADStd9p/A8AUMMmzAAAyrgKMwCAdM32HwCe7NsxDsMgEEVBtomcElkmSlJYRnIB9z9gmtyBLWZO8QVvIYdodysAAKwX7Z7zXQAAWO7Z5zw0ZgAAKRyGGQBAFi4AAACWi/YpAAAkEK3P7sEMACCBJv4HAMjiMMwAALJ4GGYAAMvFVgAAyCBq1/4DAGQQtY9xPgsAAMt9xzj9ZwIApLAZZgAAAADwF/XW/gMAZBB1jrEXAACW2+d1vTRmAAAZbIYZAEAajwIAwGJRtf8AAClEHVctAAAsF3WI/wEActgMMwB+7NsxasQwEIZRTbHNIqwugcUQBArYyPc/X5rcYaZ47xQ/wzdAGcMwAwBIF9p/AIAaot+9AQCQL/q95k8DACDd617z1JgBAJRwGmYAAFX4AAAASBf9qwEAUED0uaaDGQBAAX2udR4NAIB817oMMwCAGt6GGQBAurDJAABqiD61/wAAFUSfe1+vBgBAuu+9xf8AADUchhkAAAAA/Itxa/8BACqIsfb+NAAA0n3Ws381ZgAAFRyPYQYAUMW7AQCQLIb2HwCghBjrGQ2AP/buILVhGAjDqAqzLwUTNeDiCbizie9/vhDIHTSL907xLX5pAJZ7h9n1vw0AAJbbrusQZgAAPfw4Yg4AsJzpPwBAE/H9/BsAAKwXR5VnmQAAHWxVdcQAAKCBhzADAAAAgI+Ytv8AAC3ErHoMAACW+5pVNW3MAAA6OIUZAEAXmzADAFgufgcAAB3EzHMAALBezMycTpkDADRwZhr/AwD0cBNmAAAAAPARu+0/AEALsWemLzMAABq4Z+ZuYwYA0MGt7sIMAKAJ/5gBL/buILWBGAbDqDElFIpps+uQIjw1DEzI/c8XsskVpMV7p/hBHwiAdB/fDQCACr7+tP8AACX83mMem1MmAEABWxxbbwAAFNANMwCAfJ8NAIASxhmjAQCQb5wRx7UBAJDuGjE1ZgAAJfSHYQYAAAAA78ZM+w8AUMI4I/4bAADpLmfEvGnMAAAK6NMwAwCoYhhmAADphp9MAAA1jH3tDQCAfGNfa94aAADp+lzifwCAIn4MMwCAfCYZAEARY9f+AwCU8Ir/49IAAEh3Xys0ZvBk795REIqBMIyGFFZikcstBPHBDQQJZP/LEy3cwkxxzir+4hsGAFLY77thBgCQQzXMAADCtVsBACCD9hqjFQAAwrU+hsYMACCF3TADAMiiGmYAAPEuBQCAFFrX/gMApPCL/88FAIBw5zEOjRkAQAr1aZgBAAAAwL8x0/4DAKTQ+lrvAgBAuFNf63hozAAAEqiHYQYAkEUzzAAAwm1+MgEA5LDNNQsAAPG2+Y3/CwAA4erhKhMAIIurYQYAEM8kAwBIYpvafz7s2zEOgkAQhtEJJQ0kS0JjY1CJkRXufzq38go7xXun+JL5BwBIoXzOcx8DAIDu7i3MVgdNAIAMVmEGAJDFIMwAALorzwAAIINynGcJAAC6K4fxPwBAEqswAwDIYhBmAAD9LQEAQArlqLb/AAAZlKPW7xQAAHQ3tTCzMQMASGHYhBkAAAAA/Ddmtv8AACmUV62PAACgu6WF2eYrEwAgg7FucwAAkIKZGQBAf/MYAABkMO/XOwAA6K+F2bXbmAEAJDAKMwCANG7C7MeuHRIAAIMAAMPeXd+hsPRP9xggthwDAJh3AgCAFW5lAACwweuuAABghXTMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIDPHhwIAAAAAAD5vzaCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwBwcCAAAAAED+r42gqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqirswYEAAAAAAJD/ayOoqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgp7cCAAAAAAAOT/2giqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqsIeHAgAAAAAAPm/NoKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrAHBwIAAAAAQP6vjaCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqKuzBgQAAAAAAkP9rI6iqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqCntwIAAAAAAA5P/aCKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwh4cCAAAAAAA+b82gqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqsAcHAgAAAABA/q+NoKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoq7MGBAAAAAACQ/2sjqKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoKe3AgAAAAAADk/9oIqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrCrt3spg2EYRglCFkWhZh/CjjUGGMCpoH7v7rKn7vIPrSL6JzNPJoreDUaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAb2a7nUyWedfn86MHAMD/MBwu+hH55VLXx2H0/dHq7h8P0wwA4B9ZZNlufRpGV79bXR8/dVVfLmXe/7vdegAAfFWSvM6SqE3Z1Pv9PLq5t7q+3e/HY7GIzrJsPjfDAACe5XU0WeblLLr8aI2ir9FZ9Pp6Pa3Xw+h+DwCAr0qSdPyWRo4Ot6I4L6OX51bX7x9FUTer6NloPk8SQwwA4EmS9ovYaRc9PbZO0ZNzK49+K/PlZvTaAwDgKfqDdLxdjaPT6nbb78vo7ac5Nq3r5nCdRiez1IMYAMATvAzi6G+WeX49Raf7VhU9jr5EJ+tdNp2OewAAPMePn/PVahL5UlVFUVTRg6LVdN0cLuX7r+h+Ohj0AOAPe/eW6yYMBVAUAzaY9ys8g9JEpUrTO//xNT6+7QTC514fyRYwgKMjZAB8SulYSTS32+NxD8Qv4fvH29dPyXApxnHOAwAAAJwj69a1rpX08eXE0vdfju/H4zlNTSBYiAEAAJxAa10pqWJ7Pn+/MunnH8f36+vr5/2upPd9HwbGMAAAgLOkfV8USyq9/XRW6enPz/c4Vkov0+VS11paBQAAAPiUtSadjeQ8TY/Ha5eu707/PZr9fr2elXS1VpXWDGIAAAAnses4Nk0nvf92Wun27vgul6Uo+MIkAADAWZQ1+VDm0vnl+TxejXT3evv93cdx3LZe2qQpCzEAAIATRNb/7XtRNK10/nA23y9nkTbNOHadCQAAAHCOOEvnuZOMbrfrcUzS9jiOx8O3uV63pR6lVW4tCzEAAICPRWHoo2/boll8P52rv3+8XRff+16WFRsxAACAs+i8qvo+kq5v0zRdfd+uTiC2pm7b1be1UQAAAIDPF2Imkur2tlgWLb3c3qZQepum27Z9PzMMacZZrgAAAGexaVqWq5Yet227XIx0cXF8r+04/tuahSzEAAAAPpYoFcdWMt/Hoq5z6XVZtm1LfW9L0xRG2lS50cxhAAAAZ7HZMHSdkR4aZ5aeF6eSTte1LIcwAAAAwFkLMa0zLa3XcSyKTjqrnVI6rYtiHzNpm8VWcXQFAADA5xL5VWk6z2UlHbdt8X8cK5xSWnfDkOc6AAAAwDkia40xvtd1H8deMmyd7973fi1T6UQrFmIAAAAniKJAZGk6zLO/tDu9tBqdTjpJU2Ni3hEDAAA4iwq1jo3vsuvffK/Cd1+WVZX7VioJAAAA8KkoUj5MlqfVEEnPneO77Pu+LAORxbHmE5MAAACnUdZaHSfS+TAM86ykq9LxnVd5nplAcIQYAADACZIkUolUGJssz0NpUzm+s2GoqlRJh9qGijkMAADgLIkKQ2uVtM3yt1A6Th3f2phYW94NAwAAOE+SqEQisjrWJpQOM8e3fZcxviOlooRpDADwl307uGEYhoEgiCOVGOq/4cSSkQpiv2ZeC5ZAkMDfdE47X6danTHGe8w9n7PKtyQAwC2SVGX3PNXKY+U1tw4DALhNd5LenfrK1d3tTB8A4BnH77HyaJswAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAD3twIAAAAAAA5P/aCKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwh4cCAAAAAAA+b82gqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqsAcHAgAAAABA/q+NoKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoq7MGBAAAAAACQ/2sjqKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqoKe3AgAAAAAADk/9oIqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqrCHhwIAAAAAAD5vzaCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqwBwcCAAAAAED+r42gqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqirswYEAAAAAAJD/ayOoqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqgq7dmwDMAzDQFDIBErrzpWQTvtPlzVY3E3xIAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOluFwAAEc7uFAAAEXpuAQAQ4ikAAKJ8PmcAACHO7ogzAIAMPbvzFgAACXrWbgYAkEKZAfCzdwcnDMMwGEa9gVoCPfpiKCTF0f7blWzxH96b4sOWEJBGoQEApHjtJc4AADK8196rBgAACWrtfQwAACLUOQAAiOKGEwBAjNPMGQBACgsBAAA56omzAQBAhFrXAAAghF0AAIAwl5kzAIAQR7eFAACAEDW752cAAJCgVns3AwBIocwAANIoNACAFNVTnAEAZPjMFmcAAClqdh8DAIAI5XoTAEAYN5wAAGJcX/+aAAAh5n3/xBkAQIZ64mwA/Nm5dxyFgSCKoqUJKvKMBqQOEBIYjEEQsP/l8VnFC85ZxZVdrwGIMB3OBQBACFsAAIAw920BABBhej4v4gwAIEIf53ec/RUAAAE+cTYVAAARelcAAGRxcwYAkGK6GQQAAITYzTdxBgAQosc7zjxECwCQoccoAACi+HQGABBjdXMGABDixyAAACDGdxBwKgAAEvSY1wIAIEPbAgAAhHn8FgAAETbLcuoCACBAj+uyrOIMACDCJ842BQBAhP4vAACitN+aAAAp9m7OeLF3BycMxDAUBc0i9pycwhKjGJaA+68wDaSAf5ip4oFkCwBI8fAgAAAgxvm679tHtAAAGc6v600AAAAA8N/eds4AADIcd7c4AwDIcO7ufg8AABLUlmYAADHKRBMAIMynBgAAEZ7dW5wBAESo3eIMACBF7e7nAAAgQn0GAABRylgTACDF1VOcAQBkuLrFGQBAiJrdfQwAABLUnAMAAAAA+GfaOQMACHGstcQZAECGmmutawAAkKCmNAMAiPFj745tGIZhKAoqgFzHjS24MOSKlfafL3CfAX5xN8UDSIKeAwAApDkUGgBAiPN5hjgDAIjQxyPOAABSvHF2NgAAIvSjAQAQxckmAECMveycAQCE2KvEGQBAiD6q6tMAAEjQx2gAAAAAwD/DzhkAQIhPVU1xBgAQoc+q2hsAAAn6lGYAADE8BwAASHNtDQCACPdaU5wBAETY5hJnAAAp3ji7GwAAEbarAQAQZTPWBABI8V2HOAMAyPBdS5wBAD/27hhFARiKouhPEbBIIQxpzFg4pDKz//WpvQt4xTmruPAffEL0+X9OKwAAEvQ5CwAAAAD4ZtqcAQCEaOcccQYAkKHPc84oAAAS9CnNAABieA4AAJDmqtAAAELc9l7iDAAgQl9bnAEApPjE2a0AAIjQrwUAQJTmrAkAkGI8hzgDAMgw9hZnAAAh+tr72QoAgAR9rQIAAAAAvhk2ZwAAIdrj8SfOAAAyXH7fcXYvAAASvOPspwAAyHApAACy3G3OAHixd0epEQJBFEXLvyZBJjGTkQFBFATb/S9wXMb7OGcVl+pqCgjxt+2/4gwAIMLXvIkzAIAUbd78CAAASNH+CwCAKINnTQCAFO/DzhkAQIi5d3EGABCirXecDQUAQIK2/hQAACEMzQAAwrymAgAgwtD7Ic4AADK0tV/HswAASNDWy9wMACDFdwEAkMXsDAAgxXSd4gwAIMPzvMQZAECK6Y4ze2cAACEm15sAAMK44QQAEONh5wwAIMW578tYAAAkGJc7zgoAgAjj8iiAD/t2cMIwDARRVJBLiC2HgI11EAgMAvVfYdqYw3tVfJYdAELYAgAAhPn6OQMACLEZBAAAxKj9ee6jAACQoPbH3QwAIIUyAwBIo9AAAFLUeYszAIAMxz3FGQBAinrPuRUAACLUvQAAEOVVAAAIsY9WAACIMOYUZwAAIdqYaxQAACK0YREAABDDFgAAIMzPzxkAQIjPWgYBAAAh2ljrehcAABK0a7mbAQCkUGYAAGkUGgBAirNfZwEAIMH76uKMP3t3cAIxDENRUKdlScBkIU4wdkj/XW4b/zBTxUNICABIcfa1tgIAIML5KwAAovjhBAAQ45p2zgAAQsy1xBkAQIhzrnsWAAARznkVAAAh3AIAAIS5WgEAEGG77ynOAAAytHm/Yy8AABK08ZqbAQCkUGYAAGkUGgBAivYOcQYAkGEfrzgDAEjRRu+fAgAgQnsKAIAofjgBAMR4DjtnAAAhRu/iDAAgRDt6PwoAgAjfw0UAAEAMtwAAAGH+7NxRbsJAEETBMUrCBjvyoiDEeuX7XxOO0R9Vp3gateZoBQBAhJ85uzgDAMjQ+pz7rQAASND6dDcDAEihzAAA0nwVAAAZ2ryLMwCADLd9DHEGABCi7WN4RAsAEKL9FQAAUZzOAABiHE+bMwCADNdtDHEGAJDh8tpGfxYAAAk+cfZfAABkuFwLAIAoh80ZAECItfdTnAEARFheW+/nbwEAEGB5bH0tAAAiLK0AAMhicwYAkGLdz+8CACBBu+/iDAAgxPL4xJlHtADAm707uEEghqEoGF9gBWGR0SpK/5Ui7hTwDzNVPCmxTYa6rgEAAAAA/PN51QAAIMG93++POAMAiFBnz3kOAAAS1LmkGQBAirJGAwAgzOXPGQBAiMecpjUBADLUa4ozAIAUvzh7DAAAIpTrTQAAYcqzJgBAiqO3OAMAyHB0izMAgBC1u9siWgCADLX3AAAAAAD+2c43AQCEuHcvAwEAABlqr7WeAwCABHVJMwCAGI4DAACkORQaAECI21qmNQH4sm8HpxHEQBBFNbQ9FhbMQVr2IFD+aW4CG0Ad3oviQ3cBGa7XW5wBAKS4XufcDQCACFdvAABEMdkEAIgxzlMNAIAE4xxxBgAQop5zzl8DACBBPU8DAAAAAL7p3c8ZAECIvbc4AwDIUH3v/d8AAEhQXZoBAMQoF00AgDBDoQEAhPhZyyAAACBD9SXOAABS1FjrtwEAEKFGAwAgiskmAECMe1prAgCEuOcUZwAAIWrMORsAABFqWAQAAADwYe+ObRiGYSgKCokj2hLkSoX3nzRInwF+cTfFA0iCAPw37JwBAKRYaw1xBgAQ4T3WWr0BAJDgPaQZAEAMzwEAANJ0hQYAEOJ6HgcBAAAZajzPM6oBABDgF2dXAwAgQrnVBAAIU8aaAAApjt3FGQBAhs/e4gwAIET1vXcDACBCdRcBAAAAAPBft3MGAJDivs9DnAEARKh+n9OLAACADNXPTwMAIIPnAAAAaS6FBgAQ4jWnOAMAyFDHPIc4AwDIUH3OVwO+7N3BEcAgDAMwWggcsP++XaAD+CFN4SMhBoAIz2gAAGQx1gQASFHTzhkAQIh579EQAACQoY97ZwMAIEIf2psAAAAA4N/r0BkAQIpzhnAGAJChj3OmcAYAkKHXeRoAABl6AwAgi7czAIAUz/QhAAAgxKo5SzgDAMjQaw5TTQCAEF3pOQAAAAD8e8s9DQCAEHuUcAYAEGLtKmtnAAAh1nZHAwAAAAD+vXbOAABCrNpbOPvYu4MaAGIQioIFDqT+De8KqIB/mFHxUkoAAMgw97cHAIAE097NAABiKDMAgDTGmgAAKfa2OAMAyLDdLc4AAEJstxMBAAAptg4AAAAA8DLlzxkAQIiqMtkEAEghzgAAgpQbAQAAAADgehMAQLgZcQYAkGLEGQBAjrEQAAAAAAAAAAAAAAAAAAAAAMDXHhwSAAAAAAj6/9oPZgAAAAAAYAlAtkZUchSDwAAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAIAAADajyQQAAAKEElEQVR42uzPAQ0AIAACMDCi/btoD/Y3eG9fFp2MEhMTExMTExMTExMT++3bU5hkabbG8f+7vh0oZaFt2+4e2545tu1z7o9t2xjbM23btstIRkbsb73D6pNVeVGNwuTz9O9Zd8l/RGzv/S2uYUdEHnL8eHfvIUh2KsIJ5rmwnEQdldV3jY3GS5WhiG3UoJtptOigyX2PnG5qEAlgviEly+OP9dc9tlQOWQg/77A2Zk9+LT/yB3u7A4AMgcVzY1Jbnh7+/vdsfOiqfeRAbCeMUdtM/OjvDl/+bfsCNGJOmUxO6jfet27tYwZZ6IV8FMP9L36oXb+6usGdJIJimnxO4ybbbutu1oKJUILnh6XqqiNnz37TXrXn2q8UU/KZcfE9t03dfI3CRdiyX0hY46zrl17471MximBWRgR6biOVhoYMsgESmE+MyuitP+rFK1UUxQ0SCiQjVNzGp/9jKmaXN6ZYxRb5/MMqUSlXf7FuXttWei62zHM2EiMZ0QJQQGzLtCsPGL70basoI3moNAA2gDJ56r7Rg1d1SjaGlHFAPP8wpMhm9b39B26cjWwAIZlvDlvH84atY6BJGgILQGa+4jz1glixX6BiFReERQaWLXPntTObHusLWqktg5R5YcsYtmYmu9d8fMQIZ4vn/NcAuCb+OrXGuCL+nxA1cNIKi0yQjUkgZnAmaNHg1DfWssJguYAS7MBZA1qufv9sHSwyEpS6SOgFhRmQw7rm86PNT1XoILEtlxnLaGiTyqqCPXfsxg6ycXZMhBIZWUDtC0m1u8/Uma9aCtgFAIStCp1IPXzT4M5rys7cjhmkGrWZXr/8o3+14Yf+eG/PK6vZaxzrHu7kbBiyIIs5BKqMr4s6iAQ5kAGRQYDleNn7BqsOoQIyRghISqpVq//67YGnl+/MMEBZBFGbL/8P7/75uurwYFuhQvrj//Lwp/+iH6PlNbKbYo5UpgyOdlkoEwnjQCBb2Vla3/FT+6lIBFQkXFAEtpvHbhvcdonDZSfvUgmlbNRuXHbNp2ZIthPg8Lf96GFL+ou6dVFvtIR22dwpo7HucHlvuLI4rATJgQw2bqM96/WT+x3RsQkjDALslEXrKz8+iOFSyzs5DGy1KaL2r//iaGq8ZXuZyhWHlHPfEq3cqiDPHYsUCSZwE2RgYbAdpeeXv28JEagKoIFAFYDZ8fXDWy6tpKq1k8NSyCWsFj9ydfP0PSMykwoGG5Aairu89D2d/rJZlKD5YwEITCQyYQrhA46dPuIsgiJ1CYEAKEBmPHSDH75lMW4KuSv27m2AGN+09MvvX0+VDBYWIAJkhked0T3g6DZc2RGrYmQn7Ynnx96HdpkncbSdz/3n5jpdbFDsijCEAVwu/EBnyxOVBBkMxhhDrjq4nPSKVgp2xJIgZHemX/sdney0zGP85N2j6z/bKdlIttnZYRYEJFTI4fpln/7XSWUYoQSDUQZdl3jtdy+tvXXsiByWM/LYCyaOPmtJyMwTo/Kxf5jQYMyWqWLnhc1rE6hTF1/+idy8JgEjfTMvlMXywad3T3/jZnZEELgt09/+SyvKIoIO86x9uL3pwijqWCDLOz1Mc/4ZZGvTk9x++QxO2yQgLECYwrf9wgGlN0QGDJBie4mRDzshTrygb7UgDCQYA07nbZfOjK/uZmKMG7Qr3jHxjBSj8f6Nn5v1yEZGEBIEoSjSkWcuO+qMqaRKgLGYT1j1rNe7vyIkIQBjqDY2teb1nxq2Mz3IsLDsnRs2T4Cyf80XNPEUYaHKtvqL44w3ddQgZ2CjZHthL1o+PP21ogkoMiiFjJAx6x6ut168LNwGQgasXRyGkTXYsOTDfzWhmsZsS8Fpr2sWrRwJBBYW2xGx97HDY89bhGwBhiEOKAZq/s8frqnTvcjO/B/eZWECU7LzyX8ajj8lKGxHHHNm/+BTZjIyHVKK7dVm8PrvH/bHIgwYpXmG1j2Ul/13T99MxcjaDWHGQlgzSy76yBZXMY87/rafKaNmwkIOubKtFQdvePW37e9IUiCD6aEqm8olHxzvD/cxjYWjGsBi1y9jxokaf3UV0kxvGCWAcUKFShL4jNePHXradKhimzAYBxnY8su/r+2vAEwgIwISVOXx1aPbvhSVgABwCGl3fBRJCBPVg4dujcfvriaxIOZspBQ9vel7lqsZSRIGUBobLV41+dI3H0RYMjICEgQS8cRd9aHbSXvbNbJ2eZiVgExDTG9qLn//TDFWpjACIRtT6qmv6Kw6ZAQGSa0wRKoecUYeeBSoYrZKI2hj5AvfPzszvriI+XZxGIFSWLkoMi79v8UTa6uzJgZAICFruP/R3SPOzoyUhQsOo9oMT3uNl64qUkgNFgaKjF23PMLlH6lyr+TuD5NkCaUsd4bjvY//7VPUwJaFq0EA3WYxF7yD2owDWCDIWLTl5e9ZTAABQiBwCNx2P/b363NyKZDK3R2GBbKcYNWAyz68bONTIxEgaBMgRUnlOW9YuvLAdutPYNVXv5t9DmsQABhGUAHZ654YXfkZimUsx+4OE98gIVyq2PTYojsuLMpRi5Ne8QCsShD9FfFtP9dGTBtZKovGv+3X9qFrW5CQZAcL1SG666I69fjKpAinKi9Aw86QM/Hl/xxs2dSlDEUlgzIIO0W6yY17q7ThTPKUl3b3PVxCUkKAiQThyEF73RdnR4MGBAUH2tNhyuaeyzt3XzmUOkTijtwUk9q649H2wbFodM5bm9JXkkJgkEkI9NX3SjdeFEmDhUAG7eEwu2BKdiHMIuOU7UCuSqsGTYix/QYnvryPJGEQaWQXXPHwU387Ndi8rOMQYIgWd/bwFU0piaxyhQTkwAC4OEvtglOj484dHnj8ImQhYQhwmKBueCwu/K9FTXYAMGAKsIfDwoGjqtRIK7FMtCVHhN1RzDqqY/at3zumnk2FhCQFIGB40cfWz25aIgslaoVNsOdXHgIoBgKwAJcMYwu7V6iHnD514uv2I5CLkTUbIEelTq/p3/zJtgoQlglE+Fv34roFsoRrM/n2Hx1TRxhksGiQUymXR++oT9zRWRh3DRiBZYRl7XuET3xVIEuCKklZAGO5XvWJ4cym7sIIAyBBRFvDJ17QWXlgBwEVBAYMcplc7cs/XgMWUFgYV4V7M+e+cba7GCFZuAEQyGr12X/eOLl6cbUWRpjACJFm7ICZU1+9nGhxQgCgqmp7cm37+f8KZUeKBRJmjFCNGLzrx8qSvUP0iEAgANukb/rS9MTqniyT7FQNu4StFhW59Ht5/vnLnr6rIjGHU3WGaz6VdWZJiJ1ulz3bYoiWbCS7N6gxKhnMUQPVEjVoe8hGWgjvGADZECMTDBY16srBHJJxoBEaGeEGLYgwtbgkMioClyrmkiWwOyhBUkIshDAahNwIAESwDQvzDdo6C+WjCOKbvOPvevFGzBfDFr4Xwxa+F8MWnq8AaGDjDHVEGHsAAAAASUVORK5CYII=\"","import Header from './components/header';\nimport React, {ReactNode} from 'react';\nimport apDashedLines from '@assets/images/onboarding/ap-dashed-lines.png';\nimport apDashedLinesDark from '@assets/images/onboarding/ap-dashed-lines-dark.png';\nimport flipboardAvatar from '@assets/images/onboarding/avatar-flipboard.png';\nimport vergeAvatar from '@assets/images/onboarding/avatar-verge.png';\nimport {Avatar, AvatarFallback, AvatarImage, Button, LucideIcon, Separator} from '@tryghost/shade';\nimport {useNavigateWithBasePath} from '@src/hooks/use-navigate-with-base-path';\n\nconst Reply: React.FC<{\n avatarNo: number,\n name: string,\n handle: string,\n timestamp: string,\n children?: ReactNode\n}> = ({avatarNo, name, handle, timestamp, children}) => {\n return (\n <div>\n <div className='flex w-full items-start gap-3'>\n <Avatar className='z-50 size-9 border border-white'>\n <AvatarImage src={`https://i.pravatar.cc/150?img=${avatarNo}`} />\n <AvatarFallback className='bg-yellow font-semibold text-white'>CN</AvatarFallback>\n </Avatar>\n <div className='flex flex-col gap-2 text-sm'>\n <div className='mt-0.5 flex flex-col gap-0.5'>\n <div className='font-semibold leading-tighter'>{name} <span className='font-normal text-gray-700 dark:text-gray-600'>{handle}</span></div>\n <div className='flex items-center gap-1 leading-tighter text-gray-700 dark:text-gray-600'>\n <LucideIcon.Reply size={14} strokeWidth={1.5} />\n <span>Replied to your post {timestamp}</span>\n </div>\n </div>\n <div className='text-md'>\n {children}\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nconst Reaction: React.FC<{\n type: 'like' | 'repost',\n names: string,\n timestamp: string,\n children?: ReactNode\n}> = ({type, names, timestamp, children}) => {\n return (\n <div>\n <div className='flex w-full items-start gap-3'>\n <div className={`flex size-9 max-h-9 min-h-9 min-w-9 max-w-9 items-center justify-center rounded-full bg-gradient-to-t text-white ${type === 'like' ? 'from-pink-400 to-pink-600' : 'from-blue-400 to-blue-600'}`}>\n {type === 'like' ? <LucideIcon.Heart size={20} /> : <LucideIcon.Repeat size={20} />}\n </div>\n <div className='flex flex-col gap-2 text-sm'>\n <div className='flex flex-col gap-3'>\n {children}\n <div className='flex flex-col gap-0.5'>\n <div className='font-semibold leading-tighter'>{names} <span className='font-normal text-gray-700 dark:text-gray-600'>{type === 'like' ? 'liked' : 'reposted'} your post</span></div>\n <div className='text-xs text-gray-700 dark:text-gray-600'>{timestamp}</div>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n};\n\nconst Step2: React.FC = () => {\n const navigate = useNavigateWithBasePath();\n\n return (\n <div className='relative flex size-full max-h-screen flex-col gap-4 overflow-hidden px-14'>\n <img className='absolute left-1/2 top-[120px] w-full min-w-[1240px] max-w-[1300px] -translate-x-1/2 dark:hidden' src={apDashedLines} />\n <img className='dark:visible! dark:block! absolute left-1/2 top-[120px] hidden w-full min-w-[1240px] max-w-[1300px] -translate-x-1/2' src={apDashedLinesDark} />\n <Header>\n <div className='flex flex-col justify-between gap-4 text-xl font-medium'>\n <h1 className='max-w-[680px]'>Feel the network effect.</h1>\n <div className='flex max-w-[680px] flex-col gap-4'>\n <p className='tracking-tight text-gray-700 dark:text-gray-600'>People who follow you can <span className='font-semibold text-black dark:text-white'>like, reply, repost and interact</span> with your posts. Their followers will see those interactions too, distributing your content even more widely, to a brand new audience.</p>\n <p className='tracking-tight text-gray-700 dark:text-gray-600'>Best of all, you get realtime feedback and visibility when something you published is spreading fast across the social web.</p>\n </div>\n </div>\n <Button className='min-w-60 bg-gradient-to-r from-purple-500 to-[#6A1AD6] hover:opacity-90 dark:text-white' size='lg' onClick={() => navigate('/welcome/3')}>Next →</Button>\n </Header>\n <div className='mt-8 flex h-full max-h-[670px] flex-col items-stretch justify-end'>\n <div className='relative -mx-14 mt-5 w-[calc(100%+112px)] overflow-y-hidden px-14 pt-8'>\n <div className='relative mx-auto h-[694px] w-full max-w-xl rounded-2xl border border-gray-200/70 bg-white shadow-xl dark:border-gray-900 dark:bg-[#101114] dark:shadow-xl dark:shadow-[#1e1b4b]/10'>\n <div className='absolute -right-8 -top-4 flex h-8 animate-onboarding-followers items-center gap-1.5 rounded-full bg-gradient-to-t from-black to-gray-900 px-3 font-semibold text-white opacity-0'>\n <LucideIcon.TrendingUp size={18} />\n 270 followers this week\n </div>\n <div className='flex h-full flex-col items-stretch gap-6 p-8'>\n <Reply avatarNo={40} handle='@jamie@larson.com' name='Jamie Larson' timestamp='just now'>\n This resonates with me on so many levels. Especially the part about the difficulty of challenges that you can't anticipate!\n </Reply>\n <Separator />\n <Reaction names='The Verge and 22 others' timestamp='Just now' type='like'>\n <div className='isolate flex items-center'>\n <Avatar className='z-30 size-9 border border-white'>\n <AvatarImage src={vergeAvatar} />\n <AvatarFallback className='bg-[#BAB890] font-semibold text-white'>TV</AvatarFallback>\n </Avatar>\n <Avatar className='z-20 -ml-3 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=1' />\n <AvatarFallback className='bg-green-400 text-white'>WA</AvatarFallback>\n </Avatar>\n <Avatar className='z-10 -ml-3 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=10' />\n <AvatarFallback className='bg-blue text-white'>FR</AvatarFallback>\n </Avatar>\n </div>\n </Reaction>\n <Separator />\n <Reply avatarNo={41} handle='@chris@best.com' name='Chris' timestamp='2 hours ago'>\n This is incredible. <strong>@jairaj</strong> maybe we should join the fediverse?\n </Reply>\n <Separator />\n <Reaction names='Flipboard and 4 others' timestamp='Yesterday' type='repost'>\n <div className='isolate flex items-center'>\n <Avatar className='z-50 size-9 border border-white'>\n <AvatarImage src={flipboardAvatar} />\n <AvatarFallback className='bg-yellow font-semibold text-white'>CN</AvatarFallback>\n </Avatar>\n <Avatar className='z-40 -ml-3 size-9 border border-white'>\n <AvatarImage src='' />\n <AvatarFallback className='bg-yellow text-white'>CN</AvatarFallback>\n </Avatar>\n <Avatar className='z-30 -ml-3 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=4' />\n <AvatarFallback className='bg-yellow text-white'>CN</AvatarFallback>\n </Avatar>\n <Avatar className='z-20 -ml-3 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=5' />\n <AvatarFallback className='bg-green-400 text-white'>WA</AvatarFallback>\n </Avatar>\n <Avatar className='z-10 -ml-3 size-9 border border-white'>\n <AvatarImage src='' />\n <AvatarFallback className='bg-blue text-white'>FR</AvatarFallback>\n </Avatar>\n </div>\n </Reaction>\n <Separator />\n <Reaction names='Holly Flax and Michael Scott' timestamp='Yesterday' type='like'>\n <div className='isolate flex items-center'>\n <Avatar className='z-20 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=8' />\n <AvatarFallback className='bg-green-400 text-white'>WA</AvatarFallback>\n </Avatar>\n <Avatar className='z-10 -ml-3 size-9 border border-white'>\n <AvatarImage src='https://i.pravatar.cc/150?img=20' />\n <AvatarFallback className='bg-blue text-white'>FR</AvatarFallback>\n </Avatar>\n </div>\n </Reaction>\n </div>\n </div>\n <div className='absolute inset-x-0 bottom-0 h-18 bg-gradient-to-t from-white via-[rgba(255,255,255,0.71)] to-[rgba(255,255,255,0)] dark:from-black dark:via-[rgba(0,0,0,0.71)] dark:to-[rgba(0,0,0,0)]'></div>\n </div>\n </div>\n </div>\n );\n};\n\nexport default Step2;\n"],"names":["__iconNode","TrendingUp","createLucideIcon","apDashedLines","apDashedLinesDark","vergeAvatar","Reply","avatarNo","name","handle","timestamp","children","jsx","jsxs","Avatar","AvatarImage","AvatarFallback","LucideIcon.Reply","Reaction","type","names","LucideIcon.Heart","LucideIcon.Repeat","Step2","navigate","useNavigateWithBasePath","Header","Button","LucideIcon.TrendingUp","Separator","flipboardAvatar"],"mappings":";;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa;AAAA,EACjB,CAAC,QAAQ,EAAE,GAAG,aAAa,KAAK,SAAQ,CAAE;AAAA,EAC1C,CAAC,QAAQ,EAAE,GAAG,0BAA0B,KAAK,SAAQ,CAAE;AACzD,GACMC,IAAaC,EAAiB,eAAeF,CAAU,GCb7DG,IAAe,ktdCAfC,IAAe,8rdCAfC,IAAe,k9GCSTC,IAMD,CAAC,EAAC,UAAAC,GAAU,MAAAC,GAAM,QAAAC,GAAQ,WAAAC,GAAW,UAAAC,QAElCC,gBAAAA,EAAAA,IAAC,OAAA,EACG,UAAAC,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,iCACX,UAAA;AAAA,EAAAA,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,mCACd,UAAA;AAAA,IAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAK,iCAAiCR,CAAQ,IAAI;AAAA,IAC/DK,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,sCAAqC,UAAA,KAAA,CAAE;AAAA,EAAA,GACrE;AAAA,EACAH,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,+BACX,UAAA;AAAA,IAAAA,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,gCACX,UAAA;AAAA,MAAAA,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,iCAAiC,UAAA;AAAA,QAAAL;AAAA,QAAK;AAAA,QAACI,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAU,gDAAgD,UAAAH,EAAA,CAAO;AAAA,MAAA,GAAO;AAAA,MACpII,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,4EACX,UAAA;AAAA,QAAAD,gBAAAA,EAAAA,IAACK,GAAA,EAAiB,MAAM,IAAI,aAAa,KAAK;AAAA,+BAC7C,QAAA,EAAK,UAAA;AAAA,UAAA;AAAA,UAAsBP;AAAA,QAAA,EAAA,CAAU;AAAA,MAAA,EAAA,CAC1C;AAAA,IAAA,GACJ;AAAA,IACAE,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAU,WACV,UAAAD,EAAA,CACL;AAAA,EAAA,EAAA,CACJ;AAAA,EAAA,CACJ,EAAA,CACJ,GAIFO,IAKD,CAAC,EAAC,MAAAC,GAAM,OAAAC,GAAO,WAAAV,GAAW,UAAAC,QAEvBC,gBAAAA,EAAAA,IAAC,OAAA,EACG,UAAAC,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,iCACX,UAAA;AAAA,EAAAD,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAW,oHAAoHO,MAAS,SAAS,8BAA8B,2BAA2B,IAC1M,UAAAA,MAAS,SAASP,gBAAAA,EAAAA,IAACS,GAAA,EAAiB,MAAM,GAAA,CAAI,IAAKT,gBAAAA,MAACU,GAAA,EAAkB,MAAM,GAAA,CAAI,EAAA,CACrF;AAAA,wBACC,OAAA,EAAI,WAAU,+BACX,UAAAT,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,uBACV,UAAA;AAAA,IAAAF;AAAA,IACDE,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,yBACX,UAAA;AAAA,MAAAA,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,iCAAiC,UAAA;AAAA,QAAAO;AAAA,QAAM;AAAA,QAACP,gBAAAA,EAAAA,KAAC,QAAA,EAAK,WAAU,gDAAgD,UAAA;AAAA,UAAAM,MAAS,SAAS,UAAU;AAAA,UAAW;AAAA,QAAA,EAAA,CAAU;AAAA,MAAA,GAAO;AAAA,MAC/KP,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAU,4CAA4C,UAAAF,EAAA,CAAU;AAAA,IAAA,EAAA,CACzE;AAAA,EAAA,EAAA,CACJ,EAAA,CACJ;AAAA,EAAA,CACJ,EAAA,CACJ,GAIFa,IAAkB,MAAM;AAC1B,QAAMC,IAAWC,EAAA;AAEjB,SACIZ,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,6EACX,UAAA;AAAA,IAAAD,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAU,mGAAkG,KAAKT,GAAe;AAAA,IACrIS,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAU,wHAAuH,KAAKR,GAAmB;AAAA,2BAC7JsB,GAAA,EACG,UAAA;AAAA,MAAAb,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,2DACX,UAAA;AAAA,QAAAD,gBAAAA,EAAAA,IAAC,MAAA,EAAG,WAAU,iBAAgB,UAAA,4BAAwB;AAAA,QACtDC,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,qCACX,UAAA;AAAA,UAAAA,gBAAAA,EAAAA,KAAC,KAAA,EAAE,WAAU,mDAAkD,UAAA;AAAA,YAAA;AAAA,YAA0BD,gBAAAA,EAAAA,IAAC,QAAA,EAAK,WAAU,4CAA2C,UAAA,oCAAgC;AAAA,YAAO;AAAA,UAAA,GAAuI;AAAA,UAClUA,gBAAAA,EAAAA,IAAC,KAAA,EAAE,WAAU,mDAAkD,UAAA,8HAAA,CAA2H;AAAA,QAAA,EAAA,CAC9L;AAAA,MAAA,GACJ;AAAA,MACAA,gBAAAA,EAAAA,IAACe,GAAA,EAAO,WAAU,2FAA0F,MAAK,MAAK,SAAS,MAAMH,EAAS,YAAY,GAAG,UAAA,SAAA,CAAW;AAAA,IAAA,GAC5K;AAAA,0BACC,OAAA,EAAI,WAAU,qEACX,UAAAX,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,0EACX,UAAA;AAAA,MAAAA,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,sLACX,UAAA;AAAA,QAAAA,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,oLACX,UAAA;AAAA,UAAAD,gBAAAA,EAAAA,IAACgB,GAAA,EAAsB,MAAM,GAAA,CAAI;AAAA,UAAE;AAAA,QAAA,GAEvC;AAAA,QACAf,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,gDACX,UAAA;AAAA,UAAAD,gBAAAA,EAAAA,IAACN,GAAA,EAAM,UAAU,IAAI,QAAO,qBAAoB,MAAK,gBAAe,WAAU,YAAW,UAAA,8HAAA,CAEzF;AAAA,gCACCuB,GAAA,EAAU;AAAA,UACXjB,gBAAAA,EAAAA,IAACM,GAAA,EAAS,OAAM,2BAA0B,WAAU,YAAW,MAAK,QAChE,UAAAL,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,6BACX,UAAA;AAAA,YAAAA,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,mCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAKV,EAAA,CAAa;AAAA,cAC/BO,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,yCAAwC,UAAA,KAAA,CAAE;AAAA,YAAA,GACxE;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,kCAAA,CAAkC;AAAA,cACnDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,2BAA0B,UAAA,KAAA,CAAE;AAAA,YAAA,GAC1D;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,mCAAA,CAAmC;AAAA,cACpDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,sBAAqB,UAAA,KAAA,CAAE;AAAA,YAAA,EAAA,CACrD;AAAA,UAAA,EAAA,CACJ,EAAA,CACJ;AAAA,gCACCa,GAAA,EAAU;AAAA,UACXhB,gBAAAA,EAAAA,KAACP,KAAM,UAAU,IAAI,QAAO,mBAAkB,MAAK,SAAQ,WAAU,eAAc,UAAA;AAAA,YAAA;AAAA,YAC3DM,gBAAAA,EAAAA,IAAC,YAAO,UAAA,UAAA,CAAO;AAAA,YAAS;AAAA,UAAA,GAChD;AAAA,gCACCiB,GAAA,EAAU;AAAA,UACXjB,gBAAAA,EAAAA,IAACM,GAAA,EAAS,OAAM,0BAAyB,WAAU,aAAY,MAAK,UAChE,UAAAL,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,6BACX,UAAA;AAAA,YAAAA,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,mCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAKe,EAAA,CAAiB;AAAA,cACnClB,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,sCAAqC,UAAA,KAAA,CAAE;AAAA,YAAA,GACrE;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,GAAA,CAAG;AAAA,cACpBH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,wBAAuB,UAAA,KAAA,CAAE;AAAA,YAAA,GACvD;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,kCAAA,CAAkC;AAAA,cACnDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,wBAAuB,UAAA,KAAA,CAAE;AAAA,YAAA,GACvD;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,kCAAA,CAAkC;AAAA,cACnDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,2BAA0B,UAAA,KAAA,CAAE;AAAA,YAAA,GAC1D;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,GAAA,CAAG;AAAA,cACpBH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,sBAAqB,UAAA,KAAA,CAAE;AAAA,YAAA,EAAA,CACrD;AAAA,UAAA,EAAA,CACJ,EAAA,CACJ;AAAA,gCACCa,GAAA,EAAU;AAAA,UACXjB,gBAAAA,EAAAA,IAACM,GAAA,EAAS,OAAM,gCAA+B,WAAU,aAAY,MAAK,QACtE,UAAAL,gBAAAA,EAAAA,KAAC,OAAA,EAAI,WAAU,6BACX,UAAA;AAAA,YAAAA,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,mCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,kCAAA,CAAkC;AAAA,cACnDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,2BAA0B,UAAA,KAAA,CAAE;AAAA,YAAA,GAC1D;AAAA,YACAH,gBAAAA,EAAAA,KAACC,GAAA,EAAO,WAAU,yCACd,UAAA;AAAA,cAAAF,gBAAAA,EAAAA,IAACG,GAAA,EAAY,KAAI,mCAAA,CAAmC;AAAA,cACpDH,gBAAAA,EAAAA,IAACI,GAAA,EAAe,WAAU,sBAAqB,UAAA,KAAA,CAAE;AAAA,YAAA,EAAA,CACrD;AAAA,UAAA,EAAA,CACJ,EAAA,CACJ;AAAA,QAAA,EAAA,CACJ;AAAA,MAAA,GACJ;AAAA,MACAJ,gBAAAA,EAAAA,IAAC,OAAA,EAAI,WAAU,yLAAA,CAAyL;AAAA,IAAA,EAAA,CAC5M,EAAA,CACJ;AAAA,EAAA,GACJ;AAER;","x_google_ignoreList":[0]}
|