Public File Sharing (#72)
* Public File Sharing This implements public file sharing (read-only) with and without passwords (#57). It also fixes a problem with filenames including special characters like `#` not working properly (#71). You can share a directory or a single file, by using the new share icon on the right of the directories/files, and click on it to manage an existing file share (setting a new password, or deleting the file share). There is some other minor cleanup and other copy updates in the README. Closes #57 Fixes #71 * Hide UI elements when sharing isn't allowed
This commit is contained in:
58
components/files/ShareVerifyForm.tsx
Normal file
58
components/files/ShareVerifyForm.tsx
Normal file
@@ -0,0 +1,58 @@
|
||||
interface ShareVerifyFormProps {
|
||||
error?: { title: string; message: string };
|
||||
}
|
||||
|
||||
export default function ShareVerifyForm(
|
||||
{ error }: ShareVerifyFormProps,
|
||||
) {
|
||||
return (
|
||||
<section class='max-w-md w-full mb-12'>
|
||||
<section class='mb-6'>
|
||||
<h2 class='mt-6 text-center text-3xl font-extrabold text-white'>
|
||||
File Share Authentication
|
||||
</h2>
|
||||
<p class='mt-2 text-center text-sm text-gray-300'>
|
||||
You are required to authenticate with a password
|
||||
</p>
|
||||
</section>
|
||||
|
||||
{error
|
||||
? (
|
||||
<section class='notification-error'>
|
||||
<h3>{error.title}</h3>
|
||||
<p>{error.message}</p>
|
||||
</section>
|
||||
)
|
||||
: null}
|
||||
|
||||
<form
|
||||
class='mb-6'
|
||||
method='POST'
|
||||
>
|
||||
<fieldset class='block mb-4'>
|
||||
<label class='text-slate-300 block pb-1' for='token'>
|
||||
Password
|
||||
</label>
|
||||
<input
|
||||
type='password'
|
||||
id='password'
|
||||
name='password'
|
||||
placeholder='Password'
|
||||
class='mt-1 input-field'
|
||||
autocomplete='off'
|
||||
required
|
||||
/>
|
||||
</fieldset>
|
||||
|
||||
<section class='flex justify-center mt-8 mb-4'>
|
||||
<button
|
||||
type='submit'
|
||||
class='button'
|
||||
>
|
||||
Verify Password
|
||||
</button>
|
||||
</section>
|
||||
</form>
|
||||
</section>
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user