Skip to content

Added appropriate icons for each functions in settings page#660

Merged
johbaxter merged 1 commit intodevfrom
642-Fix-ImageIcons-for-Saas-Functions
Mar 10, 2025
Merged

Added appropriate icons for each functions in settings page#660
johbaxter merged 1 commit intodevfrom
642-Fix-ImageIcons-for-Saas-Functions

Conversation

@boredcod
Copy link
Copy Markdown
Contributor

@boredcod boredcod commented Mar 4, 2025

No description provided.

@boredcod boredcod requested a review from a team as a code owner March 4, 2025 17:52
@boredcod boredcod linked an issue Mar 4, 2025 that may be closed by this pull request
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 4, 2025

@CodiumAI-Agent /describe

@QodoAI-Agent
Copy link
Copy Markdown

Title

Added appropriate icons for each functions in settings page


PR Type

  • Bug fix

Description

  • Correct icon references in function configurations

  • Add new icon imports for Amazon and AWS services

  • Update ENGINE_IMAGES and CONNECTION_OPTIONS with proper icons


Changes walkthrough 📝

Relevant files
Bug fix
import.constants.ts
Update icon imports and assignments in settings configuration

packages/client/src/pages/import/import.constants.ts

  • Added new import for Amazon_Titan icon
  • Imported AWS_POLLY, GOOGLE_SPEECH_TO_TEXT, GOOGLE_OCR, AWS_TEXTRACT,
    AWS_TRANSCRIBE icons
  • Updated CONNECTION_OPTIONS icon assignments for AWS TITAN, AWS Image
    Text Extraction, AWS POLLY, AWS Transcribe, Google Speech To Text, and
    Google OCR
  • Updated ENGINE_IMAGES icons to use Amazon_Titan, AWS_TEXTRACT,
    AWS_POLLY, AWS_TRANSCRIBE, GOOGLE_SPEECH_TO_TEXT, and GOOGLE_OCR
    respectively
  • +18/-12 

    Need help?
  • Type /help how to ... in the comments thread for any questions about PR-Agent usage.
  • Check out the documentation for more information.
  • @github-actions
    Copy link
    Copy Markdown

    github-actions bot commented Mar 4, 2025

    @CodiumAI-Agent /review

    @QodoAI-Agent
    Copy link
    Copy Markdown

    PR Reviewer Guide 🔍

    Here are some key observations to aid the review process:

    ⏱️ Estimated effort to review: 2 🔵🔵⚪⚪⚪
    🧪 No relevant tests
    🔒 No security concerns identified
    ⚡ Recommended focus areas for review

    Naming Consistency

    The new import for Amazon_Titan might not follow the naming conventions used by other icon imports. Consider standardizing the naming format to maintain consistency across the codebase.

    import OPEN_AI from '@/assets/img/OPEN_AI.png';
    import AZURE_OPEN_AI from '@/assets/img/OPEN_AI.png';
    import CLAUDE from '@/assets/img/CLAUDE_AI.png';
    import VERTEX from '@/assets/img/VERTEX_AI.png';
    import Amazon_Titan from '@/assets/img/Amazon_Titan.png';
    //Local Models
    import BRAIN from '@/assets/img/BRAIN.png';
    import META from '@/assets/img/META.png';
    import FALCON from '@/assets/img/FALCON_AI.png';
    Icon Assignment Validation

    Multiple connection option entries now reference new icon variables (e.g., AWS_TEXTRACT, AWS_POLLY, GOOGLE_SPEECH_TO_TEXT, GOOGLE_OCR). Ensure that these assignments correctly map to the appropriate assets and that all instances marked for update (as noted by inline comments) have been verified.

                        },
                    ],
                },
                {
                    name: 'AWS TITAN TEXT EMBEDDINGS',
                    disable: true,
                    icon: Amazon_Titan,
                    fields: [
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MODEL_TYPE',
                            label: 'Type',
                            defaultValue: 'AWS_TITAN_TEXT_EMBEDDINGS',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'AWS TITAN TEXT EMBEDDINGS',
                                        value: 'AWS_TITAN_TEXT_EMBEDDINGS',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MODEL',
                            label: 'Model',
                            defaultValue: 'amazon.titan-embed-text-v2:0',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'VAR_NAME',
                            label: 'Variable Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'INIT_MODEL_ENGINE',
                            label: 'Init Script',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'AWS_REGION',
                            label: 'Aws Region',
                            defaultValue: 'us-east-1',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'AWS_ACCESS_KEY',
                            label: 'Aws Access Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'AWS_SECRET_KEY',
                            label: 'Aws Secret Key',
                            defaultValue: '',
                            options: {
                                component: 'password',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'Stablity AI',
                    disable: true,
                    icon: STABILITY_AI,
                    fields: [
                        {
                            fieldName: 'NAME',
                            label: 'Catalog Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: {
                                required: true,
                                pattern: {
                                    value: /^[\w\-\s]+$/,
                                    message:
                                        'Catalog names can only contain alphanumeric characters and dashes.',
                                },
                                custom: {
                                    value: 'CheckEngineName ( "[VALUE]") ;',
                                    message:
                                        'This Catalog name has already been used, please try another.',
                                },
                            },
                        },
                        {
                            fieldName: 'MODEL',
                            label: 'Model',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MODEL_TYPE',
                            label: 'Type',
                            defaultValue: '',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'Embedded',
                                        value: 'EMBEDDED',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ENDPOINT',
                            label: 'Endpoint',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'VAR_NAME',
                            label: 'Variable Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'CHAT_TYPE',
                            label: 'Chat Type',
                            defaultValue: 'chat-completion',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'chat-completion',
                                        value: 'chat-completion',
                                    },
                                    {
                                        display: 'completion',
                                        value: 'completion',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'INIT_MODEL_ENGINE',
                            label: 'Init Script',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'KEEP_CONVERSATION_HISTORY',
                            label: 'Keep Conversation History',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'true',
                                        value: 'true',
                                    },
                                    {
                                        display: 'false',
                                        value: 'false',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'KEEP_INPUT_OUTPUT',
                            label: 'Record Questions and Responses',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'true',
                                        value: 'true',
                                    },
                                    {
                                        display: 'false',
                                        value: 'false',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MAX_TOKENS',
                            label: 'Max Tokens',
                            rules: { required: false },
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                        },
                        {
                            fieldName: 'MAX_INPUT_TOKENS',
                            label: 'Max Input Tokens',
                            rules: { required: false },
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                        },
                    ],
                },
                {
                    name: 'Replit Code Model',
                    disable: true,
                    icon: REPLIT,
                    fields: [
                        {
                            fieldName: 'NAME',
                            label: 'Catalog Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: {
                                required: true,
                                pattern: {
                                    value: /^[\w\-\s]+$/,
                                    message:
                                        'Catalog names can only contain alphanumeric characters and dashes.',
                                },
                                custom: {
                                    value: 'CheckEngineName ( "[VALUE]") ;',
                                    message:
                                        'This Catalog name has already been used, please try another.',
                                },
                            },
                        },
                        {
                            fieldName: 'MODEL',
                            label: 'Model',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MODEL_TYPE',
                            label: 'Type',
                            defaultValue: '',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'Embedded',
                                        value: 'EMBEDDED',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ENDPOINT',
                            label: 'Endpoint',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'VAR_NAME',
                            label: 'Variable Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'CHAT_TYPE',
                            label: 'Chat Type',
                            defaultValue: 'chat-completion',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'chat-completion',
                                        value: 'chat-completion',
                                    },
                                    {
                                        display: 'completion',
                                        value: 'completion',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'INIT_MODEL_ENGINE',
                            label: 'Init Script',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'KEEP_CONVERSATION_HISTORY',
                            label: 'Keep Conversation History',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'true',
                                        value: 'true',
                                    },
                                    {
                                        display: 'false',
                                        value: 'false',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'KEEP_INPUT_OUTPUT',
                            label: 'Record Questions and Responses',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'true',
                                        value: 'true',
                                    },
                                    {
                                        display: 'false',
                                        value: 'false',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'MAX_TOKENS',
                            label: 'Max Tokens',
                            rules: { required: false },
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                        },
                        {
                            fieldName: 'MAX_INPUT_TOKENS',
                            label: 'Max Input Tokens',
                            rules: { required: false },
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                        },
                    ],
                },
            ],
            'File Uploads': [
                {
                    name: 'ZIP',
                    disable: false,
                    icon: ZIP,
                    fields: [
                        {
                            fieldName: 'ZIP',
                            label: 'Zip File',
                            defaultValue: null,
                            options: {
                                component: 'file-upload',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                    ],
                },
            ],
        },
        FUNCTION: {
            Function: [
                {
                    name: 'AWS Image Text Extraction',
                    disable: false,
                    icon: AWS_TEXTRACT,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'AWS_TEXTRACT',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'AWS TEXTRACT',
                                        value: 'AWS_TEXTRACT',
                                    },
                                    {
                                        display: 'AWS REKOGNITION',
                                        value: 'AWS_REKOGNITION',
                                    },
                                ],
                            },
                            disabled: false,
                            hidden: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ACCESS_KEY',
                            label: 'Access Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SECRET_KEY',
                            label: 'Secret Key',
                            defaultValue: '',
                            options: {
                                component: 'password',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'REGION',
                            label: 'Region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'S3BUCKETENGINEID',
                            label: 'S3 Bucket Engine Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '["isFilePresentInS3","filePath"]',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'AWS Polly',
                    disable: false,
                    icon: AWS_POLLY,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'AWS_POLLY',
    
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ACCESS_KEY',
                            label: 'Access Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SECRET_KEY',
                            label: 'Secret Key',
                            defaultValue: '',
                            options: {
                                component: 'password',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'REGION',
                            label: 'Region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '["extractedText","nameOfTheAudioFile"]',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'AWS Transcribe',
                    disable: false,
                    icon: AWS_TRANSCRIBE,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'AWS_Transcribe',
    
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ACCESS_KEY',
                            label: 'Access Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SECRET_KEY',
                            label: 'Secret Key',
                            defaultValue: '',
                            options: {
                                component: 'password',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'REGION',
                            label: 'Region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'S3BUCKETENGINEID',
                            label: 'S3 Bucket Engine Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '["isFilePresentInS3","filePath"]',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'AWS Comprehend',
                    disable: false,
                    icon: AWS_COMPREHEND,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'AWS_COMPREHEND',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'ACCESS_KEY',
                            label: 'Access Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SECRET_KEY',
                            label: 'Secret Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'REGION',
                            label: 'Region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'Azure Document Intelligence',
                    disable: false,
                    icon: RESTAPI,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue:
                                'AZURE_DOCUMENT_INTELLIGENCE_CUSTOM_EMBEDDINGS',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'URL',
                            label: 'URL',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'API_KEY',
                            label: 'API Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'Azure Speech To Text',
                    disable: false,
                    icon: AZURE_SPEECH_TO_TEXT,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'AZURE SPEECH TO TEXT',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SPEECH_KEY',
                            label: 'Speech Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'SPEECH_REGION',
                            label: 'Speech region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'Google Speech To Text',
                    disable: false,
                    icon: GOOGLE_SPEECH_TO_TEXT,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'GOOGLE_SPEECH_TO_TEXT',
    
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FILE',
                            label: 'Upload Service Account File',
                            defaultValue: null,
                            options: {
                                component: 'file-upload',
                            },
                            disabled: true,
                            secondary: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'GOOGLE_BUCKET_ENGINEID',
                            label: 'Google Bucket Engine Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '["isFilePresentInBucket","filePath"]',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'Google OCR',
                    disable: false,
                    icon: GOOGLE_OCR,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'GOOGLE_OCR',
    
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'PROJECT_ID',
                            label: 'Project Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'PROCESSOR_ID',
                            label: 'Processor Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'REGION',
                            label: 'Region',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FILE',
                            label: 'Upload Service Account File',
                            defaultValue: null,
                            options: {
                                component: 'file-upload',
                            },
                            disabled: true,
                            secondary: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'GOOGLE_BUCKET_ENGINEID',
                            label: 'Google Bucket Engine Id',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '["isFilePresentInBucket","filePath"]',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
                {
                    name: 'REST',
                    disable: false,
                    icon: RESTAPI,
                    fields: [
                        {
                            fieldName: 'FUNCTION_TYPE',
                            label: 'Function Type',
                            defaultValue: 'REST',
                            options: {
                                component: 'text-field',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'NAME',
                            label: 'Catalog Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: {
                                required: true,
                                pattern: {
                                    value: /^[\w\-\s]+$/,
                                    message:
                                        'Catalog names can only contain alphanumeric characters and dashes.',
                                },
                                custom: {
                                    value: 'CheckEngineName ( "[VALUE]") ;',
                                    message:
                                        'This Catalog name has already been used, please try another.',
                                },
                            },
                        },
                        {
                            fieldName: 'URL',
                            label: 'URL',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'HTTP_METHOD',
                            label: 'Http Method',
                            defaultValue: 'POST',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'GET',
                                        value: 'GET',
                                    },
                                    {
                                        display: 'HEAD',
                                        value: 'HEAD',
                                    },
                                    {
                                        display: 'POST',
                                        value: 'POST',
                                    },
                                    {
                                        display: 'PUT',
                                        value: 'PUT',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'CONTENT_TYPE',
                            label: 'POST Message Body Type',
                            defaultValue: 'json',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'json',
                                        value: 'json',
                                    },
                                    {
                                        display: 'x-www-form-urlencoded',
                                        value: 'x-www-form-urlencoded',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'HEADERS',
                            label: 'Http Headers',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: false },
                        },
                        {
                            fieldName: 'FUNCTION_PARAMETERS',
                            label: 'Function Parameters',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_REQUIRED_PARAMETERS',
                            label: 'Function Required Parameters',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_NAME',
                            label: 'Function Name (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'FUNCTION_DESCRIPTION',
                            label: 'Function Description (metadata)',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                    ],
                },
            ],
            'File Uploads': [
                {
                    name: 'ZIP',
                    disable: false,
                    icon: ZIP,
                    fields: [
                        {
                            fieldName: 'ZIP',
                            label: 'Zip File',
                            defaultValue: null,
                            options: {
                                component: 'file-upload',
                            },
                            disabled: true,
                            rules: { required: true },
                        },
                    ],
                },
            ],
        },
        VECTOR: {
            Connections: [
                {
                    name: 'Chroma',
                    disable: false,
                    icon: CHROMADB,
                    fields: [
                        {
                            fieldName: 'NAME',
                            label: 'Catalog Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: {
                                required: true,
                                pattern: {
                                    value: /^[\w\-\s]+$/,
                                    message:
                                        'Catalog names can only contain alphanumeric characters and dashes.',
                                },
                                custom: {
                                    value: 'CheckEngineName ( "[VALUE]") ;',
                                    message:
                                        'This Catalog name has already been used, please try another.',
                                },
                            },
                        },
                        {
                            fieldName: 'VECTOR_TYPE',
                            label: 'Type',
                            defaultValue: 'CHROMA',
                            options: {
                                component: 'text-field',
                            },
                            hidden: true,
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'EMBEDDER_ENGINE_ID',
                            label: 'Embedder',
                            defaultValue: '',
                            options: {
                                component: 'select',
                                options: [],
                                pixel: `MyEngines ( metaKeys = [] , metaFilters = [{ "tag" : "embeddings" }] , engineTypes = [ 'MODEL' ] ) ;`,
                                optionDisplay: 'database_name',
                                optionValue: 'database_id',
                            },
                            disabled: false,
                            rules: { required: true },
                            helperText:
                                'The registered model engine responsible for converting input strings into fixed-size vectors, known as embeddings, capturing semantic information for downstream machine learning and natural language processing tasks.',
                        },
                        {
                            fieldName: 'INDEX_CLASSES',
                            label: 'Index Classes',
                            defaultValue: 'default',
                            options: {
                                component: 'text-field',
                            },
                            hidden: true,
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'CHUNKING_STRATEGY',
                            label: 'Chunking Strategy',
                            defaultValue: 'ALL',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'Token',
                                        value: 'ALL',
                                    },
                                    {
                                        display: 'Page by page',
                                        value: 'PAGE_BY_PAGE',
                                    },
                                    {
                                        display: 'Markdown',
                                        value: 'MARKDOWN',
                                    },
                                ],
                            },
                            disabled: false,
                            hidden: false,
                            rules: { required: true },
                            displayRules: {
                                hideOtherFields: [
                                    {
                                        fieldName: 'CONTENT_LENGTH',
                                        value: ['PAGE_BY_PAGE', 'MARKDOWN'],
                                    },
                                ],
                            },
                        },
                        {
                            fieldName: 'CONTENT_LENGTH',
                            label: 'Content Length',
                            defaultValue: '512',
                            options: {
                                component: 'number',
                            },
                            disabled: false,
                            rules: { required: true, min: 0 },
                            helperText:
                                "The content length represents the upper limit of tokens within a chunk, as determined by the embedder's tokenizer.",
                        },
                        {
                            fieldName: 'CONTENT_OVERLAP',
                            label: 'Content Overlap',
                            defaultValue: '20',
                            options: {
                                component: 'number',
                            },
                            disabled: false,
                            rules: { required: true, min: 0 },
                            helperText:
                                'The number of tokens from prior chunks that are carried over into the current chunk when processing content.',
                        },
                        {
                            fieldName: 'HOSTNAME',
                            label: 'Host Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'API_KEY',
                            label: 'API Key',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: false },
                        },
                        {
                            fieldName: 'CHROMA_COLLECTION_NAME',
                            label: 'Collection Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'KEEP_INPUT_OUTPUT',
                            label: 'Record Questions and Responses',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'true',
                                        value: 'true',
                                    },
                                    {
                                        display: 'false',
                                        value: 'false',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'EMBEDDINGS',
                            label: 'Embeddings',
                            defaultValue: null,
                            options: {
                                component: 'file-upload',
                            },
                            disabled: true,
                            secondary: true,
                            rules: {},
                        },
                        {
                            fieldName: 'DISTANCE_METHOD',
                            label: 'Distance Method',
                            defaultValue: 'cosine',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'Cosine similarity',
                                        value: 'cosine',
                                    },
                                    {
                                        display: 'Squared L2',
                                        value: 'l2',
                                    },
                                    {
                                        display: 'Inner product',
                                        value: 'ip',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: false },
                            advanced: true,
                            helperText: '',
                        },
                        {
                            fieldName: 'RETAIN_EXTRACTED_TEXT',
                            label: 'Retain Extracted Text',
                            defaultValue: 'false',
                            options: {
                                component: 'select',
                                options: [
                                    {
                                        display: 'False',
                                        value: 'false',
                                    },
                                    {
                                        display: 'True',
                                        value: 'true',
                                    },
                                ],
                            },
                            disabled: false,
                            rules: { required: false },
                            advanced: true,
                        },
                    ],
                },
                {
                    name: 'FAISS',
                    disable: false,
                    icon: META,
                    fields: [
                        {
                            fieldName: 'NAME',
                            label: 'Catalog Name',
                            defaultValue: '',
                            options: {
                                component: 'text-field',
                            },
                            disabled: false,
                            rules: {
                                required: true,
                                pattern: {
                                    value: /^[\w\-\s]+$/,
                                    message:
                                        'Catalog names can only contain alphanumeric characters and dashes.',
                                },
                                custom: {
                                    value: 'CheckEngineName ( "[VALUE]") ;',
                                    message:
                                        'This Catalog name has already been used, please try another.',
                                },
                            },
                        },
                        {
                            fieldName: 'VECTOR_TYPE',
                            label: 'Type',
                            defaultValue: 'FAISS',
                            options: {
                                component: 'text-field',
                            },
                            hidden: true,
                            disabled: true,
                            rules: { required: true },
                        },
                        {
                            fieldName: 'EMBEDDER_ENGINE_ID',
                            label: 'Embedder',
                            defaultValue: '',
                            options: {
                                component: 'select',
                                options: [],
                                pixel: `MyEngines ( metaKeys = [] , metaFilters = [{ "tag" : "embeddings" }] , engineTypes = [ 'MODEL' ] ) ;`,
                            ...

    @github-actions
    Copy link
    Copy Markdown

    github-actions bot commented Mar 4, 2025

    @CodiumAI-Agent /improve

    @QodoAI-Agent
    Copy link
    Copy Markdown

    PR Code Suggestions ✨

    CategorySuggestion                                                                                                                                    Impact
    General
    Use consistent icon naming

    Ensure consistent naming for icon constants; consider renaming Amazon_Titan to
    AMAZON_TITAN for uniformity with other constants.

    packages/client/src/pages/import/import.constants.ts [56]

    -import Amazon_Titan from '@/assets/img/Amazon_Titan.png';
    +import AMAZON_TITAN from '@/assets/img/Amazon_Titan.png';
    Suggestion importance[1-10]: 5

    __

    Why: The suggestion promotes naming consistency by renaming "Amazon_Titan" to "AMAZON_TITAN", which is a minor improvement in code readability and style.

    Low
    Possible issue
    Confirm icon assignments

    Verify that the new icon assignments (e.g. AWS_TEXTRACT, AWS_POLLY,
    GOOGLE_SPEECH_TO_TEXT, GOOGLE_OCR) match their corresponding assets to prevent
    display issues.

    packages/client/src/pages/import/import.constants.ts [5700]

    -icon: AWS_TEXTRACT,
    +icon: AWS_TEXTRACT,  // verified correct icon assignment
    Suggestion importance[1-10]: 3

    __

    Why: This suggestion merely adds a comment to verify correct icon assignment, offering minimal actionable change and low impact on functionality.

    Low

    @johbaxter johbaxter merged commit 1b24995 into dev Mar 10, 2025
    3 checks passed
    @johbaxter johbaxter deleted the 642-Fix-ImageIcons-for-Saas-Functions branch March 10, 2025 15:19
    @github-actions
    Copy link
    Copy Markdown

    @CodiumAI-Agent /update_changelog

    @QodoAI-Agent
    Copy link
    Copy Markdown

    Changelog updates: 🔄

    2025-03-10

    Fixed

    • Updated function icons on the settings page for consistency.

    to commit the new content to the CHANGELOG.md file, please type:
    '/update_changelog --pr_update_changelog.push_changelog_changes=true'

    Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

    Labels

    None yet

    Projects

    None yet

    Development

    Successfully merging this pull request may close these issues.

    [BUG] Fix image icons for SaaS functions

    3 participants