@scbt-ecom/ui 0.134.0 → 0.135.1

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.
Files changed (98) hide show
  1. package/dist/lib/exports/ui.js +1 -1
  2. package/dist/lib/shared/ui/formElements/controlled/autocomplete/{Autocomplete.js → AutocompleteControl.js} +2 -2
  3. package/dist/lib/shared/ui/formElements/controlled/autocomplete/AutocompleteControl.js.map +1 -0
  4. package/dist/lib/shared/ui/formElements/controlled/autocomplete/index.js +1 -1
  5. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js +1 -1
  6. package/dist/lib/shared/ui/formElements/controlled/checkbox/CheckboxControl.js.map +1 -1
  7. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js +1 -1
  8. package/dist/lib/shared/ui/formElements/controlled/combobox/ComboboxControl.js.map +1 -1
  9. package/dist/lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.js +1 -1
  10. package/dist/lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.js.map +1 -1
  11. package/dist/lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.js +1 -1
  12. package/dist/lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.js.map +1 -1
  13. package/dist/lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.js +1 -1
  14. package/dist/lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.js.map +1 -1
  15. package/dist/lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.js +1 -1
  16. package/dist/lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.js.map +1 -1
  17. package/dist/lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.js +1 -1
  18. package/dist/lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.js.map +1 -1
  19. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js +1 -1
  20. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.js.map +1 -1
  21. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js +1 -1
  22. package/dist/lib/shared/ui/formElements/controlled/dayPickerControl/single.js.map +1 -1
  23. package/dist/lib/shared/ui/formElements/controlled/index.js +1 -1
  24. package/dist/lib/shared/ui/formElements/controlled/index.js.map +1 -1
  25. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js +1 -1
  26. package/dist/lib/shared/ui/formElements/controlled/inputCurrency/InputCurrencyControl.js.map +1 -1
  27. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js +1 -1
  28. package/dist/lib/shared/ui/formElements/controlled/inputOtp/InputOtpControl.js.map +1 -1
  29. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js +1 -1
  30. package/dist/lib/shared/ui/formElements/controlled/radio/RadioGroupControl.js.map +1 -1
  31. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js +1 -1
  32. package/dist/lib/shared/ui/formElements/controlled/switch/SwitchControl.js.map +1 -1
  33. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js +1 -1
  34. package/dist/lib/shared/ui/formElements/controlled/textarea/TextareaControl.js.map +1 -1
  35. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js +1 -1
  36. package/dist/lib/shared/ui/formElements/controlled/uploader/UploaderControl.js.map +1 -1
  37. package/dist/lib/shared/ui/formElements/index.js +1 -1
  38. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js +1 -1
  39. package/dist/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.js.map +1 -1
  40. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js +1 -1
  41. package/dist/lib/shared/ui/formElements/uncontrolled/combobox/combobox.js.map +1 -1
  42. package/dist/lib/shared/ui/formElements/uncontrolled/input/Input.js.map +1 -1
  43. package/dist/lib/shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js +1 -1
  44. package/dist/lib/shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js.map +1 -1
  45. package/dist/lib/shared/ui/formElements/uncontrolled/radio/RadioGroup.js +1 -1
  46. package/dist/lib/shared/ui/formElements/uncontrolled/radio/RadioGroup.js.map +1 -1
  47. package/dist/lib/shared/ui/formElements/uncontrolled/slider/SliderBase.js.map +1 -1
  48. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js +1 -1
  49. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderAlgorithmic/SliderAlgorithmic.js.map +1 -1
  50. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js +1 -1
  51. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.js.map +1 -1
  52. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js +1 -1
  53. package/dist/lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.js.map +1 -1
  54. package/dist/lib/shared/ui/formElements/uncontrolled/switch/Switch.js +1 -1
  55. package/dist/lib/shared/ui/formElements/uncontrolled/switch/Switch.js.map +1 -1
  56. package/dist/lib/shared/ui/formElements/uncontrolled/textarea/Textarea.js +1 -1
  57. package/dist/lib/shared/ui/formElements/uncontrolled/textarea/Textarea.js.map +1 -1
  58. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js +1 -1
  59. package/dist/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.js.map +1 -1
  60. package/dist/lib/shared/ui/index.js +1 -1
  61. package/dist/lib/widgets/authProvider/ui/Esia.js +1 -1
  62. package/dist/lib/widgets/authProvider/ui/Esia.js.map +1 -1
  63. package/dist/lib/widgets/authProvider/ui/MobileId.js +1 -1
  64. package/dist/lib/widgets/authProvider/ui/MobileId.js.map +1 -1
  65. package/dist/lib/widgets/authProvider/ui/ui/Links.js +1 -1
  66. package/dist/lib/widgets/authProvider/ui/ui/Links.js.map +1 -1
  67. package/dist/lib/widgets/dynamicForm/DynamicForm.js +1 -1
  68. package/dist/lib/widgets/dynamicForm/DynamicForm.js.map +1 -1
  69. package/dist/lib/widgets/model/helpers.js +2 -2
  70. package/dist/lib/widgets/model/helpers.js.map +1 -1
  71. package/dist/node_modules/prosemirror-model/dist/index.js +2 -2
  72. package/dist/node_modules/prosemirror-model/dist/index.js.map +1 -1
  73. package/dist/node_modules/prosemirror-state/dist/index.js +1 -1
  74. package/dist/node_modules/prosemirror-state/dist/index.js.map +1 -1
  75. package/dist/stats.html +1 -1
  76. package/dist/types/lib/shared/ui/formElements/controlled/autocomplete/index.d.ts +1 -1
  77. package/dist/types/lib/shared/ui/formElements/controlled/dayPickerControl/dayPickerControl.d.ts +5 -0
  78. package/dist/types/lib/shared/ui/formElements/controlled/dayPickerControl/single.d.ts +5 -0
  79. package/dist/types/lib/shared/ui/formElements/uncontrolled/checkbox/Checkbox.d.ts +9 -0
  80. package/dist/types/lib/shared/ui/formElements/uncontrolled/combobox/combobox.d.ts +10 -2
  81. package/dist/types/lib/shared/ui/formElements/uncontrolled/index.d.ts +7 -0
  82. package/dist/types/lib/shared/ui/formElements/uncontrolled/input/Input.d.ts +9 -2
  83. package/dist/types/lib/shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.d.ts +9 -0
  84. package/dist/types/lib/shared/ui/formElements/uncontrolled/maskInput/MaskInput.d.ts +1 -0
  85. package/dist/types/lib/shared/ui/formElements/uncontrolled/radio/RadioGroup.d.ts +9 -0
  86. package/dist/types/lib/shared/ui/formElements/uncontrolled/slider/SliderBase.d.ts +1 -1
  87. package/dist/types/lib/shared/ui/formElements/uncontrolled/switch/Switch.d.ts +3 -0
  88. package/dist/types/lib/shared/ui/formElements/uncontrolled/textarea/Textarea.d.ts +9 -1
  89. package/dist/types/lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.d.ts +5 -0
  90. package/dist/types/lib/widgets/authProvider/model/types.d.ts +1 -4
  91. package/dist/types/lib/widgets/authProvider/ui/Esia.d.ts +1 -1
  92. package/dist/types/lib/widgets/authProvider/ui/MobileId.d.ts +1 -1
  93. package/dist/types/lib/widgets/authProvider/ui/ui/Links.d.ts +2 -2
  94. package/dist/types/lib/widgets/dynamicForm/DynamicForm.d.ts +2 -1
  95. package/dist/types/lib/widgets/model/helpers.d.ts +1 -1
  96. package/package.json +1 -1
  97. package/dist/lib/shared/ui/formElements/controlled/autocomplete/Autocomplete.js.map +0 -1
  98. /package/dist/types/lib/shared/ui/formElements/controlled/autocomplete/{Autocomplete.d.ts → AutocompleteControl.d.ts} +0 -0
@@ -1,2 +1,2 @@
1
- import{jsxs as f,jsx as m}from"react/jsx-runtime";import*as l from"react";import{forwardRef as L}from"react";import{NumericFormat as O}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as e}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as P}from"../Slider.js";import{useSliderMarks as q}from"./hooks/useSliderMarks.js";import{cn as i}from"../../../../../../utils/cn.js";import{mergeRefs as z}from"../../../../../../utils/mergeRefs.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as A}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../../../../../src/configs/api.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const ko=L(({classes:d,invalid:n,externalHandlers:o,disabled:g,value:t,onChange:p,suffix:u,label:b,marks:h,attachmentProps:N,additionalSuffix:y,componentType:w,...I},R)=>{const S=l.useId(),a=l.useRef(null),{sliderMin:s,sliderMax:c,handleChangeSlider:k}=q({marks:h,onChange:p,value:t}),{root:C,slider:B,textLeft:M,textRight:j,inputRoot:v,textContainer:F,input:$,field:G}=d||{};return f("div",{"aria-label":w,className:i("flex w-full flex-col gap-1",C),children:[f("div",{className:i("relative w-full select-none",G),children:[m(A,{label:b,value:t,attachmentProps:{...N},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...v},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,onBlur:r=>{o!=null&&o.onBlur&&(o==null||o.onBlur(r))},renderValues:()=>m(O,{id:S,readOnly:!0,"aria-invalid":n?"true":"false",value:t,disabled:g,suffix:` ${e(u,t)} ${y??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:z(a,R),onValueChange:({floatValue:r})=>{r&&(p&&p(r),o!=null&&o.onInputChange&&o.onInputChange(r))},"data-test-id":"slider",className:i("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",$),...I})}),m(P,{classes:{...B},marks:h,step:null,value:t??0,disabled:g,min:Number(s),max:Number(c),onChange:k})]}),f("div",{className:i("flex justify-between",F),children:[s&&m("span",{className:i("desk-body-regular-m text-color-tetriary",M),children:e(u,s,!1)}),c&&m("span",{className:i("desk-body-regular-m text-color-tetriary",j),children:e(u,c,!1)})]})]})});export{ko as SliderMarks};
1
+ import{jsxs as e,jsx as m}from"react/jsx-runtime";import*as d from"react";import{forwardRef as q}from"react";import{NumericFormat as z}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as g}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as A}from"../Slider.js";import{useSliderMarks as D}from"./hooks/useSliderMarks.js";import{cn as i}from"../../../../../../utils/cn.js";import{mergeRefs as E}from"../../../../../../utils/mergeRefs.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as J}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../../../../../src/configs/api.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const Bo=q(({classes:n,invalid:b,externalHandlers:o,disabled:l,value:t,onChange:p,suffix:u,label:N,marks:h,attachmentProps:I,additionalSuffix:w,componentType:R,dataLayers:c,...S},k)=>{const y=d.useId(),C=d.useRef(null),{sliderMin:f,sliderMax:s,handleChangeSlider:B}=D({marks:h,onChange:p,value:t}),{root:M,slider:j,textLeft:v,textRight:F,inputRoot:$,textContainer:G,input:O,field:P}=n||{};return e("div",{"aria-label":R,className:i("flex w-full flex-col gap-1",M),children:[e("div",{className:i("relative w-full select-none",P),children:[m(J,{label:N,value:t,attachmentProps:{...I},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...$},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,onBlur:r=>{o!=null&&o.onBlur&&(o==null||o.onBlur(r))},renderValues:()=>m(z,{id:y,readOnly:!0,"aria-invalid":b?"true":"false",value:t,disabled:l,suffix:` ${g(u,t)} ${w??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:E(C,k),onValueChange:({floatValue:r})=>{r&&(p&&p(r),o!=null&&o.onInputChange&&o.onInputChange(r))},"data-test-id":"slider",className:i("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",O),"data-layer-id":c==null?void 0:c.targetId,...S})}),m(A,{classes:{...j},marks:h,step:null,value:t??0,disabled:l,min:Number(f),max:Number(s),onChange:B})]}),e("div",{className:i("flex justify-between",G),children:[f&&m("span",{className:i("desk-body-regular-m text-color-tetriary",v),children:g(u,f,!1)}),s&&m("span",{className:i("desk-body-regular-m text-color-tetriary",F),children:g(u,s,!1)})]})]})});export{Bo as SliderMarks};
2
2
  //# sourceMappingURL=SliderMarks.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderMarks.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { type SliderMarksProps } from '../../model'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { SliderInner } from '../Slider'\nimport { useSliderMarks } from './hooks'\nimport { InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nexport const SliderMarks = forwardRef<HTMLInputElement, SliderMarksProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n suffix,\n label,\n marks,\n attachmentProps,\n additionalSuffix,\n componentType,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const { sliderMin, sliderMax, handleChangeSlider } = useSliderMarks({\n marks,\n onChange,\n value\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n onBlur={(e) => {\n if (externalHandlers?.onBlur) {\n externalHandlers?.onBlur(e)\n }\n }}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n input\n )}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n marks={marks}\n step={null}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {sliderMin && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, sliderMin, false)}\n </span>\n )}\n {sliderMax && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, sliderMax, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["SliderMarks","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","suffix","label","marks","attachmentProps","additionalSuffix","componentType","props","ref","inputId","React","inputRef","sliderMin","sliderMax","handleChangeSlider","useSliderMarks","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","jsx","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"s0DAUO,MAAMA,GAAcC,EACzB,CACE,CACE,QAAAC,EACA,QAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,MAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAAC,EACA,MAAAC,EACA,gBAAAC,EACA,iBAAAC,EACA,cAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,MAAMC,EAAUC,EAAM,MAAA,EAEhBC,EAAWD,EAAM,OAAyB,IAAI,EAE9C,CAAE,UAAAE,EAAW,UAAAC,EAAW,mBAAAC,CAAA,EAAuBC,EAAe,CAClE,MAAAZ,EACA,SAAAH,EACA,MAAAD,CAAA,CACD,EAEK,CAAE,KAAAiB,EAAM,OAAAC,EAAQ,SAAAC,EAAU,UAAAC,EAAW,UAAAC,EAAW,cAAAC,EAAe,MAAAC,EAAO,MAAAC,CAAA,EAAU5B,GAAW,CAAA,EACjG,OACE6B,EAAC,OAAI,aAAYlB,EAAe,UAAWmB,EAAG,6BAA8BT,CAAI,EAC9E,SAAA,CAAAQ,EAAC,MAAA,CAAI,UAAWC,EAAG,8BAA+BF,CAAK,EACrD,SAAA,CAAAG,EAACC,EAAA,CACC,MAAAzB,EACA,MAAAH,EACA,gBAAiB,CACf,GAAGK,CAAA,EAEL,QAAS,CACP,UAAW,qFACX,GAAGgB,CAAA,EAEL,QAASvB,GAAA,YAAAA,EAAkB,QAC3B,QAASA,GAAA,YAAAA,EAAkB,OAC3B,OAAS+B,GAAM,CACT/B,GAAA,MAAAA,EAAkB,SACpBA,GAAA,MAAAA,EAAkB,OAAO+B,GAE7B,EACA,aAAc,IACZF,EAACG,EAAA,CACC,GAAIpB,EACJ,SAAQ,GACR,eAAcb,EAAU,OAAS,QACjC,MAAAG,EACA,SAAAD,EACA,OAAQ,IAAIgC,EAAqB7B,EAAQF,CAAK,CAAC,IAAIM,GAAoB,EAAE,GACzE,oBAAoB,WACpB,kBAAmB,IACnB,cAAe,GACf,YAAa0B,EAAUpB,EAAUH,CAAG,EACpC,cAAe,CAAC,CAAE,WAAAwB,KAAiB,CAC7BA,IACEhC,KAAmBgC,CAAU,EAC7BnC,GAAA,MAAAA,EAAkB,eACpBA,EAAiB,cAAcmC,CAAU,EAG/C,EACA,eAAa,SACb,UAAWP,EACT,yGACAH,CAAA,EAED,GAAGf,CAAA,CAAA,CACN,CAAA,EAGJmB,EAACO,EAAA,CACC,QAAS,CAAE,GAAGhB,CAAA,EACd,MAAAd,EACA,KAAM,KACN,MAAOJ,GAAS,EAChB,SAAAD,EACA,IAAK,OAAOc,CAAS,EACrB,IAAK,OAAOC,CAAS,EACrB,SAAUC,CAAA,CAAA,CACZ,EACF,IACC,MAAA,CAAI,UAAWW,EAAG,uBAAwBJ,CAAa,EACrD,SAAA,CAAAT,GACCc,EAAC,OAAA,CAAK,UAAWD,EAAG,0CAA2CP,CAAQ,EACpE,SAAAY,EAAqB7B,EAAQW,EAAW,EAAK,CAAA,CAChD,EAEDC,GACCa,EAAC,OAAA,CAAK,UAAWD,EAAG,0CAA2CN,CAAS,EACrE,SAAAW,EAAqB7B,EAAQY,EAAW,EAAK,CAAA,CAChD,CAAA,CAAA,CAEJ,CAAA,EACF,CAEJ,CACF"}
