@scbt-ecom/ui 0.0.30 → 0.0.32

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 (324) hide show
  1. package/dist/client.d.ts +2 -0
  2. package/dist/client.js +921 -0
  3. package/dist/cn-uh4jkx7b.js +2892 -0
  4. package/dist/configs/index.d.ts +1 -0
  5. package/dist/configs/tailwindConfigBase.d.ts +2 -0
  6. package/dist/server.d.ts +2 -0
  7. package/dist/server.js +15 -0
  8. package/dist/shared/constants/api.d.ts +2 -0
  9. package/dist/shared/constants/designSystem/colors.d.ts +120 -0
  10. package/dist/shared/constants/designSystem/index.d.ts +3 -0
  11. package/dist/shared/constants/designSystem/others.d.ts +16 -0
  12. package/dist/shared/constants/designSystem/typography.d.ts +75 -0
  13. package/dist/shared/constants/index.d.ts +2 -0
  14. package/dist/shared/hooks/index.d.ts +4 -0
  15. package/dist/shared/hooks/useBoolean.d.ts +3 -0
  16. package/dist/shared/hooks/useClickOutside.d.ts +2 -0
  17. package/dist/shared/hooks/useControlledForm.d.ts +7 -0
  18. package/dist/shared/hooks/useDebounce.d.ts +3 -0
  19. package/dist/shared/ui/Badge.d.ts +6 -0
  20. package/dist/shared/ui/Breadcrumbs.d.ts +15 -0
  21. package/dist/shared/ui/ButtonIcon.d.ts +17 -0
  22. package/dist/shared/ui/CustomLink.d.ts +15 -0
  23. package/dist/shared/ui/Document.d.ts +13 -0
  24. package/dist/shared/ui/Heading.d.ts +12 -0
  25. package/dist/shared/ui/Hint.d.ts +21 -0
  26. package/dist/shared/ui/Loader.d.ts +21 -0
  27. package/dist/shared/ui/PhoneView.d.ts +12 -0
  28. package/dist/shared/ui/Portal.d.ts +7 -0
  29. package/dist/shared/ui/ProgressBar.d.ts +18 -0
  30. package/dist/shared/ui/ResponsiveContainer.d.ts +6 -0
  31. package/dist/shared/ui/Section.d.ts +6 -0
  32. package/dist/shared/ui/Skeleton.d.ts +4 -0
  33. package/dist/shared/ui/TabsSwitcher.d.ts +33 -0
  34. package/dist/shared/ui/accordion/Accordion.d.ts +13 -0
  35. package/dist/shared/ui/accordion/index.d.ts +1 -0
  36. package/dist/shared/ui/accordion/model/types.d.ts +17 -0
  37. package/dist/shared/ui/accordion/ui/AccordionHeader.d.ts +8 -0
  38. package/dist/shared/ui/brandLogos.d.ts +5 -0
  39. package/dist/shared/ui/button/Button.d.ts +17 -0
  40. package/dist/shared/ui/button/index.d.ts +1 -0
  41. package/dist/shared/ui/button/model/helpers.d.ts +2 -0
  42. package/dist/shared/ui/calendar/Calendar.d.ts +20 -0
  43. package/dist/shared/ui/calendar/index.d.ts +1 -0
  44. package/dist/shared/ui/calendar/model/animation.d.ts +18 -0
  45. package/dist/shared/ui/calendar/model/classes.d.ts +24 -0
  46. package/dist/shared/ui/calendar/model/helpers.d.ts +9 -0
  47. package/dist/shared/ui/calendar/model/hooks/index.d.ts +2 -0
  48. package/dist/shared/ui/calendar/model/hooks/useCalendarDropdowns.d.ts +9 -0
  49. package/dist/shared/ui/calendar/model/hooks/useDatePicker.d.ts +19 -0
  50. package/dist/shared/ui/calendar/ui/CalendarHeader.d.ts +15 -0
  51. package/dist/shared/ui/calendar/ui/Dropdown.d.ts +10 -0
  52. package/dist/shared/ui/calendar/ui/NavigationArrows.d.ts +5 -0
  53. package/dist/shared/ui/calendar/ui/Weekdays.d.ts +1 -0
  54. package/dist/shared/ui/calendar/ui/index.d.ts +2 -0
  55. package/dist/shared/ui/formControlElements/CheckboxControl.d.ts +13 -0
  56. package/dist/shared/ui/formControlElements/FormControl.d.ts +3 -0
  57. package/dist/shared/ui/formControlElements/InputControl.d.ts +6 -0
  58. package/dist/shared/ui/formControlElements/InputControlMask.d.ts +10 -0
  59. package/dist/shared/ui/formControlElements/RadioControl.d.ts +26 -0
  60. package/dist/shared/ui/formControlElements/SelectControl.d.ts +27 -0
  61. package/dist/shared/ui/formControlElements/SwitchControl.d.ts +16 -0
  62. package/dist/shared/ui/formControlElements/TextareaControl.d.ts +11 -0
  63. package/dist/shared/ui/formControlElements/calendarControl/CalendarControl.d.ts +13 -0
  64. package/dist/shared/ui/formControlElements/calendarControl/hooks/index.d.ts +2 -0
  65. package/dist/shared/ui/formControlElements/calendarControl/hooks/useCalendar.d.ts +16 -0
  66. package/dist/shared/ui/formControlElements/calendarControl/hooks/useCalendarDropdowns.d.ts +9 -0
  67. package/{lib/shared/ui/formControlElements/calendarControl/index.ts → dist/shared/ui/formControlElements/calendarControl/index.d.ts} +1 -1
  68. package/dist/shared/ui/formControlElements/calendarControl/model/helpers.d.ts +24 -0
  69. package/dist/shared/ui/formControlElements/calendarControl/model/types.d.ts +33 -0
  70. package/dist/shared/ui/formControlElements/calendarControl/ui/DaysOfMonth.d.ts +10 -0
  71. package/dist/shared/ui/formControlElements/calendarControl/ui/DaysOfWeek.d.ts +6 -0
  72. package/dist/shared/ui/formControlElements/calendarControl/ui/Dropdown.d.ts +11 -0
  73. package/dist/shared/ui/formControlElements/calendarControl/ui/Header.d.ts +14 -0
  74. package/dist/shared/ui/formControlElements/calendarControl/ui/Navigation.d.ts +9 -0
  75. package/dist/shared/ui/formControlElements/calendarControl/ui/OptionsList.d.ts +5 -0
  76. package/dist/shared/ui/formControlElements/calendarControl/ui/index.d.ts +4 -0
  77. package/dist/shared/ui/formControlElements/dadata/DadataInputControl.d.ts +14 -0
  78. package/{lib/shared/ui/formControlElements/dadata/index.ts → dist/shared/ui/formControlElements/dadata/index.d.ts} +1 -1
  79. package/dist/shared/ui/formControlElements/dadata/model/api.d.ts +2 -0
  80. package/dist/shared/ui/formControlElements/dadata/model/helpers.d.ts +7 -0
  81. package/dist/shared/ui/formControlElements/dadata/model/types.d.ts +42 -0
  82. package/dist/shared/ui/formControlElements/dadata/model/useDadata.d.ts +7 -0
  83. package/{lib/shared/ui/formControlElements/index.ts → dist/shared/ui/formControlElements/index.d.ts} +10 -10
  84. package/dist/shared/ui/formControlElements/model/classes-types.d.ts +18 -0
  85. package/dist/shared/ui/formControlElements/model/index.d.ts +2 -0
  86. package/dist/shared/ui/formControlElements/model/props-types.d.ts +20 -0
  87. package/dist/shared/ui/formControlElements/ui/FieldAttachment.d.ts +13 -0
  88. package/dist/shared/ui/formControlElements/ui/FieldContainer.d.ts +14 -0
  89. package/dist/shared/ui/formControlElements/ui/FieldWrapper.d.ts +14 -0
  90. package/dist/shared/ui/formControlElements/ui/MessageView.d.ts +13 -0
  91. package/dist/shared/ui/formControlElements/ui/index.d.ts +4 -0
  92. package/dist/shared/ui/icon/Icon.d.ts +10 -0
  93. package/{lib/shared/ui/icon/index.ts → dist/shared/ui/icon/index.d.ts} +2 -2
  94. package/dist/shared/ui/icon/sprite.gen.d.ts +17 -0
  95. package/dist/shared/ui/index.d.ts +21 -0
  96. package/dist/shared/ui/popover/Popover.d.ts +23 -0
  97. package/dist/shared/ui/popover/index.d.ts +1 -0
  98. package/dist/shared/ui/table/Table.d.ts +17 -0
  99. package/dist/shared/ui/table/index.d.ts +1 -0
  100. package/dist/shared/ui/table/type.d.ts +21 -0
  101. package/dist/shared/utils/capitalize.d.ts +1 -0
  102. package/dist/shared/utils/cn.d.ts +2 -0
  103. package/dist/shared/utils/deepCompare.d.ts +1 -0
  104. package/dist/shared/utils/formatToDate.d.ts +1 -0
  105. package/dist/shared/utils/index.d.ts +5 -0
  106. package/dist/shared/utils/isClient.d.ts +1 -0
  107. package/dist/shared/validation/index.d.ts +3 -0
  108. package/dist/shared/validation/messages.d.ts +12 -0
  109. package/dist/shared/validation/regExp.d.ts +3 -0
  110. package/dist/shared/validation/zodValidation/calendar.d.ts +2 -0
  111. package/dist/shared/validation/zodValidation/dadataFio.d.ts +6 -0
  112. package/dist/shared/validation/zodValidation/index.d.ts +2 -0
  113. package/dist/widgets/Advantages.d.ts +17 -0
  114. package/dist/widgets/banner/Banner.d.ts +28 -0
  115. package/dist/widgets/banner/index.d.ts +1 -0
  116. package/dist/widgets/banner/model/helpers.d.ts +4 -0
  117. package/dist/widgets/banner/ui/BannerButtonsGroup.d.ts +12 -0
  118. package/{lib/widgets/index.ts → dist/widgets/index.d.ts} +3 -3
  119. package/dist/widgets/pageHeader/PageHeader.d.ts +16 -0
  120. package/{lib/widgets/pageHeader/index.ts → dist/widgets/pageHeader/index.d.ts} +1 -1
  121. package/package.json +8 -5
  122. package/.env +0 -2
  123. package/.eslintrc.cjs +0 -134
  124. package/.github/workflows/npm-publish.yml +0 -22
  125. package/.github/workflows/publish.yml +0 -49
  126. package/.github/workflows/setup-node/action.yml +0 -22
  127. package/.husky/pre-commit +0 -1
  128. package/.prettierrc +0 -19
  129. package/.storybook/main.ts +0 -44
  130. package/.storybook/preview.tsx +0 -37
  131. package/chromatic.config.json +0 -5
  132. package/index.html +0 -13
  133. package/lib/client.ts +0 -80
  134. package/lib/configs/index.ts +0 -1
  135. package/lib/configs/tailwindConfigBase.ts +0 -110
  136. package/lib/server.ts +0 -2
  137. package/lib/shared/constants/api.ts +0 -2
  138. package/lib/shared/constants/designSystem/colors.ts +0 -117
  139. package/lib/shared/constants/designSystem/index.ts +0 -3
  140. package/lib/shared/constants/designSystem/others.ts +0 -18
  141. package/lib/shared/constants/designSystem/typography.ts +0 -88
  142. package/lib/shared/constants/index.ts +0 -2
  143. package/lib/shared/hooks/index.ts +0 -4
  144. package/lib/shared/hooks/useBoolean.ts +0 -12
  145. package/lib/shared/hooks/useClickOutside.ts +0 -19
  146. package/lib/shared/hooks/useControlledForm.ts +0 -16
  147. package/lib/shared/hooks/useDebounce.ts +0 -38
  148. package/lib/shared/style.css +0 -74
  149. package/lib/shared/ui/Badge.tsx +0 -20
  150. package/lib/shared/ui/Breadcrumbs.tsx +0 -57
  151. package/lib/shared/ui/ButtonIcon.tsx +0 -52
  152. package/lib/shared/ui/CustomLink.tsx +0 -70
  153. package/lib/shared/ui/Document.tsx +0 -51
  154. package/lib/shared/ui/Heading.tsx +0 -33
  155. package/lib/shared/ui/Hint.tsx +0 -62
  156. package/lib/shared/ui/Loader.tsx +0 -58
  157. package/lib/shared/ui/PhoneView.tsx +0 -23
  158. package/lib/shared/ui/Portal.tsx +0 -9
  159. package/lib/shared/ui/ProgressBar.tsx +0 -43
  160. package/lib/shared/ui/ResponsiveContainer.tsx +0 -11
  161. package/lib/shared/ui/Section.tsx +0 -15
  162. package/lib/shared/ui/Skeleton.tsx +0 -9
  163. package/lib/shared/ui/TabsSwitcher.tsx +0 -80
  164. package/lib/shared/ui/accordion/Accordion.tsx +0 -36
  165. package/lib/shared/ui/accordion/index.ts +0 -1
  166. package/lib/shared/ui/accordion/model/types.ts +0 -20
  167. package/lib/shared/ui/accordion/ui/AccordionHeader.tsx +0 -35
  168. package/lib/shared/ui/brandLogos.tsx +0 -14
  169. package/lib/shared/ui/button/Button.tsx +0 -111
  170. package/lib/shared/ui/button/index.ts +0 -1
  171. package/lib/shared/ui/button/model/helpers.ts +0 -16
  172. package/lib/shared/ui/calendar/Calendar.tsx +0 -228
  173. package/lib/shared/ui/calendar/index.ts +0 -231
  174. package/lib/shared/ui/calendar/model/animation.ts +0 -112
  175. package/lib/shared/ui/calendar/model/classes.ts +0 -34
  176. package/lib/shared/ui/calendar/model/helpers.ts +0 -51
  177. package/lib/shared/ui/calendar/model/hooks/index.ts +0 -2
  178. package/lib/shared/ui/calendar/model/hooks/useCalendarDropdowns.ts +0 -38
  179. package/lib/shared/ui/calendar/model/hooks/useDatePicker.ts +0 -103
  180. package/lib/shared/ui/calendar/ui/CalendarHeader.tsx +0 -54
  181. package/lib/shared/ui/calendar/ui/Dropdown.tsx +0 -75
  182. package/lib/shared/ui/calendar/ui/NavigationArrows.tsx +0 -23
  183. package/lib/shared/ui/calendar/ui/Weekdays.tsx +0 -16
  184. package/lib/shared/ui/calendar/ui/index.ts +0 -2
  185. package/lib/shared/ui/formControlElements/CheckboxControl.tsx +0 -92
  186. package/lib/shared/ui/formControlElements/FormControl.tsx +0 -5
  187. package/lib/shared/ui/formControlElements/InputControl.tsx +0 -68
  188. package/lib/shared/ui/formControlElements/InputControlMask.tsx +0 -80
  189. package/lib/shared/ui/formControlElements/RadioControl.tsx +0 -130
  190. package/lib/shared/ui/formControlElements/SelectControl.tsx +0 -185
  191. package/lib/shared/ui/formControlElements/SwitchControl.tsx +0 -79
  192. package/lib/shared/ui/formControlElements/TextareaControl.tsx +0 -92
  193. package/lib/shared/ui/formControlElements/calendarControl/CalendarControl.tsx +0 -175
  194. package/lib/shared/ui/formControlElements/calendarControl/hooks/index.ts +0 -2
  195. package/lib/shared/ui/formControlElements/calendarControl/hooks/useCalendar.tsx +0 -86
  196. package/lib/shared/ui/formControlElements/calendarControl/hooks/useCalendarDropdowns.ts +0 -38
  197. package/lib/shared/ui/formControlElements/calendarControl/model/helpers.ts +0 -60
  198. package/lib/shared/ui/formControlElements/calendarControl/model/types.ts +0 -44
  199. package/lib/shared/ui/formControlElements/calendarControl/ui/DaysOfMonth.tsx +0 -53
  200. package/lib/shared/ui/formControlElements/calendarControl/ui/DaysOfWeek.tsx +0 -28
  201. package/lib/shared/ui/formControlElements/calendarControl/ui/Dropdown.tsx +0 -62
  202. package/lib/shared/ui/formControlElements/calendarControl/ui/Header.tsx +0 -51
  203. package/lib/shared/ui/formControlElements/calendarControl/ui/Navigation.tsx +0 -32
  204. package/lib/shared/ui/formControlElements/calendarControl/ui/OptionsList.tsx +0 -44
  205. package/lib/shared/ui/formControlElements/calendarControl/ui/index.ts +0 -4
  206. package/lib/shared/ui/formControlElements/dadata/DadataInputControl.tsx +0 -132
  207. package/lib/shared/ui/formControlElements/dadata/model/api.ts +0 -25
  208. package/lib/shared/ui/formControlElements/dadata/model/helpers.ts +0 -76
  209. package/lib/shared/ui/formControlElements/dadata/model/types.ts +0 -52
  210. package/lib/shared/ui/formControlElements/dadata/model/useDadata.ts +0 -25
  211. package/lib/shared/ui/formControlElements/model/classes-types.ts +0 -22
  212. package/lib/shared/ui/formControlElements/model/index.ts +0 -2
  213. package/lib/shared/ui/formControlElements/model/props-types.ts +0 -26
  214. package/lib/shared/ui/formControlElements/ui/FieldAttachment.tsx +0 -66
  215. package/lib/shared/ui/formControlElements/ui/FieldContainer.tsx +0 -36
  216. package/lib/shared/ui/formControlElements/ui/FieldWrapper.tsx +0 -55
  217. package/lib/shared/ui/formControlElements/ui/MessageView.tsx +0 -37
  218. package/lib/shared/ui/formControlElements/ui/index.ts +0 -4
  219. package/lib/shared/ui/icon/Icon.tsx +0 -43
  220. package/lib/shared/ui/icon/sprite.gen.ts +0 -121
  221. package/lib/shared/ui/index.ts +0 -56
  222. package/lib/shared/ui/popover/Popover.tsx +0 -77
  223. package/lib/shared/ui/popover/index.ts +0 -1
  224. package/lib/shared/ui/table/Table.tsx +0 -143
  225. package/lib/shared/ui/table/index.ts +0 -1
  226. package/lib/shared/ui/table/type.ts +0 -30
  227. package/lib/shared/utils/capitalize.ts +0 -6
  228. package/lib/shared/utils/cn.ts +0 -6
  229. package/lib/shared/utils/deepCompare.ts +0 -1
  230. package/lib/shared/utils/formatToDate.ts +0 -5
  231. package/lib/shared/utils/index.ts +0 -5
  232. package/lib/shared/utils/isClient.ts +0 -1
  233. package/lib/shared/validation/index.ts +0 -3
  234. package/lib/shared/validation/messages.ts +0 -12
  235. package/lib/shared/validation/regExp.ts +0 -5
  236. package/lib/shared/validation/zodValidation/calendar.ts +0 -32
  237. package/lib/shared/validation/zodValidation/dadataFio.ts +0 -67
  238. package/lib/shared/validation/zodValidation/index.ts +0 -2
  239. package/lib/vite-env.d.ts +0 -2
  240. package/lib/widgets/Advantages.tsx +0 -45
  241. package/lib/widgets/banner/Banner.tsx +0 -62
  242. package/lib/widgets/banner/index.ts +0 -1
  243. package/lib/widgets/banner/model/helpers.ts +0 -44
  244. package/lib/widgets/banner/money.png +0 -0
  245. package/lib/widgets/banner/ui/BannerButtonsGroup.tsx +0 -30
  246. package/lib/widgets/pageHeader/PageHeader.tsx +0 -54
  247. package/postcss.config.mjs +0 -8
  248. package/src/App.tsx +0 -9
  249. package/src/app/providers/RootProvider.tsx +0 -11
  250. package/src/app/providers/index.ts +0 -1
  251. package/src/app/providers/model/types.ts +0 -5
  252. package/src/app/providers/ui/ToasterProvider.tsx +0 -23
  253. package/src/app/providers/ui/index.ts +0 -1
  254. package/src/configs/setup.ts +0 -9
  255. package/src/configs/storybook.config.ts +0 -23
  256. package/src/main.tsx +0 -10
  257. package/src/stories/primitives/Accordion.stories.tsx +0 -66
  258. package/src/stories/primitives/Badge.stories.tsx +0 -28
  259. package/src/stories/primitives/Breadcrumbs.stories.tsx +0 -29
  260. package/src/stories/primitives/Button/Button.stories.tsx +0 -149
  261. package/src/stories/primitives/Button/Button.test.tsx +0 -150
  262. package/src/stories/primitives/ButtonIcon.stories.tsx +0 -75
  263. package/src/stories/primitives/CustomLink.stories.tsx +0 -64
  264. package/src/stories/primitives/Document.stories.tsx +0 -36
  265. package/src/stories/primitives/Heading.stories.tsx +0 -29
  266. package/src/stories/primitives/Hint.stories.tsx +0 -82
  267. package/src/stories/primitives/Icon.stories.tsx +0 -36
  268. package/src/stories/primitives/Loader.stories.tsx +0 -39
  269. package/src/stories/primitives/PhoneView.stories.tsx +0 -22
  270. package/src/stories/primitives/Popover.stories.tsx +0 -41
  271. package/src/stories/primitives/ProgressBar.stories.tsx +0 -68
  272. package/src/stories/primitives/Skeleton.stories.tsx +0 -21
  273. package/src/stories/primitives/Table.stories.tsx +0 -44
  274. package/src/stories/primitives/TabsSwitcher.stories.tsx +0 -34
  275. package/src/stories/primitives/formControl/Calendar.stories.tsx +0 -61
  276. package/src/stories/primitives/formControl/CalendarControl.stories.tsx +0 -39
  277. package/src/stories/primitives/formControl/CheckboxControl.stories.tsx +0 -64
  278. package/src/stories/primitives/formControl/DadataInputControl.stories.tsx +0 -83
  279. package/src/stories/primitives/formControl/FormControlAllFields.stories.tsx +0 -25
  280. package/src/stories/primitives/formControl/InputControl.stories.tsx +0 -77
  281. package/src/stories/primitives/formControl/RadioContol.stories.tsx +0 -63
  282. package/src/stories/primitives/formControl/SelectControl.stories.tsx +0 -117
  283. package/src/stories/primitives/formControl/SwitchControl.stories.tsx +0 -51
  284. package/src/stories/primitives/formControl/TextareaControl.stories.tsx +0 -55
  285. package/src/stories/primitives/formControl/inputControlMask.stories.tsx +0 -69
  286. package/src/stories/widgets/Advantages.stories.tsx +0 -42
  287. package/src/stories/widgets/Banner.stories.tsx +0 -40
  288. package/src/stories/widgets/PageHeader.stories.tsx +0 -33
  289. package/src/storybookHelpers/actions.tsx +0 -5
  290. package/src/storybookHelpers/index.ts +0 -2
  291. package/src/storybookHelpers/reactHookForm/index.ts +0 -3
  292. package/src/storybookHelpers/reactHookForm/model/mockData.ts +0 -21
  293. package/src/storybookHelpers/reactHookForm/model/mocks.tsx +0 -71
  294. package/src/storybookHelpers/reactHookForm/model/types.ts +0 -62
  295. package/src/storybookHelpers/reactHookForm/ui/StorybookFieldsMapper.tsx +0 -76
  296. package/src/storybookHelpers/reactHookForm/ui/StorybookFormProvider.tsx +0 -43
  297. package/src/storybookHelpers/reactHookForm/ui/index.ts +0 -2
  298. package/src/storybookHelpers/table/utils/defaultValue.ts +0 -51
  299. package/static/arrows/arrowCircle.svg +0 -18
  300. package/static/arrows/arrowLink.svg +0 -3
  301. package/static/arrows/arrowRight.svg +0 -3
  302. package/static/brandLogos/logoBlack.svg +0 -14
  303. package/static/brandLogos/logoBusiness.svg +0 -80
  304. package/static/brandLogos/logoGray.svg +0 -56
  305. package/static/brandLogos/logoInsurance.svg +0 -124
  306. package/static/brandLogos/logoMain.svg +0 -14
  307. package/static/brandLogos/logoWhite.svg +0 -56
  308. package/static/files/documentFilled.svg +0 -4
  309. package/static/files/documentOutline.svg +0 -4
  310. package/static/general/calendar.svg +0 -3
  311. package/static/general/check.svg +0 -6
  312. package/static/general/close.svg +0 -12
  313. package/static/info/warningCircle.svg +0 -5
  314. package/tailwind.config.ts +0 -9
  315. package/tsconfig.json +0 -33
  316. package/tsconfig.node.json +0 -11
  317. package/vite.config.ts +0 -63
  318. package/vitest.config.mjs +0 -12
  319. /package/{public → dist}/sprites/arrows.svg +0 -0
  320. /package/{public → dist}/sprites/brandLogos.svg +0 -0
  321. /package/{public → dist}/sprites/common.svg +0 -0
  322. /package/{public → dist}/sprites/files.svg +0 -0
  323. /package/{public → dist}/sprites/general.svg +0 -0
  324. /package/{public → dist}/sprites/info.svg +0 -0
