mirror of
https://github.com/chinchang/web-maker.git
synced 2025-03-20 18:49:56 +01:00
fix login flow for logged in features
This commit is contained in:
parent
c38e3e0452
commit
44433f09a4
@ -9,7 +9,7 @@ import { LoaderWithText } from './Loader';
|
||||
import { Text } from './Text';
|
||||
import { Icon } from './Icons';
|
||||
|
||||
const Assets = ({ onProBtnClick }) => {
|
||||
const Assets = ({ onProBtnClick, onLoginBtnClick }) => {
|
||||
const [files, setFiles] = useState([]);
|
||||
const [isFetchingFiles, setIsFetchingFiles] = useState(false);
|
||||
const [searchTerm, setSearchTerm] = useState('');
|
||||
@ -94,7 +94,9 @@ const Assets = ({ onProBtnClick }) => {
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
fetchFiles();
|
||||
if (window.user?.isPro) {
|
||||
fetchFiles();
|
||||
}
|
||||
}, []);
|
||||
|
||||
useEffect(() => {
|
||||
@ -161,9 +163,20 @@ const Assets = ({ onProBtnClick }) => {
|
||||
return (
|
||||
<VStack align="stretch" gap={2}>
|
||||
<p>Assets feature is available in PRO plan.</p>
|
||||
<button class="btn btn--primary" onClick={onProBtnClick}>
|
||||
<button
|
||||
class="btn btn--primary"
|
||||
onClick={window.user ? onProBtnClick : onLoginBtnClick}
|
||||
>
|
||||
<HStack gap={1} fullWidth justify="center">
|
||||
Upgrade to <ProBadge />
|
||||
{window.user ? (
|
||||
<>
|
||||
Upgrade to <ProBadge />
|
||||
</>
|
||||
) : (
|
||||
<>
|
||||
Login & upgrade to <ProBadge />
|
||||
</>
|
||||
)}
|
||||
</HStack>
|
||||
</button>
|
||||
</VStack>
|
||||
|
@ -6,6 +6,7 @@ import { itemService } from '../itemService';
|
||||
import { alertsService } from '../notifications';
|
||||
import { Button } from './common';
|
||||
import { Icon } from './Icons';
|
||||
import { Text } from './Text';
|
||||
|
||||
const FREE_PUBLIC_ITEM_COUNT = 1;
|
||||
const BASE_URL = location.origin;
|
||||
@ -58,6 +59,16 @@ export function Share({ user, item, onVisibilityChange }) {
|
||||
navigator.clipboard.writeText(`${BASE_URL}/create/${item.id}`);
|
||||
alertsService.add('URL copied to clipboard');
|
||||
};
|
||||
if (!user) {
|
||||
return (
|
||||
<HStack justify="center" gap={2}>
|
||||
<Text>Login to share this creation</Text>
|
||||
<Button class="btn btn--primary" onClick={copyUrl} aria-label="Copy">
|
||||
Login
|
||||
</Button>
|
||||
</HStack>
|
||||
);
|
||||
}
|
||||
return (
|
||||
<VStack gap={4} align="stretch">
|
||||
<div style="min-width: 46ch">
|
||||
|
@ -1792,6 +1792,10 @@ export default class App extends Component {
|
||||
this.proBtnClickHandler();
|
||||
this.setState({ isAssetsOpen: false });
|
||||
}}
|
||||
onLoginBtnClick={() => {
|
||||
this.loginBtnClickHandler();
|
||||
this.setState({ isAssetsOpen: false });
|
||||
}}
|
||||
/>
|
||||
</Modal>
|
||||
<Modal
|
||||
|
Loading…
x
Reference in New Issue
Block a user