@itcase/forms 1.1.88 → 1.1.90
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/dist/css/styles/main.css +0 -1
- package/dist/form/Field/Code/FormFieldCode.interface.d.ts +3 -2
- package/dist/form/Field/Code/stories/FormFieldCode.stories.d.ts +10 -11
- package/dist/form/Field/FileInput/appearance/default.d.ts +5 -15
- package/dist/form/Field/FileInput/stories/FormFieldFileInput.stories.d.ts +5 -15
- package/dist/form/Form/FinalForm.interface.d.ts +3 -2
- package/dist/itcase-forms.cjs.js +1 -3
- package/dist/itcase-forms.esm.js +1 -3
- package/package.json +10 -7
- package/dist/form/Field/FileInput/FormFieldFileInputDropzone.d.ts +0 -2
package/dist/css/styles/main.css
CHANGED
|
@@ -3,9 +3,9 @@ import type { CodeProps } from '@itcase/ui-web/components/Code';
|
|
|
3
3
|
import { BaseField, FormTypes } from 'src/form/generator/generator.interface';
|
|
4
4
|
type CodeInputProps = Partial<CodeProps> & Partial<DefaultCodeProps>;
|
|
5
5
|
type CodeField = Omit<BaseField, 'inputProps'> & {
|
|
6
|
-
inputProps
|
|
6
|
+
inputProps?: CodeInputProps;
|
|
7
7
|
type: Extract<FormTypes, 'code'>;
|
|
8
|
-
};
|
|
8
|
+
} & CodeInputProps;
|
|
9
9
|
type FormFieldCodeProps = CodeField & {
|
|
10
10
|
initialValue?: string;
|
|
11
11
|
label?: string;
|
|
@@ -14,6 +14,7 @@ type DefaultCodeProps = {
|
|
|
14
14
|
appearance: CompositeAppearanceStateDefault;
|
|
15
15
|
errorAppearance: CompositeAppearanceStateDefault;
|
|
16
16
|
requiredAppearance: CompositeAppearanceStateDefault;
|
|
17
|
+
successAppearance: CompositeAppearanceStateDefault;
|
|
17
18
|
width?: WidthProps;
|
|
18
19
|
};
|
|
19
20
|
export type { CodeField, CodeInputProps, DefaultCodeProps, FormFieldCodeProps };
|
|
@@ -3,10 +3,8 @@ declare namespace _default {
|
|
|
3
3
|
export { FormFieldCode as component };
|
|
4
4
|
export namespace args {
|
|
5
5
|
namespace config {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
let name: string;
|
|
9
|
-
let fieldProps: {
|
|
6
|
+
let FormFieldCode_1: {
|
|
7
|
+
fieldProps: {
|
|
10
8
|
label: string;
|
|
11
9
|
helpText: string;
|
|
12
10
|
direction?: import("@itcase/types-ui").DirectionProps;
|
|
@@ -63,13 +61,14 @@ declare namespace _default {
|
|
|
63
61
|
type?: import("../../../generator/generator.interface").FormTypes;
|
|
64
62
|
size?: import("@itcase/ui-web/components/Text").TextProps["size"];
|
|
65
63
|
};
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
64
|
+
appearance: import("@itcase/types-ui").CompositeAppearanceStateDefault;
|
|
65
|
+
errorAppearance: import("@itcase/types-ui").CompositeAppearanceStateDefault;
|
|
66
|
+
requiredAppearance: import("@itcase/types-ui").CompositeAppearanceStateDefault;
|
|
67
|
+
successAppearance: import("@itcase/types-ui").CompositeAppearanceStateDefault;
|
|
68
|
+
width?: import("@itcase/types-ui").WidthProps;
|
|
69
|
+
type: "code";
|
|
70
|
+
name: string;
|
|
71
|
+
};
|
|
73
72
|
export { FormFieldCode_1 as FormFieldCode };
|
|
74
73
|
}
|
|
75
74
|
}
|
|
@@ -1,19 +1,9 @@
|
|
|
1
1
|
export namespace defaultDropzoneProps {
|
|
2
|
-
let
|
|
3
|
-
let
|
|
4
|
-
let
|
|
5
|
-
let hintTitleTextColor: string;
|
|
6
|
-
let hintTitleTextSize: string;
|
|
7
|
-
let removeThumbText: string;
|
|
8
|
-
let removeThumbTextColor: string;
|
|
9
|
-
let removeThumbTextHoverColor: string;
|
|
10
|
-
let removeThumbTextSize: string;
|
|
11
|
-
let shape: string;
|
|
2
|
+
let appearance: string;
|
|
3
|
+
let errorAppearance: string;
|
|
4
|
+
let requiredAppearance: string;
|
|
12
5
|
let showFilename: boolean;
|
|
13
|
-
let
|
|
14
|
-
let
|
|
15
|
-
let thumbBorderWidth: number;
|
|
16
|
-
let thumbNameTextColor: string;
|
|
17
|
-
let thumbNameTextSize: string;
|
|
6
|
+
let showFileSize: boolean;
|
|
7
|
+
let successAppearance: string;
|
|
18
8
|
let isPreviews: boolean;
|
|
19
9
|
}
|
|
@@ -86,22 +86,12 @@ declare namespace meta {
|
|
|
86
86
|
type?: import("../../../generator/generator.interface").FormTypes;
|
|
87
87
|
size?: import("@itcase/ui-web/components/Text").TextProps["size"];
|
|
88
88
|
};
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
hintTitleTextColor: string;
|
|
93
|
-
hintTitleTextSize: string;
|
|
94
|
-
removeThumbText: string;
|
|
95
|
-
removeThumbTextColor: string;
|
|
96
|
-
removeThumbTextHoverColor: string;
|
|
97
|
-
removeThumbTextSize: string;
|
|
98
|
-
shape: string;
|
|
89
|
+
appearance: string;
|
|
90
|
+
errorAppearance: string;
|
|
91
|
+
requiredAppearance: string;
|
|
99
92
|
showFilename: boolean;
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
thumbBorderWidth: number;
|
|
103
|
-
thumbNameTextColor: string;
|
|
104
|
-
thumbNameTextSize: string;
|
|
93
|
+
showFileSize: boolean;
|
|
94
|
+
successAppearance: string;
|
|
105
95
|
isPreviews: boolean;
|
|
106
96
|
type: "fileInput";
|
|
107
97
|
name: string;
|
|
@@ -85,7 +85,7 @@ interface FinalFormProps extends FinalFormAppearanceProps {
|
|
|
85
85
|
fieldsGap?: GroupProps['gap'];
|
|
86
86
|
groupGap?: GroupProps['gap'];
|
|
87
87
|
initialValues: FormProps['initialValues'];
|
|
88
|
-
initialValuesEqual
|
|
88
|
+
initialValuesEqual?: FormProps['initialValuesEqual'];
|
|
89
89
|
language?: string;
|
|
90
90
|
loaderAppearance?: LoaderProps['appearance'];
|
|
91
91
|
loaderFill?: LoaderProps['fill'];
|
|
@@ -94,8 +94,9 @@ interface FinalFormProps extends FinalFormAppearanceProps {
|
|
|
94
94
|
loaderSize?: LoaderProps['size'];
|
|
95
95
|
loaderText?: LoaderProps['text'];
|
|
96
96
|
loaderType?: LoaderProps['type'];
|
|
97
|
-
mutators
|
|
97
|
+
mutators?: Config['mutators'];
|
|
98
98
|
notificationCloseButton?: NotificationProps['closeIcon'];
|
|
99
|
+
notificationTestAlign?: NotificationProps['textAlign'];
|
|
99
100
|
notificationType?: NotificationProps['type'];
|
|
100
101
|
primaryButton?: ButtonProps['children'];
|
|
101
102
|
renderFieldsWrapper?: (children: React.ReactNode) => React.ReactNode;
|
package/dist/itcase-forms.cjs.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
"use strict";var e=require("react-final-form"),t=require("react/jsx-runtime"),r=require("react"),a=require("clsx"),s=require("@itcase/ui-web/components/Checkbox"),i=require("@itcase/ui-core/hooks"),o=require("@itcase/ui-web/components/Divider"),n=require("@itcase/ui-web/components/Text"),l=require("axios"),d=require("final-form"),u=require("final-form-focus"),c=require("lodash/camelCase"),m=require("lodash/snakeCase"),p=require("@itcase/ui-web/components/Chips"),f=require("@itcase/ui-web/components/Choice"),h=require("@itcase/ui-web/components/Code"),x=require("@itcase/ui-web/components/Icon"),g=require("@itcase/ui-web/components/Dadata"),T=require("@itcase/ui-web/components/DatePicker"),y=require("file-selector"),b=require("lodash/castArray"),_=require("react-dropzone"),v=require("@itcase/common"),S=require("@itcase/ui-web/components/Button"),C=require("@itcase/ui-web/components/Loader"),I=require("@itcase/ui-web/components/Title"),P=require("@itcase/ui-web/components/Input"),z=require("@itcase/ui-web/components/InputNumber"),F=require("react-imask"),M=require("@itcase/ui-web/components/InputPassword"),w=require("@itcase/ui-web/components/Radio"),j=require("@itcase/ui-web/components/Segmented"),N=require("@itcase/ui-web/components/Select"),k=require("@itcase/ui-web/components/Switch"),B=require("@itcase/ui-web/components/Textarea"),D=require("@itcase/ui-web/components/Group"),q=require("@itcase/ui-web/components/Notification"),E=require("libphonenumber-js");function V(e){return e&&e.__esModule?e:{default:e}}var A=V(r),R=V(a),W=V(l),K=V(u),$=V(c),L=V(m),O=V(b);const G={email_error:{key:"error",message:"Введите корректный адрес электронной почты"},email_required:{key:"required",message:"Укажите адрес электронной почты"},invalid_value:{key:"error",message:"Некорректное значение"},min:{key:"error",message:({min:e})=>`Значение должно быть не менее ${e} символов`},max:{key:"error",message:({max:e})=>`Значение должно быть не менее ${e} символов`},matches:{key:"error",message:"Допускается ввод только цифр от 0 до 9"},numeric_value:{key:"error",message:"Только числовое значение"},password_required:{key:"required",message:"Введите пароль"},phone_error:{key:"error",message:"Введите корректный номер телефона"},phone_or_email_required:{key:"required",message:"Введите телефон или адрес эл. почты"},phone_required:{key:"required",message:"Укажите номер телефона"},required:{key:"required",message:"Обязательное поле"},url:{key:"error",message:"Введите корректный URL-адрес"}},H={width:"fill",direction:"vertical",labelTextColor:"surfaceTextPrimary",messageTextColor:"surfaceTextSecondary",dividerFill:"errorPrimary",errorMessageTextColor:"errorTextSecondary",helpTextColor:"surfaceTextQuaternary",requiredMessageTextColor:"warningTextSecondary",showMessage:!0},U={size:"s",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...H},Q={size:"m",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...H},J={size:"l",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...H},X={size:"xl",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...H};function Y(e){const{className:a,dataTestId:s,dataTour:l,type:d,label:u,labelHidden:c,labelTextColor:m,labelTextSize:p,labelTextWeight:f,messageTextSize:h,desc:x,descTextColor:g,descTextSize:T,descTextWeight:y,afterItem:b,beforeItem:_,dividerDirection:v,dividerFill:S,dividerSize:C,dividerWidth:I,errorKey:P,errorMessage:z,fieldClassName:F,helpText:M,helpTextColor:w,helpTextColorSuccess:j,helpTextSize:N,helpTextWeight:k,inputName:B,inputValue:D,metaActive:q,metaError:E,showDivider:V,showMessage:A,tag:W="div",before:K,after:$,isDisabled:L,isErrorState:O,isHidden:G,isRequired:H,isValidState:U,children:Q}=e,J=r.useMemo(()=>R.default(a,U&&"form__item_state_success",H&&"form__item_state_required",L&&"form__item_state_disabled",q&&"form__item_state_focus",D&&"form__item_state_filled",O&&`form__item_state_${P}`),[a,O,U,H,q,D,L,E]),X=r.useMemo(()=>R.default(F,U&&`${F}_state_success`,q&&`${F}_state_focus`,D&&`${F}_state_filled`,L&&`${F}_state_disabled`,O&&`${F}_state_${P}`),[F,O,U,q,D,L,E]),Y=i.useDeviceTargetClass(e,{prefix:"form-field_size_",propsKey:"size"}),Z=i.useDeviceTargetClass(e,{prefix:"fill_",propsKey:"fill"}),ee=i.useDeviceTargetClass(e,{prefix:"fill_",propsKey:"inputFill"}),te=i.useDeviceTargetClass(e,{prefix:"form-field_shape_",propsKey:"shape"}),re=i.useDeviceTargetClass(e,{prefix:"form-field__item-value_shape_",propsKey:"inputShape"}),ae=i.useDeviceTargetClass(e,{prefix:"direction_",propsKey:"direction"}),se=i.useDeviceTargetClass(e,{prefix:"width_",propsKey:"width"}),{styles:ie}=i.useStyles(e),oe=e[`${P}MessageTextSize`],ne=e[`${P}MessageTextColor`],le=e[`${P}MessageTextWeight`],de=`${s||`${B}Field`}Message`;return t.jsxs(W,{className:R.default(J,"form__item","form-field",d?`form-field_type_${d}`:"form-field_type_classic",Y,Z,te,L&&"form-field_state_disabled",G&&"form-field_state_hidden",ae,se),"data-testid":s,"data-tour":l,style:ie,children:[K,(u||c)&&t.jsx("div",{className:R.default("form-field__label",`text_size_${p}`),"data-testid":`${s}Label`,children:t.jsxs(n.Text,{size:p,textColor:m,textWeight:f,children:[u,c&&" "]})}),x&&t.jsx("div",{className:R.default("form-field__desc",`text_size_${T}`),"data-testid":`${s}Desc`,children:t.jsx(n.Text,{size:T,textColor:g,textWeight:y,children:x})}),t.jsxs("div",{className:R.default("form-field__content",ee,re),children:[t.jsxs("div",{className:R.default("form-field__content-inner",X),children:[_,Q,b]}),V&&t.jsx(o.Divider,{className:"form-field__item-divider",width:I,direction:v,size:C,fill:S})]}),A&&t.jsxs("div",{className:R.default("form-field__message",`text_size_${oe||N||h}`),"data-testid":de,children:[O&&z&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type-error",dataTestId:`${s}MessageError`,size:oe,textColor:ne,textWeight:le,children:z}),Boolean(M)&&(!O||!z)&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${s}MessageHelpText`,size:N,textColor:U?j:w,textWeight:k,children:M}),(!O&&!M||O&&!M&&!z)&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${s}MessageHelpText`,size:h,children:" "})]}),$]})}function Z(a){const{inputName:s}=a,{change:i}=e.useForm();return r.useEffect(()=>()=>{i(s,void 0)},[]),t.jsx(Y,{...a})}const ee=(e,t)=>{const r=e,a=Object.keys(t).map(e=>e===d.FORM_ERROR?"notification__item_status_error":`react-select-id_${e}-input`),s=r.find(e=>e.name?d.getIn(t,e.name):a.includes(e.id)),i=Object.keys(t);if(!s&&i.length){let e;try{const t=i[0];t===d.FORM_ERROR?e=document.querySelector("notification__item_status_error"):(e=document.querySelector(`#${t}-error`),e||(e=document.querySelector(`#id_${t}`)))}catch(e){console.warn(e)}e&&e.scrollIntoView({block:"center"})}s&&s.scrollIntoView({block:"center"})},te=K.default(void 0,ee),re=(e,t)=>{const r=(e=>e.replace(/(^|[_-])([a-zA-Z0-9])/g,(e,t,r)=>r.toUpperCase()))(e);return t&&t.endsWith("Field")?t:t?t+r+"Field":r+"Field"},ae=(e,t)=>d.setIn(e,t.path,t.message),se=Object.create(null);function ie(e,t){const a=r.useMemo(()=>e&&(e=>async function(t){try{await(e?.validate(t,{abortEarly:!1}))}catch(e){const t=e;if(t.message)return t.inner.reduce(ae,se);console.warn("itcase-forms schema.validate error: An error not related to the form occurred during validation. Validation ignored.")}})(e),[e,t]);return a}function oe(e){const{fieldProps:t={},input:a={},meta:s={}}=e,i=!s.modifiedSinceLastSubmit&&s.submitError,o=s.error?.key||"error",n=r.useMemo(()=>t.showErrorsOnSubmit?Boolean(s.submitFailed&&s.touched&&(s.error||i)):Boolean(s.touched&&(s.error||i)),[t.showErrorsOnSubmit,s.submitFailed,s.touched,s.error,i]),l=r.useMemo(()=>{const e=Array.isArray(a?.value)?a?.value.length:a?.value,t=s.modifiedSinceLastSubmit&&!s.error&&i;return Boolean(e&&(s.valid||t))},[a?.value,s.valid,s.error,i,s.modifiedSinceLastSubmit]);return{errorKey:o,errorMessage:r.useMemo(()=>{const e=s.error||i||!1;if(e){if("string"==typeof e)return e;if(e.message)return e.message}return""},[s.error,i]),successKey:"success",isErrorState:n,isValidState:l}}function ne(e){const{inputProps:t,validationStateKey:a}=e;return r.useMemo(()=>{const e={};return a?(Object.entries(t||{}).forEach(([t,r])=>{const s=L.default(t);if(s.startsWith(`${a}_`)){const t=s.replace(`${a}_`,""),i=$.default(t);e[i]=r}else e[t]||(e[t]=r)}),e):t},[a,t])}const le=A.default.memo(function(a){const{dataTestId:i,name:o,initialValue:n,classNameGroupItem:l,fieldProps:d={},inputProps:u={},showMessage:c,isDisabled:m,isRequired:p,onChange:f}=a;return t.jsx(e.Field,{type:"checkbox",name:o,initialValue:n,children:function({input:e,meta:a}){const o=r.useCallback(t=>{t&&(e.onChange(t),f&&f(t.target.checked,e.name))},[f,e.onChange]),{errorKey:n,errorMessage:h,successKey:x,isErrorState:g,isValidState:T}=oe({fieldProps:d,input:e,meta:a}),y=ne({inputProps:u,validationStateKey:g?n:T?x:null}),b=re(e.name,i);return t.jsx(Z,{className:R.default("form-field-checkbox","form__item_checkbox",l),dataTestId:b,errorKey:n,errorMessage:h,fieldClassName:"form-checkbox",inputName:e.name,inputValue:e.checked,metaActive:a.active,metaError:a.error,showMessage:c,tag:"label",isDisabled:m,isErrorState:g,isRequired:p,isValidState:T,...d,children:t.jsx(s.Checkbox,{checked:e.checked,isActive:e.checked,isDisabled:m,onBlur:e.onBlur,onChange:o,onFocus:e.onFocus,...y})})}})});function de(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:l,emptyMessage:d,emptyMessageTextColor:u,emptyMessageTextSize:c,fieldProps:m,inputProps:f,options:h,showMessage:x,isDisabled:g,isRequired:T,onChange:y}=a,{change:b}=e.useForm(),_=r.useCallback((e,t)=>{const r=e.includes(t)?e.filter(e=>e!==t):[...e,t];b(i,r),y&&y(r)},[b,i,y]);return r.useEffect(()=>{o&&b(i,o)},[o]),t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const{errorKey:i,errorMessage:o,successKey:y,isErrorState:b,isValidState:v}=oe({fieldProps:m,input:e,meta:a}),S=ne({inputProps:f,validationStateKey:b?i:v?y:null}),C=r.useMemo(()=>{const t=[{label:null,value:null}];if(e?.value){return h.filter(t=>e.value?.includes(t.value))||t}return t},[e.value]),I=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_chips","form__item_chips",l),dataTestId:I,errorKey:i,errorMessage:o,fieldClassName:"form-chips",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:x,isDisabled:g,isErrorState:b,isRequired:T,isValidState:v,...m,children:h?.length?t.jsx(p.ChipsGroup,{direction:"horizontal",gap:"1m",wrap:"wrap",children:h.map(r=>t.jsx(p.Chips,{className:R.default(a.active&&"form-chips_state_focus",a.error&&a.touched&&`form-chips_state_${i}`),label:r.label,isActive:C.some(e=>e.value===r.value),isDisabled:r.isDisabled,onClick:()=>_(e.value,r.value),...S},r.value))}):t.jsx(n.Text,{size:c,textColor:u,children:d})})}})}const ue=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,label:n,classNameGroupItem:l,fieldProps:d,inputProps:u,options:c,showMessage:m,isDisabled:p,isCheckbox:h,isRequired:x,onChange:g}=a,{change:T}=e.useForm(),y=r.useCallback((e,t)=>{T(i,t&&e.value),g&&g(e.value,i,t)},[T,g]);return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const i=r.useMemo(()=>{const t={label:null,value:null};if(e.value){return c.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:o,errorMessage:g,successKey:T,isErrorState:b,isValidState:_}=oe({fieldProps:d,input:e,meta:a}),v=ne({inputProps:u,validationStateKey:b?o:_?T:null}),S=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_choice","form__item_choice",l),dataTestId:S,label:n,errorKey:o,errorMessage:g,fieldClassName:"form-choice",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:b,isRequired:x,isValidState:_,...d,children:t.jsx(f.Choice,{className:R.default(a.active&&"form-choice_state_focus",a.error&&a.touched&&`form-choice_state_${o}`),name:e.name,active:i,options:c,isDisabled:p,isCheckbox:h,setActiveSegment:y,...v})})}})}),ce=A.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,label:o,classNameGroupItem:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:m}=r;return t.jsx(e.Field,{name:s,initialValue:i,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:i,successKey:p,isErrorState:f,isValidState:x}=oe({fieldProps:l,input:e,meta:r}),g=ne({inputProps:d,validationStateKey:f?s:x?p:null}),T=re(e.name,a);return t.jsx(Z,{className:R.default("form-field-code","form__item_code",n),dataTestId:T,label:o,errorKey:s,errorMessage:i,fieldClassName:"form-code",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,showMessage:u,isErrorState:f,isRequired:m,isValidState:x,...l,children:t.jsx(h.Code,{initialValue:e.value,isDisabled:c,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...g})})}})}),me=A.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,classNameGroupItem:o,clearIcon:n,clearIconFill:l,clearIconFillHover:d,clearIconShape:u,clearIconSize:c,Component:m,fieldProps:p={},showMessage:f,isDisabled:h,isRequired:g,onClickClearIcon:T}=r;return t.jsx(e.Field,{name:s,initialValue:i,children:function({input:e,meta:s}){const{errorKey:i,errorMessage:y,isErrorState:b,isValidState:_}=oe({fieldProps:p,input:e,meta:s}),v=ne({inputProps:r,validationStateKey:b?i:"success"}),S=re(e.name,a);return t.jsxs(Z,{className:R.default("form-field_custom","form__item_custom",o),dataTestId:S,errorKey:i,errorMessage:y,fieldClassName:"form-custom",inputName:e.name,inputValue:String(e.value??""),metaActive:s.active,metaError:s.error,showMessage:f,isDisabled:h,isErrorState:b,isRequired:g,isValidState:_,...p,children:[t.jsx(m,{...v,input:e,meta:s,isDisabled:h}),n&&t.jsx(x.Icon,{className:"form-field__icon",size:c,iconFill:l,iconFillHover:d,imageSrc:n,shape:u,SvgImage:n,onClick:T})]})}})}),pe=A.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,classNameGroupItem:o,fieldProps:n,inputProps:l,parse:d,showMessage:u,token:c,isDisabled:m,isRequired:p,onDadataAutocomplete:f}=r;if("development"===process.env.NODE_ENV){const e=`Check your form config at field "${s}".`;if(!c){throw new Error(`FormFieldDadataInput: 'token' prop is missing, instead got ${c}.`+"\n"+e)}if(!f){throw new Error(`FormFieldDadataInput: 'onDadataAutocomplete' prop is missing, instead got ${f}.`+"\n"+e)}}return t.jsx(e.Field,{name:s,initialValue:i,parse:d,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:i,successKey:d,isErrorState:h,isValidState:x}=oe({fieldProps:n,input:e,meta:r}),T=ne({inputProps:l,validationStateKey:h?s:x?d:null}),y=re(e.name,a);return t.jsx(Z,{className:R.default("form-field_input-dadata","form__item_input-dadata",o),dataTestId:y,errorKey:s,errorMessage:i,fieldClassName:"form-dadata",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:u,isDisabled:m,isErrorState:h,isRequired:p,isValidState:x,...n,children:t.jsx(g.Dadata,{input:e,inputProps:T,meta:r,token:c,setValue:f})})}})});function fe(a){const{dataTestId:s,name:i,classNameGroupItem:o,datePickerProps:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:m,onChange:p}=a;return t.jsx(e.Field,{name:i,children:function({input:e,meta:a}){const i=r.useCallback((t,r)=>{n?.selectsRange?e.onChange({endDate:r,startDate:t}):e.onChange(t),p&&p(t,r)},[e.onChange,p]),{errorKey:f,errorMessage:h,successKey:x,isErrorState:g,isValidState:y}=oe({fieldProps:l,input:e,meta:a}),b=ne({inputProps:d,validationStateKey:g?f:y?x:null}),_=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_datepicker","form__item_datepicker",o),dataTestId:_,errorKey:f,errorMessage:h,fieldClassName:"form-datepicker",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:u,isDisabled:c,isErrorState:g,isRequired:m,isValidState:y,...l,children:t.jsx(T.DatePickerInput,{name:e.name,datePickerProps:n,endValue:n?.selectsRange?e.value.endDate:null,inputProps:b,value:n?.selectsRange?e.value.startDate:e.value,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus})})}})}function he(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=Array(t);r<t;r++)a[r]=e[r];return a}function xe(e,t,r,a,s,i,o){try{var n=e[i](o),l=n.value}catch(e){return void r(e)}n.done?t(l):Promise.resolve(l).then(a,s)}function ge(e){return function(){var t=this,r=arguments;return new Promise(function(a,s){var i=e.apply(t,r);function o(e){xe(i,a,s,o,n,"next",e)}function n(e){xe(i,a,s,o,n,"throw",e)}o(void 0)})}}function Te(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return he(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?he(e,t):void 0}}(e))||t){r&&(e=r);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function ye(){
|
|
2
|
-
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
3
|
-
var e,t,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",s=r.toStringTag||"@@toStringTag";function i(r,a,s,i){var l=a&&a.prototype instanceof n?a:n,d=Object.create(l.prototype);return be(d,"_invoke",function(r,a,s){var i,n,l,d=0,u=s||[],c=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,r){return i=t,n=0,l=e,m.n=r,o}};function p(r,a){for(n=r,l=a,t=0;!c&&d&&!s&&t<u.length;t++){var s,i=u[t],p=m.p,f=i[2];r>3?(s=f===a)&&(l=i[(n=i[4])?5:(n=3,3)],i[4]=i[5]=e):i[0]<=p&&((s=r<2&&p<i[1])?(n=0,m.v=a,m.n=i[1]):p<f&&(s=r<3||i[0]>a||a>f)&&(i[4]=r,i[5]=a,m.n=f,n=0))}if(s||r>1)return o;throw c=!0,a}return function(s,u,f){if(d>1)throw TypeError("Generator is already running");for(c&&1===u&&p(u,f),n=u,l=f;(t=n<2?e:l)||!c;){i||(n?n<3?(n>1&&(m.n=-1),p(n,l)):m.n=l:m.v=l);try{if(d=2,i){if(n||(s="next"),t=i[s]){if(!(t=t.call(i,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,n<2&&(n=0)}else 1===n&&(t=i.return)&&t.call(i),n<2&&(l=TypeError("The iterator does not provide a '"+s+"' method"),n=1);i=e}else if((t=(c=m.n<0)?l:r.call(a,m))!==o)break}catch(t){i=e,n=1,l=t}finally{d=1}}return{value:t,done:c}}}(r,s,i),!0),d}var o={};function n(){}function l(){}function d(){}t=Object.getPrototypeOf;var u=[][a]?t(t([][a]())):(be(t={},a,function(){return this}),t),c=d.prototype=n.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,be(e,s,"GeneratorFunction")),e.prototype=Object.create(c),e}return l.prototype=d,be(c,"constructor",d),be(d,"constructor",l),l.displayName="GeneratorFunction",be(d,s,"GeneratorFunction"),be(c),be(c,s,"Generator"),be(c,a,function(){return this}),be(c,"toString",function(){return"[object Generator]"}),(ye=function(){return{w:i,m:m}})()}function be(e,t,r,a){var s=Object.defineProperty;try{s({},"",{})}catch(e){s=0}be=function(e,t,r,a){function i(t,r){be(e,t,function(e){return this._invoke(t,r,e)})}t?s?s(e,t,{value:r,enumerable:!a,configurable:!a,writable:!a}):e[t]=r:(i("next",0),i("throw",1),i("return",2))},be(e,t,r,a)}var _e=A.default.memo(function(e){var a,s=e.maxFiles,o=e.maxSize,l=e.dropzoneProps,d=void 0===l?{}:l,u=e.fileErrorText,c=e.hintDescription,m=e.hintTitle,p=e.inputName,f=e.inputValue,h=e.showFilename,x=e.thumbColumn,g=e.isPreviews,T=e.onClickPreview,b=e.onAddFiles,v=e.onChange,I=e.onDeleteFile,P=r.useState(""),z=P[0],F=P[1],M=r.useState(!1),w=M[0],j=M[1],N=r.useRef(null),k=r.useMemo(function(){var e=f?O.default(f):[];return null===N.current?(N.current=e,e):(N.current.forEach(function(t){var r;t.preview&&(!e.some(function(e){return e.preview===t.preview})&&null!=(r=t.preview)&&r.startsWith("blob:")&&URL.revokeObjectURL(t.preview))}),N.current=e,e)},[f]),B=r.useCallback(function(e){var t,r=O.default(e),a=1==(null!=(t=d.maxFiles)?t:s)?r[0]:[].concat(r);return v(a),a},[d.maxFiles,s,v]),D=r.useCallback(function(){var e=ge(ye().m(function e(t){var r,a,s,i,o;return ye().w(function(e){for(;;)switch(e.n){case 0:j(!0),r=[],a=Te(t);case 1:if((s=a()).done){e.n=5;break}if("string"!=typeof(i=s.value)){e.n=3;break}return e.n=2,Ce(i,g);case 2:(o=e.v)&&r.push(o),e.n=4;break;case 3:r.push(i);case 4:e.n=1;break;case 5:B(r),j(!1);case 6:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}(),[g,B]),q=r.useCallback(function(e,t){e.stopPropagation(),e.preventDefault();var r=[].concat(k);r.splice(t,1),I&&I(k[t],p),B(r)},[k,B,I]),E=_.useDropzone(Object.assign({maxFiles:s||5,maxSize:o||10485760},d,{getFilesFromEvent:(a=ge(ye().m(function e(t){var r,a;return ye().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,y.fromEvent(t);case 1:return r=e.v,a=r.filter(function(e){return e instanceof File}),e.a(2,[].concat(k,a))}},e)})),function(e){return a.apply(this,arguments)}),onDropAccepted:function(e){g&&e.forEach(function(e){e.error||e.preview||(e.preview=URL.createObjectURL(e))});var t=B(e);F("");var r=e.map(function(e){return new Promise(function(t){return Pe(e,t)})});Promise.all(r).then(function(){b&&b(t,p)})},onDropRejected:function(e){if(e.length){var t="Ошибка при добавлении файла",r=e[0].errors[0];r&&(t=r.code===_.ErrorCode.TooManyFiles?"Максимальное количество файлов: "+s:r.message),F(t)}else F("")}})),V=E.getInputProps,W=E.getRootProps;r.useEffect(function(){var e=O.default(f);e.some(function(e){return"string"==typeof e})&&D(e)},[f]),r.useEffect(function(){return function(){N.current.forEach(function(e){var t;null!=(t=e.preview)&&t.startsWith("blob:")&&URL.revokeObjectURL(e.preview)})}},[]);var K=i.useDevicePropsGenerator(e),$=K.fillClass,L=K.fillHoverClass,G=K.borderColorClass,H=K.borderColorHoverClass,U=K.borderTypeClass,Q=K.borderWidthClass,J=K.errorMessageTextColor,X=K.errorMessageTextSize,Y=K.errorMessageTextWeight,Z=K.hintDescriptionTextColor,ee=K.hintDescriptionTextSize,te=K.hintDescriptionTextWeight,re=K.hintDescriptionTextWrap,ae=K.hintTitleTextColor,se=K.hintTitleTextSize,ie=K.hintTitleTextWeight,oe=K.hintTitleTextWrap,ne=K.removeThumbAppearance,le=K.removeThumbShape,de=K.removeThumbText,ue=K.removeThumbTextWeight,ce=K.shapeClass,me=K.thumbBorderColorClass,pe=K.thumbBorderColorHoverClass,fe=K.thumbBorderTypeClass,he=K.thumbBorderWidthClass,xe=K.thumbDirectionClass,be=K.thumbNameTextColor,_e=K.thumbNameTextSize,ve=K.thumbNameTextWeight,Se=K.thumbNameTextWrap;return t.jsxs(A.default.Fragment,{children:[t.jsxs("div",Object.assign({},W({className:"form-dropzone__dropzone dropzone"}),{children:[t.jsx("input",Object.assign({},V(),{name:p})),t.jsxs("div",{className:R.default("form-dropzone__dropzone-wrapper",x&&"form-dropzone__dropzone-wrapper_column_"+x,$&&"fill_"+$,L&&"fill_hover_"+L,Q&&"border-width_"+Q,G&&"border-color_"+G,H&&"border-color_hover_"+H,U&&"border_type_"+U,ce&&"shape_"+ce),children:[k.map(function(e,r){return t.jsxs("aside",{className:R.default("form-dropzone__thumb",$,xe,he,me,pe,fe),children:[g&&!e.error&&t.jsx("div",{className:"form-dropzone__thumb-image",children:t.jsx("img",{className:"form-dropzone__thumb-image-inner",src:e.preview||e.image,onClick:function(t){T&&T(e,t)}})}),e.error&&t.jsx("div",{children:t.jsx(n.Text,{size:_e,textColor:be,textWeight:ve,textWrap:Se,children:u||e.error})}),h&&t.jsx("div",{className:"form-dropzone__thumb-name",children:t.jsx(n.Text,{className:"form-dropzone__thumb-name-inner",size:_e,textColor:be,textWeight:ve,textWrap:Se,children:e.name})}),w&&t.jsx("div",{className:"form-dropzone__thumb-loader",children:t.jsx(C.Loader,{width:"fill",height:"fill"})}),t.jsx("div",{className:R.default("form-dropzone__thumb-remove"),children:t.jsx(S.Button,{appearance:ne,className:"form-dropzone__thumb-remove-text",label:de||"Удалить",labelTextWeight:ue,shape:le,onClick:function(e){return q(e,r)}})})]},e.id||e.name+"_"+r)}),k.length?t.jsxs("div",{className:"form-dropzone__hint form-dropzone__hint_type_add-more",children:[t.jsx(n.Text,{className:"form-dropzone__hint-title",size:se,textAlign:"center",textColor:ae,textWeight:ie,textWrap:oe,children:m||"Select a file or drag in form"}),c&&t.jsx(n.Text,{className:"form-dropzone__hint-text",size:ee,textColor:Z,textWeight:te,textWrap:re,children:c})]}):t.jsxs("div",{className:"form-dropzone__hint",children:[t.jsx(n.Text,{className:"form-dropzone__hint-title",size:se,textAlign:"center",textColor:ae,textWeight:ie,textWrap:oe,children:m||"Select a file or drag in form"}),c&&t.jsx(n.Text,{className:"form-dropzone__hint-text",size:ee,textColor:Z,textWeight:te,textWrap:re,children:c})]})]})]})),z&&t.jsx("div",{className:"form-field__message",children:t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type_message",size:X,textColor:J,textWeight:Y,children:z})})]})});function ve(e){return Se.apply(this,arguments)}function Se(){return(Se=ge(ye().m(function e(t){var r,a,s,i,o,n;return ye().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,W.default({url:t,responseType:"blob"});case 1:return a=e.v,s=a.data,i=null==(r=a.headers["content-disposition"])?void 0:r.split("filename=")[1],(o=null==i?void 0:i.substring(1).slice(0,-1))||(o=t.split("/").at(-1)),e.a(2,new File([s],o,{type:s.type}));case 2:return e.p=2,n=e.v,console.log("error: ",n),e.a(2,null)}},e,null,[[0,2]])}))).apply(this,arguments)}function Ce(e,t){return Ie.apply(this,arguments)}function Ie(){return(Ie=ge(ye().m(function e(t,r){var a,s;return ye().w(function(e){for(;;)switch(e.n){case 0:if(a=null,s="string"==typeof t&&t.includes("/"),!t.image&&!s){e.n=2;break}return e.n=1,ve(t.image||t);case 1:(a=e.v)&&Pe(a);case 2:return t.dataURL&&"string"==typeof t.dataURL&&t.dataURL.startsWith("data:")&&((a=v.createFileFromDataURL(t.name||t.path,t.dataURL)).dataURL=t.dataURL),a&&(a.id=t.id,r&&(a.preview=URL.createObjectURL(a))),e.a(2,a)}},e)}))).apply(this,arguments)}function Pe(e,t){t=t||function(){};var r=new FileReader;r._readedFile=e,r.onabort=function(){return t()},r.onerror=function(){return t()},r.onload=function(e){e.target._readedFile.dataURL=r.result,t()},e instanceof File?r.readAsDataURL(e):t()}var ze=A.default.memo(function(r){var a=r.className,s=r.dataTestId,o=r.name,n=r.width,l=r.maxFiles,d=r.maxSize,u=r.label,c=r.classNameGroupItem,m=r.dropzoneProps,p=r.fieldProps,f=r.fileErrorText,h=r.hintDescription,x=r.hintTitle,g=r.showFilename,T=r.showMessage,y=r.isPreviews,b=r.isRequired,_=r.onClickPreview,v=r.onAddFiles,S=r.onDeleteFile,C=i.useDevicePropsGenerator(r),I=C.size,P=C.fill,z=C.fillHover,F=C.labelTextColor,M=C.borderColorHover,w=C.borderType,j=C.borderWidth,N=C.errorMessageTextColor,k=C.errorMessageTextSize,B=C.errorMessageTextWeight,D=C.hintDescriptionTextColor,q=C.hintDescriptionTextSize,E=C.hintDescriptionTextWeight,V=C.hintDescriptionTextWrap,A=C.hintTitleTextColor,W=C.hintTitleTextSize,K=C.hintTitleTextWeight,$=C.hintTitleTextWrap,L=C.removeThumbAppearance,O=C.removeThumbShape,G=C.removeThumbText,H=C.removeThumbTextWeight,U=C.shape,Q=C.thumbBorderColor,J=C.thumbBorderColorHover,X=C.thumbBorderType,Y=C.thumbBorderWidth,ee=C.thumbColumn,te=void 0===ee?1:ee,ae=C.thumbDirection,se=void 0===ae?"vertical":ae,ie=C.thumbNameTextColor,le=C.thumbNameTextSize,de=C.thumbNameTextWeight,ue=C.thumbNameTextWrap;return t.jsx(e.Field,{name:o,children:function(e){var i,o=e.input,C=e.meta,ee=oe({fieldProps:p,input:o,meta:C}),ae=ee.errorKey,ce=ee.errorMessage,me=ee.isErrorState,pe=ee.isValidState,fe=ne({inputProps:r,validationStateKey:me?ae:"success"}),he=re(o.name,s);return t.jsx(Z,Object.assign({className:R.default("form-field_type_dropzone","form__item_type_dropzone",c),dataTestId:he,width:n,label:u,labelTextColor:F,errorKey:ae,errorMessage:ce,fieldClassName:"form-dropzone",inputName:o.name,inputValue:(i=o.value,Array.isArray(i)?i.length>0?i:"":null!=i?i:""),metaActive:C.active,metaError:C.error,metaTouched:C.touched,showMessage:T,isErrorState:me,isRequired:b,isValidState:pe},p,{children:t.jsx(_e,{className:a,maxFiles:l,maxSize:d,size:I,fill:P,fillHover:z,borderColor:fe.borderColor,borderColorHover:M,borderType:w,borderWidth:j,dropzoneProps:m,errorMessageTextColor:N,errorMessageTextSize:k,errorMessageWeight:B,fileErrorText:f,hintDescription:h,hintDescriptionTextColor:D,hintDescriptionTextSize:q,hintDescriptionTextWeight:E,hintDescriptionTextWrap:V,hintTitle:x,hintTitleTextColor:A,hintTitleTextSize:W,hintTitleTextWeight:K,hintTitleTextWrap:$,inputName:o.name,inputValue:o.value,metaError:C.error,metaTouched:C.touched,removeThumbAppearance:L,removeThumbShape:O,removeThumbText:G,removeThumbTextWeight:H,shape:U,showFilename:g,thumbBorderColor:Q,thumbBorderColorHover:J,thumbBorderType:X,thumbBorderWidth:Y,thumbColumn:te,thumbDirection:se,thumbNameTextColor:ie,thumbNameTextSize:le,thumbNameTextWeight:de,thumbNameTextWrap:ue,isPreviews:y,onClickPreview:_,onAddFiles:v,onChange:o.onChange,onDeleteFile:S})}))}})});const Fe=A.default.memo(function(r){const{className:a,dataTestId:s,dataTour:o,name:l,title:d,titleTextColor:u,titleTextSize:c,titleTextWeight:m,label:p,labelTextColor:f,labelTextSize:h,labelTextWeight:x,message:g,messageTextColor:T,messageTextSize:y,messageTextWeight:b,column:_,showGroupMessage:v,before:S,after:C,isActive:P,isDisabled:z,isHidden:F,children:M}=r,w=i.useDevicePropsGenerator(r),{fillActiveClass:j,fillActiveHoverClass:N,fillClass:k,fillDisabledClass:B,fillHoverClass:D,shapeClass:q}=w,{styles:E}=i.useStyles(r),V=re(l,s);return t.jsx(e.Field,{name:l,children:function({input:e,meta:s}){const{errorKey:i,errorMessage:w,isErrorState:W}=oe({fieldProps:r,input:e,meta:s}),K=ne({inputProps:r,validationStateKey:W?i:"success"});return t.jsxs("div",{className:R.default("form__group",a,F&&"form__group_hidden",z?B&&`fill_${B}`:P?j&&`fill_active_${j}`:k&&`fill_${k}`,z?B&&`fill_${B}`:P?N&&`fill_active_hover_${N}`:D&&`fill_hover_${D}`,q&&`shape_${q}`,_&&`form__group_column_${_}`),"data-testid":V,"data-tour":o,style:E,children:[t.jsxs("div",{className:"form__group-wrapper",children:[S,d&&t.jsx("div",{className:"form__group-title",children:t.jsx(I.Title,{dataTestId:`${V}Title`,size:c,textColor:u,textWeight:m,children:d})}),p&&t.jsx("div",{className:"form__group-label",children:t.jsx(n.Text,{dataTestId:`${V}Label`,size:h,textColor:f,textWeight:x,children:p})}),t.jsx("div",{className:"form__group-items",children:M}),C]}),v&&t.jsxs(A.default.Fragment,{children:[W&&w&&t.jsx(n.Text,{className:`form__group-message form__group-message_type-${i}`,dataTestId:`${V}MessageError`,size:K.messageTextSize,textColor:K.messageTextColor,textWeight:K.messageTextWeight,children:w}),Boolean(g)&&(!W||!w)&&t.jsx(n.Text,{className:"form__group-message",dataTestId:`${l}GroupMessage`,size:y,textColor:T,textWeight:b,children:g}),!W&&!g&&t.jsx(n.Text,{className:"form__group-message",size:y,children:" "})]})]})}})}),Me=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:m,fieldProps:p={},inputProps:f={},parse:h,showMessage:g,isDisabled:T,isRequired:y,onClickClearIcon:b,onChange:_}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:h,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),_&&_(t.target.value,e.name)},[_,e]),{errorKey:o,errorMessage:h,successKey:v,isErrorState:S,isValidState:C}=oe({fieldProps:p,input:e,meta:a}),I=ne({inputProps:f,validationStateKey:S?o:C?v:null}),z=re(e.name,s);return t.jsxs(Z,{className:R.default("form-field_input","form__item_input",n),dataTestId:z,errorKey:o,errorMessage:h,fieldClassName:"form-input",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:g,isDisabled:T,isErrorState:S,isRequired:y,isValidState:C,...p,children:[t.jsx(P.Input,{className:R.default(a.active&&"input_state_focus",a.error&&a.touched&&`input_state_${o}`),dataTestId:`${z}Input`,type:"text",name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:T,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus,...I}),l&&t.jsx(x.Icon,{className:"form-field__icon",dataTestId:`${z}InputIcon`,size:m,iconFill:d,iconFillHover:u,imageSrc:"string"==typeof l&&l,shape:c,SvgImage:"string"!=typeof l&&l,onClick:b})]})}})}),we=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l={},inputProps:d={},inputType:u="custom",parse:c,showMessage:m,isDisabled:p,isRequired:f,onChange:h}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:c,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),h&&h(t.target.value)},[h,e.onChange]),{errorKey:o,errorMessage:c,successKey:x,isErrorState:g,isValidState:T}=oe({fieldProps:l,input:e,meta:a}),y=ne({inputProps:d,validationStateKey:g?o:T?x:null}),b=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_input-number","form__item_input-number",n),dataTestId:b,errorKey:o,errorMessage:c,fieldClassName:"form-input-number",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:g,isRequired:f,isValidState:T,...l,children:t.jsx(z.InputNumber,{className:R.default(a.active&&"input_state_focus",(a.submitFailed||a.touched)&&a.error&&`input_state_${o}`),dataTestId:`${b}InputNumber`,type:u,name:e.name,value:Number(e.value)||0,onChange:i,...y})})}})}),je=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:m,fieldProps:p={},inputProps:f={},optionsMask:h,showMessage:g,unmasked:T,isDisabled:y,isRequired:b,onClickClearIcon:_}=a;return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const{ref:i,unmaskedValue:v,value:S,setUnmaskedValue:C}=F.useIMask(h,{defaultValue:o,onAccept:(t,r,a)=>{a&&e.onChange(r._unmaskedValue)}});r.useEffect(()=>{e.value!==v&&C(e.value.replace(T,""))},[e.value]);const{errorKey:I,errorMessage:z,successKey:M,isErrorState:w,isValidState:j}=oe({fieldProps:p,input:e,meta:a}),N=ne({inputProps:f,validationStateKey:w?I:j?M:null}),k=re(e.name,s);return t.jsxs(Z,{className:R.default("form-field-masked-input","form__item_masked-input",n),dataTestId:k,errorKey:I,errorMessage:z,fieldClassName:"form-maskedInput",inputName:e.name,inputValue:String(e.value??T??""),metaActive:a.active,metaError:a.error,showMessage:g,isDisabled:y,isErrorState:w,isRequired:b,isValidState:j,...p,children:[t.jsx(P.Input,{className:R.default(a.active&&"input_state_focus",a.error&&a.touched&&`input_state_${I}`),ref:i,value:S,onBlur:e.onBlur,onFocus:e.onFocus,...N}),l&&t.jsx(x.Icon,{className:"form-field__icon",size:m,iconFill:d,iconFillHover:u,imageSrc:l,shape:c,SvgImage:l,onClick:_})]})}})}),Ne=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l,inputProps:d,parse:u,showMessage:c,isDisabled:m,isRequired:p,onChange:f}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:u,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),f&&f(t.target.value,e.name)},[f,e.onChange]),{errorKey:o,errorMessage:u,successKey:h,isErrorState:x,isValidState:g}=oe({fieldProps:l,input:e,meta:a}),T=ne({inputProps:d,validationStateKey:x?o:g?h:null}),y=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_input-password","form__item_input-password",n),dataTestId:y,errorKey:o,errorMessage:u,fieldClassName:"form-password",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:c,isDisabled:m,isErrorState:x,isRequired:p,isValidState:g,...l,children:t.jsx(M.InputPassword,{className:R.default(a.active&&"input-password_state_focus",a.error&&a.touched&&`input-password_state_${o}`),dataTestId:`${y}InputPassword`,name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:m,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus,...T})})}})});function ke(e){const{input:a,inputProps:s,options:i,onChange:o}=e,n=r.useCallback(e=>{a.onChange(e),o&&o(e,a.name)},[a,o]),l=r.useCallback(e=>{e.target.checked&&n(e.target.value)},[o]);return t.jsx(A.default.Fragment,{children:i.map(e=>t.jsx(w.Radio,{className:"form-radio__item",label:e.label,checked:e.value===a.value,value:e.value,onChange:l,...s},e.value))})}const Be=A.default.memo(function(r){const{dataTestId:a,name:s,classNameGroupItem:i,fieldProps:o={},inputProps:n={},options:l=[],showMessage:d,isDisabled:u,isRequired:c,onChange:m}=r;return t.jsx(e.Field,{name:s,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:p,successKey:f,isErrorState:h,isValidState:x}=oe({fieldProps:o,input:e,meta:r}),g=ne({inputProps:n,validationStateKey:h?s:x?f:null}),T=re(e.name,a);return t.jsx(Z,{className:R.default("form-field_radio","form__item_radio",i),dataTestId:T,errorKey:s,errorMessage:p,fieldClassName:"form-radio",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:d,isDisabled:u,isErrorState:h,isRequired:c,isValidState:x,...o,children:t.jsx(ke,{input:e,inputProps:g,options:l,onChange:m})})}})});function De(a){const{dataTestId:s,name:i,fieldProps:o,inputProps:n,options:l,showMessage:d,isDisabled:u,isRequired:c}=a,{change:m}=e.useForm(),p=r.useCallback(e=>{m(i,e.value)},[m]);return t.jsx(e.Field,{name:i,children:function({input:e,meta:a}){const i=r.useMemo(()=>{const t={label:null,value:null};if(e.value){return l.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:m,errorMessage:f,successKey:h,isErrorState:x,isValidState:g}=oe({fieldProps:o,input:e,meta:a}),T=ne({inputProps:n,validationStateKey:x?m:g?h:null}),y=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_segmented","form__item_segmented"),dataTestId:y,errorKey:m,errorMessage:f,fieldClassName:"form-segmented",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:d,isDisabled:u,isErrorState:x,isRequired:c,isValidState:g,...o,children:t.jsx(j.Segmented,{activeSegment:i,segments:l,isDisabled:u,setActiveSegment:p,...T})})}})}function qe(e){const{options:t,selectValue:r}=e,a=Array.isArray(r)?r:[r];let s=[];return t.forEach(e=>{const t=a.includes(e.value),i=a.includes(e.label);let o=[];e.options&&(o=qe({options:e.options,selectValue:r})),t||i?s.push(e):o.length&&(s=s.concat(o))}),s}const Ee=A.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l,options:d=[],selectProps:u,selectRef:c,showMessage:m,isDisabled:p,isRequired:f,onChange:h,onInputChange:x}=a;return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const[i,o]=r.useState(null),g=r.useMemo(()=>{const t=qe({options:d,selectValue:e.value});return!t.length&&e.value?.length&&t.push({label:e.label,value:e.value}),t},[e.label,e.value]),T=r.useCallback(t=>{e.onChange(t),h&&h(t,{name:e.name})},[h,e.onChange]),y=r.useCallback(e=>{const t=Array.isArray(e)?e.map(e=>e.value):e?.value||null;o(e),T(t)},[T]);r.useEffect(()=>{o(g)},[g]);const{errorKey:b,errorMessage:_,successKey:v,isErrorState:S,isValidState:C}=oe({fieldProps:l,input:e,meta:a}),I=ne({inputProps:u,validationStateKey:S?b:C?v:null}),P=re(e.name,s);return t.jsx(Z,{className:R.default("form-field_select","form__item_select",n),dataTestId:P,errorKey:b,errorMessage:_,fieldClassName:"form-select",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:S,isRequired:f,isValidState:C,...l,children:t.jsx(N.Select,{className:"form-select-item",ref:c,instanceId:`id_${e.name}`,options:d,value:i,isDisabled:p,onChange:y,onInputChange:x,...I})})}})}),Ve=A.default.memo(function(a){const{dataTestId:s,name:i,classNameGroupItem:o,fieldProps:n={},inputProps:l={},showMessage:d,isDisabled:u,isRequired:c,onChange:m}=a;return t.jsx(e.Field,{type:"checkbox",name:i,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),m&&m(t.target.checked,e.name)},[m,e.onChange]),{errorKey:p,errorMessage:f,successKey:h,isErrorState:x,isValidState:g}=oe({fieldProps:n,input:e,meta:a}),T=ne({inputProps:l,validationStateKey:x?p:g?h:null}),y=re(e.name,s);return t.jsx(Z,{className:R.default("form-field-switch","form__item_switch",o),dataTestId:y,errorKey:p,errorMessage:f,fieldClassName:"form-switch",inputName:e.name,inputValue:e.checked,metaActive:a.active,metaError:a.error,showMessage:d,tag:"label",isDisabled:u,isErrorState:x,isRequired:c,isValidState:g,...n,children:t.jsx(k.Switch,{isActive:e.checked,isDisabled:u,onChange:i,...T})})}})}),Ae=A.default.memo(function(r){const{dataTestId:a,name:s,classNameGroupItem:i,fieldProps:o={},inputProps:n={},showMessage:l,isDisabled:d,isRequired:u}=r;return t.jsx(e.Field,{name:s,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:c,successKey:m,isErrorState:p,isValidState:f}=oe({fieldProps:o,input:e,meta:r}),h=ne({inputProps:n,validationStateKey:p?s:f?m:null}),x=re(e.name,a);return t.jsx(Z,{className:R.default("form-field_textarea","form__item_textarea",i),dataTestId:x,errorKey:s,errorMessage:c,fieldClassName:"form-textarea",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:l,isDisabled:d,isErrorState:p,isRequired:u,isValidState:f,...o,children:t.jsx(B.Textarea,{className:R.default(r.active&&"textarea_state_focus",r.error&&r.touched&&`textarea_state_${s}`),dataTestId:`${x}Textarea`,name:e.name,value:String(e.value??""),isDisabled:d,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...h})})}})});function Re(e,a){switch(e.type){case We.password:return t.jsx(Ne,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.primaryButton:return r.createElement(S.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormPrimaryButton",key:a.key,width:"fill",htmlType:a.primaryButtonHtmlType||"submit",isDisabled:a.primaryButtonIsDisabled,isLoading:a.primaryButtonIsLoading});case We.secondaryButton:return r.createElement(S.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormSecondaryButton",key:a.key,width:"fill",htmlType:a.secondaryButtonHtmlType,isDisabled:a.secondaryButtonIsDisabled,isLoading:a.secondaryButtonIsLoading,onClick:a.onClickSecondaryButton});case We.tertiaryButton:return r.createElement(S.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormTertiaryButton",key:a.key,width:"fill",htmlType:a.tertiaryButtonHtmlType,isDisabled:a.tertiaryButtonIsDisabled,isLoading:a.tertiaryButtonIsLoading,onClick:a.onClickTertiaryButton});case We.checkbox:return t.jsx(le,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.choice:return t.jsx(ue,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.code:return t.jsx(ce,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.chips:return t.jsx(de,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.switch:return t.jsx(Ve,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.segmented:return t.jsx(De,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.datePicker:return t.jsx(fe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.fileInput:return t.jsx(ze,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.radioGroup:return t.jsx(Be,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.select:return t.jsx(Ee,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.text:return t.jsx(Me,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.textarea:return t.jsx(Ae,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.maskedInput:return t.jsx(je,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.custom:return t.jsx(me,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.dadataInput:return t.jsx(pe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.inputNumber:return t.jsx(we,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case We.group:return t.jsx(Fe,{...e,dataTestId:e.dataTestId??a.dataTestId,children:Object.entries(e.group).map(([t,r])=>{const s={...r,classNameGroupItem:r.classNameGroupItem||"form__group-item",showMessage:e.showMessage};return Re(s,{...a,dataTestId:s.dataTestId??a.dataTestId,key:t+"_form_group"})})},a.key)}}const We={secondaryButton:"secondaryButton",primaryButton:"primaryButton",tertiaryButton:"tertiaryButton",checkbox:"checkbox",chips:"chips",choice:"choice",code:"code",custom:"custom",dadataInput:"dadataInput",datePicker:"datePicker",dateRangePicker:"dateRangePicker",fileInput:"fileInput",group:"group",inputNumber:"inputNumber",maskedInput:"maskedInput",password:"password",radioGroup:"radioGroup",segmented:"segmented",select:"select",switch:"switch",text:"text",textarea:"textarea"},Ke=A.default.forwardRef(function(a,s){const{className:o,dataTestId:l,dataTour:d,type:u,initialValues:c,initialValuesEqual:m,config:p,validationSchema:f,title:h,desc:x,buttonGap:g,dataTestIdButtons:T,dataTestIdPrimaryButton:y,dataTestIdSecondaryButton:b,dataTestIdTertiaryButton:_,dataTourButtons:v,dataTourPrimaryButton:P,dataTourSecondaryButton:z,dataTourTertiaryButton:F,disableFieldsAutoComplete:M=!1,fieldsGap:w,groupGap:j,language:N,mutators:k,notificationCloseButton:B,notificationType:E,primaryButton:V,renderFieldsWrapper:W=e=>e,secondaryButton:K,tertiaryButton:$,before:L,after:O,isLoading:G,onClickSecondaryButton:H,onClickTertiaryButton:U,onChangeFormValues:Q,onSubmit:J}=a,X=p.fields||p,Y=p.title||p.form?.title,Z=p.form?.dataTestId||l,ee=ie(f,N),re=r.useCallback(e=>{s&&"object"==typeof s&&(s.current=e)},[s]),ae=i.useDevicePropsGenerator(a),{directionClass:se="vertical",fillClass:oe,titleFill:ne,titlePosition:le,titleTextColor:de,titleTextSize:ue,titleTextWeight:ce,descSize:me,descTextColor:pe,descTextWeight:fe,buttonDirection:he="vertical",buttonFill:xe,buttonJustifyContent:ge,buttonPadding:Te,buttonPosition:ye,elevationClass:be,heightClass:_e,loader:ve,loaderAppearance:Se,loaderFill:Ce="surfacePrimary",loaderItemFill:Ie="accentItemSecondary",loaderShape:Pe,loaderSize:ze="l",loaderText:Fe,loaderType:Me="dot",primaryButtonAppearance:we,primaryButtonFill:je,primaryButtonFillHover:Ne,primaryButtonHtmlType:ke,primaryButtonIsDisabled:Be,primaryButtonIsLoading:De,primaryButtonLabel:qe,primaryButtonLabelSize:Ee,primaryButtonLabelTextColor:Ve,primaryButtonLabelTextWeight:Ae,primaryButtonSize:We,secondaryButtonAppearance:Ke,secondaryButtonFill:$e,secondaryButtonFillHover:Le,secondaryButtonHtmlType:Oe,secondaryButtonIsDisabled:Ge,secondaryButtonIsLoading:He,secondaryButtonLabel:Ue,secondaryButtonLabelSize:Qe,secondaryButtonLabelTextColor:Je,secondaryButtonLabelTextWeight:Xe,secondaryButtonSize:Ye,shapeClass:Ze,tertiaryButtonAppearance:et,tertiaryButtonFill:tt,tertiaryButtonFillHover:rt,tertiaryButtonHtmlType:at,tertiaryButtonIsDisabled:st,tertiaryButtonIsLoading:it,tertiaryButtonLabel:ot,tertiaryButtonLabelSize:nt,tertiaryButtonLabelTextColor:lt,tertiaryButtonLabelTextWeight:dt,tertiaryButtonSize:ut,widthClass:ct}=ae,{styles:mt,wrapper:pt}=i.useStyles(a);return t.jsx(e.Form,{initialValues:c,initialValuesEqual:m,render:({form:r,handleSubmit:a,modifiedSinceLastSubmit:s,submitError:i})=>t.jsxs("form",{className:R.default(o,"form",u&&`form_type_${u}`,ct&&`width_${ct}`,_e&&`height_${_e}`,le&&`form_title-position_${le}`,ye&&`form_button-position_${ye}`,oe&&`fill_${oe}`,Ze&&`shape_${Ze}`,be&&`elevation_${be}`),ref:()=>re(r),autoCapitalize:M?"off":void 0,autoComplete:M?"off":void 0,autoCorrect:M?"off":void 0,"data-testid":Z||l&&`${l}Form`||"Form","data-tour":d,spellCheck:M?"false":void 0,style:mt,onSubmit:a,children:[L,(h||Y)&&t.jsx(I.Title,{className:"form__title",dataTestId:Z?`${Z}Title`:"FormTitle",size:ue,fill:ne,textColor:de,textWeight:ce,children:h||Y}),x&&t.jsx(n.Text,{className:"form__desc",size:me,textColor:pe,textWeight:fe,"data-testid":l?`${l}Desc`:"FormDesc",children:x}),i&&!s&&t.jsx("div",{className:R.default("notification","form-notification",E?`form-notification_${E}`:"form-notification_global"),children:t.jsx(q.Notification,{appearance:"errorPrimary sizeS solid rounded",dataTestId:p.form?.dataTestId?`${p.form.dataTestId}Notification`:"FormNotification",type:"global",status:"error",text:r.getState().submitError,closeIcon:B})}),Q&&t.jsx(e.FormSpy,{subscription:{values:!0},onChange:Q}),Boolean(X&&Object.keys(X).length)&&t.jsx(A.default.Fragment,{children:W(t.jsxs(D.Group,{className:"form__wrapper",direction:"vertical",gap:w||j,style:pt,children:[Object.keys(X).map(e=>Re(X[e],{dataTestId:l||p.form?.dataTestId,key:e})),G&&(ve||t.jsx(C.Loader,{appearance:Se,className:"form__loader",dataTestId:p.form?.dataTestId?`${p.form.dataTestId}Loader`:"FormLoader",type:Me,size:ze,fill:Ce,text:Fe,itemFill:Ie,shape:Pe}))]}))}),p.buttons?t.jsx(D.Group,{className:"form__button",dataTestId:T||`${l}Buttons`,dataTour:v,direction:he,justifyContent:ge,fill:xe,padding:Te,gap:g,children:Object.keys(p.buttons).map(e=>Re(p.buttons[e],{dataTestId:l,key:e,primaryButtonHtmlType:ke,primaryButtonIsDisabled:Be,primaryButtonIsLoading:De,secondaryButtonHtmlType:Oe,secondaryButtonIsDisabled:Ge,secondaryButtonIsLoading:He,tertiaryButtonHtmlType:at,tertiaryButtonIsDisabled:st,tertiaryButtonIsLoading:it,onClickSecondaryButton:H,onClickTertiaryButton:U}))}):(qe||V||Ue||K||$||ot)&&t.jsxs(D.Group,{className:"form__button",dataTestId:T||`${l}Buttons`,dataTour:v,direction:he,justifyContent:ge,fill:xe,padding:Te,gap:g,children:[qe?t.jsx(S.Button,{appearance:we,className:"form__button-item",dataTestId:y||l&&`${l}PrimaryButton`||"FormPrimaryButton",dataTour:P,width:"fill",size:We,fill:je,fillHover:Ne,label:qe,labelTextColor:Ve,labelTextSize:Ee,labelTextWeight:Ae,htmlType:ke||"submit",isDisabled:Be,isLoading:De}):V,Ue?t.jsx(S.Button,{appearance:Ke,className:"form__button-item",dataTestId:b||l&&`${l}SecondaryButton`||"FormSecondaryButton",dataTour:z,width:"fill",size:Ye,fill:$e,fillHover:Le,label:Ue,labelTextColor:Je,labelTextSize:Qe,labelTextWeight:Xe,htmlType:Oe,isDisabled:Ge,isLoading:He,onClick:H}):K,ot?t.jsx(S.Button,{appearance:et,className:"form__button-item",dataTestId:_||l&&`${l}TertiaryButton`||"FormTertiaryButton",dataTour:F,width:"fill",size:ut,fill:tt,fillHover:rt,label:ot,labelTextColor:lt,labelTextSize:nt,labelTextWeight:dt,htmlType:at,isDisabled:st,isLoading:it,onClick:U}):$]}),O]}),decorators:[te],mutators:k,subscription:{modifiedSinceLastSubmit:!0,pristine:!0,submitError:!0,submitting:!0},validate:ee,onSubmit:J})});Object.defineProperty(exports,"Field",{enumerable:!0,get:function(){return e.Field}}),Object.defineProperty(exports,"useForm",{enumerable:!0,get:function(){return e.useForm}}),Object.defineProperty(exports,"useFormState",{enumerable:!0,get:function(){return e.useFormState}}),exports.DEFAULT_MESSAGES_FIELDS=G,exports.FieldWrapper=Z,exports.FieldWrapperBase=Y,exports.FinalForm=Ke,exports.FormFieldCheckbox=le,exports.FormFieldChips=de,exports.FormFieldChoice=ue,exports.FormFieldCode=ce,exports.FormFieldCustom=me,exports.FormFieldDadataInput=pe,exports.FormFieldDatePicker=fe,exports.FormFieldFileInput=ze,exports.FormFieldInput=Me,exports.FormFieldInputNumber=we,exports.FormFieldMaskedInput=je,exports.FormFieldPassword=Ne,exports.FormFieldRadioGroup=Be,exports.FormFieldSegmented=De,exports.FormFieldSelect=Ee,exports.FormFieldSwitch=Ve,exports.FormFieldTextarea=Ae,exports.FormGroup=Fe,exports.addRequiredFieldsParamToSchema=e=>{const t=Object.entries(e.fields);return e.requiredFields=t.reduce((e,[t,r])=>(r.exclusiveTests?.required&&e.push(t),e),[]),e},exports.createDataTestIdField=re,exports.dateValidation=e=>{const t=e instanceof Date?e:new Date(e);return!isNaN(t.getTime())},exports.defaultCheckboxProps={appearance:"defaultPrimary sizeL ghost rounded",width:"fill",errorAppearance:"errorPrimary sizeL ghost rounded",requiredAppearance:"requirePrimary sizeL ghost rounded"},exports.defaultChipsProps={appearance:"surfacePrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"warningPrimary sizeM solid rounded"},exports.defaultChoiceProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},exports.defaultCodeProps={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},exports.defaultDadataInputProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultDatepickerProps={appearance:"surfacePrimary sizeS solid rounded",dateFormat:"dd/MM/yyyy - HH:mm",readOnly:!1,selectsRange:!1,showTimeSelect:!0,timeCaption:"Время",timeFormat:"p",timeIntervals:60,isClearable:!0,isStartDefaultNull:!0},exports.defaultDropzoneProps={fill:"surfaceSecondary",fillHover:"surfaceTertiary",hintTitle:"Перетащите изображение или выберите файл с компьютера",hintTitleTextColor:"surfaceTextPrimary",hintTitleTextSize:"m",removeThumbText:"удалить",removeThumbTextColor:"errorTextPrimary",removeThumbTextHoverColor:"errorTextPrimaryHover",removeThumbTextSize:"s",shape:"rounded",showFilename:!0,thumbBorderColor:"surfaceBorderTertiary",thumbBorderColorHover:"surfaceBorderQuaternary",thumbBorderWidth:1,thumbNameTextColor:"surfaceTextPrimary",thumbNameTextSize:"s",isPreviews:!0},exports.defaultFieldProps=H,exports.defaultFieldSizeL=J,exports.defaultFieldSizeM=Q,exports.defaultFieldSizeS=U,exports.defaultFieldSizeXL=X,exports.defaultGroupProps={width:"fill",labelTextSize:"s",messageTextColor:"surfaceTextPrimary",messageTextSize:"s",errorMessageTextColor:"errorTextSecondary",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextColor:"warningTextSecondary",requiredMessageTextSize:"s"},exports.defaultInputNumberProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultInputProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultMaskedInputProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultPasswordProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultRadioProps={appearance:"defaultPrimary sizeM solid circular",errorAppearance:"errorPrimary sizeM solid circular",requiredAppearance:"requirePrimary sizeM solid circular",successAppearance:"successPrimary sizeM solid circular"},exports.defaultSegmentedProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},exports.defaultSelectProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultSwitchProps={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeL solid rounded",requiredAppearance:"requirePrimary sizeL solid rounded",successAppearance:"successPrimary sizeL solid rounded"},exports.defaultTextareaProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.emailValidation=e=>{if(!e)return!0;return/^[a-za-яёЁ0-9_-]+(?:\.[a-za-яёЁ0-9_-]+)*@(?:[a-za-яёЁ0-9](?:[a-za-яёЁ0-9-]*[a-za-яёЁ0-9])?\.)+[a-za-яёЁ0-9]+$/.test(String(e).toLowerCase())},exports.focusOnError=ee,exports.focusOnErrorDecorator=te,exports.formTypes=We,exports.generateField=Re,exports.getErrorsForFinalForm=e=>{const t={},r=e.response?.data||e;if(r)if("string"==typeof r)t[d.FORM_ERROR]="Во время обработки запроса произошла ошибка, попробуйте повторить запрос";else for(const e in r){t["non_field_errors"===e||"detail"===e?d.FORM_ERROR:e]=O.default(r[e])[0]}else t[d.FORM_ERROR]=e.message||"Произошла ошибка";return t},exports.parseNumericField=e=>{const t=e.slice(0,10).replace(/,/g,".").replace(/[^\d.]/g,""),r=parseFloat(t);return r||0===r?t.endsWith(".")&&(t.match(/\./g)||[]).length>1?t.slice(0,-1):t:""},exports.phoneValidation=e=>!e||E.isPossiblePhoneNumber(e,"RU"),exports.sendFormDataToServer=async(e,t)=>{try{return{response:await W.default({url:e,method:"POST",data:t}),success:!0}}catch(e){const t=e,r={};return"string"==typeof t.response?.data&&(r[d.FORM_ERROR]="Something went wrong"),"object"==typeof t.response?.data&&Object.entries(t.response.data).forEach(([e,t])=>{r[e]=t[0]}),{error:t,formErrors:r,success:!1}}},exports.setErrorsMutator=(e,t)=>{const[r,a]=e,s=a.submitError,i=a.error;if("non_field_errors"===r||r===d.FORM_ERROR)t.formState.error=i,t.formState.submitError=s;else if(r in t.fields){if(t.fields[r].touched=!0,i||""===i){const e=Object.assign({},t.formState.errors,{[r]:i});t.fields[r].error=i,t.formState.errors=e}if(s||""===s){const e=Object.assign({},t.formState.submitErrors,{[r]:s});t.fields[r].submitFailed=!0,t.fields[r].submitSucceeded=!1,t.fields[r].submitError=s,t.formState.submitErrors=e,t.formState.submitFailed=!0,t.formState.submitSucceeded=!1,t.formState.lastSubmittedValues=t.formState.values}}},exports.useYupValidationSchema=ie;
|
|
1
|
+
"use strict";var e=require("react-final-form"),t=require("react/jsx-runtime"),r=require("react"),a=require("clsx"),s=require("@itcase/ui-web/components/Checkbox"),i=require("@itcase/ui-core/hooks"),o=require("@itcase/ui-web/components/Divider"),n=require("@itcase/ui-web/components/Text"),l=require("axios"),d=require("final-form"),u=require("final-form-focus"),c=require("lodash/camelCase"),m=require("lodash/snakeCase"),p=require("@itcase/ui-web/components/Chips"),f=require("@itcase/ui-web/components/Choice"),g=require("@itcase/ui-web/components/Code"),h=require("@itcase/ui-web/components/Icon"),y=require("@itcase/ui-web/components/Dadata"),x=require("@itcase/ui-web/components/DatePicker"),_=require("lodash/castArray"),T=require("@itcase/ui-web/components/Dropzone"),b=require("@itcase/ui-web/components/Title"),S=require("@itcase/ui-web/components/Input"),v=require("@itcase/ui-web/components/InputNumber"),I=require("react-imask"),C=require("@itcase/ui-web/components/InputPassword"),P=require("@itcase/ui-web/components/Radio"),M=require("@itcase/ui-web/components/Segmented"),F=require("@itcase/ui-web/components/Select"),z=require("@itcase/ui-web/components/Switch"),w=require("@itcase/ui-web/components/Textarea"),k=require("@itcase/ui-web/components/Button"),N=require("@itcase/ui-web/components/Group"),j=require("@itcase/ui-web/components/Loader"),q=require("@itcase/ui-web/components/Notification"),B=require("libphonenumber-js");function D(e){return e&&e.__esModule?e:{default:e}}var E=D(r),V=D(a),A=D(l),K=D(u),R=D(c),$=D(m),L=D(_);const O={email_error:{key:"error",message:"Введите корректный адрес электронной почты"},email_required:{key:"required",message:"Укажите адрес электронной почты"},invalid_value:{key:"error",message:"Некорректное значение"},min:{key:"error",message:({min:e})=>`Значение должно быть не менее ${e} символов`},max:{key:"error",message:({max:e})=>`Значение должно быть не менее ${e} символов`},matches:{key:"error",message:"Допускается ввод только цифр от 0 до 9"},numeric_value:{key:"error",message:"Только числовое значение"},password_required:{key:"required",message:"Введите пароль"},phone_error:{key:"error",message:"Введите корректный номер телефона"},phone_or_email_required:{key:"required",message:"Введите телефон или адрес эл. почты"},phone_required:{key:"required",message:"Укажите номер телефона"},required:{key:"required",message:"Обязательное поле"},url:{key:"error",message:"Введите корректный URL-адрес"}},G={width:"fill",direction:"vertical",labelTextColor:"surfaceTextPrimary",messageTextColor:"surfaceTextSecondary",dividerFill:"errorPrimary",errorMessageTextColor:"errorTextSecondary",helpTextColor:"surfaceTextQuaternary",requiredMessageTextColor:"warningTextSecondary",showMessage:!0},W={size:"s",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...G},H={size:"m",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...G},U={size:"l",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...G},J={size:"xl",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...G};function Q(e){const{className:a,dataTestId:s,dataTour:l,type:d,label:u,labelHidden:c,labelTextColor:m,labelTextSize:p,labelTextWeight:f,messageTextSize:g,desc:h,descTextColor:y,descTextSize:x,descTextWeight:_,afterItem:T,beforeItem:b,dividerDirection:S,dividerFill:v,dividerSize:I,dividerWidth:C,errorKey:P,errorMessage:M,fieldClassName:F,helpText:z,helpTextColor:w,helpTextColorSuccess:k,helpTextSize:N,helpTextWeight:j,inputName:q,inputValue:B,metaActive:D,metaError:E,showDivider:A,showMessage:K,tag:R="div",before:$,after:L,isDisabled:O,isErrorState:G,isHidden:W,isRequired:H,isValidState:U,children:J}=e,Q=r.useMemo(()=>V.default(a,U&&"form__item_state_success",H&&"form__item_state_required",O&&"form__item_state_disabled",D&&"form__item_state_focus",B&&"form__item_state_filled",G&&`form__item_state_${P}`),[a,G,U,H,D,B,O,E]),X=r.useMemo(()=>V.default(F,U&&`${F}_state_success`,D&&`${F}_state_focus`,B&&`${F}_state_filled`,O&&`${F}_state_disabled`,G&&`${F}_state_${P}`),[F,G,U,D,B,O,E]),Y=i.useDeviceTargetClass(e,{prefix:"form-field_size_",propsKey:"size"}),Z=i.useDeviceTargetClass(e,{prefix:"fill_",propsKey:"fill"}),ee=i.useDeviceTargetClass(e,{prefix:"fill_",propsKey:"inputFill"}),te=i.useDeviceTargetClass(e,{prefix:"form-field_shape_",propsKey:"shape"}),re=i.useDeviceTargetClass(e,{prefix:"form-field__item-value_shape_",propsKey:"inputShape"}),ae=i.useDeviceTargetClass(e,{prefix:"direction_",propsKey:"direction"}),se=i.useDeviceTargetClass(e,{prefix:"width_",propsKey:"width"}),{styles:ie}=i.useStyles(e),oe=e[`${P}MessageTextSize`],ne=e[`${P}MessageTextColor`],le=e[`${P}MessageTextWeight`],de=`${s||`${q}Field`}Message`;return t.jsxs(R,{className:V.default(Q,"form__item","form-field",d?`form-field_type_${d}`:"form-field_type_classic",Y,Z,te,O&&"form-field_state_disabled",W&&"form-field_state_hidden",ae,se),"data-testid":s,"data-tour":l,style:ie,children:[$,(u||c)&&t.jsx("div",{className:V.default("form-field__label",`text_size_${p}`),"data-testid":`${s}Label`,children:t.jsxs(n.Text,{size:p,textColor:m,textWeight:f,children:[u,c&&" "]})}),h&&t.jsx("div",{className:V.default("form-field__desc",`text_size_${x}`),"data-testid":`${s}Desc`,children:t.jsx(n.Text,{size:x,textColor:y,textWeight:_,children:h})}),t.jsxs("div",{className:V.default("form-field__content",ee,re),children:[t.jsxs("div",{className:V.default("form-field__content-inner",X),children:[b,J,T]}),A&&t.jsx(o.Divider,{className:"form-field__item-divider",width:C,direction:S,size:I,fill:v})]}),K&&t.jsxs("div",{className:V.default("form-field__message",`text_size_${oe||N||g}`),"data-testid":de,children:[G&&M&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type-error",dataTestId:`${s}MessageError`,size:oe,textColor:ne,textWeight:le,children:M}),Boolean(z)&&(!G||!M)&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${s}MessageHelpText`,size:N,textColor:U?k:w,textWeight:j,children:z}),(!G&&!z||G&&!z&&!M)&&t.jsx(n.Text,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${s}MessageHelpText`,size:g,children:" "})]}),L]})}function X(a){const{inputName:s}=a,{change:i}=e.useForm();return r.useEffect(()=>()=>{i(s,void 0)},[]),t.jsx(Q,{...a})}const Y=(e,t)=>{const r=e,a=Object.keys(t).map(e=>e===d.FORM_ERROR?"notification__item_status_error":`react-select-id_${e}-input`),s=r.find(e=>e.name?d.getIn(t,e.name):a.includes(e.id)),i=Object.keys(t);if(!s&&i.length){let e;try{const t=i[0];t===d.FORM_ERROR?e=document.querySelector("notification__item_status_error"):(e=document.querySelector(`#${t}-error`),e||(e=document.querySelector(`#id_${t}`)))}catch(e){console.warn(e)}e&&e.scrollIntoView({block:"center"})}s&&s.scrollIntoView({block:"center"})},Z=K.default(void 0,Y),ee=(e,t)=>{const r=(e=>e.replace(/(^|[_-])([a-zA-Z0-9])/g,(e,t,r)=>r.toUpperCase()))(e);return t&&t.endsWith("Field")?t:t?t+r+"Field":r+"Field"},te=(e,t)=>d.setIn(e,t.path,t.message),re=Object.create(null);function ae(e,t){const a=r.useMemo(()=>e&&(e=>async function(t){try{await(e?.validate(t,{abortEarly:!1}))}catch(e){const t=e;if(t.message)return t.inner.reduce(te,re);console.warn("itcase-forms schema.validate error: An error not related to the form occurred during validation. Validation ignored.")}})(e),[e,t]);return a}function se(e){const{fieldProps:t={},input:a={},meta:s={}}=e,i=!s.modifiedSinceLastSubmit&&s.submitError,o=s.error?.key||"error",n=r.useMemo(()=>t.showErrorsOnSubmit?Boolean(s.submitFailed&&s.touched&&(s.error||i)):Boolean(s.touched&&(s.error||i)),[t.showErrorsOnSubmit,s.submitFailed,s.touched,s.error,i]),l=r.useMemo(()=>{const e=Array.isArray(a?.value)?a?.value.length:a?.value,t=s.modifiedSinceLastSubmit&&!s.error&&i;return Boolean(e&&(s.valid||t))},[a?.value,s.valid,s.error,i,s.modifiedSinceLastSubmit]);return{errorKey:o,errorMessage:r.useMemo(()=>{const e=s.error||i||!1;if(e){if("string"==typeof e)return e;if(e.message)return e.message}return""},[s.error,i]),successKey:"success",isErrorState:n,isValidState:l}}function ie(e){const{inputProps:t,validationStateKey:a}=e;return r.useMemo(()=>{const e={};return a?(Object.entries(t||{}).forEach(([t,r])=>{const s=$.default(t);if(s.startsWith(`${a}_`)){const t=s.replace(`${a}_`,""),i=R.default(t);e[i]=r}else e[t]||(e[t]=r)}),e):t},[a,t])}const oe=E.default.memo(function(a){const{dataTestId:i,name:o,initialValue:n,classNameGroupItem:l,fieldProps:d={},inputProps:u={},showMessage:c,isDisabled:m,isRequired:p,onChange:f}=a;return t.jsx(e.Field,{type:"checkbox",name:o,initialValue:n,children:function({input:e,meta:a}){const o=r.useCallback(t=>{t&&(e.onChange(t),f&&f(t.target.checked,e.name))},[f,e.onChange]),{errorKey:n,errorMessage:g,successKey:h,isErrorState:y,isValidState:x}=se({fieldProps:d,input:e,meta:a}),_=ie({inputProps:u,validationStateKey:y?n:x?h:null}),T=ee(e.name,i);return t.jsx(X,{className:V.default("form-field-checkbox","form__item_checkbox",l),dataTestId:T,errorKey:n,errorMessage:g,fieldClassName:"form-checkbox",inputName:e.name,inputValue:e.checked,metaActive:a.active,metaError:a.error,showMessage:c,tag:"label",isDisabled:m,isErrorState:y,isRequired:p,isValidState:x,...d,children:t.jsx(s.Checkbox,{checked:e.checked,isActive:e.checked,isDisabled:m,onBlur:e.onBlur,onChange:o,onFocus:e.onFocus,..._})})}})});function ne(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:l,emptyMessage:d,emptyMessageTextColor:u,emptyMessageTextSize:c,fieldProps:m,inputProps:f,options:g,showMessage:h,isDisabled:y,isRequired:x,onChange:_}=a,{change:T}=e.useForm(),b=r.useCallback((e,t)=>{const r=e.includes(t)?e.filter(e=>e!==t):[...e,t];T(i,r),_&&_(r)},[T,i,_]);return r.useEffect(()=>{o&&T(i,o)},[o]),t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const{errorKey:i,errorMessage:o,successKey:_,isErrorState:T,isValidState:S}=se({fieldProps:m,input:e,meta:a}),v=ie({inputProps:f,validationStateKey:T?i:S?_:null}),I=r.useMemo(()=>{const t=[{label:null,value:null}];if(e?.value){return g.filter(t=>e.value?.includes(t.value))||t}return t},[e.value]),C=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_chips","form__item_chips",l),dataTestId:C,errorKey:i,errorMessage:o,fieldClassName:"form-chips",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:h,isDisabled:y,isErrorState:T,isRequired:x,isValidState:S,...m,children:g?.length?t.jsx(p.ChipsGroup,{direction:"horizontal",gap:"1m",wrap:"wrap",children:g.map(r=>t.jsx(p.Chips,{className:V.default(a.active&&"form-chips_state_focus",a.error&&a.touched&&`form-chips_state_${i}`),label:r.label,isActive:I.some(e=>e.value===r.value),isDisabled:r.isDisabled,onClick:()=>b(e.value,r.value),...v},r.value))}):t.jsx(n.Text,{size:c,textColor:u,children:d})})}})}const le=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,label:n,classNameGroupItem:l,fieldProps:d,inputProps:u,options:c,showMessage:m,isDisabled:p,isCheckbox:g,isRequired:h,onChange:y}=a,{change:x}=e.useForm(),_=r.useCallback((e,t)=>{x(i,t&&e.value),y&&y(e.value,i,t)},[x,y]);return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const i=r.useMemo(()=>{const t={label:null,value:null};if(e.value){return c.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:o,errorMessage:y,successKey:x,isErrorState:T,isValidState:b}=se({fieldProps:d,input:e,meta:a}),S=ie({inputProps:u,validationStateKey:T?o:b?x:null}),v=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_choice","form__item_choice",l),dataTestId:v,label:n,errorKey:o,errorMessage:y,fieldClassName:"form-choice",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:T,isRequired:h,isValidState:b,...d,children:t.jsx(f.Choice,{className:V.default(a.active&&"form-choice_state_focus",a.error&&a.touched&&`form-choice_state_${o}`),name:e.name,active:i,options:c,isDisabled:p,isCheckbox:g,setActiveSegment:_,...S})})}})}),de=E.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,label:o,classNameGroupItem:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:m,type:p,...f}=r,h={...f,...d};return t.jsx(e.Field,{name:s,initialValue:i,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:i,successKey:d,isErrorState:p,isValidState:f}=se({fieldProps:l,input:e,meta:r}),y=ie({inputProps:h,validationStateKey:p?s:f?d:null}),x=ee(e.name,a);return t.jsx(X,{className:V.default("form-field-code","form__item_code",n),dataTestId:x,label:o,errorKey:s,errorMessage:i,fieldClassName:"form-code",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:u,isDisabled:c,isErrorState:p,isRequired:m,isValidState:f,...l,children:t.jsx(g.Code,{initialValue:e.value,isDisabled:c,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...y})})}})}),ue=E.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,classNameGroupItem:o,clearIcon:n,clearIconFill:l,clearIconFillHover:d,clearIconShape:u,clearIconSize:c,Component:m,fieldProps:p={},showMessage:f,isDisabled:g,isRequired:y,onClickClearIcon:x}=r;return t.jsx(e.Field,{name:s,initialValue:i,children:function({input:e,meta:s}){const{errorKey:i,errorMessage:_,isErrorState:T,isValidState:b}=se({fieldProps:p,input:e,meta:s}),S=ie({inputProps:r,validationStateKey:T?i:"success"}),v=ee(e.name,a);return t.jsxs(X,{className:V.default("form-field_custom","form__item_custom",o),dataTestId:v,errorKey:i,errorMessage:_,fieldClassName:"form-custom",inputName:e.name,inputValue:String(e.value??""),metaActive:s.active,metaError:s.error,showMessage:f,isDisabled:g,isErrorState:T,isRequired:y,isValidState:b,...p,children:[t.jsx(m,{...S,input:e,meta:s,isDisabled:g}),n&&t.jsx(h.Icon,{className:"form-field__icon",size:c,iconFill:l,iconFillHover:d,imageSrc:n,shape:u,SvgImage:n,onClick:x})]})}})}),ce=E.default.memo(function(r){const{dataTestId:a,name:s,initialValue:i,classNameGroupItem:o,fieldProps:n,inputProps:l,parse:d,showMessage:u,token:c,isDisabled:m,isRequired:p,onDadataAutocomplete:f}=r;if("development"===process.env.NODE_ENV){const e=`Check your form config at field "${s}".`;if(!c){throw new Error(`FormFieldDadataInput: 'token' prop is missing, instead got ${c}.`+"\n"+e)}if(!f){throw new Error(`FormFieldDadataInput: 'onDadataAutocomplete' prop is missing, instead got ${f}.`+"\n"+e)}}return t.jsx(e.Field,{name:s,initialValue:i,parse:d,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:i,successKey:d,isErrorState:g,isValidState:h}=se({fieldProps:n,input:e,meta:r}),x=ie({inputProps:l,validationStateKey:g?s:h?d:null}),_=ee(e.name,a);return t.jsx(X,{className:V.default("form-field_input-dadata","form__item_input-dadata",o),dataTestId:_,errorKey:s,errorMessage:i,fieldClassName:"form-dadata",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:u,isDisabled:m,isErrorState:g,isRequired:p,isValidState:h,...n,children:t.jsx(y.Dadata,{input:e,inputProps:x,meta:r,token:c,setValue:f})})}})});function me(a){const{dataTestId:s,name:i,classNameGroupItem:o,datePickerProps:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:m,onChange:p}=a;return t.jsx(e.Field,{name:i,children:function({input:e,meta:a}){const i=r.useCallback((t,r)=>{n?.selectsRange?e.onChange({endDate:r,startDate:t}):e.onChange(t),p&&p(t,r)},[e.onChange,p]),{errorKey:f,errorMessage:g,successKey:h,isErrorState:y,isValidState:_}=se({fieldProps:l,input:e,meta:a}),T=ie({inputProps:d,validationStateKey:y?f:_?h:null}),b=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_datepicker","form__item_datepicker",o),dataTestId:b,errorKey:f,errorMessage:g,fieldClassName:"form-datepicker",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:u,isDisabled:c,isErrorState:y,isRequired:m,isValidState:_,...l,children:t.jsx(x.DatePickerInput,{name:e.name,datePickerProps:n,endValue:n?.selectsRange?e.value.endDate:null,inputProps:T,value:n?.selectsRange?e.value.startDate:e.value,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus})})}})}var pe=["dataTestId","type","name","width","maxFiles","label","classNameGroupItem","dropzoneProps","fieldProps","inputProps","showMessage","isDisabled","isRequired","onClickPreview","onAddFiles","onDeleteFile"];var fe=E.default.memo(function(a){var s=a.dataTestId;a.type;var i=a.name,o=a.width,n=a.maxFiles,l=a.label,d=a.classNameGroupItem,u=a.dropzoneProps,c=a.fieldProps,m=void 0===c?{}:c,p=a.inputProps,f=void 0===p?{}:p,g=a.showMessage,h=a.isDisabled,y=a.isRequired,x=a.onClickPreview,_=a.onAddFiles,b=a.onDeleteFile,S=function(e,t){if(null==e)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(a,pe),v=Object.assign({},S,f);return t.jsx(e.Field,{name:i,children:function(e){var a,i,c,p=e.input,f=e.meta,S=se({fieldProps:m,input:p,meta:f}),I=S.errorKey,C=S.errorMessage,P=S.successKey,M=S.isErrorState,F=S.isValidState,z=ie({inputProps:v,validationStateKey:M?I:F?P:null}),w=null!=(a=null!=(i=null==u?void 0:u.maxFiles)?i:n)?a:5,k=r.useCallback(function(e){p.onChange(1===w?e[0]:e)},[p,w]),N=r.useMemo(function(){return null==p.value||""===p.value?[]:L.default(p.value)},[p.value]),j=ee(p.name,s);return t.jsx(X,Object.assign({className:V.default("form-field_type_dropzone","form__item_type_dropzone",d),dataTestId:j,width:o,label:l,errorKey:I,errorMessage:C,fieldClassName:"form-dropzone",inputName:p.name,inputValue:(c=p.value,Array.isArray(c)?c.length>0?c:"":null!=c?c:""),metaActive:f.active,metaError:f.error,showMessage:g,isDisabled:h,isErrorState:M,isRequired:y,isValidState:F},m,{children:t.jsx(T.Dropzone,Object.assign({},z,{maxFiles:n,dropzoneProps:u,fieldValuesList:N,inputName:p.name,onClickPreview:x,onAddFiles:_,onChangeFiles:k,onDeleteFile:b}))}))}})});const ge=E.default.memo(function(r){const{className:a,dataTestId:s,dataTour:o,name:l,title:d,titleTextColor:u,titleTextSize:c,titleTextWeight:m,label:p,labelTextColor:f,labelTextSize:g,labelTextWeight:h,message:y,messageTextColor:x,messageTextSize:_,messageTextWeight:T,column:S,showGroupMessage:v,before:I,after:C,isActive:P,isDisabled:M,isHidden:F,children:z}=r,w=i.useDevicePropsGenerator(r),{fillActiveClass:k,fillActiveHoverClass:N,fillClass:j,fillDisabledClass:q,fillHoverClass:B,shapeClass:D}=w,{styles:A}=i.useStyles(r),K=ee(l,s);return t.jsx(e.Field,{name:l,children:function({input:e,meta:s}){const{errorKey:i,errorMessage:w,isErrorState:R}=se({fieldProps:r,input:e,meta:s}),$=ie({inputProps:r,validationStateKey:R?i:"success"});return t.jsxs("div",{className:V.default("form__group",a,F&&"form__group_hidden",M?q&&`fill_${q}`:P?k&&`fill_active_${k}`:j&&`fill_${j}`,M?q&&`fill_${q}`:P?N&&`fill_active_hover_${N}`:B&&`fill_hover_${B}`,D&&`shape_${D}`,S&&`form__group_column_${S}`),"data-testid":K,"data-tour":o,style:A,children:[t.jsxs("div",{className:"form__group-wrapper",children:[I,d&&t.jsx("div",{className:"form__group-title",children:t.jsx(b.Title,{dataTestId:`${K}Title`,size:c,textColor:u,textWeight:m,children:d})}),p&&t.jsx("div",{className:"form__group-label",children:t.jsx(n.Text,{dataTestId:`${K}Label`,size:g,textColor:f,textWeight:h,children:p})}),t.jsx("div",{className:"form__group-items",children:z}),C]}),v&&t.jsxs(E.default.Fragment,{children:[R&&w&&t.jsx(n.Text,{className:`form__group-message form__group-message_type-${i}`,dataTestId:`${K}MessageError`,size:$.messageTextSize,textColor:$.messageTextColor,textWeight:$.messageTextWeight,children:w}),Boolean(y)&&(!R||!w)&&t.jsx(n.Text,{className:"form__group-message",dataTestId:`${l}GroupMessage`,size:_,textColor:x,textWeight:T,children:y}),!R&&!y&&t.jsx(n.Text,{className:"form__group-message",size:_,children:" "})]})]})}})}),he=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:m,fieldProps:p={},inputProps:f={},parse:g,showMessage:y,isDisabled:x,isRequired:_,onClickClearIcon:T,onChange:b}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:g,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),b&&b(t.target.value,e.name)},[b,e]),{errorKey:o,errorMessage:g,successKey:v,isErrorState:I,isValidState:C}=se({fieldProps:p,input:e,meta:a}),P=ie({inputProps:f,validationStateKey:I?o:C?v:null}),M=ee(e.name,s);return t.jsxs(X,{className:V.default("form-field_input","form__item_input",n),dataTestId:M,errorKey:o,errorMessage:g,fieldClassName:"form-input",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:y,isDisabled:x,isErrorState:I,isRequired:_,isValidState:C,...p,children:[t.jsx(S.Input,{className:V.default(a.active&&"input_state_focus",a.error&&a.touched&&`input_state_${o}`),dataTestId:`${M}Input`,type:"text",name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:x,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus,...P}),l&&t.jsx(h.Icon,{className:"form-field__icon",dataTestId:`${M}InputIcon`,size:m,iconFill:d,iconFillHover:u,imageSrc:"string"==typeof l&&l,shape:c,SvgImage:"string"!=typeof l&&l,onClick:T})]})}})}),ye=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l={},inputProps:d={},inputType:u="custom",parse:c,showMessage:m,isDisabled:p,isRequired:f,onChange:g}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:c,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),g&&g(t.target.value)},[g,e.onChange]),{errorKey:o,errorMessage:c,successKey:h,isErrorState:y,isValidState:x}=se({fieldProps:l,input:e,meta:a}),_=ie({inputProps:d,validationStateKey:y?o:x?h:null}),T=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_input-number","form__item_input-number",n),dataTestId:T,errorKey:o,errorMessage:c,fieldClassName:"form-input-number",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:y,isRequired:f,isValidState:x,...l,children:t.jsx(v.InputNumber,{className:V.default(a.active&&"input_state_focus",(a.submitFailed||a.touched)&&a.error&&`input_state_${o}`),dataTestId:`${T}InputNumber`,type:u,name:e.name,value:Number(e.value)||0,onChange:i,..._})})}})}),xe=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:m,fieldProps:p={},inputProps:f={},optionsMask:g,showMessage:y,unmasked:x,isDisabled:_,isRequired:T,onClickClearIcon:b}=a;return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const{ref:i,unmaskedValue:v,value:C,setUnmaskedValue:P}=I.useIMask(g,{defaultValue:o,onAccept:(t,r,a)=>{a&&e.onChange(r._unmaskedValue)}});r.useEffect(()=>{e.value!==v&&P(e.value.replace(x,""))},[e.value]);const{errorKey:M,errorMessage:F,successKey:z,isErrorState:w,isValidState:k}=se({fieldProps:p,input:e,meta:a}),N=ie({inputProps:f,validationStateKey:w?M:k?z:null}),j=ee(e.name,s);return t.jsxs(X,{className:V.default("form-field-masked-input","form__item_masked-input",n),dataTestId:j,errorKey:M,errorMessage:F,fieldClassName:"form-maskedInput",inputName:e.name,inputValue:String(e.value??x??""),metaActive:a.active,metaError:a.error,showMessage:y,isDisabled:_,isErrorState:w,isRequired:T,isValidState:k,...p,children:[t.jsx(S.Input,{className:V.default(a.active&&"input_state_focus",a.error&&a.touched&&`input_state_${M}`),ref:i,value:C,onBlur:e.onBlur,onFocus:e.onFocus,...N}),l&&t.jsx(h.Icon,{className:"form-field__icon",size:m,iconFill:d,iconFillHover:u,imageSrc:l,shape:c,SvgImage:l,onClick:b})]})}})}),_e=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l,inputProps:d,parse:u,showMessage:c,isDisabled:m,isRequired:p,onChange:f}=a;return t.jsx(e.Field,{name:i,initialValue:o,parse:u,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),f&&f(t.target.value,e.name)},[f,e.onChange]),{errorKey:o,errorMessage:u,successKey:g,isErrorState:h,isValidState:y}=se({fieldProps:l,input:e,meta:a}),x=ie({inputProps:d,validationStateKey:h?o:y?g:null}),_=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_input-password","form__item_input-password",n),dataTestId:_,errorKey:o,errorMessage:u,fieldClassName:"form-password",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:c,isDisabled:m,isErrorState:h,isRequired:p,isValidState:y,...l,children:t.jsx(C.InputPassword,{className:V.default(a.active&&"input-password_state_focus",a.error&&a.touched&&`input-password_state_${o}`),dataTestId:`${_}InputPassword`,name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:m,onBlur:e.onBlur,onChange:i,onFocus:e.onFocus,...x})})}})});function Te(e){const{input:a,inputProps:s,options:i,onChange:o}=e,n=r.useCallback(e=>{a.onChange(e),o&&o(e,a.name)},[a,o]),l=r.useCallback(e=>{e.target.checked&&n(e.target.value)},[o]);return t.jsx(E.default.Fragment,{children:i.map(e=>t.jsx(P.Radio,{className:"form-radio__item",label:e.label,checked:e.value===a.value,value:e.value,onChange:l,...s},e.value))})}const be=E.default.memo(function(r){const{dataTestId:a,name:s,classNameGroupItem:i,fieldProps:o={},inputProps:n={},options:l=[],showMessage:d,isDisabled:u,isRequired:c,onChange:m}=r;return t.jsx(e.Field,{name:s,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:p,successKey:f,isErrorState:g,isValidState:h}=se({fieldProps:o,input:e,meta:r}),y=ie({inputProps:n,validationStateKey:g?s:h?f:null}),x=ee(e.name,a);return t.jsx(X,{className:V.default("form-field_radio","form__item_radio",i),dataTestId:x,errorKey:s,errorMessage:p,fieldClassName:"form-radio",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:d,isDisabled:u,isErrorState:g,isRequired:c,isValidState:h,...o,children:t.jsx(Te,{input:e,inputProps:y,options:l,onChange:m})})}})});function Se(a){const{dataTestId:s,name:i,fieldProps:o,inputProps:n,options:l,showMessage:d,isDisabled:u,isRequired:c}=a,{change:m}=e.useForm(),p=r.useCallback(e=>{m(i,e.value)},[m]);return t.jsx(e.Field,{name:i,children:function({input:e,meta:a}){const i=r.useMemo(()=>{const t={label:null,value:null};if(e.value){return l.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:m,errorMessage:f,successKey:g,isErrorState:h,isValidState:y}=se({fieldProps:o,input:e,meta:a}),x=ie({inputProps:n,validationStateKey:h?m:y?g:null}),_=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_segmented","form__item_segmented"),dataTestId:_,errorKey:m,errorMessage:f,fieldClassName:"form-segmented",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:d,isDisabled:u,isErrorState:h,isRequired:c,isValidState:y,...o,children:t.jsx(M.Segmented,{activeSegment:i,segments:l,isDisabled:u,setActiveSegment:p,...x})})}})}function ve(e){const{options:t,selectValue:r}=e,a=Array.isArray(r)?r:[r];let s=[];return t.forEach(e=>{const t=a.includes(e.value),i=a.includes(e.label);let o=[];e.options&&(o=ve({options:e.options,selectValue:r})),t||i?s.push(e):o.length&&(s=s.concat(o))}),s}const Ie=E.default.memo(function(a){const{dataTestId:s,name:i,initialValue:o,classNameGroupItem:n,fieldProps:l,options:d=[],selectProps:u,selectRef:c,showMessage:m,isDisabled:p,isRequired:f,onChange:g,onInputChange:h}=a;return t.jsx(e.Field,{name:i,initialValue:o,children:function({input:e,meta:a}){const[i,o]=r.useState(null),y=r.useMemo(()=>{const t=ve({options:d,selectValue:e.value});return!t.length&&e.value?.length&&t.push({label:e.label,value:e.value}),t},[e.label,e.value]),x=r.useCallback(t=>{e.onChange(t),g&&g(t,{name:e.name})},[g,e.onChange]),_=r.useCallback(e=>{const t=Array.isArray(e)?e.map(e=>e.value):e?.value||null;o(e),x(t)},[x]);r.useEffect(()=>{o(y)},[y]);const{errorKey:T,errorMessage:b,successKey:S,isErrorState:v,isValidState:I}=se({fieldProps:l,input:e,meta:a}),C=ie({inputProps:u,validationStateKey:v?T:I?S:null}),P=ee(e.name,s);return t.jsx(X,{className:V.default("form-field_select","form__item_select",n),dataTestId:P,errorKey:T,errorMessage:b,fieldClassName:"form-select",inputName:e.name,inputValue:String(e.value??""),metaActive:a.active,metaError:a.error,showMessage:m,isDisabled:p,isErrorState:v,isRequired:f,isValidState:I,...l,children:t.jsx(F.Select,{className:"form-select-item",ref:c,instanceId:`id_${e.name}`,options:d,value:i,isDisabled:p,onChange:_,onInputChange:h,...C})})}})}),Ce=E.default.memo(function(a){const{dataTestId:s,name:i,classNameGroupItem:o,fieldProps:n={},inputProps:l={},showMessage:d,isDisabled:u,isRequired:c,onChange:m}=a;return t.jsx(e.Field,{type:"checkbox",name:i,children:function({input:e,meta:a}){const i=r.useCallback(t=>{e.onChange(t),m&&m(t.target.checked,e.name)},[m,e.onChange]),{errorKey:p,errorMessage:f,successKey:g,isErrorState:h,isValidState:y}=se({fieldProps:n,input:e,meta:a}),x=ie({inputProps:l,validationStateKey:h?p:y?g:null}),_=ee(e.name,s);return t.jsx(X,{className:V.default("form-field-switch","form__item_switch",o),dataTestId:_,errorKey:p,errorMessage:f,fieldClassName:"form-switch",inputName:e.name,inputValue:e.checked,metaActive:a.active,metaError:a.error,showMessage:d,tag:"label",isDisabled:u,isErrorState:h,isRequired:c,isValidState:y,...n,children:t.jsx(z.Switch,{isActive:e.checked,isDisabled:u,onChange:i,...x})})}})}),Pe=E.default.memo(function(r){const{dataTestId:a,name:s,classNameGroupItem:i,fieldProps:o={},inputProps:n={},showMessage:l,isDisabled:d,isRequired:u}=r;return t.jsx(e.Field,{name:s,children:function({input:e,meta:r}){const{errorKey:s,errorMessage:c,successKey:m,isErrorState:p,isValidState:f}=se({fieldProps:o,input:e,meta:r}),g=ie({inputProps:n,validationStateKey:p?s:f?m:null}),h=ee(e.name,a);return t.jsx(X,{className:V.default("form-field_textarea","form__item_textarea",i),dataTestId:h,errorKey:s,errorMessage:c,fieldClassName:"form-textarea",inputName:e.name,inputValue:String(e.value??""),metaActive:r.active,metaError:r.error,showMessage:l,isDisabled:d,isErrorState:p,isRequired:u,isValidState:f,...o,children:t.jsx(w.Textarea,{className:V.default(r.active&&"textarea_state_focus",r.error&&r.touched&&`textarea_state_${s}`),dataTestId:`${h}Textarea`,name:e.name,value:String(e.value??""),isDisabled:d,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...g})})}})});function Me(e,a){switch(e.type){case Fe.password:return t.jsx(_e,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.primaryButton:return r.createElement(k.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormPrimaryButton",key:a.key,width:"fill",htmlType:a.primaryButtonHtmlType||"submit",isDisabled:a.primaryButtonIsDisabled,isLoading:a.primaryButtonIsLoading});case Fe.secondaryButton:return r.createElement(k.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormSecondaryButton",key:a.key,width:"fill",htmlType:a.secondaryButtonHtmlType,isDisabled:a.secondaryButtonIsDisabled,isLoading:a.secondaryButtonIsLoading,onClick:a.onClickSecondaryButton});case Fe.tertiaryButton:return r.createElement(k.Button,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormTertiaryButton",key:a.key,width:"fill",htmlType:a.tertiaryButtonHtmlType,isDisabled:a.tertiaryButtonIsDisabled,isLoading:a.tertiaryButtonIsLoading,onClick:a.onClickTertiaryButton});case Fe.checkbox:return t.jsx(oe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.choice:return t.jsx(le,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.code:return t.jsx(de,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.chips:return t.jsx(ne,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.switch:return t.jsx(Ce,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.segmented:return t.jsx(Se,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.datePicker:return t.jsx(me,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.fileInput:return t.jsx(fe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.radioGroup:return t.jsx(be,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.select:return t.jsx(Ie,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.text:return t.jsx(he,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.textarea:return t.jsx(Pe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.maskedInput:return t.jsx(xe,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.custom:return t.jsx(ue,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.dadataInput:return t.jsx(ce,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.inputNumber:return t.jsx(ye,{...e,dataTestId:e.dataTestId??a.dataTestId},a.key);case Fe.group:return t.jsx(ge,{...e,dataTestId:e.dataTestId??a.dataTestId,children:Object.entries(e.group).map(([t,r])=>{const s={...r,classNameGroupItem:r.classNameGroupItem||"form__group-item",showMessage:e.showMessage};return Me(s,{...a,dataTestId:s.dataTestId??a.dataTestId,key:t+"_form_group"})})},a.key)}}const Fe={secondaryButton:"secondaryButton",primaryButton:"primaryButton",tertiaryButton:"tertiaryButton",checkbox:"checkbox",chips:"chips",choice:"choice",code:"code",custom:"custom",dadataInput:"dadataInput",datePicker:"datePicker",dateRangePicker:"dateRangePicker",fileInput:"fileInput",group:"group",inputNumber:"inputNumber",maskedInput:"maskedInput",password:"password",radioGroup:"radioGroup",segmented:"segmented",select:"select",switch:"switch",text:"text",textarea:"textarea"},ze=E.default.forwardRef(function(a,s){const{className:o,dataTestId:l,dataTour:d,type:u,initialValues:c,initialValuesEqual:m,config:p,validationSchema:f,title:g,desc:h,buttonGap:y,dataTestIdButtons:x,dataTestIdPrimaryButton:_,dataTestIdSecondaryButton:T,dataTestIdTertiaryButton:S,dataTourButtons:v,dataTourPrimaryButton:I,dataTourSecondaryButton:C,dataTourTertiaryButton:P,disableFieldsAutoComplete:M=!1,fieldsGap:F,groupGap:z,language:w,mutators:B,notificationCloseButton:D,notificationTestAlign:A,notificationType:K,primaryButton:R,renderFieldsWrapper:$=e=>e,secondaryButton:L,tertiaryButton:O,before:G,after:W,isLoading:H,onClickSecondaryButton:U,onClickTertiaryButton:J,onChangeFormValues:Q,onSubmit:X}=a,Y=p.fields||p,ee=p.title||p.form?.title,te=p.form?.dataTestId||l,re=ae(f,w),se=r.useCallback(e=>{s&&"object"==typeof s&&(s.current=e)},[s]),ie=i.useDevicePropsGenerator(a),{directionClass:oe="vertical",fillClass:ne,titleFill:le,titlePosition:de,titleTextColor:ue,titleTextSize:ce,titleTextWeight:me,descSize:pe,descTextColor:fe,descTextWeight:ge,buttonDirection:he="vertical",buttonFill:ye,buttonJustifyContent:xe,buttonPadding:_e,buttonPosition:Te,elevationClass:be,heightClass:Se,loader:ve,loaderAppearance:Ie,loaderFill:Ce="surfacePrimary",loaderItemFill:Pe="accentItemSecondary",loaderShape:Fe,loaderSize:ze="l",loaderText:we,loaderType:ke="dot",primaryButtonAppearance:Ne,primaryButtonFill:je,primaryButtonFillHover:qe,primaryButtonHtmlType:Be,primaryButtonIsDisabled:De,primaryButtonIsLoading:Ee,primaryButtonLabel:Ve,primaryButtonLabelSize:Ae,primaryButtonLabelTextColor:Ke,primaryButtonLabelTextWeight:Re,primaryButtonSize:$e,secondaryButtonAppearance:Le,secondaryButtonFill:Oe,secondaryButtonFillHover:Ge,secondaryButtonHtmlType:We,secondaryButtonIsDisabled:He,secondaryButtonIsLoading:Ue,secondaryButtonLabel:Je,secondaryButtonLabelSize:Qe,secondaryButtonLabelTextColor:Xe,secondaryButtonLabelTextWeight:Ye,secondaryButtonSize:Ze,shapeClass:et,tertiaryButtonAppearance:tt,tertiaryButtonFill:rt,tertiaryButtonFillHover:at,tertiaryButtonHtmlType:st,tertiaryButtonIsDisabled:it,tertiaryButtonIsLoading:ot,tertiaryButtonLabel:nt,tertiaryButtonLabelSize:lt,tertiaryButtonLabelTextColor:dt,tertiaryButtonLabelTextWeight:ut,tertiaryButtonSize:ct,widthClass:mt}=ie,{styles:pt,wrapper:ft}=i.useStyles(a);return t.jsx(e.Form,{initialValues:c,initialValuesEqual:m,render:({form:r,handleSubmit:a,modifiedSinceLastSubmit:s,submitError:i})=>t.jsxs("form",{className:V.default(o,"form",u&&`form_type_${u}`,mt&&`width_${mt}`,Se&&`height_${Se}`,de&&`form_title-position_${de}`,Te&&`form_button-position_${Te}`,ne&&`fill_${ne}`,et&&`shape_${et}`,oe&&`direction_${oe}`,be&&`elevation_${be}`),ref:()=>se(r),autoCapitalize:M?"off":void 0,autoComplete:M?"off":void 0,autoCorrect:M?"off":void 0,"data-testid":te||l&&`${l}Form`||"Form","data-tour":d,spellCheck:M?"false":void 0,style:pt,onSubmit:a,children:[G,(g||ee)&&t.jsx(b.Title,{className:"form__title",dataTestId:te?`${te}Title`:"FormTitle",size:ce,fill:le,textColor:ue,textWeight:me,children:g||ee}),h&&t.jsx(n.Text,{className:"form__desc",size:pe,textColor:fe,textWeight:ge,"data-testid":l?`${l}Desc`:"FormDesc",children:h}),i&&!s&&t.jsx("div",{className:V.default("notification","form-notification",K?`form-notification_${K}`:"form-notification_global"),children:t.jsx(q.Notification,{appearance:"errorPrimary sizeS solid rounded",dataTestId:p.form?.dataTestId?`${p.form.dataTestId}Notification`:"FormNotification",type:"global",width:"fill",status:"error",text:r.getState().submitError,textAlign:A,closeIcon:D})}),Q&&t.jsx(e.FormSpy,{subscription:{values:!0},onChange:Q}),Boolean(Y&&Object.keys(Y).length)&&t.jsx(E.default.Fragment,{children:$(t.jsxs(N.Group,{className:"form__wrapper",direction:"vertical",gap:F||z,style:ft,children:[Object.keys(Y).map(e=>Me(Y[e],{dataTestId:l||p.form?.dataTestId,key:e})),H&&(ve||t.jsx(j.Loader,{appearance:Ie,className:"form__loader",dataTestId:p.form?.dataTestId?`${p.form.dataTestId}Loader`:"FormLoader",type:ke,size:ze,fill:Ce,text:we,itemFill:Pe,shape:Fe}))]}))}),p.buttons?t.jsx(N.Group,{className:"form__button",dataTestId:x||`${l}Buttons`,dataTour:v,direction:he,justifyContent:xe,fill:ye,padding:_e,gap:y,children:Object.keys(p.buttons).map(e=>Me(p.buttons[e],{dataTestId:l,key:e,primaryButtonHtmlType:Be,primaryButtonIsDisabled:De,primaryButtonIsLoading:Ee,secondaryButtonHtmlType:We,secondaryButtonIsDisabled:He,secondaryButtonIsLoading:Ue,tertiaryButtonHtmlType:st,tertiaryButtonIsDisabled:it,tertiaryButtonIsLoading:ot,onClickSecondaryButton:U,onClickTertiaryButton:J}))}):(Ve||R||Je||L||O||nt)&&t.jsxs(N.Group,{className:"form__button",dataTestId:x||`${l}Buttons`,dataTour:v,direction:he,justifyContent:xe,fill:ye,padding:_e,gap:y,children:[Ve?t.jsx(k.Button,{appearance:Ne,className:"form__button-item",dataTestId:_||l&&`${l}PrimaryButton`||"FormPrimaryButton",dataTour:I,width:"fill",size:$e,fill:je,fillHover:qe,label:Ve,labelTextColor:Ke,labelTextSize:Ae,labelTextWeight:Re,htmlType:Be||"submit",isDisabled:De,isLoading:Ee}):R,Je?t.jsx(k.Button,{appearance:Le,className:"form__button-item",dataTestId:T||l&&`${l}SecondaryButton`||"FormSecondaryButton",dataTour:C,width:"fill",size:Ze,fill:Oe,fillHover:Ge,label:Je,labelTextColor:Xe,labelTextSize:Qe,labelTextWeight:Ye,htmlType:We,isDisabled:He,isLoading:Ue,onClick:U}):L,nt?t.jsx(k.Button,{appearance:tt,className:"form__button-item",dataTestId:S||l&&`${l}TertiaryButton`||"FormTertiaryButton",dataTour:P,width:"fill",size:ct,fill:rt,fillHover:at,label:nt,labelTextColor:dt,labelTextSize:lt,labelTextWeight:ut,htmlType:st,isDisabled:it,isLoading:ot,onClick:J}):O]}),W]}),decorators:[Z],mutators:B,subscription:{modifiedSinceLastSubmit:!0,pristine:!0,submitError:!0,submitting:!0},validate:re,onSubmit:X})});Object.defineProperty(exports,"Field",{enumerable:!0,get:function(){return e.Field}}),Object.defineProperty(exports,"useForm",{enumerable:!0,get:function(){return e.useForm}}),Object.defineProperty(exports,"useFormState",{enumerable:!0,get:function(){return e.useFormState}}),exports.DEFAULT_MESSAGES_FIELDS=O,exports.FieldWrapper=X,exports.FieldWrapperBase=Q,exports.FinalForm=ze,exports.FormFieldCheckbox=oe,exports.FormFieldChips=ne,exports.FormFieldChoice=le,exports.FormFieldCode=de,exports.FormFieldCustom=ue,exports.FormFieldDadataInput=ce,exports.FormFieldDatePicker=me,exports.FormFieldFileInput=fe,exports.FormFieldInput=he,exports.FormFieldInputNumber=ye,exports.FormFieldMaskedInput=xe,exports.FormFieldPassword=_e,exports.FormFieldRadioGroup=be,exports.FormFieldSegmented=Se,exports.FormFieldSelect=Ie,exports.FormFieldSwitch=Ce,exports.FormFieldTextarea=Pe,exports.FormGroup=ge,exports.addRequiredFieldsParamToSchema=e=>{const t=Object.entries(e.fields);return e.requiredFields=t.reduce((e,[t,r])=>(r.exclusiveTests?.required&&e.push(t),e),[]),e},exports.createDataTestIdField=ee,exports.dateValidation=e=>{const t=e instanceof Date?e:new Date(e);return!isNaN(t.getTime())},exports.defaultCheckboxProps={appearance:"defaultPrimary sizeL ghost rounded",width:"fill",errorAppearance:"errorPrimary sizeL ghost rounded",requiredAppearance:"requirePrimary sizeL ghost rounded"},exports.defaultChipsProps={appearance:"surfacePrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"warningPrimary sizeM solid rounded"},exports.defaultChoiceProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},exports.defaultCodeProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultDadataInputProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultDatepickerProps={appearance:"surfacePrimary sizeS solid rounded",dateFormat:"dd/MM/yyyy - HH:mm",readOnly:!1,selectsRange:!1,showTimeSelect:!0,timeCaption:"Время",timeFormat:"p",timeIntervals:60,isClearable:!0,isStartDefaultNull:!0},exports.defaultDropzoneProps={appearance:"defaultSecondary sizeM solid rounded",errorAppearance:"errorTertiary sizeM solid rounded",requiredAppearance:"requireTertiary sizeM solid rounded",showFilename:!0,showFileSize:!0,successAppearance:"successTertiary sizeM solid rounded",isPreviews:!0},exports.defaultFieldProps=G,exports.defaultFieldSizeL=U,exports.defaultFieldSizeM=H,exports.defaultFieldSizeS=W,exports.defaultFieldSizeXL=J,exports.defaultGroupProps={width:"fill",labelTextSize:"s",messageTextColor:"surfaceTextPrimary",messageTextSize:"s",errorMessageTextColor:"errorTextSecondary",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextColor:"warningTextSecondary",requiredMessageTextSize:"s"},exports.defaultInputNumberProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultInputProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultMaskedInputProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultPasswordProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultRadioProps={appearance:"defaultPrimary sizeM solid circular",errorAppearance:"errorPrimary sizeM solid circular",requiredAppearance:"requirePrimary sizeM solid circular",successAppearance:"successPrimary sizeM solid circular"},exports.defaultSegmentedProps={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},exports.defaultSelectProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.defaultSwitchProps={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeL solid rounded",requiredAppearance:"requirePrimary sizeL solid rounded",successAppearance:"successPrimary sizeL solid rounded"},exports.defaultTextareaProps={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},exports.emailValidation=e=>{if(!e)return!0;return/^[a-za-яёЁ0-9_-]+(?:\.[a-za-яёЁ0-9_-]+)*@(?:[a-za-яёЁ0-9](?:[a-za-яёЁ0-9-]*[a-za-яёЁ0-9])?\.)+[a-za-яёЁ0-9]+$/.test(String(e).toLowerCase())},exports.focusOnError=Y,exports.focusOnErrorDecorator=Z,exports.formTypes=Fe,exports.generateField=Me,exports.getErrorsForFinalForm=e=>{const t={},r=e.response?.data||e;if(r)if("string"==typeof r)t[d.FORM_ERROR]="Во время обработки запроса произошла ошибка, попробуйте повторить запрос";else for(const e in r){t["non_field_errors"===e||"detail"===e?d.FORM_ERROR:e]=L.default(r[e])[0]}else t[d.FORM_ERROR]=e.message||"Произошла ошибка";return t},exports.parseNumericField=e=>{const t=e.slice(0,10).replace(/,/g,".").replace(/[^\d.]/g,""),r=parseFloat(t);return r||0===r?t.endsWith(".")&&(t.match(/\./g)||[]).length>1?t.slice(0,-1):t:""},exports.phoneValidation=e=>!e||B.isPossiblePhoneNumber(e,"RU"),exports.sendFormDataToServer=async(e,t)=>{try{return{response:await A.default({url:e,method:"POST",data:t}),success:!0}}catch(e){const t=e,r={};return"string"==typeof t.response?.data&&(r[d.FORM_ERROR]="Something went wrong"),"object"==typeof t.response?.data&&Object.entries(t.response.data).forEach(([e,t])=>{r[e]=t[0]}),{error:t,formErrors:r,success:!1}}},exports.setErrorsMutator=(e,t)=>{const[r,a]=e,s=a.submitError,i=a.error;if("non_field_errors"===r||r===d.FORM_ERROR)t.formState.error=i,t.formState.submitError=s;else if(r in t.fields){if(t.fields[r].touched=!0,i||""===i){const e=Object.assign({},t.formState.errors,{[r]:i});t.fields[r].error=i,t.formState.errors=e}if(s||""===s){const e=Object.assign({},t.formState.submitErrors,{[r]:s});t.fields[r].submitFailed=!0,t.fields[r].submitSucceeded=!1,t.fields[r].submitError=s,t.formState.submitErrors=e,t.formState.submitFailed=!0,t.formState.submitSucceeded=!1,t.formState.lastSubmittedValues=t.formState.values}}},exports.useYupValidationSchema=ae;
|
package/dist/itcase-forms.esm.js
CHANGED
|
@@ -1,3 +1 @@
|
|
|
1
|
-
import{useForm as e,Field as t,Form as r,FormSpy as a}from"react-final-form";export{Field,useForm,useFormState}from"react-final-form";import{jsx as i,jsxs as o}from"react/jsx-runtime";import s,{useEffect as n,useMemo as l,useCallback as d,useState as u,useRef as c,createElement as m}from"react";import p from"clsx";import{Checkbox as f}from"@itcase/ui-web/components/Checkbox";import{useDeviceTargetClass as h,useStyles as g,useDevicePropsGenerator as y}from"@itcase/ui-core/hooks";import{Divider as T}from"@itcase/ui-web/components/Divider";import{Text as b}from"@itcase/ui-web/components/Text";import _ from"axios";import{FORM_ERROR as v,getIn as x,setIn as S}from"final-form";import I from"final-form-focus";import C from"lodash/camelCase";import z from"lodash/snakeCase";import{ChipsGroup as P,Chips as w}from"@itcase/ui-web/components/Chips";import{Choice as N}from"@itcase/ui-web/components/Choice";import{Code as M}from"@itcase/ui-web/components/Code";import{Icon as k}from"@itcase/ui-web/components/Icon";import{Dadata as B}from"@itcase/ui-web/components/Dadata";import{DatePickerInput as D}from"@itcase/ui-web/components/DatePicker";import{fromEvent as F}from"file-selector";import A from"lodash/castArray";import{useDropzone as V,ErrorCode as E}from"react-dropzone";import{createFileFromDataURL as q}from"@itcase/common";import{Button as K}from"@itcase/ui-web/components/Button";import{Loader as W}from"@itcase/ui-web/components/Loader";import{Title as $}from"@itcase/ui-web/components/Title";import{Input as R}from"@itcase/ui-web/components/Input";import{InputNumber as L}from"@itcase/ui-web/components/InputNumber";import{useIMask as H}from"react-imask";import{InputPassword as j}from"@itcase/ui-web/components/InputPassword";import{Radio as O}from"@itcase/ui-web/components/Radio";import{Segmented as G}from"@itcase/ui-web/components/Segmented";import{Select as U}from"@itcase/ui-web/components/Select";import{Switch as Q}from"@itcase/ui-web/components/Switch";import{Textarea as J}from"@itcase/ui-web/components/Textarea";import{Group as Z}from"@itcase/ui-web/components/Group";import{Notification as X}from"@itcase/ui-web/components/Notification";import{isPossiblePhoneNumber as Y}from"libphonenumber-js";const ee={email_error:{key:"error",message:"Введите корректный адрес электронной почты"},email_required:{key:"required",message:"Укажите адрес электронной почты"},invalid_value:{key:"error",message:"Некорректное значение"},min:{key:"error",message:({min:e})=>`Значение должно быть не менее ${e} символов`},max:{key:"error",message:({max:e})=>`Значение должно быть не менее ${e} символов`},matches:{key:"error",message:"Допускается ввод только цифр от 0 до 9"},numeric_value:{key:"error",message:"Только числовое значение"},password_required:{key:"required",message:"Введите пароль"},phone_error:{key:"error",message:"Введите корректный номер телефона"},phone_or_email_required:{key:"required",message:"Введите телефон или адрес эл. почты"},phone_required:{key:"required",message:"Укажите номер телефона"},required:{key:"required",message:"Обязательное поле"},url:{key:"error",message:"Введите корректный URL-адрес"}},te={appearance:"defaultPrimary sizeL ghost rounded",width:"fill",errorAppearance:"errorPrimary sizeL ghost rounded",requiredAppearance:"requirePrimary sizeL ghost rounded"},re={width:"fill",direction:"vertical",labelTextColor:"surfaceTextPrimary",messageTextColor:"surfaceTextSecondary",dividerFill:"errorPrimary",errorMessageTextColor:"errorTextSecondary",helpTextColor:"surfaceTextQuaternary",requiredMessageTextColor:"warningTextSecondary",showMessage:!0},ae={size:"s",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...re},ie={size:"m",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...re},oe={size:"l",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...re},se={size:"xl",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...re};function ne(e){const{className:t,dataTestId:r,dataTour:a,type:s,label:n,labelHidden:d,labelTextColor:u,labelTextSize:c,labelTextWeight:m,messageTextSize:f,desc:y,descTextColor:_,descTextSize:v,descTextWeight:x,afterItem:S,beforeItem:I,dividerDirection:C,dividerFill:z,dividerSize:P,dividerWidth:w,errorKey:N,errorMessage:M,fieldClassName:k,helpText:B,helpTextColor:D,helpTextColorSuccess:F,helpTextSize:A,helpTextWeight:V,inputName:E,inputValue:q,metaActive:K,metaError:W,showDivider:$,showMessage:R,tag:L="div",before:H,after:j,isDisabled:O,isErrorState:G,isHidden:U,isRequired:Q,isValidState:J,children:Z}=e,X=l(()=>p(t,J&&"form__item_state_success",Q&&"form__item_state_required",O&&"form__item_state_disabled",K&&"form__item_state_focus",q&&"form__item_state_filled",G&&`form__item_state_${N}`),[t,G,J,Q,K,q,O,W]),Y=l(()=>p(k,J&&`${k}_state_success`,K&&`${k}_state_focus`,q&&`${k}_state_filled`,O&&`${k}_state_disabled`,G&&`${k}_state_${N}`),[k,G,J,K,q,O,W]),ee=h(e,{prefix:"form-field_size_",propsKey:"size"}),te=h(e,{prefix:"fill_",propsKey:"fill"}),re=h(e,{prefix:"fill_",propsKey:"inputFill"}),ae=h(e,{prefix:"form-field_shape_",propsKey:"shape"}),ie=h(e,{prefix:"form-field__item-value_shape_",propsKey:"inputShape"}),oe=h(e,{prefix:"direction_",propsKey:"direction"}),se=h(e,{prefix:"width_",propsKey:"width"}),{styles:ne}=g(e),le=e[`${N}MessageTextSize`],de=e[`${N}MessageTextColor`],ue=e[`${N}MessageTextWeight`],ce=`${r||`${E}Field`}Message`;return o(L,{className:p(X,"form__item","form-field",s?`form-field_type_${s}`:"form-field_type_classic",ee,te,ae,O&&"form-field_state_disabled",U&&"form-field_state_hidden",oe,se),"data-testid":r,"data-tour":a,style:ne,children:[H,(n||d)&&i("div",{className:p("form-field__label",`text_size_${c}`),"data-testid":`${r}Label`,children:o(b,{size:c,textColor:u,textWeight:m,children:[n,d&&" "]})}),y&&i("div",{className:p("form-field__desc",`text_size_${v}`),"data-testid":`${r}Desc`,children:i(b,{size:v,textColor:_,textWeight:x,children:y})}),o("div",{className:p("form-field__content",re,ie),children:[o("div",{className:p("form-field__content-inner",Y),children:[I,Z,S]}),$&&i(T,{className:"form-field__item-divider",width:w,direction:C,size:P,fill:z})]}),R&&o("div",{className:p("form-field__message",`text_size_${le||A||f}`),"data-testid":ce,children:[G&&M&&i(b,{className:"form-field__message-item form-field__message-item_type-error",dataTestId:`${r}MessageError`,size:le,textColor:de,textWeight:ue,children:M}),Boolean(B)&&(!G||!M)&&i(b,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${r}MessageHelpText`,size:A,textColor:J?F:D,textWeight:V,children:B}),(!G&&!B||G&&!B&&!M)&&i(b,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${r}MessageHelpText`,size:f,children:" "})]}),j]})}function le(t){const{inputName:r}=t,{change:a}=e();return n(()=>()=>{a(r,void 0)},[]),i(ne,{...t})}const de=(e,t)=>{const r=e,a=Object.keys(t).map(e=>e===v?"notification__item_status_error":`react-select-id_${e}-input`),i=r.find(e=>e.name?x(t,e.name):a.includes(e.id)),o=Object.keys(t);if(!i&&o.length){let e;try{const t=o[0];t===v?e=document.querySelector("notification__item_status_error"):(e=document.querySelector(`#${t}-error`),e||(e=document.querySelector(`#id_${t}`)))}catch(e){console.warn(e)}e&&e.scrollIntoView({block:"center"})}i&&i.scrollIntoView({block:"center"})},ue=I(void 0,de),ce=(e,t)=>{const[r,a]=e,i=a.submitError,o=a.error;if("non_field_errors"===r||r===v)t.formState.error=o,t.formState.submitError=i;else if(r in t.fields){if(t.fields[r].touched=!0,o||""===o){const e=Object.assign({},t.formState.errors,{[r]:o});t.fields[r].error=o,t.formState.errors=e}if(i||""===i){const e=Object.assign({},t.formState.submitErrors,{[r]:i});t.fields[r].submitFailed=!0,t.fields[r].submitSucceeded=!1,t.fields[r].submitError=i,t.formState.submitErrors=e,t.formState.submitFailed=!0,t.formState.submitSucceeded=!1,t.formState.lastSubmittedValues=t.formState.values}}},me=async(e,t)=>{try{return{response:await _({url:e,method:"POST",data:t}),success:!0}}catch(e){const t=e,r={};return"string"==typeof t.response?.data&&(r[v]="Something went wrong"),"object"==typeof t.response?.data&&Object.entries(t.response.data).forEach(([e,t])=>{r[e]=t[0]}),{error:t,formErrors:r,success:!1}}},pe=(e,t)=>{const r=(e=>e.replace(/(^|[_-])([a-zA-Z0-9])/g,(e,t,r)=>r.toUpperCase()))(e);return t&&t.endsWith("Field")?t:t?t+r+"Field":r+"Field"},fe=(e,t)=>S(e,t.path,t.message),he=Object.create(null);function ge(e,t){const r=l(()=>e&&(e=>async function(t){try{await(e?.validate(t,{abortEarly:!1}))}catch(e){const t=e;if(t.message)return t.inner.reduce(fe,he);console.warn("itcase-forms schema.validate error: An error not related to the form occurred during validation. Validation ignored.")}})(e),[e,t]);return r}function ye(e){const{fieldProps:t={},input:r={},meta:a={}}=e,i=!a.modifiedSinceLastSubmit&&a.submitError,o=a.error?.key||"error",s=l(()=>t.showErrorsOnSubmit?Boolean(a.submitFailed&&a.touched&&(a.error||i)):Boolean(a.touched&&(a.error||i)),[t.showErrorsOnSubmit,a.submitFailed,a.touched,a.error,i]),n=l(()=>{const e=Array.isArray(r?.value)?r?.value.length:r?.value,t=a.modifiedSinceLastSubmit&&!a.error&&i;return Boolean(e&&(a.valid||t))},[r?.value,a.valid,a.error,i,a.modifiedSinceLastSubmit]);return{errorKey:o,errorMessage:l(()=>{const e=a.error||i||!1;if(e){if("string"==typeof e)return e;if(e.message)return e.message}return""},[a.error,i]),successKey:"success",isErrorState:s,isValidState:n}}function Te(e){const{inputProps:t,validationStateKey:r}=e;return l(()=>{const e={};return r?(Object.entries(t||{}).forEach(([t,a])=>{const i=z(t);if(i.startsWith(`${r}_`)){const t=i.replace(`${r}_`,""),o=C(t);e[o]=a}else e[t]||(e[t]=a)}),e):t},[r,t])}const be=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:s,fieldProps:n={},inputProps:l={},showMessage:u,isDisabled:c,isRequired:m,onChange:h}=e;return i(t,{type:"checkbox",name:a,initialValue:o,children:function({input:e,meta:t}){const a=d(t=>{t&&(e.onChange(t),h&&h(t.target.checked,e.name))},[h,e.onChange]),{errorKey:o,errorMessage:g,successKey:y,isErrorState:T,isValidState:b}=ye({fieldProps:n,input:e,meta:t}),_=Te({inputProps:l,validationStateKey:T?o:b?y:null}),v=pe(e.name,r);return i(le,{className:p("form-field-checkbox","form__item_checkbox",s),dataTestId:v,errorKey:o,errorMessage:g,fieldClassName:"form-checkbox",inputName:e.name,inputValue:e.checked,metaActive:t.active,metaError:t.error,showMessage:u,tag:"label",isDisabled:c,isErrorState:T,isRequired:m,isValidState:b,...n,children:i(f,{checked:e.checked,isActive:e.checked,isDisabled:c,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,..._})})}})}),_e={appearance:"surfacePrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"warningPrimary sizeM solid rounded"};function ve(r){const{dataTestId:a,name:o,initialValue:s,classNameGroupItem:u,emptyMessage:c,emptyMessageTextColor:m,emptyMessageTextSize:f,fieldProps:h,inputProps:g,options:y,showMessage:T,isDisabled:_,isRequired:v,onChange:x}=r,{change:S}=e(),I=d((e,t)=>{const r=e.includes(t)?e.filter(e=>e!==t):[...e,t];S(o,r),x&&x(r)},[S,o,x]);return n(()=>{s&&S(o,s)},[s]),i(t,{name:o,initialValue:s,children:function({input:e,meta:t}){const{errorKey:r,errorMessage:o,successKey:s,isErrorState:n,isValidState:d}=ye({fieldProps:h,input:e,meta:t}),x=Te({inputProps:g,validationStateKey:n?r:d?s:null}),S=l(()=>{const t=[{label:null,value:null}];if(e?.value){return y.filter(t=>e.value?.includes(t.value))||t}return t},[e.value]),C=pe(e.name,a);return i(le,{className:p("form-field_chips","form__item_chips",u),dataTestId:C,errorKey:r,errorMessage:o,fieldClassName:"form-chips",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:T,isDisabled:_,isErrorState:n,isRequired:v,isValidState:d,...h,children:y?.length?i(P,{direction:"horizontal",gap:"1m",wrap:"wrap",children:y.map(a=>i(w,{className:p(t.active&&"form-chips_state_focus",t.error&&t.touched&&`form-chips_state_${r}`),label:a.label,isActive:S.some(e=>e.value===a.value),isDisabled:a.isDisabled,onClick:()=>I(e.value,a.value),...x},a.value))}):i(b,{size:f,textColor:m,children:c})})}})}const xe={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},Se=s.memo(function(r){const{dataTestId:a,name:o,initialValue:s,label:n,classNameGroupItem:u,fieldProps:c,inputProps:m,options:f,showMessage:h,isDisabled:g,isCheckbox:y,isRequired:T,onChange:b}=r,{change:_}=e(),v=d((e,t)=>{_(o,t&&e.value),b&&b(e.value,o,t)},[_,b]);return i(t,{name:o,initialValue:s,children:function({input:e,meta:t}){const r=l(()=>{const t={label:null,value:null};if(e.value){return f.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:o,errorMessage:s,successKey:d,isErrorState:b,isValidState:_}=ye({fieldProps:c,input:e,meta:t}),x=Te({inputProps:m,validationStateKey:b?o:_?d:null}),S=pe(e.name,a);return i(le,{className:p("form-field_choice","form__item_choice",u),dataTestId:S,label:n,errorKey:o,errorMessage:s,fieldClassName:"form-choice",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:h,isDisabled:g,isErrorState:b,isRequired:T,isValidState:_,...c,children:i(N,{className:p(t.active&&"form-choice_state_focus",t.error&&t.touched&&`form-choice_state_${o}`),name:e.name,active:r,options:f,isDisabled:g,isCheckbox:y,setActiveSegment:v,...x})})}})}),Ie={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},Ce=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,label:s,classNameGroupItem:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:m}=e;return i(t,{name:a,initialValue:o,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:o,successKey:f,isErrorState:h,isValidState:g}=ye({fieldProps:l,input:e,meta:t}),y=Te({inputProps:d,validationStateKey:h?a:g?f:null}),T=pe(e.name,r);return i(le,{className:p("form-field-code","form__item_code",n),dataTestId:T,label:s,errorKey:a,errorMessage:o,fieldClassName:"form-code",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,showMessage:u,isErrorState:h,isRequired:m,isValidState:g,...l,children:i(M,{initialValue:e.value,isDisabled:c,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...y})})}})}),ze=s.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:m,Component:f,fieldProps:h={},showMessage:g,isDisabled:y,isRequired:T,onClickClearIcon:b}=e;return i(t,{name:a,initialValue:s,children:function({input:t,meta:a}){const{errorKey:s,errorMessage:_,isErrorState:v,isValidState:x}=ye({fieldProps:h,input:t,meta:a}),S=Te({inputProps:e,validationStateKey:v?s:"success"}),I=pe(t.name,r);return o(le,{className:p("form-field_custom","form__item_custom",n),dataTestId:I,errorKey:s,errorMessage:_,fieldClassName:"form-custom",inputName:t.name,inputValue:String(t.value??""),metaActive:a.active,metaError:a.error,showMessage:g,isDisabled:y,isErrorState:v,isRequired:T,isValidState:x,...h,children:[i(f,{...S,input:t,meta:a,isDisabled:y}),l&&i(k,{className:"form-field__icon",size:m,iconFill:d,iconFillHover:u,imageSrc:l,shape:c,SvgImage:l,onClick:b})]})}})}),Pe={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},we=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:s,fieldProps:n,inputProps:l,parse:d,showMessage:u,token:c,isDisabled:m,isRequired:f,onDadataAutocomplete:h}=e;if("development"===process.env.NODE_ENV){const e=`Check your form config at field "${a}".`;if(!c){throw new Error(`FormFieldDadataInput: 'token' prop is missing, instead got ${c}.`+"\n"+e)}if(!h){throw new Error(`FormFieldDadataInput: 'onDadataAutocomplete' prop is missing, instead got ${h}.`+"\n"+e)}}return i(t,{name:a,initialValue:o,parse:d,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:o,successKey:d,isErrorState:g,isValidState:y}=ye({fieldProps:n,input:e,meta:t}),T=Te({inputProps:l,validationStateKey:g?a:y?d:null}),b=pe(e.name,r);return i(le,{className:p("form-field_input-dadata","form__item_input-dadata",s),dataTestId:b,errorKey:a,errorMessage:o,fieldClassName:"form-dadata",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:u,isDisabled:m,isErrorState:g,isRequired:f,isValidState:y,...n,children:i(B,{input:e,inputProps:T,meta:t,token:c,setValue:h})})}})}),Ne={appearance:"surfacePrimary sizeS solid rounded",dateFormat:"dd/MM/yyyy - HH:mm",readOnly:!1,selectsRange:!1,showTimeSelect:!0,timeCaption:"Время",timeFormat:"p",timeIntervals:60,isClearable:!0,isStartDefaultNull:!0};function Me(e){const{dataTestId:r,name:a,classNameGroupItem:o,datePickerProps:s,fieldProps:n={},inputProps:l={},showMessage:u,isDisabled:c,isRequired:m,onChange:f}=e;return i(t,{name:a,children:function({input:e,meta:t}){const a=d((t,r)=>{s?.selectsRange?e.onChange({endDate:r,startDate:t}):e.onChange(t),f&&f(t,r)},[e.onChange,f]),{errorKey:h,errorMessage:g,successKey:y,isErrorState:T,isValidState:b}=ye({fieldProps:n,input:e,meta:t}),_=Te({inputProps:l,validationStateKey:T?h:b?y:null}),v=pe(e.name,r);return i(le,{className:p("form-field_datepicker","form__item_datepicker",o),dataTestId:v,errorKey:h,errorMessage:g,fieldClassName:"form-datepicker",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:u,isDisabled:c,isErrorState:T,isRequired:m,isValidState:b,...n,children:i(D,{name:e.name,datePickerProps:s,endValue:s?.selectsRange?e.value.endDate:null,inputProps:_,value:s?.selectsRange?e.value.startDate:e.value,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus})})}})}var ke={fill:"surfaceSecondary",fillHover:"surfaceTertiary",hintTitle:"Перетащите изображение или выберите файл с компьютера",hintTitleTextColor:"surfaceTextPrimary",hintTitleTextSize:"m",removeThumbText:"удалить",removeThumbTextColor:"errorTextPrimary",removeThumbTextHoverColor:"errorTextPrimaryHover",removeThumbTextSize:"s",shape:"rounded",showFilename:!0,thumbBorderColor:"surfaceBorderTertiary",thumbBorderColorHover:"surfaceBorderQuaternary",thumbBorderWidth:1,thumbNameTextColor:"surfaceTextPrimary",thumbNameTextSize:"s",isPreviews:!0};function Be(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,a=Array(t);r<t;r++)a[r]=e[r];return a}function De(e,t,r,a,i,o,s){try{var n=e[o](s),l=n.value}catch(e){return void r(e)}n.done?t(l):Promise.resolve(l).then(a,i)}function Fe(e){return function(){var t=this,r=arguments;return new Promise(function(a,i){var o=e.apply(t,r);function s(e){De(o,a,i,s,n,"next",e)}function n(e){De(o,a,i,s,n,"throw",e)}s(void 0)})}}function Ae(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(r)return(r=r.call(e)).next.bind(r);if(Array.isArray(e)||(r=function(e,t){if(e){if("string"==typeof e)return Be(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Be(e,t):void 0}}(e))||t){r&&(e=r);var a=0;return function(){return a>=e.length?{done:!0}:{done:!1,value:e[a++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function Ve(){
|
|
2
|
-
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
3
|
-
var e,t,r="function"==typeof Symbol?Symbol:{},a=r.iterator||"@@iterator",i=r.toStringTag||"@@toStringTag";function o(r,a,i,o){var l=a&&a.prototype instanceof n?a:n,d=Object.create(l.prototype);return Ee(d,"_invoke",function(r,a,i){var o,n,l,d=0,u=i||[],c=!1,m={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,r){return o=t,n=0,l=e,m.n=r,s}};function p(r,a){for(n=r,l=a,t=0;!c&&d&&!i&&t<u.length;t++){var i,o=u[t],p=m.p,f=o[2];r>3?(i=f===a)&&(l=o[(n=o[4])?5:(n=3,3)],o[4]=o[5]=e):o[0]<=p&&((i=r<2&&p<o[1])?(n=0,m.v=a,m.n=o[1]):p<f&&(i=r<3||o[0]>a||a>f)&&(o[4]=r,o[5]=a,m.n=f,n=0))}if(i||r>1)return s;throw c=!0,a}return function(i,u,f){if(d>1)throw TypeError("Generator is already running");for(c&&1===u&&p(u,f),n=u,l=f;(t=n<2?e:l)||!c;){o||(n?n<3?(n>1&&(m.n=-1),p(n,l)):m.n=l:m.v=l);try{if(d=2,o){if(n||(i="next"),t=o[i]){if(!(t=t.call(o,l)))throw TypeError("iterator result is not an object");if(!t.done)return t;l=t.value,n<2&&(n=0)}else 1===n&&(t=o.return)&&t.call(o),n<2&&(l=TypeError("The iterator does not provide a '"+i+"' method"),n=1);o=e}else if((t=(c=m.n<0)?l:r.call(a,m))!==s)break}catch(t){o=e,n=1,l=t}finally{d=1}}return{value:t,done:c}}}(r,i,o),!0),d}var s={};function n(){}function l(){}function d(){}t=Object.getPrototypeOf;var u=[][a]?t(t([][a]())):(Ee(t={},a,function(){return this}),t),c=d.prototype=n.prototype=Object.create(u);function m(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,d):(e.__proto__=d,Ee(e,i,"GeneratorFunction")),e.prototype=Object.create(c),e}return l.prototype=d,Ee(c,"constructor",d),Ee(d,"constructor",l),l.displayName="GeneratorFunction",Ee(d,i,"GeneratorFunction"),Ee(c),Ee(c,i,"Generator"),Ee(c,a,function(){return this}),Ee(c,"toString",function(){return"[object Generator]"}),(Ve=function(){return{w:o,m:m}})()}function Ee(e,t,r,a){var i=Object.defineProperty;try{i({},"",{})}catch(e){i=0}Ee=function(e,t,r,a){function o(t,r){Ee(e,t,function(e){return this._invoke(t,r,e)})}t?i?i(e,t,{value:r,enumerable:!a,configurable:!a,writable:!a}):e[t]=r:(o("next",0),o("throw",1),o("return",2))},Ee(e,t,r,a)}var qe=s.memo(function(e){var t,r=e.maxFiles,a=e.maxSize,m=e.dropzoneProps,f=void 0===m?{}:m,h=e.fileErrorText,g=e.hintDescription,T=e.hintTitle,_=e.inputName,v=e.inputValue,x=e.showFilename,S=e.thumbColumn,I=e.isPreviews,C=e.onClickPreview,z=e.onAddFiles,P=e.onChange,w=e.onDeleteFile,N=u(""),M=N[0],k=N[1],B=u(!1),D=B[0],q=B[1],$=c(null),R=l(function(){var e=v?A(v):[];return null===$.current?($.current=e,e):($.current.forEach(function(t){var r;t.preview&&(!e.some(function(e){return e.preview===t.preview})&&null!=(r=t.preview)&&r.startsWith("blob:")&&URL.revokeObjectURL(t.preview))}),$.current=e,e)},[v]),L=d(function(e){var t,a=A(e),i=1==(null!=(t=f.maxFiles)?t:r)?a[0]:[].concat(a);return P(i),i},[f.maxFiles,r,P]),H=d(function(){var e=Fe(Ve().m(function e(t){var r,a,i,o,s;return Ve().w(function(e){for(;;)switch(e.n){case 0:q(!0),r=[],a=Ae(t);case 1:if((i=a()).done){e.n=5;break}if("string"!=typeof(o=i.value)){e.n=3;break}return e.n=2,$e(o,I);case 2:(s=e.v)&&r.push(s),e.n=4;break;case 3:r.push(o);case 4:e.n=1;break;case 5:L(r),q(!1);case 6:return e.a(2)}},e)}));return function(t){return e.apply(this,arguments)}}(),[I,L]),j=d(function(e,t){e.stopPropagation(),e.preventDefault();var r=[].concat(R);r.splice(t,1),w&&w(R[t],_),L(r)},[R,L,w]),O=V(Object.assign({maxFiles:r||5,maxSize:a||10485760},f,{getFilesFromEvent:(t=Fe(Ve().m(function e(t){var r,a;return Ve().w(function(e){for(;;)switch(e.n){case 0:return e.n=1,F(t);case 1:return r=e.v,a=r.filter(function(e){return e instanceof File}),e.a(2,[].concat(R,a))}},e)})),function(e){return t.apply(this,arguments)}),onDropAccepted:function(e){I&&e.forEach(function(e){e.error||e.preview||(e.preview=URL.createObjectURL(e))});var t=L(e);k("");var r=e.map(function(e){return new Promise(function(t){return Le(e,t)})});Promise.all(r).then(function(){z&&z(t,_)})},onDropRejected:function(e){if(e.length){var t="Ошибка при добавлении файла",a=e[0].errors[0];a&&(t=a.code===E.TooManyFiles?"Максимальное количество файлов: "+r:a.message),k(t)}else k("")}})),G=O.getInputProps,U=O.getRootProps;n(function(){var e=A(v);e.some(function(e){return"string"==typeof e})&&H(e)},[v]),n(function(){return function(){$.current.forEach(function(e){var t;null!=(t=e.preview)&&t.startsWith("blob:")&&URL.revokeObjectURL(e.preview)})}},[]);var Q=y(e),J=Q.fillClass,Z=Q.fillHoverClass,X=Q.borderColorClass,Y=Q.borderColorHoverClass,ee=Q.borderTypeClass,te=Q.borderWidthClass,re=Q.errorMessageTextColor,ae=Q.errorMessageTextSize,ie=Q.errorMessageTextWeight,oe=Q.hintDescriptionTextColor,se=Q.hintDescriptionTextSize,ne=Q.hintDescriptionTextWeight,le=Q.hintDescriptionTextWrap,de=Q.hintTitleTextColor,ue=Q.hintTitleTextSize,ce=Q.hintTitleTextWeight,me=Q.hintTitleTextWrap,pe=Q.removeThumbAppearance,fe=Q.removeThumbShape,he=Q.removeThumbText,ge=Q.removeThumbTextWeight,ye=Q.shapeClass,Te=Q.thumbBorderColorClass,be=Q.thumbBorderColorHoverClass,_e=Q.thumbBorderTypeClass,ve=Q.thumbBorderWidthClass,xe=Q.thumbDirectionClass,Se=Q.thumbNameTextColor,Ie=Q.thumbNameTextSize,Ce=Q.thumbNameTextWeight,ze=Q.thumbNameTextWrap;return o(s.Fragment,{children:[o("div",Object.assign({},U({className:"form-dropzone__dropzone dropzone"}),{children:[i("input",Object.assign({},G(),{name:_})),o("div",{className:p("form-dropzone__dropzone-wrapper",S&&"form-dropzone__dropzone-wrapper_column_"+S,J&&"fill_"+J,Z&&"fill_hover_"+Z,te&&"border-width_"+te,X&&"border-color_"+X,Y&&"border-color_hover_"+Y,ee&&"border_type_"+ee,ye&&"shape_"+ye),children:[R.map(function(e,t){return o("aside",{className:p("form-dropzone__thumb",J,xe,ve,Te,be,_e),children:[I&&!e.error&&i("div",{className:"form-dropzone__thumb-image",children:i("img",{className:"form-dropzone__thumb-image-inner",src:e.preview||e.image,onClick:function(t){C&&C(e,t)}})}),e.error&&i("div",{children:i(b,{size:Ie,textColor:Se,textWeight:Ce,textWrap:ze,children:h||e.error})}),x&&i("div",{className:"form-dropzone__thumb-name",children:i(b,{className:"form-dropzone__thumb-name-inner",size:Ie,textColor:Se,textWeight:Ce,textWrap:ze,children:e.name})}),D&&i("div",{className:"form-dropzone__thumb-loader",children:i(W,{width:"fill",height:"fill"})}),i("div",{className:p("form-dropzone__thumb-remove"),children:i(K,{appearance:pe,className:"form-dropzone__thumb-remove-text",label:he||"Удалить",labelTextWeight:ge,shape:fe,onClick:function(e){return j(e,t)}})})]},e.id||e.name+"_"+t)}),R.length?o("div",{className:"form-dropzone__hint form-dropzone__hint_type_add-more",children:[i(b,{className:"form-dropzone__hint-title",size:ue,textAlign:"center",textColor:de,textWeight:ce,textWrap:me,children:T||"Select a file or drag in form"}),g&&i(b,{className:"form-dropzone__hint-text",size:se,textColor:oe,textWeight:ne,textWrap:le,children:g})]}):o("div",{className:"form-dropzone__hint",children:[i(b,{className:"form-dropzone__hint-title",size:ue,textAlign:"center",textColor:de,textWeight:ce,textWrap:me,children:T||"Select a file or drag in form"}),g&&i(b,{className:"form-dropzone__hint-text",size:se,textColor:oe,textWeight:ne,textWrap:le,children:g})]})]})]})),M&&i("div",{className:"form-field__message",children:i(b,{className:"form-field__message-item form-field__message-item_type_message",size:ae,textColor:re,textWeight:ie,children:M})})]})});function Ke(e){return We.apply(this,arguments)}function We(){return(We=Fe(Ve().m(function e(t){var r,a,i,o,s,n;return Ve().w(function(e){for(;;)switch(e.p=e.n){case 0:return e.p=0,e.n=1,_({url:t,responseType:"blob"});case 1:return a=e.v,i=a.data,o=null==(r=a.headers["content-disposition"])?void 0:r.split("filename=")[1],(s=null==o?void 0:o.substring(1).slice(0,-1))||(s=t.split("/").at(-1)),e.a(2,new File([i],s,{type:i.type}));case 2:return e.p=2,n=e.v,console.log("error: ",n),e.a(2,null)}},e,null,[[0,2]])}))).apply(this,arguments)}function $e(e,t){return Re.apply(this,arguments)}function Re(){return(Re=Fe(Ve().m(function e(t,r){var a,i;return Ve().w(function(e){for(;;)switch(e.n){case 0:if(a=null,i="string"==typeof t&&t.includes("/"),!t.image&&!i){e.n=2;break}return e.n=1,Ke(t.image||t);case 1:(a=e.v)&&Le(a);case 2:return t.dataURL&&"string"==typeof t.dataURL&&t.dataURL.startsWith("data:")&&((a=q(t.name||t.path,t.dataURL)).dataURL=t.dataURL),a&&(a.id=t.id,r&&(a.preview=URL.createObjectURL(a))),e.a(2,a)}},e)}))).apply(this,arguments)}function Le(e,t){t=t||function(){};var r=new FileReader;r._readedFile=e,r.onabort=function(){return t()},r.onerror=function(){return t()},r.onload=function(e){e.target._readedFile.dataURL=r.result,t()},e instanceof File?r.readAsDataURL(e):t()}var He=s.memo(function(e){var r=e.className,a=e.dataTestId,o=e.name,s=e.width,n=e.maxFiles,l=e.maxSize,d=e.label,u=e.classNameGroupItem,c=e.dropzoneProps,m=e.fieldProps,f=e.fileErrorText,h=e.hintDescription,g=e.hintTitle,T=e.showFilename,b=e.showMessage,_=e.isPreviews,v=e.isRequired,x=e.onClickPreview,S=e.onAddFiles,I=e.onDeleteFile,C=y(e),z=C.size,P=C.fill,w=C.fillHover,N=C.labelTextColor,M=C.borderColorHover,k=C.borderType,B=C.borderWidth,D=C.errorMessageTextColor,F=C.errorMessageTextSize,A=C.errorMessageTextWeight,V=C.hintDescriptionTextColor,E=C.hintDescriptionTextSize,q=C.hintDescriptionTextWeight,K=C.hintDescriptionTextWrap,W=C.hintTitleTextColor,$=C.hintTitleTextSize,R=C.hintTitleTextWeight,L=C.hintTitleTextWrap,H=C.removeThumbAppearance,j=C.removeThumbShape,O=C.removeThumbText,G=C.removeThumbTextWeight,U=C.shape,Q=C.thumbBorderColor,J=C.thumbBorderColorHover,Z=C.thumbBorderType,X=C.thumbBorderWidth,Y=C.thumbColumn,ee=void 0===Y?1:Y,te=C.thumbDirection,re=void 0===te?"vertical":te,ae=C.thumbNameTextColor,ie=C.thumbNameTextSize,oe=C.thumbNameTextWeight,se=C.thumbNameTextWrap;return i(t,{name:o,children:function(t){var o,y=t.input,C=t.meta,Y=ye({fieldProps:m,input:y,meta:C}),te=Y.errorKey,ne=Y.errorMessage,de=Y.isErrorState,ue=Y.isValidState,ce=Te({inputProps:e,validationStateKey:de?te:"success"}),me=pe(y.name,a);return i(le,Object.assign({className:p("form-field_type_dropzone","form__item_type_dropzone",u),dataTestId:me,width:s,label:d,labelTextColor:N,errorKey:te,errorMessage:ne,fieldClassName:"form-dropzone",inputName:y.name,inputValue:(o=y.value,Array.isArray(o)?o.length>0?o:"":null!=o?o:""),metaActive:C.active,metaError:C.error,metaTouched:C.touched,showMessage:b,isErrorState:de,isRequired:v,isValidState:ue},m,{children:i(qe,{className:r,maxFiles:n,maxSize:l,size:z,fill:P,fillHover:w,borderColor:ce.borderColor,borderColorHover:M,borderType:k,borderWidth:B,dropzoneProps:c,errorMessageTextColor:D,errorMessageTextSize:F,errorMessageWeight:A,fileErrorText:f,hintDescription:h,hintDescriptionTextColor:V,hintDescriptionTextSize:E,hintDescriptionTextWeight:q,hintDescriptionTextWrap:K,hintTitle:g,hintTitleTextColor:W,hintTitleTextSize:$,hintTitleTextWeight:R,hintTitleTextWrap:L,inputName:y.name,inputValue:y.value,metaError:C.error,metaTouched:C.touched,removeThumbAppearance:H,removeThumbShape:j,removeThumbText:O,removeThumbTextWeight:G,shape:U,showFilename:T,thumbBorderColor:Q,thumbBorderColorHover:J,thumbBorderType:Z,thumbBorderWidth:X,thumbColumn:ee,thumbDirection:re,thumbNameTextColor:ae,thumbNameTextSize:ie,thumbNameTextWeight:oe,thumbNameTextWrap:se,isPreviews:_,onClickPreview:x,onAddFiles:S,onChange:y.onChange,onDeleteFile:I})}))}})});const je={width:"fill",labelTextSize:"s",messageTextColor:"surfaceTextPrimary",messageTextSize:"s",errorMessageTextColor:"errorTextSecondary",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextColor:"warningTextSecondary",requiredMessageTextSize:"s"},Oe=s.memo(function(e){const{className:r,dataTestId:a,dataTour:n,name:l,title:d,titleTextColor:u,titleTextSize:c,titleTextWeight:m,label:f,labelTextColor:h,labelTextSize:T,labelTextWeight:_,message:v,messageTextColor:x,messageTextSize:S,messageTextWeight:I,column:C,showGroupMessage:z,before:P,after:w,isActive:N,isDisabled:M,isHidden:k,children:B}=e,D=y(e),{fillActiveClass:F,fillActiveHoverClass:A,fillClass:V,fillDisabledClass:E,fillHoverClass:q,shapeClass:K}=D,{styles:W}=g(e),R=pe(l,a);return i(t,{name:l,children:function({input:t,meta:a}){const{errorKey:g,errorMessage:y,isErrorState:D}=ye({fieldProps:e,input:t,meta:a}),L=Te({inputProps:e,validationStateKey:D?g:"success"});return o("div",{className:p("form__group",r,k&&"form__group_hidden",M?E&&`fill_${E}`:N?F&&`fill_active_${F}`:V&&`fill_${V}`,M?E&&`fill_${E}`:N?A&&`fill_active_hover_${A}`:q&&`fill_hover_${q}`,K&&`shape_${K}`,C&&`form__group_column_${C}`),"data-testid":R,"data-tour":n,style:W,children:[o("div",{className:"form__group-wrapper",children:[P,d&&i("div",{className:"form__group-title",children:i($,{dataTestId:`${R}Title`,size:c,textColor:u,textWeight:m,children:d})}),f&&i("div",{className:"form__group-label",children:i(b,{dataTestId:`${R}Label`,size:T,textColor:h,textWeight:_,children:f})}),i("div",{className:"form__group-items",children:B}),w]}),z&&o(s.Fragment,{children:[D&&y&&i(b,{className:`form__group-message form__group-message_type-${g}`,dataTestId:`${R}MessageError`,size:L.messageTextSize,textColor:L.messageTextColor,textWeight:L.messageTextWeight,children:y}),Boolean(v)&&(!D||!y)&&i(b,{className:"form__group-message",dataTestId:`${l}GroupMessage`,size:S,textColor:x,textWeight:I,children:v}),!D&&!v&&i(b,{className:"form__group-message",size:S,children:" "})]})]})}})}),Ge={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Ue=s.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:n,clearIcon:l,clearIconFill:u,clearIconFillHover:c,clearIconShape:m,clearIconSize:f,fieldProps:h={},inputProps:g={},parse:y,showMessage:T,isDisabled:b,isRequired:_,onClickClearIcon:v,onChange:x}=e;return i(t,{name:a,initialValue:s,parse:y,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),x&&x(t.target.value,e.name)},[x,e]),{errorKey:s,errorMessage:y,successKey:S,isErrorState:I,isValidState:C}=ye({fieldProps:h,input:e,meta:t}),z=Te({inputProps:g,validationStateKey:I?s:C?S:null}),P=pe(e.name,r);return o(le,{className:p("form-field_input","form__item_input",n),dataTestId:P,errorKey:s,errorMessage:y,fieldClassName:"form-input",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:T,isDisabled:b,isErrorState:I,isRequired:_,isValidState:C,...h,children:[i(R,{className:p(t.active&&"input_state_focus",t.error&&t.touched&&`input_state_${s}`),dataTestId:`${P}Input`,type:"text",name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:b,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,...z}),l&&i(k,{className:"form-field__icon",dataTestId:`${P}InputIcon`,size:f,iconFill:u,iconFillHover:c,imageSrc:"string"==typeof l&&l,shape:m,SvgImage:"string"!=typeof l&&l,onClick:v})]})}})}),Qe={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Je=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:s,fieldProps:n={},inputProps:l={},inputType:u="custom",parse:c,showMessage:m,isDisabled:f,isRequired:h,onChange:g}=e;return i(t,{name:a,initialValue:o,parse:c,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),g&&g(t.target.value)},[g,e.onChange]),{errorKey:o,errorMessage:c,successKey:y,isErrorState:T,isValidState:b}=ye({fieldProps:n,input:e,meta:t}),_=Te({inputProps:l,validationStateKey:T?o:b?y:null}),v=pe(e.name,r);return i(le,{className:p("form-field_input-number","form__item_input-number",s),dataTestId:v,errorKey:o,errorMessage:c,fieldClassName:"form-input-number",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:m,isDisabled:f,isErrorState:T,isRequired:h,isValidState:b,...n,children:i(L,{className:p(t.active&&"input_state_focus",(t.submitFailed||t.touched)&&t.error&&`input_state_${o}`),dataTestId:`${v}InputNumber`,type:u,name:e.name,value:Number(e.value)||0,onChange:a,..._})})}})}),Ze={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Xe=s.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:l,clearIcon:d,clearIconFill:u,clearIconFillHover:c,clearIconShape:m,clearIconSize:f,fieldProps:h={},inputProps:g={},optionsMask:y,showMessage:T,unmasked:b,isDisabled:_,isRequired:v,onClickClearIcon:x}=e;return i(t,{name:a,initialValue:s,children:function({input:e,meta:t}){const{ref:a,unmaskedValue:S,value:I,setUnmaskedValue:C}=H(y,{defaultValue:s,onAccept:(t,r,a)=>{a&&e.onChange(r._unmaskedValue)}});n(()=>{e.value!==S&&C(e.value.replace(b,""))},[e.value]);const{errorKey:z,errorMessage:P,successKey:w,isErrorState:N,isValidState:M}=ye({fieldProps:h,input:e,meta:t}),B=Te({inputProps:g,validationStateKey:N?z:M?w:null}),D=pe(e.name,r);return o(le,{className:p("form-field-masked-input","form__item_masked-input",l),dataTestId:D,errorKey:z,errorMessage:P,fieldClassName:"form-maskedInput",inputName:e.name,inputValue:String(e.value??b??""),metaActive:t.active,metaError:t.error,showMessage:T,isDisabled:_,isErrorState:N,isRequired:v,isValidState:M,...h,children:[i(R,{className:p(t.active&&"input_state_focus",t.error&&t.touched&&`input_state_${z}`),ref:a,value:I,onBlur:e.onBlur,onFocus:e.onFocus,...B}),d&&i(k,{className:"form-field__icon",size:f,iconFill:u,iconFillHover:c,imageSrc:d,shape:m,SvgImage:d,onClick:x})]})}})}),Ye={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},et=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:s,fieldProps:n,inputProps:l,parse:u,showMessage:c,isDisabled:m,isRequired:f,onChange:h}=e;return i(t,{name:a,initialValue:o,parse:u,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),h&&h(t.target.value,e.name)},[h,e.onChange]),{errorKey:o,errorMessage:u,successKey:g,isErrorState:y,isValidState:T}=ye({fieldProps:n,input:e,meta:t}),b=Te({inputProps:l,validationStateKey:y?o:T?g:null}),_=pe(e.name,r);return i(le,{className:p("form-field_input-password","form__item_input-password",s),dataTestId:_,errorKey:o,errorMessage:u,fieldClassName:"form-password",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:c,isDisabled:m,isErrorState:y,isRequired:f,isValidState:T,...n,children:i(j,{className:p(t.active&&"input-password_state_focus",t.error&&t.touched&&`input-password_state_${o}`),dataTestId:`${_}InputPassword`,name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:m,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,...b})})}})}),tt={appearance:"defaultPrimary sizeM solid circular",errorAppearance:"errorPrimary sizeM solid circular",requiredAppearance:"requirePrimary sizeM solid circular",successAppearance:"successPrimary sizeM solid circular"};function rt(e){const{input:t,inputProps:r,options:a,onChange:o}=e,n=d(e=>{t.onChange(e),o&&o(e,t.name)},[t,o]),l=d(e=>{e.target.checked&&n(e.target.value)},[o]);return i(s.Fragment,{children:a.map(e=>i(O,{className:"form-radio__item",label:e.label,checked:e.value===t.value,value:e.value,onChange:l,...r},e.value))})}const at=s.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:o,fieldProps:s={},inputProps:n={},options:l=[],showMessage:d,isDisabled:u,isRequired:c,onChange:m}=e;return i(t,{name:a,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:f,successKey:h,isErrorState:g,isValidState:y}=ye({fieldProps:s,input:e,meta:t}),T=Te({inputProps:n,validationStateKey:g?a:y?h:null}),b=pe(e.name,r);return i(le,{className:p("form-field_radio","form__item_radio",o),dataTestId:b,errorKey:a,errorMessage:f,fieldClassName:"form-radio",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:d,isDisabled:u,isErrorState:g,isRequired:c,isValidState:y,...s,children:i(rt,{input:e,inputProps:T,options:l,onChange:m})})}})}),it={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"};function ot(r){const{dataTestId:a,name:o,fieldProps:s,inputProps:n,options:u,showMessage:c,isDisabled:m,isRequired:f}=r,{change:h}=e(),g=d(e=>{h(o,e.value)},[h]);return i(t,{name:o,children:function({input:e,meta:t}){const r=l(()=>{const t={label:null,value:null};if(e.value){return u.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:o,errorMessage:d,successKey:h,isErrorState:y,isValidState:T}=ye({fieldProps:s,input:e,meta:t}),b=Te({inputProps:n,validationStateKey:y?o:T?h:null}),_=pe(e.name,a);return i(le,{className:p("form-field_segmented","form__item_segmented"),dataTestId:_,errorKey:o,errorMessage:d,fieldClassName:"form-segmented",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:c,isDisabled:m,isErrorState:y,isRequired:f,isValidState:T,...s,children:i(G,{activeSegment:r,segments:u,isDisabled:m,setActiveSegment:g,...b})})}})}const st={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"};function nt(e){const{options:t,selectValue:r}=e,a=Array.isArray(r)?r:[r];let i=[];return t.forEach(e=>{const t=a.includes(e.value),o=a.includes(e.label);let s=[];e.options&&(s=nt({options:e.options,selectValue:r})),t||o?i.push(e):s.length&&(i=i.concat(s))}),i}const lt=s.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:s,fieldProps:c,options:m=[],selectProps:f,selectRef:h,showMessage:g,isDisabled:y,isRequired:T,onChange:b,onInputChange:_}=e;return i(t,{name:a,initialValue:o,children:function({input:e,meta:t}){const[a,o]=u(null),v=l(()=>{const t=nt({options:m,selectValue:e.value});return!t.length&&e.value?.length&&t.push({label:e.label,value:e.value}),t},[e.label,e.value]),x=d(t=>{e.onChange(t),b&&b(t,{name:e.name})},[b,e.onChange]),S=d(e=>{const t=Array.isArray(e)?e.map(e=>e.value):e?.value||null;o(e),x(t)},[x]);n(()=>{o(v)},[v]);const{errorKey:I,errorMessage:C,successKey:z,isErrorState:P,isValidState:w}=ye({fieldProps:c,input:e,meta:t}),N=Te({inputProps:f,validationStateKey:P?I:w?z:null}),M=pe(e.name,r);return i(le,{className:p("form-field_select","form__item_select",s),dataTestId:M,errorKey:I,errorMessage:C,fieldClassName:"form-select",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:g,isDisabled:y,isErrorState:P,isRequired:T,isValidState:w,...c,children:i(U,{className:"form-select-item",ref:h,instanceId:`id_${e.name}`,options:m,value:a,isDisabled:y,onChange:S,onInputChange:_,...N})})}})}),dt={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeL solid rounded",requiredAppearance:"requirePrimary sizeL solid rounded",successAppearance:"successPrimary sizeL solid rounded"},ut=s.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:o,fieldProps:s={},inputProps:n={},showMessage:l,isDisabled:u,isRequired:c,onChange:m}=e;return i(t,{type:"checkbox",name:a,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),m&&m(t.target.checked,e.name)},[m,e.onChange]),{errorKey:f,errorMessage:h,successKey:g,isErrorState:y,isValidState:T}=ye({fieldProps:s,input:e,meta:t}),b=Te({inputProps:n,validationStateKey:y?f:T?g:null}),_=pe(e.name,r);return i(le,{className:p("form-field-switch","form__item_switch",o),dataTestId:_,errorKey:f,errorMessage:h,fieldClassName:"form-switch",inputName:e.name,inputValue:e.checked,metaActive:t.active,metaError:t.error,showMessage:l,tag:"label",isDisabled:u,isErrorState:y,isRequired:c,isValidState:T,...s,children:i(Q,{isActive:e.checked,isDisabled:u,onChange:a,...b})})}})}),ct={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},mt=s.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:o,fieldProps:s={},inputProps:n={},showMessage:l,isDisabled:d,isRequired:u}=e;return i(t,{name:a,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:c,successKey:m,isErrorState:f,isValidState:h}=ye({fieldProps:s,input:e,meta:t}),g=Te({inputProps:n,validationStateKey:f?a:h?m:null}),y=pe(e.name,r);return i(le,{className:p("form-field_textarea","form__item_textarea",o),dataTestId:y,errorKey:a,errorMessage:c,fieldClassName:"form-textarea",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:l,isDisabled:d,isErrorState:f,isRequired:u,isValidState:h,...s,children:i(J,{className:p(t.active&&"textarea_state_focus",t.error&&t.touched&&`textarea_state_${a}`),dataTestId:`${y}Textarea`,name:e.name,value:String(e.value??""),isDisabled:d,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...g})})}})});function pt(e,t){switch(e.type){case ft.password:return i(et,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.primaryButton:return m(K,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormPrimaryButton",key:t.key,width:"fill",htmlType:t.primaryButtonHtmlType||"submit",isDisabled:t.primaryButtonIsDisabled,isLoading:t.primaryButtonIsLoading});case ft.secondaryButton:return m(K,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormSecondaryButton",key:t.key,width:"fill",htmlType:t.secondaryButtonHtmlType,isDisabled:t.secondaryButtonIsDisabled,isLoading:t.secondaryButtonIsLoading,onClick:t.onClickSecondaryButton});case ft.tertiaryButton:return m(K,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormTertiaryButton",key:t.key,width:"fill",htmlType:t.tertiaryButtonHtmlType,isDisabled:t.tertiaryButtonIsDisabled,isLoading:t.tertiaryButtonIsLoading,onClick:t.onClickTertiaryButton});case ft.checkbox:return i(be,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.choice:return i(Se,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.code:return i(Ce,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.chips:return i(ve,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.switch:return i(ut,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.segmented:return i(ot,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.datePicker:return i(Me,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.fileInput:return i(He,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.radioGroup:return i(at,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.select:return i(lt,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.text:return i(Ue,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.textarea:return i(mt,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.maskedInput:return i(Xe,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.custom:return i(ze,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.dadataInput:return i(we,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.inputNumber:return i(Je,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case ft.group:return i(Oe,{...e,dataTestId:e.dataTestId??t.dataTestId,children:Object.entries(e.group).map(([r,a])=>{const i={...a,classNameGroupItem:a.classNameGroupItem||"form__group-item",showMessage:e.showMessage};return pt(i,{...t,dataTestId:i.dataTestId??t.dataTestId,key:r+"_form_group"})})},t.key)}}const ft={secondaryButton:"secondaryButton",primaryButton:"primaryButton",tertiaryButton:"tertiaryButton",checkbox:"checkbox",chips:"chips",choice:"choice",code:"code",custom:"custom",dadataInput:"dadataInput",datePicker:"datePicker",dateRangePicker:"dateRangePicker",fileInput:"fileInput",group:"group",inputNumber:"inputNumber",maskedInput:"maskedInput",password:"password",radioGroup:"radioGroup",segmented:"segmented",select:"select",switch:"switch",text:"text",textarea:"textarea"},ht=s.forwardRef(function(e,t){const{className:n,dataTestId:l,dataTour:u,type:c,initialValues:m,initialValuesEqual:f,config:h,validationSchema:T,title:_,desc:v,buttonGap:x,dataTestIdButtons:S,dataTestIdPrimaryButton:I,dataTestIdSecondaryButton:C,dataTestIdTertiaryButton:z,dataTourButtons:P,dataTourPrimaryButton:w,dataTourSecondaryButton:N,dataTourTertiaryButton:M,disableFieldsAutoComplete:k=!1,fieldsGap:B,groupGap:D,language:F,mutators:A,notificationCloseButton:V,notificationType:E,primaryButton:q,renderFieldsWrapper:R=e=>e,secondaryButton:L,tertiaryButton:H,before:j,after:O,isLoading:G,onClickSecondaryButton:U,onClickTertiaryButton:Q,onChangeFormValues:J,onSubmit:Y}=e,ee=h.fields||h,te=h.title||h.form?.title,re=h.form?.dataTestId||l,ae=ge(T,F),ie=d(e=>{t&&"object"==typeof t&&(t.current=e)},[t]),oe=y(e),{directionClass:se="vertical",fillClass:ne,titleFill:le,titlePosition:de,titleTextColor:ce,titleTextSize:me,titleTextWeight:pe,descSize:fe,descTextColor:he,descTextWeight:ye,buttonDirection:Te="vertical",buttonFill:be,buttonJustifyContent:_e,buttonPadding:ve,buttonPosition:xe,elevationClass:Se,heightClass:Ie,loader:Ce,loaderAppearance:ze,loaderFill:Pe="surfacePrimary",loaderItemFill:we="accentItemSecondary",loaderShape:Ne,loaderSize:Me="l",loaderText:ke,loaderType:Be="dot",primaryButtonAppearance:De,primaryButtonFill:Fe,primaryButtonFillHover:Ae,primaryButtonHtmlType:Ve,primaryButtonIsDisabled:Ee,primaryButtonIsLoading:qe,primaryButtonLabel:Ke,primaryButtonLabelSize:We,primaryButtonLabelTextColor:$e,primaryButtonLabelTextWeight:Re,primaryButtonSize:Le,secondaryButtonAppearance:He,secondaryButtonFill:je,secondaryButtonFillHover:Oe,secondaryButtonHtmlType:Ge,secondaryButtonIsDisabled:Ue,secondaryButtonIsLoading:Qe,secondaryButtonLabel:Je,secondaryButtonLabelSize:Ze,secondaryButtonLabelTextColor:Xe,secondaryButtonLabelTextWeight:Ye,secondaryButtonSize:et,shapeClass:tt,tertiaryButtonAppearance:rt,tertiaryButtonFill:at,tertiaryButtonFillHover:it,tertiaryButtonHtmlType:ot,tertiaryButtonIsDisabled:st,tertiaryButtonIsLoading:nt,tertiaryButtonLabel:lt,tertiaryButtonLabelSize:dt,tertiaryButtonLabelTextColor:ut,tertiaryButtonLabelTextWeight:ct,tertiaryButtonSize:mt,widthClass:ft}=oe,{styles:ht,wrapper:gt}=g(e);return i(r,{initialValues:m,initialValuesEqual:f,render:({form:e,handleSubmit:t,modifiedSinceLastSubmit:r,submitError:d})=>o("form",{className:p(n,"form",c&&`form_type_${c}`,ft&&`width_${ft}`,Ie&&`height_${Ie}`,de&&`form_title-position_${de}`,xe&&`form_button-position_${xe}`,ne&&`fill_${ne}`,tt&&`shape_${tt}`,Se&&`elevation_${Se}`),ref:()=>ie(e),autoCapitalize:k?"off":void 0,autoComplete:k?"off":void 0,autoCorrect:k?"off":void 0,"data-testid":re||l&&`${l}Form`||"Form","data-tour":u,spellCheck:k?"false":void 0,style:ht,onSubmit:t,children:[j,(_||te)&&i($,{className:"form__title",dataTestId:re?`${re}Title`:"FormTitle",size:me,fill:le,textColor:ce,textWeight:pe,children:_||te}),v&&i(b,{className:"form__desc",size:fe,textColor:he,textWeight:ye,"data-testid":l?`${l}Desc`:"FormDesc",children:v}),d&&!r&&i("div",{className:p("notification","form-notification",E?`form-notification_${E}`:"form-notification_global"),children:i(X,{appearance:"errorPrimary sizeS solid rounded",dataTestId:h.form?.dataTestId?`${h.form.dataTestId}Notification`:"FormNotification",type:"global",status:"error",text:e.getState().submitError,closeIcon:V})}),J&&i(a,{subscription:{values:!0},onChange:J}),Boolean(ee&&Object.keys(ee).length)&&i(s.Fragment,{children:R(o(Z,{className:"form__wrapper",direction:"vertical",gap:B||D,style:gt,children:[Object.keys(ee).map(e=>pt(ee[e],{dataTestId:l||h.form?.dataTestId,key:e})),G&&(Ce||i(W,{appearance:ze,className:"form__loader",dataTestId:h.form?.dataTestId?`${h.form.dataTestId}Loader`:"FormLoader",type:Be,size:Me,fill:Pe,text:ke,itemFill:we,shape:Ne}))]}))}),h.buttons?i(Z,{className:"form__button",dataTestId:S||`${l}Buttons`,dataTour:P,direction:Te,justifyContent:_e,fill:be,padding:ve,gap:x,children:Object.keys(h.buttons).map(e=>pt(h.buttons[e],{dataTestId:l,key:e,primaryButtonHtmlType:Ve,primaryButtonIsDisabled:Ee,primaryButtonIsLoading:qe,secondaryButtonHtmlType:Ge,secondaryButtonIsDisabled:Ue,secondaryButtonIsLoading:Qe,tertiaryButtonHtmlType:ot,tertiaryButtonIsDisabled:st,tertiaryButtonIsLoading:nt,onClickSecondaryButton:U,onClickTertiaryButton:Q}))}):(Ke||q||Je||L||H||lt)&&o(Z,{className:"form__button",dataTestId:S||`${l}Buttons`,dataTour:P,direction:Te,justifyContent:_e,fill:be,padding:ve,gap:x,children:[Ke?i(K,{appearance:De,className:"form__button-item",dataTestId:I||l&&`${l}PrimaryButton`||"FormPrimaryButton",dataTour:w,width:"fill",size:Le,fill:Fe,fillHover:Ae,label:Ke,labelTextColor:$e,labelTextSize:We,labelTextWeight:Re,htmlType:Ve||"submit",isDisabled:Ee,isLoading:qe}):q,Je?i(K,{appearance:He,className:"form__button-item",dataTestId:C||l&&`${l}SecondaryButton`||"FormSecondaryButton",dataTour:N,width:"fill",size:et,fill:je,fillHover:Oe,label:Je,labelTextColor:Xe,labelTextSize:Ze,labelTextWeight:Ye,htmlType:Ge,isDisabled:Ue,isLoading:Qe,onClick:U}):L,lt?i(K,{appearance:rt,className:"form__button-item",dataTestId:z||l&&`${l}TertiaryButton`||"FormTertiaryButton",dataTour:M,width:"fill",size:mt,fill:at,fillHover:it,label:lt,labelTextColor:ut,labelTextSize:dt,labelTextWeight:ct,htmlType:ot,isDisabled:st,isLoading:nt,onClick:Q}):H]}),O]}),decorators:[ue],mutators:A,subscription:{modifiedSinceLastSubmit:!0,pristine:!0,submitError:!0,submitting:!0},validate:ae,onSubmit:Y})}),gt=e=>{const t=e.slice(0,10).replace(/,/g,".").replace(/[^\d.]/g,""),r=parseFloat(t);return r||0===r?t.endsWith(".")&&(t.match(/\./g)||[]).length>1?t.slice(0,-1):t:""},yt=e=>{const t={},r=e.response?.data||e;if(r)if("string"==typeof r)t[v]="Во время обработки запроса произошла ошибка, попробуйте повторить запрос";else for(const e in r){t["non_field_errors"===e||"detail"===e?v:e]=A(r[e])[0]}else t[v]=e.message||"Произошла ошибка";return t},Tt=e=>!e||Y(e,"RU"),bt=e=>{if(!e)return!0;return/^[a-za-яёЁ0-9_-]+(?:\.[a-za-яёЁ0-9_-]+)*@(?:[a-za-яёЁ0-9](?:[a-za-яёЁ0-9-]*[a-za-яёЁ0-9])?\.)+[a-za-яёЁ0-9]+$/.test(String(e).toLowerCase())},_t=e=>{const t=e instanceof Date?e:new Date(e);return!isNaN(t.getTime())},vt=e=>{const t=Object.entries(e.fields);return e.requiredFields=t.reduce((e,[t,r])=>(r.exclusiveTests?.required&&e.push(t),e),[]),e};export{ee as DEFAULT_MESSAGES_FIELDS,le as FieldWrapper,ne as FieldWrapperBase,ht as FinalForm,be as FormFieldCheckbox,ve as FormFieldChips,Se as FormFieldChoice,Ce as FormFieldCode,ze as FormFieldCustom,we as FormFieldDadataInput,Me as FormFieldDatePicker,He as FormFieldFileInput,Ue as FormFieldInput,Je as FormFieldInputNumber,Xe as FormFieldMaskedInput,et as FormFieldPassword,at as FormFieldRadioGroup,ot as FormFieldSegmented,lt as FormFieldSelect,ut as FormFieldSwitch,mt as FormFieldTextarea,Oe as FormGroup,vt as addRequiredFieldsParamToSchema,pe as createDataTestIdField,_t as dateValidation,te as defaultCheckboxProps,_e as defaultChipsProps,xe as defaultChoiceProps,Ie as defaultCodeProps,Pe as defaultDadataInputProps,Ne as defaultDatepickerProps,ke as defaultDropzoneProps,re as defaultFieldProps,oe as defaultFieldSizeL,ie as defaultFieldSizeM,ae as defaultFieldSizeS,se as defaultFieldSizeXL,je as defaultGroupProps,Qe as defaultInputNumberProps,Ge as defaultInputProps,Ze as defaultMaskedInputProps,Ye as defaultPasswordProps,tt as defaultRadioProps,it as defaultSegmentedProps,st as defaultSelectProps,dt as defaultSwitchProps,ct as defaultTextareaProps,bt as emailValidation,de as focusOnError,ue as focusOnErrorDecorator,ft as formTypes,pt as generateField,yt as getErrorsForFinalForm,gt as parseNumericField,Tt as phoneValidation,me as sendFormDataToServer,ce as setErrorsMutator,ge as useYupValidationSchema};
|
|
1
|
+
import{useForm as e,Field as t,Form as r,FormSpy as a}from"react-final-form";export{Field,useForm,useFormState}from"react-final-form";import{jsx as i,jsxs as s}from"react/jsx-runtime";import o,{useEffect as n,useMemo as l,useCallback as d,useState as u,createElement as c}from"react";import m from"clsx";import{Checkbox as p}from"@itcase/ui-web/components/Checkbox";import{useDeviceTargetClass as f,useStyles as g,useDevicePropsGenerator as h}from"@itcase/ui-core/hooks";import{Divider as y}from"@itcase/ui-web/components/Divider";import{Text as _}from"@itcase/ui-web/components/Text";import T from"axios";import{FORM_ERROR as b,getIn as v,setIn as S}from"final-form";import I from"final-form-focus";import x from"lodash/camelCase";import P from"lodash/snakeCase";import{ChipsGroup as C,Chips as z}from"@itcase/ui-web/components/Chips";import{Choice as M}from"@itcase/ui-web/components/Choice";import{Code as w}from"@itcase/ui-web/components/Code";import{Icon as N}from"@itcase/ui-web/components/Icon";import{Dadata as k}from"@itcase/ui-web/components/Dadata";import{DatePickerInput as B}from"@itcase/ui-web/components/DatePicker";import V from"lodash/castArray";import{Dropzone as A}from"@itcase/ui-web/components/Dropzone";import{Title as F}from"@itcase/ui-web/components/Title";import{Input as q}from"@itcase/ui-web/components/Input";import{InputNumber as D}from"@itcase/ui-web/components/InputNumber";import{useIMask as K}from"react-imask";import{InputPassword as E}from"@itcase/ui-web/components/InputPassword";import{Radio as $}from"@itcase/ui-web/components/Radio";import{Segmented as L}from"@itcase/ui-web/components/Segmented";import{Select as R}from"@itcase/ui-web/components/Select";import{Switch as W}from"@itcase/ui-web/components/Switch";import{Textarea as H}from"@itcase/ui-web/components/Textarea";import{Button as G}from"@itcase/ui-web/components/Button";import{Group as O}from"@itcase/ui-web/components/Group";import{Loader as j}from"@itcase/ui-web/components/Loader";import{Notification as U}from"@itcase/ui-web/components/Notification";import{isPossiblePhoneNumber as J}from"libphonenumber-js";const Q={email_error:{key:"error",message:"Введите корректный адрес электронной почты"},email_required:{key:"required",message:"Укажите адрес электронной почты"},invalid_value:{key:"error",message:"Некорректное значение"},min:{key:"error",message:({min:e})=>`Значение должно быть не менее ${e} символов`},max:{key:"error",message:({max:e})=>`Значение должно быть не менее ${e} символов`},matches:{key:"error",message:"Допускается ввод только цифр от 0 до 9"},numeric_value:{key:"error",message:"Только числовое значение"},password_required:{key:"required",message:"Введите пароль"},phone_error:{key:"error",message:"Введите корректный номер телефона"},phone_or_email_required:{key:"required",message:"Введите телефон или адрес эл. почты"},phone_required:{key:"required",message:"Укажите номер телефона"},required:{key:"required",message:"Обязательное поле"},url:{key:"error",message:"Введите корректный URL-адрес"}},Z={appearance:"defaultPrimary sizeL ghost rounded",width:"fill",errorAppearance:"errorPrimary sizeL ghost rounded",requiredAppearance:"requirePrimary sizeL ghost rounded"},X={width:"fill",direction:"vertical",labelTextColor:"surfaceTextPrimary",messageTextColor:"surfaceTextSecondary",dividerFill:"errorPrimary",errorMessageTextColor:"errorTextSecondary",helpTextColor:"surfaceTextQuaternary",requiredMessageTextColor:"warningTextSecondary",showMessage:!0},Y={size:"s",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...X},ee={size:"m",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...X},te={size:"l",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...X},re={size:"xl",labelTextSize:"s",messageTextSize:"s",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextSize:"s",...X};function ae(e){const{className:t,dataTestId:r,dataTour:a,type:o,label:n,labelHidden:d,labelTextColor:u,labelTextSize:c,labelTextWeight:p,messageTextSize:h,desc:T,descTextColor:b,descTextSize:v,descTextWeight:S,afterItem:I,beforeItem:x,dividerDirection:P,dividerFill:C,dividerSize:z,dividerWidth:M,errorKey:w,errorMessage:N,fieldClassName:k,helpText:B,helpTextColor:V,helpTextColorSuccess:A,helpTextSize:F,helpTextWeight:q,inputName:D,inputValue:K,metaActive:E,metaError:$,showDivider:L,showMessage:R,tag:W="div",before:H,after:G,isDisabled:O,isErrorState:j,isHidden:U,isRequired:J,isValidState:Q,children:Z}=e,X=l(()=>m(t,Q&&"form__item_state_success",J&&"form__item_state_required",O&&"form__item_state_disabled",E&&"form__item_state_focus",K&&"form__item_state_filled",j&&`form__item_state_${w}`),[t,j,Q,J,E,K,O,$]),Y=l(()=>m(k,Q&&`${k}_state_success`,E&&`${k}_state_focus`,K&&`${k}_state_filled`,O&&`${k}_state_disabled`,j&&`${k}_state_${w}`),[k,j,Q,E,K,O,$]),ee=f(e,{prefix:"form-field_size_",propsKey:"size"}),te=f(e,{prefix:"fill_",propsKey:"fill"}),re=f(e,{prefix:"fill_",propsKey:"inputFill"}),ae=f(e,{prefix:"form-field_shape_",propsKey:"shape"}),ie=f(e,{prefix:"form-field__item-value_shape_",propsKey:"inputShape"}),se=f(e,{prefix:"direction_",propsKey:"direction"}),oe=f(e,{prefix:"width_",propsKey:"width"}),{styles:ne}=g(e),le=e[`${w}MessageTextSize`],de=e[`${w}MessageTextColor`],ue=e[`${w}MessageTextWeight`],ce=`${r||`${D}Field`}Message`;return s(W,{className:m(X,"form__item","form-field",o?`form-field_type_${o}`:"form-field_type_classic",ee,te,ae,O&&"form-field_state_disabled",U&&"form-field_state_hidden",se,oe),"data-testid":r,"data-tour":a,style:ne,children:[H,(n||d)&&i("div",{className:m("form-field__label",`text_size_${c}`),"data-testid":`${r}Label`,children:s(_,{size:c,textColor:u,textWeight:p,children:[n,d&&" "]})}),T&&i("div",{className:m("form-field__desc",`text_size_${v}`),"data-testid":`${r}Desc`,children:i(_,{size:v,textColor:b,textWeight:S,children:T})}),s("div",{className:m("form-field__content",re,ie),children:[s("div",{className:m("form-field__content-inner",Y),children:[x,Z,I]}),L&&i(y,{className:"form-field__item-divider",width:M,direction:P,size:z,fill:C})]}),R&&s("div",{className:m("form-field__message",`text_size_${le||F||h}`),"data-testid":ce,children:[j&&N&&i(_,{className:"form-field__message-item form-field__message-item_type-error",dataTestId:`${r}MessageError`,size:le,textColor:de,textWeight:ue,children:N}),Boolean(B)&&(!j||!N)&&i(_,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${r}MessageHelpText`,size:F,textColor:Q?A:V,textWeight:q,children:B}),(!j&&!B||j&&!B&&!N)&&i(_,{className:"form-field__message-item form-field__message-item_type_help-text",dataTestId:`${r}MessageHelpText`,size:h,children:" "})]}),G]})}function ie(t){const{inputName:r}=t,{change:a}=e();return n(()=>()=>{a(r,void 0)},[]),i(ae,{...t})}const se=(e,t)=>{const r=e,a=Object.keys(t).map(e=>e===b?"notification__item_status_error":`react-select-id_${e}-input`),i=r.find(e=>e.name?v(t,e.name):a.includes(e.id)),s=Object.keys(t);if(!i&&s.length){let e;try{const t=s[0];t===b?e=document.querySelector("notification__item_status_error"):(e=document.querySelector(`#${t}-error`),e||(e=document.querySelector(`#id_${t}`)))}catch(e){console.warn(e)}e&&e.scrollIntoView({block:"center"})}i&&i.scrollIntoView({block:"center"})},oe=I(void 0,se),ne=(e,t)=>{const[r,a]=e,i=a.submitError,s=a.error;if("non_field_errors"===r||r===b)t.formState.error=s,t.formState.submitError=i;else if(r in t.fields){if(t.fields[r].touched=!0,s||""===s){const e=Object.assign({},t.formState.errors,{[r]:s});t.fields[r].error=s,t.formState.errors=e}if(i||""===i){const e=Object.assign({},t.formState.submitErrors,{[r]:i});t.fields[r].submitFailed=!0,t.fields[r].submitSucceeded=!1,t.fields[r].submitError=i,t.formState.submitErrors=e,t.formState.submitFailed=!0,t.formState.submitSucceeded=!1,t.formState.lastSubmittedValues=t.formState.values}}},le=async(e,t)=>{try{return{response:await T({url:e,method:"POST",data:t}),success:!0}}catch(e){const t=e,r={};return"string"==typeof t.response?.data&&(r[b]="Something went wrong"),"object"==typeof t.response?.data&&Object.entries(t.response.data).forEach(([e,t])=>{r[e]=t[0]}),{error:t,formErrors:r,success:!1}}},de=(e,t)=>{const r=(e=>e.replace(/(^|[_-])([a-zA-Z0-9])/g,(e,t,r)=>r.toUpperCase()))(e);return t&&t.endsWith("Field")?t:t?t+r+"Field":r+"Field"},ue=(e,t)=>S(e,t.path,t.message),ce=Object.create(null);function me(e,t){const r=l(()=>e&&(e=>async function(t){try{await(e?.validate(t,{abortEarly:!1}))}catch(e){const t=e;if(t.message)return t.inner.reduce(ue,ce);console.warn("itcase-forms schema.validate error: An error not related to the form occurred during validation. Validation ignored.")}})(e),[e,t]);return r}function pe(e){const{fieldProps:t={},input:r={},meta:a={}}=e,i=!a.modifiedSinceLastSubmit&&a.submitError,s=a.error?.key||"error",o=l(()=>t.showErrorsOnSubmit?Boolean(a.submitFailed&&a.touched&&(a.error||i)):Boolean(a.touched&&(a.error||i)),[t.showErrorsOnSubmit,a.submitFailed,a.touched,a.error,i]),n=l(()=>{const e=Array.isArray(r?.value)?r?.value.length:r?.value,t=a.modifiedSinceLastSubmit&&!a.error&&i;return Boolean(e&&(a.valid||t))},[r?.value,a.valid,a.error,i,a.modifiedSinceLastSubmit]);return{errorKey:s,errorMessage:l(()=>{const e=a.error||i||!1;if(e){if("string"==typeof e)return e;if(e.message)return e.message}return""},[a.error,i]),successKey:"success",isErrorState:o,isValidState:n}}function fe(e){const{inputProps:t,validationStateKey:r}=e;return l(()=>{const e={};return r?(Object.entries(t||{}).forEach(([t,a])=>{const i=P(t);if(i.startsWith(`${r}_`)){const t=i.replace(`${r}_`,""),s=x(t);e[s]=a}else e[t]||(e[t]=a)}),e):t},[r,t])}const ge=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:o,fieldProps:n={},inputProps:l={},showMessage:u,isDisabled:c,isRequired:f,onChange:g}=e;return i(t,{type:"checkbox",name:a,initialValue:s,children:function({input:e,meta:t}){const a=d(t=>{t&&(e.onChange(t),g&&g(t.target.checked,e.name))},[g,e.onChange]),{errorKey:s,errorMessage:h,successKey:y,isErrorState:_,isValidState:T}=pe({fieldProps:n,input:e,meta:t}),b=fe({inputProps:l,validationStateKey:_?s:T?y:null}),v=de(e.name,r);return i(ie,{className:m("form-field-checkbox","form__item_checkbox",o),dataTestId:v,errorKey:s,errorMessage:h,fieldClassName:"form-checkbox",inputName:e.name,inputValue:e.checked,metaActive:t.active,metaError:t.error,showMessage:u,tag:"label",isDisabled:c,isErrorState:_,isRequired:f,isValidState:T,...n,children:i(p,{checked:e.checked,isActive:e.checked,isDisabled:c,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,...b})})}})}),he={appearance:"surfacePrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"warningPrimary sizeM solid rounded"};function ye(r){const{dataTestId:a,name:s,initialValue:o,classNameGroupItem:u,emptyMessage:c,emptyMessageTextColor:p,emptyMessageTextSize:f,fieldProps:g,inputProps:h,options:y,showMessage:T,isDisabled:b,isRequired:v,onChange:S}=r,{change:I}=e(),x=d((e,t)=>{const r=e.includes(t)?e.filter(e=>e!==t):[...e,t];I(s,r),S&&S(r)},[I,s,S]);return n(()=>{o&&I(s,o)},[o]),i(t,{name:s,initialValue:o,children:function({input:e,meta:t}){const{errorKey:r,errorMessage:s,successKey:o,isErrorState:n,isValidState:d}=pe({fieldProps:g,input:e,meta:t}),S=fe({inputProps:h,validationStateKey:n?r:d?o:null}),I=l(()=>{const t=[{label:null,value:null}];if(e?.value){return y.filter(t=>e.value?.includes(t.value))||t}return t},[e.value]),P=de(e.name,a);return i(ie,{className:m("form-field_chips","form__item_chips",u),dataTestId:P,errorKey:r,errorMessage:s,fieldClassName:"form-chips",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:T,isDisabled:b,isErrorState:n,isRequired:v,isValidState:d,...g,children:y?.length?i(C,{direction:"horizontal",gap:"1m",wrap:"wrap",children:y.map(a=>i(z,{className:m(t.active&&"form-chips_state_focus",t.error&&t.touched&&`form-chips_state_${r}`),label:a.label,isActive:I.some(e=>e.value===a.value),isDisabled:a.isDisabled,onClick:()=>x(e.value,a.value),...S},a.value))}):i(_,{size:f,textColor:p,children:c})})}})}const _e={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"},Te=o.memo(function(r){const{dataTestId:a,name:s,initialValue:o,label:n,classNameGroupItem:u,fieldProps:c,inputProps:p,options:f,showMessage:g,isDisabled:h,isCheckbox:y,isRequired:_,onChange:T}=r,{change:b}=e(),v=d((e,t)=>{b(s,t&&e.value),T&&T(e.value,s,t)},[b,T]);return i(t,{name:s,initialValue:o,children:function({input:e,meta:t}){const r=l(()=>{const t={label:null,value:null};if(e.value){return f.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:s,errorMessage:o,successKey:d,isErrorState:T,isValidState:b}=pe({fieldProps:c,input:e,meta:t}),S=fe({inputProps:p,validationStateKey:T?s:b?d:null}),I=de(e.name,a);return i(ie,{className:m("form-field_choice","form__item_choice",u),dataTestId:I,label:n,errorKey:s,errorMessage:o,fieldClassName:"form-choice",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:g,isDisabled:h,isErrorState:T,isRequired:_,isValidState:b,...c,children:i(M,{className:m(t.active&&"form-choice_state_focus",t.error&&t.touched&&`form-choice_state_${s}`),name:e.name,active:r,options:f,isDisabled:h,isCheckbox:y,setActiveSegment:v,...S})})}})}),be={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},ve=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,label:o,classNameGroupItem:n,fieldProps:l={},inputProps:d={},showMessage:u,isDisabled:c,isRequired:p,type:f,...g}=e,h={...g,...d};return i(t,{name:a,initialValue:s,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:s,successKey:d,isErrorState:f,isValidState:g}=pe({fieldProps:l,input:e,meta:t}),y=fe({inputProps:h,validationStateKey:f?a:g?d:null}),_=de(e.name,r);return i(ie,{className:m("form-field-code","form__item_code",n),dataTestId:_,label:o,errorKey:a,errorMessage:s,fieldClassName:"form-code",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:u,isDisabled:c,isErrorState:f,isRequired:p,isValidState:g,...l,children:i(w,{initialValue:e.value,isDisabled:c,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...y})})}})}),Se=o.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:d,clearIconFillHover:u,clearIconShape:c,clearIconSize:p,Component:f,fieldProps:g={},showMessage:h,isDisabled:y,isRequired:_,onClickClearIcon:T}=e;return i(t,{name:a,initialValue:o,children:function({input:t,meta:a}){const{errorKey:o,errorMessage:b,isErrorState:v,isValidState:S}=pe({fieldProps:g,input:t,meta:a}),I=fe({inputProps:e,validationStateKey:v?o:"success"}),x=de(t.name,r);return s(ie,{className:m("form-field_custom","form__item_custom",n),dataTestId:x,errorKey:o,errorMessage:b,fieldClassName:"form-custom",inputName:t.name,inputValue:String(t.value??""),metaActive:a.active,metaError:a.error,showMessage:h,isDisabled:y,isErrorState:v,isRequired:_,isValidState:S,...g,children:[i(f,{...I,input:t,meta:a,isDisabled:y}),l&&i(N,{className:"form-field__icon",size:p,iconFill:d,iconFillHover:u,imageSrc:l,shape:c,SvgImage:l,onClick:T})]})}})}),Ie={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},xe=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:o,fieldProps:n,inputProps:l,parse:d,showMessage:u,token:c,isDisabled:p,isRequired:f,onDadataAutocomplete:g}=e;if("development"===process.env.NODE_ENV){const e=`Check your form config at field "${a}".`;if(!c){throw new Error(`FormFieldDadataInput: 'token' prop is missing, instead got ${c}.`+"\n"+e)}if(!g){throw new Error(`FormFieldDadataInput: 'onDadataAutocomplete' prop is missing, instead got ${g}.`+"\n"+e)}}return i(t,{name:a,initialValue:s,parse:d,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:s,successKey:d,isErrorState:h,isValidState:y}=pe({fieldProps:n,input:e,meta:t}),_=fe({inputProps:l,validationStateKey:h?a:y?d:null}),T=de(e.name,r);return i(ie,{className:m("form-field_input-dadata","form__item_input-dadata",o),dataTestId:T,errorKey:a,errorMessage:s,fieldClassName:"form-dadata",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:u,isDisabled:p,isErrorState:h,isRequired:f,isValidState:y,...n,children:i(k,{input:e,inputProps:_,meta:t,token:c,setValue:g})})}})}),Pe={appearance:"surfacePrimary sizeS solid rounded",dateFormat:"dd/MM/yyyy - HH:mm",readOnly:!1,selectsRange:!1,showTimeSelect:!0,timeCaption:"Время",timeFormat:"p",timeIntervals:60,isClearable:!0,isStartDefaultNull:!0};function Ce(e){const{dataTestId:r,name:a,classNameGroupItem:s,datePickerProps:o,fieldProps:n={},inputProps:l={},showMessage:u,isDisabled:c,isRequired:p,onChange:f}=e;return i(t,{name:a,children:function({input:e,meta:t}){const a=d((t,r)=>{o?.selectsRange?e.onChange({endDate:r,startDate:t}):e.onChange(t),f&&f(t,r)},[e.onChange,f]),{errorKey:g,errorMessage:h,successKey:y,isErrorState:_,isValidState:T}=pe({fieldProps:n,input:e,meta:t}),b=fe({inputProps:l,validationStateKey:_?g:T?y:null}),v=de(e.name,r);return i(ie,{className:m("form-field_datepicker","form__item_datepicker",s),dataTestId:v,errorKey:g,errorMessage:h,fieldClassName:"form-datepicker",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:u,isDisabled:c,isErrorState:_,isRequired:p,isValidState:T,...n,children:i(B,{name:e.name,datePickerProps:o,endValue:o?.selectsRange?e.value.endDate:null,inputProps:b,value:o?.selectsRange?e.value.startDate:e.value,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus})})}})}var ze={appearance:"defaultSecondary sizeM solid rounded",errorAppearance:"errorTertiary sizeM solid rounded",requiredAppearance:"requireTertiary sizeM solid rounded",showFilename:!0,showFileSize:!0,successAppearance:"successTertiary sizeM solid rounded",isPreviews:!0},Me=["dataTestId","type","name","width","maxFiles","label","classNameGroupItem","dropzoneProps","fieldProps","inputProps","showMessage","isDisabled","isRequired","onClickPreview","onAddFiles","onDeleteFile"];var we=o.memo(function(e){var r=e.dataTestId;e.type;var a=e.name,s=e.width,o=e.maxFiles,n=e.label,u=e.classNameGroupItem,c=e.dropzoneProps,p=e.fieldProps,f=void 0===p?{}:p,g=e.inputProps,h=void 0===g?{}:g,y=e.showMessage,_=e.isDisabled,T=e.isRequired,b=e.onClickPreview,v=e.onAddFiles,S=e.onDeleteFile,I=function(e,t){if(null==e)return{};var r={};for(var a in e)if({}.hasOwnProperty.call(e,a)){if(-1!==t.indexOf(a))continue;r[a]=e[a]}return r}(e,Me),x=Object.assign({},I,h);return i(t,{name:a,children:function(e){var t,a,p,g=e.input,h=e.meta,I=pe({fieldProps:f,input:g,meta:h}),P=I.errorKey,C=I.errorMessage,z=I.successKey,M=I.isErrorState,w=I.isValidState,N=fe({inputProps:x,validationStateKey:M?P:w?z:null}),k=null!=(t=null!=(a=null==c?void 0:c.maxFiles)?a:o)?t:5,B=d(function(e){g.onChange(1===k?e[0]:e)},[g,k]),F=l(function(){return null==g.value||""===g.value?[]:V(g.value)},[g.value]),q=de(g.name,r);return i(ie,Object.assign({className:m("form-field_type_dropzone","form__item_type_dropzone",u),dataTestId:q,width:s,label:n,errorKey:P,errorMessage:C,fieldClassName:"form-dropzone",inputName:g.name,inputValue:(p=g.value,Array.isArray(p)?p.length>0?p:"":null!=p?p:""),metaActive:h.active,metaError:h.error,showMessage:y,isDisabled:_,isErrorState:M,isRequired:T,isValidState:w},f,{children:i(A,Object.assign({},N,{maxFiles:o,dropzoneProps:c,fieldValuesList:F,inputName:g.name,onClickPreview:b,onAddFiles:v,onChangeFiles:B,onDeleteFile:S}))}))}})});const Ne={width:"fill",labelTextSize:"s",messageTextColor:"surfaceTextPrimary",messageTextSize:"s",errorMessageTextColor:"errorTextSecondary",errorMessageTextSize:"s",helpTextSize:"s",requiredMessageTextColor:"warningTextSecondary",requiredMessageTextSize:"s"},ke=o.memo(function(e){const{className:r,dataTestId:a,dataTour:n,name:l,title:d,titleTextColor:u,titleTextSize:c,titleTextWeight:p,label:f,labelTextColor:y,labelTextSize:T,labelTextWeight:b,message:v,messageTextColor:S,messageTextSize:I,messageTextWeight:x,column:P,showGroupMessage:C,before:z,after:M,isActive:w,isDisabled:N,isHidden:k,children:B}=e,V=h(e),{fillActiveClass:A,fillActiveHoverClass:q,fillClass:D,fillDisabledClass:K,fillHoverClass:E,shapeClass:$}=V,{styles:L}=g(e),R=de(l,a);return i(t,{name:l,children:function({input:t,meta:a}){const{errorKey:g,errorMessage:h,isErrorState:V}=pe({fieldProps:e,input:t,meta:a}),W=fe({inputProps:e,validationStateKey:V?g:"success"});return s("div",{className:m("form__group",r,k&&"form__group_hidden",N?K&&`fill_${K}`:w?A&&`fill_active_${A}`:D&&`fill_${D}`,N?K&&`fill_${K}`:w?q&&`fill_active_hover_${q}`:E&&`fill_hover_${E}`,$&&`shape_${$}`,P&&`form__group_column_${P}`),"data-testid":R,"data-tour":n,style:L,children:[s("div",{className:"form__group-wrapper",children:[z,d&&i("div",{className:"form__group-title",children:i(F,{dataTestId:`${R}Title`,size:c,textColor:u,textWeight:p,children:d})}),f&&i("div",{className:"form__group-label",children:i(_,{dataTestId:`${R}Label`,size:T,textColor:y,textWeight:b,children:f})}),i("div",{className:"form__group-items",children:B}),M]}),C&&s(o.Fragment,{children:[V&&h&&i(_,{className:`form__group-message form__group-message_type-${g}`,dataTestId:`${R}MessageError`,size:W.messageTextSize,textColor:W.messageTextColor,textWeight:W.messageTextWeight,children:h}),Boolean(v)&&(!V||!h)&&i(_,{className:"form__group-message",dataTestId:`${l}GroupMessage`,size:I,textColor:S,textWeight:x,children:v}),!V&&!v&&i(_,{className:"form__group-message",size:I,children:" "})]})]})}})}),Be={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Ve=o.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:n,clearIcon:l,clearIconFill:u,clearIconFillHover:c,clearIconShape:p,clearIconSize:f,fieldProps:g={},inputProps:h={},parse:y,showMessage:_,isDisabled:T,isRequired:b,onClickClearIcon:v,onChange:S}=e;return i(t,{name:a,initialValue:o,parse:y,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),S&&S(t.target.value,e.name)},[S,e]),{errorKey:o,errorMessage:y,successKey:I,isErrorState:x,isValidState:P}=pe({fieldProps:g,input:e,meta:t}),C=fe({inputProps:h,validationStateKey:x?o:P?I:null}),z=de(e.name,r);return s(ie,{className:m("form-field_input","form__item_input",n),dataTestId:z,errorKey:o,errorMessage:y,fieldClassName:"form-input",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:_,isDisabled:T,isErrorState:x,isRequired:b,isValidState:P,...g,children:[i(q,{className:m(t.active&&"input_state_focus",t.error&&t.touched&&`input_state_${o}`),dataTestId:`${z}Input`,type:"text",name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:T,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,...C}),l&&i(N,{className:"form-field__icon",dataTestId:`${z}InputIcon`,size:f,iconFill:u,iconFillHover:c,imageSrc:"string"==typeof l&&l,shape:p,SvgImage:"string"!=typeof l&&l,onClick:v})]})}})}),Ae={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Fe=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:o,fieldProps:n={},inputProps:l={},inputType:u="custom",parse:c,showMessage:p,isDisabled:f,isRequired:g,onChange:h}=e;return i(t,{name:a,initialValue:s,parse:c,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),h&&h(t.target.value)},[h,e.onChange]),{errorKey:s,errorMessage:c,successKey:y,isErrorState:_,isValidState:T}=pe({fieldProps:n,input:e,meta:t}),b=fe({inputProps:l,validationStateKey:_?s:T?y:null}),v=de(e.name,r);return i(ie,{className:m("form-field_input-number","form__item_input-number",o),dataTestId:v,errorKey:s,errorMessage:c,fieldClassName:"form-input-number",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:p,isDisabled:f,isErrorState:_,isRequired:g,isValidState:T,...n,children:i(D,{className:m(t.active&&"input_state_focus",(t.submitFailed||t.touched)&&t.error&&`input_state_${s}`),dataTestId:`${v}InputNumber`,type:u,name:e.name,value:Number(e.value)||0,onChange:a,...b})})}})}),qe={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},De=o.memo(function(e){const{dataTestId:r,name:a,initialValue:o,classNameGroupItem:l,clearIcon:d,clearIconFill:u,clearIconFillHover:c,clearIconShape:p,clearIconSize:f,fieldProps:g={},inputProps:h={},optionsMask:y,showMessage:_,unmasked:T,isDisabled:b,isRequired:v,onClickClearIcon:S}=e;return i(t,{name:a,initialValue:o,children:function({input:e,meta:t}){const{ref:a,unmaskedValue:I,value:x,setUnmaskedValue:P}=K(y,{defaultValue:o,onAccept:(t,r,a)=>{a&&e.onChange(r._unmaskedValue)}});n(()=>{e.value!==I&&P(e.value.replace(T,""))},[e.value]);const{errorKey:C,errorMessage:z,successKey:M,isErrorState:w,isValidState:k}=pe({fieldProps:g,input:e,meta:t}),B=fe({inputProps:h,validationStateKey:w?C:k?M:null}),V=de(e.name,r);return s(ie,{className:m("form-field-masked-input","form__item_masked-input",l),dataTestId:V,errorKey:C,errorMessage:z,fieldClassName:"form-maskedInput",inputName:e.name,inputValue:String(e.value??T??""),metaActive:t.active,metaError:t.error,showMessage:_,isDisabled:b,isErrorState:w,isRequired:v,isValidState:k,...g,children:[i(q,{className:m(t.active&&"input_state_focus",t.error&&t.touched&&`input_state_${C}`),ref:a,value:x,onBlur:e.onBlur,onFocus:e.onFocus,...B}),d&&i(N,{className:"form-field__icon",size:f,iconFill:u,iconFillHover:c,imageSrc:d,shape:p,SvgImage:d,onClick:S})]})}})}),Ke={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Ee=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:o,fieldProps:n,inputProps:l,parse:u,showMessage:c,isDisabled:p,isRequired:f,onChange:g}=e;return i(t,{name:a,initialValue:s,parse:u,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),g&&g(t.target.value,e.name)},[g,e.onChange]),{errorKey:s,errorMessage:u,successKey:h,isErrorState:y,isValidState:_}=pe({fieldProps:n,input:e,meta:t}),T=fe({inputProps:l,validationStateKey:y?s:_?h:null}),b=de(e.name,r);return i(ie,{className:m("form-field_input-password","form__item_input-password",o),dataTestId:b,errorKey:s,errorMessage:u,fieldClassName:"form-password",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:c,isDisabled:p,isErrorState:y,isRequired:f,isValidState:_,...n,children:i(E,{className:m(t.active&&"input-password_state_focus",t.error&&t.touched&&`input-password_state_${s}`),dataTestId:`${b}InputPassword`,name:e.name,autoComplete:"nope",value:String(e.value??""),isDisabled:p,onBlur:e.onBlur,onChange:a,onFocus:e.onFocus,...T})})}})}),$e={appearance:"defaultPrimary sizeM solid circular",errorAppearance:"errorPrimary sizeM solid circular",requiredAppearance:"requirePrimary sizeM solid circular",successAppearance:"successPrimary sizeM solid circular"};function Le(e){const{input:t,inputProps:r,options:a,onChange:s}=e,n=d(e=>{t.onChange(e),s&&s(e,t.name)},[t,s]),l=d(e=>{e.target.checked&&n(e.target.value)},[s]);return i(o.Fragment,{children:a.map(e=>i($,{className:"form-radio__item",label:e.label,checked:e.value===t.value,value:e.value,onChange:l,...r},e.value))})}const Re=o.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:s,fieldProps:o={},inputProps:n={},options:l=[],showMessage:d,isDisabled:u,isRequired:c,onChange:p}=e;return i(t,{name:a,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:f,successKey:g,isErrorState:h,isValidState:y}=pe({fieldProps:o,input:e,meta:t}),_=fe({inputProps:n,validationStateKey:h?a:y?g:null}),T=de(e.name,r);return i(ie,{className:m("form-field_radio","form__item_radio",s),dataTestId:T,errorKey:a,errorMessage:f,fieldClassName:"form-radio",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:d,isDisabled:u,isErrorState:h,isRequired:c,isValidState:y,...o,children:i(Le,{input:e,inputProps:_,options:l,onChange:p})})}})}),We={appearance:"defaultPrimary sizeM solid rounded",width:"fill",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded"};function He(r){const{dataTestId:a,name:s,fieldProps:o,inputProps:n,options:u,showMessage:c,isDisabled:p,isRequired:f}=r,{change:g}=e(),h=d(e=>{g(s,e.value)},[g]);return i(t,{name:s,children:function({input:e,meta:t}){const r=l(()=>{const t={label:null,value:null};if(e.value){return u.find(t=>t.value===e.value)||t}return t},[e.value]),{errorKey:s,errorMessage:d,successKey:g,isErrorState:y,isValidState:_}=pe({fieldProps:o,input:e,meta:t}),T=fe({inputProps:n,validationStateKey:y?s:_?g:null}),b=de(e.name,a);return i(ie,{className:m("form-field_segmented","form__item_segmented"),dataTestId:b,errorKey:s,errorMessage:d,fieldClassName:"form-segmented",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:c,isDisabled:p,isErrorState:y,isRequired:f,isValidState:_,...o,children:i(L,{activeSegment:r,segments:u,isDisabled:p,setActiveSegment:h,...T})})}})}const Ge={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"};function Oe(e){const{options:t,selectValue:r}=e,a=Array.isArray(r)?r:[r];let i=[];return t.forEach(e=>{const t=a.includes(e.value),s=a.includes(e.label);let o=[];e.options&&(o=Oe({options:e.options,selectValue:r})),t||s?i.push(e):o.length&&(i=i.concat(o))}),i}const je=o.memo(function(e){const{dataTestId:r,name:a,initialValue:s,classNameGroupItem:o,fieldProps:c,options:p=[],selectProps:f,selectRef:g,showMessage:h,isDisabled:y,isRequired:_,onChange:T,onInputChange:b}=e;return i(t,{name:a,initialValue:s,children:function({input:e,meta:t}){const[a,s]=u(null),v=l(()=>{const t=Oe({options:p,selectValue:e.value});return!t.length&&e.value?.length&&t.push({label:e.label,value:e.value}),t},[e.label,e.value]),S=d(t=>{e.onChange(t),T&&T(t,{name:e.name})},[T,e.onChange]),I=d(e=>{const t=Array.isArray(e)?e.map(e=>e.value):e?.value||null;s(e),S(t)},[S]);n(()=>{s(v)},[v]);const{errorKey:x,errorMessage:P,successKey:C,isErrorState:z,isValidState:M}=pe({fieldProps:c,input:e,meta:t}),w=fe({inputProps:f,validationStateKey:z?x:M?C:null}),N=de(e.name,r);return i(ie,{className:m("form-field_select","form__item_select",o),dataTestId:N,errorKey:x,errorMessage:P,fieldClassName:"form-select",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:h,isDisabled:y,isErrorState:z,isRequired:_,isValidState:M,...c,children:i(R,{className:"form-select-item",ref:g,instanceId:`id_${e.name}`,options:p,value:a,isDisabled:y,onChange:I,onInputChange:b,...w})})}})}),Ue={appearance:"defaultPrimary sizeL solid rounded",errorAppearance:"errorPrimary sizeL solid rounded",requiredAppearance:"requirePrimary sizeL solid rounded",successAppearance:"successPrimary sizeL solid rounded"},Je=o.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:s,fieldProps:o={},inputProps:n={},showMessage:l,isDisabled:u,isRequired:c,onChange:p}=e;return i(t,{type:"checkbox",name:a,children:function({input:e,meta:t}){const a=d(t=>{e.onChange(t),p&&p(t.target.checked,e.name)},[p,e.onChange]),{errorKey:f,errorMessage:g,successKey:h,isErrorState:y,isValidState:_}=pe({fieldProps:o,input:e,meta:t}),T=fe({inputProps:n,validationStateKey:y?f:_?h:null}),b=de(e.name,r);return i(ie,{className:m("form-field-switch","form__item_switch",s),dataTestId:b,errorKey:f,errorMessage:g,fieldClassName:"form-switch",inputName:e.name,inputValue:e.checked,metaActive:t.active,metaError:t.error,showMessage:l,tag:"label",isDisabled:u,isErrorState:y,isRequired:c,isValidState:_,...o,children:i(W,{isActive:e.checked,isDisabled:u,onChange:a,...T})})}})}),Qe={appearance:"defaultPrimary sizeM solid rounded",errorAppearance:"errorPrimary sizeM solid rounded",requiredAppearance:"requirePrimary sizeM solid rounded",successAppearance:"successPrimary sizeM solid rounded"},Ze=o.memo(function(e){const{dataTestId:r,name:a,classNameGroupItem:s,fieldProps:o={},inputProps:n={},showMessage:l,isDisabled:d,isRequired:u}=e;return i(t,{name:a,children:function({input:e,meta:t}){const{errorKey:a,errorMessage:c,successKey:p,isErrorState:f,isValidState:g}=pe({fieldProps:o,input:e,meta:t}),h=fe({inputProps:n,validationStateKey:f?a:g?p:null}),y=de(e.name,r);return i(ie,{className:m("form-field_textarea","form__item_textarea",s),dataTestId:y,errorKey:a,errorMessage:c,fieldClassName:"form-textarea",inputName:e.name,inputValue:String(e.value??""),metaActive:t.active,metaError:t.error,showMessage:l,isDisabled:d,isErrorState:f,isRequired:u,isValidState:g,...o,children:i(H,{className:m(t.active&&"textarea_state_focus",t.error&&t.touched&&`textarea_state_${a}`),dataTestId:`${y}Textarea`,name:e.name,value:String(e.value??""),isDisabled:d,onBlur:e.onBlur,onChange:e.onChange,onFocus:e.onFocus,...h})})}})});function Xe(e,t){switch(e.type){case Ye.password:return i(Ee,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.primaryButton:return c(G,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormPrimaryButton",key:t.key,width:"fill",htmlType:t.primaryButtonHtmlType||"submit",isDisabled:t.primaryButtonIsDisabled,isLoading:t.primaryButtonIsLoading});case Ye.secondaryButton:return c(G,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormSecondaryButton",key:t.key,width:"fill",htmlType:t.secondaryButtonHtmlType,isDisabled:t.secondaryButtonIsDisabled,isLoading:t.secondaryButtonIsLoading,onClick:t.onClickSecondaryButton});case Ye.tertiaryButton:return c(G,{...e,className:"form__button-item",dataTestId:e.dataTestId||"FormTertiaryButton",key:t.key,width:"fill",htmlType:t.tertiaryButtonHtmlType,isDisabled:t.tertiaryButtonIsDisabled,isLoading:t.tertiaryButtonIsLoading,onClick:t.onClickTertiaryButton});case Ye.checkbox:return i(ge,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.choice:return i(Te,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.code:return i(ve,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.chips:return i(ye,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.switch:return i(Je,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.segmented:return i(He,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.datePicker:return i(Ce,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.fileInput:return i(we,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.radioGroup:return i(Re,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.select:return i(je,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.text:return i(Ve,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.textarea:return i(Ze,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.maskedInput:return i(De,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.custom:return i(Se,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.dadataInput:return i(xe,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.inputNumber:return i(Fe,{...e,dataTestId:e.dataTestId??t.dataTestId},t.key);case Ye.group:return i(ke,{...e,dataTestId:e.dataTestId??t.dataTestId,children:Object.entries(e.group).map(([r,a])=>{const i={...a,classNameGroupItem:a.classNameGroupItem||"form__group-item",showMessage:e.showMessage};return Xe(i,{...t,dataTestId:i.dataTestId??t.dataTestId,key:r+"_form_group"})})},t.key)}}const Ye={secondaryButton:"secondaryButton",primaryButton:"primaryButton",tertiaryButton:"tertiaryButton",checkbox:"checkbox",chips:"chips",choice:"choice",code:"code",custom:"custom",dadataInput:"dadataInput",datePicker:"datePicker",dateRangePicker:"dateRangePicker",fileInput:"fileInput",group:"group",inputNumber:"inputNumber",maskedInput:"maskedInput",password:"password",radioGroup:"radioGroup",segmented:"segmented",select:"select",switch:"switch",text:"text",textarea:"textarea"},et=o.forwardRef(function(e,t){const{className:n,dataTestId:l,dataTour:u,type:c,initialValues:p,initialValuesEqual:f,config:y,validationSchema:T,title:b,desc:v,buttonGap:S,dataTestIdButtons:I,dataTestIdPrimaryButton:x,dataTestIdSecondaryButton:P,dataTestIdTertiaryButton:C,dataTourButtons:z,dataTourPrimaryButton:M,dataTourSecondaryButton:w,dataTourTertiaryButton:N,disableFieldsAutoComplete:k=!1,fieldsGap:B,groupGap:V,language:A,mutators:q,notificationCloseButton:D,notificationTestAlign:K,notificationType:E,primaryButton:$,renderFieldsWrapper:L=e=>e,secondaryButton:R,tertiaryButton:W,before:H,after:J,isLoading:Q,onClickSecondaryButton:Z,onClickTertiaryButton:X,onChangeFormValues:Y,onSubmit:ee}=e,te=y.fields||y,re=y.title||y.form?.title,ae=y.form?.dataTestId||l,ie=me(T,A),se=d(e=>{t&&"object"==typeof t&&(t.current=e)},[t]),ne=h(e),{directionClass:le="vertical",fillClass:de,titleFill:ue,titlePosition:ce,titleTextColor:pe,titleTextSize:fe,titleTextWeight:ge,descSize:he,descTextColor:ye,descTextWeight:_e,buttonDirection:Te="vertical",buttonFill:be,buttonJustifyContent:ve,buttonPadding:Se,buttonPosition:Ie,elevationClass:xe,heightClass:Pe,loader:Ce,loaderAppearance:ze,loaderFill:Me="surfacePrimary",loaderItemFill:we="accentItemSecondary",loaderShape:Ne,loaderSize:ke="l",loaderText:Be,loaderType:Ve="dot",primaryButtonAppearance:Ae,primaryButtonFill:Fe,primaryButtonFillHover:qe,primaryButtonHtmlType:De,primaryButtonIsDisabled:Ke,primaryButtonIsLoading:Ee,primaryButtonLabel:$e,primaryButtonLabelSize:Le,primaryButtonLabelTextColor:Re,primaryButtonLabelTextWeight:We,primaryButtonSize:He,secondaryButtonAppearance:Ge,secondaryButtonFill:Oe,secondaryButtonFillHover:je,secondaryButtonHtmlType:Ue,secondaryButtonIsDisabled:Je,secondaryButtonIsLoading:Qe,secondaryButtonLabel:Ze,secondaryButtonLabelSize:Ye,secondaryButtonLabelTextColor:et,secondaryButtonLabelTextWeight:tt,secondaryButtonSize:rt,shapeClass:at,tertiaryButtonAppearance:it,tertiaryButtonFill:st,tertiaryButtonFillHover:ot,tertiaryButtonHtmlType:nt,tertiaryButtonIsDisabled:lt,tertiaryButtonIsLoading:dt,tertiaryButtonLabel:ut,tertiaryButtonLabelSize:ct,tertiaryButtonLabelTextColor:mt,tertiaryButtonLabelTextWeight:pt,tertiaryButtonSize:ft,widthClass:gt}=ne,{styles:ht,wrapper:yt}=g(e);return i(r,{initialValues:p,initialValuesEqual:f,render:({form:e,handleSubmit:t,modifiedSinceLastSubmit:r,submitError:d})=>s("form",{className:m(n,"form",c&&`form_type_${c}`,gt&&`width_${gt}`,Pe&&`height_${Pe}`,ce&&`form_title-position_${ce}`,Ie&&`form_button-position_${Ie}`,de&&`fill_${de}`,at&&`shape_${at}`,le&&`direction_${le}`,xe&&`elevation_${xe}`),ref:()=>se(e),autoCapitalize:k?"off":void 0,autoComplete:k?"off":void 0,autoCorrect:k?"off":void 0,"data-testid":ae||l&&`${l}Form`||"Form","data-tour":u,spellCheck:k?"false":void 0,style:ht,onSubmit:t,children:[H,(b||re)&&i(F,{className:"form__title",dataTestId:ae?`${ae}Title`:"FormTitle",size:fe,fill:ue,textColor:pe,textWeight:ge,children:b||re}),v&&i(_,{className:"form__desc",size:he,textColor:ye,textWeight:_e,"data-testid":l?`${l}Desc`:"FormDesc",children:v}),d&&!r&&i("div",{className:m("notification","form-notification",E?`form-notification_${E}`:"form-notification_global"),children:i(U,{appearance:"errorPrimary sizeS solid rounded",dataTestId:y.form?.dataTestId?`${y.form.dataTestId}Notification`:"FormNotification",type:"global",width:"fill",status:"error",text:e.getState().submitError,textAlign:K,closeIcon:D})}),Y&&i(a,{subscription:{values:!0},onChange:Y}),Boolean(te&&Object.keys(te).length)&&i(o.Fragment,{children:L(s(O,{className:"form__wrapper",direction:"vertical",gap:B||V,style:yt,children:[Object.keys(te).map(e=>Xe(te[e],{dataTestId:l||y.form?.dataTestId,key:e})),Q&&(Ce||i(j,{appearance:ze,className:"form__loader",dataTestId:y.form?.dataTestId?`${y.form.dataTestId}Loader`:"FormLoader",type:Ve,size:ke,fill:Me,text:Be,itemFill:we,shape:Ne}))]}))}),y.buttons?i(O,{className:"form__button",dataTestId:I||`${l}Buttons`,dataTour:z,direction:Te,justifyContent:ve,fill:be,padding:Se,gap:S,children:Object.keys(y.buttons).map(e=>Xe(y.buttons[e],{dataTestId:l,key:e,primaryButtonHtmlType:De,primaryButtonIsDisabled:Ke,primaryButtonIsLoading:Ee,secondaryButtonHtmlType:Ue,secondaryButtonIsDisabled:Je,secondaryButtonIsLoading:Qe,tertiaryButtonHtmlType:nt,tertiaryButtonIsDisabled:lt,tertiaryButtonIsLoading:dt,onClickSecondaryButton:Z,onClickTertiaryButton:X}))}):($e||$||Ze||R||W||ut)&&s(O,{className:"form__button",dataTestId:I||`${l}Buttons`,dataTour:z,direction:Te,justifyContent:ve,fill:be,padding:Se,gap:S,children:[$e?i(G,{appearance:Ae,className:"form__button-item",dataTestId:x||l&&`${l}PrimaryButton`||"FormPrimaryButton",dataTour:M,width:"fill",size:He,fill:Fe,fillHover:qe,label:$e,labelTextColor:Re,labelTextSize:Le,labelTextWeight:We,htmlType:De||"submit",isDisabled:Ke,isLoading:Ee}):$,Ze?i(G,{appearance:Ge,className:"form__button-item",dataTestId:P||l&&`${l}SecondaryButton`||"FormSecondaryButton",dataTour:w,width:"fill",size:rt,fill:Oe,fillHover:je,label:Ze,labelTextColor:et,labelTextSize:Ye,labelTextWeight:tt,htmlType:Ue,isDisabled:Je,isLoading:Qe,onClick:Z}):R,ut?i(G,{appearance:it,className:"form__button-item",dataTestId:C||l&&`${l}TertiaryButton`||"FormTertiaryButton",dataTour:N,width:"fill",size:ft,fill:st,fillHover:ot,label:ut,labelTextColor:mt,labelTextSize:ct,labelTextWeight:pt,htmlType:nt,isDisabled:lt,isLoading:dt,onClick:X}):W]}),J]}),decorators:[oe],mutators:q,subscription:{modifiedSinceLastSubmit:!0,pristine:!0,submitError:!0,submitting:!0},validate:ie,onSubmit:ee})}),tt=e=>{const t=e.slice(0,10).replace(/,/g,".").replace(/[^\d.]/g,""),r=parseFloat(t);return r||0===r?t.endsWith(".")&&(t.match(/\./g)||[]).length>1?t.slice(0,-1):t:""},rt=e=>{const t={},r=e.response?.data||e;if(r)if("string"==typeof r)t[b]="Во время обработки запроса произошла ошибка, попробуйте повторить запрос";else for(const e in r){t["non_field_errors"===e||"detail"===e?b:e]=V(r[e])[0]}else t[b]=e.message||"Произошла ошибка";return t},at=e=>!e||J(e,"RU"),it=e=>{if(!e)return!0;return/^[a-za-яёЁ0-9_-]+(?:\.[a-za-яёЁ0-9_-]+)*@(?:[a-za-яёЁ0-9](?:[a-za-яёЁ0-9-]*[a-za-яёЁ0-9])?\.)+[a-za-яёЁ0-9]+$/.test(String(e).toLowerCase())},st=e=>{const t=e instanceof Date?e:new Date(e);return!isNaN(t.getTime())},ot=e=>{const t=Object.entries(e.fields);return e.requiredFields=t.reduce((e,[t,r])=>(r.exclusiveTests?.required&&e.push(t),e),[]),e};export{Q as DEFAULT_MESSAGES_FIELDS,ie as FieldWrapper,ae as FieldWrapperBase,et as FinalForm,ge as FormFieldCheckbox,ye as FormFieldChips,Te as FormFieldChoice,ve as FormFieldCode,Se as FormFieldCustom,xe as FormFieldDadataInput,Ce as FormFieldDatePicker,we as FormFieldFileInput,Ve as FormFieldInput,Fe as FormFieldInputNumber,De as FormFieldMaskedInput,Ee as FormFieldPassword,Re as FormFieldRadioGroup,He as FormFieldSegmented,je as FormFieldSelect,Je as FormFieldSwitch,Ze as FormFieldTextarea,ke as FormGroup,ot as addRequiredFieldsParamToSchema,de as createDataTestIdField,st as dateValidation,Z as defaultCheckboxProps,he as defaultChipsProps,_e as defaultChoiceProps,be as defaultCodeProps,Ie as defaultDadataInputProps,Pe as defaultDatepickerProps,ze as defaultDropzoneProps,X as defaultFieldProps,te as defaultFieldSizeL,ee as defaultFieldSizeM,Y as defaultFieldSizeS,re as defaultFieldSizeXL,Ne as defaultGroupProps,Ae as defaultInputNumberProps,Be as defaultInputProps,qe as defaultMaskedInputProps,Ke as defaultPasswordProps,$e as defaultRadioProps,We as defaultSegmentedProps,Ge as defaultSelectProps,Ue as defaultSwitchProps,Qe as defaultTextareaProps,it as emailValidation,se as focusOnError,oe as focusOnErrorDecorator,Ye as formTypes,Xe as generateField,rt as getErrorsForFinalForm,tt as parseNumericField,at as phoneValidation,le as sendFormDataToServer,ne as setErrorsMutator,me as useYupValidationSchema};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@itcase/forms",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.90",
|
|
4
4
|
"description": "Forms fields, inputs, etc.",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"license": "MIT",
|
|
@@ -39,12 +39,13 @@
|
|
|
39
39
|
"@itcase/common": "^1.2.43",
|
|
40
40
|
"@itcase/config": "^1.6.58",
|
|
41
41
|
"@itcase/icons": "^1.2.29",
|
|
42
|
-
"@itcase/
|
|
42
|
+
"@itcase/icons-default": "^1.2.35",
|
|
43
|
+
"@itcase/storybook-config": "^1.2.71",
|
|
43
44
|
"@itcase/tokens-am": "^1.1.57",
|
|
44
45
|
"@itcase/tokens-baikal": "^1.1.54",
|
|
45
46
|
"@itcase/tokens-palette": "^1.1.50",
|
|
46
|
-
"@itcase/ui-core": "^1.10.
|
|
47
|
-
"@itcase/ui-web": "^1.10.
|
|
47
|
+
"@itcase/ui-core": "^1.10.10",
|
|
48
|
+
"@itcase/ui-web": "^1.10.10",
|
|
48
49
|
"axios": "^1.16.1",
|
|
49
50
|
"clsx": "^2.1.1",
|
|
50
51
|
"final-form": "4.20.10",
|
|
@@ -62,11 +63,13 @@
|
|
|
62
63
|
"react-select": "^5.10.2"
|
|
63
64
|
},
|
|
64
65
|
"devDependencies": {
|
|
66
|
+
"@itcase/ui-core": "^1.10.10",
|
|
67
|
+
"@itcase/ui-web": "^1.10.10",
|
|
65
68
|
"@babel/core": "^7.29.7",
|
|
66
69
|
"@babel/preset-env": "^7.29.7",
|
|
67
70
|
"@babel/preset-react": "^7.29.7",
|
|
68
|
-
"@commitlint/cli": "^21.0.
|
|
69
|
-
"@commitlint/config-conventional": "^21.0.
|
|
71
|
+
"@commitlint/cli": "^21.0.2",
|
|
72
|
+
"@commitlint/config-conventional": "^21.0.2",
|
|
70
73
|
"@itcase/lint": "^1.1.116",
|
|
71
74
|
"@itcase/types-core": "^1.1.74",
|
|
72
75
|
"@itcase/types-ui": "^1.1.79",
|
|
@@ -86,7 +89,7 @@
|
|
|
86
89
|
"@vitest/browser-playwright": "^4.1.7",
|
|
87
90
|
"babel-plugin-inline-react-svg": "^2.0.2",
|
|
88
91
|
"babel-plugin-transform-react-remove-prop-types": "^0.4.24",
|
|
89
|
-
"concurrently": "^
|
|
92
|
+
"concurrently": "^10.0.0",
|
|
90
93
|
"conventional-changelog-conventionalcommits": "^9.3.1",
|
|
91
94
|
"eslint": "9.39.2",
|
|
92
95
|
"husky": "^9.1.7",
|