@6thbridge/hexa 0.0.2 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-lint.log +1 -1
- package/dist/index.d.mts +43 -3
- package/dist/index.d.ts +43 -3
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/output.css +125 -15
- package/package.json +2 -1
- package/tsconfig.json +1 -2
- package/tsconfig.node.json +0 -10
package/dist/index.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["../src/components/label/FormLabel.tsx","../src/components/label/index.tsx","../src/utils/index.ts","../src/components/loader/index.tsx","../src/components/button/index.tsx","../src/components/input/index.tsx","../src/components/form/ErrorMessage.tsx","../src/components/form/FormDescription.tsx","../src/components/password-input/index.tsx","../src/components/password-input/icons/Eye.tsx","../src/components/password-input/icons/EyeOff.tsx","../src/components/textarea/index.tsx","../src/components/searcheable/index.tsx","../src/components/command/index.tsx","../src/components/dialog/index.tsx","../src/components/dialog/icon/CloseIcon.tsx","../src/components/popover/index.tsx","../src/components/scroll-area/index.tsx","../src/components/select/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Label } from \".\";\nimport { cn } from \"@/src/utils\";\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> & {\n showAsterisk?: boolean;\n error?: string;\n formItemId?: string;\n }\n>(({ className, children, showAsterisk, error, ...props }, ref) => {\n return (\n <Label\n ref={ref}\n className={cn(error && \"text-red-500\", className)}\n // htmlFor={formItemId}\n {...props}\n >\n {showAsterisk ? (\n <p>\n {children}\n <span className=\"text-red-500\">*</span>\n </p>\n ) : (\n children\n )}\n </Label>\n );\n});\n\nFormLabel.displayName = \"FormLabel\";\n\nexport { FormLabel };\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/src/utils\";\n\nconst labelVariants = cva(\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n);\n\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport function areObjectsEqual<T extends object>(obj1: T, obj2: T): boolean {\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n for (const key of keys1) {\n const val1 = obj1[key as keyof T];\n const val2 = obj2[key as keyof T];\n\n if (\n typeof val1 === \"object\" &&\n val1 !== null &&\n typeof val2 === \"object\" &&\n val2 !== null\n ) {\n if (!areObjectsEqual(val1, val2)) {\n return false;\n }\n } else if (val1 !== val2) {\n return false;\n }\n }\n\n return true;\n}\n","type Colours = \"primary\" | \"secondary\";\n\nexport const Loader = ({\n size = 16,\n colour = \"primary\",\n}: {\n size?: number;\n colour?: Colours;\n}) => {\n return (\n <svg\n className=\"animate-spin\"\n width={size}\n height={size}\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n >\n <circle cx=\"10\" cy=\"10\" r=\"9.25\" stroke=\"transparent\" strokeWidth=\"1.5\" />\n <path\n d=\"M10 0.595792C10 0.266746 10.267 -0.00185055 10.5954 0.0177417C11.9786 0.100242 13.3318 0.469461 14.5682 1.1044C15.9816 1.83021 17.2016 2.88235 18.1273 4.17366C19.0531 5.46496 19.6578 6.95826 19.8913 8.52984C20.1249 10.1014 19.9807 11.706 19.4705 13.2108C18.9604 14.7155 18.0991 16.077 16.9579 17.1825C15.8167 18.288 14.4285 19.1056 12.9084 19.5677C11.3882 20.0298 9.77982 20.123 8.21646 19.8397C6.84883 19.5918 5.55009 19.0619 4.40196 18.2863C4.12931 18.1021 4.08072 17.7265 4.28083 17.4653C4.48094 17.2041 4.85388 17.1564 5.12801 17.3384C6.12474 18.0001 7.24768 18.4531 8.42898 18.6672C9.80606 18.9168 11.2228 18.8347 12.5618 18.4276C13.9008 18.0206 15.1236 17.3004 16.1288 16.3266C17.134 15.3528 17.8927 14.1536 18.342 12.8282C18.7914 11.5027 18.9185 10.0893 18.7127 8.70502C18.507 7.32071 17.9743 6.00535 17.1589 4.86792C16.3435 3.73048 15.2688 2.80371 14.0238 2.16439C12.9559 1.61596 11.789 1.29259 10.5954 1.21173C10.2671 1.18949 10 0.92484 10 0.595792Z\"\n fill={colour === \"primary\" ? \"#ffffff\" : \"currentColor\"}\n className=\"rounded\"\n />\n </svg>\n );\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/src/utils\";\nimport { Loader } from \"../loader\";\nimport { ButtonHTMLAttributes } from \"react\";\nimport { DetailedHTMLProps } from \"react\";\n\nconst buttonVariants = cva(\n \"overflow-hidden isolate relative inline-flex h-fit items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-background dark:ring-offset-transparent transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:!pointer-events-none\",\n {\n variants: {\n variant: {\n primary:\n \"border-primary-main bg-primary-main hover:bg-primary-main/70 disabled:bg-primary-main/70 text-white font-bold\",\n neutral:\n \"!border-0 bg-transparent text-primary-main hover:opacity-80 disabled:opacity-60\",\n outlined:\n \"border-blue-950 text-blue-950 hover:opacity-80 disabled:opacity-60\",\n \"light-outlined\":\n \"border-white text-white hover:opacity-80 disabled:opacity-60\",\n \"primary-outlined\":\n \" text-primary-main bg-primary-main/20 hover:opacity-80 disabled:opacity-60 !font-medium\",\n \"dark-text\":\n \"border-transparent bg-transparent hover:bg-opacity-70 disabled:bg-opacity-70 text-black font-medium\",\n light:\n \"border-white bg-white hover:bg-opacity-70 disabled:bg-opacity-70 text-blue-950 font-semibold\",\n },\n size: {\n // lg: \"h-15 px-8 items-center\",\n // sm: \"h-10 px-3.5 items-center text-sm\",\n default:\n \"py-[0.625rem] px-[1.5rem] text-[0.875rem] leading-[1.25rem] font-medium rounded-lg\",\n sm: \"py-[0.375rem] px-[1rem] text-[0.75rem] leading-[1rem] font-medium rounded-lg\",\n lg: \"py-[0.75rem] px-[1.5rem] text-[1rem] leading-[1.5rem] font-medium rounded-lg\",\n md: \"h-12 py-1 px-5 items-center\",\n \"icon-sm\":\n \"h-[1.75rem] w-[1.75rem] flex justify-center items-center font-medium rounded-lg\",\n icon: \"h-[2.5rem] w-[2.75rem] flex justify-center items-center font-medium rounded-lg\",\n \"icon-lg\":\n \"h-[3rem] w-[3rem] flex justify-center items-center font-medium rounded-lg\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n },\n);\n\nexport interface ButtonProps\n // extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n extends DetailedHTMLProps<\n ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n isLoading?: boolean;\n leftNode?: React.ReactNode;\n rightNode?: React.ReactNode;\n LoaderSize?: number;\n}\n\nconst Button = ({\n className,\n variant = \"primary\",\n size,\n asChild = false,\n isLoading = false,\n leftNode,\n rightNode,\n LoaderSize,\n ref,\n ...props\n}: ButtonProps) => {\n const Component = asChild ? Slot : \"button\";\n\n const { children, disabled, ...rest } = props;\n const reference = React.useRef<HTMLButtonElement>(null);\n\n return (\n <Component\n className={cn(buttonVariants({ variant, size, className }))}\n ref={reference || ref}\n disabled={disabled || isLoading}\n {...rest}\n >\n <div className=\"flex font-medium justify-center items-center gap-2\">\n {/* {leftNode}\n {children}\n {rightNode}\n {isLoading && <Loader />} */}\n\n {isLoading ? (\n <>\n <span className=\"mx-auto\">\n <Loader size={LoaderSize} />\n </span>\n </>\n ) : (\n <>\n {leftNode}\n {children}\n {rightNode}\n </>\n )}\n </div>\n </Component>\n );\n};\n\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"@/src/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { DetailedHTMLProps } from \"react\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\nimport { FormDescription } from \"../form/FormDescription\";\n\nexport const inputVariants = cva(\n \"!p-0 flex h-full w-full !border-transparent !bg-transparent text-base focus-visible:bg-transparent focus-visible:outline-none focus-visible:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50\",\n {\n variants: {\n status: {\n default: \"placeholder:text-[#C4C4C4] dark:placeholder:text-[#9299A2]\",\n error: \"placeholder:text-red-500 text-red-500\",\n loading: \"placeholder:text-[#C4C4C4] dark:placeholder:text-[#9299A2]\",\n prefilled: \"\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport interface BaseInnerInputProps\n extends DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n VariantProps<typeof inputVariants> {}\n\nconst BaseInnerInput = ({\n className,\n status,\n type,\n ref,\n ...props\n}: BaseInnerInputProps) => {\n return (\n <input\n type={type}\n className={cn(inputVariants({ status }), className)}\n ref={ref}\n {...props}\n />\n );\n};\nBaseInnerInput.displayName = \"BaseInnerInput\";\n\nexport const inputContainerVariants = cva(\n \"flex relative h-10 w-full rounded-[4px] dark:!bg-transparent border transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50 dark:disabled:!border-[#9299A2]\",\n {\n variants: {\n status: {\n default:\n \"border-[#DEDEDE] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-[#00B2A9] focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-red-500 bg-red-50 border-red-500 dark:!bg-status-error-bg-dark text-red-500 focus-within:bg-red-50 focus-within:border-red-500\",\n loading: \"\",\n prefilled:\n \"bg-[#F6F6F6] border-[#DEDEDE] dark:!bg-transparent caret-[#DEDEDE] focus-within:bg-[#F6F6F6] focus-within:border-[#DEDEDE] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport const sideVariants = cva(\n \"top-0 flex justify-center items-center h-full min-w-[50px] max-w-[100px] dark:!bg-transparent transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50 dark:disabled:!border-[#9299A2]\",\n {\n variants: {\n side: {\n left: \"left-0 rounded-l-[8px] border-r\",\n right: \"right-0 rounded-r-[8px] border-l\",\n },\n status: {\n default:\n \"border-[#DEDEDE] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-[#00B2A9] focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-red-500 bg-red-50 border-red-500 dark:!bg-red-50 text-red-500 focus-within:bg-red-50 focus-within:border-red-500\",\n loading: \"\",\n prefilled:\n \"bg-[#F6F6F6] border-[#DEDEDE] dark:!bg-transparent caret-[#DEDEDE] focus-within:bg-[#F6F6F6] focus-within:border-[#DEDEDE] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n side: \"left\",\n },\n },\n);\n\nexport interface InputProps\n extends BaseInnerInputProps,\n VariantProps<typeof inputContainerVariants> {\n isLoading?: boolean;\n error?: string;\n leftNode?: React.ReactNode;\n rightNode?: React.ReactNode;\n sideNodeClassName?: string;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n}\nconst Input = ({\n className,\n status = \"default\",\n disabled,\n error,\n isLoading,\n sideNodeClassName,\n showAsterisk,\n label,\n description,\n ref,\n ...props\n}: InputProps) => {\n let containerStatus: VariantProps<typeof inputContainerVariants>[\"status\"] =\n status;\n\n if (error) containerStatus = \"error\";\n if (isLoading) containerStatus = \"loading\";\n if (disabled) containerStatus = \"prefilled\";\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <div\n className={cn(\n inputContainerVariants({ status: containerStatus }),\n props.leftNode || props.rightNode ? \"p-0\" : \"\",\n className,\n )}\n >\n {props.leftNode ? (\n <div\n className={cn(\n sideVariants({\n status: containerStatus,\n side: \"left\",\n }),\n sideNodeClassName,\n )}\n >\n {props.leftNode}\n </div>\n ) : null}\n <BaseInnerInput\n ref={ref}\n disabled={isLoading || disabled}\n className={props.leftNode || props.rightNode ? \"!px-3 !py-2\" : \"\"}\n {...props}\n />\n {props.rightNode ? (\n <div\n className={cn(\n sideVariants({\n status: containerStatus,\n side: \"right\",\n }),\n sideNodeClassName,\n )}\n >\n {props.rightNode}\n </div>\n ) : null}\n </div>\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nInput.displayName = \"Input\";\n\nexport { Input };\n","import { cn } from \"@/src/utils\";\nimport React from \"react\";\n\nconst ErrorMessage = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement> & {\n error?: string;\n }\n>(({ className, children, error, ...props }, ref) => {\n const body = error ?? children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n className={cn(\"text-xs font-normal text-[#F04248]\", className)}\n {...props}\n >\n {body}\n </p>\n );\n});\nErrorMessage.displayName = \"ErrorMessage\";\n\nexport { ErrorMessage };\n","import { cn } from \"@/src/utils\";\nimport React from \"react\";\n\nconst FormDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n return (\n <p\n ref={ref}\n className={cn(\"text-sm text-[#8E98A8\", className)}\n {...props}\n />\n );\n});\nFormDescription.displayName = \"FormDescription\";\n\nexport { FormDescription };\n","import { useState } from \"react\";\nimport { Eye } from \"./icons/Eye\";\nimport { EyeOff } from \"./icons/EyeOff\";\nimport { Input, InputProps } from \"../input\";\n\nconst PasswordInput = ({ ...props }: InputProps) => {\n const [passwordVisible, setPasswordVisible] = useState(false);\n\n return (\n <Input\n sideNodeClassName=\"!border-l-0\"\n rightNode={\n passwordVisible ? (\n <button\n type=\"button\"\n onClick={() => setPasswordVisible((val) => !val)}\n >\n <Eye />\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={() => setPasswordVisible((val) => !val)}\n >\n <EyeOff />\n </button>\n )\n }\n type={passwordVisible ? \"text\" : \"password\"}\n {...props}\n />\n );\n};\n\nPasswordInput.displayName = \"PasswordInput\";\n\nexport { PasswordInput };\n","export const Eye = () => {\n return (\n <svg\n width=\"18\"\n height=\"14\"\n viewBox=\"0 0 18 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.54639 7.26103C1.48389 7.09264 1.48389 6.90741 1.54639 6.73903C2.15517 5.26292 3.18853 4.00081 4.51547 3.1127C5.84241 2.22459 7.40317 1.75049 8.99989 1.75049C10.5966 1.75049 12.1574 2.22459 13.4843 3.1127C14.8113 4.00081 15.8446 5.26292 16.4534 6.73903C16.5159 6.90741 16.5159 7.09264 16.4534 7.26103C15.8446 8.73713 14.8113 9.99925 13.4843 10.8874C12.1574 11.7755 10.5966 12.2496 8.99989 12.2496C7.40317 12.2496 5.84241 11.7755 4.51547 10.8874C3.18853 9.99925 2.15517 8.73713 1.54639 7.26103Z\"\n stroke=\"#8E98A8\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M9 9.25C10.2426 9.25 11.25 8.24264 11.25 7C11.25 5.75736 10.2426 4.75 9 4.75C7.75736 4.75 6.75 5.75736 6.75 7C6.75 8.24264 7.75736 9.25 9 9.25Z\"\n stroke=\"#8E98A8\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","export const EyeOff = () => {\n return (\n <svg\n width=\"18\"\n height=\"18\"\n viewBox=\"0 0 18 18\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4.08759 12.69C3.26171 11.9072 2.61006 10.9591 2.17509 9.90752C2.10081 9.73454 2.0625 9.54826 2.0625 9.36001C2.0625 9.17177 2.10081 8.98549 2.17509 8.81252C2.75274 7.4073 3.72095 6.19704 4.96509 5.32502C6.14597 4.4998 7.55989 4.07405 9.00009 4.11002C10.0363 4.084 11.064 4.30239 12.0001 4.74752M13.9201 6.03752C14.7415 6.81964 15.3904 7.76486 15.8251 8.81252C15.8994 8.98549 15.9377 9.17177 15.9377 9.36001C15.9377 9.54826 15.8994 9.73454 15.8251 9.90752C15.2474 11.3127 14.2792 12.523 13.0351 13.395C11.8542 14.2202 10.4403 14.646 9.00009 14.61C7.9639 14.636 6.93616 14.4176 6.00009 13.9725\"\n stroke=\"#8E98A8\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M6.5325 10.2375C6.42732 9.95694 6.37395 9.65962 6.375 9.36C6.375 8.66381 6.65156 7.99613 7.14384 7.50384C7.63613 7.01156 8.30381 6.735 9 6.735C9.3 6.7335 9.597 6.7875 9.8775 6.8925M11.4675 8.4825C11.5725 8.763 11.6265 9.06 11.625 9.36C11.625 10.0562 11.3484 10.7239 10.8562 11.2162C10.3639 11.7084 9.69619 11.985 9 11.985C8.70038 11.986 8.40306 11.9327 8.1225 11.8275M2.25 15L14.25 3\"\n stroke=\"#8E98A8\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/src/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { inputContainerVariants } from \"../input\";\nimport { DetailedHTMLProps } from \"react\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { FormDescription } from \"../form/FormDescription\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst textareaContainerVariants = cva(\n \"flex relative min-h-[80px] w-full rounded-[8px] border transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50\",\n {\n variants: {\n status: {\n default:\n \"border-[#D7D7D7] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-[#00B2A9] focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-status-error-fill bg-status-error-bg border-status-error-fill dark:!bg-status-error-bg-dark text-status-error-fill focus-within:bg-status-error-bg focus-within:border-status-error-fill\",\n loading: \"placeholder:text-[#C4C4C4]\",\n prefilled:\n \"resize-none bg-[#F6F6F6] border-[#D7D7D7] dark:!bg-transparent caret-[#D7D7D7] focus-within:bg-[#F6F6F6] focus-within:border-[#D7D7D7] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport interface TextareaProps\n extends DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n >,\n VariantProps<typeof inputContainerVariants> {\n isLoading?: boolean;\n error?: string;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n}\n\nconst Textarea = ({\n className,\n status = \"default\",\n disabled,\n error,\n isLoading,\n showAsterisk,\n label,\n description,\n ...props\n}: TextareaProps) => {\n let containerStatus: VariantProps<\n typeof textareaContainerVariants\n >[\"status\"] = status;\n\n if (error) containerStatus = \"error\";\n if (isLoading) containerStatus = \"loading\";\n if (disabled) containerStatus = \"prefilled\";\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <textarea\n className={cn(\n \"min-h-[80px]\",\n inputContainerVariants({ status: containerStatus }),\n className,\n )}\n disabled={isLoading || disabled}\n {...props}\n />\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nTextarea.displayName = \"Textarea\";\n\nexport { Textarea };\n","(\"use client\");\n\nimport * as React from \"react\";\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"../command\";\nimport { PopoverContent, PopoverRoot, PopoverTrigger } from \"../popover\";\nimport { cn } from \"@/src/utils\";\nimport { ScrollArea } from \"../scroll-area\";\nimport { VariantProps } from \"class-variance-authority\";\nimport { inputContainerVariants } from \"../input\";\n\ntype SearchableDataType = {\n value: string;\n label: string;\n} & {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any; // Allows for additional properties\n};\n\ninterface SearchableProps {\n modal?: boolean;\n hideSearch?: boolean;\n loading?: boolean;\n inputValue?: string;\n onInputValueChange?: (arg: string) => void;\n disabled?: boolean;\n placeholder?: string;\n value?: SearchableDataType;\n options: SearchableDataType[];\n optionComponent?: (arg: SearchableDataType) => React.ReactNode;\n className?: string;\n containerClassName?: string;\n onChange: (value: SearchableDataType) => void;\n onValueChange?: (value: string) => void;\n children?: React.ReactNode;\n}\n\ninterface SearchableTriggerProps\n extends VariantProps<typeof inputContainerVariants> {\n disabled?: boolean;\n placeholder?: string;\n value?: string;\n className?: string;\n}\n\nconst SearchableTrigger = ({\n className,\n value,\n placeholder = \"\",\n status,\n disabled,\n}: SearchableTriggerProps) => {\n return (\n <PopoverTrigger asChild disabled={disabled}>\n <button\n disabled={disabled}\n className={cn(\n inputContainerVariants({ status }),\n \"[&>span]:justify-start [&>span]:items-center gap-2 flex h-12 w-full items-center justify-between goup\",\n value ? \"\" : \"text-[#79818C]\",\n className,\n )}\n >\n {value ?? placeholder ?? \"Select options...\"}\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n className=\" data-[state=open]:goup-rotate-180\"\n >\n <path\n d=\"M16.5999 7.45825L11.1666 12.8916C10.5249 13.5333 9.4749 13.5333 8.83324 12.8916L3.3999 7.45825\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </button>\n </PopoverTrigger>\n );\n};\n\nconst Searchable = ({\n options,\n value,\n onChange,\n containerClassName,\n placeholder,\n disabled,\n loading,\n optionComponent,\n children,\n modal,\n hideSearch,\n className,\n inputValue,\n onValueChange,\n onInputValueChange,\n}: SearchableProps) => {\n const [open, setOpen] = React.useState(false);\n\n const triggerRef = React.useRef<HTMLDivElement | null>(null);\n\n const [width, setWidth] = React.useState<number | undefined>(undefined);\n\n React.useLayoutEffect(() => {\n if (triggerRef.current) {\n setWidth(triggerRef.current.clientWidth);\n }\n }, [triggerRef.current]);\n\n return (\n <PopoverRoot modal={modal} open={open} onOpenChange={setOpen}>\n <div className={cn(\"w-full\", className)} ref={triggerRef}>\n {children}\n </div>\n <PopoverContent\n portal={modal}\n className=\"p-0 min-w-[200px]\"\n style={{ width }}\n >\n <Command className=\"max-h-[270px] pt-3\">\n {!hideSearch && (\n <CommandInput\n loading={loading}\n placeholder={placeholder ?? \"Search options...\"}\n onValueChange={onInputValueChange}\n value={inputValue}\n CommandInputContainerClassName=\"mx-3 border rounded-md border-[#DEDEDE]\"\n />\n )}\n <ScrollArea className={cn(\"w-full px-0\", containerClassName)}>\n <CommandList>\n {!hideSearch && <CommandEmpty>No result found.</CommandEmpty>}\n <CommandGroup className=\"w-full\">\n {options.map((option) => (\n <CommandItem\n defaultValue={value?.label}\n key={option.value}\n value={option.label}\n disabled={disabled}\n onSelect={() => {\n onChange(option);\n setOpen(false);\n onValueChange?.(option?.value);\n }}\n >\n {!optionComponent ? option.label : optionComponent(option)}\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </ScrollArea>\n </Command>\n </PopoverContent>\n </PopoverRoot>\n );\n};\n\nexport { Searchable, SearchableTrigger };\n\nexport type { SearchableProps, SearchableTriggerProps, SearchableDataType };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { type DialogProps } from \"@radix-ui/react-dialog\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { Search } from \"lucide-react\";\n\nimport { cn } from \"@/src/utils\";\nimport { Dialog, DialogContent } from \"@/src/components/dialog\";\nimport { Loader } from \"../loader\";\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className,\n )}\n {...props}\n />\n));\nCommand.displayName = CommandPrimitive.displayName;\n\ninterface CommandDialogProps extends DialogProps {\n trigger?: React.ReactNode;\n}\n\nconst CommandDialog = ({ children, ...props }: CommandDialogProps) => {\n return (\n <Dialog {...props} trigger={props?.trigger ?? <></>}>\n <DialogContent className=\"overflow-hidden p-0\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n};\n\ninterface CommandInputProps\n extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input> {\n CommandInputContainerClassName?: string;\n loading?: boolean;\n}\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n CommandInputProps\n>(({ className, CommandInputContainerClassName, loading, ...props }, ref) => (\n <div\n className={cn(\n \"flex items-center border-0 px-3 gap-2\",\n CommandInputContainerClassName,\n )}\n cmdk-input-wrapper=\"\"\n >\n {loading ? (\n <Loader size={16} colour=\"secondary\" />\n ) : (\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n )}\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n disabled={loading}\n {...props}\n />\n </div>\n));\n\nCommandInput.displayName = CommandPrimitive.Input.displayName;\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", className)}\n {...props}\n />\n));\n\nCommandList.displayName = CommandPrimitive.List.displayName;\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n));\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n));\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName;\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-primary-accent data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n />\n));\n\nCommandItem.displayName = CommandPrimitive.Item.displayName;\n\nconst CommandShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className,\n )}\n {...props}\n />\n );\n};\nCommandShortcut.displayName = \"CommandShortcut\";\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\n\nimport { cn } from \"@/src/utils\";\nimport { CloseIcon } from \"./icon/CloseIcon\";\n\nconst DialogRoot = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n \"fixed inset-0 z-50 bg-black/70 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> & {\n hideCloseButton?: boolean;\n }\n>(({ className, hideCloseButton, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border border-transparent bg-white p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg\",\n className,\n )}\n {...props}\n >\n {children}\n {!hideCloseButton && (\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\n <CloseIcon />\n\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n));\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\"flex flex-col space-y-1.5 text-left\", className)}\n {...props}\n />\n);\nDialogHeader.displayName = \"DialogHeader\";\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\"flex flex-row justify-end sm:space-x-2\", className)}\n {...props}\n />\n);\nDialogFooter.displayName = \"DialogFooter\";\n\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn(\n \"text-lg font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\nexport type DialogPropsType = {\n trigger: React.ReactNode;\n children: React.ReactNode;\n title?: React.ReactNode;\n description?: React.ReactNode;\n footer?: React.ReactNode;\n hideCloseButton?: boolean;\n contentClassName?: string;\n headerClassName?: string;\n titleClassName?: string;\n descriptionClassName?: string;\n footerClassName?: string;\n asChild?: boolean;\n onOpenAutoFocus?: (e: Event) => void;\n onCloseAutoFocus?: (e: Event) => void;\n onInteractOutside?: (e: Event) => void;\n onPointerDownOutside?: (e: Event) => void;\n onEscapeKeyDown?: (e: KeyboardEvent) => void;\n};\n\nconst Dialog = ({\n trigger,\n children,\n open,\n onOpenChange,\n hideCloseButton,\n footer,\n title,\n description,\n contentClassName,\n headerClassName,\n titleClassName,\n descriptionClassName,\n footerClassName,\n asChild = true,\n onOpenAutoFocus,\n onCloseAutoFocus,\n onEscapeKeyDown,\n onInteractOutside,\n onPointerDownOutside,\n ...props\n}: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root> &\n DialogPropsType) => {\n return (\n <DialogRoot {...props} open={open} onOpenChange={onOpenChange}>\n <DialogTrigger asChild={asChild}>{trigger}</DialogTrigger>\n <DialogPortal>\n <DialogContent\n className={contentClassName}\n hideCloseButton={hideCloseButton}\n onOpenAutoFocus={onOpenAutoFocus}\n onCloseAutoFocus={onCloseAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n onPointerDownOutside={onPointerDownOutside}\n onInteractOutside={onInteractOutside}\n >\n {title || description ? (\n <DialogHeader className={headerClassName}>\n {title && (\n <DialogTitle className={titleClassName}>{title}</DialogTitle>\n )}\n {description && (\n <DialogDescription className={descriptionClassName}>\n {description}\n </DialogDescription>\n )}\n </DialogHeader>\n ) : (\n <></>\n )}\n {children}\n {footer && (\n <DialogFooter className={footerClassName}>{footer}</DialogFooter>\n )}\n </DialogContent>\n </DialogPortal>\n </DialogRoot>\n );\n};\nDialog.displayName = DialogPrimitive.Dialog.displayName;\n\nexport { Dialog, DialogRoot, DialogContent };\n","export const CloseIcon = () => {\n return (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"stroke-[#232528]]\"\n >\n <path\n d=\"M5.00098 5L19 18.9991\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M4.99996 18.9991L18.999 5\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","// import * as React from \"react\"\n// import * as PopoverPrimitive from \"@radix-ui/react-popover\"\n// import { cn } from \"../../utils\"\n\n// const Popover = PopoverPrimitive.Root\n\n// const PopoverTrigger = PopoverPrimitive.Trigger\n\n// const PopoverAnchor = PopoverPrimitive.Anchor\n\n// const PopoverContent = React.forwardRef<\n// React.ElementRef<typeof PopoverPrimitive.Content>,\n// React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n// >(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n// <PopoverPrimitive.Portal>\n// <PopoverPrimitive.Content\n// ref={ref}\n// align={align}\n// sideOffset={sideOffset}\n// className={cn(\n// \"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n// className\n// )}\n// {...props}\n// />\n// </PopoverPrimitive.Portal>\n// ))\n// PopoverContent.displayName = PopoverPrimitive.Content.displayName\n\n// export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor }\n\n\"use client\";\n\nimport * as React from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\n\nimport { cn } from \"@/src/utils\";\n\nconst PopoverRoot = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content> & {\n portal?: boolean;\n }\n>(\n (\n { className, align = \"center\", sideOffset = 4, portal = true, ...props },\n ref,\n ) =>\n portal ? (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"pointer-events-auto z-50 w-72 rounded-md border border-transparent bg-white p-4 text-[#191919] shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n onOpenAutoFocus={props.onOpenAutoFocus}\n onCloseAutoFocus={props.onCloseAutoFocus}\n {...props}\n />\n </PopoverPrimitive.Portal>\n ) : (\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"pointer-events-auto z-50 w-72 rounded-md border border-transparent bg-white p-4 text-[#191919] shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n onOpenAutoFocus={props.onOpenAutoFocus}\n onCloseAutoFocus={props.onCloseAutoFocus}\n {...props}\n />\n ),\n);\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport type PopoverPropsType = {\n trigger: React.ReactNode;\n children: React.ReactNode;\n contentClassName?: string;\n asChild?: boolean;\n align?: PopoverPrimitive.PopoverContentProps[\"align\"];\n side?: PopoverPrimitive.PopoverContentProps[\"side\"];\n alignOffset?: number | undefined;\n sideOffset?: number | undefined;\n onOpenAutoFocus?: (e: Event) => void;\n onCloseAutoFocus?: (e: Event) => void;\n};\n\nconst Popover = ({\n trigger,\n children,\n open,\n onOpenChange,\n contentClassName,\n asChild = true,\n align,\n side,\n alignOffset,\n sideOffset,\n onOpenAutoFocus,\n onCloseAutoFocus,\n ...props\n}: React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Root> &\n PopoverPropsType) => {\n return (\n <PopoverRoot {...props} open={open} onOpenChange={onOpenChange}>\n <PopoverTrigger asChild={asChild}>{trigger}</PopoverTrigger>\n <PopoverContent\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n side={side}\n align={align}\n className={contentClassName}\n onOpenAutoFocus={onOpenAutoFocus}\n onCloseAutoFocus={onCloseAutoFocus}\n >\n {children}\n </PopoverContent>\n </PopoverRoot>\n );\n};\nPopover.displayName = PopoverPrimitive.Root.displayName;\n\nexport { Popover, PopoverRoot, PopoverTrigger, PopoverContent };\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\n\nimport { cn } from \"@/src/utils\";\n\nconst ScrollArea = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <ScrollAreaPrimitive.Root\n ref={ref}\n className={cn(\"relative overflow-hidden\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n));\nScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;\n\nconst ScrollBar = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>\n>(({ className, orientation = \"vertical\", ...props }, ref) => (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n ref={ref}\n orientation={orientation}\n className={cn(\n \"flex touch-none select-none transition-colors\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent p-[1px]\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent p-[1px]\",\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-border\" />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n));\nScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;\n\nexport { ScrollArea, ScrollBar };\n","import { inputContainerVariants } from \"../input\";\nimport {\n Searchable,\n SearchableDataType,\n SearchableTrigger,\n} from \"../searcheable\";\nimport { VariantProps } from \"class-variance-authority\";\n\ntype SelectPropsStatus = VariantProps<typeof inputContainerVariants>[\"status\"];\n\ninterface SelectProps {\n modal?: boolean;\n hideSearch?: boolean;\n loading?: boolean;\n inputValue?: string;\n onInputValueChange?: (arg: string) => void;\n disabled?: boolean;\n placeholder?: string;\n value?: SearchableDataType;\n options: SearchableDataType[];\n optionComponent?: (arg: SearchableDataType) => React.ReactNode;\n className?: string;\n containerClassName?: string;\n onChange: (value: SearchableDataType) => void;\n status?: SelectPropsStatus;\n}\n\nconst Select = ({\n // onChange,\n // options,\n // className,\n // containerClassName,\n // disabled,\n // hideSearch,\n // inputValue,\n // loading,\n // modal,\n // onInputValueChange,\n // optionComponent,\n // placeholder,\n // value,\n hideSearch = true,\n status,\n ...props\n}: SelectProps) => {\n return (\n <Searchable hideSearch={hideSearch} {...props}>\n <SearchableTrigger\n disabled={props?.disabled}\n placeholder=\"Select or search email\"\n status={status}\n value={props?.value?.label ?? props?.value?.value}\n />\n </Searchable>\n );\n};\n\nexport { Select };\nexport type { SelectProps };\n"],"mappings":"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","names":["React","React","LabelPrimitive","cva","clsx","twMerge","cn","inputs","jsx","labelVariants","cva","Label","className","props","ref","cn","jsx","jsxs","FormLabel","React","className","children","showAsterisk","error","props","ref","Label","cn","jsx","jsxs","Loader","size","colour","React","Slot","cva","Fragment","jsx","jsxs","buttonVariants","cva","Button","className","variant","size","asChild","isLoading","leftNode","rightNode","LoaderSize","ref","props","Component","Slot","children","disabled","rest","reference","cn","Loader","cva","React","jsx","ErrorMessage","className","children","error","props","ref","body","cn","React","jsx","FormDescription","className","props","ref","cn","jsx","jsxs","inputVariants","cva","BaseInnerInput","className","status","type","ref","props","cn","inputContainerVariants","sideVariants","Input","disabled","error","isLoading","sideNodeClassName","showAsterisk","label","description","containerStatus","FormLabel","FormDescription","ErrorMessage","useState","jsx","jsxs","Eye","jsx","jsxs","EyeOff","jsx","PasswordInput","props","passwordVisible","setPasswordVisible","useState","Input","val","Eye","EyeOff","cva","jsx","jsxs","textareaContainerVariants","cva","Textarea","className","status","disabled","error","isLoading","showAsterisk","label","description","props","containerStatus","FormLabel","cn","inputContainerVariants","FormDescription","ErrorMessage","React","React","CommandPrimitive","Search","React","DialogPrimitive","jsx","jsxs","CloseIcon","Fragment","jsx","jsxs","DialogRoot","DialogTrigger","DialogPortal","DialogOverlay","className","props","ref","cn","DialogContent","hideCloseButton","children","CloseIcon","DialogHeader","DialogFooter","DialogTitle","DialogDescription","Dialog","trigger","open","onOpenChange","footer","title","description","contentClassName","headerClassName","titleClassName","descriptionClassName","footerClassName","asChild","onOpenAutoFocus","onCloseAutoFocus","onEscapeKeyDown","onInteractOutside","onPointerDownOutside","Fragment","jsx","jsxs","Command","className","props","ref","CommandPrimitive","cn","CommandInput","className","CommandInputContainerClassName","loading","props","ref","jsxs","cn","jsx","Loader","Search","CommandPrimitive","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandShortcut","React","PopoverPrimitive","jsx","jsxs","PopoverRoot","PopoverTrigger","PopoverContent","className","align","sideOffset","portal","props","ref","cn","Popover","trigger","children","open","onOpenChange","contentClassName","asChild","side","alignOffset","onOpenAutoFocus","onCloseAutoFocus","React","ScrollAreaPrimitive","jsx","jsxs","ScrollArea","className","children","props","ref","cn","ScrollBar","orientation","jsx","jsxs","SearchableTrigger","className","value","placeholder","status","disabled","PopoverTrigger","cn","inputContainerVariants","Searchable","options","onChange","containerClassName","loading","optionComponent","children","modal","hideSearch","inputValue","onValueChange","onInputValueChange","open","setOpen","triggerRef","width","setWidth","PopoverRoot","PopoverContent","Command","CommandInput","ScrollArea","CommandList","CommandEmpty","CommandGroup","option","CommandItem","jsx","Select","hideSearch","status","props","Searchable","SearchableTrigger"]}
|
1
|
+
{"version":3,"sources":["../src/components/label/FormLabel.tsx","../src/components/label/index.tsx","../src/utils/index.ts","../src/components/loader/index.tsx","../src/components/button/index.tsx","../src/components/input/index.tsx","../src/components/form/ErrorMessage.tsx","../src/components/form/FormDescription.tsx","../src/components/password-input/index.tsx","../src/components/password-input/icons/Eye.tsx","../src/components/password-input/icons/EyeOff.tsx","../src/components/textarea/index.tsx","../src/components/searcheable/index.tsx","../src/components/command/index.tsx","../src/components/dialog/index.tsx","../src/components/dialog/icon/CloseIcon.tsx","../src/components/popover/index.tsx","../src/components/scroll-area/index.tsx","../src/components/select/index.tsx","../src/components/country/data.ts","../src/components/phone-input/index.tsx","../src/components/country/index.tsx"],"sourcesContent":["import React from \"react\";\n\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { Label } from \".\";\nimport { cn } from \"@/src/utils\";\n\nconst FormLabel = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> & {\n showAsterisk?: boolean;\n error?: string;\n formItemId?: string;\n }\n>(({ className, children, showAsterisk, error, ...props }, ref) => {\n return (\n <Label\n ref={ref}\n className={cn(error && \"text-red-500\", className)}\n // htmlFor={formItemId}\n {...props}\n >\n {showAsterisk ? (\n <p>\n {children}\n <span className=\"text-red-500\">*</span>\n </p>\n ) : (\n children\n )}\n </Label>\n );\n});\n\nFormLabel.displayName = \"FormLabel\";\n\nexport { FormLabel };\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as LabelPrimitive from \"@radix-ui/react-label\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/src/utils\";\n\nconst labelVariants = cva(\n \"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70\",\n);\n\nconst Label = React.forwardRef<\n React.ElementRef<typeof LabelPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof LabelPrimitive.Root> &\n VariantProps<typeof labelVariants>\n>(({ className, ...props }, ref) => (\n <LabelPrimitive.Root\n ref={ref}\n className={cn(labelVariants(), className)}\n {...props}\n />\n));\nLabel.displayName = LabelPrimitive.Root.displayName;\n\nexport { Label };\n","import { clsx, type ClassValue } from \"clsx\";\nimport { twMerge } from \"tailwind-merge\";\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n\nexport function areObjectsEqual<T extends object>(obj1: T, obj2: T): boolean {\n const keys1 = Object.keys(obj1);\n const keys2 = Object.keys(obj2);\n\n if (keys1.length !== keys2.length) {\n return false;\n }\n\n for (const key of keys1) {\n const val1 = obj1[key as keyof T];\n const val2 = obj2[key as keyof T];\n\n if (\n typeof val1 === \"object\" &&\n val1 !== null &&\n typeof val2 === \"object\" &&\n val2 !== null\n ) {\n if (!areObjectsEqual(val1, val2)) {\n return false;\n }\n } else if (val1 !== val2) {\n return false;\n }\n }\n\n return true;\n}\n","type Colours = \"primary\" | \"secondary\";\n\nexport const Loader = ({\n size = 16,\n colour = \"primary\",\n}: {\n size?: number;\n colour?: Colours;\n}) => {\n return (\n <svg\n className=\"animate-spin\"\n width={size}\n height={size}\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n >\n <circle cx=\"10\" cy=\"10\" r=\"9.25\" stroke=\"transparent\" strokeWidth=\"1.5\" />\n <path\n d=\"M10 0.595792C10 0.266746 10.267 -0.00185055 10.5954 0.0177417C11.9786 0.100242 13.3318 0.469461 14.5682 1.1044C15.9816 1.83021 17.2016 2.88235 18.1273 4.17366C19.0531 5.46496 19.6578 6.95826 19.8913 8.52984C20.1249 10.1014 19.9807 11.706 19.4705 13.2108C18.9604 14.7155 18.0991 16.077 16.9579 17.1825C15.8167 18.288 14.4285 19.1056 12.9084 19.5677C11.3882 20.0298 9.77982 20.123 8.21646 19.8397C6.84883 19.5918 5.55009 19.0619 4.40196 18.2863C4.12931 18.1021 4.08072 17.7265 4.28083 17.4653C4.48094 17.2041 4.85388 17.1564 5.12801 17.3384C6.12474 18.0001 7.24768 18.4531 8.42898 18.6672C9.80606 18.9168 11.2228 18.8347 12.5618 18.4276C13.9008 18.0206 15.1236 17.3004 16.1288 16.3266C17.134 15.3528 17.8927 14.1536 18.342 12.8282C18.7914 11.5027 18.9185 10.0893 18.7127 8.70502C18.507 7.32071 17.9743 6.00535 17.1589 4.86792C16.3435 3.73048 15.2688 2.80371 14.0238 2.16439C12.9559 1.61596 11.789 1.29259 10.5954 1.21173C10.2671 1.18949 10 0.92484 10 0.595792Z\"\n fill={colour === \"primary\" ? \"#ffffff\" : \"currentColor\"}\n className=\"rounded\"\n />\n </svg>\n );\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\n\nimport { cn } from \"@/src/utils\";\nimport { Loader } from \"../loader\";\nimport { ButtonHTMLAttributes } from \"react\";\nimport { DetailedHTMLProps } from \"react\";\n\nconst buttonVariants = cva(\n \"overflow-hidden isolate relative inline-flex h-fit items-center justify-center whitespace-nowrap text-sm font-medium ring-offset-background dark:ring-offset-transparent transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:!pointer-events-none\",\n {\n variants: {\n variant: {\n primary:\n \"border-primary-main bg-primary-main hover:bg-primary-main/70 disabled:bg-primary-main/70 text-white font-bold\",\n danger:\n \"border-red-600 bg-red-600 hover:bg-red-600/70 disabled:bg-red-600/70 text-white font-bold\",\n neutral:\n \"!border-0 bg-transparent text-primary-main hover:opacity-80 disabled:opacity-60\",\n outlined:\n \"border border-primary-main text-primary-main hover:opacity-80 disabled:opacity-60\",\n \"danger-outlined\":\n \"border border-red-600 text-red-600 hover:opacity-80 disabled:opacity-60\",\n \"light-outlined\":\n \"border-white text-white hover:opacity-80 disabled:opacity-60\",\n \"dark-text\":\n \"border-transparent bg-transparent hover:bg-opacity-70 disabled:bg-opacity-70 text-black font-medium\",\n light:\n \"border-white bg-white hover:bg-opacity-70 disabled:bg-opacity-70 text-primary-main font-semibold\",\n },\n size: {\n // lg: \"h-15 px-8 items-center\",\n // sm: \"h-10 px-3.5 items-center text-sm\",\n default:\n \"py-[0.625rem] px-[1.5rem] text-[0.875rem] leading-[1.25rem] font-medium rounded-lg\",\n sm: \"py-[0.375rem] px-[1rem] text-[0.75rem] leading-[1rem] font-medium rounded-lg\",\n lg: \"py-[0.75rem] px-[1.5rem] text-[1rem] leading-[1.5rem] font-medium rounded-lg\",\n md: \"h-12 py-1 px-5 items-center\",\n \"icon-sm\":\n \"h-[1.75rem] w-[1.75rem] flex justify-center items-center font-medium rounded-lg\",\n icon: \"h-[2.5rem] w-[2.75rem] flex justify-center items-center font-medium rounded-lg\",\n \"icon-lg\":\n \"h-[3rem] w-[3rem] flex justify-center items-center font-medium rounded-lg\",\n },\n },\n defaultVariants: {\n variant: \"primary\",\n size: \"default\",\n },\n }\n);\n\nexport interface ButtonProps\n // extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n extends DetailedHTMLProps<\n ButtonHTMLAttributes<HTMLButtonElement>,\n HTMLButtonElement\n >,\n VariantProps<typeof buttonVariants> {\n asChild?: boolean;\n isLoading?: boolean;\n leftNode?: React.ReactNode;\n rightNode?: React.ReactNode;\n LoaderSize?: number;\n}\n\nconst Button = ({\n className,\n variant = \"primary\",\n size,\n asChild = false,\n isLoading = false,\n leftNode,\n rightNode,\n LoaderSize,\n ref,\n ...props\n}: ButtonProps) => {\n const Component = asChild ? Slot : \"button\";\n\n const { children, disabled, ...rest } = props;\n const reference = React.useRef<HTMLButtonElement>(null);\n\n return (\n <Component\n className={cn(buttonVariants({ variant, size, className }))}\n ref={reference || ref}\n disabled={disabled || isLoading}\n {...rest}\n >\n <div className=\"flex font-medium justify-center items-center gap-2\">\n {/* {leftNode}\n {children}\n {rightNode}\n {isLoading && <Loader />} */}\n\n {isLoading ? (\n <>\n <span className=\"mx-auto\">\n <Loader size={LoaderSize} colour=\"secondary\" />\n </span>\n </>\n ) : (\n <>\n {leftNode}\n {children}\n {rightNode}\n </>\n )}\n </div>\n </Component>\n );\n};\n\nButton.displayName = \"Button\";\n\nexport { Button, buttonVariants };\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport { cn } from \"@/src/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { DetailedHTMLProps } from \"react\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\nimport { FormDescription } from \"../form/FormDescription\";\n\nexport const inputVariants = cva(\n \"!p-0 flex h-full w-full !border-transparent !bg-transparent text-base focus-visible:bg-transparent focus-visible:outline-none focus-visible:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50\",\n {\n variants: {\n status: {\n default: \"placeholder:text-[#C4C4C4] dark:placeholder:text-[#9299A2]\",\n error: \"placeholder:text-red-500 text-red-500\",\n loading: \"placeholder:text-[#C4C4C4] dark:placeholder:text-[#9299A2]\",\n prefilled: \"\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport interface BaseInnerInputProps\n extends DetailedHTMLProps<\n React.InputHTMLAttributes<HTMLInputElement>,\n HTMLInputElement\n >,\n VariantProps<typeof inputVariants> {}\n\nconst BaseInnerInput = ({\n className,\n status,\n type,\n ref,\n ...props\n}: BaseInnerInputProps) => {\n return (\n <input\n type={type}\n className={cn(inputVariants({ status }), className)}\n ref={ref}\n {...props}\n />\n );\n};\nBaseInnerInput.displayName = \"BaseInnerInput\";\n\nexport const inputContainerVariants = cva(\n \"flex relative h-10 w-full rounded-[4px] dark:!bg-transparent border transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50 dark:disabled:!border-[#9299A2]\",\n {\n variants: {\n status: {\n default:\n \"border-[#DEDEDE] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-text-primary focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-red-500 bg-red-50 border-red-500 dark:!bg-status-error-bg-dark text-red-500 focus-within:bg-red-50 focus-within:border-red-500\",\n loading: \"\",\n prefilled:\n \"bg-[#F6F6F6] border-[#DEDEDE] dark:!bg-transparent caret-[#DEDEDE] focus-within:bg-[#F6F6F6] focus-within:border-[#DEDEDE] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport const sideVariants = cva(\n \"top-0 flex justify-center items-center h-full min-w-[50px] max-w-[100px] dark:!bg-transparent transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50 dark:disabled:!border-[#9299A2]\",\n {\n variants: {\n side: {\n left: \"left-0 rounded-l-[8px] border-r\",\n right: \"right-0 rounded-r-[8px] border-l\",\n },\n status: {\n default:\n \"border-[#DEDEDE] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-[#00B2A9] focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-red-500 bg-red-50 border-red-500 dark:!bg-red-50 text-red-500 focus-within:bg-red-50 focus-within:border-red-500\",\n loading: \"\",\n prefilled:\n \"bg-[#F6F6F6] border-[#DEDEDE] dark:!bg-transparent caret-[#DEDEDE] focus-within:bg-[#F6F6F6] focus-within:border-[#DEDEDE] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n side: \"left\",\n },\n },\n);\n\nexport interface InputProps\n extends BaseInnerInputProps,\n VariantProps<typeof inputContainerVariants> {\n isLoading?: boolean;\n error?: string;\n leftNode?: React.ReactNode;\n rightNode?: React.ReactNode;\n sideNodeClassName?: string;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n}\nconst Input = ({\n className,\n status = \"default\",\n disabled,\n error,\n isLoading,\n sideNodeClassName,\n showAsterisk,\n label,\n description,\n ref,\n ...props\n}: InputProps) => {\n let containerStatus: VariantProps<typeof inputContainerVariants>[\"status\"] =\n status;\n\n if (error) containerStatus = \"error\";\n if (isLoading) containerStatus = \"loading\";\n if (disabled) containerStatus = \"prefilled\";\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <div\n className={cn(\n inputContainerVariants({ status: containerStatus }),\n props.leftNode || props.rightNode ? \"p-0\" : \"\",\n className,\n )}\n >\n {props.leftNode ? (\n <div\n className={cn(\n sideVariants({\n status: containerStatus,\n side: \"left\",\n }),\n sideNodeClassName,\n )}\n >\n {props.leftNode}\n </div>\n ) : null}\n <BaseInnerInput\n ref={ref}\n disabled={isLoading || disabled}\n className={props.leftNode || props.rightNode ? \"!px-3 !py-2\" : \"\"}\n {...props}\n />\n {props.rightNode ? (\n <div\n className={cn(\n sideVariants({\n status: containerStatus,\n side: \"right\",\n }),\n sideNodeClassName,\n )}\n >\n {props.rightNode}\n </div>\n ) : null}\n </div>\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nInput.displayName = \"Input\";\n\nexport { Input };\n","import { cn } from \"@/src/utils\";\nimport React from \"react\";\n\nconst ErrorMessage = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement> & {\n error?: string;\n }\n>(({ className, children, error, ...props }, ref) => {\n const body = error ?? children;\n\n if (!body) {\n return null;\n }\n\n return (\n <p\n ref={ref}\n className={cn(\"text-xs font-normal text-[#F04248]\", className)}\n {...props}\n >\n {body}\n </p>\n );\n});\nErrorMessage.displayName = \"ErrorMessage\";\n\nexport { ErrorMessage };\n","import { cn } from \"@/src/utils\";\nimport React from \"react\";\n\nconst FormDescription = React.forwardRef<\n HTMLParagraphElement,\n React.HTMLAttributes<HTMLParagraphElement>\n>(({ className, ...props }, ref) => {\n return (\n <p\n ref={ref}\n className={cn(\"text-sm text-[#8E98A8\", className)}\n {...props}\n />\n );\n});\nFormDescription.displayName = \"FormDescription\";\n\nexport { FormDescription };\n","import { useState } from \"react\";\nimport { Eye } from \"./icons/Eye\";\nimport { EyeOff } from \"./icons/EyeOff\";\nimport { Input, InputProps } from \"../input\";\n\nconst PasswordInput = ({ ...props }: InputProps) => {\n const [passwordVisible, setPasswordVisible] = useState(false);\n\n return (\n <Input\n sideNodeClassName=\"!border-l-0\"\n rightNode={\n passwordVisible ? (\n <button\n type=\"button\"\n onClick={() => setPasswordVisible((val) => !val)}\n >\n <Eye />\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={() => setPasswordVisible((val) => !val)}\n >\n <EyeOff />\n </button>\n )\n }\n type={passwordVisible ? \"text\" : \"password\"}\n {...props}\n />\n );\n};\n\nPasswordInput.displayName = \"PasswordInput\";\n\nexport { PasswordInput };\n","export const Eye = () => {\n return (\n <svg\n width=\"18\"\n height=\"14\"\n viewBox=\"0 0 18 14\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M1.54639 7.26103C1.48389 7.09264 1.48389 6.90741 1.54639 6.73903C2.15517 5.26292 3.18853 4.00081 4.51547 3.1127C5.84241 2.22459 7.40317 1.75049 8.99989 1.75049C10.5966 1.75049 12.1574 2.22459 13.4843 3.1127C14.8113 4.00081 15.8446 5.26292 16.4534 6.73903C16.5159 6.90741 16.5159 7.09264 16.4534 7.26103C15.8446 8.73713 14.8113 9.99925 13.4843 10.8874C12.1574 11.7755 10.5966 12.2496 8.99989 12.2496C7.40317 12.2496 5.84241 11.7755 4.51547 10.8874C3.18853 9.99925 2.15517 8.73713 1.54639 7.26103Z\"\n stroke=\"#8E98A8\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M9 9.25C10.2426 9.25 11.25 8.24264 11.25 7C11.25 5.75736 10.2426 4.75 9 4.75C7.75736 4.75 6.75 5.75736 6.75 7C6.75 8.24264 7.75736 9.25 9 9.25Z\"\n stroke=\"#8E98A8\"\n strokeWidth=\"2\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","export const EyeOff = () => {\n return (\n <svg\n width=\"18\"\n height=\"18\"\n viewBox=\"0 0 18 18\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n >\n <path\n d=\"M4.08759 12.69C3.26171 11.9072 2.61006 10.9591 2.17509 9.90752C2.10081 9.73454 2.0625 9.54826 2.0625 9.36001C2.0625 9.17177 2.10081 8.98549 2.17509 8.81252C2.75274 7.4073 3.72095 6.19704 4.96509 5.32502C6.14597 4.4998 7.55989 4.07405 9.00009 4.11002C10.0363 4.084 11.064 4.30239 12.0001 4.74752M13.9201 6.03752C14.7415 6.81964 15.3904 7.76486 15.8251 8.81252C15.8994 8.98549 15.9377 9.17177 15.9377 9.36001C15.9377 9.54826 15.8994 9.73454 15.8251 9.90752C15.2474 11.3127 14.2792 12.523 13.0351 13.395C11.8542 14.2202 10.4403 14.646 9.00009 14.61C7.9639 14.636 6.93616 14.4176 6.00009 13.9725\"\n stroke=\"#8E98A8\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M6.5325 10.2375C6.42732 9.95694 6.37395 9.65962 6.375 9.36C6.375 8.66381 6.65156 7.99613 7.14384 7.50384C7.63613 7.01156 8.30381 6.735 9 6.735C9.3 6.7335 9.597 6.7875 9.8775 6.8925M11.4675 8.4825C11.5725 8.763 11.6265 9.06 11.625 9.36C11.625 10.0562 11.3484 10.7239 10.8562 11.2162C10.3639 11.7084 9.69619 11.985 9 11.985C8.70038 11.986 8.40306 11.9327 8.1225 11.8275M2.25 15L14.25 3\"\n stroke=\"#8E98A8\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","import * as React from \"react\";\n\nimport { cn } from \"@/src/utils\";\nimport { cva, type VariantProps } from \"class-variance-authority\";\nimport { inputContainerVariants } from \"../input\";\nimport { DetailedHTMLProps } from \"react\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { FormDescription } from \"../form/FormDescription\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\n\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nconst textareaContainerVariants = cva(\n \"flex relative min-h-[80px] w-full rounded-[8px] border transition px-3 py-2 text-base placeholder:text-[#79818C] focus-within:outline-0 focus-within:ring-0 focus-visible:ring-offset-0 disabled:cursor-not-allowed disabled:opacity-50\",\n {\n variants: {\n status: {\n default:\n \"border-[#D7D7D7] dark:border-[#676767] bg-white text-[#191919] dark:!bg-transparent caret-[#00B2A9] focus-within:bg-white dark:focus-within:!bg-transparent dark:text-white focus-within:border-[#00B2A9] dark:focus-within:border-[#9299A2] dark:border-[#9299A2] dark:disabled:!border-[#9299A2]\",\n error:\n \"placeholder:text-status-error-fill bg-status-error-bg border-status-error-fill dark:!bg-status-error-bg-dark text-status-error-fill focus-within:bg-status-error-bg focus-within:border-status-error-fill\",\n loading: \"placeholder:text-[#C4C4C4]\",\n prefilled:\n \"resize-none bg-[#F6F6F6] border-[#D7D7D7] dark:!bg-transparent caret-[#D7D7D7] focus-within:bg-[#F6F6F6] focus-within:border-[#D7D7D7] dark:!border-[#9299A2] dark:focus-within:border-[#9299A2]\",\n },\n },\n defaultVariants: {\n status: \"default\",\n },\n },\n);\n\nexport interface TextareaProps\n extends DetailedHTMLProps<\n React.TextareaHTMLAttributes<HTMLTextAreaElement>,\n HTMLTextAreaElement\n >,\n VariantProps<typeof inputContainerVariants> {\n isLoading?: boolean;\n error?: string;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n}\n\nconst Textarea = ({\n className,\n status = \"default\",\n disabled,\n error,\n isLoading,\n showAsterisk,\n label,\n description,\n ...props\n}: TextareaProps) => {\n let containerStatus: VariantProps<\n typeof textareaContainerVariants\n >[\"status\"] = status;\n\n if (error) containerStatus = \"error\";\n if (isLoading) containerStatus = \"loading\";\n if (disabled) containerStatus = \"prefilled\";\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <textarea\n className={cn(\n \"min-h-[80px]\",\n inputContainerVariants({ status: containerStatus }),\n className,\n )}\n disabled={isLoading || disabled}\n {...props}\n />\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nTextarea.displayName = \"Textarea\";\n\nexport { Textarea };\n","(\"use client\");\n\nimport * as React from \"react\";\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"../command\";\nimport { PopoverContent, PopoverRoot, PopoverTrigger } from \"../popover\";\nimport { cn } from \"@/src/utils\";\nimport { ScrollArea } from \"../scroll-area\";\nimport { VariantProps } from \"class-variance-authority\";\nimport { inputContainerVariants } from \"../input\";\n\ntype SearchableDataType = {\n value: string;\n label: string;\n} & {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n [key: string]: any; // Allows for additional properties\n};\n\ninterface SearchableProps {\n modal?: boolean;\n hideSearch?: boolean;\n loading?: boolean;\n inputValue?: string;\n onInputValueChange?: (arg: string) => void;\n disabled?: boolean;\n placeholder?: string;\n value?: SearchableDataType;\n options: SearchableDataType[] | [];\n optionComponent?: (arg: SearchableDataType) => React.ReactNode;\n className?: string;\n containerClassName?: string;\n onChange: (value: SearchableDataType) => void;\n onValueChange?: (value: string) => void;\n children?: React.ReactNode;\n}\n\ninterface SearchableTriggerProps\n extends VariantProps<typeof inputContainerVariants> {\n disabled?: boolean;\n placeholder?: string;\n value?: string;\n className?: string;\n}\n\nconst SearchableTrigger = ({\n className,\n value,\n placeholder = \"\",\n status,\n disabled,\n}: SearchableTriggerProps) => {\n return (\n <PopoverTrigger asChild disabled={disabled}>\n <button\n disabled={disabled}\n className={cn(\n inputContainerVariants({ status }),\n \"[&>span]:justify-start [&>span]:items-center gap-2 flex h-12 w-full items-center justify-between goup\",\n value ? \"\" : \"text-[#79818C]\",\n className\n )}\n >\n {value ?? placeholder ?? \"Select options...\"}\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n className=\" data-[state=open]:goup-rotate-180\"\n >\n <path\n d=\"M16.5999 7.45825L11.1666 12.8916C10.5249 13.5333 9.4749 13.5333 8.83324 12.8916L3.3999 7.45825\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </button>\n </PopoverTrigger>\n );\n};\n\nconst Searchable = ({\n options = [],\n value,\n onChange,\n containerClassName,\n placeholder,\n disabled,\n loading,\n optionComponent,\n children,\n modal = false,\n hideSearch,\n className,\n inputValue,\n onValueChange,\n onInputValueChange,\n}: SearchableProps) => {\n const [open, setOpen] = React.useState(false);\n\n const triggerRef = React.useRef<HTMLDivElement | null>(null);\n\n const [width, setWidth] = React.useState<number | undefined>(undefined);\n\n React.useLayoutEffect(() => {\n if (triggerRef.current) {\n setWidth(triggerRef.current.clientWidth);\n }\n }, [triggerRef.current]);\n\n return (\n <PopoverRoot modal={modal} open={open} onOpenChange={setOpen}>\n <div className={cn(\"w-full\", className)} ref={triggerRef}>\n {children}\n </div>\n <PopoverContent\n portal={!modal}\n className=\"p-0 min-w-[200px]\"\n style={{ width }}\n >\n <Command className=\"max-h-[270px] pt-3 relative\">\n {!hideSearch && (\n <CommandInput\n loading={loading}\n placeholder={placeholder ?? \"Search options...\"}\n onValueChange={onInputValueChange}\n value={inputValue}\n CommandInputContainerClassName=\"mx-3 border rounded-md border-[#DEDEDE]\"\n />\n )}\n <ScrollArea className={cn(\"w-full px-0\", containerClassName)}>\n <CommandList>\n {!hideSearch && <CommandEmpty>No result found.</CommandEmpty>}\n <CommandGroup className=\"w-full\">\n {options?.map((option) => (\n <CommandItem\n defaultValue={value?.label}\n key={option.value}\n value={option.label}\n disabled={disabled}\n onSelect={() => {\n onChange(option);\n setOpen(false);\n onValueChange?.(option?.value);\n }}\n >\n {!optionComponent ? option.label : optionComponent(option)}\n </CommandItem>\n ))}\n </CommandGroup>\n </CommandList>\n </ScrollArea>\n </Command>\n </PopoverContent>\n </PopoverRoot>\n );\n};\n\nexport { Searchable, SearchableTrigger };\n\nexport type { SearchableProps, SearchableTriggerProps, SearchableDataType };\n","\"use client\";\n\nimport * as React from \"react\";\nimport { type DialogProps } from \"@radix-ui/react-dialog\";\nimport { Command as CommandPrimitive } from \"cmdk\";\nimport { Search } from \"lucide-react\";\n\nimport { cn } from \"@/src/utils\";\nimport { Dialog, DialogContent } from \"@/src/components/dialog\";\nimport { Loader } from \"../loader\";\n\nconst Command = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive\n ref={ref}\n className={cn(\n \"flex h-full w-full flex-col overflow-hidden rounded-md bg-popover text-popover-foreground\",\n className,\n )}\n {...props}\n />\n));\nCommand.displayName = CommandPrimitive.displayName;\n\ninterface CommandDialogProps extends DialogProps {\n trigger?: React.ReactNode;\n}\n\nconst CommandDialog = ({ children, ...props }: CommandDialogProps) => {\n return (\n <Dialog {...props} trigger={props?.trigger ?? <></>}>\n <DialogContent className=\"overflow-hidden p-0\">\n <Command className=\"[&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground [&_[cmdk-group]:not([hidden])_~[cmdk-group]]:pt-0 [&_[cmdk-group]]:px-2 [&_[cmdk-input-wrapper]_svg]:h-5 [&_[cmdk-input-wrapper]_svg]:w-5 [&_[cmdk-input]]:h-12 [&_[cmdk-item]]:px-2 [&_[cmdk-item]]:py-3 [&_[cmdk-item]_svg]:h-5 [&_[cmdk-item]_svg]:w-5\">\n {children}\n </Command>\n </DialogContent>\n </Dialog>\n );\n};\n\ninterface CommandInputProps\n extends React.ComponentPropsWithoutRef<typeof CommandPrimitive.Input> {\n CommandInputContainerClassName?: string;\n loading?: boolean;\n}\n\nconst CommandInput = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Input>,\n CommandInputProps\n>(({ className, CommandInputContainerClassName, loading, ...props }, ref) => (\n <div\n className={cn(\n \"flex items-center border-0 px-3 gap-2\",\n CommandInputContainerClassName,\n )}\n cmdk-input-wrapper=\"\"\n >\n {loading ? (\n <Loader size={16} colour=\"secondary\" />\n ) : (\n <Search className=\"mr-2 h-4 w-4 shrink-0 opacity-50\" />\n )}\n <CommandPrimitive.Input\n ref={ref}\n className={cn(\n \"flex h-10 w-full rounded-md bg-transparent py-3 text-sm outline-none placeholder:text-muted-foreground disabled:cursor-not-allowed disabled:opacity-50\",\n className,\n )}\n disabled={loading}\n {...props}\n />\n </div>\n));\n\nCommandInput.displayName = CommandPrimitive.Input.displayName;\n\nconst CommandList = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.List>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.List>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.List\n ref={ref}\n className={cn(\"max-h-[300px] overflow-y-auto overflow-x-hidden\", className)}\n {...props}\n />\n));\n\nCommandList.displayName = CommandPrimitive.List.displayName;\n\nconst CommandEmpty = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Empty>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Empty>\n>((props, ref) => (\n <CommandPrimitive.Empty\n ref={ref}\n className=\"py-6 text-center text-sm\"\n {...props}\n />\n));\n\nCommandEmpty.displayName = CommandPrimitive.Empty.displayName;\n\nconst CommandGroup = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Group>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Group>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Group\n ref={ref}\n className={cn(\n \"overflow-hidden p-1 text-foreground [&_[cmdk-group-heading]]:px-2 [&_[cmdk-group-heading]]:py-1.5 [&_[cmdk-group-heading]]:text-xs [&_[cmdk-group-heading]]:font-medium [&_[cmdk-group-heading]]:text-muted-foreground\",\n className,\n )}\n {...props}\n />\n));\n\nCommandGroup.displayName = CommandPrimitive.Group.displayName;\n\nconst CommandSeparator = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Separator>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Separator>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Separator\n ref={ref}\n className={cn(\"-mx-1 h-px bg-border\", className)}\n {...props}\n />\n));\nCommandSeparator.displayName = CommandPrimitive.Separator.displayName;\n\nconst CommandItem = React.forwardRef<\n React.ElementRef<typeof CommandPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof CommandPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <CommandPrimitive.Item\n ref={ref}\n className={cn(\n \"relative text=[#222222] flex cursor-default gap-2 select-none items-center rounded-sm px-2 py-1.5 text-sm outline-none data-[disabled=true]:pointer-events-none data-[selected=true]:bg-primary-accent data-[disabled=true]:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0\",\n className,\n )}\n {...props}\n />\n));\n\nCommandItem.displayName = CommandPrimitive.Item.displayName;\n\nconst CommandShortcut = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLSpanElement>) => {\n return (\n <span\n className={cn(\n \"ml-auto text-xs tracking-widest text-muted-foreground\",\n className,\n )}\n {...props}\n />\n );\n};\nCommandShortcut.displayName = \"CommandShortcut\";\n\nexport {\n Command,\n CommandDialog,\n CommandInput,\n CommandList,\n CommandEmpty,\n CommandGroup,\n CommandItem,\n CommandShortcut,\n CommandSeparator,\n};\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as DialogPrimitive from \"@radix-ui/react-dialog\";\n\nimport { cn } from \"@/src/utils\";\nimport { CloseIcon } from \"./icon/CloseIcon\";\n\nconst DialogRoot = DialogPrimitive.Root;\n\nconst DialogTrigger = DialogPrimitive.Trigger;\n\nconst DialogPortal = DialogPrimitive.Portal;\n\nconst DialogOverlay = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Overlay>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Overlay\n ref={ref}\n className={cn(\n \"fixed inset-0 z-50 bg-black/70 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0\",\n className,\n )}\n {...props}\n />\n));\nDialogOverlay.displayName = DialogPrimitive.Overlay.displayName;\n\nconst DialogContent = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content> & {\n hideCloseButton?: boolean;\n }\n>(({ className, hideCloseButton, children, ...props }, ref) => (\n <DialogPortal>\n <DialogOverlay />\n <DialogPrimitive.Content\n ref={ref}\n className={cn(\n \"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border border-transparent bg-white p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg\",\n className,\n )}\n {...props}\n >\n {children}\n {!hideCloseButton && (\n <DialogPrimitive.Close className=\"absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground\">\n <CloseIcon />\n\n <span className=\"sr-only\">Close</span>\n </DialogPrimitive.Close>\n )}\n </DialogPrimitive.Content>\n </DialogPortal>\n));\nDialogContent.displayName = DialogPrimitive.Content.displayName;\n\nconst DialogHeader = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\"flex flex-col space-y-1.5 text-left\", className)}\n {...props}\n />\n);\nDialogHeader.displayName = \"DialogHeader\";\n\nconst DialogFooter = ({\n className,\n ...props\n}: React.HTMLAttributes<HTMLDivElement>) => (\n <div\n className={cn(\"flex flex-row justify-end sm:space-x-2\", className)}\n {...props}\n />\n);\nDialogFooter.displayName = \"DialogFooter\";\n\nconst DialogTitle = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Title>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Title\n ref={ref}\n className={cn(\n \"text-lg font-semibold leading-none tracking-tight\",\n className,\n )}\n {...props}\n />\n));\nDialogTitle.displayName = DialogPrimitive.Title.displayName;\n\nconst DialogDescription = React.forwardRef<\n React.ElementRef<typeof DialogPrimitive.Description>,\n React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>\n>(({ className, ...props }, ref) => (\n <DialogPrimitive.Description\n ref={ref}\n className={cn(\"text-sm text-muted-foreground\", className)}\n {...props}\n />\n));\nDialogDescription.displayName = DialogPrimitive.Description.displayName;\n\nexport type DialogPropsType = {\n trigger: React.ReactNode;\n children: React.ReactNode;\n title?: React.ReactNode;\n description?: React.ReactNode;\n footer?: React.ReactNode;\n hideCloseButton?: boolean;\n contentClassName?: string;\n headerClassName?: string;\n titleClassName?: string;\n descriptionClassName?: string;\n footerClassName?: string;\n asChild?: boolean;\n onOpenAutoFocus?: (e: Event) => void;\n onCloseAutoFocus?: (e: Event) => void;\n onInteractOutside?: (e: Event) => void;\n onPointerDownOutside?: (e: Event) => void;\n onEscapeKeyDown?: (e: KeyboardEvent) => void;\n};\n\nconst Dialog = ({\n trigger,\n children,\n open,\n onOpenChange,\n hideCloseButton,\n footer,\n title,\n description,\n contentClassName,\n headerClassName,\n titleClassName,\n descriptionClassName,\n footerClassName,\n asChild = true,\n onOpenAutoFocus,\n onCloseAutoFocus,\n onEscapeKeyDown,\n onInteractOutside,\n onPointerDownOutside,\n ...props\n}: React.ComponentPropsWithoutRef<typeof DialogPrimitive.Root> &\n DialogPropsType) => {\n return (\n <DialogRoot {...props} open={open} onOpenChange={onOpenChange}>\n <DialogTrigger asChild={asChild}>{trigger}</DialogTrigger>\n <DialogPortal>\n <DialogContent\n className={contentClassName}\n hideCloseButton={hideCloseButton}\n onOpenAutoFocus={onOpenAutoFocus}\n onCloseAutoFocus={onCloseAutoFocus}\n onEscapeKeyDown={onEscapeKeyDown}\n onPointerDownOutside={onPointerDownOutside}\n onInteractOutside={onInteractOutside}\n >\n {title || description ? (\n <DialogHeader className={headerClassName}>\n {title && (\n <DialogTitle className={titleClassName}>{title}</DialogTitle>\n )}\n {description && (\n <DialogDescription className={descriptionClassName}>\n {description}\n </DialogDescription>\n )}\n </DialogHeader>\n ) : (\n <></>\n )}\n {children}\n {footer && (\n <DialogFooter className={footerClassName}>{footer}</DialogFooter>\n )}\n </DialogContent>\n </DialogPortal>\n </DialogRoot>\n );\n};\nDialog.displayName = DialogPrimitive.Dialog.displayName;\n\nexport { Dialog, DialogRoot, DialogContent };\n","export const CloseIcon = () => {\n return (\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 24 24\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"stroke-[#232528]]\"\n >\n <path\n d=\"M5.00098 5L19 18.9991\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n <path\n d=\"M4.99996 18.9991L18.999 5\"\n strokeWidth=\"1.5\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n );\n};\n","// import * as React from \"react\"\n// import * as PopoverPrimitive from \"@radix-ui/react-popover\"\n// import { cn } from \"../../utils\"\n\n// const Popover = PopoverPrimitive.Root\n\n// const PopoverTrigger = PopoverPrimitive.Trigger\n\n// const PopoverAnchor = PopoverPrimitive.Anchor\n\n// const PopoverContent = React.forwardRef<\n// React.ElementRef<typeof PopoverPrimitive.Content>,\n// React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content>\n// >(({ className, align = \"center\", sideOffset = 4, ...props }, ref) => (\n// <PopoverPrimitive.Portal>\n// <PopoverPrimitive.Content\n// ref={ref}\n// align={align}\n// sideOffset={sideOffset}\n// className={cn(\n// \"z-50 w-72 rounded-md border bg-popover p-4 text-popover-foreground shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n// className\n// )}\n// {...props}\n// />\n// </PopoverPrimitive.Portal>\n// ))\n// PopoverContent.displayName = PopoverPrimitive.Content.displayName\n\n// export { Popover, PopoverTrigger, PopoverContent, PopoverAnchor }\n\n\"use client\";\n\nimport * as React from \"react\";\nimport * as PopoverPrimitive from \"@radix-ui/react-popover\";\n\nimport { cn } from \"@/src/utils\";\n\nconst PopoverRoot = PopoverPrimitive.Root;\n\nconst PopoverTrigger = PopoverPrimitive.Trigger;\n\nconst PopoverContent = React.forwardRef<\n React.ElementRef<typeof PopoverPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Content> & {\n portal?: boolean;\n }\n>(\n (\n { className, align = \"center\", sideOffset = 4, portal = true, ...props },\n ref,\n ) =>\n portal ? (\n <PopoverPrimitive.Portal>\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"pointer-events-auto z-50 w-72 rounded-md border border-transparent bg-white p-4 text-[#191919] shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n onOpenAutoFocus={props.onOpenAutoFocus}\n onCloseAutoFocus={props.onCloseAutoFocus}\n {...props}\n />\n </PopoverPrimitive.Portal>\n ) : (\n <PopoverPrimitive.Content\n ref={ref}\n align={align}\n sideOffset={sideOffset}\n className={cn(\n \"pointer-events-auto z-50 w-72 rounded-md border border-transparent bg-white p-4 text-[#191919] shadow-md outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className,\n )}\n onOpenAutoFocus={props.onOpenAutoFocus}\n onCloseAutoFocus={props.onCloseAutoFocus}\n {...props}\n />\n ),\n);\nPopoverContent.displayName = PopoverPrimitive.Content.displayName;\n\nexport type PopoverPropsType = {\n trigger: React.ReactNode;\n children: React.ReactNode;\n contentClassName?: string;\n asChild?: boolean;\n align?: PopoverPrimitive.PopoverContentProps[\"align\"];\n side?: PopoverPrimitive.PopoverContentProps[\"side\"];\n alignOffset?: number | undefined;\n sideOffset?: number | undefined;\n onOpenAutoFocus?: (e: Event) => void;\n onCloseAutoFocus?: (e: Event) => void;\n};\n\nconst Popover = ({\n trigger,\n children,\n open,\n onOpenChange,\n contentClassName,\n asChild = true,\n align,\n side,\n alignOffset,\n sideOffset,\n onOpenAutoFocus,\n onCloseAutoFocus,\n ...props\n}: React.ComponentPropsWithoutRef<typeof PopoverPrimitive.Root> &\n PopoverPropsType) => {\n return (\n <PopoverRoot {...props} open={open} onOpenChange={onOpenChange}>\n <PopoverTrigger asChild={asChild}>{trigger}</PopoverTrigger>\n <PopoverContent\n alignOffset={alignOffset}\n sideOffset={sideOffset}\n side={side}\n align={align}\n className={contentClassName}\n onOpenAutoFocus={onOpenAutoFocus}\n onCloseAutoFocus={onCloseAutoFocus}\n >\n {children}\n </PopoverContent>\n </PopoverRoot>\n );\n};\nPopover.displayName = PopoverPrimitive.Root.displayName;\n\nexport { Popover, PopoverRoot, PopoverTrigger, PopoverContent };\n","\"use client\";\n\nimport * as React from \"react\";\nimport * as ScrollAreaPrimitive from \"@radix-ui/react-scroll-area\";\n\nimport { cn } from \"@/src/utils\";\n\nconst ScrollArea = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.Root>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.Root>\n>(({ className, children, ...props }, ref) => (\n <ScrollAreaPrimitive.Root\n ref={ref}\n className={cn(\"relative overflow-hidden\", className)}\n {...props}\n >\n <ScrollAreaPrimitive.Viewport className=\"h-full w-full rounded-[inherit]\">\n {children}\n </ScrollAreaPrimitive.Viewport>\n <ScrollBar />\n <ScrollAreaPrimitive.Corner />\n </ScrollAreaPrimitive.Root>\n));\nScrollArea.displayName = ScrollAreaPrimitive.Root.displayName;\n\nconst ScrollBar = React.forwardRef<\n React.ElementRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>,\n React.ComponentPropsWithoutRef<typeof ScrollAreaPrimitive.ScrollAreaScrollbar>\n>(({ className, orientation = \"vertical\", ...props }, ref) => (\n <ScrollAreaPrimitive.ScrollAreaScrollbar\n ref={ref}\n orientation={orientation}\n className={cn(\n \"flex touch-none select-none transition-colors\",\n orientation === \"vertical\" &&\n \"h-full w-2.5 border-l border-l-transparent p-[1px]\",\n orientation === \"horizontal\" &&\n \"h-2.5 flex-col border-t border-t-transparent p-[1px]\",\n className,\n )}\n {...props}\n >\n <ScrollAreaPrimitive.ScrollAreaThumb className=\"relative flex-1 rounded-full bg-border\" />\n </ScrollAreaPrimitive.ScrollAreaScrollbar>\n));\nScrollBar.displayName = ScrollAreaPrimitive.ScrollAreaScrollbar.displayName;\n\nexport { ScrollArea, ScrollBar };\n","import { ErrorMessage } from \"../form/ErrorMessage\";\nimport { FormDescription } from \"../form/FormDescription\";\nimport { inputContainerVariants } from \"../input\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport {\n Searchable,\n SearchableDataType,\n SearchableTrigger,\n} from \"../searcheable\";\nimport { VariantProps } from \"class-variance-authority\";\n\ntype SelectPropsStatus = VariantProps<typeof inputContainerVariants>[\"status\"];\n\ninterface SelectProps {\n modal?: boolean;\n hideSearch?: boolean;\n loading?: boolean;\n inputValue?: string;\n onInputValueChange?: (arg: string) => void;\n disabled?: boolean;\n placeholder?: string;\n value?: SearchableDataType;\n options: SearchableDataType[];\n optionComponent?: (arg: SearchableDataType) => React.ReactNode;\n className?: string;\n containerClassName?: string;\n onChange: (value: SearchableDataType) => void;\n status?: SelectPropsStatus;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n error?: string;\n}\n\nconst Select = ({\n // onChange,\n // options,\n // className,\n // containerClassName,\n // disabled,\n // hideSearch,\n // inputValue,\n // loading,\n // modal,\n // onInputValueChange,\n // optionComponent,\n // placeholder,\n // value,\n showAsterisk,\n label,\n description,\n error,\n hideSearch = true,\n status,\n ...props\n}: SelectProps) => {\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <Searchable hideSearch={hideSearch} {...props}>\n <SearchableTrigger\n disabled={props?.disabled}\n placeholder=\"Select or search email\"\n status={status}\n value={props?.value?.label ?? props?.value?.value}\n />\n </Searchable>\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nexport { Select };\nexport type { SelectProps };\n","export const countryData = [\n {\n countryCode: \"GLOBAL\",\n countryName: \"Global\",\n currency: \"Dollars\",\n currencyCode: \"USD\",\n currencyIcon: \"🌎\",\n flag: \"\",\n flagURL: \"\",\n internetCountryCode: \"GLOBAL\",\n },\n {\n countryName: \"Benin\",\n countryCode: \"+229\",\n flag: \"🇧🇯\",\n flagURL: {\n png: \"https://flagcdn.com/w320/bj.png\",\n svg: \"https://flagcdn.com/bj.svg\",\n alt: \"The flag of Benin features a green vertical band on its hoist side that takes up about two-fifth the width of the field and two equal horizontal bands of yellow and red adjoining the vertical band.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"BJ\",\n countryId: \"659cb4624b4e7400b1c12efc\",\n },\n {\n countryName: \"Burkina Faso\",\n countryCode: \"+226\",\n flag: \"🇧🇫\",\n flagURL: {\n png: \"https://flagcdn.com/w320/bf.png\",\n svg: \"https://flagcdn.com/bf.svg\",\n alt: \"The flag of Burkina Faso features two equal horizontal bands of red and green, with a yellow five-pointed star in the center.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"BF\",\n countryId: \"659cb4624b4e7400b1c12f0d\",\n },\n {\n countryName: \"Cameroon\",\n countryCode: \"+237\",\n flag: \"🇨🇲\",\n flagURL: {\n png: \"https://flagcdn.com/w320/cm.png\",\n svg: \"https://flagcdn.com/cm.svg\",\n alt: \"The flag of Cameroon is composed of three equal vertical bands of green, red and yellow, with a yellow five-pointed star in the center.\",\n },\n currency: \"Central African CFA franc\",\n currencyCode: \"XAF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"CM\",\n countryId: \"659cb4624b4e7400b1c12ee6\",\n },\n {\n countryName: \"Chad\",\n countryCode: \"+235\",\n flag: \"🇹🇩\",\n flagURL: {\n png: \"https://flagcdn.com/w320/td.png\",\n svg: \"https://flagcdn.com/td.svg\",\n alt: \"The flag of Chad is composed of three equal vertical bands of blue, gold and red.\",\n },\n currency: \"Central African CFA franc\",\n currencyCode: \"XAF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"TD\",\n countryId: \"659cb4624b4e7400b1c12ea8\",\n },\n {\n countryName: \"DR Congo\",\n countryCode: \"+243\",\n flag: \"🇨🇩\",\n flagURL: {\n png: \"https://flagcdn.com/w320/cd.png\",\n svg: \"https://flagcdn.com/cd.svg\",\n alt: \"The flag of the Democratic Republic of the Congo has a sky-blue field with a yellow-edged red diagonal band that extends from the lower hoist-side corner to the upper fly-side corner of the field. A large five-pointed yellow star is situated above the diagonal band on the upper hoist side of the field.\",\n },\n currency: \"Congolese franc\",\n currencyCode: \"CDF\",\n currencyIcon: \"FC\",\n internetCountryCode: \"CD\",\n countryId: \"659cb4624b4e7400b1c12ee5\",\n },\n {\n countryName: \"Eswatini\",\n countryCode: \"+268\",\n flag: \"🇸🇿\",\n flagURL: {\n png: \"https://flagcdn.com/w320/sz.png\",\n svg: \"https://flagcdn.com/sz.svg\",\n alt: \"The flag of Eswatini is composed of three horizontal bands — a large central yellow-edged red band, and a light blue band above and beneath the red band. The red band is three times the height of the blue bands and bears a centered emblem made up of a large black and white Nguni shield covering two spears and a staff decorated with feather tassels, all placed horizontally.\",\n },\n currency: \"Swazi lilangeni\",\n currencyCode: \"SZL\",\n currencyIcon: \"L\",\n internetCountryCode: \"SZ\",\n countryId: \"659cb4624b4e7400b1c12edc\",\n },\n {\n countryName: \"Gabon\",\n countryCode: \"+241\",\n flag: \"🇬🇦\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ga.png\",\n svg: \"https://flagcdn.com/ga.svg\",\n alt: \"The flag of Gabon is composed of three equal horizontal bands of green, yellow and blue.\",\n },\n currency: \"Central African CFA franc\",\n currencyCode: \"XAF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"GA\",\n countryId: \"659cb4624b4e7400b1c12f51\",\n },\n {\n countryName: \"Ghana\",\n countryCode: \"+233\",\n flag: \"🇬🇭\",\n flagURL: {\n png: \"https://flagcdn.com/w320/gh.png\",\n svg: \"https://flagcdn.com/gh.svg\",\n alt: \"The flag of Ghana is composed of three equal horizontal bands of red, gold and green, with a five-pointed black star centered in the gold band.\",\n },\n currency: \"Ghanaian cedi\",\n currencyCode: \"GHS\",\n currencyIcon: \"₵\",\n internetCountryCode: \"GH\",\n countryId: \"659cb4624b4e7400b1c12e75\",\n },\n {\n countryName: \"Guinea\",\n countryCode: \"+224\",\n flag: \"🇬🇳\",\n flagURL: {\n png: \"https://flagcdn.com/w320/gn.png\",\n svg: \"https://flagcdn.com/gn.svg\",\n alt: \"The flag of Guinea is composed of three equal vertical bands of red, yellow and green.\",\n },\n currency: \"Guinean franc\",\n currencyCode: \"GNF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"GN\",\n countryId: \"659cb4624b4e7400b1c12f3f\",\n },\n {\n countryName: \"Ivory Coast\",\n countryCode: \"+225\",\n flag: \"🇨🇮\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ci.png\",\n svg: \"https://flagcdn.com/ci.svg\",\n alt: \"The flag of Ivory Coast is composed of three equal vertical bands of orange, white and green.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"CI\",\n countryId: \"659cb4624b4e7400b1c12f5f\",\n },\n {\n countryName: \"Kenya\",\n countryCode: \"+254\",\n flag: \"🇰🇪\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ke.png\",\n svg: \"https://flagcdn.com/ke.svg\",\n alt: \"The flag of Kenya is composed of three equal horizontal bands of black, red with white top and bottom edges, and green. An emblem comprising a red, black and white Maasai shield covering two crossed white spears is superimposed at the center of the field.\",\n },\n currency: \"Kenyan shilling\",\n currencyCode: \"KES\",\n currencyIcon: \"Sh\",\n internetCountryCode: \"KE\",\n countryId: \"659cb4624b4e7400b1c12f3c\",\n },\n {\n countryName: \"Lesotho\",\n countryCode: \"+266\",\n flag: \"🇱🇸\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ls.png\",\n svg: \"https://flagcdn.com/ls.svg\",\n alt: \"The flag of Lesotho is composed of three horizontal bands of blue, white and green in the ratio of 3:4:3. A black mokorotlo — a Basotho hat — is centered in the white band.\",\n },\n currency: \"Lesotho loti\",\n currencyCode: \"LSL\",\n currencyIcon: \"L\",\n internetCountryCode: \"LS\",\n countryId: \"659cb4624b4e7400b1c12f02\",\n },\n {\n countryName: \"Liberia\",\n countryCode: \"+231\",\n flag: \"🇱🇷\",\n flagURL: {\n png: \"https://flagcdn.com/w320/lr.png\",\n svg: \"https://flagcdn.com/lr.svg\",\n alt: \"The flag of Liberia is composed of eleven equal horizontal bands of red alternating with white. A blue square bearing a five-pointed white star is superimposed in the canton.\",\n },\n currency: \"Liberian dollar\",\n currencyCode: \"LRD\",\n currencyIcon: \"$\",\n internetCountryCode: \"LR\",\n countryId: \"659cb4624b4e7400b1c12ec0\",\n },\n {\n countryName: \"Madagascar\",\n countryCode: \"+261\",\n flag: \"🇲🇬\",\n flagURL: {\n png: \"https://flagcdn.com/w320/mg.png\",\n svg: \"https://flagcdn.com/mg.svg\",\n alt: \"The flag of Madagascar features a white vertical band on the hoist side that takes up about one-third the width of the field, and two equal horizontal bands of red and green adjoining the vertical band.\",\n },\n currency: \"Malagasy ariary\",\n currencyCode: \"MGA\",\n currencyIcon: \"Ar\",\n internetCountryCode: \"MG\",\n countryId: \"659cb4624b4e7400b1c12ede\",\n },\n {\n countryName: \"Malawi\",\n countryCode: \"+265\",\n flag: \"🇲🇼\",\n flagURL: {\n png: \"https://flagcdn.com/w320/mw.png\",\n svg: \"https://flagcdn.com/mw.svg\",\n alt: \"The flag of Malawi is composed of three equal horizontal bands of black, red and green. The top half of a red sun with thirty-one visible rays is centered in the black band.\",\n },\n currency: \"Malawian kwacha\",\n currencyCode: \"MWK\",\n currencyIcon: \"MK\",\n internetCountryCode: \"MW\",\n countryId: \"659cb4624b4e7400b1c12f24\",\n },\n {\n countryName: \"Mali\",\n countryCode: \"+223\",\n flag: \"🇲🇱\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ml.png\",\n svg: \"https://flagcdn.com/ml.svg\",\n alt: \"The flag of Mali is composed of three equal vertical bands of green, yellow and red.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"ML\",\n countryId: \"659cb4624b4e7400b1c12f25\",\n },\n {\n countryName: \"Mozambique\",\n countryCode: \"+258\",\n flag: \"🇲🇿\",\n flagURL: {\n png: \"https://flagcdn.com/w320/mz.png\",\n svg: \"https://flagcdn.com/mz.svg\",\n alt: \"The flag of Mozambique is composed of three equal horizontal bands of teal, black with white top and bottom edges, and yellow. A red isosceles triangle spanning about two-fifth the width of the field is superimposed on the hoist side with its base on the hoist end. This triangle bears a crossed rifle and hoe in black superimposed on an open white book which is superimposed on a five-pointed yellow star.\",\n },\n currency: \"Mozambican metical\",\n currencyCode: \"MZN\",\n currencyIcon: \"MT\",\n internetCountryCode: \"MZ\",\n countryId: \"659cb4624b4e7400b1c12f22\",\n },\n {\n countryName: \"Namibia\",\n countryCode: \"+264\",\n flag: \"🇳🇦\",\n flagURL: {\n png: \"https://flagcdn.com/w320/na.png\",\n svg: \"https://flagcdn.com/na.svg\",\n alt: \"The flag of Namibia features a white-edged red diagonal band that extends from the lower hoist-side corner to the upper fly-side corner of the field. Above and beneath this band are a blue and green triangle respectively. A gold sun with twelve triangular rays is situated on the hoist side of the upper triangle.\",\n },\n currency: \"Namibian dollar\",\n currencyCode: \"NAD\",\n currencyIcon: \"$\",\n internetCountryCode: \"NA\",\n countryId: \"659cb4624b4e7400b1c12e74\",\n },\n {\n countryName: \"Niger\",\n countryCode: \"+227\",\n flag: \"🇳🇪\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ne.png\",\n svg: \"https://flagcdn.com/ne.svg\",\n alt: \"The flag of Niger features three equal horizontal bands of orange, white and green, with an orange circle centered in the white band.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"NE\",\n countryId: \"659cb4624b4e7400b1c12efb\",\n },\n {\n countryName: \"Nigeria\",\n countryCode: \"+234\",\n flag: \"🇳🇬\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ng.png\",\n svg: \"https://flagcdn.com/ng.svg\",\n alt: \"The flag of Nigeria is composed of three equal vertical bands of green, white and green.\",\n },\n currency: \"Nigerian naira\",\n currencyCode: \"NGN\",\n currencyIcon: \"₦\",\n internetCountryCode: \"NG\",\n countryId: \"659cb4624b4e7400b1c12eae\",\n },\n {\n countryName: \"Republic of the Congo\",\n countryCode: \"+242\",\n flag: \"🇨🇬\",\n flagURL: {\n png: \"https://flagcdn.com/w320/cg.png\",\n svg: \"https://flagcdn.com/cg.svg\",\n alt: \"The flag of the Republic of the Congo features a yellow diagonal band that extends from the lower hoist-side corner to the upper fly-side corner of the field. Above and beneath this band are a green and red triangle respectively.\",\n },\n currency: \"Central African CFA franc\",\n currencyCode: \"XAF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"CG\",\n countryId: \"659cb4624b4e7400b1c12e8b\",\n },\n {\n countryName: \"Rwanda\",\n countryCode: \"+250\",\n flag: \"🇷🇼\",\n flagURL: {\n png: \"https://flagcdn.com/w320/rw.png\",\n svg: \"https://flagcdn.com/rw.svg\",\n alt: \"The flag of Rwanda is composed of three horizontal bands of light blue, yellow and green. The light blue band is twice the height of the other two bands and bears a yellow sun with twenty-four rays on its fly side.\",\n },\n currency: \"Rwandan franc\",\n currencyCode: \"RWF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"RW\",\n countryId: \"659cb4624b4e7400b1c12ee4\",\n },\n {\n countryName: \"Senegal\",\n countryCode: \"+221\",\n flag: \"🇸🇳\",\n flagURL: {\n png: \"https://flagcdn.com/w320/sn.png\",\n svg: \"https://flagcdn.com/sn.svg\",\n alt: \"The flag of Senegal is composed of three equal vertical bands of green, golden-yellow and red, with a five-pointed green star centered in the golden-yellow band.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"SN\",\n countryId: \"659cb4624b4e7400b1c12ebb\",\n },\n {\n countryName: \"Seychelles\",\n countryCode: \"+248\",\n flag: \"🇸🇨\",\n flagURL: {\n png: \"https://flagcdn.com/w320/sc.png\",\n svg: \"https://flagcdn.com/sc.svg\",\n alt: \"The flag of Seychelles is composed of five broadening oblique bands of blue, yellow, red, white and green, which extend from the hoist side of the bottom edge to the top and fly edges of the field.\",\n },\n currency: \"Seychellois rupee\",\n currencyCode: \"SCR\",\n currencyIcon: \"₨\",\n internetCountryCode: \"SC\",\n countryId: \"659cb4624b4e7400b1c12e7d\",\n },\n {\n countryName: \"South Africa\",\n countryCode: \"+27\",\n flag: \"🇿🇦\",\n flagURL: {\n png: \"https://flagcdn.com/w320/za.png\",\n svg: \"https://flagcdn.com/za.svg\",\n alt: \"The flag of South Africa is composed of two equal horizontal bands of red and blue, with a yellow-edged black isosceles triangle superimposed on the hoist side of the field. This triangle has its base centered on the hoist end, spans about two-fifth the width and two-third the height of the field, and is enclosed on its sides by the arms of a white-edged green horizontally oriented Y-shaped band which extends along the boundary of the red and blue bands to the fly end of the field.\",\n },\n currency: \"South African rand\",\n currencyCode: \"ZAR\",\n currencyIcon: \"R\",\n internetCountryCode: \"ZA\",\n countryId: \"659cb4624b4e7400b1c12ec1\",\n },\n {\n countryName: \"South Sudan\",\n countryCode: \"+211\",\n flag: \"🇸🇸\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ss.png\",\n svg: \"https://flagcdn.com/ss.svg\",\n alt: \"The flag of South Sudan is composed of three equal horizontal bands of black, red with white top and bottom edges, and green. A blue equilateral triangle which spans about two-fifth the width of the field is superimposed on the hoist side with its base on the hoist end of the field. At the center of this triangle is a five-pointed yellow star.\",\n },\n currency: \"South Sudanese pound\",\n currencyCode: \"SSP\",\n currencyIcon: \"£\",\n internetCountryCode: \"SS\",\n countryId: \"659cb4624b4e7400b1c12e76\",\n },\n {\n countryName: \"Tanzania\",\n countryCode: \"+255\",\n flag: \"🇹🇿\",\n flagURL: {\n png: \"https://flagcdn.com/w320/tz.png\",\n svg: \"https://flagcdn.com/tz.svg\",\n alt: \"The flag of Tanzania features a yellow-edged black diagonal band that extends from the lower hoist-side corner to the upper fly-side corner of the field. Above and beneath this band are a green and light blue triangle respectively.\",\n },\n currency: \"Tanzanian shilling\",\n currencyCode: \"TZS\",\n currencyIcon: \"Sh\",\n internetCountryCode: \"TZ\",\n countryId: \"659cb4624b4e7400b1c12eb1\",\n },\n {\n countryName: \"Togo\",\n countryCode: \"+228\",\n flag: \"🇹🇬\",\n flagURL: {\n png: \"https://flagcdn.com/w320/tg.png\",\n svg: \"https://flagcdn.com/tg.svg\",\n alt: \"The flag of Togo is composed of five equal horizontal bands of green alternating with yellow. A red square bearing a five-pointed white star is superimposed in the canton.\",\n },\n currency: \"West African CFA franc\",\n currencyCode: \"XOF\",\n currencyIcon: \"Fr\",\n internetCountryCode: \"TG\",\n countryId: \"659cb4624b4e7400b1c12ef2\",\n },\n {\n countryName: \"Uganda\",\n countryCode: \"+256\",\n flag: \"🇺🇬\",\n flagURL: {\n png: \"https://flagcdn.com/w320/ug.png\",\n svg: \"https://flagcdn.com/ug.svg\",\n alt: \"The flag of Uganda is composed of six equal horizontal bands of black, yellow, red, black, yellow and red. A white circle bearing a hoist-side facing grey red-crested crane is superimposed in the center of the field.\",\n },\n currency: \"Ugandan shilling\",\n currencyCode: \"UGX\",\n currencyIcon: \"Sh\",\n internetCountryCode: \"UG\",\n countryId: \"659cb4624b4e7400b1c12edd\",\n },\n {\n countryName: \"Zambia\",\n countryCode: \"+260\",\n flag: \"🇿🇲\",\n flagURL: {\n png: \"https://flagcdn.com/w320/zm.png\",\n svg: \"https://flagcdn.com/zm.svg\",\n alt: \"The flag of Zambia has a green field, on the fly side of which is a soaring orange African fish eagle above a rectangular area divided into three equal vertical bands of red, black and orange.\",\n },\n currency: \"Zambian kwacha\",\n currencyCode: \"ZMW\",\n currencyIcon: \"ZK\",\n internetCountryCode: \"ZM\",\n countryId: \"659cb4624b4e7400b1c12f2b\",\n },\n];\n\nexport const getCountryDataMap = () => {\n const frequency = {} as Record<string, string>;\n\n countryData?.forEach((country) => {\n frequency[country?.internetCountryCode] = country?.countryName;\n });\n\n return frequency;\n};\n","\"use client\";\n\nimport * as React from \"react\";\n\nimport * as RPNInput from \"react-phone-number-input\";\n\nimport flags from \"react-phone-number-input/flags\";\n\nimport {\n Command,\n CommandEmpty,\n CommandGroup,\n CommandInput,\n CommandItem,\n CommandList,\n} from \"../command\";\nimport { Input, InputProps, inputContainerVariants } from \"../input\";\nimport { PopoverRoot, PopoverContent, PopoverTrigger } from \"../popover\";\n\nimport { cn } from \"@/src/utils\";\nimport { ScrollArea } from \"../scroll-area\";\nimport { VariantProps } from \"class-variance-authority\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { FormDescription } from \"../form/FormDescription\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\n\nexport type PhoneInputValue = RPNInput.Value;\n\nexport type PhoneInputProps = Omit<\n React.InputHTMLAttributes<HTMLInputElement>,\n \"onChange\" | \"value\"\n> &\n Omit<RPNInput.Props<typeof RPNInput.default>, \"onChange\"> & {\n onChange?: (value?: RPNInput.Value) => void;\n } & {\n status?: VariantProps<typeof inputContainerVariants>[\"status\"];\n defaultCountry?: RPNInput.Country;\n modal?: boolean;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n error?: string;\n };\n\nconst PhoneInput: React.ForwardRefExoticComponent<PhoneInputProps> =\n React.forwardRef<React.ElementRef<typeof RPNInput.default>, PhoneInputProps>(\n (\n {\n className,\n onChange,\n modal,\n showAsterisk,\n label,\n description,\n error,\n defaultCountry = \"NG\",\n ...props\n },\n ref\n ) => {\n /**\n * did this so I can pass the status prop to the country\n * select so I can change the appearance based on the status\n */\n const CountrySelectWrapper = (innerProps: CountrySelectProps) => {\n return (\n <CountrySelect {...innerProps} status={props.status} modal={modal} />\n );\n };\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <RPNInput.default\n ref={ref}\n className={cn(\"flex\", className)}\n flagComponent={FlagComponent}\n countrySelectComponent={CountrySelectWrapper}\n inputComponent={InputComponent}\n defaultCountry={defaultCountry}\n /**\n * Handles the onChange event.\n *\n * react-phone-number-input might trigger the onChange event as undefined\n * when a valid phone number is not entered. To prevent this,\n * the value is coerced to an empty string.\n *\n * @param {E164Number | undefined} value - The entered value\n */\n onChange={(value) => onChange?.(value)}\n {...props}\n />\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n }\n );\nPhoneInput.displayName = \"PhoneInput\";\n\nconst InputComponent = React.forwardRef<HTMLInputElement, InputProps>(\n ({ className, ...props }, ref) => (\n <Input\n className={cn(\n \"h-full !-mt-0 border-l-0 rounded-l-none flex-1\",\n className\n )}\n {...props}\n ref={ref}\n />\n )\n);\nInputComponent.displayName = \"InputComponent\";\n\ntype CountrySelectOption = { label: string; value: RPNInput.Country };\n\ntype CountrySelectProps = {\n disabled?: boolean;\n modal?: boolean;\n value: RPNInput.Country;\n onChange: (value: RPNInput.Country) => void;\n options: CountrySelectOption[];\n status?: VariantProps<typeof inputContainerVariants>[\"status\"];\n};\n\nconst CountrySelect = ({\n disabled,\n value,\n onChange,\n options,\n status,\n modal,\n}: CountrySelectProps) => {\n const handleSelect = React.useCallback(\n (country: RPNInput.Country) => {\n onChange(country);\n },\n [onChange]\n );\n\n return (\n <PopoverRoot modal={modal}>\n <PopoverTrigger disabled={disabled}>\n <div\n className={cn(\n inputContainerVariants({ status }),\n \"!border-r-0 transition justify-center items-center border disabled:text-base-500 disabled:border-base-300 border-status-neutral-fill dark:border-[#9299A2] text-texts-50 focus:ring-offset-1 focus:ring-offset-base-100 focus-visible:!ring-offset-base-100 focus-visible:ring-2 focus-visible:!ring-accent focus:ring-accent focus:ring-2 flex gap-1 h-full rounded-e-none rounded-s-lg px-3 dark:!bg-transparent\"\n )}\n >\n <FlagComponent country={value} countryName={value} />\n <svg\n className={cn(\n \"-mr-2 h-4 w-4 opacity-50\",\n disabled ? \"hidden\" : \"opacity-100\"\n )}\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n >\n <path\n d=\"M16.5999 7.45825L11.1666 12.8916C10.5249 13.5333 9.4749 13.5333 8.83324 12.8916L3.3999 7.45825\"\n stroke=\"#959595\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </div>\n </PopoverTrigger>\n <PopoverContent portal={!modal} className=\"w-[200px] md:w-[300px] p-0\">\n <Command>\n <CommandList>\n <ScrollArea className=\"h-72\">\n <CommandInput placeholder=\"Search country...\" />\n <CommandEmpty>No country found.</CommandEmpty>\n <CommandGroup>\n {options\n .filter((x) => x.value)\n .map((option) => (\n <CommandItem\n className=\"gap-2\"\n key={`${option.value}-${option.label}`}\n onSelect={() => handleSelect(option.value)}\n >\n <FlagComponent\n country={option.value}\n countryName={option.label}\n />\n <span className=\"flex-1 text-sm\">{option.label}</span>\n {option.value && (\n <span className=\"text-[#191919]/50 text-sm dark:text-white\">\n {`+${RPNInput.getCountryCallingCode(option.value)}`}\n </span>\n )}\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n className={cn(\n \"ml-auto\",\n option.value === value ? \"opacity-100\" : \"opacity-0\"\n )}\n >\n <path\n d=\"M4 8.00008L6.66353 10.6636L12 5.33655\"\n stroke=\"#959595\"\n strokeWidth=\"1.06667\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </CommandItem>\n ))}\n </CommandGroup>\n </ScrollArea>\n </CommandList>\n </Command>\n </PopoverContent>\n </PopoverRoot>\n );\n};\n\ntype FlagComponentProps = RPNInput.FlagProps & {\n className?: string;\n};\n\nconst FlagComponent = ({\n country,\n countryName,\n className,\n}: FlagComponentProps) => {\n const Flag = flags[country];\n\n return (\n <span\n className={cn(\n \"bg-white/20 flex h-4 w-6 overflow-hidden rounded-sm\",\n className\n )}\n >\n {Flag && <Flag title={countryName} />}\n </span>\n );\n};\nFlagComponent.displayName = \"FlagComponent\";\n\nexport { PhoneInput, FlagComponent };\n","import { inputContainerVariants } from \"../input\";\nimport { Searchable, SearchableDataType } from \"../searcheable\";\nimport { VariantProps } from \"class-variance-authority\";\nimport { countryData, getCountryDataMap } from \"./data\";\nimport { PopoverTrigger } from \"../popover\";\nimport { cn } from \"@/src/utils\";\nimport { FlagComponent } from \"../phone-input\";\nimport { Country as CountryCode } from \"react-phone-number-input\";\nimport { FormLabel } from \"../label/FormLabel\";\nimport { FormDescription } from \"../form/FormDescription\";\nimport { ErrorMessage } from \"../form/ErrorMessage\";\n\ntype CountryPropsStatus = VariantProps<typeof inputContainerVariants>[\"status\"];\n\ninterface CountryProps {\n modal?: boolean;\n hideSearch?: boolean;\n loading?: boolean;\n inputValue?: string;\n onInputValueChange?: (arg: string) => void;\n disabled?: boolean;\n placeholder?: string;\n value?: SearchableDataType;\n optionComponent?: (arg: SearchableDataType) => React.ReactNode;\n className?: string;\n containerClassName?: string;\n onChange: (value: SearchableDataType) => void;\n status?: CountryPropsStatus;\n label?: string;\n showAsterisk?: boolean;\n description?: React.ReactNode;\n error?: string;\n}\n\ninterface CountryTriggerProps\n extends VariantProps<typeof inputContainerVariants> {\n disabled?: boolean;\n placeholder?: string;\n value?: string;\n className?: string;\n}\n\nconst countryMap = getCountryDataMap();\n\nconst CountryTrigger = ({\n className,\n value,\n placeholder = \"\",\n status,\n disabled,\n}: CountryTriggerProps) => {\n return (\n <PopoverTrigger asChild disabled={disabled}>\n <button\n disabled={disabled}\n className={cn(\n inputContainerVariants({ status }),\n \"[&>span]:justify-start [&>span]:items-center gap-2 flex w-full items-center justify-between goup\",\n value ? \"\" : \"text-[#79818C]\",\n className\n )}\n >\n {value ? (\n <div className=\"flex gap-2\">\n <FlagComponent\n country={value as CountryCode}\n countryName={value}\n className=\"ml-1 !w-6 h-5\"\n />\n <span className=\"\"> {countryMap[value]}</span>\n </div>\n ) : (\n (placeholder ?? \"Select options...\")\n )}\n <svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill=\"none\"\n className=\" data-[state=open]:goup-rotate-180\"\n >\n <path\n d=\"M16.5999 7.45825L11.1666 12.8916C10.5249 13.5333 9.4749 13.5333 8.83324 12.8916L3.3999 7.45825\"\n stroke=\"currentColor\"\n strokeWidth=\"1.5\"\n strokeMiterlimit=\"10\"\n strokeLinecap=\"round\"\n strokeLinejoin=\"round\"\n />\n </svg>\n </button>\n </PopoverTrigger>\n );\n};\n\nconst Country = ({\n hideSearch = true,\n showAsterisk,\n label,\n description,\n error,\n ...props\n}: CountryProps) => {\n const options = countryData?.map((country) => ({\n value: country?.internetCountryCode,\n label: country?.countryName,\n ...country,\n }));\n\n return (\n <div className=\"relative space-y-1\">\n <FormLabel showAsterisk={showAsterisk} error={error}>\n {label}\n </FormLabel>\n <Searchable\n options={options}\n hideSearch={hideSearch}\n optionComponent={(arg) => {\n return (\n <div className=\"w-full flex items-center gap-2\">\n <FlagComponent\n country={arg?.internetCountryCode}\n countryName={arg?.label}\n className=\"ml-2 !w-6 !h-5\"\n />\n <span className=\"flex-1 text-sm\">{arg?.label}</span>\n </div>\n );\n }}\n {...props}\n >\n <CountryTrigger\n value={props?.value?.value}\n status={props?.status}\n placeholder={props?.placeholder ?? \" Select Country\"}\n />\n </Searchable>\n <FormDescription className=\"text-gray-400 text-sm !font-normal\">\n {description}\n </FormDescription>\n <ErrorMessage error={error} />\n </div>\n );\n};\n\nexport { Country };\nexport type { CountryProps };\n"],"mappings":"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SAAAR,EACH,EACAL,EAACc,EAAA,CAAa,MAAOR,EAAO,GAC9B,ECzEG,IAAMS,GAAc,CACzB,CACE,YAAa,SACb,YAAa,SACb,SAAU,UACV,aAAc,MACd,aAAc,YACd,KAAM,GACN,QAAS,GACT,oBAAqB,QACvB,EACA,CACE,YAAa,QACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,uMACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,eACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,+HACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,WACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,yIACP,EACA,SAAU,4BACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,OACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,mFACP,EACA,SAAU,4BACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,WACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,iTACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,WACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,8XACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,IACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,QACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,0FACP,EACA,SAAU,4BACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,QACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,iJACP,EACA,SAAU,gBACV,aAAc,MACd,aAAc,SACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,SACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,wFACP,EACA,SAAU,gBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,cACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,+FACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,QACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,iQACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,UACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,wLACP,EACA,SAAU,eACV,aAAc,MACd,aAAc,IACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,UACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,gLACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,IACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,aACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,4MACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,SACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,+KACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,OACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,sFACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,aACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,wZACP,EACA,SAAU,qBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,UACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,2TACP,EACA,SAAU,kBACV,aAAc,MACd,aAAc,IACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,QACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,uIACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,UACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,0FACP,EACA,SAAU,iBACV,aAAc,MACd,aAAc,SACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,wBACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,uOACP,EACA,SAAU,4BACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,SACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,wNACP,EACA,SAAU,gBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,UACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,mKACP,EACA,SAAU,yBACV,aAAc,MACd,aAAc,KACd,oBAAqB,KACrB,UAAW,0BACb,EACA,CACE,YAAa,aACb,YAAa,OACb,KAAM,qBACN,QAAS,CACP,IAAK,kCACL,IAAK,6BACL,IAAK,uMACP,EACA,SAAU,oBACV,aAAc,MACd,aAAc,SACd,oBAAqB,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","names":["React","React","LabelPrimitive","cva","clsx","twMerge","cn","inputs","jsx","labelVariants","cva","Label","className","props","ref","cn","jsx","jsxs","FormLabel","React","className","children","showAsterisk","error","props","ref","Label","cn","jsx","jsxs","Loader","size","colour","React","Slot","cva","Fragment","jsx","jsxs","buttonVariants","cva","Button","className","variant","size","asChild","isLoading","leftNode","rightNode","LoaderSize","ref","props","Component","Slot","children","disabled","rest","reference","cn","Loader","cva","React","jsx","ErrorMessage","className","children","error","props","ref","body","cn","React","jsx","FormDescription","className","props","ref","cn","jsx","jsxs","inputVariants","cva","BaseInnerInput","className","status","type","ref","props","cn","inputContainerVariants","sideVariants","Input","disabled","error","isLoading","sideNodeClassName","showAsterisk","label","description","containerStatus","FormLabel","FormDescription","ErrorMessage","useState","jsx","jsxs","Eye","jsx","jsxs","EyeOff","jsx","PasswordInput","props","passwordVisible","setPasswordVisible","useState","Input","val","Eye","EyeOff","cva","jsx","jsxs","textareaContainerVariants","cva","Textarea","className","status","disabled","error","isLoading","showAsterisk","label","description","props","containerStatus","FormLabel","cn","inputContainerVariants","FormDescription","ErrorMessage","React","React","CommandPrimitive","Search","React","DialogPrimitive","jsx","jsxs","CloseIcon","Fragment","jsx","jsxs","DialogRoot","DialogTrigger","DialogPortal","DialogOverlay","className","props","ref","cn","DialogContent","hideCloseButton","children","CloseIcon","DialogHeader","DialogFooter","DialogTitle","DialogDescription","Dialog","trigger","open","onOpenChange","footer","title","description","contentClassName","headerClassName","titleClassName","descriptionClassName","footerClassName","asChild","onOpenAutoFocus","onCloseAutoFocus","onEscapeKeyDown","onInteractOutside","onPointerDownOutside","Fragment","jsx","jsxs","Command","className","props","ref","CommandPrimitive","cn","CommandInput","className","CommandInputContainerClassName","loading","props","ref","jsxs","cn","jsx","Loader","Search","CommandPrimitive","CommandList","CommandEmpty","CommandGroup","CommandSeparator","CommandItem","CommandShortcut","React","PopoverPrimitive","jsx","jsxs","PopoverRoot","PopoverTrigger","PopoverContent","className","align","sideOffset","portal","props","ref","cn","Popover","trigger","children","open","onOpenChange","contentClassName","asChild","side","alignOffset","onOpenAutoFocus","onCloseAutoFocus","React","ScrollAreaPrimitive","jsx","jsxs","ScrollArea","className","children","props","ref","cn","ScrollBar","orientation","jsx","jsxs","SearchableTrigger","className","value","placeholder","status","disabled","PopoverTrigger","cn","inputContainerVariants","Searchable","options","onChange","containerClassName","loading","optionComponent","children","modal","hideSearch","inputValue","onValueChange","onInputValueChange","open","setOpen","triggerRef","width","setWidth","PopoverRoot","PopoverContent","Command","CommandInput","ScrollArea","CommandList","CommandEmpty","CommandGroup","option","CommandItem","jsx","jsxs","Select","showAsterisk","label","description","error","hideSearch","status","props","FormLabel","Searchable","SearchableTrigger","FormDescription","ErrorMessage","countryData","getCountryDataMap","frequency","country","React","RPNInput","flags","jsx","jsxs","PhoneInput","className","onChange","modal","showAsterisk","label","description","error","defaultCountry","props","ref","CountrySelectWrapper","innerProps","CountrySelect","FormLabel","cn","FlagComponent","InputComponent","value","FormDescription","ErrorMessage","Input","disabled","options","status","handleSelect","country","PopoverRoot","PopoverTrigger","inputContainerVariants","PopoverContent","Command","CommandList","ScrollArea","CommandInput","CommandEmpty","CommandGroup","x","option","CommandItem","countryName","Flag","flags","jsx","jsxs","countryMap","getCountryDataMap","CountryTrigger","className","value","placeholder","status","disabled","PopoverTrigger","cn","inputContainerVariants","FlagComponent","Country","hideSearch","showAsterisk","label","description","error","props","options","countryData","country","FormLabel","Searchable","arg","FormDescription","ErrorMessage"]}
|