2023-12-29 11:07:48 +00:00
|
|
|
import type { PopupProps } from '../../_shared/Popup'
|
|
|
|
|
|
|
|
import { clsx } from 'clsx'
|
2024-01-15 13:22:43 +00:00
|
|
|
import { createSignal, Show } from 'solid-js'
|
2023-12-29 11:07:48 +00:00
|
|
|
|
|
|
|
import { useLocalize } from '../../../context/localize'
|
|
|
|
import { Popup } from '../../_shared/Popup'
|
|
|
|
import { SoonChip } from '../../_shared/SoonChip'
|
|
|
|
|
|
|
|
import styles from './FeedArticlePopup.module.scss'
|
|
|
|
|
2024-01-15 13:22:43 +00:00
|
|
|
type Props = {
|
2023-12-29 11:07:48 +00:00
|
|
|
isOwner: boolean
|
2024-01-05 19:31:28 +00:00
|
|
|
onInviteClick: () => void
|
|
|
|
onShareClick: () => void
|
2023-12-29 11:07:48 +00:00
|
|
|
} & Omit<PopupProps, 'children'>
|
|
|
|
|
2024-01-15 13:22:43 +00:00
|
|
|
export const FeedArticlePopup = (props: Props) => {
|
2023-12-29 11:07:48 +00:00
|
|
|
const { t } = useLocalize()
|
2024-01-15 13:22:43 +00:00
|
|
|
const [isHidden, setHidden] = createSignal(false)
|
2023-12-29 11:07:48 +00:00
|
|
|
return (
|
|
|
|
<>
|
2024-01-15 13:22:43 +00:00
|
|
|
<Popup
|
|
|
|
{...props}
|
|
|
|
closePopup={() => isHidden()}
|
|
|
|
horizontalAnchor={'right'}
|
|
|
|
variant="tiny"
|
|
|
|
popupCssClass={styles.feedArticlePopup}
|
|
|
|
>
|
2023-12-29 11:07:48 +00:00
|
|
|
<ul class={clsx('nodash', styles.actionList)}>
|
2024-01-05 19:31:28 +00:00
|
|
|
<li>
|
2024-01-15 13:22:43 +00:00
|
|
|
<button
|
|
|
|
class={styles.action}
|
|
|
|
role="button"
|
|
|
|
onClick={() => {
|
|
|
|
props.onShareClick()
|
|
|
|
setHidden(true)
|
|
|
|
}}
|
|
|
|
>
|
2024-01-05 19:31:28 +00:00
|
|
|
{t('Share')}
|
|
|
|
</button>
|
|
|
|
</li>
|
2023-12-29 11:07:48 +00:00
|
|
|
<Show when={!props.isOwner}>
|
|
|
|
<li>
|
|
|
|
<button
|
|
|
|
class={styles.action}
|
|
|
|
role="button"
|
|
|
|
onClick={() => {
|
|
|
|
alert('Help to edit')
|
2024-01-15 13:22:43 +00:00
|
|
|
setHidden(true)
|
2023-12-29 11:07:48 +00:00
|
|
|
}}
|
|
|
|
>
|
|
|
|
{t('Help to edit')}
|
|
|
|
</button>
|
|
|
|
</li>
|
|
|
|
</Show>
|
|
|
|
<li>
|
2024-01-15 13:22:43 +00:00
|
|
|
<button
|
|
|
|
class={styles.action}
|
|
|
|
role="button"
|
|
|
|
onClick={() => {
|
|
|
|
props.onInviteClick()
|
|
|
|
setHidden(true)
|
|
|
|
}}
|
|
|
|
>
|
2023-12-29 11:07:48 +00:00
|
|
|
{t('Invite experts')}
|
|
|
|
</button>
|
|
|
|
</li>
|
|
|
|
<Show when={!props.isOwner}>
|
|
|
|
<li>
|
|
|
|
<button class={clsx(styles.action, styles.soon)} role="button">
|
|
|
|
{t('Subscribe to comments')} <SoonChip />
|
|
|
|
</button>
|
|
|
|
</li>
|
|
|
|
</Show>
|
|
|
|
<li>
|
|
|
|
<button class={clsx(styles.action, styles.soon)} role="button">
|
|
|
|
{t('Add to bookmarks')} <SoonChip />
|
|
|
|
</button>
|
|
|
|
</li>
|
|
|
|
{/*<Show when={!props.isOwner}>*/}
|
|
|
|
{/* <li>*/}
|
|
|
|
{/* <button*/}
|
|
|
|
{/* class={styles.action}*/}
|
|
|
|
{/* role="button"*/}
|
|
|
|
{/* onClick={() => {*/}
|
|
|
|
{/* alert('Report')*/}
|
|
|
|
{/* }}*/}
|
|
|
|
{/* >*/}
|
|
|
|
{/* {t('Report')}*/}
|
|
|
|
{/* </button>*/}
|
|
|
|
{/* </li>*/}
|
|
|
|
{/*</Show>*/}
|
|
|
|
{/*<li>*/}
|
|
|
|
{/* <button*/}
|
|
|
|
{/* class={styles.action}*/}
|
|
|
|
{/* role="button"*/}
|
|
|
|
{/* onClick={() => {*/}
|
|
|
|
{/* alert('Get notifications')*/}
|
|
|
|
{/* }}*/}
|
|
|
|
{/* >*/}
|
|
|
|
{/* {t('Get notifications')}*/}
|
|
|
|
{/* </button>*/}
|
|
|
|
{/*</li>*/}
|
|
|
|
</ul>
|
|
|
|
</Popup>
|
|
|
|
</>
|
|
|
|
)
|
|
|
|
}
|