Chore: frontend infrastructure upgrade (#16420)

Co-authored-by: NFish <douxc512@gmail.com>
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: twwu <twwu@dify.ai>
Co-authored-by: jZonG <jzongcode@gmail.com>
This commit is contained in:
Joel
2025-03-21 17:41:03 +08:00
committed by GitHub
parent e61415223b
commit 7709d9df20
1435 changed files with 13372 additions and 11612 deletions

View File

@@ -43,15 +43,15 @@ const BulkEdit: FC<Props> = ({
onChange={handleChange}
onBlur={handleBlur}
headerRight={
<div className='flex items-center h-[18px]'>
<div className='flex h-[18px] items-center'>
<div
className='flex items-center space-x-1 cursor-pointer'
className='flex cursor-pointer items-center space-x-1'
onClick={handleSwitchToKeyValueEdit}
>
<LayoutGrid02 className='w-3 h-3 text-gray-500' />
<div className='leading-[18px] text-xs font-normal text-gray-500'>{t(`${i18nPrefix}.keyValueEdit`)}</div>
<LayoutGrid02 className='h-3 w-3 text-gray-500' />
<div className='text-xs font-normal leading-[18px] text-gray-500'>{t(`${i18nPrefix}.keyValueEdit`)}</div>
</div>
<div className='ml-3 mr-1.5 w-px h-3 bg-gray-200'></div>
<div className='ml-3 mr-1.5 h-3 w-px bg-gray-200'></div>
</div>
}
minHeight={150}

View File

@@ -4,7 +4,7 @@ import React from 'react'
import type { KeyValue } from '../../types'
import KeyValueEdit from './key-value-edit'
interface Props {
type Props = {
readonly: boolean
nodeId: string
list: KeyValue[]

View File

@@ -9,7 +9,7 @@ import cn from '@/utils/classnames'
const i18nPrefix = 'workflow.nodes.http'
interface Props {
type Props = {
readonly: boolean
nodeId: string
list: KeyValue[]
@@ -56,11 +56,11 @@ const KeyValueList: FC<Props> = ({
return null
return (
<div className='border border-divider-regular rounded-lg overflow-hidden'>
<div className={cn('flex items-center h-7 leading-7 text-text-tertiary system-xs-medium-uppercase')}>
<div className={cn('h-full pl-3 border-r border-divider-regular', isSupportFile ? 'w-[140px]' : 'w-1/2')}>{t(`${i18nPrefix}.key`)}</div>
{isSupportFile && <div className='shrink-0 w-[70px] h-full pl-3 border-r border-divider-regular'>{t(`${i18nPrefix}.type`)}</div>}
<div className={cn('h-full pl-3 pr-1 items-center justify-between', isSupportFile ? 'grow' : 'w-1/2')}>{t(`${i18nPrefix}.value`)}</div>
<div className='overflow-hidden rounded-lg border border-divider-regular'>
<div className={cn('system-xs-medium-uppercase flex h-7 items-center leading-7 text-text-tertiary')}>
<div className={cn('h-full border-r border-divider-regular pl-3', isSupportFile ? 'w-[140px]' : 'w-1/2')}>{t(`${i18nPrefix}.key`)}</div>
{isSupportFile && <div className='h-full w-[70px] shrink-0 border-r border-divider-regular pl-3'>{t(`${i18nPrefix}.type`)}</div>}
<div className={cn('h-full items-center justify-between pl-3 pr-1', isSupportFile ? 'grow' : 'w-1/2')}>{t(`${i18nPrefix}.value`)}</div>
</div>
{
list.map((item, index) => (

View File

@@ -8,7 +8,7 @@ import RemoveButton from '@/app/components/workflow/nodes/_base/components/remov
import Input from '@/app/components/workflow/nodes/_base/components/input-support-select-var'
import type { Var } from '@/app/components/workflow/types'
import { VarType } from '@/app/components/workflow/types'
interface Props {
type Props = {
className?: string
instanceId?: string
nodeId: string
@@ -57,7 +57,7 @@ const InputItem: FC<Props> = ({
}, [onRemove])
return (
<div className={cn(className, 'hover:bg-gray-50 hover:cursor-text', 'relative flex h-full')}>
<div className={cn(className, 'hover:cursor-text hover:bg-gray-50', 'relative flex h-full')}>
{(!readOnly)
? (
<Input
@@ -76,13 +76,13 @@ const InputItem: FC<Props> = ({
/>
)
: <div
className="pl-0.5 w-full h-[18px] leading-[18px]"
className="h-[18px] w-full pl-0.5 leading-[18px]"
>
{!hasValue && <div className='text-gray-300 text-xs font-normal'>{placeholder}</div>}
{!hasValue && <div className='text-xs font-normal text-gray-300'>{placeholder}</div>}
{hasValue && (
<Input
instanceId={instanceId}
className={cn(isFocus ? 'shadow-xs bg-gray-50 border-gray-300' : 'bg-gray-100 border-gray-100', 'w-0 grow rounded-lg px-3 py-[6px] border')}
className={cn(isFocus ? 'border-gray-300 bg-gray-50 shadow-xs' : 'border-gray-100 bg-gray-100', 'w-0 grow rounded-lg border px-3 py-[6px]')}
value={value}
onChange={onChange}
readOnly={readOnly}
@@ -99,7 +99,7 @@ const InputItem: FC<Props> = ({
</div>}
{hasRemove && !isFocus && (
<RemoveButton
className='group-hover:block hidden absolute right-1 top-0.5'
className='absolute right-1 top-0.5 hidden group-hover:block'
onClick={handleRemove}
/>
)}

View File

@@ -14,7 +14,7 @@ import { VarType } from '@/app/components/workflow/types'
const i18nPrefix = 'workflow.nodes.http'
interface Props {
type Props = {
instanceId: string
className?: string
nodeId: string
@@ -62,7 +62,7 @@ const KeyValueItem: FC<Props> = ({
return (
// group class name is for hover row show remove button
<div className={cn(className, 'group flex h-min-7 border-t border-gray-200')}>
<div className={cn(className, 'h-min-7 group flex border-t border-gray-200')}>
<div className={cn('shrink-0 border-r border-divider-regular', isSupportFile ? 'w-[140px]' : 'w-1/2')}>
{!keyNotSupportVar
? (
@@ -79,14 +79,14 @@ const KeyValueItem: FC<Props> = ({
)
: (
<input
className='appearance-none outline-none rounded-none bg-white border-none system-sm-regular focus:ring-0 focus:bg-gray-100! hover:bg-gray-50'
className='system-sm-regular focus:bg-gray-100! appearance-none rounded-none border-none bg-white outline-none hover:bg-gray-50 focus:ring-0'
value={payload.key}
onChange={e => handleChange('key')(e.target.value)}
/>
)}
</div>
{isSupportFile && (
<div className='shrink-0 w-[70px] border-r border-divider-regular'>
<div className='w-[70px] shrink-0 border-r border-divider-regular'>
<PortalSelect
value={payload.type!}
onSelect={item => handleChange('type')(item.value as string)}