Compare commits
2 commits
9df4aea60c
...
2090924411
Author | SHA1 | Date | |
---|---|---|---|
Natsu Kagami | 2090924411 | ||
Natsu Kagami | cf933ad379 |
|
@ -2722,8 +2722,8 @@ ul.link-list li a .icon {
|
||||||
padding: 32px;
|
padding: 32px;
|
||||||
} */
|
} */
|
||||||
li.timeline-item-carousel {
|
li.timeline-item-carousel {
|
||||||
width: 95vw;
|
/* width: 95vw;
|
||||||
max-width: calc(320px * 3.3);
|
max-width: calc(320px * 3.3); */
|
||||||
transform: translateX(calc(-50% + var(--main-width) / 2));
|
transform: translateX(calc(-50% + var(--main-width) / 2));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -103,4 +103,5 @@ export const ICONS = {
|
||||||
'arrows-right': () => import('@iconify-icons/mingcute/arrows-right-line'),
|
'arrows-right': () => import('@iconify-icons/mingcute/arrows-right-line'),
|
||||||
code: () => import('@iconify-icons/mingcute/code-line'),
|
code: () => import('@iconify-icons/mingcute/code-line'),
|
||||||
copy: () => import('@iconify-icons/mingcute/copy-2-line'),
|
copy: () => import('@iconify-icons/mingcute/copy-2-line'),
|
||||||
|
'user-setting': () => import('@iconify-icons/mingcute/user-setting-line'),
|
||||||
};
|
};
|
||||||
|
|
|
@ -5,6 +5,7 @@ import {
|
||||||
MenuDivider,
|
MenuDivider,
|
||||||
MenuItem,
|
MenuItem,
|
||||||
SubMenu,
|
SubMenu,
|
||||||
|
FocusableItem,
|
||||||
} from '@szhsin/react-menu';
|
} from '@szhsin/react-menu';
|
||||||
import { memo } from 'preact/compat';
|
import { memo } from 'preact/compat';
|
||||||
import { useEffect, useRef, useState } from 'preact/hooks';
|
import { useEffect, useRef, useState } from 'preact/hooks';
|
||||||
|
@ -19,6 +20,7 @@ import store from '../utils/store';
|
||||||
import Avatar from './avatar';
|
import Avatar from './avatar';
|
||||||
import Icon from './icon';
|
import Icon from './icon';
|
||||||
import MenuLink from './menu-link';
|
import MenuLink from './menu-link';
|
||||||
|
import { accountsIsDtth, gtsDtthSettings } from '../utils/dtth';
|
||||||
|
|
||||||
function NavMenu(props) {
|
function NavMenu(props) {
|
||||||
const snapStates = useSnapshot(states);
|
const snapStates = useSnapshot(states);
|
||||||
|
@ -203,6 +205,10 @@ function NavMenu(props) {
|
||||||
<Icon icon="user" size="l" /> <span>Profile</span>
|
<Icon icon="user" size="l" /> <span>Profile</span>
|
||||||
</MenuLink>
|
</MenuLink>
|
||||||
)}
|
)}
|
||||||
|
{currentAccount && accountsIsDtth(currentAccount) &&
|
||||||
|
<FocusableItem title="Takes you to DTTHDon settings">
|
||||||
|
<a href={gtsDtthSettings} target='_blank'><Icon icon="user-setting" size="l" /> <span>User Settings…</span></a>
|
||||||
|
</FocusableItem>}
|
||||||
<MenuLink to="/l">
|
<MenuLink to="/l">
|
||||||
<Icon icon="list" size="l" /> <span>Lists</span>
|
<Icon icon="list" size="l" /> <span>Lists</span>
|
||||||
</MenuLink>
|
</MenuLink>
|
||||||
|
|
|
@ -11,6 +11,7 @@ import instancesListURL from '../data/instances.json?url';
|
||||||
import { getAuthorizationURL, registerApplication } from '../utils/auth';
|
import { getAuthorizationURL, registerApplication } from '../utils/auth';
|
||||||
import store from '../utils/store';
|
import store from '../utils/store';
|
||||||
import useTitle from '../utils/useTitle';
|
import useTitle from '../utils/useTitle';
|
||||||
|
import { gtsDtth } from '../utils/dtth';
|
||||||
|
|
||||||
const { PHANPY_DEFAULT_INSTANCE: DEFAULT_INSTANCE } = import.meta.env;
|
const { PHANPY_DEFAULT_INSTANCE: DEFAULT_INSTANCE } = import.meta.env;
|
||||||
|
|
||||||
|
@ -23,7 +24,7 @@ function Login() {
|
||||||
const instance = searchParams.get('instance');
|
const instance = searchParams.get('instance');
|
||||||
const submit = searchParams.get('submit');
|
const submit = searchParams.get('submit');
|
||||||
const [instanceText, setInstanceText] = useState(
|
const [instanceText, setInstanceText] = useState(
|
||||||
instance || cachedInstanceURL?.toLowerCase() || 'gts.dtth.ch',
|
instance || cachedInstanceURL?.toLowerCase() || gtsDtth,
|
||||||
);
|
);
|
||||||
|
|
||||||
const [instancesList, setInstancesList] = useState([]);
|
const [instancesList, setInstancesList] = useState([]);
|
||||||
|
|
13
src/utils/dtth.js
Normal file
13
src/utils/dtth.js
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
export function accountsIsDtth(account) {
|
||||||
|
return (
|
||||||
|
account.info &&
|
||||||
|
typeof account.info.url === 'string' &&
|
||||||
|
account.info.url.startsWith(gtsDtth)
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
/** URL to DTTHDon */
|
||||||
|
export const gtsDtth = 'https://gts.dtth.ch';
|
||||||
|
|
||||||
|
/** URL to DTTHDon settings */
|
||||||
|
export const gtsDtthSettings = 'https://gts.dtth.ch/settings';
|
Loading…
Reference in a new issue