feat: Enhance parameter configuration for range inputs (#62)

* feat: Update site name to DataMate and refine text for AI data processing

* feat: Refactor settings page and implement model access functionality

- Created a new ModelAccess component for managing model configurations.
- Removed the old Settings component and replaced it with a new SettingsPage component that integrates ModelAccess, SystemConfig, and WebhookConfig.
- Added SystemConfig component for managing system settings.
- Implemented WebhookConfig component for managing webhook configurations.
- Updated API functions for model management in settings.apis.ts.
- Adjusted routing to point to the new SettingsPage component.

* feat: Implement Data Collection Page with Task Management and Execution Log

- Created DataCollectionPage component to manage data collection tasks.
- Added TaskManagement and ExecutionLog components for task handling and logging.
- Integrated task operations including start, stop, edit, and delete functionalities.
- Implemented filtering and searching capabilities in task management.
- Introduced SimpleCronScheduler for scheduling tasks with cron expressions.
- Updated CreateTask component to utilize new scheduling and template features.
- Enhanced BasicInformation component to conditionally render fields based on visibility settings.
- Refactored ImportConfiguration component to remove NAS import section.

* feat: Update task creation API endpoint and enhance task creation form with new fields and validation

* Refactor file upload and operator management components

- Removed unnecessary console logs from file download and export functions.
- Added size property to TaskItem interface for better task management.
- Simplified TaskUpload component by utilizing useFileSliceUpload hook for file upload logic.
- Enhanced OperatorPluginCreate component to handle file uploads and parsing more efficiently.
- Updated ConfigureStep component to use Ant Design Form for better data handling and validation.
- Improved PreviewStep component to navigate back to the operator market.
- Added support for additional file types in UploadStep component.
- Implemented delete operator functionality in OperatorMarketPage with confirmation prompts.
- Cleaned up unused API functions in operator.api.ts to streamline the codebase.
- Fixed number formatting utility to handle zero values correctly.

* Refactor Knowledge Generation to Knowledge Base

- Created new API service for Knowledge Base operations including querying, creating, updating, and deleting knowledge bases and files.
- Added constants for Knowledge Base status and type mappings.
- Defined models for Knowledge Base and related files.
- Removed obsolete Knowledge Base creation and home components, replacing them with new implementations under the Knowledge Base structure.
- Updated routing to reflect the new Knowledge Base paths.
- Adjusted menu items to align with the new Knowledge Base terminology.
- Modified ModelAccess interface to include modelName and type properties.

* feat: Implement Knowledge Base Page with CRUD operations and data management

- Added KnowledgeBasePage component for displaying and managing knowledge bases.
- Integrated search and filter functionalities with SearchControls component.
- Implemented CreateKnowledgeBase component for creating and editing knowledge bases.
- Enhanced AddDataDialog for file uploads and dataset selections.
- Introduced TableTransfer component for managing data transfers between tables.
- Updated API functions for knowledge base operations, including file management.
- Refactored knowledge base model to include file status and metadata.
- Adjusted routing to point to the new KnowledgeBasePage.

* feat: enhance OperatorPluginCreate and ConfigureStep for better upload handling and UI updates

* refactor: remove unused components and clean up API logging in KnowledgeBase

* feat: update icons in various components and improve styling for better UI consistency

* fix: adjust upload step handling and improve error display in configuration step

* feat: Add RatioTransfer component for dataset selection and configuration

- Implemented RatioTransfer component to manage dataset selection and ratio configuration.
- Integrated dataset fetching with search and filter capabilities.
- Added RatioConfig component for displaying and updating selected datasets' configurations.
- Enhanced SelectDataset component with improved UI and functionality for dataset selection.
- Updated RatioTasksPage to utilize new ratio task status mapping and improved error handling for task deletion.
- Refactored ratio model and constants for better type safety and clarity.
- Changed Vite configuration to use local backend service for development.

* feat: Add .editorconfig and enhance SystemConfig with table for settings display

* feat: Enhance parameter configuration for range inputs and update default values
This commit is contained in:
chenghh-9609
2025-11-07 11:32:20 +08:00
committed by GitHub
parent be023d8c98
commit d136bad38c
2 changed files with 38 additions and 12 deletions

View File

@@ -10,6 +10,7 @@ function operatorItem() {
inputs: Mock.Random.integer(1, 5), inputs: Mock.Random.integer(1, 5),
outputs: Mock.Random.integer(1, 5), outputs: Mock.Random.integer(1, 5),
settings: JSON.stringify({ settings: JSON.stringify({
host: { type: "input", name: "主机地址", defaultVal: "localhost" },
fileLength: { fileLength: {
name: "文档字数", name: "文档字数",
description: description:
@@ -20,14 +21,28 @@ function operatorItem() {
max: 10000000000000000, max: 10000000000000000,
step: 1, step: 1,
}, },
host: { type: "input", name: "主机地址", defaultVal: "localhost" }, range: {
limit: {
type: "range", type: "range",
name: "读取行数", name: "读取行数",
defaultVal: [1000, 2000], description: "某个词的统计数/文档总词数 > 设定值,该文档被去除。",
properties: [
{
name: "起始行",
type: "inputNumber",
defaultVal: 1000,
min: 100, min: 100,
max: 10000, max: 10000,
step: 100, step: 1,
},
{
name: "结束行",
type: "inputNumber",
defaultVal: 2000,
min: 100,
max: 10000,
step: 1,
},
],
}, },
filepath: { type: "input", name: "文件路径", defaultVal: "/path" }, filepath: { type: "input", name: "文件路径", defaultVal: "/path" },
encoding: { encoding: {

View File

@@ -25,7 +25,17 @@ const ParamConfig: React.FC<ParamConfigProps> = ({
onParamChange, onParamChange,
}) => { }) => {
if (!param) return null; if (!param) return null;
const [value, setValue] = React.useState(param.value || param.defaultVal); let defaultVal: any = param.defaultVal;
if (param.type === "range") {
defaultVal = Array.isArray(param.defaultVal)
? param.defaultVal
: [
param?.properties?.[0]?.defaultVal,
param?.properties?.[1]?.defaultVal,
];
}
const [value, setValue] = React.useState(param.value || defaultVal);
const updateValue = (newValue: any) => { const updateValue = (newValue: any) => {
setValue(newValue); setValue(newValue);
return onParamChange && onParamChange(operator.id, paramKey, newValue); return onParamChange && onParamChange(operator.id, paramKey, newValue);
@@ -139,8 +149,9 @@ const ParamConfig: React.FC<ParamConfigProps> = ({
</Form.Item> </Form.Item>
); );
case "range": { case "range": {
const min = param.min || 0; const min = param.min || param?.properties?.[0]?.min || 0;
const max = param.max || 100; const max = param.max || param?.properties?.[0]?.max || 1;
const step = param.step || param?.properties?.[0]?.step || 0.1;
return ( return (
<Form.Item <Form.Item
label={param.name} label={param.name}
@@ -154,8 +165,8 @@ const ParamConfig: React.FC<ParamConfigProps> = ({
} }
range range
min={min} min={min}
max={max} max={max }
step={param.step || 1} step={step}
className="w-full" className="w-full"
/> />
<Space> <Space>