diff --git a/web/app/components/header/license-env/index.tsx b/web/app/components/header/license-env/index.tsx
new file mode 100644
index 0000000000..800d86d2b8
--- /dev/null
+++ b/web/app/components/header/license-env/index.tsx
@@ -0,0 +1,29 @@
+'use client'
+
+import AppContext from '@/context/app-context'
+import { LicenseStatus } from '@/types/feature'
+import { useTranslation } from 'react-i18next'
+import { useContextSelector } from 'use-context-selector'
+import dayjs from 'dayjs'
+
+const LicenseNav = () => {
+ const { t } = useTranslation()
+ const systemFeatures = useContextSelector(AppContext, s => s.systemFeatures)
+
+ if (systemFeatures.license?.status === LicenseStatus.EXPIRING) {
+ const expiredAt = systemFeatures.license?.expired_at
+ const count = dayjs(expiredAt).diff(dayjs(), 'days')
+ return
+ {count <= 1 && {t('common.license.expiring', { count })}}
+ {count > 1 && {t('common.license.expiring_plural', { count })}}
+
+ }
+ if (systemFeatures.license.status === LicenseStatus.ACTIVE) {
+ return
+ Enterprise
+
+ }
+ return null
+}
+
+export default LicenseNav
diff --git a/web/app/components/share/text-generation/index.tsx b/web/app/components/share/text-generation/index.tsx
index b853100b69..27ea46cbff 100644
--- a/web/app/components/share/text-generation/index.tsx
+++ b/web/app/components/share/text-generation/index.tsx
@@ -389,7 +389,10 @@ const TextGeneration: FC
= ({
const { user_input_form, more_like_this, file_upload, text_to_speech }: any = appParams
setVisionConfig({
- ...file_upload.image,
+ // legacy of image upload compatible
+ ...file_upload,
+ transfer_methods: file_upload.allowed_file_upload_methods || file_upload.allowed_upload_methods,
+ // legacy of image upload compatible
image_file_size_limit: appParams?.system_parameters?.image_file_size_limit,
fileUploadConfig: appParams?.system_parameters,
})
diff --git a/web/app/components/workflow/nodes/_base/components/file-upload-setting.tsx b/web/app/components/workflow/nodes/_base/components/file-upload-setting.tsx
index 42a7213f80..1974084424 100644
--- a/web/app/components/workflow/nodes/_base/components/file-upload-setting.tsx
+++ b/web/app/components/workflow/nodes/_base/components/file-upload-setting.tsx
@@ -82,8 +82,6 @@ const FileUploadSetting: FC = ({
const handleCustomFileTypesChange = useCallback((customFileTypes: string[]) => {
const newPayload = produce(payload, (draft) => {
draft.allowed_file_extensions = customFileTypes.map((v) => {
- if (v.startsWith('.')) // Not start with dot
- return v.slice(1)
return v
})
})
@@ -118,7 +116,7 @@ const FileUploadSetting: FC = ({
type={SupportUploadFileTypes.custom}
selected={allowed_file_types.includes(SupportUploadFileTypes.custom)}
onToggle={handleSupportFileTypeChange}
- customFileTypes={allowed_file_extensions?.map(item => `.${item}`)}
+ customFileTypes={allowed_file_extensions}
onCustomFileTypesChange={handleCustomFileTypesChange}
/>
diff --git a/web/app/components/workflow/nodes/tool/components/input-var-list.tsx b/web/app/components/workflow/nodes/tool/components/input-var-list.tsx
index e47082f4b7..10c534509c 100644
--- a/web/app/components/workflow/nodes/tool/components/input-var-list.tsx
+++ b/web/app/components/workflow/nodes/tool/components/input-var-list.tsx
@@ -46,6 +46,8 @@ const InputVarList: FC