????
Current Path : C:/inetpub/vhost/binhdinhf1.gdtsolutions.vn/admin/assets/ |
Current File : C:/inetpub/vhost/binhdinhf1.gdtsolutions.vn/admin/assets/Form-TjmuzJ2e.js |
var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});import{bz as _objectWithoutPropertiesLoose,bC as getDisplayName,bv as _extends,aL as PropTypes,b_ as chainPropTypes,bH as hoistNonReactStatics,r as reactExports,b$ as clsx,az as jsxRuntimeExports,R as React,ap as commonjsGlobal,j as jsxDevRuntimeExports,B as Box,I as Icon,aK as Input,i as Button,b5 as Autocomplete,G as Grid,T as TextField,b6 as createFilterOptions,aX as Alert,ay as Stack,v as Typography,a6 as Switch,ab as Checkbox,l as lodashExports}from"./vendor-d1l7PA9U.js";import{m as makeStyles,f as InputText,w as withStyles,c as SelectCustom,b as SelectMulti,g as SelectAsyncMulti,h as SelectAsync,i as InputImage,D as DataSelect2,N as NumberFormat,j as InputNumber,k as InputDate}from"./NumberFormat-2ngWAb2i.js";import{f as H6,X as formatDate}from"./index-xxTpRcwO.js";const _excluded=["name"],_excluded2=["children","className","clone","component"];function omit(input,fields){const output={};return Object.keys(input).forEach(prop=>{fields.indexOf(prop)===-1&&(output[prop]=input[prop])}),output}__name(omit,"omit");function styled(Component){return __name((style,options={})=>{const{name}=options,stylesOptions=_objectWithoutPropertiesLoose(options,_excluded);if(Component===void 0)throw new Error(["You are calling styled(Component)(style) with an undefined component.","You may have forgotten to import it."].join(` `));let classNamePrefix=name;if(!name){const displayName=getDisplayName(Component);displayName!==void 0&&(classNamePrefix=displayName)}const useStyles=makeStyles(typeof style=="function"?theme=>({root:props=>style(_extends({theme},props))}):{root:style},_extends({Component,name:name||Component.displayName,classNamePrefix},stylesOptions));let filterProps,propTypes={};style.filterProps&&(filterProps=style.filterProps,delete style.filterProps),style.propTypes&&(propTypes=style.propTypes,delete style.propTypes);const StyledComponent=reactExports.forwardRef(__name(function(props,ref){const{children,className:classNameProp,clone,component:ComponentProp}=props,other=_objectWithoutPropertiesLoose(props,_excluded2),classes=useStyles(props),className=clsx(classes.root,classNameProp);let spread=other;if(filterProps&&(spread=omit(spread,filterProps)),clone)return reactExports.cloneElement(children,_extends({className:clsx(children.props.className,className)},spread));if(typeof children=="function")return children(_extends({className},spread));const FinalComponent=ComponentProp||Component;return jsxRuntimeExports.jsx(FinalComponent,_extends({ref,className},spread,{children}))},"StyledComponent2"));return StyledComponent.propTypes=_extends({children:PropTypes.oneOfType([PropTypes.node,PropTypes.func]),className:PropTypes.string,clone:chainPropTypes(PropTypes.bool,props=>props.clone&&props.component?new Error("You can not use the clone and component prop at the same time."):null),component:PropTypes.elementType},propTypes),StyledComponent.displayName=`Styled(${classNamePrefix})`,hoistNonReactStatics(StyledComponent,Component),StyledComponent},"componentCreator")}__name(styled,"styled");var isCheckBoxInput=__name(element=>element.type==="checkbox","isCheckBoxInput"),isDateObject=__name(value=>value instanceof Date,"isDateObject"),isNullOrUndefined=__name(value=>value==null,"isNullOrUndefined");const isObjectType=__name(value=>typeof value=="object","isObjectType");var isObject=__name(value=>!isNullOrUndefined(value)&&!Array.isArray(value)&&isObjectType(value)&&!isDateObject(value),"isObject"),getEventValue=__name(event=>isObject(event)&&event.target?isCheckBoxInput(event.target)?event.target.checked:event.target.value:event,"getEventValue"),getNodeParentName=__name(name=>name.substring(0,name.search(/\.\d+(\.|$)/))||name,"getNodeParentName"),isNameInFieldArray=__name((names,name)=>names.has(getNodeParentName(name)),"isNameInFieldArray"),isPlainObject=__name(tempObject=>{const prototypeCopy=tempObject.constructor&&tempObject.constructor.prototype;return isObject(prototypeCopy)&&prototypeCopy.hasOwnProperty("isPrototypeOf")},"isPlainObject"),isWeb=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function cloneObject(data){let copy;const isArray=Array.isArray(data);if(data instanceof Date)copy=new Date(data);else if(data instanceof Set)copy=new Set(data);else if(!(isWeb&&(data instanceof Blob||data instanceof FileList))&&(isArray||isObject(data)))if(copy=isArray?[]:{},!isArray&&!isPlainObject(data))copy=data;else for(const key in data)data.hasOwnProperty(key)&&(copy[key]=cloneObject(data[key]));else return data;return copy}__name(cloneObject,"cloneObject");var compact=__name(value=>Array.isArray(value)?value.filter(Boolean):[],"compact"),isUndefined=__name(val=>val===void 0,"isUndefined"),get=__name((obj,path,defaultValue)=>{if(!path||!isObject(obj))return defaultValue;const result=compact(path.split(/[,[\].]+?/)).reduce((result2,key)=>isNullOrUndefined(result2)?result2:result2[key],obj);return isUndefined(result)||result===obj?isUndefined(obj[path])?defaultValue:obj[path]:result},"get"),isBoolean=__name(value=>typeof value=="boolean","isBoolean");const EVENTS={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},VALIDATION_MODE={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},INPUT_VALIDATION_RULES={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},HookFormContext=React.createContext(null),useFormContext=__name(()=>React.useContext(HookFormContext),"useFormContext"),FormProvider=__name(props=>{const{children,...data}=props;return React.createElement(HookFormContext.Provider,{value:data},children)},"FormProvider");var getProxyFormState=__name((formState,control,localProxyFormState,isRoot=!0)=>{const result={defaultValues:control._defaultValues};for(const key in formState)Object.defineProperty(result,key,{get:()=>{const _key=key;return control._proxyFormState[_key]!==VALIDATION_MODE.all&&(control._proxyFormState[_key]=!isRoot||VALIDATION_MODE.all),localProxyFormState&&(localProxyFormState[_key]=!0),formState[_key]}});return result},"getProxyFormState"),isEmptyObject=__name(value=>isObject(value)&&!Object.keys(value).length,"isEmptyObject"),shouldRenderFormState=__name((formStateData,_proxyFormState,updateFormState,isRoot)=>{updateFormState(formStateData);const{name,...formState}=formStateData;return isEmptyObject(formState)||Object.keys(formState).length>=Object.keys(_proxyFormState).length||Object.keys(formState).find(key=>_proxyFormState[key]===(!isRoot||VALIDATION_MODE.all))},"shouldRenderFormState"),convertToArrayPayload=__name(value=>Array.isArray(value)?value:[value],"convertToArrayPayload"),shouldSubscribeByName=__name((name,signalName,exact)=>!name||!signalName||name===signalName||convertToArrayPayload(name).some(currentName=>currentName&&(exact?currentName===signalName:currentName.startsWith(signalName)||signalName.startsWith(currentName))),"shouldSubscribeByName");function useSubscribe(props){const _props=React.useRef(props);_props.current=props,React.useEffect(()=>{const subscription=!props.disabled&&_props.current.subject&&_props.current.subject.subscribe({next:_props.current.next});return()=>{subscription&&subscription.unsubscribe()}},[props.disabled])}__name(useSubscribe,"useSubscribe");function useFormState(props){const methods=useFormContext(),{control=methods.control,disabled,name,exact}=props||{},[formState,updateFormState]=React.useState(control._formState),_mounted=React.useRef(!0),_localProxyFormState=React.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1}),_name=React.useRef(name);return _name.current=name,useSubscribe({disabled,next:value=>_mounted.current&&shouldSubscribeByName(_name.current,value.name,exact)&&shouldRenderFormState(value,_localProxyFormState.current,control._updateFormState)&&updateFormState({...control._formState,...value}),subject:control._subjects.state}),React.useEffect(()=>(_mounted.current=!0,_localProxyFormState.current.isValid&&control._updateValid(!0),()=>{_mounted.current=!1}),[control]),getProxyFormState(formState,control,_localProxyFormState.current,!1)}__name(useFormState,"useFormState");var isString=__name(value=>typeof value=="string","isString"),generateWatchOutput=__name((names,_names,formValues,isGlobal,defaultValue)=>isString(names)?(isGlobal&&_names.watch.add(names),get(formValues,names,defaultValue)):Array.isArray(names)?names.map(fieldName=>(isGlobal&&_names.watch.add(fieldName),get(formValues,fieldName))):(isGlobal&&(_names.watchAll=!0),formValues),"generateWatchOutput");function useWatch(props){const methods=useFormContext(),{control=methods.control,name,defaultValue,disabled,exact}=props||{},_name=React.useRef(name);_name.current=name,useSubscribe({disabled,subject:control._subjects.values,next:formState=>{shouldSubscribeByName(_name.current,formState.name,exact)&&updateValue(cloneObject(generateWatchOutput(_name.current,control._names,formState.values||control._formValues,!1,defaultValue)))}});const[value,updateValue]=React.useState(control._getWatch(name,defaultValue));return React.useEffect(()=>control._removeUnmounted()),value}__name(useWatch,"useWatch");var isKey=__name(value=>/^\w*$/.test(value),"isKey"),stringToPath=__name(input=>compact(input.replace(/["|']|\]/g,"").split(/\.|\[/)),"stringToPath");function set(object,path,value){let index=-1;const tempPath=isKey(path)?[path]:stringToPath(path),length=tempPath.length,lastIndex=length-1;for(;++index<length;){const key=tempPath[index];let newValue=value;if(index!==lastIndex){const objValue=object[key];newValue=isObject(objValue)||Array.isArray(objValue)?objValue:isNaN(+tempPath[index+1])?{}:[]}object[key]=newValue,object=object[key]}return object}__name(set,"set");function useController(props){const methods=useFormContext(),{name,disabled,control=methods.control,shouldUnregister}=props,isArrayField=isNameInFieldArray(control._names.array,name),value=useWatch({control,name,defaultValue:get(control._formValues,name,get(control._defaultValues,name,props.defaultValue)),exact:!0}),formState=useFormState({control,name}),_registerProps=React.useRef(control.register(name,{...props.rules,value}));return _registerProps.current=control.register(name,props.rules),React.useEffect(()=>{const _shouldUnregisterField=control._options.shouldUnregister||shouldUnregister,updateMounted=__name((name2,value2)=>{const field=get(control._fields,name2);field&&(field._f.mount=value2)},"updateMounted");if(updateMounted(name,!0),_shouldUnregisterField){const value2=cloneObject(get(control._options.defaultValues,name));set(control._defaultValues,name,value2),isUndefined(get(control._formValues,name))&&set(control._formValues,name,value2)}return()=>{(isArrayField?_shouldUnregisterField&&!control._state.action:_shouldUnregisterField)?control.unregister(name):updateMounted(name,!1)}},[name,control,isArrayField,shouldUnregister]),React.useEffect(()=>{get(control._fields,name)&&control._updateDisabledField({disabled,fields:control._fields,name,value:get(control._fields,name)._f.value})},[disabled,name,control]),{field:{name,value,...isBoolean(disabled)||isBoolean(formState.disabled)?{disabled:formState.disabled||disabled}:{},onChange:React.useCallback(event=>_registerProps.current.onChange({target:{value:getEventValue(event),name},type:EVENTS.CHANGE}),[name]),onBlur:React.useCallback(()=>_registerProps.current.onBlur({target:{value:get(control._formValues,name),name},type:EVENTS.BLUR}),[name,control]),ref:elm=>{const field=get(control._fields,name);field&&elm&&(field._f.ref={focus:()=>elm.focus(),select:()=>elm.select(),setCustomValidity:message=>elm.setCustomValidity(message),reportValidity:()=>elm.reportValidity()})}},formState,fieldState:Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!get(formState.errors,name)},isDirty:{enumerable:!0,get:()=>!!get(formState.dirtyFields,name)},isTouched:{enumerable:!0,get:()=>!!get(formState.touchedFields,name)},error:{enumerable:!0,get:()=>get(formState.errors,name)}})}}__name(useController,"useController");var appendErrors=__name((name,validateAllFieldCriteria,errors,type,message)=>validateAllFieldCriteria?{...errors[name],types:{...errors[name]&&errors[name].types?errors[name].types:{},[type]:message||!0}}:{},"appendErrors"),getValidationModes=__name(mode=>({isOnSubmit:!mode||mode===VALIDATION_MODE.onSubmit,isOnBlur:mode===VALIDATION_MODE.onBlur,isOnChange:mode===VALIDATION_MODE.onChange,isOnAll:mode===VALIDATION_MODE.all,isOnTouch:mode===VALIDATION_MODE.onTouched}),"getValidationModes"),isWatched=__name((name,_names,isBlurEvent)=>!isBlurEvent&&(_names.watchAll||_names.watch.has(name)||[..._names.watch].some(watchName=>name.startsWith(watchName)&&/^\.\w+/.test(name.slice(watchName.length)))),"isWatched");const iterateFieldsByAction=__name((fields,action,fieldsNames,abortEarly)=>{for(const key of fieldsNames||Object.keys(fields)){const field=get(fields,key);if(field){const{_f,...currentField}=field;if(_f){if(_f.refs&&_f.refs[0]&&action(_f.refs[0],key)&&!abortEarly)break;if(_f.ref&&action(_f.ref,_f.name)&&!abortEarly)break}else isObject(currentField)&&iterateFieldsByAction(currentField,action)}}},"iterateFieldsByAction");var updateFieldArrayRootError=__name((errors,error,name)=>{const fieldArrayErrors=compact(get(errors,name));return set(fieldArrayErrors,"root",error[name]),set(errors,name,fieldArrayErrors),errors},"updateFieldArrayRootError"),isFileInput=__name(element=>element.type==="file","isFileInput"),isFunction=__name(value=>typeof value=="function","isFunction"),isHTMLElement=__name(value=>{if(!isWeb)return!1;const owner=value?value.ownerDocument:0;return value instanceof(owner&&owner.defaultView?owner.defaultView.HTMLElement:HTMLElement)},"isHTMLElement"),isMessage=__name(value=>isString(value),"isMessage"),isRadioInput=__name(element=>element.type==="radio","isRadioInput"),isRegex=__name(value=>value instanceof RegExp,"isRegex");const defaultResult={value:!1,isValid:!1},validResult={value:!0,isValid:!0};var getCheckboxValue=__name(options=>{if(Array.isArray(options)){if(options.length>1){const values=options.filter(option=>option&&option.checked&&!option.disabled).map(option=>option.value);return{value:values,isValid:!!values.length}}return options[0].checked&&!options[0].disabled?options[0].attributes&&!isUndefined(options[0].attributes.value)?isUndefined(options[0].value)||options[0].value===""?validResult:{value:options[0].value,isValid:!0}:validResult:defaultResult}return defaultResult},"getCheckboxValue");const defaultReturn={isValid:!1,value:null};var getRadioValue=__name(options=>Array.isArray(options)?options.reduce((previous,option)=>option&&option.checked&&!option.disabled?{isValid:!0,value:option.value}:previous,defaultReturn):defaultReturn,"getRadioValue");function getValidateError(result,ref,type="validate"){if(isMessage(result)||Array.isArray(result)&&result.every(isMessage)||isBoolean(result)&&!result)return{type,message:isMessage(result)?result:"",ref}}__name(getValidateError,"getValidateError");var getValueAndMessage=__name(validationData=>isObject(validationData)&&!isRegex(validationData)?validationData:{value:validationData,message:""},"getValueAndMessage"),validateField=__name(async(field,formValues,validateAllFieldCriteria,shouldUseNativeValidation,isFieldArray)=>{const{ref,refs,required,maxLength,minLength,min,max,pattern,validate,name,valueAsNumber,mount,disabled}=field._f,inputValue=get(formValues,name);if(!mount||disabled)return{};const inputRef=refs?refs[0]:ref,setCustomValidity=__name(message=>{shouldUseNativeValidation&&inputRef.reportValidity&&(inputRef.setCustomValidity(isBoolean(message)?"":message||""),inputRef.reportValidity())},"setCustomValidity"),error={},isRadio=isRadioInput(ref),isCheckBox=isCheckBoxInput(ref),isRadioOrCheckbox2=isRadio||isCheckBox,isEmpty=(valueAsNumber||isFileInput(ref))&&isUndefined(ref.value)&&isUndefined(inputValue)||isHTMLElement(ref)&&ref.value===""||inputValue===""||Array.isArray(inputValue)&&!inputValue.length,appendErrorsCurry=appendErrors.bind(null,name,validateAllFieldCriteria,error),getMinMaxMessage=__name((exceedMax,maxLengthMessage,minLengthMessage,maxType=INPUT_VALIDATION_RULES.maxLength,minType=INPUT_VALIDATION_RULES.minLength)=>{const message=exceedMax?maxLengthMessage:minLengthMessage;error[name]={type:exceedMax?maxType:minType,message,ref,...appendErrorsCurry(exceedMax?maxType:minType,message)}},"getMinMaxMessage");if(isFieldArray?!Array.isArray(inputValue)||!inputValue.length:required&&(!isRadioOrCheckbox2&&(isEmpty||isNullOrUndefined(inputValue))||isBoolean(inputValue)&&!inputValue||isCheckBox&&!getCheckboxValue(refs).isValid||isRadio&&!getRadioValue(refs).isValid)){const{value,message}=isMessage(required)?{value:!!required,message:required}:getValueAndMessage(required);if(value&&(error[name]={type:INPUT_VALIDATION_RULES.required,message,ref:inputRef,...appendErrorsCurry(INPUT_VALIDATION_RULES.required,message)},!validateAllFieldCriteria))return setCustomValidity(message),error}if(!isEmpty&&(!isNullOrUndefined(min)||!isNullOrUndefined(max))){let exceedMax,exceedMin;const maxOutput=getValueAndMessage(max),minOutput=getValueAndMessage(min);if(!isNullOrUndefined(inputValue)&&!isNaN(inputValue)){const valueNumber=ref.valueAsNumber||inputValue&&+inputValue;isNullOrUndefined(maxOutput.value)||(exceedMax=valueNumber>maxOutput.value),isNullOrUndefined(minOutput.value)||(exceedMin=valueNumber<minOutput.value)}else{const valueDate=ref.valueAsDate||new Date(inputValue),convertTimeToDate=__name(time=>new Date(new Date().toDateString()+" "+time),"convertTimeToDate"),isTime=ref.type=="time",isWeek=ref.type=="week";isString(maxOutput.value)&&inputValue&&(exceedMax=isTime?convertTimeToDate(inputValue)>convertTimeToDate(maxOutput.value):isWeek?inputValue>maxOutput.value:valueDate>new Date(maxOutput.value)),isString(minOutput.value)&&inputValue&&(exceedMin=isTime?convertTimeToDate(inputValue)<convertTimeToDate(minOutput.value):isWeek?inputValue<minOutput.value:valueDate<new Date(minOutput.value))}if((exceedMax||exceedMin)&&(getMinMaxMessage(!!exceedMax,maxOutput.message,minOutput.message,INPUT_VALIDATION_RULES.max,INPUT_VALIDATION_RULES.min),!validateAllFieldCriteria))return setCustomValidity(error[name].message),error}if((maxLength||minLength)&&!isEmpty&&(isString(inputValue)||isFieldArray&&Array.isArray(inputValue))){const maxLengthOutput=getValueAndMessage(maxLength),minLengthOutput=getValueAndMessage(minLength),exceedMax=!isNullOrUndefined(maxLengthOutput.value)&&inputValue.length>+maxLengthOutput.value,exceedMin=!isNullOrUndefined(minLengthOutput.value)&&inputValue.length<+minLengthOutput.value;if((exceedMax||exceedMin)&&(getMinMaxMessage(exceedMax,maxLengthOutput.message,minLengthOutput.message),!validateAllFieldCriteria))return setCustomValidity(error[name].message),error}if(pattern&&!isEmpty&&isString(inputValue)){const{value:patternValue,message}=getValueAndMessage(pattern);if(isRegex(patternValue)&&!inputValue.match(patternValue)&&(error[name]={type:INPUT_VALIDATION_RULES.pattern,message,ref,...appendErrorsCurry(INPUT_VALIDATION_RULES.pattern,message)},!validateAllFieldCriteria))return setCustomValidity(message),error}if(validate){if(isFunction(validate)){const result=await validate(inputValue,formValues),validateError=getValidateError(result,inputRef);if(validateError&&(error[name]={...validateError,...appendErrorsCurry(INPUT_VALIDATION_RULES.validate,validateError.message)},!validateAllFieldCriteria))return setCustomValidity(validateError.message),error}else if(isObject(validate)){let validationResult={};for(const key in validate){if(!isEmptyObject(validationResult)&&!validateAllFieldCriteria)break;const validateError=getValidateError(await validate[key](inputValue,formValues),inputRef,key);validateError&&(validationResult={...validateError,...appendErrorsCurry(key,validateError.message)},setCustomValidity(validateError.message),validateAllFieldCriteria&&(error[name]=validationResult))}if(!isEmptyObject(validationResult)&&(error[name]={ref:inputRef,...validationResult},!validateAllFieldCriteria))return error}}return setCustomValidity(!0),error},"validateField");function baseGet(object,updatePath){const length=updatePath.slice(0,-1).length;let index=0;for(;index<length;)object=isUndefined(object)?index++:object[updatePath[index++]];return object}__name(baseGet,"baseGet");function isEmptyArray(obj){for(const key in obj)if(obj.hasOwnProperty(key)&&!isUndefined(obj[key]))return!1;return!0}__name(isEmptyArray,"isEmptyArray");function unset(object,path){const paths=Array.isArray(path)?path:isKey(path)?[path]:stringToPath(path),childObject=paths.length===1?object:baseGet(object,paths),index=paths.length-1,key=paths[index];return childObject&&delete childObject[key],index!==0&&(isObject(childObject)&&isEmptyObject(childObject)||Array.isArray(childObject)&&isEmptyArray(childObject))&&unset(object,paths.slice(0,-1)),object}__name(unset,"unset");function createSubject(){let _observers=[];return{get observers(){return _observers},next:__name(value=>{for(const observer of _observers)observer.next&&observer.next(value)},"next"),subscribe:__name(observer=>(_observers.push(observer),{unsubscribe:()=>{_observers=_observers.filter(o=>o!==observer)}}),"subscribe"),unsubscribe:__name(()=>{_observers=[]},"unsubscribe")}}__name(createSubject,"createSubject");var isPrimitive=__name(value=>isNullOrUndefined(value)||!isObjectType(value),"isPrimitive");function deepEqual(object1,object2){if(isPrimitive(object1)||isPrimitive(object2))return object1===object2;if(isDateObject(object1)&&isDateObject(object2))return object1.getTime()===object2.getTime();const keys1=Object.keys(object1),keys2=Object.keys(object2);if(keys1.length!==keys2.length)return!1;for(const key of keys1){const val1=object1[key];if(!keys2.includes(key))return!1;if(key!=="ref"){const val2=object2[key];if(isDateObject(val1)&&isDateObject(val2)||isObject(val1)&&isObject(val2)||Array.isArray(val1)&&Array.isArray(val2)?!deepEqual(val1,val2):val1!==val2)return!1}}return!0}__name(deepEqual,"deepEqual");var isMultipleSelect=__name(element=>element.type==="select-multiple","isMultipleSelect"),isRadioOrCheckbox=__name(ref=>isRadioInput(ref)||isCheckBoxInput(ref),"isRadioOrCheckbox"),live=__name(ref=>isHTMLElement(ref)&&ref.isConnected,"live"),objectHasFunction=__name(data=>{for(const key in data)if(isFunction(data[key]))return!0;return!1},"objectHasFunction");function markFieldsDirty(data,fields={}){const isParentNodeArray=Array.isArray(data);if(isObject(data)||isParentNodeArray)for(const key in data)Array.isArray(data[key])||isObject(data[key])&&!objectHasFunction(data[key])?(fields[key]=Array.isArray(data[key])?[]:{},markFieldsDirty(data[key],fields[key])):isNullOrUndefined(data[key])||(fields[key]=!0);return fields}__name(markFieldsDirty,"markFieldsDirty");function getDirtyFieldsFromDefaultValues(data,formValues,dirtyFieldsFromValues){const isParentNodeArray=Array.isArray(data);if(isObject(data)||isParentNodeArray)for(const key in data)Array.isArray(data[key])||isObject(data[key])&&!objectHasFunction(data[key])?isUndefined(formValues)||isPrimitive(dirtyFieldsFromValues[key])?dirtyFieldsFromValues[key]=Array.isArray(data[key])?markFieldsDirty(data[key],[]):{...markFieldsDirty(data[key])}:getDirtyFieldsFromDefaultValues(data[key],isNullOrUndefined(formValues)?{}:formValues[key],dirtyFieldsFromValues[key]):dirtyFieldsFromValues[key]=!deepEqual(data[key],formValues[key]);return dirtyFieldsFromValues}__name(getDirtyFieldsFromDefaultValues,"getDirtyFieldsFromDefaultValues");var getDirtyFields=__name((defaultValues,formValues)=>getDirtyFieldsFromDefaultValues(defaultValues,formValues,markFieldsDirty(formValues)),"getDirtyFields"),getFieldValueAs=__name((value,{valueAsNumber,valueAsDate,setValueAs})=>isUndefined(value)?value:valueAsNumber?value===""?NaN:value&&+value:valueAsDate&&isString(value)?new Date(value):setValueAs?setValueAs(value):value,"getFieldValueAs");function getFieldValue(_f){const ref=_f.ref;if(!(_f.refs?_f.refs.every(ref2=>ref2.disabled):ref.disabled))return isFileInput(ref)?ref.files:isRadioInput(ref)?getRadioValue(_f.refs).value:isMultipleSelect(ref)?[...ref.selectedOptions].map(({value})=>value):isCheckBoxInput(ref)?getCheckboxValue(_f.refs).value:getFieldValueAs(isUndefined(ref.value)?_f.ref.value:ref.value,_f)}__name(getFieldValue,"getFieldValue");var getResolverOptions=__name((fieldsNames,_fields,criteriaMode,shouldUseNativeValidation)=>{const fields={};for(const name of fieldsNames){const field=get(_fields,name);field&&set(fields,name,field._f)}return{criteriaMode,names:[...fieldsNames],fields,shouldUseNativeValidation}},"getResolverOptions"),getRuleValue=__name(rule=>isUndefined(rule)?rule:isRegex(rule)?rule.source:isObject(rule)?isRegex(rule.value)?rule.value.source:rule.value:rule,"getRuleValue"),hasValidation=__name(options=>options.mount&&(options.required||options.min||options.max||options.maxLength||options.minLength||options.pattern||options.validate),"hasValidation");function schemaErrorLookup(errors,_fields,name){const error=get(errors,name);if(error||isKey(name))return{error,name};const names=name.split(".");for(;names.length;){const fieldName=names.join("."),field=get(_fields,fieldName),foundError=get(errors,fieldName);if(field&&!Array.isArray(field)&&name!==fieldName)return{name};if(foundError&&foundError.type)return{name:fieldName,error:foundError};names.pop()}return{name}}__name(schemaErrorLookup,"schemaErrorLookup");var skipValidation=__name((isBlurEvent,isTouched,isSubmitted,reValidateMode,mode)=>mode.isOnAll?!1:!isSubmitted&&mode.isOnTouch?!(isTouched||isBlurEvent):(isSubmitted?reValidateMode.isOnBlur:mode.isOnBlur)?!isBlurEvent:(isSubmitted?reValidateMode.isOnChange:mode.isOnChange)?isBlurEvent:!0,"skipValidation"),unsetEmptyArray=__name((ref,name)=>!compact(get(ref,name)).length&&unset(ref,name),"unsetEmptyArray");const defaultOptions={mode:VALIDATION_MODE.onSubmit,reValidateMode:VALIDATION_MODE.onChange,shouldFocusError:!0};function createFormControl(props={},flushRootRender){let _options={...defaultOptions,...props},_formState={submitCount:0,isDirty:!1,isLoading:isFunction(_options.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},errors:{},disabled:!1},_fields={},_defaultValues=isObject(_options.defaultValues)||isObject(_options.values)?cloneObject(_options.defaultValues||_options.values)||{}:{},_formValues=_options.shouldUnregister?{}:cloneObject(_defaultValues),_state={action:!1,mount:!1,watch:!1},_names={mount:new Set,unMount:new Set,array:new Set,watch:new Set},delayErrorCallback,timer=0;const _proxyFormState={isDirty:!1,dirtyFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},_subjects={values:createSubject(),array:createSubject(),state:createSubject()},shouldCaptureDirtyFields=props.resetOptions&&props.resetOptions.keepDirtyValues,validationModeBeforeSubmit=getValidationModes(_options.mode),validationModeAfterSubmit=getValidationModes(_options.reValidateMode),shouldDisplayAllAssociatedErrors=_options.criteriaMode===VALIDATION_MODE.all,debounce=__name(callback=>wait=>{clearTimeout(timer),timer=setTimeout(callback,wait)},"debounce"),_updateValid=__name(async shouldUpdateValid=>{if(_proxyFormState.isValid||shouldUpdateValid){const isValid=_options.resolver?isEmptyObject((await _executeSchema()).errors):await executeBuiltInValidation(_fields,!0);isValid!==_formState.isValid&&_subjects.state.next({isValid})}},"_updateValid"),_updateIsValidating=__name(value=>_proxyFormState.isValidating&&_subjects.state.next({isValidating:value}),"_updateIsValidating"),_updateFieldArray=__name((name,values=[],method,args,shouldSetValues=!0,shouldUpdateFieldsAndState=!0)=>{if(args&&method){if(_state.action=!0,shouldUpdateFieldsAndState&&Array.isArray(get(_fields,name))){const fieldValues=method(get(_fields,name),args.argA,args.argB);shouldSetValues&&set(_fields,name,fieldValues)}if(shouldUpdateFieldsAndState&&Array.isArray(get(_formState.errors,name))){const errors=method(get(_formState.errors,name),args.argA,args.argB);shouldSetValues&&set(_formState.errors,name,errors),unsetEmptyArray(_formState.errors,name)}if(_proxyFormState.touchedFields&&shouldUpdateFieldsAndState&&Array.isArray(get(_formState.touchedFields,name))){const touchedFields=method(get(_formState.touchedFields,name),args.argA,args.argB);shouldSetValues&&set(_formState.touchedFields,name,touchedFields)}_proxyFormState.dirtyFields&&(_formState.dirtyFields=getDirtyFields(_defaultValues,_formValues)),_subjects.state.next({name,isDirty:_getDirty(name,values),dirtyFields:_formState.dirtyFields,errors:_formState.errors,isValid:_formState.isValid})}else set(_formValues,name,values)},"_updateFieldArray"),updateErrors=__name((name,error)=>{set(_formState.errors,name,error),_subjects.state.next({errors:_formState.errors})},"updateErrors"),updateValidAndValue=__name((name,shouldSkipSetValueAs,value,ref)=>{const field=get(_fields,name);if(field){const defaultValue=get(_formValues,name,isUndefined(value)?get(_defaultValues,name):value);isUndefined(defaultValue)||ref&&ref.defaultChecked||shouldSkipSetValueAs?set(_formValues,name,shouldSkipSetValueAs?defaultValue:getFieldValue(field._f)):setFieldValue(name,defaultValue),_state.mount&&_updateValid()}},"updateValidAndValue"),updateTouchAndDirty=__name((name,fieldValue,isBlurEvent,shouldDirty,shouldRender)=>{let shouldUpdateField=!1,isPreviousDirty=!1;const output={name};if(!isBlurEvent||shouldDirty){_proxyFormState.isDirty&&(isPreviousDirty=_formState.isDirty,_formState.isDirty=output.isDirty=_getDirty(),shouldUpdateField=isPreviousDirty!==output.isDirty);const isCurrentFieldPristine=deepEqual(get(_defaultValues,name),fieldValue);isPreviousDirty=get(_formState.dirtyFields,name),isCurrentFieldPristine?unset(_formState.dirtyFields,name):set(_formState.dirtyFields,name,!0),output.dirtyFields=_formState.dirtyFields,shouldUpdateField=shouldUpdateField||_proxyFormState.dirtyFields&&isPreviousDirty!==!isCurrentFieldPristine}if(isBlurEvent){const isPreviousFieldTouched=get(_formState.touchedFields,name);isPreviousFieldTouched||(set(_formState.touchedFields,name,isBlurEvent),output.touchedFields=_formState.touchedFields,shouldUpdateField=shouldUpdateField||_proxyFormState.touchedFields&&isPreviousFieldTouched!==isBlurEvent)}return shouldUpdateField&&shouldRender&&_subjects.state.next(output),shouldUpdateField?output:{}},"updateTouchAndDirty"),shouldRenderByError=__name((name,isValid,error,fieldState)=>{const previousFieldError=get(_formState.errors,name),shouldUpdateValid=_proxyFormState.isValid&&isBoolean(isValid)&&_formState.isValid!==isValid;if(props.delayError&&error?(delayErrorCallback=debounce(()=>updateErrors(name,error)),delayErrorCallback(props.delayError)):(clearTimeout(timer),delayErrorCallback=null,error?set(_formState.errors,name,error):unset(_formState.errors,name)),(error?!deepEqual(previousFieldError,error):previousFieldError)||!isEmptyObject(fieldState)||shouldUpdateValid){const updatedFormState={...fieldState,...shouldUpdateValid&&isBoolean(isValid)?{isValid}:{},errors:_formState.errors,name};_formState={..._formState,...updatedFormState},_subjects.state.next(updatedFormState)}_updateIsValidating(!1)},"shouldRenderByError"),_executeSchema=__name(async name=>_options.resolver(_formValues,_options.context,getResolverOptions(name||_names.mount,_fields,_options.criteriaMode,_options.shouldUseNativeValidation)),"_executeSchema"),executeSchemaAndUpdateState=__name(async names=>{const{errors}=await _executeSchema(names);if(names)for(const name of names){const error=get(errors,name);error?set(_formState.errors,name,error):unset(_formState.errors,name)}else _formState.errors=errors;return errors},"executeSchemaAndUpdateState"),executeBuiltInValidation=__name(async(fields,shouldOnlyCheckValid,context={valid:!0})=>{for(const name in fields){const field=fields[name];if(field){const{_f,...fieldValue}=field;if(_f){const isFieldArrayRoot=_names.array.has(_f.name),fieldError=await validateField(field,_formValues,shouldDisplayAllAssociatedErrors,_options.shouldUseNativeValidation&&!shouldOnlyCheckValid,isFieldArrayRoot);if(fieldError[_f.name]&&(context.valid=!1,shouldOnlyCheckValid))break;!shouldOnlyCheckValid&&(get(fieldError,_f.name)?isFieldArrayRoot?updateFieldArrayRootError(_formState.errors,fieldError,_f.name):set(_formState.errors,_f.name,fieldError[_f.name]):unset(_formState.errors,_f.name))}fieldValue&&await executeBuiltInValidation(fieldValue,shouldOnlyCheckValid,context)}}return context.valid},"executeBuiltInValidation"),_removeUnmounted=__name(()=>{for(const name of _names.unMount){const field=get(_fields,name);field&&(field._f.refs?field._f.refs.every(ref=>!live(ref)):!live(field._f.ref))&&unregister(name)}_names.unMount=new Set},"_removeUnmounted"),_getDirty=__name((name,data)=>(name&&data&&set(_formValues,name,data),!deepEqual(getValues(),_defaultValues)),"_getDirty"),_getWatch=__name((names,defaultValue,isGlobal)=>generateWatchOutput(names,_names,{..._state.mount?_formValues:isUndefined(defaultValue)?_defaultValues:isString(names)?{[names]:defaultValue}:defaultValue},isGlobal,defaultValue),"_getWatch"),_getFieldArray=__name(name=>compact(get(_state.mount?_formValues:_defaultValues,name,props.shouldUnregister?get(_defaultValues,name,[]):[])),"_getFieldArray"),setFieldValue=__name((name,value,options={})=>{const field=get(_fields,name);let fieldValue=value;if(field){const fieldReference=field._f;fieldReference&&(!fieldReference.disabled&&set(_formValues,name,getFieldValueAs(value,fieldReference)),fieldValue=isHTMLElement(fieldReference.ref)&&isNullOrUndefined(value)?"":value,isMultipleSelect(fieldReference.ref)?[...fieldReference.ref.options].forEach(optionRef=>optionRef.selected=fieldValue.includes(optionRef.value)):fieldReference.refs?isCheckBoxInput(fieldReference.ref)?fieldReference.refs.length>1?fieldReference.refs.forEach(checkboxRef=>(!checkboxRef.defaultChecked||!checkboxRef.disabled)&&(checkboxRef.checked=Array.isArray(fieldValue)?!!fieldValue.find(data=>data===checkboxRef.value):fieldValue===checkboxRef.value)):fieldReference.refs[0]&&(fieldReference.refs[0].checked=!!fieldValue):fieldReference.refs.forEach(radioRef=>radioRef.checked=radioRef.value===fieldValue):isFileInput(fieldReference.ref)?fieldReference.ref.value="":(fieldReference.ref.value=fieldValue,fieldReference.ref.type||_subjects.values.next({name,values:{..._formValues}})))}(options.shouldDirty||options.shouldTouch)&&updateTouchAndDirty(name,fieldValue,options.shouldTouch,options.shouldDirty,!0),options.shouldValidate&&trigger(name)},"setFieldValue"),setValues=__name((name,value,options)=>{for(const fieldKey in value){const fieldValue=value[fieldKey],fieldName=`${name}.${fieldKey}`,field=get(_fields,fieldName);(_names.array.has(name)||!isPrimitive(fieldValue)||field&&!field._f)&&!isDateObject(fieldValue)?setValues(fieldName,fieldValue,options):setFieldValue(fieldName,fieldValue,options)}},"setValues"),setValue=__name((name,value,options={})=>{const field=get(_fields,name),isFieldArray=_names.array.has(name),cloneValue=cloneObject(value);set(_formValues,name,cloneValue),isFieldArray?(_subjects.array.next({name,values:{..._formValues}}),(_proxyFormState.isDirty||_proxyFormState.dirtyFields)&&options.shouldDirty&&_subjects.state.next({name,dirtyFields:getDirtyFields(_defaultValues,_formValues),isDirty:_getDirty(name,cloneValue)})):field&&!field._f&&!isNullOrUndefined(cloneValue)?setValues(name,cloneValue,options):setFieldValue(name,cloneValue,options),isWatched(name,_names)&&_subjects.state.next({..._formState}),_subjects.values.next({name,values:{..._formValues}}),!_state.mount&&flushRootRender()},"setValue"),onChange=__name(async event=>{const target=event.target;let name=target.name,isFieldValueUpdated=!0;const field=get(_fields,name),getCurrentFieldValue=__name(()=>target.type?getFieldValue(field._f):getEventValue(event),"getCurrentFieldValue"),_updateIsFieldValueUpdated=__name(fieldValue=>{isFieldValueUpdated=Number.isNaN(fieldValue)||fieldValue===get(_formValues,name,fieldValue)},"_updateIsFieldValueUpdated");if(field){let error,isValid;const fieldValue=getCurrentFieldValue(),isBlurEvent=event.type===EVENTS.BLUR||event.type===EVENTS.FOCUS_OUT,shouldSkipValidation=!hasValidation(field._f)&&!_options.resolver&&!get(_formState.errors,name)&&!field._f.deps||skipValidation(isBlurEvent,get(_formState.touchedFields,name),_formState.isSubmitted,validationModeAfterSubmit,validationModeBeforeSubmit),watched=isWatched(name,_names,isBlurEvent);set(_formValues,name,fieldValue),isBlurEvent?(field._f.onBlur&&field._f.onBlur(event),delayErrorCallback&&delayErrorCallback(0)):field._f.onChange&&field._f.onChange(event);const fieldState=updateTouchAndDirty(name,fieldValue,isBlurEvent,!1),shouldRender=!isEmptyObject(fieldState)||watched;if(!isBlurEvent&&_subjects.values.next({name,type:event.type,values:{..._formValues}}),shouldSkipValidation)return _proxyFormState.isValid&&_updateValid(),shouldRender&&_subjects.state.next({name,...watched?{}:fieldState});if(!isBlurEvent&&watched&&_subjects.state.next({..._formState}),_updateIsValidating(!0),_options.resolver){const{errors}=await _executeSchema([name]);if(_updateIsFieldValueUpdated(fieldValue),isFieldValueUpdated){const previousErrorLookupResult=schemaErrorLookup(_formState.errors,_fields,name),errorLookupResult=schemaErrorLookup(errors,_fields,previousErrorLookupResult.name||name);error=errorLookupResult.error,name=errorLookupResult.name,isValid=isEmptyObject(errors)}}else error=(await validateField(field,_formValues,shouldDisplayAllAssociatedErrors,_options.shouldUseNativeValidation))[name],_updateIsFieldValueUpdated(fieldValue),isFieldValueUpdated&&(error?isValid=!1:_proxyFormState.isValid&&(isValid=await executeBuiltInValidation(_fields,!0)));isFieldValueUpdated&&(field._f.deps&&trigger(field._f.deps),shouldRenderByError(name,isValid,error,fieldState))}},"onChange"),_focusInput=__name((ref,key)=>{if(get(_formState.errors,key)&&ref.focus)return ref.focus(),1},"_focusInput"),trigger=__name(async(name,options={})=>{let isValid,validationResult;const fieldNames=convertToArrayPayload(name);if(_updateIsValidating(!0),_options.resolver){const errors=await executeSchemaAndUpdateState(isUndefined(name)?name:fieldNames);isValid=isEmptyObject(errors),validationResult=name?!fieldNames.some(name2=>get(errors,name2)):isValid}else name?(validationResult=(await Promise.all(fieldNames.map(async fieldName=>{const field=get(_fields,fieldName);return await executeBuiltInValidation(field&&field._f?{[fieldName]:field}:field)}))).every(Boolean),!(!validationResult&&!_formState.isValid)&&_updateValid()):validationResult=isValid=await executeBuiltInValidation(_fields);return _subjects.state.next({...!isString(name)||_proxyFormState.isValid&&isValid!==_formState.isValid?{}:{name},..._options.resolver||!name?{isValid}:{},errors:_formState.errors,isValidating:!1}),options.shouldFocus&&!validationResult&&iterateFieldsByAction(_fields,_focusInput,name?fieldNames:_names.mount),validationResult},"trigger"),getValues=__name(fieldNames=>{const values={..._defaultValues,..._state.mount?_formValues:{}};return isUndefined(fieldNames)?values:isString(fieldNames)?get(values,fieldNames):fieldNames.map(name=>get(values,name))},"getValues"),getFieldState=__name((name,formState)=>({invalid:!!get((formState||_formState).errors,name),isDirty:!!get((formState||_formState).dirtyFields,name),isTouched:!!get((formState||_formState).touchedFields,name),error:get((formState||_formState).errors,name)}),"getFieldState"),clearErrors=__name(name=>{name&&convertToArrayPayload(name).forEach(inputName=>unset(_formState.errors,inputName)),_subjects.state.next({errors:name?_formState.errors:{}})},"clearErrors"),setError=__name((name,error,options)=>{const ref=(get(_fields,name,{_f:{}})._f||{}).ref;set(_formState.errors,name,{...error,ref}),_subjects.state.next({name,errors:_formState.errors,isValid:!1}),options&&options.shouldFocus&&ref&&ref.focus&&ref.focus()},"setError"),watch=__name((name,defaultValue)=>isFunction(name)?_subjects.values.subscribe({next:payload=>name(_getWatch(void 0,defaultValue),payload)}):_getWatch(name,defaultValue,!0),"watch"),unregister=__name((name,options={})=>{for(const fieldName of name?convertToArrayPayload(name):_names.mount)_names.mount.delete(fieldName),_names.array.delete(fieldName),options.keepValue||(unset(_fields,fieldName),unset(_formValues,fieldName)),!options.keepError&&unset(_formState.errors,fieldName),!options.keepDirty&&unset(_formState.dirtyFields,fieldName),!options.keepTouched&&unset(_formState.touchedFields,fieldName),!_options.shouldUnregister&&!options.keepDefaultValue&&unset(_defaultValues,fieldName);_subjects.values.next({values:{..._formValues}}),_subjects.state.next({..._formState,...options.keepDirty?{isDirty:_getDirty()}:{}}),!options.keepIsValid&&_updateValid()},"unregister"),_updateDisabledField=__name(({disabled,name,field,fields,value})=>{if(isBoolean(disabled)){const inputValue=disabled?void 0:isUndefined(value)?getFieldValue(field?field._f:get(fields,name)._f):value;set(_formValues,name,inputValue),updateTouchAndDirty(name,inputValue,!1,!1,!0)}},"_updateDisabledField"),register=__name((name,options={})=>{let field=get(_fields,name);const disabledIsDefined=isBoolean(options.disabled);return set(_fields,name,{...field||{},_f:{...field&&field._f?field._f:{ref:{name}},name,mount:!0,...options}}),_names.mount.add(name),field?_updateDisabledField({field,disabled:options.disabled,name}):updateValidAndValue(name,!0,options.value),{...disabledIsDefined?{disabled:options.disabled}:{},..._options.progressive?{required:!!options.required,min:getRuleValue(options.min),max:getRuleValue(options.max),minLength:getRuleValue(options.minLength),maxLength:getRuleValue(options.maxLength),pattern:getRuleValue(options.pattern)}:{},name,onChange,onBlur:onChange,ref:ref=>{if(ref){register(name,options),field=get(_fields,name);const fieldRef=isUndefined(ref.value)&&ref.querySelectorAll&&ref.querySelectorAll("input,select,textarea")[0]||ref,radioOrCheckbox=isRadioOrCheckbox(fieldRef),refs=field._f.refs||[];if(radioOrCheckbox?refs.find(option=>option===fieldRef):fieldRef===field._f.ref)return;set(_fields,name,{_f:{...field._f,...radioOrCheckbox?{refs:[...refs.filter(live),fieldRef,...Array.isArray(get(_defaultValues,name))?[{}]:[]],ref:{type:fieldRef.type,name}}:{ref:fieldRef}}}),updateValidAndValue(name,!1,void 0,fieldRef)}else field=get(_fields,name,{}),field._f&&(field._f.mount=!1),(_options.shouldUnregister||options.shouldUnregister)&&!(isNameInFieldArray(_names.array,name)&&_state.action)&&_names.unMount.add(name)}}},"register"),_focusError=__name(()=>_options.shouldFocusError&&iterateFieldsByAction(_fields,_focusInput,_names.mount),"_focusError"),_disableForm=__name(disabled=>{isBoolean(disabled)&&(_subjects.state.next({disabled}),iterateFieldsByAction(_fields,ref=>{ref.disabled=disabled},0,!1))},"_disableForm"),handleSubmit=__name((onValid,onInvalid)=>async e=>{e&&(e.preventDefault&&e.preventDefault(),e.persist&&e.persist());let fieldValues=cloneObject(_formValues);if(_subjects.state.next({isSubmitting:!0}),_options.resolver){const{errors,values}=await _executeSchema();_formState.errors=errors,fieldValues=values}else await executeBuiltInValidation(_fields);unset(_formState.errors,"root"),isEmptyObject(_formState.errors)?(_subjects.state.next({errors:{}}),await onValid(fieldValues,e)):(onInvalid&&await onInvalid({..._formState.errors},e),_focusError(),setTimeout(_focusError)),_subjects.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:isEmptyObject(_formState.errors),submitCount:_formState.submitCount+1,errors:_formState.errors})},"handleSubmit"),resetField=__name((name,options={})=>{get(_fields,name)&&(isUndefined(options.defaultValue)?setValue(name,get(_defaultValues,name)):(setValue(name,options.defaultValue),set(_defaultValues,name,options.defaultValue)),options.keepTouched||unset(_formState.touchedFields,name),options.keepDirty||(unset(_formState.dirtyFields,name),_formState.isDirty=options.defaultValue?_getDirty(name,get(_defaultValues,name)):_getDirty()),options.keepError||(unset(_formState.errors,name),_proxyFormState.isValid&&_updateValid()),_subjects.state.next({..._formState}))},"resetField"),_reset=__name((formValues,keepStateOptions={})=>{const updatedValues=formValues?cloneObject(formValues):_defaultValues,cloneUpdatedValues=cloneObject(updatedValues),values=formValues&&!isEmptyObject(formValues)?cloneUpdatedValues:_defaultValues;if(keepStateOptions.keepDefaultValues||(_defaultValues=updatedValues),!keepStateOptions.keepValues){if(keepStateOptions.keepDirtyValues||shouldCaptureDirtyFields)for(const fieldName of _names.mount)get(_formState.dirtyFields,fieldName)?set(values,fieldName,get(_formValues,fieldName)):setValue(fieldName,get(values,fieldName));else{if(isWeb&&isUndefined(formValues))for(const name of _names.mount){const field=get(_fields,name);if(field&&field._f){const fieldReference=Array.isArray(field._f.refs)?field._f.refs[0]:field._f.ref;if(isHTMLElement(fieldReference)){const form=fieldReference.closest("form");if(form){form.reset();break}}}}_fields={}}_formValues=props.shouldUnregister?keepStateOptions.keepDefaultValues?cloneObject(_defaultValues):{}:cloneObject(values),_subjects.array.next({values:{...values}}),_subjects.values.next({values:{...values}})}_names={mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},!_state.mount&&flushRootRender(),_state.mount=!_proxyFormState.isValid||!!keepStateOptions.keepIsValid,_state.watch=!!props.shouldUnregister,_subjects.state.next({submitCount:keepStateOptions.keepSubmitCount?_formState.submitCount:0,isDirty:keepStateOptions.keepDirty?_formState.isDirty:!!(keepStateOptions.keepDefaultValues&&!deepEqual(formValues,_defaultValues)),isSubmitted:keepStateOptions.keepIsSubmitted?_formState.isSubmitted:!1,dirtyFields:keepStateOptions.keepDirtyValues?_formState.dirtyFields:keepStateOptions.keepDefaultValues&&formValues?getDirtyFields(_defaultValues,formValues):{},touchedFields:keepStateOptions.keepTouched?_formState.touchedFields:{},errors:keepStateOptions.keepErrors?_formState.errors:{},isSubmitSuccessful:keepStateOptions.keepIsSubmitSuccessful?_formState.isSubmitSuccessful:!1,isSubmitting:!1})},"_reset"),reset=__name((formValues,keepStateOptions)=>_reset(isFunction(formValues)?formValues(_formValues):formValues,keepStateOptions),"reset");return{control:{register,unregister,getFieldState,handleSubmit,setError,_executeSchema,_getWatch,_getDirty,_updateValid,_removeUnmounted,_updateFieldArray,_updateDisabledField,_getFieldArray,_reset,_resetDefaultValues:__name(()=>isFunction(_options.defaultValues)&&_options.defaultValues().then(values=>{reset(values,_options.resetOptions),_subjects.state.next({isLoading:!1})}),"_resetDefaultValues"),_updateFormState:__name(updatedFormState=>{_formState={..._formState,...updatedFormState}},"_updateFormState"),_disableForm,_subjects,_proxyFormState,get _fields(){return _fields},get _formValues(){return _formValues},get _state(){return _state},set _state(value){_state=value},get _defaultValues(){return _defaultValues},get _names(){return _names},set _names(value){_names=value},get _formState(){return _formState},set _formState(value){_formState=value},get _options(){return _options},set _options(value){_options={..._options,...value}}},trigger,register,handleSubmit,watch,setValue,getValues,reset,resetField,clearErrors,unregister,setError,setFocus:__name((name,options={})=>{const field=get(_fields,name),fieldReference=field&&field._f;if(fieldReference){const fieldRef=fieldReference.refs?fieldReference.refs[0]:fieldReference.ref;fieldRef.focus&&(fieldRef.focus(),options.shouldSelect&&fieldRef.select())}},"setFocus"),getFieldState}}__name(createFormControl,"createFormControl");function useForm(props={}){const _formControl=React.useRef(),_values=React.useRef(),[formState,updateFormState]=React.useState({isDirty:!1,isValidating:!1,isLoading:isFunction(props.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},errors:{},disabled:!1,defaultValues:isFunction(props.defaultValues)?void 0:props.defaultValues});_formControl.current||(_formControl.current={...createFormControl(props,()=>updateFormState(formState2=>({...formState2}))),formState});const control=_formControl.current.control;return control._options=props,useSubscribe({subject:control._subjects.state,next:value=>{shouldRenderFormState(value,control._proxyFormState,control._updateFormState,!0)&&updateFormState({...control._formState})}}),React.useEffect(()=>control._disableForm(props.disabled),[control,props.disabled]),React.useEffect(()=>{if(control._proxyFormState.isDirty){const isDirty=control._getDirty();isDirty!==formState.isDirty&&control._subjects.state.next({isDirty})}},[control,formState.isDirty]),React.useEffect(()=>{props.values&&!deepEqual(props.values,_values.current)?(control._reset(props.values,control._options.resetOptions),_values.current=props.values):control._resetDefaultValues()},[props.values,control]),React.useEffect(()=>{control._state.mount||(control._updateValid(),control._state.mount=!0),control._state.watch&&(control._state.watch=!1,control._subjects.state.next({...control._formState})),control._removeUnmounted()}),_formControl.current.formState=getProxyFormState(formState,control),_formControl.current}__name(useForm,"useForm");var loadCSS={};/*! loadCSS. [c]2020 Filament Group, Inc. MIT License */(function(exports){(function(w){var loadCSS2=__name(function(href,before,media,attributes){var doc=w.document,ss=doc.createElement("link"),ref;if(before)ref=before;else{var refs=(doc.body||doc.getElementsByTagName("head")[0]).childNodes;ref=refs[refs.length-1]}var sheets=doc.styleSheets;if(attributes)for(var attributeName in attributes)attributes.hasOwnProperty(attributeName)&&ss.setAttribute(attributeName,attributes[attributeName]);ss.rel="stylesheet",ss.href=href,ss.media="only x";function ready(cb){if(doc.body)return cb();setTimeout(function(){ready(cb)})}__name(ready,"ready"),ready(function(){ref.parentNode.insertBefore(ss,before?ref:ref.nextSibling)});var onloadcssdefined=__name(function(cb){for(var resolvedHref=ss.href,i=sheets.length;i--;)if(sheets[i].href===resolvedHref)return cb();setTimeout(function(){onloadcssdefined(cb)})},"onloadcssdefined");function loadCB(){ss.addEventListener&&ss.removeEventListener("load",loadCB),ss.media=media||"all"}return __name(loadCB,"loadCB"),ss.addEventListener&&ss.addEventListener("load",loadCB),ss.onloadcssdefined=onloadcssdefined,onloadcssdefined(loadCB),ss},"loadCSS");exports.loadCSS=loadCSS2})(typeof commonjsGlobal<"u"?commonjsGlobal:commonjsGlobal)})(loadCSS);function FontAwesomeIcon({color,fontSize}){return reactExports.useEffect(()=>{const doc=document.querySelector("#font-awesome-css")||document.head.firstChild,node=loadCSS.loadCSS("https://use.fontawesome.com/releases/v5.14.0/css/all.css",doc);return()=>{node.parentNode.removeChild(node)}},[]),jsxDevRuntimeExports.jsxDEV(Box,{sx:{"& > :not(style)":{m:2}},children:jsxDevRuntimeExports.jsxDEV(Icon,{baseClassName:"fas",className:"fa-plus-circle",fontSize:fontSize||"small",color},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/icons/FontAweIcon.tsx",lineNumber:22,columnNumber:7},this)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/icons/FontAweIcon.tsx",lineNumber:21,columnNumber:5},this)}__name(FontAwesomeIcon,"FontAwesomeIcon");const Text=styled(InputText)(()=>({left:0,top:0,display:"block",position:"relative"})),Wrapper=styled(()=>jsxDevRuntimeExports.jsxDEV("div",{},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:15,columnNumber:30},void 0))(()=>({position:"relative",overflow:"Hidden",display:"inline-block"})),File=styled(Input)(()=>({padding:0,"border-radius":0,position:"absolute",left:0,top:0,opacity:0,cursor:"pointer"})),ButtonWrap=styled(Button)(()=>({marginRight:"0px !important",marginLeft:"0px !important",borderRadius:"0.2rem 0.5rem 0.5rem 0.2rem"})),Ini_Validate=[{value:"size",condition:"compareMore",message:"Vui lòng chọn file dưới"},{value:"type",condition:"same",message:"Vui lòng chọn file loại"}],InputFile=__name(props=>{const{name,accept,placeholder,onChange,required,value,validation}=props,[valueState,setValueState]=React.useState(""),checkValidate=reactExports.useCallback(data=>{let allow=!0;return Ini_Validate.forEach(cur=>{if(allow&&validation&&validation[cur.value])switch(cur.condition){case"same":validation[cur.value]===data[cur.value]&&(allow=!1,cur.message+""+validation[cur.value]);break;default:validation[cur.value]<data[cur.value]/1e6&&(allow=!1,cur.message+""+validation[cur.value]);break}}),allow},[validation]);return jsxDevRuntimeExports.jsxDEV("div",{children:jsxDevRuntimeExports.jsxDEV("div",{style:{display:"flex"},children:[jsxDevRuntimeExports.jsxDEV(Text,{value:valueState||value,placeholder,disabled:"disabled"},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:85,columnNumber:9},void 0),jsxDevRuntimeExports.jsxDEV(Wrapper,{children:[jsxDevRuntimeExports.jsxDEV(ButtonWrap,{color:"info",style:{height:"100%",width:"100%"},children:jsxDevRuntimeExports.jsxDEV(FontAwesomeIcon,{fa:"folder-open"},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:88,columnNumber:13},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:87,columnNumber:11},void 0),jsxDevRuntimeExports.jsxDEV(File,{name,required,type:"file",onChange:e=>{let file=e.target.files[0];checkValidate(file)&&(setValueState(file?file.name:""),onChange&&onChange(file))}},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:90,columnNumber:11},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:86,columnNumber:9},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:84,columnNumber:7},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/InputFile.tsx",lineNumber:83,columnNumber:5},void 0)},"InputFile");InputFile.defaultProps={value:""};var s=__name(function(s2){var t=s2.as,a=s2.errors,m=s2.name,o=s2.message,i=s2.render,l=function(e,r){if(e==null)return{};var n,s3,t2={},a2=Object.keys(e);for(s3=0;s3<a2.length;s3++)r.indexOf(n=a2[s3])>=0||(t2[n]=e[n]);return t2}(s2,["as","errors","name","message","render"]),f=useFormContext(),c=get(a||f.formState.errors,m);if(!c)return null;var g=c.message,u=c.types,d=Object.assign({},l,{children:g||o});return reactExports.isValidElement(t)?reactExports.cloneElement(t,d):i?i({message:g||o,messages:u}):reactExports.createElement(t||reactExports.Fragment,d)},"s");const StyledAutocomplete=withStyles({tag:{color:"#ad4e64",border:"1px solid #ad4e64",background:"transparent",svg:{color:"#ad4e64 !important"}}})(Autocomplete),OPTIONS_TYPE={NEW:"new"},filter=createFilterOptions();function TagAddInline({value,style,placeholder,disabled,name,onChange}){const tagOptions=[],[tags,setTags]=reactExports.useState([]),[defaultTags,setDefaultTags]=reactExports.useState([]),[tagName,setTagName]=reactExports.useState("helo"),[selectedTag,setSelectedTag]=reactExports.useState(null),[selectedAddTag,setSelectedAddTag]=reactExports.useState(null);return reactExports.useState(!1),reactExports.useEffect(()=>{if(value){const arrTag=value.split(",").map((cur,index)=>({name:cur,id:index+1,value:cur}));setTags(arrTag)}},[value]),reactExports.useEffect(()=>{selectedTag===null&&setTagName("")},[selectedTag,selectedAddTag]),jsxDevRuntimeExports.jsxDEV("div",{children:jsxDevRuntimeExports.jsxDEV(Grid,{container:!0,spacing:2,children:jsxDevRuntimeExports.jsxDEV(Grid,{item:!0,children:jsxDevRuntimeExports.jsxDEV(StyledAutocomplete,{placeholder,id:"combo-box-demo",options:tagOptions,defaultValue:defaultTags,value:tags,multiple:!0,getOptionLabel:option=>typeof option=="string"?option:option==null?void 0:option.name,style:{width:300},inputValue:tagName,renderInput:params=>jsxDevRuntimeExports.jsxDEV(TextField,{...params,variant:"outlined"},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/inputTag.tsx",lineNumber:88,columnNumber:38},this),onInputChange:(event,value2)=>{setTagName(value2)},onClose:(event,reason)=>{reason==="blur"&&setSelectedTag(null)},onChange:(event,value2,reason)=>{switch(reason){case"clear":setTags([]),onChange("");break;case"removeOption":setTags(value2);const valueTag=value2.reduce((strTag,cur,index)=>(strTag+=index>0?`,${cur.name}`:cur.name,strTag),"");onChange(valueTag);break;case"selectOption":const lastItem=value2[value2.length-1];if(typeof lastItem=="string"){setSelectedTag(null);break}if(tags.some(tagItem=>tagItem.id===lastItem.id))setSelectedTag(null);else{setSelectedTag(lastItem),setTags(pre=>[...pre,{id:pre.length+1,name:lastItem.value,value:lastItem.value}]);const valueTag2=value2.reduce((strTag,cur,index)=>(strTag+=index>0?`,${cur.value}`:cur.value,strTag),"");onChange(valueTag2)}break}},freeSolo:!0,selectOnFocus:!0,handleHomeEndKeys:!0,filterOptions:(options,params)=>{const filtered=filter(options,params);return params.inputValue!==""&&filtered.push({type:OPTIONS_TYPE.NEW,value:params.inputValue,name:`Thêm "${params.inputValue}"`}),filtered}},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/inputTag.tsx",lineNumber:72,columnNumber:11},this)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/inputTag.tsx",lineNumber:71,columnNumber:9},this)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/inputTag.tsx",lineNumber:70,columnNumber:7},this)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/inputs/inputTag.tsx",lineNumber:69,columnNumber:5},this)}__name(TagAddInline,"TagAddInline");const renderControl=__name((props,disabled)=>{let{data,onChange,value,isDetail}=props;const setPlaceholder=__name(name=>`Nhập ${name.toLowerCase()}`,"setPlaceholder");switch(isDetail&&data.type!=="data-select"?"label":data.type){case"label":return jsxDevRuntimeExports.jsxDEV("span",{children:data.type==="datetime"?formatDate(value):data.type==="radio-list"?value===2?value="Thông báo giá":value="Kê khai giá":value},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:20,columnNumber:9},void 0);case"textbox":return jsxDevRuntimeExports.jsxDEV(TextField,{style:{width:"-webkit-fill-available"},size:"small",disabled:disabled||(data.disabled?data.disabled:!1),name:data.field_name,value:value??"",onChange:e=>onChange&&onChange(e.target.name,e.target.value),placeholder:setPlaceholder(data.title),type:data.typeInput?data.typeInput:"text"},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:32,columnNumber:9},void 0);case"tag":return jsxDevRuntimeExports.jsxDEV(TagAddInline,{style:{width:"-webkit-fill-available"},size:"small",disabled:disabled||(data.disabled?data.disabled:!1),name:data.field_name,value:value??"",onChange:e=>onChange&&onChange(data.field_name,e),placeholder:setPlaceholder(data.title)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:45,columnNumber:9},void 0);case"textarea":return jsxDevRuntimeExports.jsxDEV(TextField,{disabled:!!(disabled||data.disabled),name:data.field_name,style:{...data.style,width:"-webkit-fill-available"},multiline:!0,InputProps:{rows:3},value:value??"",onChange:e=>onChange&&onChange(e.target.name,e.target.value),placeholder:setPlaceholder(data.title)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:57,columnNumber:9},void 0);case"checkbox":return jsxDevRuntimeExports.jsxDEV(Checkbox,{disabled:data.disabled?data.disabled:!1,name:data.field_name,checked:!!value,onChange:checked=>{onChange&&onChange(data.field_name,checked.target.checked)},placeholder:setPlaceholder(data.title)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:72,columnNumber:9},void 0);case"datetime":return jsxDevRuntimeExports.jsxDEV(InputDate,{disabled,type:data.type,isClearable:data.isClearable,enableTime:data.enableTime,placeholder:data.placeholder,style:{height:"2rem"},className:"date-time",name:data.field_name,value,onChange:date=>onChange&&onChange(data.field_name,date),placeholderText:setPlaceholder(data.title),maxDate:data.max,minDate:data.min,enableTimeNotSecond:data.notSecond,isRequired:void 0},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:84,columnNumber:9},void 0);case"numeric":return jsxDevRuntimeExports.jsxDEV(InputNumber,{disabled,name:data.field_name,value,onChange:e=>onChange&&onChange(e.target.name,e.target.value),placeholder:setPlaceholder(data.title)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:104,columnNumber:9},void 0);case"currency":return jsxDevRuntimeExports.jsxDEV(NumberFormat,{id:`ctl_${data.field_name}`,className:"number-format",disabled:data.disabled?data.disabled:!1,value,placeholder:"0",thousandSeparator:data.thousandSeparator,decimalSeparator:data.decimalSeparator,onValueChange:({values})=>{onChange&&onChange(data.field_name,parseInt(values.value))},onFocus:event=>event.target.select()},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:114,columnNumber:9},void 0);case"switch":return jsxDevRuntimeExports.jsxDEV(Stack,{direction:"row",spacing:1,alignItems:"center",children:[jsxDevRuntimeExports.jsxDEV(Typography,{children:data.nameOptions[0]},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:131,columnNumber:11},void 0),jsxDevRuntimeExports.jsxDEV(Switch,{name:data.field_name,disabled:data.disabled?data.disabled:!1,checked:!!value,onChange:val=>onChange&&props.onChange(data.field_name,val.target.checked)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:132,columnNumber:11},void 0),jsxDevRuntimeExports.jsxDEV(Typography,{children:data.nameOptions[1]},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:138,columnNumber:11},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:130,columnNumber:9},void 0);case"select-async":return jsxDevRuntimeExports.jsxDEV(DataSelect2,{isDisabled:disabled,fields:data.fields,originfield:data.originfield,url:data.url,name:data.field_name,column:{field:data.value_field,label:data.value_label,type:data.value_type},value:value||null,onChange:e=>props.onChange(data.field_name,e&&data.getFullValue?e:e.value),whereOne:data.where,multiLabel:data.multiLabel,eleUrl:1,isFullSearch:data.isFullSearch,placeholder:data.placeholder},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:163,columnNumber:9},void 0);case"file":return jsxDevRuntimeExports.jsxDEV(InputFile,{name:data.field_name,onChange:file=>props.onChange(data.field_name,file,!0),title:"Chọn tập tin đính kèm trước khi tải lên",accept:"application/pdf",required:data.required,validation:data.validation},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:181,columnNumber:9},void 0);case"image":return jsxDevRuntimeExports.jsxDEV(InputImage,{onChange:file=>props.onChange(data.field_name,file,!0),title:"Chọn hình ảnh trước khi tải lên",accept:".png,.jpeg,.jpg,.mp4",value,disabled:data.disabled},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:192,columnNumber:9},void 0);case"async-select":return jsxDevRuntimeExports.jsxDEV(SelectAsync,{isMulti:data.isMulti,name:data.field_name,onChange:value2=>props.onChange(data.field_name,value2),placeholder:data.placeholder||"Chọn...",loadData:data.loadOptions,getOptionValue:data.getOptionValue,getOptionLabel:data.getOptionLabel,onAdd:data.onAdd,value,disabled},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:202,columnNumber:9},void 0);case"select-async-multi":return jsxDevRuntimeExports.jsxDEV(SelectAsyncMulti,{isMulti:data.isMulti,name:data.field_name,onChange:value2=>props.onChange(data.field_name,value2),placeholder:data.placeholder||"Chọn...",loadData:data.loadOptions,getOptionValue:data.getOptionValue,getOptionLabel:data.getOptionLabel,onAdd:data.onAdd,value,disabled,endPoint:data.endPoint,...data},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:217,columnNumber:9},void 0);case"multi-select":return jsxDevRuntimeExports.jsxDEV(SelectMulti,{defaultValue:data.defaultValue||[],options:data.options,column:data.column||{field:"value",label:"label",type:"string"},onChange:value2=>props.onChange(data.field_name,value2)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:234,columnNumber:9},void 0);case"select-custom":return jsxDevRuntimeExports.jsxDEV(SelectCustom,{placeholder:data==null?void 0:data.placeholder,disabled,value,onChange:event=>{onChange&&props.onChange(data.field_name,event&&event.value)},options:props.data.options,isClearable:data.isClearable},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:243,columnNumber:9},void 0)}},"renderControl"),FormControl=__name(props=>{var _a;const[isViewFile,setViewFile]=reactExports.useState(!1),{data,value,disabled}=props,{errors}=useFormState();reactExports.useEffect(()=>{data.type==="file"&&value&&setViewFile(!0)},[value,data]);const renderCompFile=reactExports.useMemo(()=>jsxDevRuntimeExports.jsxDEV(Grid,{children:jsxDevRuntimeExports.jsxDEV("div",{className:"form-control-value",style:data.width&&{maxWidth:data.width},children:value&&value.path&&jsxDevRuntimeExports.jsxDEV(jsxDevRuntimeExports.Fragment,{},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:271,columnNumber:13},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:269,columnNumber:9},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:268,columnNumber:7},void 0),[data,value]);return data&&data.type!=="hidden"&&jsxDevRuntimeExports.jsxDEV(Grid,{sx:{width:"auto"},container:!0,spacing:1,margin:1,children:[isViewFile&&(value!=null&&value.path)?renderCompFile:jsxDevRuntimeExports.jsxDEV(jsxDevRuntimeExports.Fragment,{children:[jsxDevRuntimeExports.jsxDEV(Grid,{item:!0,xs:4,display:"flex",alignItems:"center",children:(_a=data==null?void 0:data.rules)!=null&&_a.required?jsxDevRuntimeExports.jsxDEV(H6,{style:{fontSize:"inherit"},children:[data.title,jsxDevRuntimeExports.jsxDEV("span",{style:{color:"red"},children:"*"},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:293,columnNumber:19},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:291,columnNumber:17},void 0):jsxDevRuntimeExports.jsxDEV("p",{children:data.title},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:296,columnNumber:17},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:289,columnNumber:13},void 0),jsxDevRuntimeExports.jsxDEV(Grid,{item:!0,xs:8,alignItems:"center",children:renderControl(props,disabled)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:299,columnNumber:13},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:288,columnNumber:11},void 0),jsxDevRuntimeExports.jsxDEV(s,{errors,name:data.name,render:({message})=>jsxDevRuntimeExports.jsxDEV(Alert,{style:{backgroundColor:"transparent",padding:"0px"},severity:"error",children:message+" "+data.title.toLowerCase()},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:308,columnNumber:13},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:304,columnNumber:9},void 0)]},void 0,!0,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formControl.tsx",lineNumber:284,columnNumber:7},void 0)},"FormControl"),Controller=__name(({name,rules,onChange,value,...props})=>{const{control,setValue}=useFormContext(),{field}=useController({name,control,rules});return reactExports.useEffect(()=>{setValue(name,value)},[name,setValue,value]),jsxDevRuntimeExports.jsxDEV(FormControl,{...props,...field,onChange:(fieldName,value2)=>{lodashExports.isObject(value2)&&"file"in value2?field.onChange(value2==null?void 0:value2.url):field.onChange(value2),onChange&&onChange(fieldName,value2)}},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formHooks/Controller.tsx",lineNumber:15,columnNumber:5},void 0)},"Controller"),Form=reactExports.forwardRef(({onSubmit,defaultValues={},children},ref)=>{const methods=useForm({defaultValues});return reactExports.useImperativeHandle(ref,()=>({resetDataDefault:data=>methods.reset(data)})),jsxDevRuntimeExports.jsxDEV(FormProvider,{...methods,children:jsxDevRuntimeExports.jsxDEV("form",{onSubmit:methods.handleSubmit(onSubmit),children},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formHooks/Form.tsx",lineNumber:22,columnNumber:7},void 0)},void 0,!1,{fileName:"/home/jenkins/agent/workspace/binhdinhf1h2o/admin/src/app/views/material-kit/customs/form/formHooks/Form.tsx",lineNumber:21,columnNumber:5},void 0)});export{Controller as C,Form as F,styled as s};