1
+ {"version":3,"file":"SliderMarks.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderMarks/SliderMarks.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { type SliderMarksProps } from '../../model'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { SliderInner } from '../Slider'\nimport { useSliderMarks } from './hooks'\nimport { InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nexport const SliderMarks = forwardRef<HTMLInputElement, SliderMarksProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n suffix,\n label,\n marks,\n attachmentProps,\n additionalSuffix,\n componentType,\n dataLayers,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const { sliderMin, sliderMax, handleChangeSlider } = useSliderMarks({\n marks,\n onChange,\n value\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n onBlur={(e) => {\n if (externalHandlers?.onBlur) {\n externalHandlers?.onBlur(e)\n }\n }}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n input\n )}\n data-layer-id={dataLayers?.targetId}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n marks={marks}\n step={null}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {sliderMin && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, sliderMin, false)}\n </span>\n )}\n {sliderMax && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, sliderMax, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["SliderMarks","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","suffix","label","marks","attachmentProps","additionalSuffix","componentType","dataLayers","props","ref","inputId","React","inputRef","sliderMin","sliderMax","handleChangeSlider","useSliderMarks","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","jsx","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"s0DAUO,MAAMA,GAAcC,EACzB,CACE,CACE,QAAAC,EACA,QAAAC,EACA,iBAAAC,EACA,SAAAC,EACA,MAAAC,EACA,SAAAC,EACA,OAAAC,EACA,MAAAC,EACA,MAAAC,EACA,gBAAAC,EACA,iBAAAC,EACA,cAAAC,EACA,WAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,MAAMC,EAAUC,EAAM,MAAA,EAEhBC,EAAWD,EAAM,OAAyB,IAAI,EAE9C,CAAE,UAAAE,EAAW,UAAAC,EAAW,mBAAAC,CAAA,EAAuBC,EAAe,CAClE,MAAAb,EACA,SAAAH,EACA,MAAAD,CAAA,CACD,EAEK,CAAE,KAAAkB,EAAM,OAAAC,EAAQ,SAAAC,EAAU,UAAAC,EAAW,UAAAC,EAAW,cAAAC,EAAe,MAAAC,EAAO,MAAAC,CAAA,EAAU7B,GAAW,CAAA,EACjG,OACE8B,EAAC,OAAI,aAAYnB,EAAe,UAAWoB,EAAG,6BAA8BT,CAAI,EAC9E,SAAA,CAAAQ,EAAC,MAAA,CAAI,UAAWC,EAAG,8BAA+BF,CAAK,EACrD,SAAA,CAAAG,EAACC,EAAA,CACC,MAAA1B,EACA,MAAAH,EACA,gBAAiB,CACf,GAAGK,CAAA,EAEL,QAAS,CACP,UAAW,qFACX,GAAGiB,CAAA,EAEL,QAASxB,GAAA,YAAAA,EAAkB,QAC3B,QAASA,GAAA,YAAAA,EAAkB,OAC3B,OAASgC,GAAM,CACThC,GAAA,MAAAA,EAAkB,SACpBA,GAAA,MAAAA,EAAkB,OAAOgC,GAE7B,EACA,aAAc,IACZF,EAACG,EAAA,CACC,GAAIpB,EACJ,SAAQ,GACR,eAAcd,EAAU,OAAS,QACjC,MAAAG,EACA,SAAAD,EACA,OAAQ,IAAIiC,EAAqB9B,EAAQF,CAAK,CAAC,IAAIM,GAAoB,EAAE,GACzE,oBAAoB,WACpB,kBAAmB,IACnB,cAAe,GACf,YAAa2B,EAAUpB,EAAUH,CAAG,EACpC,cAAe,CAAC,CAAE,WAAAwB,KAAiB,CAC7BA,IACEjC,KAAmBiC,CAAU,EAC7BpC,GAAA,MAAAA,EAAkB,eACpBA,EAAiB,cAAcoC,CAAU,EAG/C,EACA,eAAa,SACb,UAAWP,EACT,yGACAH,CAAA,EAEF,gBAAehB,GAAA,YAAAA,EAAY,SAC1B,GAAGC,CAAA,CAAA,CACN,CAAA,EAGJmB,EAACO,EAAA,CACC,QAAS,CAAE,GAAGhB,CAAA,EACd,MAAAf,EACA,KAAM,KACN,MAAOJ,GAAS,EAChB,SAAAD,EACA,IAAK,OAAOe,CAAS,EACrB,IAAK,OAAOC,CAAS,EACrB,SAAUC,CAAA,CAAA,CACZ,EACF,IACC,MAAA,CAAI,UAAWW,EAAG,uBAAwBJ,CAAa,EACrD,SAAA,CAAAT,GACCc,EAAC,OAAA,CAAK,UAAWD,EAAG,0CAA2CP,CAAQ,EACpE,SAAAY,EAAqB9B,EAAQY,EAAW,EAAK,CAAA,CAChD,EAEDC,GACCa,EAAC,OAAA,CAAK,UAAWD,EAAG,0CAA2CN,CAAS,EACrE,SAAAW,EAAqB9B,EAAQa,EAAW,EAAK,CAAA,CAChD,CAAA,CAAA,CAEJ,CAAA,EACF,CAEJ,CACF"}
@@ -1,2 +1,2 @@
1
- import{jsxs as d,jsx as c}from"react/jsx-runtime";import*as I from"react";import{forwardRef as J}from"react";import{NumericFormat as K}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as g}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as Q}from"../Slider.js";import{useSliderStep as T}from"./hooks/useSliderStep.js";import{cn as m}from"../../../../../../utils/cn.js";import{mergeRefs as U}from"../../../../../../utils/mergeRefs.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as V}from"../../../../../icon/Icon.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as W}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../../../../../src/configs/api.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const X=c(V,{name:"general/edit",className:"size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800"}),Go=J(({classes:N,invalid:S,externalHandlers:o,disabled:b,value:u,onChange:p,min:l,max:n,suffix:s,label:k,step:w,attachmentProps:t,additionalSuffix:C,readOnly:e,componentType:h,...r},y)=>{const B=I.useId(),f=I.useRef(null),R=()=>{var i;(i=f==null?void 0:f.current)==null||i.focus()},{sliderStep:v,sliderMin:j,sliderMax:F,handleChangeSlider:M}=T({min:l,max:n,step:w,onChange:p,value:u}),{root:$,slider:z,textLeft:G,textRight:L,inputRoot:q,textContainer:A,input:D,field:E}=N||{};return d("div",{"aria-label":h,className:m("flex w-full flex-col gap-1",$),children:[d("div",{className:m("relative w-full select-none",{"select-none":e},E),children:[c(W,{label:k,value:u,attachmentProps:{onClickIcon:e?void 0:(t==null?void 0:t.onClickIcon)||R,icon:e?void 0:(t==null?void 0:t.icon)||X,...t},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...q},onBlur:i=>{r!=null&&r.onBlur&&(r==null||r.onBlur(i)),o!=null&&o.onBlur&&o.onBlur(i)},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,renderValues:()=>c(K,{id:B,readOnly:e,"aria-invalid":S?"true":"false",value:u,disabled:b,suffix:` ${g(s,u)} ${C??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:U(f,y),onValueChange:({floatValue:i})=>{i&&(p&&p(i),o!=null&&o.onInputChange&&o.onInputChange(i))},"data-test-id":"slider",className:m("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",D),...r})}),c(Q,{classes:{...z},step:v,value:u??0,disabled:b,min:Number(j),max:Number(F),onChange:M})]}),d("div",{className:m("flex justify-between",A),children:[l&&c("span",{className:m("desk-body-regular-m text-color-tetriary",G),children:g(s,l,!1)}),n&&c("span",{className:m("desk-body-regular-m text-color-tetriary",L),children:g(s,n,!1)})]})]})});export{Go as SliderStep};
1
+ import{jsxs as d,jsx as c}from"react/jsx-runtime";import*as N from"react";import{forwardRef as Q}from"react";import{NumericFormat as T}from"../../../../../../../../node_modules/react-number-format/dist/react-number-format.es.js";import{getInputSliderSuffix as b}from"../../model/helpers/getInputSliderSuffix.js";import{SliderInner as U}from"../Slider.js";import{useSliderStep as V}from"./hooks/useSliderStep.js";import{cn as m}from"../../../../../../utils/cn.js";import{mergeRefs as W}from"../../../../../../utils/mergeRefs.js";import"../../../../../button/Button.js";import"../../../../../buttonIcon/ButtonIcon.js";import"../../../../../calendar/Calendar.js";import"../../../../../calendar/model/utils.js";import"../../../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../../../modal/ui/IframeModalContent.js";import"../../../../../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as X}from"../../../../../icon/Icon.js";import"../../../../../table/ui/primitives/Primitives.js";import"../../../../../carousel/ui/CarouselContent.js";import"../../../../../slot/Slot.js";import"../../../autocomplete/Autocomplete.js";import"../../../checkbox/Checkbox.js";import"../../../combobox/combobox.js";import"../../../dayPicker/DayPicker.js";import{InputBase as Y}from"../../../input/Input.js";import"../../../inputOtp/InputOtpBase.js";import"../../../maskInput/MaskInput.js";import"../../../radio/RadioGroup.js";import"../../../radio/ui/RadioItem.js";import"../../SliderBase.js";import"../../../switch/Switch.js";import"../../../textarea/Textarea.js";import"../../../uploader/UploaderBase.js";import"../../../inputCurrency/InputCurrency.js";import"../../../../../../../../src/configs/api.js";import"../../../../controlled/editor/ui/Editor.js";import"../../../../controlled/input/MaskInputControl.js";import"../../../../../dropdownList/ui/dropdownItem/DropdownItem.js";const Z=c(X,{name:"general/edit",className:"size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800"}),qo=Q(({classes:S,invalid:k,externalHandlers:o,disabled:I,value:u,onChange:l,min:p,max:n,suffix:s,label:w,step:C,attachmentProps:t,additionalSuffix:h,readOnly:e,componentType:B,dataLayers:g,...r},R)=>{const v=N.useId(),f=N.useRef(null),y=()=>{var i;(i=f==null?void 0:f.current)==null||i.focus()},{sliderStep:j,sliderMin:F,sliderMax:M,handleChangeSlider:$}=V({min:p,max:n,step:C,onChange:l,value:u}),{root:z,slider:G,textLeft:q,textRight:A,inputRoot:D,textContainer:E,input:J,field:K}=S||{};return d("div",{"aria-label":B,className:m("flex w-full flex-col gap-1",z),children:[d("div",{className:m("relative w-full select-none",{"select-none":e},K),children:[c(Y,{label:w,value:u,attachmentProps:{onClickIcon:e?void 0:(t==null?void 0:t.onClickIcon)||y,icon:e?void 0:(t==null?void 0:t.icon)||Z,...t},classes:{container:"border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800",...D},onBlur:i=>{r!=null&&r.onBlur&&(r==null||r.onBlur(i)),o!=null&&o.onBlur&&o.onBlur(i)},onClick:o==null?void 0:o.onClick,onFocus:o==null?void 0:o.onBlur,renderValues:()=>c(T,{id:v,readOnly:e,"aria-invalid":k?"true":"false",value:u,disabled:I,suffix:` ${b(s,u)} ${h??""}`,thousandsGroupStyle:"thousand",thousandSeparator:" ",allowNegative:!1,getInputRef:W(f,R),onValueChange:({floatValue:i})=>{i&&(l&&l(i),o!=null&&o.onInputChange&&o.onInputChange(i))},"data-test-id":"slider",className:m("group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all",J),"data-layer-id":g==null?void 0:g.targetId,...r})}),c(U,{classes:{...G},step:j,value:u??0,disabled:I,min:Number(F),max:Number(M),onChange:$})]}),d("div",{className:m("flex justify-between",E),children:[p&&c("span",{className:m("desk-body-regular-m text-color-tetriary",q),children:b(s,p,!1)}),n&&c("span",{className:m("desk-body-regular-m text-color-tetriary",A),children:b(s,n,!1)})]})]})});export{qo as SliderStep};
2
2
  //# sourceMappingURL=SliderStep.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SliderStep.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { type SliderStepProps } from '../../model'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { SliderInner } from '../Slider'\nimport { useSliderStep } from './hooks'\nimport { Icon, InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nconst defaultIcon = (\n <Icon\n name='general/edit'\n className='size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800'\n />\n)\n\nexport const SliderStep = forwardRef<HTMLInputElement, SliderStepProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n min,\n max,\n suffix,\n label,\n step,\n attachmentProps,\n additionalSuffix,\n readOnly,\n componentType,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const handleIconClick = () => {\n inputRef?.current?.focus()\n }\n\n const { sliderStep, sliderMin, sliderMax, handleChangeSlider } = useSliderStep({\n min,\n max,\n step,\n onChange,\n value\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', { ['select-none']: readOnly }, field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n onClickIcon: readOnly ? undefined : attachmentProps?.onClickIcon || handleIconClick,\n icon: readOnly ? undefined : attachmentProps?.icon || defaultIcon,\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onBlur={(e) => {\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly={readOnly}\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n\n input\n )}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n step={sliderStep}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {min && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, min, false)}\n </span>\n )}\n {max && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, max, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["defaultIcon","jsx","Icon","SliderStep","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","min","max","suffix","label","step","attachmentProps","additionalSuffix","readOnly","componentType","props","ref","inputId","React","inputRef","handleIconClick","_a","sliderStep","sliderMin","sliderMax","handleChangeSlider","useSliderStep","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"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"}
1
+ {"version":3,"file":"SliderStep.js","sources":["../../../../../../../../../lib/shared/ui/formElements/uncontrolled/slider/ui/sliderStep/SliderStep.tsx"],"sourcesContent":["import * as React from 'react'\nimport { forwardRef } from 'react'\nimport { NumericFormat } from 'react-number-format'\nimport { type SliderStepProps } from '../../model'\nimport { getInputSliderSuffix } from '../../model/helpers'\nimport { SliderInner } from '../Slider'\nimport { useSliderStep } from './hooks'\nimport { Icon, InputBase } from '$/shared/ui'\nimport { cn, mergeRefs } from '$/shared/utils'\n\nconst defaultIcon = (\n <Icon\n name='general/edit'\n className='size-[19px] text-icon-blue-grey-600 transition-[color] group-focus-within/icon:text-icon-blue-grey-800'\n />\n)\n\nexport const SliderStep = forwardRef<HTMLInputElement, SliderStepProps>(\n (\n {\n classes,\n invalid,\n externalHandlers,\n disabled,\n value,\n onChange,\n min,\n max,\n suffix,\n label,\n step,\n attachmentProps,\n additionalSuffix,\n readOnly,\n componentType,\n dataLayers,\n ...props\n },\n ref\n ) => {\n const inputId = React.useId()\n\n const inputRef = React.useRef<HTMLInputElement>(null)\n\n const handleIconClick = () => {\n inputRef?.current?.focus()\n }\n\n const { sliderStep, sliderMin, sliderMax, handleChangeSlider } = useSliderStep({\n min,\n max,\n step,\n onChange,\n value\n })\n\n const { root, slider, textLeft, textRight, inputRoot, textContainer, input, field } = classes || {}\n\n return (\n <div aria-label={componentType} className={cn('flex w-full flex-col gap-1', root)}>\n <div className={cn('relative w-full select-none', { ['select-none']: readOnly }, field)}>\n <InputBase\n label={label}\n value={value}\n attachmentProps={{\n onClickIcon: readOnly ? undefined : attachmentProps?.onClickIcon || handleIconClick,\n icon: readOnly ? undefined : attachmentProps?.icon || defaultIcon,\n ...attachmentProps\n }}\n classes={{\n container: 'border-[1px] bg-color-white border-blue-grey-500 focus-within:border-blue-grey-800',\n ...inputRoot\n }}\n onBlur={(e) => {\n if (props?.onBlur) props?.onBlur(e)\n if (externalHandlers?.onBlur) externalHandlers.onBlur(e)\n }}\n onClick={externalHandlers?.onClick}\n onFocus={externalHandlers?.onBlur}\n renderValues={() => (\n <NumericFormat\n id={inputId}\n readOnly={readOnly}\n aria-invalid={invalid ? 'true' : 'false'}\n value={value}\n disabled={disabled}\n suffix={` ${getInputSliderSuffix(suffix, value)} ${additionalSuffix ?? ''}`}\n thousandsGroupStyle='thousand'\n thousandSeparator={' '}\n allowNegative={false}\n getInputRef={mergeRefs(inputRef, ref)}\n onValueChange={({ floatValue }) => {\n if (floatValue) {\n if (onChange) onChange(floatValue)\n if (externalHandlers?.onInputChange) {\n externalHandlers.onInputChange(floatValue)\n }\n }\n }}\n data-test-id='slider'\n className={cn(\n 'group/slider desk-title-bold-s w-full bg-color-transparent text-color-dark outline-none transition-all',\n\n input\n )}\n data-layer-id={dataLayers?.targetId}\n {...props}\n />\n )}\n />\n <SliderInner\n classes={{ ...slider }}\n step={sliderStep}\n value={value ?? 0}\n disabled={disabled}\n min={Number(sliderMin)}\n max={Number(sliderMax)}\n onChange={handleChangeSlider}\n />\n </div>\n <div className={cn('flex justify-between', textContainer)}>\n {min && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textLeft)}>\n {getInputSliderSuffix(suffix, min, false)}\n </span>\n )}\n {max && (\n <span className={cn('desk-body-regular-m text-color-tetriary', textRight)}>\n {getInputSliderSuffix(suffix, max, false)}\n </span>\n )}\n </div>\n </div>\n )\n }\n)\n"],"names":["defaultIcon","jsx","Icon","SliderStep","forwardRef","classes","invalid","externalHandlers","disabled","value","onChange","min","max","suffix","label","step","attachmentProps","additionalSuffix","readOnly","componentType","dataLayers","props","ref","inputId","React","inputRef","handleIconClick","_a","sliderStep","sliderMin","sliderMax","handleChangeSlider","useSliderStep","root","slider","textLeft","textRight","inputRoot","textContainer","input","field","jsxs","cn","InputBase","e","NumericFormat","getInputSliderSuffix","mergeRefs","floatValue","SliderInner"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import{jsx as n}from"react/jsx-runtime";import{forwardRef as m}from"react";import{Root as f,Thumb as p}from"../../../../../../node_modules/@radix-ui/react-switch/dist/index.js";import{cn as i}from"../../../../utils/cn.js";const b=m(({classes:o,className:c,disabled:r,invalid:l,externalHandlers:d,onCheckedChange:t,...u},h)=>{const{onChange:e,...g}=d||{};return n(f,{...u,...g,ref:h,onCheckedChange:a=>{t&&t(a),e&&e(a)},disabled:r,"aria-invalid":l,className:i("h-6 w-10 rounded-full bg-color-blue-grey-300 p-[2px] outline-2","outline-offset-4 outline-transparent focus:outline-primary-focus","group transition-all hover:bg-color-blue-grey-500","data-[state=checked]:bg-color-primary-default","hover:data-[state=checked]:bg-color-primary-hover",{"data-[state=checked]:!bg-color-primary-disabled data-[state=unchecked]:!bg-color-blue-grey-200":r},c,o==null?void 0:o.root),children:n(p,{className:i("block size-5 rounded-full bg-color-white","duration-100 will-change-transform","data-[state=checked]:translate-x-4","group-active:w-full data-[state=checked]:group-active:translate-x-0",o==null?void 0:o.thumb)})})});b.displayName="SwitchBase";export{b as SwitchBase};
1
+ import{jsx as i}from"react/jsx-runtime";import{forwardRef as f}from"react";import{Root as p,Thumb as b}from"../../../../../../node_modules/@radix-ui/react-switch/dist/index.js";import{cn as l}from"../../../../utils/cn.js";const k=f(({classes:o,className:c,disabled:r,invalid:d,externalHandlers:u,onCheckedChange:e,dataLayers:t,...h},g)=>{const{onChange:a,...m}=u||{};return i(p,{...h,...m,ref:g,onCheckedChange:n=>{e&&e(n),a&&a(n)},disabled:r,"aria-invalid":d,"data-layer-id":t==null?void 0:t.targetId,className:l("h-6 w-10 rounded-full bg-color-blue-grey-300 p-[2px] outline-2","outline-offset-4 outline-transparent focus:outline-primary-focus","group transition-all hover:bg-color-blue-grey-500","data-[state=checked]:bg-color-primary-default","hover:data-[state=checked]:bg-color-primary-hover",{"data-[state=checked]:!bg-color-primary-disabled data-[state=unchecked]:!bg-color-blue-grey-200":r},c,o==null?void 0:o.root),children:i(b,{className:l("block size-5 rounded-full bg-color-white","duration-100 will-change-transform","data-[state=checked]:translate-x-4","group-active:w-full data-[state=checked]:group-active:translate-x-0",o==null?void 0:o.thumb)})})});k.displayName="SwitchBase";export{k as SwitchBase};
2
2
  //# sourceMappingURL=Switch.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Switch.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/switch/Switch.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Root, type SwitchProps, Thumb } from '@radix-ui/react-switch'\nimport { cn } from '$/shared/utils'\n\ntype SwitchBaseClasses = {\n root?: string\n thumb?: string\n}\n\nexport type ExternalHandlers = {\n onChange?: (value: boolean) => void\n onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void\n}\n\nexport type SwitchBaseProps = SwitchProps & {\n classes?: SwitchBaseClasses\n externalHandlers?: ExternalHandlers\n invalid?: boolean\n}\n\nexport const SwitchBase = forwardRef<HTMLButtonElement, SwitchBaseProps>(\n ({ classes, className, disabled, invalid, externalHandlers, onCheckedChange, ...props }, ref) => {\n const { onChange: externalOnChange, ...restHandlers } = externalHandlers || {}\n\n const onChange = (value: boolean) => {\n if (onCheckedChange) onCheckedChange(value)\n if (externalOnChange) externalOnChange(value)\n }\n\n return (\n <Root\n {...props}\n {...restHandlers}\n ref={ref}\n onCheckedChange={onChange}\n disabled={disabled}\n aria-invalid={invalid}\n className={cn(\n 'h-6 w-10 rounded-full bg-color-blue-grey-300 p-[2px] outline-2',\n 'outline-offset-4 outline-transparent focus:outline-primary-focus',\n 'group transition-all hover:bg-color-blue-grey-500',\n 'data-[state=checked]:bg-color-primary-default',\n 'hover:data-[state=checked]:bg-color-primary-hover',\n { 'data-[state=checked]:!bg-color-primary-disabled data-[state=unchecked]:!bg-color-blue-grey-200': disabled },\n className,\n classes?.root\n )}\n >\n <Thumb\n className={cn(\n 'block size-5 rounded-full bg-color-white',\n 'duration-100 will-change-transform',\n 'data-[state=checked]:translate-x-4',\n 'group-active:w-full data-[state=checked]:group-active:translate-x-0',\n classes?.thumb\n )}\n />\n </Root>\n )\n }\n)\nSwitchBase.displayName = 'SwitchBase'\n"],"names":["SwitchBase","forwardRef","classes","className","disabled","invalid","externalHandlers","onCheckedChange","props","ref","externalOnChange","restHandlers","jsx","Root","value","cn","Thumb"],"mappings":"8NAsBO,MAAMA,EAAaC,EACxB,CAAC,CAAE,QAAAC,EAAS,UAAAC,EAAW,SAAAC,EAAU,QAAAC,EAAS,iBAAAC,EAAkB,gBAAAC,EAAiB,GAAGC,CAAA,EAASC,IAAQ,CAC/F,KAAM,CAAE,SAAUC,EAAkB,GAAGC,CAAA,EAAiBL,GAAoB,CAAA,EAO5E,OACEM,EAACC,EAAA,CACE,GAAGL,EACH,GAAGG,EACJ,IAAAF,EACA,gBAVcK,GAAmB,CAC/BP,KAAiCO,CAAK,EACtCJ,KAAmCI,CAAK,CAC9C,EAQI,SAAAV,EACA,eAAcC,EACd,UAAWU,EACT,iEACA,mEACA,oDACA,gDACA,oDACA,CAAE,iGAAkGX,CAAA,EACpGD,EACAD,GAAA,YAAAA,EAAS,IAAA,EAGX,SAAAU,EAACI,EAAA,CACC,UAAWD,EACT,2CACA,qCACA,qCACA,sEACAb,GAAA,YAAAA,EAAS,KAAA,CACX,CAAA,CACF,CAAA,CAGN,CACF,EACAF,EAAW,YAAc"}
1
+ {"version":3,"file":"Switch.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/switch/Switch.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { Root, type SwitchProps, Thumb } from '@radix-ui/react-switch'\nimport { type DataLayers } from '../../../../types'\nimport { cn } from '$/shared/utils'\n\ntype SwitchBaseClasses = {\n root?: string\n thumb?: string\n}\n\nexport type ExternalHandlers = {\n onChange?: (value: boolean) => void\n onClick?: (event: React.MouseEvent<HTMLButtonElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLButtonElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLButtonElement>) => void\n}\n\nexport type SwitchBaseProps = SwitchProps & {\n classes?: SwitchBaseClasses\n externalHandlers?: ExternalHandlers\n invalid?: boolean\n dataLayers?: DataLayers\n}\n\nexport const SwitchBase = forwardRef<HTMLButtonElement, SwitchBaseProps>(\n ({ classes, className, disabled, invalid, externalHandlers, onCheckedChange, dataLayers, ...props }, ref) => {\n const { onChange: externalOnChange, ...restHandlers } = externalHandlers || {}\n\n const onChange = (value: boolean) => {\n if (onCheckedChange) onCheckedChange(value)\n if (externalOnChange) externalOnChange(value)\n }\n\n return (\n <Root\n {...props}\n {...restHandlers}\n ref={ref}\n onCheckedChange={onChange}\n disabled={disabled}\n aria-invalid={invalid}\n data-layer-id={dataLayers?.targetId}\n className={cn(\n 'h-6 w-10 rounded-full bg-color-blue-grey-300 p-[2px] outline-2',\n 'outline-offset-4 outline-transparent focus:outline-primary-focus',\n 'group transition-all hover:bg-color-blue-grey-500',\n 'data-[state=checked]:bg-color-primary-default',\n 'hover:data-[state=checked]:bg-color-primary-hover',\n { 'data-[state=checked]:!bg-color-primary-disabled data-[state=unchecked]:!bg-color-blue-grey-200': disabled },\n className,\n classes?.root\n )}\n >\n <Thumb\n className={cn(\n 'block size-5 rounded-full bg-color-white',\n 'duration-100 will-change-transform',\n 'data-[state=checked]:translate-x-4',\n 'group-active:w-full data-[state=checked]:group-active:translate-x-0',\n classes?.thumb\n )}\n />\n </Root>\n )\n }\n)\nSwitchBase.displayName = 'SwitchBase'\n"],"names":["SwitchBase","forwardRef","classes","className","disabled","invalid","externalHandlers","onCheckedChange","dataLayers","props","ref","externalOnChange","restHandlers","jsx","Root","value","cn","Thumb"],"mappings":"8NAwBO,MAAMA,EAAaC,EACxB,CAAC,CAAE,QAAAC,EAAS,UAAAC,EAAW,SAAAC,EAAU,QAAAC,EAAS,iBAAAC,EAAkB,gBAAAC,EAAiB,WAAAC,EAAY,GAAGC,CAAA,EAASC,IAAQ,CAC3G,KAAM,CAAE,SAAUC,EAAkB,GAAGC,CAAA,EAAiBN,GAAoB,CAAA,EAO5E,OACEO,EAACC,EAAA,CACE,GAAGL,EACH,GAAGG,EACJ,IAAAF,EACA,gBAVcK,GAAmB,CAC/BR,KAAiCQ,CAAK,EACtCJ,KAAmCI,CAAK,CAC9C,EAQI,SAAAX,EACA,eAAcC,EACd,gBAAeG,GAAA,YAAAA,EAAY,SAC3B,UAAWQ,EACT,iEACA,mEACA,oDACA,gDACA,oDACA,CAAE,iGAAkGZ,CAAA,EACpGD,EACAD,GAAA,YAAAA,EAAS,IAAA,EAGX,SAAAW,EAACI,EAAA,CACC,UAAWD,EACT,2CACA,qCACA,qCACA,sEACAd,GAAA,YAAAA,EAAS,KAAA,CACX,CAAA,CACF,CAAA,CAGN,CACF,EACAF,EAAW,YAAc"}
@@ -1,2 +1,2 @@
1
- import{jsxs as u,jsx as o}from"react/jsx-runtime";import{forwardRef as w,useId as v}from"react";import{FieldAttachment as N}from"../../ui/fieldAttachment/FieldAttachment.js";import{cn as t}from"../../../../utils/cn.js";const k=w(({label:x,value:b,invalid:f,disabled:r,classes:e,attachmentProps:l,rows:m=4,externalHandlers:p,onChange:a,...c},g)=>{const n=v(),{onChange:d,...h}=p||{},y=i=>{a&&a(i),d&&d(i)};return u("div",{className:t("relative flex w-full items-start gap-x-4 rounded-sm bg-color-blue-grey-100 pb-4 pl-4 pr-1 pt-2","[&_label]:focus-within:text-color-tetriary","hover:bg-color-blue-grey-200","border-[1px] border-transparent focus-within:border-blue-grey-800",{"border-secondary-default":f},e==null?void 0:e.container),"data-test-id":"textarea-root",children:[u("div",{className:"flex w-full flex-col",children:[o("label",{htmlFor:n,className:t("desk-body-regular-s pointer-events-none","text-color-blue-grey-600 duration-100",{"text-color-disabled":r},e==null?void 0:e.label),children:x}),o("textarea",{...c,...h,rows:m,disabled:r,value:b??"",ref:g,id:n,onChange:y,className:t("customScrollbar-y peer desk-body-regular-l w-full overflow-y-auto bg-color-transparent","resize-none text-color-dark outline-none placeholder:text-color-blue-grey-600",{"placeholder:text-color-disabled":r},e==null?void 0:e.textarea)})]}),l&&o(N,{...l})]})});k.displayName="TextareaBase";export{k as TextareaBase};
1
+ import{jsxs as x,jsx as t}from"react/jsx-runtime";import{forwardRef as v,useId as N}from"react";import{FieldAttachment as k}from"../../ui/fieldAttachment/FieldAttachment.js";import{cn as l}from"../../../../utils/cn.js";const C=v(({label:b,value:f,invalid:m,disabled:r,classes:e,attachmentProps:n,rows:p=4,externalHandlers:c,onChange:a,dataLayers:o,...g},h)=>{const d=N(),{onChange:i,...y}=c||{},w=u=>{a&&a(u),i&&i(u)};return x("div",{className:l("relative flex w-full items-start gap-x-4 rounded-sm bg-color-blue-grey-100 pb-4 pl-4 pr-1 pt-2","[&_label]:focus-within:text-color-tetriary","hover:bg-color-blue-grey-200","border-[1px] border-transparent focus-within:border-blue-grey-800",{"border-secondary-default":m},e==null?void 0:e.container),"data-test-id":"textarea-root",children:[x("div",{className:"flex w-full flex-col",children:[t("label",{htmlFor:d,className:l("desk-body-regular-s pointer-events-none","text-color-blue-grey-600 duration-100",{"text-color-disabled":r},e==null?void 0:e.label),children:b}),t("textarea",{...g,...y,rows:p,disabled:r,value:f??"",ref:h,id:d,onChange:w,className:l("customScrollbar-y peer desk-body-regular-l w-full overflow-y-auto bg-color-transparent","resize-none text-color-dark outline-none placeholder:text-color-blue-grey-600",{"placeholder:text-color-disabled":r},e==null?void 0:e.textarea),"data-layer-id":o==null?void 0:o.targetId})]}),n&&t(k,{...n})]})});C.displayName="TextareaBase";export{C as TextareaBase};
2
2
  //# sourceMappingURL=Textarea.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/textarea/Textarea.tsx"],"sourcesContent":["import { forwardRef, useId } from 'react'\nimport { FieldAttachment } from '../../ui'\nimport { type DeepPartial } from '$/shared/types'\nimport { cn } from '$/shared/utils'\n\ntype TextareaBaseClasses = {\n container?: string\n textarea?: string\n label?: string\n}\n\ntype FieldAttachmentProps = React.ComponentPropsWithoutRef<typeof FieldAttachment>\n\ntype ExternalHandlers = {\n onChange?: (event: React.ChangeEvent<HTMLTextAreaElement>) => void\n onClick?: (event: React.MouseEvent<HTMLTextAreaElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLTextAreaElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLTextAreaElement>) => void\n}\n\nexport type TextareaBaseProps = Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, 'size' | 'className'> & {\n /**\n * Дополнительные стили внутренних компонентов\n */\n classes?: TextareaBaseClasses\n /**\n * Отображаемый placeholder\n */\n label: string\n /**\n * Отображение не валидного поля\n */\n invalid?: boolean\n /**\n * Свойства дополнительной иконки\n */\n attachmentProps?: DeepPartial<FieldAttachmentProps>\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const TextareaBase = forwardRef<HTMLTextAreaElement, TextareaBaseProps>(\n ({ label, value, invalid, disabled, classes, attachmentProps, rows = 4, externalHandlers, onChange, ...props }, ref) => {\n const id = useId()\n\n const { onChange: externalOnChange, ...restHandlers } = externalHandlers || {}\n\n const onValueChange = (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (onChange) onChange(event)\n if (externalOnChange) externalOnChange(event)\n }\n\n return (\n <div\n className={cn(\n 'relative flex w-full items-start gap-x-4 rounded-sm bg-color-blue-grey-100 pb-4 pl-4 pr-1 pt-2',\n '[&_label]:focus-within:text-color-tetriary',\n 'hover:bg-color-blue-grey-200',\n 'border-[1px] border-transparent focus-within:border-blue-grey-800',\n {\n 'border-secondary-default': invalid\n },\n classes?.container\n )}\n data-test-id='textarea-root'\n >\n <div className='flex w-full flex-col'>\n <label\n htmlFor={id}\n className={cn(\n 'desk-body-regular-s pointer-events-none',\n 'text-color-blue-grey-600 duration-100',\n {\n 'text-color-disabled': disabled\n },\n classes?.label\n )}\n >\n {label}\n </label>\n <textarea\n {...props}\n {...restHandlers}\n rows={rows}\n disabled={disabled}\n value={value ?? ''}\n ref={ref}\n id={id}\n onChange={onValueChange}\n className={cn(\n 'customScrollbar-y peer desk-body-regular-l w-full overflow-y-auto bg-color-transparent',\n 'resize-none text-color-dark outline-none placeholder:text-color-blue-grey-600',\n {\n 'placeholder:text-color-disabled': disabled\n },\n classes?.textarea\n )}\n />\n </div>\n {attachmentProps && <FieldAttachment {...attachmentProps} />}\n </div>\n )\n }\n)\nTextareaBase.displayName = 'TextareaBase'\n"],"names":["TextareaBase","forwardRef","label","value","invalid","disabled","classes","attachmentProps","rows","externalHandlers","onChange","props","ref","id","useId","externalOnChange","restHandlers","onValueChange","event","jsxs","cn","jsx","FieldAttachment"],"mappings":"2NA2CO,MAAMA,EAAeC,EAC1B,CAAC,CAAE,MAAAC,EAAO,MAAAC,EAAO,QAAAC,EAAS,SAAAC,EAAU,QAAAC,EAAS,gBAAAC,EAAiB,KAAAC,EAAO,EAAG,iBAAAC,EAAkB,SAAAC,EAAU,GAAGC,CAAA,EAASC,IAAQ,CACtH,MAAMC,EAAKC,EAAA,EAEL,CAAE,SAAUC,EAAkB,GAAGC,CAAA,EAAiBP,GAAoB,CAAA,EAEtEQ,EAAiBC,GAAkD,CACnER,KAAmBQ,CAAK,EACxBH,KAAmCG,CAAK,CAC9C,EAEA,OACEC,EAAC,MAAA,CACC,UAAWC,EACT,iGACA,6CACA,+BACA,oEACA,CACE,2BAA4BhB,CAAA,EAE9BE,GAAA,YAAAA,EAAS,SAAA,EAEX,eAAa,gBAEb,SAAA,CAAAa,EAAC,MAAA,CAAI,UAAU,uBACb,SAAA,CAAAE,EAAC,QAAA,CACC,QAASR,EACT,UAAWO,EACT,0CACA,wCACA,CACE,sBAAuBf,CAAA,EAEzBC,GAAA,YAAAA,EAAS,KAAA,EAGV,SAAAJ,CAAA,CAAA,EAEHmB,EAAC,WAAA,CACE,GAAGV,EACH,GAAGK,EACJ,KAAAR,EACA,SAAAH,EACA,MAAOF,GAAS,GAChB,IAAAS,EACA,GAAAC,EACA,SAAUI,EACV,UAAWG,EACT,yFACA,gFACA,CACE,kCAAmCf,CAAA,EAErCC,GAAA,YAAAA,EAAS,QAAA,CACX,CAAA,CACF,EACF,EACCC,GAAmBc,EAACC,EAAA,CAAiB,GAAGf,CAAA,CAAiB,CAAA,CAAA,CAAA,CAGhE,CACF,EACAP,EAAa,YAAc"}
1
+ {"version":3,"file":"Textarea.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/textarea/Textarea.tsx"],"sourcesContent":["import { forwardRef, useId } from 'react'\nimport { FieldAttachment } from '../../ui'\nimport { type DataLayers, type DeepPartial } from '$/shared/types'\nimport { cn } from '$/shared/utils'\n\ntype TextareaBaseClasses = {\n container?: string\n textarea?: string\n label?: string\n}\n\ntype FieldAttachmentProps = React.ComponentPropsWithoutRef<typeof FieldAttachment>\n\ntype ExternalHandlers = {\n onChange?: (event: React.ChangeEvent<HTMLTextAreaElement>) => void\n onClick?: (event: React.MouseEvent<HTMLTextAreaElement>) => void\n onFocus?: (event: React.FocusEvent<HTMLTextAreaElement>) => void\n onBlur?: (event: React.FocusEvent<HTMLTextAreaElement>) => void\n}\n\nexport type TextareaBaseProps = Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, 'size' | 'className'> & {\n /**\n * Дополнительные стили внутренних компонентов\n */\n classes?: TextareaBaseClasses\n /**\n * Отображаемый placeholder\n */\n label: string\n /**\n * Отображение не валидного поля\n */\n invalid?: boolean\n /**\n * Свойства дополнительной иконки\n */\n attachmentProps?: DeepPartial<FieldAttachmentProps>\n /**\n * Дополнительные хендлеры\n */\n externalHandlers?: ExternalHandlers\n /**\n * Даталееры\n */\n dataLayers?: DataLayers\n}\n\nexport const TextareaBase = forwardRef<HTMLTextAreaElement, TextareaBaseProps>(\n (\n { label, value, invalid, disabled, classes, attachmentProps, rows = 4, externalHandlers, onChange, dataLayers, ...props },\n ref\n ) => {\n const id = useId()\n\n const { onChange: externalOnChange, ...restHandlers } = externalHandlers || {}\n\n const onValueChange = (event: React.ChangeEvent<HTMLTextAreaElement>) => {\n if (onChange) onChange(event)\n if (externalOnChange) externalOnChange(event)\n }\n\n return (\n <div\n className={cn(\n 'relative flex w-full items-start gap-x-4 rounded-sm bg-color-blue-grey-100 pb-4 pl-4 pr-1 pt-2',\n '[&_label]:focus-within:text-color-tetriary',\n 'hover:bg-color-blue-grey-200',\n 'border-[1px] border-transparent focus-within:border-blue-grey-800',\n {\n 'border-secondary-default': invalid\n },\n classes?.container\n )}\n data-test-id='textarea-root'\n >\n <div className='flex w-full flex-col'>\n <label\n htmlFor={id}\n className={cn(\n 'desk-body-regular-s pointer-events-none',\n 'text-color-blue-grey-600 duration-100',\n {\n 'text-color-disabled': disabled\n },\n classes?.label\n )}\n >\n {label}\n </label>\n <textarea\n {...props}\n {...restHandlers}\n rows={rows}\n disabled={disabled}\n value={value ?? ''}\n ref={ref}\n id={id}\n onChange={onValueChange}\n className={cn(\n 'customScrollbar-y peer desk-body-regular-l w-full overflow-y-auto bg-color-transparent',\n 'resize-none text-color-dark outline-none placeholder:text-color-blue-grey-600',\n {\n 'placeholder:text-color-disabled': disabled\n },\n classes?.textarea\n )}\n data-layer-id={dataLayers?.targetId}\n />\n </div>\n {attachmentProps && <FieldAttachment {...attachmentProps} />}\n </div>\n )\n }\n)\nTextareaBase.displayName = 'TextareaBase'\n"],"names":["TextareaBase","forwardRef","label","value","invalid","disabled","classes","attachmentProps","rows","externalHandlers","onChange","dataLayers","props","ref","id","useId","externalOnChange","restHandlers","onValueChange","event","jsxs","cn","jsx","FieldAttachment"],"mappings":"2NA+CO,MAAMA,EAAeC,EAC1B,CACE,CAAE,MAAAC,EAAO,MAAAC,EAAO,QAAAC,EAAS,SAAAC,EAAU,QAAAC,EAAS,gBAAAC,EAAiB,KAAAC,EAAO,EAAG,iBAAAC,EAAkB,SAAAC,EAAU,WAAAC,EAAY,GAAGC,CAAA,EAClHC,IACG,CACH,MAAMC,EAAKC,EAAA,EAEL,CAAE,SAAUC,EAAkB,GAAGC,CAAA,EAAiBR,GAAoB,CAAA,EAEtES,EAAiBC,GAAkD,CACnET,KAAmBS,CAAK,EACxBH,KAAmCG,CAAK,CAC9C,EAEA,OACEC,EAAC,MAAA,CACC,UAAWC,EACT,iGACA,6CACA,+BACA,oEACA,CACE,2BAA4BjB,CAAA,EAE9BE,GAAA,YAAAA,EAAS,SAAA,EAEX,eAAa,gBAEb,SAAA,CAAAc,EAAC,MAAA,CAAI,UAAU,uBACb,SAAA,CAAAE,EAAC,QAAA,CACC,QAASR,EACT,UAAWO,EACT,0CACA,wCACA,CACE,sBAAuBhB,CAAA,EAEzBC,GAAA,YAAAA,EAAS,KAAA,EAGV,SAAAJ,CAAA,CAAA,EAEHoB,EAAC,WAAA,CACE,GAAGV,EACH,GAAGK,EACJ,KAAAT,EACA,SAAAH,EACA,MAAOF,GAAS,GAChB,IAAAU,EACA,GAAAC,EACA,SAAUI,EACV,UAAWG,EACT,yFACA,gFACA,CACE,kCAAmChB,CAAA,EAErCC,GAAA,YAAAA,EAAS,QAAA,EAEX,gBAAeK,GAAA,YAAAA,EAAY,QAAA,CAAA,CAC7B,EACF,EACCJ,GAAmBe,EAACC,EAAA,CAAiB,GAAGhB,CAAA,CAAiB,CAAA,CAAA,CAAA,CAGhE,CACF,EACAP,EAAa,YAAc"}
@@ -1,2 +1,2 @@
1
- import{jsxs as x,Fragment as h,jsx as o}from"react/jsx-runtime";import{forwardRef as j}from"react";import{defaultDropzoneOptions as v}from"./model/helpers.js";import{useUploader as w}from"./model/hooks/useUploader.js";import{UploaderFiles as z}from"./ui/UploaderFiles.js";import{cn as S}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../autocomplete/Autocomplete.js";import"../checkbox/Checkbox.js";import"../combobox/combobox.js";import"../dayPicker/DayPicker.js";import"../input/Input.js";import"../inputOtp/InputOtpBase.js";import"../maskInput/MaskInput.js";import"../radio/RadioGroup.js";import"../radio/ui/RadioItem.js";import"../slider/SliderBase.js";import"../switch/Switch.js";import"../textarea/Textarea.js";import"../inputCurrency/InputCurrency.js";import"../../../../../../src/configs/api.js";import"../../controlled/editor/ui/Editor.js";import"../../controlled/input/MaskInputControl.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{UploaderInput as b}from"./ui/UploaderInput.js";const so=j(({classes:i,dropzoneOptions:m=v,name:p,value:r,disabled:e,invalid:s,onChange:l,externalHandlers:t,...f},a)=>{const{filesStatus:n,removeFile:c,dropzoneState:d}=w({controlledFiles:r,dropzoneOptions:m,onChange:l,externalHandlers:t}),{root:u,input:F,files:U}=i||{};return x(h,{children:[o("div",{className:S("relative mb-3 w-[476px]",u),children:o(b,{...f,ref:a,name:p,classes:F,disabled:e,invalid:s,dropzoneState:d,externalHandlers:t})}),o(z,{files:r,removeFile:c,classes:U,filesStatus:n})]})});export{so as UploaderBase};
1
+ import{jsxs as g,Fragment as h,jsx as r}from"react/jsx-runtime";import{forwardRef as j}from"react";import{defaultDropzoneOptions as v}from"./model/helpers.js";import{useUploader as w}from"./model/hooks/useUploader.js";import{UploaderFiles as z}from"./ui/UploaderFiles.js";import{cn as I}from"../../../../utils/cn.js";import"../../../button/Button.js";import"../../../buttonIcon/ButtonIcon.js";import"../../../calendar/Calendar.js";import"../../../calendar/model/utils.js";import"../../../accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../modal/ui/IframeModalContent.js";import"../../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../table/ui/primitives/Primitives.js";import"../../../carousel/ui/CarouselContent.js";import"../../../slot/Slot.js";import"../autocomplete/Autocomplete.js";import"../checkbox/Checkbox.js";import"../combobox/combobox.js";import"../dayPicker/DayPicker.js";import"../input/Input.js";import"../inputOtp/InputOtpBase.js";import"../maskInput/MaskInput.js";import"../radio/RadioGroup.js";import"../radio/ui/RadioItem.js";import"../slider/SliderBase.js";import"../switch/Switch.js";import"../textarea/Textarea.js";import"../inputCurrency/InputCurrency.js";import"../../../../../../src/configs/api.js";import"../../controlled/editor/ui/Editor.js";import"../../controlled/input/MaskInputControl.js";import"../../../dropdownList/ui/dropdownItem/DropdownItem.js";import{UploaderInput as S}from"./ui/UploaderInput.js";const lo=j(({classes:m,dropzoneOptions:p=v,name:e,value:t,disabled:s,invalid:l,onChange:f,externalHandlers:i,dataLayers:o,...n},c)=>{const{filesStatus:d,removeFile:u,dropzoneState:a}=w({controlledFiles:t,dropzoneOptions:p,onChange:f,externalHandlers:i}),{root:F,input:U,files:x}=m||{};return g(h,{children:[r("div",{className:I("relative mb-3 w-[476px]",F),children:r(S,{...n,ref:c,name:e,classes:U,disabled:s,invalid:l,dropzoneState:a,externalHandlers:i,"data-layer-id":o==null?void 0:o.targetId})}),r(z,{files:t,removeFile:u,classes:x,filesStatus:d})]})});export{lo as UploaderBase};
2
2
  //# sourceMappingURL=UploaderBase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"UploaderBase.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes } from 'react'\nimport { type DropzoneOptions } from 'react-dropzone'\nimport { defaultDropzoneOptions } from './model'\nimport { useUploader } from './model/hooks/useUploader'\nimport { UploaderFiles, type UploaderFilesClasses, UploaderInput, type UploaderInputClasses } from './ui'\nimport { cn } from '$/shared/utils'\n\ntype UploaderBaseClasses = {\n root?: string\n input?: UploaderInputClasses\n files?: UploaderFilesClasses\n}\n\nexport type ExternalHandlers = {\n onChange?: (files: File[]) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n}\n\nexport interface UploaderBaseProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'placeholder' | 'value' | 'onChange'> {\n /**\n * Опции uploader-а, в нем можно валидировать файлы, указывать максимум и минимум для файлов\n * Подробнее можно узнать в типе DropzoneOptions\n */\n dropzoneOptions?: DropzoneOptions\n /**\n * Объект классов которые можно переопределить\n */\n classes?: UploaderBaseClasses\n /**\n * Доп текст под инпутом\n */\n helperText?: string\n /**\n * Сеттер значение\n * @param file - файлы\n */\n onChange?: (file: File[]) => void\n /**\n * Валидное ли значение\n */\n invalid?: boolean\n /**\n * Значение\n */\n value?: File[]\n /**\n * Внешние объект handlers\n */\n externalHandlers?: ExternalHandlers\n}\n\nexport const UploaderBase = forwardRef<HTMLInputElement, UploaderBaseProps>(\n (\n {\n classes,\n dropzoneOptions = defaultDropzoneOptions,\n name,\n value,\n disabled,\n invalid,\n onChange,\n externalHandlers,\n ...props\n }: UploaderBaseProps,\n ref\n ) => {\n const { filesStatus, removeFile, dropzoneState } = useUploader({\n controlledFiles: value,\n dropzoneOptions,\n onChange,\n externalHandlers\n })\n\n const { root, input, files } = classes || {}\n\n return (\n <>\n <div className={cn('relative mb-3 w-[476px]', root)}>\n <UploaderInput\n {...props}\n ref={ref}\n name={name}\n classes={input}\n disabled={disabled}\n invalid={invalid}\n dropzoneState={dropzoneState}\n externalHandlers={externalHandlers}\n />\n </div>\n <UploaderFiles files={value} removeFile={removeFile} classes={files} filesStatus={filesStatus} />\n </>\n )\n }\n)\n"],"names":["UploaderBase","forwardRef","classes","dropzoneOptions","defaultDropzoneOptions","name","value","disabled","invalid","onChange","externalHandlers","props","ref","filesStatus","removeFile","dropzoneState","useUploader","root","input","files","jsxs","Fragment","jsx","cn","UploaderInput","UploaderFiles"],"mappings":"i9CAoDO,MAAMA,GAAeC,EAC1B,CACE,CACE,QAAAC,EACA,gBAAAC,EAAkBC,EAClB,KAAAC,EACA,MAAAC,EACA,SAAAC,EACA,QAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,KAAM,CAAE,YAAAC,EAAa,WAAAC,EAAY,cAAAC,CAAA,EAAkBC,EAAY,CAC7D,gBAAiBV,EACjB,gBAAAH,EACA,SAAAM,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,KAAAO,EAAM,MAAAC,EAAO,MAAAC,CAAA,EAAUjB,GAAW,CAAA,EAE1C,OACEkB,EAAAC,EAAA,CACE,SAAA,CAAAC,EAAC,MAAA,CAAI,UAAWC,EAAG,0BAA2BN,CAAI,EAChD,SAAAK,EAACE,EAAA,CACE,GAAGb,EACJ,IAAAC,EACA,KAAAP,EACA,QAASa,EACT,SAAAX,EACA,QAAAC,EACA,cAAAO,EACA,iBAAAL,CAAA,CAAA,EAEJ,IACCe,EAAA,CAAc,MAAOnB,EAAO,WAAAQ,EAAwB,QAASK,EAAO,YAAAN,CAAA,CAA0B,CAAA,EACjG,CAEJ,CACF"}
1
+ {"version":3,"file":"UploaderBase.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/uploader/UploaderBase.tsx"],"sourcesContent":["import { forwardRef, type InputHTMLAttributes } from 'react'\nimport { type DropzoneOptions } from 'react-dropzone'\nimport { type DataLayers } from '../../../../types'\nimport { defaultDropzoneOptions } from './model'\nimport { useUploader } from './model/hooks/useUploader'\nimport { UploaderFiles, type UploaderFilesClasses, UploaderInput, type UploaderInputClasses } from './ui'\nimport { cn } from '$/shared/utils'\n\ntype UploaderBaseClasses = {\n root?: string\n input?: UploaderInputClasses\n files?: UploaderFilesClasses\n}\n\nexport type ExternalHandlers = {\n onChange?: (files: File[]) => void\n onClick?: (event: React.MouseEvent<HTMLInputElement>) => void\n}\n\nexport interface UploaderBaseProps\n extends Omit<InputHTMLAttributes<HTMLInputElement>, 'size' | 'placeholder' | 'value' | 'onChange'> {\n /**\n * Опции uploader-а, в нем можно валидировать файлы, указывать максимум и минимум для файлов\n * Подробнее можно узнать в типе DropzoneOptions\n */\n dropzoneOptions?: DropzoneOptions\n /**\n * Объект классов которые можно переопределить\n */\n classes?: UploaderBaseClasses\n /**\n * Доп текст под инпутом\n */\n helperText?: string\n /**\n * Сеттер значение\n * @param file - файлы\n */\n onChange?: (file: File[]) => void\n /**\n * Валидное ли значение\n */\n invalid?: boolean\n /**\n * Значение\n */\n value?: File[]\n /**\n * Внешние объект handlers\n */\n externalHandlers?: ExternalHandlers\n /**\n * Даталееры\n */\n dataLayers?: DataLayers\n}\n\nexport const UploaderBase = forwardRef<HTMLInputElement, UploaderBaseProps>(\n (\n {\n classes,\n dropzoneOptions = defaultDropzoneOptions,\n name,\n value,\n disabled,\n invalid,\n onChange,\n externalHandlers,\n dataLayers,\n ...props\n }: UploaderBaseProps,\n ref\n ) => {\n const { filesStatus, removeFile, dropzoneState } = useUploader({\n controlledFiles: value,\n dropzoneOptions,\n onChange,\n externalHandlers\n })\n\n const { root, input, files } = classes || {}\n\n return (\n <>\n <div className={cn('relative mb-3 w-[476px]', root)}>\n <UploaderInput\n {...props}\n ref={ref}\n name={name}\n classes={input}\n disabled={disabled}\n invalid={invalid}\n dropzoneState={dropzoneState}\n externalHandlers={externalHandlers}\n data-layer-id={dataLayers?.targetId}\n />\n </div>\n <UploaderFiles files={value} removeFile={removeFile} classes={files} filesStatus={filesStatus} />\n </>\n )\n }\n)\n"],"names":["UploaderBase","forwardRef","classes","dropzoneOptions","defaultDropzoneOptions","name","value","disabled","invalid","onChange","externalHandlers","dataLayers","props","ref","filesStatus","removeFile","dropzoneState","useUploader","root","input","files","jsxs","Fragment","jsx","cn","UploaderInput","UploaderFiles"],"mappings":"i9CAyDO,MAAMA,GAAeC,EAC1B,CACE,CACE,QAAAC,EACA,gBAAAC,EAAkBC,EAClB,KAAAC,EACA,MAAAC,EACA,SAAAC,EACA,QAAAC,EACA,SAAAC,EACA,iBAAAC,EACA,WAAAC,EACA,GAAGC,CAAA,EAELC,IACG,CACH,KAAM,CAAE,YAAAC,EAAa,WAAAC,EAAY,cAAAC,CAAA,EAAkBC,EAAY,CAC7D,gBAAiBX,EACjB,gBAAAH,EACA,SAAAM,EACA,iBAAAC,CAAA,CACD,EAEK,CAAE,KAAAQ,EAAM,MAAAC,EAAO,MAAAC,CAAA,EAAUlB,GAAW,CAAA,EAE1C,OACEmB,EAAAC,EAAA,CACE,SAAA,CAAAC,EAAC,MAAA,CAAI,UAAWC,EAAG,0BAA2BN,CAAI,EAChD,SAAAK,EAACE,EAAA,CACE,GAAGb,EACJ,IAAAC,EACA,KAAAR,EACA,QAASc,EACT,SAAAZ,EACA,QAAAC,EACA,cAAAQ,EACA,iBAAAN,EACA,gBAAeC,GAAA,YAAAA,EAAY,QAAA,CAAA,EAE/B,IACCe,EAAA,CAAc,MAAOpB,EAAO,WAAAS,EAAwB,QAASK,EAAO,YAAAN,CAAA,CAA0B,CAAA,EACjG,CAEJ,CACF"}
@@ -1,2 +1,2 @@
1
- import{ResponsiveContainer as t}from"./responsiveContainer/ResponsiveContainer.js";import{Button as a}from"./button/Button.js";import{buttonPrimitiveIntent as p,buttonPrimitiveSize as f,buttonPrimitiveTextFormat as x,buttonPrimitiveType as n}from"./button/model/helpers.js";import{ButtonIcon as l}from"./buttonIcon/ButtonIcon.js";import{PhoneView as s}from"./phoneView/PhoneView.js";import{Badge as u}from"./badge/Badge.js";import{Loader as T}from"./loader/Loader.js";import{Skeleton as I}from"./skeleton/Skeleton.js";import{FloatButton as P}from"./floatButton/FloatButton.js";import{Calendar as D}from"./calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as y,defaultClassNames as v,formatDateToLocaleString as k,formatDateToMonthString as R,formatDateToYearString as h}from"./calendar/model/utils.js";import{Accordion as A}from"./accordion/Accordion.js";import{Hint as E}from"./hint/Hint.js";import{Popover as F}from"./popover/Popover.js";import{ProgressBar as M}from"./progressBar/ProgressBar.js";import{TabsSwitcher as O}from"./tabSwitcher/TabsSwitcher.js";import{Modal as z}from"./modal/Modal.js";import{Notification as _}from"./notification/Notification.js";import{Table as Y,TableBody as j,TableCaption as q,TableCell as J,TableFooter as Q,TableHead as W,TableHeader as X,TableRow as Z}from"./table/ui/primitives/Primitives.js";import{DataTableColumnHeader as oo}from"./table/ui/dataTableColumnHeader/DataTableColumnHeader.js";import{EditableCell as to}from"./table/ui/editableCell/EditableCell.js";import{DataTable as ao}from"./table/Table.js";import{TableUtils as po}from"./table/model/TableUtils.js";import{TablePagination as xo}from"./table/TablePagination.js";import{Pagination as io}from"./pagination/Pagination.js";import{usePagination as so}from"./pagination/hooks/usePagination.js";import{CarouselBase as uo}from"./carousel/CarouselBase.js";import{ArrowNavigationButton as To}from"./carousel/ui/ArrowNavigationButton.js";import{CarouselSlide as Io}from"./carousel/ui/CarouselSlide.js";import{DotsNavigations as Po}from"./carousel/ui/DotsNavigations.js";import{SlideProductCard as Do}from"./carousel/ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as yo}from"./carousel/ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as ko}from"./carousel/ui/slideVariants/SlideFullScreen.js";import{CarouselContent as ho}from"./carousel/ui/CarouselContent.js";import{Dialog as Ao}from"./dialog/Dialog.js";import{NotificationProvider as Eo}from"./providers/NotificationProvider.js";import{Heading as Fo}from"./heading/Heading.js";import{Icon as Mo}from"./icon/Icon.js";import{allowedIcons as Oo}from"./icon/allowedIcons.js";import{brandLogos as zo}from"./brandLogos/BrandLogos.js";import{CustomLink as _o}from"./customLink/CustomLink.js";import{linkPrimitiveIconIntent as Yo,linkPrimitiveIntent as jo,linkPrimitiveSize as qo}from"./customLink/model/helpers.js";import{KeyboardShortcuts as Qo}from"./keyboardShortcuts/KeyboardShortcuts.js";import{Slot as Xo}from"./slot/Slot.js";import{AutocompleteBase as $o}from"./formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as rr}from"./formElements/uncontrolled/checkbox/Checkbox.js";import{Combobox as er}from"./formElements/uncontrolled/combobox/combobox.js";import{DayPickerBase as mr}from"./formElements/uncontrolled/dayPicker/DayPicker.js";import{InputBase as fr}from"./formElements/uncontrolled/input/Input.js";import{InputOtpBase as nr}from"./formElements/uncontrolled/inputOtp/InputOtpBase.js";import{MaskInput as lr}from"./formElements/uncontrolled/maskInput/MaskInput.js";import{RadioGroupBase as sr}from"./formElements/uncontrolled/radio/RadioGroup.js";import{RadioItem as ur}from"./formElements/uncontrolled/radio/ui/RadioItem.js";import{RadioItemCard as Tr}from"./formElements/uncontrolled/radio/ui/RadioItemCard.js";import{RadioItemTab as Ir}from"./formElements/uncontrolled/radio/ui/RadioItemTab.js";import{SliderBase as Pr}from"./formElements/uncontrolled/slider/SliderBase.js";import{SwitchBase as Dr}from"./formElements/uncontrolled/switch/Switch.js";import{TextareaBase as yr}from"./formElements/uncontrolled/textarea/Textarea.js";import{UploaderBase as kr}from"./formElements/uncontrolled/uploader/UploaderBase.js";import{bytesToMegabytes as hr,megabytesToBytes as wr}from"./formElements/uncontrolled/uploader/model/helpers.js";import{InputCurrencyBase as Lr}from"./formElements/uncontrolled/inputCurrency/InputCurrency.js";import{Uncontrolled as Nr}from"./formElements/uncontrolled/index.js";import{AutocompleteControl as Hr}from"./formElements/controlled/autocomplete/Autocomplete.js";import{CheckboxControl as Gr}from"./formElements/controlled/checkbox/CheckboxControl.js";import{DadataOrganization as Ur}from"./formElements/controlled/dadata/party/DadataOrganization.js";import{DadataAddress as Vr}from"./formElements/controlled/dadata/address/DadataAddress.js";import{DadataAuto as Kr}from"./formElements/controlled/dadata/auto/DadataAuto.js";import{DadataCountry as jr}from"./formElements/controlled/dadata/country/DadataCountry.js";import{DadataFio as Jr}from"./formElements/controlled/dadata/fio/DadataFio.js";import{DayPickerControl as Wr}from"./formElements/controlled/dayPickerControl/dayPickerControl.js";import{EditorControl as Zr}from"./formElements/controlled/editor/EditorControl.js";import{InputControl as ot}from"./formElements/controlled/input/InputControl.js";import{MaskInputControl as tt}from"./formElements/controlled/input/MaskInputControl.js";import{InputCurrencyControl as at}from"./formElements/controlled/inputCurrency/InputCurrencyControl.js";import{InputOtpControl as pt}from"./formElements/controlled/inputOtp/InputOtpControl.js";import{RadioGroupControl as xt}from"./formElements/controlled/radio/RadioGroupControl.js";import{RadioGroupTabControl as it}from"./formElements/controlled/radio/RadioGroupTabControl.js";import{RadioGroupCardControl as dt}from"./formElements/controlled/radio/RadioGroupCardControl.js";import{SliderControl as Ct}from"./formElements/controlled/slider/SliderControl.js";import{SwitchControl as bt}from"./formElements/controlled/switch/SwitchControl.js";import{TextareaControl as ct}from"./formElements/controlled/textarea/TextareaControl.js";import{UploaderControl as Bt}from"./formElements/controlled/uploader/UploaderControl.js";import{ComboboxControl as St}from"./formElements/controlled/combobox/ComboboxControl.js";import{Controlled as gt}from"./formElements/controlled/index.js";import{Chips as vt}from"./chips/Chips.js";import{DropdownItem as Rt}from"./dropdownList/ui/dropdownItem/DropdownItem.js";import{EmptyList as wt}from"./dropdownList/ui/Empty.js";import{DropdownList as Lt}from"./dropdownList/DropdownList.js";import{Portal as Nt}from"./portal/Portal.js";import{Divider as Ht}from"./divider/Divider.js";import{Confirmable as Gt}from"./confirmable/Confirmable.js";export{A as Accordion,To as ArrowNavigationButton,$o as AutocompleteBase,Hr as AutocompleteControl,u as Badge,a as Button,l as ButtonIcon,D as Calendar,uo as CarouselBase,ho as CarouselContent,Io as CarouselSlide,rr as CheckboxBase,Gr as CheckboxControl,vt as Chips,er as Combobox,St as ComboboxControl,Gt as Confirmable,gt as Controlled,_o as CustomLink,y as DATE_VISIBLE_PATTERN,Vr as DadataAddress,Kr as DadataAuto,jr as DadataCountry,Jr as DadataFio,Ur as DadataOrganization,ao as DataTable,oo as DataTableColumnHeader,mr as DayPickerBase,Wr as DayPickerControl,Ao as Dialog,Ht as Divider,Po as DotsNavigations,Rt as DropdownItem,Lt as DropdownList,to as EditableCell,Zr as EditorControl,wt as EmptyList,P as FloatButton,Fo as Heading,E as Hint,Mo as Icon,fr as InputBase,ot as InputControl,Lr as InputCurrencyBase,at as InputCurrencyControl,nr as InputOtpBase,pt as InputOtpControl,Qo as KeyboardShortcuts,T as Loader,lr as MaskInput,tt as MaskInputControl,z as Modal,_ as Notification,Eo as NotificationProvider,io as Pagination,s as PhoneView,F as Popover,Nt as Portal,M as ProgressBar,sr as RadioGroupBase,dt as RadioGroupCardControl,xt as RadioGroupControl,it as RadioGroupTabControl,ur as RadioItem,Tr as RadioItemCard,Ir as RadioItemTab,t as ResponsiveContainer,I as Skeleton,ko as SlideFullScreen,yo as SlideOnlyImage,Do as SlideProductCard,Pr as SliderBase,Ct as SliderControl,Xo as Slot,Dr as SwitchBase,bt as SwitchControl,Y as Table,j as TableBody,q as TableCaption,J as TableCell,Q as TableFooter,W as TableHead,X as TableHeader,xo as TablePagination,Z as TableRow,po as TableUtils,O as TabsSwitcher,yr as TextareaBase,ct as TextareaControl,Nr as Uncontrolled,kr as UploaderBase,Bt as UploaderControl,Oo as allowedIcons,zo as brandLogos,p as buttonPrimitiveIntent,f as buttonPrimitiveSize,x as buttonPrimitiveTextFormat,n as buttonPrimitiveType,hr as bytesToMegabytes,v as defaultClassNames,k as formatDateToLocaleString,R as formatDateToMonthString,h as formatDateToYearString,Yo as linkPrimitiveIconIntent,jo as linkPrimitiveIntent,qo as linkPrimitiveSize,wr as megabytesToBytes,so as usePagination};
1
+ import{ResponsiveContainer as t}from"./responsiveContainer/ResponsiveContainer.js";import{Button as a}from"./button/Button.js";import{buttonPrimitiveIntent as p,buttonPrimitiveSize as f,buttonPrimitiveTextFormat as x,buttonPrimitiveType as n}from"./button/model/helpers.js";import{ButtonIcon as l}from"./buttonIcon/ButtonIcon.js";import{PhoneView as s}from"./phoneView/PhoneView.js";import{Badge as u}from"./badge/Badge.js";import{Loader as T}from"./loader/Loader.js";import{Skeleton as I}from"./skeleton/Skeleton.js";import{FloatButton as P}from"./floatButton/FloatButton.js";import{Calendar as D}from"./calendar/Calendar.js";import{DATE_VISIBLE_PATTERN as y,defaultClassNames as v,formatDateToLocaleString as k,formatDateToMonthString as R,formatDateToYearString as h}from"./calendar/model/utils.js";import{Accordion as A}from"./accordion/Accordion.js";import{Hint as E}from"./hint/Hint.js";import{Popover as F}from"./popover/Popover.js";import{ProgressBar as M}from"./progressBar/ProgressBar.js";import{TabsSwitcher as O}from"./tabSwitcher/TabsSwitcher.js";import{Modal as z}from"./modal/Modal.js";import{Notification as _}from"./notification/Notification.js";import{Table as Y,TableBody as j,TableCaption as q,TableCell as J,TableFooter as Q,TableHead as W,TableHeader as X,TableRow as Z}from"./table/ui/primitives/Primitives.js";import{DataTableColumnHeader as oo}from"./table/ui/dataTableColumnHeader/DataTableColumnHeader.js";import{EditableCell as to}from"./table/ui/editableCell/EditableCell.js";import{DataTable as ao}from"./table/Table.js";import{TableUtils as po}from"./table/model/TableUtils.js";import{TablePagination as xo}from"./table/TablePagination.js";import{Pagination as io}from"./pagination/Pagination.js";import{usePagination as so}from"./pagination/hooks/usePagination.js";import{CarouselBase as uo}from"./carousel/CarouselBase.js";import{ArrowNavigationButton as To}from"./carousel/ui/ArrowNavigationButton.js";import{CarouselSlide as Io}from"./carousel/ui/CarouselSlide.js";import{DotsNavigations as Po}from"./carousel/ui/DotsNavigations.js";import{SlideProductCard as Do}from"./carousel/ui/slideVariants/SlideProductCard.js";import{SlideOnlyImage as yo}from"./carousel/ui/slideVariants/SlideOnlyImage.js";import{SlideFullScreen as ko}from"./carousel/ui/slideVariants/SlideFullScreen.js";import{CarouselContent as ho}from"./carousel/ui/CarouselContent.js";import{Dialog as Ao}from"./dialog/Dialog.js";import{NotificationProvider as Eo}from"./providers/NotificationProvider.js";import{Heading as Fo}from"./heading/Heading.js";import{Icon as Mo}from"./icon/Icon.js";import{allowedIcons as Oo}from"./icon/allowedIcons.js";import{brandLogos as zo}from"./brandLogos/BrandLogos.js";import{CustomLink as _o}from"./customLink/CustomLink.js";import{linkPrimitiveIconIntent as Yo,linkPrimitiveIntent as jo,linkPrimitiveSize as qo}from"./customLink/model/helpers.js";import{KeyboardShortcuts as Qo}from"./keyboardShortcuts/KeyboardShortcuts.js";import{Slot as Xo}from"./slot/Slot.js";import{AutocompleteBase as $o}from"./formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as rr}from"./formElements/uncontrolled/checkbox/Checkbox.js";import{Combobox as er}from"./formElements/uncontrolled/combobox/combobox.js";import{DayPickerBase as mr}from"./formElements/uncontrolled/dayPicker/DayPicker.js";import{InputBase as fr}from"./formElements/uncontrolled/input/Input.js";import{InputOtpBase as nr}from"./formElements/uncontrolled/inputOtp/InputOtpBase.js";import{MaskInput as lr}from"./formElements/uncontrolled/maskInput/MaskInput.js";import{RadioGroupBase as sr}from"./formElements/uncontrolled/radio/RadioGroup.js";import{RadioItem as ur}from"./formElements/uncontrolled/radio/ui/RadioItem.js";import{RadioItemCard as Tr}from"./formElements/uncontrolled/radio/ui/RadioItemCard.js";import{RadioItemTab as Ir}from"./formElements/uncontrolled/radio/ui/RadioItemTab.js";import{SliderBase as Pr}from"./formElements/uncontrolled/slider/SliderBase.js";import{SwitchBase as Dr}from"./formElements/uncontrolled/switch/Switch.js";import{TextareaBase as yr}from"./formElements/uncontrolled/textarea/Textarea.js";import{UploaderBase as kr}from"./formElements/uncontrolled/uploader/UploaderBase.js";import{bytesToMegabytes as hr,megabytesToBytes as wr}from"./formElements/uncontrolled/uploader/model/helpers.js";import{InputCurrencyBase as Lr}from"./formElements/uncontrolled/inputCurrency/InputCurrency.js";import{Uncontrolled as Nr}from"./formElements/uncontrolled/index.js";import{AutocompleteControl as Hr}from"./formElements/controlled/autocomplete/AutocompleteControl.js";import{CheckboxControl as Gr}from"./formElements/controlled/checkbox/CheckboxControl.js";import{DadataOrganization as Ur}from"./formElements/controlled/dadata/party/DadataOrganization.js";import{DadataAddress as Vr}from"./formElements/controlled/dadata/address/DadataAddress.js";import{DadataAuto as Kr}from"./formElements/controlled/dadata/auto/DadataAuto.js";import{DadataCountry as jr}from"./formElements/controlled/dadata/country/DadataCountry.js";import{DadataFio as Jr}from"./formElements/controlled/dadata/fio/DadataFio.js";import{DayPickerControl as Wr}from"./formElements/controlled/dayPickerControl/dayPickerControl.js";import{EditorControl as Zr}from"./formElements/controlled/editor/EditorControl.js";import{InputControl as ot}from"./formElements/controlled/input/InputControl.js";import{MaskInputControl as tt}from"./formElements/controlled/input/MaskInputControl.js";import{InputCurrencyControl as at}from"./formElements/controlled/inputCurrency/InputCurrencyControl.js";import{InputOtpControl as pt}from"./formElements/controlled/inputOtp/InputOtpControl.js";import{RadioGroupControl as xt}from"./formElements/controlled/radio/RadioGroupControl.js";import{RadioGroupTabControl as it}from"./formElements/controlled/radio/RadioGroupTabControl.js";import{RadioGroupCardControl as dt}from"./formElements/controlled/radio/RadioGroupCardControl.js";import{SliderControl as Ct}from"./formElements/controlled/slider/SliderControl.js";import{SwitchControl as bt}from"./formElements/controlled/switch/SwitchControl.js";import{TextareaControl as ct}from"./formElements/controlled/textarea/TextareaControl.js";import{UploaderControl as Bt}from"./formElements/controlled/uploader/UploaderControl.js";import{ComboboxControl as St}from"./formElements/controlled/combobox/ComboboxControl.js";import{Controlled as gt}from"./formElements/controlled/index.js";import{Chips as vt}from"./chips/Chips.js";import{DropdownItem as Rt}from"./dropdownList/ui/dropdownItem/DropdownItem.js";import{EmptyList as wt}from"./dropdownList/ui/Empty.js";import{DropdownList as Lt}from"./dropdownList/DropdownList.js";import{Portal as Nt}from"./portal/Portal.js";import{Divider as Ht}from"./divider/Divider.js";import{Confirmable as Gt}from"./confirmable/Confirmable.js";export{A as Accordion,To as ArrowNavigationButton,$o as AutocompleteBase,Hr as AutocompleteControl,u as Badge,a as Button,l as ButtonIcon,D as Calendar,uo as CarouselBase,ho as CarouselContent,Io as CarouselSlide,rr as CheckboxBase,Gr as CheckboxControl,vt as Chips,er as Combobox,St as ComboboxControl,Gt as Confirmable,gt as Controlled,_o as CustomLink,y as DATE_VISIBLE_PATTERN,Vr as DadataAddress,Kr as DadataAuto,jr as DadataCountry,Jr as DadataFio,Ur as DadataOrganization,ao as DataTable,oo as DataTableColumnHeader,mr as DayPickerBase,Wr as DayPickerControl,Ao as Dialog,Ht as Divider,Po as DotsNavigations,Rt as DropdownItem,Lt as DropdownList,to as EditableCell,Zr as EditorControl,wt as EmptyList,P as FloatButton,Fo as Heading,E as Hint,Mo as Icon,fr as InputBase,ot as InputControl,Lr as InputCurrencyBase,at as InputCurrencyControl,nr as InputOtpBase,pt as InputOtpControl,Qo as KeyboardShortcuts,T as Loader,lr as MaskInput,tt as MaskInputControl,z as Modal,_ as Notification,Eo as NotificationProvider,io as Pagination,s as PhoneView,F as Popover,Nt as Portal,M as ProgressBar,sr as RadioGroupBase,dt as RadioGroupCardControl,xt as RadioGroupControl,it as RadioGroupTabControl,ur as RadioItem,Tr as RadioItemCard,Ir as RadioItemTab,t as ResponsiveContainer,I as Skeleton,ko as SlideFullScreen,yo as SlideOnlyImage,Do as SlideProductCard,Pr as SliderBase,Ct as SliderControl,Xo as Slot,Dr as SwitchBase,bt as SwitchControl,Y as Table,j as TableBody,q as TableCaption,J as TableCell,Q as TableFooter,W as TableHead,X as TableHeader,xo as TablePagination,Z as TableRow,po as TableUtils,O as TabsSwitcher,yr as TextareaBase,ct as TextareaControl,Nr as Uncontrolled,kr as UploaderBase,Bt as UploaderControl,Oo as allowedIcons,zo as brandLogos,p as buttonPrimitiveIntent,f as buttonPrimitiveSize,x as buttonPrimitiveTextFormat,n as buttonPrimitiveType,hr as bytesToMegabytes,v as defaultClassNames,k as formatDateToLocaleString,R as formatDateToMonthString,h as formatDateToYearString,Yo as linkPrimitiveIconIntent,jo as linkPrimitiveIntent,qo as linkPrimitiveSize,wr as megabytesToBytes,so as usePagination};
2
2
  //# sourceMappingURL=index.js.map
@@ -1,2 +1,2 @@
1
- import{jsx as o,jsxs as p}from"react/jsx-runtime";import{AuthWrapper as g}from"./ui/AuthWrapper.js";import{EsiaLogo as x}from"./ui/EsiaLogo.js";import{Links as u}from"./ui/Links.js";import{useDevice as N}from"../../../shared/hooks/useDevice.js";import"react";import{cn as i}from"../../../shared/utils/cn.js";import"react-hook-form";import"../../../shared/ui/button/Button.js";import"../../../shared/ui/buttonIcon/ButtonIcon.js";import{Badge as j}from"../../../shared/ui/badge/Badge.js";import"../../../shared/ui/calendar/Calendar.js";import"../../../shared/ui/calendar/model/utils.js";import"../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as k}from"../../../shared/ui/icon/Icon.js";import"../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../shared/ui/carousel/ui/CarouselContent.js";import"../../../shared/ui/slot/Slot.js";import"../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const ir=({mainLink:n,subLink:e,isLoading:f,badge:t,loaderProps:d,classes:r,onClick:h})=>{const{isMobile:m}=N();return o(g,{isLoading:f,loaderProps:d,classes:r==null?void 0:r.authWrapper,children:p("div",{className:i("flex flex-1 items-center justify-between gap-1",{"justify-center":!t&&m},r==null?void 0:r.innerWrapper),children:[p("div",{className:i("flex items-center gap-1 desktop:gap-4",r==null?void 0:r.textContent),children:[o(x,{className:i("size-7 desktop:size-8",r==null?void 0:r.esiaLogo)}),o(u,{onClick:h,mainLink:n,subLink:e,isMobile:m,classes:r==null?void 0:r.links}),o(k,{name:"arrows/arrowRight",className:i("size-6 mobile:hidden",r==null?void 0:r.arrowIcon)})]}),t&&o(j,{className:i("bg-color-positive",r==null?void 0:r.badge),children:t})]})})};export{ir as Esia};
1
+ import{jsx as o,jsxs as p}from"react/jsx-runtime";import{AuthWrapper as g}from"./ui/AuthWrapper.js";import{EsiaLogo as x}from"./ui/EsiaLogo.js";import{Links as u}from"./ui/Links.js";import{useDevice as N}from"../../../shared/hooks/useDevice.js";import"react";import{cn as i}from"../../../shared/utils/cn.js";import"react-hook-form";import"../../../shared/ui/button/Button.js";import"../../../shared/ui/buttonIcon/ButtonIcon.js";import{Badge as j}from"../../../shared/ui/badge/Badge.js";import"../../../shared/ui/calendar/Calendar.js";import"../../../shared/ui/calendar/model/utils.js";import"../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as k}from"../../../shared/ui/icon/Icon.js";import"../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../shared/ui/carousel/ui/CarouselContent.js";import"../../../shared/ui/slot/Slot.js";import"../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const ir=({mainLink:n,linkDescription:e,isLoading:f,badge:t,loaderProps:d,classes:r,onClick:h})=>{const{isMobile:m}=N();return o(g,{isLoading:f,loaderProps:d,classes:r==null?void 0:r.authWrapper,children:p("div",{className:i("flex flex-1 items-center justify-between gap-1",{"justify-center":!t&&m},r==null?void 0:r.innerWrapper),children:[p("div",{className:i("flex items-center gap-1 desktop:gap-4",r==null?void 0:r.textContent),children:[o(x,{className:i("size-7 desktop:size-8",r==null?void 0:r.esiaLogo)}),o(u,{onClick:h,mainLink:n,linkDescription:e,isMobile:m,classes:r==null?void 0:r.links}),o(k,{name:"arrows/arrowRight",className:i("size-6 mobile:hidden",r==null?void 0:r.arrowIcon)})]}),t&&o(j,{className:i("bg-color-positive",r==null?void 0:r.badge),children:t})]})})};export{ir as Esia};
2
2
  //# sourceMappingURL=Esia.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Esia.js","sources":["../../../../../lib/widgets/authProvider/ui/Esia.tsx"],"sourcesContent":["import type { TEsiaProps } from '../model/types'\nimport { AuthWrapper, EsiaLogo, Links } from './ui'\nimport { useDevice } from '$/shared/hooks'\nimport { Badge, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport const Esia = ({ mainLink, subLink, isLoading, badge, loaderProps, classes, onClick }: TEsiaProps) => {\n const { isMobile } = useDevice()\n\n return (\n <AuthWrapper isLoading={isLoading} loaderProps={loaderProps} classes={classes?.authWrapper}>\n <div\n className={cn(\n 'flex flex-1 items-center justify-between gap-1',\n { 'justify-center': !badge && isMobile },\n classes?.innerWrapper\n )}\n >\n <div className={cn('flex items-center gap-1 desktop:gap-4', classes?.textContent)}>\n <EsiaLogo className={cn('size-7 desktop:size-8', classes?.esiaLogo)} />\n <Links onClick={onClick} mainLink={mainLink} subLink={subLink} isMobile={isMobile} classes={classes?.links} />\n <Icon name='arrows/arrowRight' className={cn('size-6 mobile:hidden', classes?.arrowIcon)} />\n </div>\n {badge && <Badge className={cn('bg-color-positive', classes?.badge)}>{badge}</Badge>}\n </div>\n </AuthWrapper>\n )\n}\n"],"names":["Esia","mainLink","subLink","isLoading","badge","loaderProps","classes","onClick","isMobile","useDevice","AuthWrapper","jsxs","cn","jsx","EsiaLogo","Links","Icon","Badge"],"mappings":"+vEAMO,MAAMA,GAAO,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,UAAAC,EAAW,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,QAAAC,KAA0B,CAC1G,KAAM,CAAE,SAAAC,CAAA,EAAaC,EAAA,EAErB,SACGC,EAAA,CAAY,UAAAP,EAAsB,YAAAE,EAA0B,QAASC,GAAA,YAAAA,EAAS,YAC7E,SAAAK,EAAC,MAAA,CACC,UAAWC,EACT,iDACA,CAAE,iBAAkB,CAACR,GAASI,CAAA,EAC9BF,GAAA,YAAAA,EAAS,YAAA,EAGX,SAAA,CAAAK,EAAC,OAAI,UAAWC,EAAG,wCAAyCN,GAAA,YAAAA,EAAS,WAAW,EAC9E,SAAA,CAAAO,EAACC,GAAS,UAAWF,EAAG,wBAAyBN,GAAA,YAAAA,EAAS,QAAQ,EAAG,EACrEO,EAACE,GAAM,QAAAR,EAAkB,SAAAN,EAAoB,QAAAC,EAAkB,SAAAM,EAAoB,QAASF,GAAA,YAAAA,EAAS,MAAO,EAC5GO,EAACG,GAAK,KAAK,oBAAoB,UAAWJ,EAAG,uBAAwBN,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,EAC5F,EACCF,KAAUa,EAAA,CAAM,UAAWL,EAAG,oBAAqBN,GAAA,YAAAA,EAAS,KAAK,EAAI,SAAAF,CAAA,CAAM,CAAA,CAAA,CAAA,EAEhF,CAEJ"}
1
+ {"version":3,"file":"Esia.js","sources":["../../../../../lib/widgets/authProvider/ui/Esia.tsx"],"sourcesContent":["import type { TEsiaProps } from '../model/types'\nimport { AuthWrapper, EsiaLogo, Links } from './ui'\nimport { useDevice } from '$/shared/hooks'\nimport { Badge, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport const Esia = ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }: TEsiaProps) => {\n const { isMobile } = useDevice()\n\n return (\n <AuthWrapper isLoading={isLoading} loaderProps={loaderProps} classes={classes?.authWrapper}>\n <div\n className={cn(\n 'flex flex-1 items-center justify-between gap-1',\n { 'justify-center': !badge && isMobile },\n classes?.innerWrapper\n )}\n >\n <div className={cn('flex items-center gap-1 desktop:gap-4', classes?.textContent)}>\n <EsiaLogo className={cn('size-7 desktop:size-8', classes?.esiaLogo)} />\n <Links\n onClick={onClick}\n mainLink={mainLink}\n linkDescription={linkDescription}\n isMobile={isMobile}\n classes={classes?.links}\n />\n <Icon name='arrows/arrowRight' className={cn('size-6 mobile:hidden', classes?.arrowIcon)} />\n </div>\n {badge && <Badge className={cn('bg-color-positive', classes?.badge)}>{badge}</Badge>}\n </div>\n </AuthWrapper>\n )\n}\n"],"names":["Esia","mainLink","linkDescription","isLoading","badge","loaderProps","classes","onClick","isMobile","useDevice","AuthWrapper","jsxs","cn","jsx","EsiaLogo","Links","Icon","Badge"],"mappings":"+vEAMO,MAAMA,GAAO,CAAC,CAAE,SAAAC,EAAU,gBAAAC,EAAiB,UAAAC,EAAW,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,QAAAC,KAA0B,CAClH,KAAM,CAAE,SAAAC,CAAA,EAAaC,EAAA,EAErB,SACGC,EAAA,CAAY,UAAAP,EAAsB,YAAAE,EAA0B,QAASC,GAAA,YAAAA,EAAS,YAC7E,SAAAK,EAAC,MAAA,CACC,UAAWC,EACT,iDACA,CAAE,iBAAkB,CAACR,GAASI,CAAA,EAC9BF,GAAA,YAAAA,EAAS,YAAA,EAGX,SAAA,CAAAK,EAAC,OAAI,UAAWC,EAAG,wCAAyCN,GAAA,YAAAA,EAAS,WAAW,EAC9E,SAAA,CAAAO,EAACC,GAAS,UAAWF,EAAG,wBAAyBN,GAAA,YAAAA,EAAS,QAAQ,EAAG,EACrEO,EAACE,EAAA,CACC,QAAAR,EACA,SAAAN,EACA,gBAAAC,EACA,SAAAM,EACA,QAASF,GAAA,YAAAA,EAAS,KAAA,CAAA,EAEpBO,EAACG,GAAK,KAAK,oBAAoB,UAAWJ,EAAG,uBAAwBN,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,EAC5F,EACCF,KAAUa,EAAA,CAAM,UAAWL,EAAG,oBAAqBN,GAAA,YAAAA,EAAS,KAAK,EAAI,SAAAF,CAAA,CAAM,CAAA,CAAA,CAAA,EAEhF,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsx as r,jsxs as p}from"react/jsx-runtime";import{AuthWrapper as x}from"./ui/AuthWrapper.js";import{Links as N}from"./ui/Links.js";import{useDevice as u}from"../../../shared/hooks/useDevice.js";import"react";import{cn as i}from"../../../shared/utils/cn.js";import"react-hook-form";import"../../../shared/ui/button/Button.js";import"../../../shared/ui/buttonIcon/ButtonIcon.js";import{Badge as z}from"../../../shared/ui/badge/Badge.js";import"../../../shared/ui/calendar/Calendar.js";import"../../../shared/ui/calendar/model/utils.js";import"../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as m}from"../../../shared/ui/icon/Icon.js";import"../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../shared/ui/carousel/ui/CarouselContent.js";import"../../../shared/ui/slot/Slot.js";import"../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const oo=({mainLink:e,subLink:f,isLoading:g,badge:t,loaderProps:d,classes:o,onClick:h})=>{const{isMobile:n}=u();return r(x,{isLoading:g,loaderProps:d,classes:o==null?void 0:o.authWrapper,children:p("div",{className:i("flex flex-1 items-center justify-between gap-1",{"justify-center":!t&&n},o==null?void 0:o.innerWrapper),children:[p("div",{className:i("flex h-max items-center gap-1 desktop:gap-4",o==null?void 0:o.textContent),children:[p("div",{className:"flex h-full",children:[r(m,{name:"logos/mts",className:i("z-[9] size-8",o==null?void 0:o.mtsLogo)}),r(m,{name:"logos/megafon",className:i("z-[8] -ml-4 size-8",o==null?void 0:o.megafonLogo)}),r(m,{name:"logos/beeline",className:i("z-[7] -ml-4 size-8",o==null?void 0:o.beelineLogo)})]}),r(N,{onClick:h,mainLink:e,subLink:f,isMobile:n,classes:o==null?void 0:o.links}),r(m,{name:"arrows/arrowRight",className:i("size-6 mobile:hidden",o==null?void 0:o.arrowIcon)})]}),t&&r(z,{className:i("bg-color-positive",o==null?void 0:o.badge),children:t})]})})};export{oo as MobileId};
1
+ import{jsx as r,jsxs as p}from"react/jsx-runtime";import{AuthWrapper as x}from"./ui/AuthWrapper.js";import{Links as N}from"./ui/Links.js";import{useDevice as u}from"../../../shared/hooks/useDevice.js";import"react";import{cn as i}from"../../../shared/utils/cn.js";import"react-hook-form";import"../../../shared/ui/button/Button.js";import"../../../shared/ui/buttonIcon/ButtonIcon.js";import{Badge as z}from"../../../shared/ui/badge/Badge.js";import"../../../shared/ui/calendar/Calendar.js";import"../../../shared/ui/calendar/model/utils.js";import"../../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../node_modules/react-hot-toast/dist/index.js";import{Icon as m}from"../../../shared/ui/icon/Icon.js";import"../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../shared/ui/carousel/ui/CarouselContent.js";import"../../../shared/ui/slot/Slot.js";import"../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../src/configs/api.js";import"../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const oo=({mainLink:e,linkDescription:f,isLoading:g,badge:t,loaderProps:d,classes:o,onClick:h})=>{const{isMobile:n}=u();return r(x,{isLoading:g,loaderProps:d,classes:o==null?void 0:o.authWrapper,children:p("div",{className:i("flex flex-1 items-center justify-between gap-1",{"justify-center":!t&&n},o==null?void 0:o.innerWrapper),children:[p("div",{className:i("flex h-max items-center gap-1 desktop:gap-4",o==null?void 0:o.textContent),children:[p("div",{className:"flex h-full",children:[r(m,{name:"logos/mts",className:i("z-[9] size-8",o==null?void 0:o.mtsLogo)}),r(m,{name:"logos/megafon",className:i("z-[8] -ml-4 size-8",o==null?void 0:o.megafonLogo)}),r(m,{name:"logos/beeline",className:i("z-[7] -ml-4 size-8",o==null?void 0:o.beelineLogo)})]}),r(N,{onClick:h,mainLink:e,linkDescription:f,isMobile:n,classes:o==null?void 0:o.links}),r(m,{name:"arrows/arrowRight",className:i("size-6 mobile:hidden",o==null?void 0:o.arrowIcon)})]}),t&&r(z,{className:i("bg-color-positive",o==null?void 0:o.badge),children:t})]})})};export{oo as MobileId};
2
2
  //# sourceMappingURL=MobileId.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MobileId.js","sources":["../../../../../lib/widgets/authProvider/ui/MobileId.tsx"],"sourcesContent":["import { type TMobileIdProps } from '../model/types'\nimport { AuthWrapper, Links } from './ui/'\nimport { useDevice } from '$/shared/hooks'\nimport { Badge, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport const MobileId = ({ mainLink, subLink, isLoading, badge, loaderProps, classes, onClick }: TMobileIdProps) => {\n const { isMobile } = useDevice()\n\n return (\n <AuthWrapper isLoading={isLoading} loaderProps={loaderProps} classes={classes?.authWrapper}>\n <div\n className={cn(\n 'flex flex-1 items-center justify-between gap-1',\n { 'justify-center': !badge && isMobile },\n classes?.innerWrapper\n )}\n >\n <div className={cn('flex h-max items-center gap-1 desktop:gap-4', classes?.textContent)}>\n <div className='flex h-full'>\n <Icon name='logos/mts' className={cn('z-[9] size-8', classes?.mtsLogo)} />\n <Icon name='logos/megafon' className={cn('z-[8] -ml-4 size-8', classes?.megafonLogo)} />\n <Icon name='logos/beeline' className={cn('z-[7] -ml-4 size-8', classes?.beelineLogo)} />\n </div>\n <Links onClick={onClick} mainLink={mainLink} subLink={subLink} isMobile={isMobile} classes={classes?.links} />\n <Icon name='arrows/arrowRight' className={cn('size-6 mobile:hidden', classes?.arrowIcon)} />\n </div>\n {badge && <Badge className={cn('bg-color-positive', classes?.badge)}>{badge}</Badge>}\n </div>\n </AuthWrapper>\n )\n}\n"],"names":["MobileId","mainLink","subLink","isLoading","badge","loaderProps","classes","onClick","isMobile","useDevice","AuthWrapper","jsxs","cn","jsx","Icon","Links","Badge"],"mappings":"mtEAMO,MAAMA,GAAW,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,UAAAC,EAAW,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,QAAAC,KAA8B,CAClH,KAAM,CAAE,SAAAC,CAAA,EAAaC,EAAA,EAErB,SACGC,EAAA,CAAY,UAAAP,EAAsB,YAAAE,EAA0B,QAASC,GAAA,YAAAA,EAAS,YAC7E,SAAAK,EAAC,MAAA,CACC,UAAWC,EACT,iDACA,CAAE,iBAAkB,CAACR,GAASI,CAAA,EAC9BF,GAAA,YAAAA,EAAS,YAAA,EAGX,SAAA,CAAAK,EAAC,OAAI,UAAWC,EAAG,8CAA+CN,GAAA,YAAAA,EAAS,WAAW,EACpF,SAAA,CAAAK,EAAC,MAAA,CAAI,UAAU,cACb,SAAA,CAAAE,EAACC,EAAA,CAAK,KAAK,YAAY,UAAWF,EAAG,eAAgBN,GAAA,YAAAA,EAAS,OAAO,EAAG,EACxEO,EAACC,GAAK,KAAK,gBAAgB,UAAWF,EAAG,qBAAsBN,GAAA,YAAAA,EAAS,WAAW,EAAG,EACtFO,EAACC,GAAK,KAAK,gBAAgB,UAAWF,EAAG,qBAAsBN,GAAA,YAAAA,EAAS,WAAW,CAAA,CAAG,CAAA,EACxF,EACAO,EAACE,GAAM,QAAAR,EAAkB,SAAAN,EAAoB,QAAAC,EAAkB,SAAAM,EAAoB,QAASF,GAAA,YAAAA,EAAS,MAAO,EAC5GO,EAACC,GAAK,KAAK,oBAAoB,UAAWF,EAAG,uBAAwBN,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,EAC5F,EACCF,KAAUY,EAAA,CAAM,UAAWJ,EAAG,oBAAqBN,GAAA,YAAAA,EAAS,KAAK,EAAI,SAAAF,CAAA,CAAM,CAAA,CAAA,CAAA,EAEhF,CAEJ"}
1
+ {"version":3,"file":"MobileId.js","sources":["../../../../../lib/widgets/authProvider/ui/MobileId.tsx"],"sourcesContent":["import { type TMobileIdProps } from '../model/types'\nimport { AuthWrapper, Links } from './ui/'\nimport { useDevice } from '$/shared/hooks'\nimport { Badge, Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport const MobileId = ({ mainLink, linkDescription, isLoading, badge, loaderProps, classes, onClick }: TMobileIdProps) => {\n const { isMobile } = useDevice()\n\n return (\n <AuthWrapper isLoading={isLoading} loaderProps={loaderProps} classes={classes?.authWrapper}>\n <div\n className={cn(\n 'flex flex-1 items-center justify-between gap-1',\n { 'justify-center': !badge && isMobile },\n classes?.innerWrapper\n )}\n >\n <div className={cn('flex h-max items-center gap-1 desktop:gap-4', classes?.textContent)}>\n <div className='flex h-full'>\n <Icon name='logos/mts' className={cn('z-[9] size-8', classes?.mtsLogo)} />\n <Icon name='logos/megafon' className={cn('z-[8] -ml-4 size-8', classes?.megafonLogo)} />\n <Icon name='logos/beeline' className={cn('z-[7] -ml-4 size-8', classes?.beelineLogo)} />\n </div>\n <Links\n onClick={onClick}\n mainLink={mainLink}\n linkDescription={linkDescription}\n isMobile={isMobile}\n classes={classes?.links}\n />\n <Icon name='arrows/arrowRight' className={cn('size-6 mobile:hidden', classes?.arrowIcon)} />\n </div>\n {badge && <Badge className={cn('bg-color-positive', classes?.badge)}>{badge}</Badge>}\n </div>\n </AuthWrapper>\n )\n}\n"],"names":["MobileId","mainLink","linkDescription","isLoading","badge","loaderProps","classes","onClick","isMobile","useDevice","AuthWrapper","jsxs","cn","jsx","Icon","Links","Badge"],"mappings":"mtEAMO,MAAMA,GAAW,CAAC,CAAE,SAAAC,EAAU,gBAAAC,EAAiB,UAAAC,EAAW,MAAAC,EAAO,YAAAC,EAAa,QAAAC,EAAS,QAAAC,KAA8B,CAC1H,KAAM,CAAE,SAAAC,CAAA,EAAaC,EAAA,EAErB,SACGC,EAAA,CAAY,UAAAP,EAAsB,YAAAE,EAA0B,QAASC,GAAA,YAAAA,EAAS,YAC7E,SAAAK,EAAC,MAAA,CACC,UAAWC,EACT,iDACA,CAAE,iBAAkB,CAACR,GAASI,CAAA,EAC9BF,GAAA,YAAAA,EAAS,YAAA,EAGX,SAAA,CAAAK,EAAC,OAAI,UAAWC,EAAG,8CAA+CN,GAAA,YAAAA,EAAS,WAAW,EACpF,SAAA,CAAAK,EAAC,MAAA,CAAI,UAAU,cACb,SAAA,CAAAE,EAACC,EAAA,CAAK,KAAK,YAAY,UAAWF,EAAG,eAAgBN,GAAA,YAAAA,EAAS,OAAO,EAAG,EACxEO,EAACC,GAAK,KAAK,gBAAgB,UAAWF,EAAG,qBAAsBN,GAAA,YAAAA,EAAS,WAAW,EAAG,EACtFO,EAACC,GAAK,KAAK,gBAAgB,UAAWF,EAAG,qBAAsBN,GAAA,YAAAA,EAAS,WAAW,CAAA,CAAG,CAAA,EACxF,EACAO,EAACE,EAAA,CACC,QAAAR,EACA,SAAAN,EACA,gBAAAC,EACA,SAAAM,EACA,QAASF,GAAA,YAAAA,EAAS,KAAA,CAAA,EAEpBO,EAACC,GAAK,KAAK,oBAAoB,UAAWF,EAAG,uBAAwBN,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,CAAA,EAC5F,EACCF,KAAUY,EAAA,CAAM,UAAWJ,EAAG,oBAAqBN,GAAA,YAAAA,EAAS,KAAK,EAAI,SAAAF,CAAA,CAAM,CAAA,CAAA,CAAA,EAEhF,CAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsxs as f,jsx as m}from"react/jsx-runtime";import{cn as o}from"../../../../shared/utils/cn.js";import"react";import"../../../../shared/ui/button/Button.js";import"../../../../shared/ui/buttonIcon/ButtonIcon.js";import"../../../../shared/ui/calendar/Calendar.js";import"../../../../shared/ui/calendar/model/utils.js";import"../../../../shared/ui/accordion/Accordion.js";import"react-hook-form";import"react-dom";import"../../../../shared/ui/modal/ui/IframeModalContent.js";import"../../../../../node_modules/react-hot-toast/dist/index.js";import"../../../../shared/ui/table/ui/primitives/Primitives.js";import"../../../../shared/ui/carousel/ui/CarouselContent.js";import{CustomLink as l}from"../../../../shared/ui/customLink/CustomLink.js";import"../../../../shared/ui/slot/Slot.js";import"../../../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"../../../../../src/configs/api.js";import"../../../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";const V=({mainLink:e,subLink:r,isMobile:p,classes:t,...i})=>f("div",{className:o("flex flex-col",t==null?void 0:t.linksWrapper),children:[m("button",{...i,type:"button",className:o('before:content=[" "] desk-body-medium-l z-[4] text-color-dark before:absolute before:left-1/2 before:top-1/2 before:h-full before:w-full before:-translate-x-1/2 before:-translate-y-1/2',t==null?void 0:t.linksMainLink),children:p?e.mobileTitle:e.title}),(r==null?void 0:r.text)&&(r==null?void 0:r.href)&&m(l,{intent:"blue",withUnderline:!0,href:r==null?void 0:r.href,target:"_blank",rel:"noreferrer",classes:{link:o("w-max relative z-[6] p-0 desk-body-regular-m text-color-tetriary",t==null?void 0:t.linksSubLink)},children:r==null?void 0:r.text})]});export{V as Links};
1
+ import{jsxs as i,jsx as o}from"react/jsx-runtime";import{cn as l}from"../../../../shared/utils/cn.js";import"react";const p=({mainLink:r,linkDescription:t,isMobile:f,classes:e,...b})=>i("div",{className:l("flex flex-col",e==null?void 0:e.linksWrapper),children:[o("button",{...b,type:"button",className:l('before:content=[" "] desk-body-medium-l z-[4] text-color-dark before:absolute before:left-1/2 before:top-1/2 before:h-full before:w-full before:-translate-x-1/2 before:-translate-y-1/2',e==null?void 0:e.linksMainLink),children:f?r.mobileTitle:r.title}),t&&o("p",{className:"desk-body-regular-m relative z-[6] w-max p-0 text-color-tetriary",children:t})]});export{p as Links};
2
2
  //# sourceMappingURL=Links.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Links.js","sources":["../../../../../../lib/widgets/authProvider/ui/ui/Links.tsx"],"sourcesContent":["import type { SingleAuthSchema } from '../../model/types'\nimport { CustomLink } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\nexport type TLinksClasses = {\n linksWrapper?: string\n linksMainLink?: string\n linksSubLink?: string\n}\n\ninterface ILinksProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, Pick<SingleAuthSchema, 'subLink' | 'mainLink'> {\n isMobile: boolean\n classes?: TLinksClasses\n}\n\nexport const Links = ({ mainLink, subLink, isMobile, classes, ...props }: ILinksProps) => {\n return (\n <div className={cn('flex flex-col', classes?.linksWrapper)}>\n <button\n {...props}\n type='button'\n className={cn(\n 'before:content=[\" \"] desk-body-medium-l z-[4] text-color-dark before:absolute before:left-1/2 before:top-1/2 before:h-full before:w-full before:-translate-x-1/2 before:-translate-y-1/2',\n classes?.linksMainLink\n )}\n >\n {isMobile ? mainLink.mobileTitle : mainLink.title}\n </button>\n\n {subLink?.text && subLink?.href && (\n <CustomLink\n intent='blue'\n withUnderline\n href={subLink?.href}\n target='_blank'\n rel='noreferrer'\n classes={{\n link: cn('w-max relative z-[6] p-0 desk-body-regular-m text-color-tetriary', classes?.linksSubLink)\n }}\n >\n {subLink?.text}\n </CustomLink>\n )}\n </div>\n )\n}\n"],"names":["Links","mainLink","subLink","isMobile","classes","props","cn","jsx","CustomLink"],"mappings":"8mEAeO,MAAMA,EAAQ,CAAC,CAAE,SAAAC,EAAU,QAAAC,EAAS,SAAAC,EAAU,QAAAC,EAAS,GAAGC,OAE5D,MAAA,CAAI,UAAWC,EAAG,gBAAiBF,GAAA,YAAAA,EAAS,YAAY,EACvD,SAAA,CAAAG,EAAC,SAAA,CACE,GAAGF,EACJ,KAAK,SACL,UAAWC,EACT,2LACAF,GAAA,YAAAA,EAAS,aAAA,EAGV,SAAAD,EAAWF,EAAS,YAAcA,EAAS,KAAA,CAAA,GAG7CC,GAAA,YAAAA,EAAS,QAAQA,GAAA,YAAAA,EAAS,OACzBK,EAACC,EAAA,CACC,OAAO,OACP,cAAa,GACb,KAAMN,GAAA,YAAAA,EAAS,KACf,OAAO,SACP,IAAI,aACJ,QAAS,CACP,KAAMI,EAAG,mEAAoEF,GAAA,YAAAA,EAAS,YAAY,CAAA,EAGnG,SAAAF,GAAA,YAAAA,EAAS,IAAA,CAAA,CACZ,EAEJ"}
1
+ {"version":3,"file":"Links.js","sources":["../../../../../../lib/widgets/authProvider/ui/ui/Links.tsx"],"sourcesContent":["import type { SingleAuthSchema } from '../../model/types'\nimport { cn } from '$/shared/utils'\n\nexport type TLinksClasses = {\n linksWrapper?: string\n linksMainLink?: string\n linksSubLink?: string\n}\n\ninterface ILinksProps\n extends React.ButtonHTMLAttributes<HTMLButtonElement>,\n Pick<SingleAuthSchema, 'linkDescription' | 'mainLink'> {\n isMobile: boolean\n classes?: TLinksClasses\n}\n\nexport const Links = ({ mainLink, linkDescription, isMobile, classes, ...props }: ILinksProps) => {\n return (\n <div className={cn('flex flex-col', classes?.linksWrapper)}>\n <button\n {...props}\n type='button'\n className={cn(\n 'before:content=[\" \"] desk-body-medium-l z-[4] text-color-dark before:absolute before:left-1/2 before:top-1/2 before:h-full before:w-full before:-translate-x-1/2 before:-translate-y-1/2',\n classes?.linksMainLink\n )}\n >\n {isMobile ? mainLink.mobileTitle : mainLink.title}\n </button>\n\n {linkDescription && <p className='desk-body-regular-m relative z-[6] w-max p-0 text-color-tetriary'>{linkDescription}</p>}\n </div>\n )\n}\n"],"names":["Links","mainLink","linkDescription","isMobile","classes","props","cn","jsx"],"mappings":"oHAgBO,MAAMA,EAAQ,CAAC,CAAE,SAAAC,EAAU,gBAAAC,EAAiB,SAAAC,EAAU,QAAAC,EAAS,GAAGC,OAEpE,MAAA,CAAI,UAAWC,EAAG,gBAAiBF,GAAA,YAAAA,EAAS,YAAY,EACvD,SAAA,CAAAG,EAAC,SAAA,CACE,GAAGF,EACJ,KAAK,SACL,UAAWC,EACT,2LACAF,GAAA,YAAAA,EAAS,aAAA,EAGV,SAAAD,EAAWF,EAAS,YAAcA,EAAS,KAAA,CAAA,EAG7CC,GAAmBK,EAAC,IAAA,CAAE,UAAU,mEAAoE,SAAAL,CAAA,CAAgB,CAAA,EACvH"}
@@ -1,2 +1,2 @@
1
- import{jsx as t,jsxs as n}from"react/jsx-runtime";import{useState as I,createElement as z}from"react";import{AuthProvider as k}from"../authProvider/AuthProvider.js";import{HTMLRenderer as g}from"../htmlParser/HTMLRenderer.js";import{widgetIds as h}from"../model/helpers.js";import{getFieldsProgress as H}from"./model/getFieldsProgress.js";import{getDynamicSchema as M}from"../../../src/shared/utils/getDynamicSchema.js";import{cn as m}from"../../shared/utils/cn.js";import{useControlledForm as R}from"../../shared/hooks/useControlledForm.js";import{useFieldsProgress as V}from"../../shared/hooks/useFieldsProgress.js";import{ResponsiveContainer as Z}from"../../shared/ui/responsiveContainer/ResponsiveContainer.js";import{Button as E}from"../../shared/ui/button/Button.js";import"../../shared/ui/buttonIcon/ButtonIcon.js";import"../../shared/ui/calendar/Calendar.js";import"../../shared/ui/calendar/model/utils.js";import"../../shared/ui/accordion/Accordion.js";import{ProgressBar as L}from"../../shared/ui/progressBar/ProgressBar.js";import"react-dom";import"../../shared/ui/modal/ui/IframeModalContent.js";import"../../../node_modules/react-hot-toast/dist/index.js";import{Icon as Q}from"../../shared/ui/icon/Icon.js";import"../../shared/ui/table/ui/primitives/Primitives.js";import{Heading as u}from"../../shared/ui/heading/Heading.js";import"../../shared/ui/carousel/ui/CarouselContent.js";import"../../shared/ui/slot/Slot.js";import"../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as T}from"../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"react-hook-form";import"../../../src/configs/api.js";import"../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";import"../../shared/validation/zodValidation/dadataFio.js";import"../../shared/validation/zodValidation/calendar.js";import"../../shared/validation/zodValidation/phone.js";import"../../shared/validation/zodValidation/otpCode.js";import{ZodUtils as U}from"../../shared/validation/utils/zodUtils.js";import{FieldMapper as q}from"../fieldMapper/FieldMapper.js";import{QueryClientProvider as J}from"../queryClientProvider/QueryClientProvider.js";const K=(r,p,i,e)=>r.type==="off"?null:r.type==="text"?t(g,{html:r.message,as:"div",className:e==null?void 0:e.content}):n("label",{className:m("mob-body-regular-s text-color-dark","desktop:desk-body-regular-s desktop:gap-x-4","flex items-center justify-items-start gap-x-3"),children:[t(T,{classes:e==null?void 0:e.checkbox,checked:p,onCheckedChange:i}),t(g,{html:r.content,as:"div",className:e==null?void 0:e.content})]}),O=r=>{switch(r==null?void 0:r.mode){case"esia":return t(k,{...r,mode:r==null?void 0:r.mode});case"mobileId":return t(k,{...r,mode:r==null?void 0:r.mode});case"combine":return t(k,{...r,mode:r==null?void 0:r.mode});default:return null}},Ko=({fields:r,title:p,progress:i,approvement:e,chips:f,submitProps:N,auth:P,classes:o,buttonGroup:d})=>{var w,a;const{submitCallback:y}=N||{},[x,C]=I(e.type==="checkbox"?e.defaultValue:!1),b=M(r),B=U.getZodDefaults(b),{control:c,handleSubmit:j}=R({schema:b,defaultValues:B,mode:"onBlur"}),v=H(i,r),F=V({control:c,fields:v||[],schema:b}),S=l=>{y&&y({...l,agree:x})};return t(J,{children:t("section",{id:h.form,"data-test-id":h.form,className:m("w-full",o==null?void 0:o.root),children:n(Z,{className:m("border-warm-grey-200 px-4 desktop:w-[636px] desktop:gap-8 desktop:p-14","relative mx-auto flex flex-col gap-6 rounded-sm py-8 desktop:border"),children:[f.enabled&&n("div",{className:m("desk-body-regular-l flex items-center gap-x-2 rounded-sm desktop:absolute","bg-color-blue-grey-100 px-2 py-1 text-color-tetriary","right-4 top-4 w-max",(w=o==null?void 0:o.chips)==null?void 0:w.root),children:[f.image&&t(Q,{name:f.image,className:m("size-6",(a=o==null?void 0:o.chips)==null?void 0:a.icon)}),f.content]}),t(u,{as:"h2",className:m("desktop:hidden",o==null?void 0:o.title),children:p}),t(u,{as:"h3",className:m("mobile:hidden",o==null?void 0:o.title),children:p}),n("form",{onSubmit:j(S),className:m("flex w-full flex-col gap-y-6","desktop:gap-y-8",o==null?void 0:o.form),children:[i.enabled&&t(L,{progress:F,topContent:t(g,{html:i.title}),bottomContent:t(g,{html:i.subtitle}),maxPercent:i.maxPercent,classes:o==null?void 0:o.progressBar}),t(q,{control:c,fields:r}),n("div",{className:m("mob-body-regular-s flex flex-col items-start justify-between gap-4",{"desktop:flex-row desktop:items-center":d.length===1}),children:[K(e,x,C,o==null?void 0:o.approvement),t("div",{className:m("flex w-full flex-col items-center justify-between gap-4 desktop:flex-row",{"desktop:w-fit":d.length===1}),children:d==null?void 0:d.map((l,A)=>{const D=l.type==="submit"&&e.type==="checkbox"?!x:!1;return z(E,{...l,size:"lg",key:A,disabled:D,className:m("w-full whitespace-nowrap",{"desktop:!w-fit":d.length===1},{"w-full":!!e},o==null?void 0:o.submit)})})})]}),O(P)]})]})})})};export{Ko as DynamicForm,Ko as default};
1
+ import{jsx as t,jsxs as n}from"react/jsx-runtime";import{useState as M,createElement as R}from"react";import{AuthProvider as k}from"../authProvider/AuthProvider.js";import{HTMLRenderer as g}from"../htmlParser/HTMLRenderer.js";import{widgetIds as u}from"../model/helpers.js";import{getFieldsProgress as V}from"./model/getFieldsProgress.js";import{getDynamicSchema as Z}from"../../../src/shared/utils/getDynamicSchema.js";import{cn as m}from"../../shared/utils/cn.js";import{useControlledForm as z}from"../../shared/hooks/useControlledForm.js";import{useFieldsProgress as E}from"../../shared/hooks/useFieldsProgress.js";import{ResponsiveContainer as L}from"../../shared/ui/responsiveContainer/ResponsiveContainer.js";import{Button as Q}from"../../shared/ui/button/Button.js";import"../../shared/ui/buttonIcon/ButtonIcon.js";import"../../shared/ui/calendar/Calendar.js";import"../../shared/ui/calendar/model/utils.js";import"../../shared/ui/accordion/Accordion.js";import{ProgressBar as U}from"../../shared/ui/progressBar/ProgressBar.js";import"react-dom";import"../../shared/ui/modal/ui/IframeModalContent.js";import"../../../node_modules/react-hot-toast/dist/index.js";import{Icon as q}from"../../shared/ui/icon/Icon.js";import"../../shared/ui/table/ui/primitives/Primitives.js";import{Heading as P}from"../../shared/ui/heading/Heading.js";import"../../shared/ui/carousel/ui/CarouselContent.js";import"../../shared/ui/slot/Slot.js";import"../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import{CheckboxBase as J}from"../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../shared/ui/formElements/uncontrolled/combobox/combobox.js";import"../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../shared/ui/formElements/uncontrolled/inputCurrency/InputCurrency.js";import"react-hook-form";import"../../../src/configs/api.js";import"../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../shared/ui/formElements/controlled/input/MaskInputControl.js";import"../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";import"../../shared/validation/zodValidation/dadataFio.js";import"../../shared/validation/zodValidation/calendar.js";import"../../shared/validation/zodValidation/phone.js";import"../../shared/validation/zodValidation/otpCode.js";import{ZodUtils as K}from"../../shared/validation/utils/zodUtils.js";import{FieldMapper as O}from"../fieldMapper/FieldMapper.js";import{QueryClientProvider as T}from"../queryClientProvider/QueryClientProvider.js";const W=(r,p,i,e)=>r.type==="off"?null:r.type==="text"?t(g,{html:r.message,as:"div",className:e==null?void 0:e.content}):n("label",{className:m("mob-body-regular-s text-color-dark","desktop:desk-body-regular-s desktop:gap-x-4","flex items-center justify-items-start gap-x-3"),children:[t(J,{classes:e==null?void 0:e.checkbox,checked:p,onCheckedChange:i}),t(g,{html:r.content,as:"div",className:e==null?void 0:e.content})]}),C=r=>{switch(r==null?void 0:r.mode){case"esia":return t(k,{...r,mode:r==null?void 0:r.mode});case"mobileId":return t(k,{...r,mode:r==null?void 0:r.mode});case"combine":return t(k,{...r,mode:r==null?void 0:r.mode});default:return null}},To=({fields:r,title:p,progress:i,approvement:e,chips:f,submitProps:B,auth:y,classes:o,buttonGroup:d,ssoAuthorizationTop:c=!1})=>{var h,N;const{submitCallback:w}=B||{},[x,j]=M(e.type==="checkbox"?e.defaultValue:!1),b=Z(r),v=K.getZodDefaults(b),{control:a,handleSubmit:F}=z({schema:b,defaultValues:v,mode:"onBlur"}),S=V(i,r),D=E({control:a,fields:S||[],schema:b}),I=l=>{w&&w({...l,agree:x})};return t(T,{children:t("section",{id:u.form,"data-test-id":u.form,className:m("w-full",o==null?void 0:o.root),children:n(L,{className:m("border-warm-grey-200 px-4 desktop:w-[636px] desktop:gap-8 desktop:p-14","relative mx-auto flex flex-col gap-6 rounded-sm py-8 desktop:border"),children:[f.enabled&&n("div",{className:m("desk-body-regular-l flex items-center gap-x-2 rounded-sm desktop:absolute","bg-color-blue-grey-100 px-2 py-1 text-color-tetriary","right-4 top-4 w-max",(h=o==null?void 0:o.chips)==null?void 0:h.root),children:[f.image&&t(q,{name:f.image,className:m("size-6",(N=o==null?void 0:o.chips)==null?void 0:N.icon)}),f.content]}),t(P,{as:"h2",className:m("desktop:hidden",o==null?void 0:o.title),children:p}),t(P,{as:"h3",className:m("mobile:hidden",o==null?void 0:o.title),children:p}),c&&C(y),n("form",{onSubmit:F(I),className:m("flex w-full flex-col gap-y-6","desktop:gap-y-8",o==null?void 0:o.form),children:[i.enabled&&t(U,{progress:D,topContent:t(g,{html:i.title}),bottomContent:t(g,{html:i.subtitle}),maxPercent:i.maxPercent,classes:o==null?void 0:o.progressBar}),t(O,{control:a,fields:r}),n("div",{className:m("mob-body-regular-s flex flex-col items-start justify-between gap-4",{"desktop:flex-row desktop:items-center":d.length===1}),children:[W(e,x,j,o==null?void 0:o.approvement),t("div",{className:m("flex w-full flex-col items-center justify-between gap-4 desktop:flex-row",{"desktop:w-fit":d.length===1}),children:d==null?void 0:d.map((l,A)=>{const H=l.type==="submit"&&e.type==="checkbox"?!x:!1;return R(Q,{...l,size:"lg",key:A,disabled:H,className:m("w-full whitespace-nowrap",{"desktop:!w-fit":d.length===1},{"w-full":!!e},o==null?void 0:o.submit)})})})]}),!c&&C(y)]})]})})})};export{To as DynamicForm,To as default};
2
2
  //# sourceMappingURL=DynamicForm.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DynamicForm.js","sources":["../../../../lib/widgets/dynamicForm/DynamicForm.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { type Control, type FieldValues, type SubmitHandler } from 'react-hook-form'\nimport { type TypeOf } from 'zod'\nimport { AuthProvider } from '../authProvider'\nimport { HTMLRenderer } from '../htmlParser'\nimport { widgetIds } from '../model'\nimport {\n type Approvement,\n type ApprovementType,\n type Auth,\n type AuthMode,\n type Chips,\n type ChipsType,\n getFieldsProgress,\n type Progress,\n type ProgressField,\n type ProgressType\n} from './model'\nimport { type FieldValidation, getDynamicSchema } from '@/shared/utils'\nimport { useControlledForm, useFieldsProgress } from '$/shared/hooks'\nimport {\n Button,\n type ButtonProps,\n CheckboxBase,\n type CheckedState,\n Heading,\n Icon,\n ProgressBar,\n ResponsiveContainer\n} from '$/shared/ui'\nimport { cn } from '$/shared/utils'\nimport { ZodUtils } from '$/shared/validation'\nimport { type FieldElement, FieldMapper } from '$/widgets/fieldMapper'\nimport { QueryClientProvider } from '$/widgets/queryClientProvider'\n\ntype SubmitProps = {\n submitCallback: <T extends FieldValues>(values: T) => void\n}\n\ntype ChipsClasses = {\n root?: string\n icon?: string\n}\ntype ApprovementClasses = {\n checkbox?: React.ComponentProps<typeof CheckboxBase>['classes']\n content?: string\n}\n\ntype DynamicFormClasses = {\n root?: string\n title?: string\n fields?: string\n form?: string\n chips?: ChipsClasses\n approvement?: ApprovementClasses\n progressBar?: React.ComponentProps<typeof ProgressBar>['classes']\n submit?: string\n}\n\nexport type DynamicFormProps<\n AType extends ApprovementType,\n CType extends ChipsType,\n PType extends ProgressType,\n AuthType extends AuthMode\n> = {\n fields: FieldElement<any, any, { validation: FieldValidation; progress: ProgressField }>[]\n title: string\n progress: Progress<PType>\n approvement: Approvement<AType>\n chips: Chips<CType>\n submitProps?: SubmitProps\n classes?: DynamicFormClasses\n buttonGroup: ButtonProps[]\n auth: Auth<AuthType>\n}\n\nconst withApprovement = <Type extends ApprovementType>(\n approvement: Approvement<Type>,\n checked: CheckedState,\n onCheckedChange: (checked: CheckedState) => void,\n classes?: ApprovementClasses\n): React.ReactNode => {\n if (approvement.type === 'off') return null\n\n if (approvement.type === 'text') {\n return <HTMLRenderer html={approvement.message} as='div' className={classes?.content} />\n }\n\n return (\n <label\n className={cn(\n 'mob-body-regular-s text-color-dark',\n 'desktop:desk-body-regular-s desktop:gap-x-4',\n 'flex items-center justify-items-start gap-x-3'\n )}\n >\n <CheckboxBase classes={classes?.checkbox} checked={checked} onCheckedChange={onCheckedChange} />\n <HTMLRenderer html={approvement.content} as='div' className={classes?.content} />\n </label>\n )\n}\n\nconst withAuthProvider = <Mode extends AuthMode>(auth: Auth<Mode>) => {\n switch (auth?.mode) {\n case 'esia':\n return <AuthProvider {...auth} mode={auth?.mode} />\n case 'mobileId':\n return <AuthProvider {...auth} mode={auth?.mode} />\n case 'combine':\n return <AuthProvider {...auth} mode={auth?.mode} />\n\n default:\n return null\n }\n}\n\nexport const DynamicForm = <\n AType extends ApprovementType,\n CType extends ChipsType,\n PType extends ProgressType,\n AuthType extends AuthMode\n>({\n fields,\n title,\n progress,\n approvement,\n chips,\n submitProps,\n auth,\n classes,\n buttonGroup\n}: DynamicFormProps<AType, CType, PType, AuthType>) => {\n const { submitCallback } = submitProps || {}\n\n const [checked, onCheckedChange] = useState<CheckedState>(approvement.type === 'checkbox' ? approvement.defaultValue : false)\n\n const schema = getDynamicSchema(fields)\n const defaultValues = ZodUtils.getZodDefaults(schema)\n\n const { control, handleSubmit } = useControlledForm({\n schema,\n defaultValues,\n mode: 'onBlur'\n })\n\n const fieldsProgress = getFieldsProgress(progress, fields)\n\n const formattedProgress = useFieldsProgress({ control, fields: fieldsProgress || [], schema })\n\n const onSubmit: SubmitHandler<TypeOf<typeof schema>> = (values) => {\n if (submitCallback) submitCallback({ ...values, agree: checked })\n }\n\n return (\n <QueryClientProvider>\n <section id={widgetIds.form} data-test-id={widgetIds.form} className={cn('w-full', classes?.root)}>\n <ResponsiveContainer\n className={cn(\n 'border-warm-grey-200 px-4 desktop:w-[636px] desktop:gap-8 desktop:p-14',\n 'relative mx-auto flex flex-col gap-6 rounded-sm py-8 desktop:border'\n )}\n >\n {chips.enabled && (\n <div\n className={cn(\n 'desk-body-regular-l flex items-center gap-x-2 rounded-sm desktop:absolute',\n 'bg-color-blue-grey-100 px-2 py-1 text-color-tetriary',\n 'right-4 top-4 w-max',\n classes?.chips?.root\n )}\n >\n {chips.image && <Icon name={chips.image} className={cn('size-6', classes?.chips?.icon)} />}\n {chips.content}\n </div>\n )}\n <Heading as='h2' className={cn('desktop:hidden', classes?.title)}>\n {title}\n </Heading>\n <Heading as='h3' className={cn('mobile:hidden', classes?.title)}>\n {title}\n </Heading>\n <form\n onSubmit={handleSubmit(onSubmit)}\n className={cn('flex w-full flex-col gap-y-6', 'desktop:gap-y-8', classes?.form)}\n >\n {progress.enabled && (\n <ProgressBar\n progress={formattedProgress}\n topContent={<HTMLRenderer html={progress.title} />}\n bottomContent={<HTMLRenderer html={progress.subtitle} />}\n maxPercent={progress.maxPercent}\n classes={classes?.progressBar}\n />\n )}\n <FieldMapper control={control as unknown as Control} fields={fields} />\n <div\n className={cn('mob-body-regular-s flex flex-col items-start justify-between gap-4', {\n ['desktop:flex-row desktop:items-center']: buttonGroup.length === 1\n })}\n >\n {withApprovement(approvement, checked, onCheckedChange, classes?.approvement)}\n <div\n className={cn('flex w-full flex-col items-center justify-between gap-4 desktop:flex-row', {\n 'desktop:w-fit': buttonGroup.length === 1\n })}\n >\n {buttonGroup?.map((button, index) => {\n const disabled = button.type === 'submit' && approvement.type === 'checkbox' ? !checked : false\n\n return (\n <Button\n {...button}\n size='lg'\n key={index}\n disabled={disabled}\n className={cn(\n 'w-full whitespace-nowrap',\n {\n ['desktop:!w-fit']: buttonGroup.length === 1\n },\n {\n 'w-full': Boolean(approvement)\n },\n classes?.submit\n )}\n />\n )\n })}\n </div>\n </div>\n {withAuthProvider(auth)}\n </form>\n </ResponsiveContainer>\n </section>\n </QueryClientProvider>\n )\n}\n\nexport default DynamicForm\n"],"names":["withApprovement","approvement","checked","onCheckedChange","classes","jsx","HTMLRenderer","jsxs","cn","CheckboxBase","withAuthProvider","auth","AuthProvider","DynamicForm","fields","title","progress","chips","submitProps","buttonGroup","submitCallback","useState","schema","getDynamicSchema","defaultValues","ZodUtils","control","handleSubmit","useControlledForm","fieldsProgress","getFieldsProgress","formattedProgress","useFieldsProgress","onSubmit","values","QueryClientProvider","widgetIds","ResponsiveContainer","_a","Icon","_b","Heading","ProgressBar","FieldMapper","button","index","disabled","createElement","Button"],"mappings":"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"}
1
+ {"version":3,"file":"DynamicForm.js","sources":["../../../../lib/widgets/dynamicForm/DynamicForm.tsx"],"sourcesContent":["'use client'\n\nimport { useState } from 'react'\nimport { type Control, type FieldValues, type SubmitHandler } from 'react-hook-form'\nimport { type TypeOf } from 'zod'\nimport { AuthProvider } from '../authProvider'\nimport { HTMLRenderer } from '../htmlParser'\nimport { widgetIds } from '../model'\nimport {\n type Approvement,\n type ApprovementType,\n type Auth,\n type AuthMode,\n type Chips,\n type ChipsType,\n getFieldsProgress,\n type Progress,\n type ProgressField,\n type ProgressType\n} from './model'\nimport { type FieldValidation, getDynamicSchema } from '@/shared/utils'\nimport { useControlledForm, useFieldsProgress } from '$/shared/hooks'\nimport {\n Button,\n type ButtonProps,\n CheckboxBase,\n type CheckedState,\n Heading,\n Icon,\n ProgressBar,\n ResponsiveContainer\n} from '$/shared/ui'\nimport { cn } from '$/shared/utils'\nimport { ZodUtils } from '$/shared/validation'\nimport { type FieldElement, FieldMapper } from '$/widgets/fieldMapper'\nimport { QueryClientProvider } from '$/widgets/queryClientProvider'\n\ntype SubmitProps = {\n submitCallback: <T extends FieldValues>(values: T) => void\n}\n\ntype ChipsClasses = {\n root?: string\n icon?: string\n}\ntype ApprovementClasses = {\n checkbox?: React.ComponentProps<typeof CheckboxBase>['classes']\n content?: string\n}\n\ntype DynamicFormClasses = {\n root?: string\n title?: string\n fields?: string\n form?: string\n chips?: ChipsClasses\n approvement?: ApprovementClasses\n progressBar?: React.ComponentProps<typeof ProgressBar>['classes']\n submit?: string\n}\n\nexport type DynamicFormProps<\n AType extends ApprovementType,\n CType extends ChipsType,\n PType extends ProgressType,\n AuthType extends AuthMode\n> = {\n fields: FieldElement<any, any, { validation: FieldValidation; progress: ProgressField }>[]\n ssoAuthorizationTop: boolean\n title: string\n progress: Progress<PType>\n approvement: Approvement<AType>\n chips: Chips<CType>\n submitProps?: SubmitProps\n classes?: DynamicFormClasses\n buttonGroup: ButtonProps[]\n auth: Auth<AuthType>\n}\n\nconst withApprovement = <Type extends ApprovementType>(\n approvement: Approvement<Type>,\n checked: CheckedState,\n onCheckedChange: (checked: CheckedState) => void,\n classes?: ApprovementClasses\n): React.ReactNode => {\n if (approvement.type === 'off') return null\n\n if (approvement.type === 'text') {\n return <HTMLRenderer html={approvement.message} as='div' className={classes?.content} />\n }\n\n return (\n <label\n className={cn(\n 'mob-body-regular-s text-color-dark',\n 'desktop:desk-body-regular-s desktop:gap-x-4',\n 'flex items-center justify-items-start gap-x-3'\n )}\n >\n <CheckboxBase classes={classes?.checkbox} checked={checked} onCheckedChange={onCheckedChange} />\n <HTMLRenderer html={approvement.content} as='div' className={classes?.content} />\n </label>\n )\n}\n\nconst withAuthProvider = <Mode extends AuthMode>(auth: Auth<Mode>) => {\n switch (auth?.mode) {\n case 'esia':\n return <AuthProvider {...auth} mode={auth?.mode} />\n case 'mobileId':\n return <AuthProvider {...auth} mode={auth?.mode} />\n case 'combine':\n return <AuthProvider {...auth} mode={auth?.mode} />\n\n default:\n return null\n }\n}\n\nexport const DynamicForm = <\n AType extends ApprovementType,\n CType extends ChipsType,\n PType extends ProgressType,\n AuthType extends AuthMode\n>({\n fields,\n title,\n progress,\n approvement,\n chips,\n submitProps,\n auth,\n classes,\n buttonGroup,\n ssoAuthorizationTop = false\n}: DynamicFormProps<AType, CType, PType, AuthType>) => {\n const { submitCallback } = submitProps || {}\n\n const [checked, onCheckedChange] = useState<CheckedState>(approvement.type === 'checkbox' ? approvement.defaultValue : false)\n\n const schema = getDynamicSchema(fields)\n const defaultValues = ZodUtils.getZodDefaults(schema)\n\n const { control, handleSubmit } = useControlledForm({\n schema,\n defaultValues,\n mode: 'onBlur'\n })\n\n const fieldsProgress = getFieldsProgress(progress, fields)\n\n const formattedProgress = useFieldsProgress({ control, fields: fieldsProgress || [], schema })\n\n const onSubmit: SubmitHandler<TypeOf<typeof schema>> = (values) => {\n if (submitCallback) submitCallback({ ...values, agree: checked })\n }\n\n return (\n <QueryClientProvider>\n <section id={widgetIds.form} data-test-id={widgetIds.form} className={cn('w-full', classes?.root)}>\n <ResponsiveContainer\n className={cn(\n 'border-warm-grey-200 px-4 desktop:w-[636px] desktop:gap-8 desktop:p-14',\n 'relative mx-auto flex flex-col gap-6 rounded-sm py-8 desktop:border'\n )}\n >\n {chips.enabled && (\n <div\n className={cn(\n 'desk-body-regular-l flex items-center gap-x-2 rounded-sm desktop:absolute',\n 'bg-color-blue-grey-100 px-2 py-1 text-color-tetriary',\n 'right-4 top-4 w-max',\n classes?.chips?.root\n )}\n >\n {chips.image && <Icon name={chips.image} className={cn('size-6', classes?.chips?.icon)} />}\n {chips.content}\n </div>\n )}\n <Heading as='h2' className={cn('desktop:hidden', classes?.title)}>\n {title}\n </Heading>\n <Heading as='h3' className={cn('mobile:hidden', classes?.title)}>\n {title}\n </Heading>\n {ssoAuthorizationTop && withAuthProvider(auth)}\n <form\n onSubmit={handleSubmit(onSubmit)}\n className={cn('flex w-full flex-col gap-y-6', 'desktop:gap-y-8', classes?.form)}\n >\n {progress.enabled && (\n <ProgressBar\n progress={formattedProgress}\n topContent={<HTMLRenderer html={progress.title} />}\n bottomContent={<HTMLRenderer html={progress.subtitle} />}\n maxPercent={progress.maxPercent}\n classes={classes?.progressBar}\n />\n )}\n <FieldMapper control={control as unknown as Control} fields={fields} />\n <div\n className={cn('mob-body-regular-s flex flex-col items-start justify-between gap-4', {\n ['desktop:flex-row desktop:items-center']: buttonGroup.length === 1\n })}\n >\n {withApprovement(approvement, checked, onCheckedChange, classes?.approvement)}\n <div\n className={cn('flex w-full flex-col items-center justify-between gap-4 desktop:flex-row', {\n 'desktop:w-fit': buttonGroup.length === 1\n })}\n >\n {buttonGroup?.map((button, index) => {\n const disabled = button.type === 'submit' && approvement.type === 'checkbox' ? !checked : false\n\n return (\n <Button\n {...button}\n size='lg'\n key={index}\n disabled={disabled}\n className={cn(\n 'w-full whitespace-nowrap',\n {\n ['desktop:!w-fit']: buttonGroup.length === 1\n },\n {\n 'w-full': Boolean(approvement)\n },\n classes?.submit\n )}\n />\n )\n })}\n </div>\n </div>\n {!ssoAuthorizationTop && withAuthProvider(auth)}\n </form>\n </ResponsiveContainer>\n </section>\n </QueryClientProvider>\n )\n}\n\nexport default DynamicForm\n"],"names":["withApprovement","approvement","checked","onCheckedChange","classes","jsx","HTMLRenderer","jsxs","cn","CheckboxBase","withAuthProvider","auth","AuthProvider","DynamicForm","fields","title","progress","chips","submitProps","buttonGroup","ssoAuthorizationTop","submitCallback","useState","schema","getDynamicSchema","defaultValues","ZodUtils","control","handleSubmit","useControlledForm","fieldsProgress","getFieldsProgress","formattedProgress","useFieldsProgress","onSubmit","values","QueryClientProvider","widgetIds","ResponsiveContainer","_a","Icon","_b","Heading","ProgressBar","FieldMapper","button","index","disabled","createElement","Button"],"mappings":"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"}