refac
This commit is contained in:
@@ -1454,6 +1454,10 @@ USER_PERMISSIONS_CHAT_FILE_UPLOAD = (
|
|||||||
os.environ.get("USER_PERMISSIONS_CHAT_FILE_UPLOAD", "True").lower() == "true"
|
os.environ.get("USER_PERMISSIONS_CHAT_FILE_UPLOAD", "True").lower() == "true"
|
||||||
)
|
)
|
||||||
|
|
||||||
|
USER_PERMISSIONS_CHAT_WEB_UPLOAD = (
|
||||||
|
os.environ.get("USER_PERMISSIONS_CHAT_WEB_UPLOAD", "True").lower() == "true"
|
||||||
|
)
|
||||||
|
|
||||||
USER_PERMISSIONS_CHAT_DELETE = (
|
USER_PERMISSIONS_CHAT_DELETE = (
|
||||||
os.environ.get("USER_PERMISSIONS_CHAT_DELETE", "True").lower() == "true"
|
os.environ.get("USER_PERMISSIONS_CHAT_DELETE", "True").lower() == "true"
|
||||||
)
|
)
|
||||||
@@ -1592,6 +1596,7 @@ DEFAULT_USER_PERMISSIONS = {
|
|||||||
"system_prompt": USER_PERMISSIONS_CHAT_SYSTEM_PROMPT,
|
"system_prompt": USER_PERMISSIONS_CHAT_SYSTEM_PROMPT,
|
||||||
"params": USER_PERMISSIONS_CHAT_PARAMS,
|
"params": USER_PERMISSIONS_CHAT_PARAMS,
|
||||||
"file_upload": USER_PERMISSIONS_CHAT_FILE_UPLOAD,
|
"file_upload": USER_PERMISSIONS_CHAT_FILE_UPLOAD,
|
||||||
|
"web_upload": USER_PERMISSIONS_CHAT_WEB_UPLOAD,
|
||||||
"delete": USER_PERMISSIONS_CHAT_DELETE,
|
"delete": USER_PERMISSIONS_CHAT_DELETE,
|
||||||
"delete_message": USER_PERMISSIONS_CHAT_DELETE_MESSAGE,
|
"delete_message": USER_PERMISSIONS_CHAT_DELETE_MESSAGE,
|
||||||
"continue_response": USER_PERMISSIONS_CHAT_CONTINUE_RESPONSE,
|
"continue_response": USER_PERMISSIONS_CHAT_CONTINUE_RESPONSE,
|
||||||
|
|||||||
@@ -202,6 +202,7 @@ class ChatPermissions(BaseModel):
|
|||||||
system_prompt: bool = True
|
system_prompt: bool = True
|
||||||
params: bool = True
|
params: bool = True
|
||||||
file_upload: bool = True
|
file_upload: bool = True
|
||||||
|
web_upload: bool = True
|
||||||
delete: bool = True
|
delete: bool = True
|
||||||
delete_message: bool = True
|
delete_message: bool = True
|
||||||
continue_response: bool = True
|
continue_response: bool = True
|
||||||
|
|||||||
@@ -414,6 +414,22 @@
|
|||||||
{/if}
|
{/if}
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="flex flex-col w-full">
|
||||||
|
<div class="flex w-full justify-between my-1">
|
||||||
|
<div class=" self-center text-xs font-medium">
|
||||||
|
{$i18n.t('Allow Web Upload')}
|
||||||
|
</div>
|
||||||
|
<Switch bind:state={permissions.chat.web_upload} />
|
||||||
|
</div>
|
||||||
|
{#if defaultPermissions?.chat?.web_upload && !permissions.chat.web_upload}
|
||||||
|
<div>
|
||||||
|
<div class="text-xs text-gray-500">
|
||||||
|
{$i18n.t('This is a default user permission and will remain enabled.')}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{/if}
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="flex flex-col w-full">
|
<div class="flex flex-col w-full">
|
||||||
<div class="flex w-full justify-between my-1">
|
<div class="flex w-full justify-between my-1">
|
||||||
<div class=" self-center text-xs font-medium">
|
<div class=" self-center text-xs font-medium">
|
||||||
|
|||||||
@@ -56,6 +56,10 @@
|
|||||||
fileUploadCapableModels.length === selectedModels.length &&
|
fileUploadCapableModels.length === selectedModels.length &&
|
||||||
($user?.role === 'admin' || $user?.permissions?.chat?.file_upload);
|
($user?.role === 'admin' || $user?.permissions?.chat?.file_upload);
|
||||||
|
|
||||||
|
let webUploadEnabled = true;
|
||||||
|
$: webUploadEnabled =
|
||||||
|
$user?.role === 'admin' || ($user?.permissions?.chat?.web_upload ?? true);
|
||||||
|
|
||||||
$: if (!fileUploadEnabled && files.length > 0) {
|
$: if (!fileUploadEnabled && files.length > 0) {
|
||||||
files = [];
|
files = [];
|
||||||
}
|
}
|
||||||
@@ -185,19 +189,17 @@
|
|||||||
</Tooltip>
|
</Tooltip>
|
||||||
|
|
||||||
<Tooltip
|
<Tooltip
|
||||||
content={fileUploadCapableModels.length !== selectedModels.length
|
content={!webUploadEnabled
|
||||||
? $i18n.t('Model(s) do not support file upload')
|
? $i18n.t('You do not have permission to upload web content.')
|
||||||
: !fileUploadEnabled
|
: ''}
|
||||||
? $i18n.t('You do not have permission to upload files.')
|
|
||||||
: ''}
|
|
||||||
className="w-full"
|
className="w-full"
|
||||||
>
|
>
|
||||||
<DropdownMenu.Item
|
<DropdownMenu.Item
|
||||||
class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl {!fileUploadEnabled
|
class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl {!webUploadEnabled
|
||||||
? 'opacity-50'
|
? 'opacity-50'
|
||||||
: ''}"
|
: ''}"
|
||||||
on:click={() => {
|
on:click={() => {
|
||||||
if (fileUploadEnabled) {
|
if (webUploadEnabled) {
|
||||||
showAttachWebpageModal = true;
|
showAttachWebpageModal = true;
|
||||||
}
|
}
|
||||||
}}
|
}}
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ export const DEFAULT_PERMISSIONS = {
|
|||||||
system_prompt: true,
|
system_prompt: true,
|
||||||
params: true,
|
params: true,
|
||||||
file_upload: true,
|
file_upload: true,
|
||||||
|
web_upload: true,
|
||||||
delete: true,
|
delete: true,
|
||||||
delete_message: true,
|
delete_message: true,
|
||||||
continue_response: true,
|
continue_response: true,
|
||||||
|
|||||||
Reference in New Issue
Block a user