- dissolve core-bridge into api (wire contract), domain (models), services (what the UI calls) and worker (everything that runs in the Web Worker, grouped by account, crypto, space, files, shares, runtime); regroup features, lib and store by responsibility and delete unused components - the UI only reads backend capabilities (domain/capabilities); one tokenRole picks the token, hasCode/isRetryable handle errors; pre-checks that decided permissions on the client are gone; tests fail if those rules are reimplemented - files go straight to the file domain (create, upload, download, delete, commit, cancel); the host sees one registration per file; creating a channel allocates a file domain and works even when the file service is down - file panel shows which channel the files belong to and its space usage; unlimited files preview in chat; videos get a stored cover; the file service status is shown - fix: console flooded by Retry-After reads on every upload frame
13 lines
574 B
TypeScript
13 lines
574 B
TypeScript
import { AccountPanel } from './AccountPanel';
|
|
import { ThemeMenu } from '@/ui/ThemeMenu';
|
|
import styles from '@/features/home/Home.module.css';
|
|
export function AccountScreen() {
|
|
return <div className={styles.page}><div className={styles.appearance}><ThemeMenu /></div><main className={`${styles.main} ${styles.authMain}`}>
|
|
<header className={styles.authIntro}>
|
|
<h1 className={styles.authLogo}>WebDrop</h1>
|
|
<p>登录后,可在其他设备恢复本账号保存的空间和分享。</p>
|
|
</header>
|
|
<AccountPanel variant="auth" />
|
|
</main></div>;
|
|
}
|