@@ -1,68 +0,0 @@
1
- 'use client'
2
-
3
- import * as React from 'react'
4
- import { Controller, type FieldValues } from 'react-hook-form'
5
- import type { TAdditionalInputClassesWithAttachment, TControlledInputProps, TInputCommonProps } from './model'
6
- import { FieldAttachment, FieldContainer, FieldWrapper, MessageView } from './ui'
7
- import { cn } from '$/shared/utils'
8
-
9
- export interface InputControlProps<T extends FieldValues> extends TControlledInputProps<T>, TInputCommonProps {
10
- classes?: Partial<TAdditionalInputClassesWithAttachment>
11
- }
12
-
13
- export const InputControl = <T extends FieldValues>({
14
- label,
15
- size = 'full',
16
- helperText,
17
- control,
18
- classes,
19
- badge,
20
- icon,
21
- swapPosition,
22
- disabled,
23
- ...props
24
- }: InputControlProps<T>) => {
25
- const inputId = React.useId()
26
- return (
27
- <Controller
28
- control={control}
29
- name={props.name}
30
- render={({ field: { onChange, ref, value }, fieldState: { error } }) => (
31
- <FieldContainer size={size} classes={classes}>
32
- <FieldWrapper
33
- fieldId={inputId}
34
- label={label}
35
- classes={classes}
36
- disabled={disabled}
37
- value={value}
38
- error={!!error?.message}
39
- >
40
- <>
41
- <input
42
- aria-invalid={error?.message ? 'true' : 'false'}
43
- ref={ref}
44
- className={cn(
45
- 'w-full h-[56px] desk-body-regular-l text-color-dark transition-all bg-color-transparent outline-none pt-5 px-4 rounded-md',
46
- classes?.input
47
- )}
48
- id={inputId}
49
- value={value}
50
- onChange={onChange}
51
- disabled={disabled}
52
- {...props}
53
- />
54
- <FieldAttachment badge={badge} icon={icon} error={!!error?.message} classes={classes} swapPosition={swapPosition} />
55
- </>
56
- </FieldWrapper>
57
-
58
- <MessageView
59
- className={cn(classes?.message)}
60
- intent={error?.message ? 'error' : 'simple'}
61
- text={error?.message || helperText}
62
- disabled={disabled}
63
- />
64
- </FieldContainer>
65
- )}
66
- />
67
- )
68
- }
@@ -1,80 +0,0 @@
1
- 'use client'
2
-
3
- import * as React from 'react'
4
- import { Controller, type FieldValues } from 'react-hook-form'
5
- import { PatternFormat } from 'react-number-format'
6
- import type { TAdditionalInputClassesWithAttachment, TControlledInputProps, TInputCommonProps } from './model'
7
- import { FieldAttachment, FieldWrapper, MessageView } from './ui'
8
- import { FieldContainer } from './ui/FieldContainer'
9
- import { cn } from '$/shared/utils'
10
-
11
- export interface InputControlMaskProps<T extends FieldValues> extends TControlledInputProps<T>, TInputCommonProps {
12
- format: string
13
- mask?: string | string[]
14
- allowEmptyFormatting?: boolean
15
- onInputChange?: (arg?: string) => void
16
- classes?: Partial<TAdditionalInputClassesWithAttachment>
17
- }
18
-
19
- export const InputControlMask = <T extends FieldValues>({
20
- format,
21
- allowEmptyFormatting = false,
22
- mask = '',
23
- control,
24
- onInputChange,
25
- size = 'full',
26
- helperText,
27
- label,
28
- classes,
29
- disabled,
30
- badge,
31
- icon,
32
- swapPosition,
33
- ...props
34
- }: InputControlMaskProps<T>) => {
35
- const inputId = React.useId()
36
- return (
37
- <Controller
38
- control={control}
39
- name={props.name}
40
- render={({ field: { onChange, value }, fieldState: { error } }) => (
41
- <FieldContainer size={size} classes={classes}>
42
- <FieldWrapper
43
- fieldId={inputId}
44
- label={label}
45
- classes={classes}
46
- disabled={disabled}
47
- value={value}
48
- error={!!error?.message}
49
- >
50
- <>
51
- <PatternFormat
52
- value={value?.toString()}
53
- className={cn(
54
- 'w-full h-[56px] desk-body-regular-l text-color-dark transition-all bg-color-transparent outline-none pt-5 px-4 rounded-md',
55
- classes?.input
56
- )}
57
- format={format}
58
- allowEmptyFormatting={allowEmptyFormatting}
59
- mask={mask}
60
- onChange={(e) => {
61
- onChange(e)
62
- if (onInputChange) {
63
- onInputChange(e.target.value)
64
- }
65
- }}
66
- {...props}
67
- />
68
- <FieldAttachment badge={badge} icon={icon} error={!!error?.message} classes={classes} swapPosition={swapPosition} />
69
- </>
70
- </FieldWrapper>
71
- <MessageView
72
- className={cn(classes?.message)}
73
- intent={error?.message ? 'error' : 'simple'}
74
- text={error?.message || helperText}
75
- />
76
- </FieldContainer>
77
- )}
78
- />
79
- )
80
- }
@@ -1,130 +0,0 @@
1
- 'use client'
2
-
3
- import { Controller, type FieldValues } from 'react-hook-form'
4
- import { Indicator, Item, Root } from '@radix-ui/react-radio-group'
5
- import { cva, type VariantProps } from 'class-variance-authority'
6
- import type { TAdditionalInputPrimitiveClasses, TControlledInputPrimitiveProps } from './model'
7
- import { MessageView } from './ui'
8
- import { cn } from '$/shared/utils'
9
-
10
- const radioOptionsConfig = cva('flex gap-2', {
11
- variants: {
12
- orientation: {
13
- horizontal: '',
14
- vertical: 'flex-col'
15
- }
16
- },
17
- defaultVariants: {
18
- orientation: 'vertical'
19
- }
20
- })
21
-
22
- type TRadioClasses = Partial<TAdditionalInputPrimitiveClasses> & {
23
- groupName?: string
24
- radioGroup?: string
25
- radioOption?: string
26
- indicator?: string
27
- }
28
-
29
- export interface IRadioGroupOption {
30
- label: string
31
- value: string
32
- isDisabled?: boolean
33
- }
34
-
35
- type TRadioOptionsConfig = VariantProps<typeof radioOptionsConfig>
36
-
37
- export interface IRadioControlProps<T extends FieldValues>
38
- extends TRadioOptionsConfig,
39
- Omit<TControlledInputPrimitiveProps<T>, 'label'> {
40
- radioItemsGroup: IRadioGroupOption[]
41
- groupName?: string
42
- classes?: TRadioClasses
43
- label?: never
44
- }
45
-
46
- export const RadioControl = <T extends FieldValues>({
47
- radioItemsGroup,
48
- control,
49
- groupName,
50
- helperText,
51
- disabled,
52
- classes,
53
- orientation,
54
- ...props
55
- }: IRadioControlProps<T>) => {
56
- return (
57
- <Controller
58
- name={props.name}
59
- control={control}
60
- render={({ field: { onChange, value: controlledValue, ref, name }, fieldState: { error } }) => {
61
- return (
62
- <div className={cn('max-w-max flex flex-col gap-4', classes?.container)}>
63
- {groupName && <span className={cn('desk-body-regular-l text-color-dark', classes?.groupName)}>{groupName}</span>}
64
- <div className={cn('flex flex-col', classes?.field)}>
65
- <Root
66
- onValueChange={onChange}
67
- name={name}
68
- value={controlledValue}
69
- ref={ref}
70
- className={cn(radioOptionsConfig({ orientation }), classes?.radioGroup)}
71
- defaultValue={controlledValue}
72
- >
73
- {radioItemsGroup.map(({ label, value, isDisabled }) => (
74
- <div key={value} className={cn('flex gap-2 items-center', classes?.radioOption)}>
75
- <div
76
- className={cn(
77
- 'size-10 flex items-center justify-center rounded-full transition-all hover:bg-color-primary-tr-hover focus-within:bg-color-primary-tr-focus',
78
- classes?.field,
79
- { '!bg-color-transparent': isDisabled }
80
- )}
81
- >
82
- <Item
83
- disabled={isDisabled}
84
- className={cn(
85
- 'relative size-6 bg-color-transparent rounded-full border-2 border-solid data-[state=unchecked]:border-blue-grey-700 data-[state=checked]:border-primary-default outline-none cursor-pointer transition-all',
86
- {
87
- 'data-[state=checked]:!border-primary-disabled data-[state=unchecked]:bg-color-blue-grey-300 data-[state=unchecked]:border-transparent':
88
- isDisabled
89
- },
90
- { '!border-negative': !!error?.message },
91
- classes?.input
92
- )}
93
- value={value}
94
- id={value}
95
- >
96
- <Indicator
97
- className={cn(
98
- 'flex items-center justify-center w-full h-full relative after:content-[" "] after:block after:size-3 after:rounded-full after:bg-color-primary-default',
99
- { 'after:bg-color-primary-disabled': isDisabled },
100
- classes?.indicator
101
- )}
102
- />
103
- </Item>
104
- </div>
105
- <label
106
- className={cn(
107
- 'cursor-pointer desk-body-regular-l text-color-dark',
108
- { 'text-color-disabled': isDisabled },
109
- classes?.label
110
- )}
111
- htmlFor={value}
112
- >
113
- {label}
114
- </label>
115
- </div>
116
- ))}
117
- </Root>
118
- <MessageView
119
- className={cn(classes?.message)}
120
- intent={error?.message ? 'error' : 'simple'}
121
- text={error?.message || helperText}
122
- disabled={disabled}
123
- />
124
- </div>
125
- </div>
126
- )
127
- }}
128
- />
129
- )
130
- }
@@ -1,185 +0,0 @@
1
- 'use client'
2
-
3
- import { Controller, type FieldValues } from 'react-hook-form'
4
- import { Listbox, ListboxButton, ListboxOption, ListboxOptions } from '@headlessui/react'
5
- import { Icon } from '../icon'
6
- import { type TControlledInputProps } from './model'
7
- import { FieldContainer, MessageView } from './ui'
8
- import { cn } from '$/shared/utils'
9
-
10
- interface ISelectControlClasses {
11
- trigger: string
12
- options: string
13
- scrollArea: string
14
- option: string
15
- icon: string
16
- message: string
17
- value: string
18
- label: string
19
- }
20
-
21
- export interface ISelectOption {
22
- id: string
23
- optionValue: string
24
- isDisabled?: boolean
25
- }
26
-
27
- type TRenderSelectedValue = {
28
- multiple: boolean
29
- controlledValue: string | string[]
30
- label: string
31
- isClearIntent: boolean
32
- disabled?: boolean
33
- classes?: Partial<ISelectControlClasses>
34
- }
35
-
36
- export interface ISelectControlProps<T extends FieldValues> extends TControlledInputProps<T> {
37
- classes?: Partial<ISelectControlClasses>
38
- optionsList: ISelectOption[]
39
- label: string
40
- multiple?: boolean
41
- intent?: 'filled' | 'clear'
42
- disabled?: boolean
43
- }
44
-
45
- const renderSelectedValue = ({ multiple, controlledValue, label, isClearIntent, disabled, classes }: TRenderSelectedValue) => {
46
- const labelElement = (
47
- <div
48
- className={cn(
49
- 'text-color-blue-grey-600 desk-body-regular-l transition-colors',
50
- { 'group-data-[hover]:!text-color-primary-hover ': isClearIntent },
51
- { '!text-color-disabled': disabled },
52
- classes?.label
53
- )}
54
- >
55
- {label}
56
- </div>
57
- )
58
-
59
- // if (multiple) {
60
- // if (Array.isArray(controlledValue) && controlledValue.length > 0) {
61
- // return <div className={cn('text-color-dark flex-1', classes?.value)}>{controlledValue.join('; ')}</div>
62
- // }
63
- // return labelElement
64
- // }
65
-
66
- if (multiple) {
67
- if (Array.isArray(controlledValue) && controlledValue.length > 0) {
68
- return (
69
- <div className='flex items-center gap-2 flex-wrap'>
70
- {controlledValue.map((value) => (
71
- <div className={cn('text-color-dark w-max bg-color-blue-grey-300 rounded-sm py-1 px-2', classes?.value)}>{value}</div>
72
- ))}
73
- </div>
74
- )
75
- }
76
- return labelElement
77
- }
78
-
79
- if (controlledValue) {
80
- return <div className={cn('text-color-dark flex-1', classes?.value)}>{controlledValue}</div>
81
- }
82
- return labelElement
83
- }
84
-
85
- export const SelectControl = <T extends FieldValues>({
86
- size,
87
- control,
88
- helperText,
89
- disabled,
90
- classes,
91
- optionsList,
92
- label,
93
- multiple = false,
94
- intent = 'filled',
95
- ...props
96
- }: ISelectControlProps<T>) => {
97
- return (
98
- <Controller
99
- control={control}
100
- name={props.name}
101
- render={({ field: { onChange, name, value: controlledValue }, fieldState: { error } }) => {
102
- const selectedValues: ISelectOption[] = Array.isArray(controlledValue) ? controlledValue : []
103
- const isClearIntent = intent === 'clear'
104
-
105
- return (
106
- <FieldContainer size={size} intent={intent}>
107
- <Listbox
108
- disabled={disabled}
109
- value={multiple ? selectedValues : controlledValue}
110
- onChange={onChange}
111
- name={name}
112
- multiple={multiple}
113
- >
114
- <ListboxButton
115
- className={cn(
116
- 'h-[56px] outline outline-1 outline-transparent bg-color-blue-grey-100 p-4 rounded-sm flex items-center justify-between data-[hover]:bg-color-blue-grey-200 data-[active]:outline-blue-grey-800 focus:outline-blue-grey-800 group text-left transition-all',
117
- {
118
- 'bg-color-transparent data-[hover]:bg-color-transparent h-full px-2 py-1 data-[active]:outline-primary-focus focus:outline-primary-focus':
119
- isClearIntent,
120
- '!bg-color-blue-grey-100 pointer-events-none ': disabled,
121
- '!outline-secondary-default': !!error?.message
122
- },
123
- classes?.trigger
124
- )}
125
- >
126
- {renderSelectedValue({ multiple, controlledValue, label, isClearIntent, disabled, classes })}
127
-
128
- <Icon
129
- name='arrows/arrowRight'
130
- className={cn(
131
- 'size-6 rotate-90 text-icon-blue-grey-600 group-data-[open]:-rotate-90 transition-all',
132
- { 'text-icon-blue-grey-700 group-data-[hover]:text-icon-primary-hover': isClearIntent },
133
- { 'text-icon-disabled': disabled },
134
- { 'text-icon-secondary-default': !!error?.message },
135
- classes?.icon
136
- )}
137
- />
138
- </ListboxButton>
139
- <MessageView
140
- className={cn(classes?.message)}
141
- intent={error?.message ? 'error' : 'simple'}
142
- text={error?.message || helperText}
143
- disabled={disabled}
144
- />
145
- <ListboxOptions
146
- className={cn(
147
- 'bg-color-white items-start justify-start shadow-sm w-select-trigger outline-transparent scrollHidden p-2 data-[closed]:opacity-0 transition-opacity duration-200',
148
- classes?.options
149
- )}
150
- transition
151
- anchor={{
152
- gap: 8
153
- }}
154
- >
155
- <div className={cn('p-2 customScrollbar-y overflow-x-hidden !max-h-[246px]', classes?.scrollArea)}>
156
- {optionsList?.map(({ optionValue, id, isDisabled }) => (
157
- <ListboxOption
158
- key={id}
159
- value={optionValue}
160
- disabled={isDisabled}
161
- className={cn(
162
- 'desk-body-regular-l text-color-dark p-2 rounded-sm cursor-pointer transition-all hover:bg-color-primary-tr-hover hover:text-color-primary-hover data-[focus]:text-color-primary-hover data-[focus]:bg-color-primary-tr-hover data-[disabled]:pointer-events-none data-[disabled]:text-color-disabled',
163
- classes?.option
164
- )}
165
- >
166
- {({ selected }) => (
167
- <div className={cn('flex justify-between items-center gap-2')}>
168
- {optionValue}
169
- <Icon
170
- name='general/check'
171
- className={cn('size-5 text-icon-primary-default', { invisible: !selected })}
172
- />
173
- </div>
174
- )}
175
- </ListboxOption>
176
- ))}
177
- </div>
178
- </ListboxOptions>
179
- </Listbox>
180
- </FieldContainer>
181
- )
182
- }}
183
- />
184
- )
185
- }
@@ -1,79 +0,0 @@
1
- 'use client'
2
-
3
- import * as React from 'react'
4
- import { Controller, type FieldValues } from 'react-hook-form'
5
- import * as SwitchPrimitive from '@radix-ui/react-switch'
6
- import { type TControlledInputPrimitiveProps } from './model'
7
- import { MessageView } from './ui'
8
- import { cn } from '$/shared/utils'
9
-
10
- interface ISwitchClasses {
11
- wrapper: string
12
- input: string
13
- thumb: string
14
- textBlock: string
15
- label: string
16
- message: string
17
- }
18
-
19
- export interface ISwitchControlProps<T extends FieldValues> extends TControlledInputPrimitiveProps<T> {
20
- disabled?: boolean
21
- classes?: Partial<ISwitchClasses>
22
- }
23
-
24
- export const SwitchControl = <T extends FieldValues>({
25
- disabled,
26
- classes,
27
- control,
28
- helperText,
29
- label,
30
- ...props
31
- }: ISwitchControlProps<T>) => {
32
- const inputId = React.useId()
33
- return (
34
- <Controller
35
- name={props.name}
36
- control={control}
37
- render={({ field: { onChange, value: controlledValue, ref, name }, fieldState: { error } }) => (
38
- <div className={cn('flex items-center gap-2', classes?.wrapper)}>
39
- <SwitchPrimitive.Root
40
- ref={ref}
41
- id={inputId}
42
- disabled={disabled}
43
- onCheckedChange={onChange}
44
- value={controlledValue}
45
- checked={controlledValue}
46
- name={name}
47
- className={cn(
48
- 'w-10 h-6 bg-color-blue-grey-300 data-[state=checked]:bg-color-primary-default hover:data-[state=checked]:bg-color-primary-hover rounded-full p-[2px] outline-2 outline-offset-4 outline-transparent focus:outline-primary-focus',
49
- { 'data-[state=checked]:!bg-color-primary-disabled data-[state=unchecked]:!bg-color-blue-grey-200': disabled },
50
- classes?.input
51
- )}
52
- >
53
- <SwitchPrimitive.Thumb
54
- id={inputId}
55
- className={cn(
56
- 'bg-color-white rounded-full size-5 block will-change-transform duration-200 transition-all data-[state=checked]:translate-x-4',
57
- classes?.thumb
58
- )}
59
- />
60
- </SwitchPrimitive.Root>
61
- <div className={cn('flex flex-col', classes?.textBlock)}>
62
- <label
63
- className={cn('text-color-dark desk-body-regular-l', { 'text-color-disabled': disabled }, classes?.label)}
64
- htmlFor={inputId}
65
- >
66
- {label}
67
- </label>
68
- <MessageView
69
- className={cn('mt-0', classes?.message)}
70
- intent={error?.message ? 'error' : 'simple'}
71
- text={error?.message || helperText}
72
- disabled={disabled}
73
- />
74
- </div>
75
- </div>
76
- )}
77
- />
78
- )
79
- }
@@ -1,92 +0,0 @@
1
- 'use client'
2
-
3
- import * as React from 'react'
4
- import { Controller, type FieldValues } from 'react-hook-form'
5
- import type { TAdditionalInputClassesWithAttachment, TControlledInputProps, TTextareaCommonProps } from './model'
6
- import { FieldAttachment, FieldContainer, MessageView } from './ui'
7
- import { cn } from '$/shared/utils'
8
-
9
- type TTextareaClasses = Partial<TAdditionalInputClassesWithAttachment> & {
10
- head: string
11
- scrollArea: string
12
- }
13
-
14
- export interface ITextareaControlProps<T extends FieldValues> extends TControlledInputProps<T>, TTextareaCommonProps {
15
- classes?: Partial<TTextareaClasses>
16
- }
17
-
18
- export const TextareaControl = <T extends FieldValues>({
19
- label,
20
- size = 'full',
21
- helperText,
22
- control,
23
- classes,
24
- badge,
25
- icon,
26
- swapPosition,
27
- disabled,
28
- placeholder,
29
- ...props
30
- }: ITextareaControlProps<T>) => {
31
- const inputId = React.useId()
32
- return (
33
- <Controller
34
- control={control}
35
- name={props.name}
36
- render={({ field: { onChange, ref, value }, fieldState: { error } }) => (
37
- <FieldContainer size={size} classes={classes}>
38
- <div
39
- className={cn(
40
- 'flex flex-col h-[120px] transition-colors relative border-solid rounded-sm border border-transparent bg-color-blue-grey-100 group-focus-within:border-blue-grey-800 focus:outline-blue-grey-800 hover:bg-color-blue-grey-200 active:bg-color-blue-grey-100',
41
- { '!border-negative': error },
42
- { '!bg-color-blue-grey-100': disabled },
43
- classes?.field
44
- )}
45
- >
46
- <div className={cn('flex items-center justify-between px-4 pt-2', classes?.head)}>
47
- <label
48
- className={cn('text-color-tetriary desk-body-regular-s', { 'text-color-disabled': disabled }, classes?.label)}
49
- htmlFor={inputId}
50
- >
51
- {label}
52
- </label>
53
- <FieldAttachment
54
- badge={badge}
55
- icon={icon}
56
- error={!!error?.message}
57
- classes={classes}
58
- isTextarea
59
- swapPosition={swapPosition}
60
- />
61
- </div>
62
-
63
- <div className={cn('w-full flex items-start px-4 py-2', classes?.scrollArea)}>
64
- <textarea
65
- aria-invalid={error?.message ? 'true' : 'false'}
66
- ref={ref}
67
- className={cn(
68
- 'w-full h-[78px] desk-body-regular-l flex-1 customScrollbar-y text-color-dark placeholder:text-color-blue-grey-600 transition-all bg-color-transparent outline-none rounded-md resize-none',
69
- { 'placeholder:text-color-disabled': disabled },
70
- classes?.input
71
- )}
72
- id={inputId}
73
- value={value}
74
- onChange={onChange}
75
- disabled={disabled}
76
- placeholder={placeholder}
77
- {...props}
78
- />
79
- </div>
80
- </div>
81
-
82
- <MessageView
83
- className={cn(classes?.message)}
84
- intent={error?.message ? 'error' : 'simple'}
85
- text={error?.message || helperText}
86
- disabled={disabled}
87
- />
88
- </FieldContainer>
89
- )}
90
- />
91
- )
92
- }