feat(marketing): replace language input with Select; update Countries to ISO-3
- Switch language field from text `InputGroup` to `Select` with `Languages` options, `GlobeIcon`, clearable support, and conditional disable/require for companies - Remove manual length validation as Select ensures valid predefined values - Update `Countries` values from ISO-2 to ISO-3 codes for consistency
This commit is contained in:
@@ -6,6 +6,7 @@ import { Select } from "@/components/FormElements/select";
|
||||
import { ShowcaseSection } from "@/components/Layouts/showcase-section";
|
||||
import Stepper, { Step } from "@/components/ui/Stepper";
|
||||
import { Countries } from "@/constants/countries";
|
||||
import { Languages } from "@/constants/languages";
|
||||
import { FormErrorMessages } from "@/constants/Texts";
|
||||
import { BreadcrumbItem } from "@/types/shared";
|
||||
import { useEffect, useRef, useState } from "react";
|
||||
@@ -244,31 +245,24 @@ const MarketingForm = ({
|
||||
</p>
|
||||
)}
|
||||
|
||||
<InputGroup
|
||||
{...registerPageType("language", {
|
||||
required: isCompany
|
||||
? { message: FormErrorMessages.required, value: true }
|
||||
: false,
|
||||
minLength: isCompany
|
||||
? { value: 2, message: FormErrorMessages.minLength(2) }
|
||||
: undefined,
|
||||
maxLength: isCompany
|
||||
? { value: 10, message: FormErrorMessages.maxLength(10) }
|
||||
: undefined,
|
||||
})}
|
||||
<Select
|
||||
{...registerPageType("language")}
|
||||
label="Language"
|
||||
name="language"
|
||||
type="text"
|
||||
placeholder="Enter Language (e.g., en, ar)"
|
||||
items={Languages}
|
||||
defaultValue="en"
|
||||
clearable
|
||||
prefixIcon={<GlobeIcon />}
|
||||
disabled={!isCompany}
|
||||
required={isCompany}
|
||||
placeholder="Please select language"
|
||||
onClear={() => setValue("language", undefined)}
|
||||
/>
|
||||
{pageTypeErrors.language && (
|
||||
<p className="mt-1 text-sm text-red-500">
|
||||
{pageTypeErrors.language.message}
|
||||
</p>
|
||||
)}
|
||||
|
||||
<InputGroup
|
||||
{...registerPageType("company_name", {
|
||||
required: isCompany
|
||||
|
||||
Reference in New Issue
Block a user