@steroidsjs/core 3.0.0-beta.8 → 3.0.0-beta.81

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 (629) hide show
  1. package/README.md +23 -6
  2. package/actions/list.d.ts +71 -4
  3. package/actions/list.js +7 -9
  4. package/base/Enum.d.ts +3 -3
  5. package/components/ClientStorageComponent.d.ts +27 -1
  6. package/components/ClientStorageComponent.js +4 -3
  7. package/components/HttpComponent.d.ts +1 -0
  8. package/components/HttpComponent.js +4 -3
  9. package/components/LocaleComponent.d.ts +53 -6
  10. package/components/LocaleComponent.js +9 -8
  11. package/components/ResourceComponent.d.ts +88 -6
  12. package/components/ResourceComponent.js +11 -11
  13. package/components/UiComponent.d.ts +130 -1
  14. package/docs-autogen-result.json +29385 -0
  15. package/en.json +786 -0
  16. package/hooks/index.d.ts +2 -1
  17. package/hooks/index.js +3 -1
  18. package/hooks/useAddressBar.d.ts +11 -0
  19. package/hooks/useApplication.d.ts +4 -1
  20. package/hooks/useApplication.js +13 -1
  21. package/hooks/useDataProvider.d.ts +29 -29
  22. package/hooks/useDataProvider.js +4 -5
  23. package/hooks/useDataSelect.d.ts +10 -3
  24. package/hooks/useDataSelect.js +37 -23
  25. package/hooks/useFetch.d.ts +5 -6
  26. package/hooks/useFetch.js +0 -3
  27. package/hooks/useFile.d.ts +51 -2
  28. package/hooks/useForm.d.ts +0 -1
  29. package/hooks/useForm.js +0 -1
  30. package/hooks/useList.d.ts +14 -5
  31. package/hooks/useList.js +6 -2
  32. package/hooks/useTheme.d.ts +2 -0
  33. package/hooks/useTheme.js +8 -0
  34. package/index.d.ts +28 -15
  35. package/package.json +12 -7
  36. package/providers/ComponentsProvider.d.ts +8 -5
  37. package/providers/ThemeProvider.d.ts +14 -0
  38. package/providers/ThemeProvider.js +62 -0
  39. package/reducers/list.d.ts +1 -0
  40. package/reducers/list.js +4 -1
  41. package/reducers/router.d.ts +0 -1
  42. package/reducers/router.js +2 -2
  43. package/ui/content/Accordion/Accordion.d.ts +40 -15
  44. package/ui/content/Accordion/AccordionItem.d.ts +4 -3
  45. package/ui/content/Alert/Alert.d.ts +29 -10
  46. package/ui/content/Avatar/Avatar.d.ts +26 -24
  47. package/ui/content/Avatar/Avatar.js +1 -1
  48. package/ui/content/Avatar/AvatarGroup.d.ts +3 -3
  49. package/ui/content/Badge/Badge.d.ts +29 -16
  50. package/ui/content/Badge/Badge.js +1 -1
  51. package/ui/content/Calendar/Calendar.d.ts +15 -11
  52. package/ui/content/Calendar/Calendar.js +3 -1
  53. package/ui/content/Card/Card.d.ts +75 -45
  54. package/ui/content/Card/Card.js +0 -5
  55. package/ui/content/CopyToClipboard/CopyToClipboard.d.ts +68 -8
  56. package/ui/content/CopyToClipboard/CopyToClipboard.js +26 -59
  57. package/ui/content/Detail/Detail.d.ts +16 -11
  58. package/ui/content/Detail/DetailItem.d.ts +1 -1
  59. package/ui/content/DropDown/DropDown.d.ts +21 -9
  60. package/ui/content/DropDown/DropDown.js +14 -2
  61. package/ui/content/Icon/Icon.d.ts +13 -7
  62. package/ui/content/Icon/Icon.js +4 -1
  63. package/ui/content/Menu/Menu.d.ts +56 -0
  64. package/ui/content/Menu/Menu.js +23 -0
  65. package/ui/content/Menu/index.d.ts +2 -0
  66. package/ui/{list/LayoutNames/demo/basic.js → content/Menu/index.js} +2 -7
  67. package/ui/content/Slider/Slider.d.ts +28 -0
  68. package/ui/content/Slider/Slider.js +19 -0
  69. package/ui/content/Slider/index.d.ts +2 -0
  70. package/ui/content/Slider/index.js +7 -0
  71. package/ui/content/index.d.ts +6 -1
  72. package/ui/content/index.js +12 -1
  73. package/ui/crud/Crud/Crud.d.ts +116 -4
  74. package/ui/crud/Crud/CrudContent.d.ts +1 -2
  75. package/ui/crud/Crud/utils.js +10 -14
  76. package/ui/crud/index.d.ts +0 -1
  77. package/ui/form/AutoCompleteField/AutoCompleteField.d.ts +26 -6
  78. package/ui/form/AutoCompleteField/AutoCompleteField.js +17 -3
  79. package/ui/form/BlankField/BlankField.d.ts +19 -1
  80. package/ui/form/Button/Button.d.ts +19 -26
  81. package/ui/form/Button/Button.js +1 -10
  82. package/ui/form/CheckboxField/CheckboxField.d.ts +6 -9
  83. package/ui/form/CheckboxField/CheckboxField.js +36 -6
  84. package/ui/form/CheckboxListField/CheckboxListField.d.ts +10 -10
  85. package/ui/form/CheckboxListField/CheckboxListField.js +32 -7
  86. package/ui/form/DateField/DateField.d.ts +20 -15
  87. package/ui/form/DateField/DateField.js +7 -2
  88. package/ui/form/DateField/useDateInputState.js +4 -3
  89. package/ui/form/DateField/useDateTime.js +3 -2
  90. package/ui/form/DateRangeField/DateRangeField.d.ts +12 -21
  91. package/ui/form/DateRangeField/DateRangeField.js +3 -2
  92. package/ui/form/DateTimeField/DateTimeField.d.ts +9 -15
  93. package/ui/form/DateTimeField/DateTimeField.js +4 -2
  94. package/ui/form/DateTimeRangeField/DateTimeRangeField.d.ts +7 -21
  95. package/ui/form/DateTimeRangeField/DateTimeRangeField.js +3 -2
  96. package/ui/form/DropDownField/DropDownField.d.ts +94 -23
  97. package/ui/form/DropDownField/DropDownField.js +113 -8
  98. package/ui/form/Field/Field.d.ts +3 -2
  99. package/ui/form/Field/fieldWrapper.d.ts +29 -9
  100. package/ui/form/Field/fieldWrapper.js +5 -5
  101. package/ui/form/FieldLayout/FieldLayout.d.ts +13 -20
  102. package/ui/form/FieldLayout/FieldLayout.js +1 -13
  103. package/ui/form/FieldList/FieldList.d.ts +11 -20
  104. package/ui/form/FieldList/FieldList.js +2 -3
  105. package/ui/form/FieldSet/FieldSet.d.ts +1 -1
  106. package/ui/form/FieldSet/FieldSet.js +2 -4
  107. package/ui/form/FileField/FileField.d.ts +54 -34
  108. package/ui/form/FileField/FileField.js +30 -10
  109. package/ui/form/Form/Form.d.ts +32 -40
  110. package/ui/form/Form/Form.js +26 -34
  111. package/ui/form/HtmlField/HtmlField.d.ts +2 -11
  112. package/ui/form/ImageField/ImageField.d.ts +15 -14
  113. package/ui/form/ImageField/ImageField.js +4 -0
  114. package/ui/form/InputField/InputField.d.ts +52 -50
  115. package/ui/form/InputField/InputField.js +51 -16
  116. package/ui/form/MaskField/MaskField.d.ts +10 -0
  117. package/ui/form/MaskField/MaskField.js +34 -0
  118. package/ui/form/MaskField/index.d.ts +2 -0
  119. package/ui/form/MaskField/index.js +7 -0
  120. package/ui/form/NavField/NavField.d.ts +6 -3
  121. package/ui/form/NumberField/NumberField.d.ts +10 -10
  122. package/ui/form/NumberField/NumberField.js +2 -7
  123. package/ui/form/PasswordField/PasswordField.d.ts +20 -14
  124. package/ui/form/PasswordField/PasswordField.js +20 -11
  125. package/ui/form/RadioField/RadioField.d.ts +31 -0
  126. package/{hoc/file.js → ui/form/RadioField/RadioField.js} +21 -5
  127. package/ui/form/RadioField/index.d.ts +2 -0
  128. package/ui/form/RadioField/index.js +7 -0
  129. package/ui/form/RadioListField/RadioListField.d.ts +10 -9
  130. package/ui/form/RadioListField/RadioListField.js +32 -2
  131. package/ui/form/RateField/RateField.d.ts +11 -13
  132. package/ui/form/RateField/RateField.js +2 -1
  133. package/ui/form/RateField/demo/errors.js +1 -1
  134. package/ui/form/ReCaptchaField/ReCaptchaField.d.ts +66 -5
  135. package/ui/form/ReCaptchaField/ReCaptchaField.js +22 -1
  136. package/ui/form/SliderField/SliderField.d.ts +3 -12
  137. package/ui/form/SliderField/SliderField.js +1 -1
  138. package/ui/form/SwitcherField/SwitcherField.d.ts +21 -15
  139. package/ui/form/SwitcherField/SwitcherField.js +34 -4
  140. package/ui/form/SwitcherField/demo/errors.js +1 -1
  141. package/ui/form/TextField/TextField.d.ts +8 -27
  142. package/ui/form/TextField/TextField.js +8 -8
  143. package/ui/form/TimeField/TimeField.d.ts +2 -16
  144. package/ui/form/TimeField/TimeField.js +3 -2
  145. package/ui/form/TimeField/demo/errors.js +1 -1
  146. package/ui/form/TimeRangeField/TimeRangeField.d.ts +58 -0
  147. package/ui/form/TimeRangeField/TimeRangeField.js +85 -0
  148. package/ui/form/TimeRangeField/index.d.ts +2 -0
  149. package/ui/form/TimeRangeField/index.js +7 -0
  150. package/ui/form/index.d.ts +37 -1
  151. package/ui/form/index.js +37 -1
  152. package/ui/form/validate.js +3 -2
  153. package/ui/format/BooleanFormatter/BooleanFormatter.d.ts +13 -0
  154. package/ui/format/DateFormatter/DateFormatter.d.ts +11 -1
  155. package/ui/format/DateFormatter/DateFormatter.js +1 -1
  156. package/ui/format/DateTimeFormatter/DateTimeFormatter.d.ts +11 -1
  157. package/ui/format/DateTimeFormatter/DateTimeFormatter.js +4 -3
  158. package/ui/format/EnumFormatter/EnumFormatter.d.ts +10 -0
  159. package/ui/format/FileSize/FileSize.d.ts +8 -3
  160. package/ui/format/FileSize/FileSize.js +1 -1
  161. package/ui/format/Format/Format.d.ts +6 -0
  162. package/ui/format/MoneyFormatter/MoneyFormatter.d.ts +9 -1
  163. package/ui/format/MoneyFormatter/MoneyFormatter.js +3 -2
  164. package/ui/layout/Header/Header.d.ts +92 -9
  165. package/ui/layout/Header/Header.js +20 -1
  166. package/ui/layout/Loader/Loader.d.ts +15 -1
  167. package/ui/layout/Meta/Meta.js +3 -3
  168. package/ui/layout/Notifications/Notifications.d.ts +32 -1
  169. package/ui/layout/ProgressBar/ProgressBar.js +8 -4
  170. package/ui/layout/Sidebar/Sidebar.d.ts +87 -0
  171. package/{hoc/layout.js → ui/layout/Sidebar/Sidebar.js} +24 -12
  172. package/ui/layout/Sidebar/index.d.ts +2 -0
  173. package/ui/layout/Sidebar/index.js +7 -0
  174. package/ui/layout/Skeleton/Skeleton.d.ts +25 -2
  175. package/ui/layout/Tooltip/Tooltip.d.ts +31 -5
  176. package/ui/layout/Tooltip/Tooltip.js +3 -0
  177. package/ui/layout/Tooltip/calculate.d.ts +3 -3
  178. package/ui/layout/Tooltip/calculate.js +4 -1
  179. package/ui/layout/index.d.ts +2 -1
  180. package/ui/layout/index.js +3 -1
  181. package/ui/list/CheckboxColumn/CheckboxColumn.d.ts +3 -2
  182. package/ui/list/CheckboxColumn/CheckboxColumn.js +4 -1
  183. package/ui/list/ControlsColumn/ControlsColumn.d.ts +4 -3
  184. package/ui/list/Empty/Empty.d.ts +1 -10
  185. package/ui/list/Empty/Empty.js +2 -2
  186. package/ui/list/FlexGrid/FlexGrid.d.ts +85 -0
  187. package/ui/list/FlexGrid/FlexGrid.js +51 -0
  188. package/ui/list/FlexGrid/index.d.ts +2 -0
  189. package/ui/list/FlexGrid/index.js +7 -0
  190. package/ui/list/Grid/Grid.d.ts +69 -3
  191. package/ui/list/Grid/Grid.js +12 -3
  192. package/ui/list/List/List.d.ts +2 -0
  193. package/ui/list/List/List.js +1 -0
  194. package/ui/list/Pagination/Pagination.d.ts +18 -5
  195. package/ui/list/Pagination/Pagination.js +15 -7
  196. package/ui/list/PaginationSize/PaginationSize.d.ts +10 -12
  197. package/ui/list/PaginationSize/PaginationSize.js +10 -9
  198. package/ui/list/SearchForm/SearchForm.d.ts +3 -0
  199. package/ui/list/SearchForm/demo/basic.js +5 -2
  200. package/ui/list/Steps/Steps.d.ts +6 -3
  201. package/ui/list/Steps/Steps.js +11 -5
  202. package/ui/modal/Modal/Modal.d.ts +5 -5
  203. package/ui/modal/Modal/Modal.js +1 -1
  204. package/ui/modal/ModalPortal/ModalPortal.d.ts +3 -0
  205. package/ui/modal/TwoFactorModal/TwoFactorModal.d.ts +10 -2
  206. package/ui/nav/Breadcrumbs/Breadcrumbs.d.ts +12 -2
  207. package/ui/nav/ButtonGroup/ButtonGroup.d.ts +44 -0
  208. package/ui/nav/ButtonGroup/ButtonGroup.js +59 -0
  209. package/ui/nav/ButtonGroup/index.d.ts +2 -0
  210. package/ui/nav/ButtonGroup/index.js +7 -0
  211. package/ui/nav/Controls/Controls.d.ts +3 -3
  212. package/ui/nav/Controls/Controls.js +6 -5
  213. package/ui/nav/Link/Link.d.ts +1 -0
  214. package/ui/nav/Link/Link.js +1 -1
  215. package/ui/nav/Nav/Nav.d.ts +13 -6
  216. package/ui/nav/Nav/Nav.js +29 -14
  217. package/ui/nav/Router/Router.d.ts +0 -10
  218. package/ui/nav/Router/Router.js +15 -77
  219. package/ui/nav/Router/helpers.d.ts +4 -0
  220. package/ui/nav/Router/helpers.js +81 -0
  221. package/ui/nav/Tree/Tree.d.ts +7 -2
  222. package/ui/nav/Tree/Tree.js +37 -14
  223. package/ui/nav/index.d.ts +2 -1
  224. package/ui/nav/index.js +3 -1
  225. package/ui/typography/Text/Text.d.ts +38 -0
  226. package/ui/typography/Text/Text.js +22 -0
  227. package/ui/typography/Text/index.d.ts +2 -0
  228. package/ui/typography/Text/index.js +7 -0
  229. package/ui/typography/Title/Title.d.ts +38 -0
  230. package/ui/typography/Title/Title.js +22 -0
  231. package/ui/typography/Title/index.d.ts +2 -0
  232. package/ui/typography/Title/index.js +7 -0
  233. package/ui/typography/index.d.ts +3 -0
  234. package/ui/typography/index.js +10 -0
  235. package/utils/calendar.d.ts +1 -1
  236. package/utils/calendar.js +15 -15
  237. package/utils/form.d.ts +0 -2
  238. package/utils/form.js +1 -12
  239. package/components/ApiComponent.d.ts +0 -23
  240. package/components/ApiComponent.js +0 -75
  241. package/hoc/application.d.ts +0 -8
  242. package/hoc/application.js +0 -50
  243. package/hoc/bem.d.ts +0 -14
  244. package/hoc/bem.js +0 -42
  245. package/hoc/components.d.ts +0 -11
  246. package/hoc/components.js +0 -62
  247. package/hoc/connect.d.ts +0 -6
  248. package/hoc/connect.js +0 -3
  249. package/hoc/fetch.d.ts +0 -13
  250. package/hoc/fetch.js +0 -60
  251. package/hoc/file.d.ts +0 -28
  252. package/hoc/http.d.ts +0 -7
  253. package/hoc/http.js +0 -53
  254. package/hoc/index.d.ts +0 -8
  255. package/hoc/index.js +0 -20
  256. package/hoc/layout.d.ts +0 -30
  257. package/ui/content/Card/demo/basic.d.ts +0 -8
  258. package/ui/content/Card/demo/basic.js +0 -39
  259. package/ui/content/Card/demo/border color.d.ts +0 -3
  260. package/ui/content/Card/demo/border color.js +0 -52
  261. package/ui/content/Card/demo/color.d.ts +0 -3
  262. package/ui/content/Card/demo/color.js +0 -52
  263. package/ui/content/Card/demo/header.d.ts +0 -3
  264. package/ui/content/Card/demo/header.js +0 -47
  265. package/ui/content/Card/demo/hover.d.ts +0 -3
  266. package/ui/content/Card/demo/hover.js +0 -42
  267. package/ui/content/Card/demo/link.d.ts +0 -3
  268. package/ui/content/Card/demo/link.js +0 -43
  269. package/ui/content/Card/demo/orientation.d.ts +0 -3
  270. package/ui/content/Card/demo/orientation.js +0 -46
  271. package/ui/content/Detail/demo/basic.d.ts +0 -8
  272. package/ui/content/Detail/demo/basic.js +0 -60
  273. package/ui/content/Detail/demo/colors.d.ts +0 -3
  274. package/ui/content/Detail/demo/colors.js +0 -44
  275. package/ui/content/Detail/demo/controls.d.ts +0 -8
  276. package/ui/content/Detail/demo/controls.js +0 -60
  277. package/ui/content/Detail/demo/layout.d.ts +0 -8
  278. package/ui/content/Detail/demo/layout.js +0 -60
  279. package/ui/content/Detail/demo/responsive.d.ts +0 -8
  280. package/ui/content/Detail/demo/responsive.js +0 -75
  281. package/ui/content/Detail/demo/sizes.d.ts +0 -8
  282. package/ui/content/Detail/demo/sizes.js +0 -65
  283. package/ui/content/Icon/demo/icon.d.ts +0 -3
  284. package/ui/content/Icon/demo/icon.js +0 -32
  285. package/ui/crud/Crud/demo/default.d.ts +0 -8
  286. package/ui/crud/Crud/demo/default.js +0 -76
  287. package/ui/form/AutoCompleteField/demo/basic.d.ts +0 -12
  288. package/ui/form/AutoCompleteField/demo/basic.js +0 -52
  289. package/ui/form/AutoCompleteField/demo/disabled.d.ts +0 -8
  290. package/ui/form/AutoCompleteField/demo/disabled.js +0 -38
  291. package/ui/form/AutoCompleteField/demo/errors.d.ts +0 -8
  292. package/ui/form/AutoCompleteField/demo/errors.js +0 -38
  293. package/ui/form/AutoCompleteField/demo/placeholder.d.ts +0 -8
  294. package/ui/form/AutoCompleteField/demo/placeholder.js +0 -38
  295. package/ui/form/AutoCompleteField/demo/required.d.ts +0 -8
  296. package/ui/form/AutoCompleteField/demo/required.js +0 -38
  297. package/ui/form/AutoCompleteField/demo/sizes.d.ts +0 -3
  298. package/ui/form/AutoCompleteField/demo/sizes.js +0 -43
  299. package/ui/form/BlankField/demo/basic.d.ts +0 -12
  300. package/ui/form/BlankField/demo/basic.js +0 -55
  301. package/ui/form/CheckboxListField/demo/basic.d.ts +0 -9
  302. package/ui/form/CheckboxListField/demo/basic.js +0 -43
  303. package/ui/form/CheckboxListField/demo/disabled.d.ts +0 -8
  304. package/ui/form/CheckboxListField/demo/disabled.js +0 -38
  305. package/ui/form/CheckboxListField/demo/errors.d.ts +0 -8
  306. package/ui/form/CheckboxListField/demo/errors.js +0 -38
  307. package/ui/form/CheckboxListField/demo/required.d.ts +0 -8
  308. package/ui/form/CheckboxListField/demo/required.js +0 -38
  309. package/ui/form/DateField/demo/basic.d.ts +0 -8
  310. package/ui/form/DateField/demo/basic.js +0 -37
  311. package/ui/form/DateField/demo/disabled.d.ts +0 -8
  312. package/ui/form/DateField/demo/disabled.js +0 -37
  313. package/ui/form/DateField/demo/errors.d.ts +0 -8
  314. package/ui/form/DateField/demo/errors.js +0 -37
  315. package/ui/form/DateField/demo/icon.d.ts +0 -8
  316. package/ui/form/DateField/demo/icon.js +0 -39
  317. package/ui/form/DateField/demo/placeholder.d.ts +0 -8
  318. package/ui/form/DateField/demo/placeholder.js +0 -37
  319. package/ui/form/DateField/demo/required.d.ts +0 -8
  320. package/ui/form/DateField/demo/required.js +0 -37
  321. package/ui/form/DateField/demo/sizes.d.ts +0 -8
  322. package/ui/form/DateField/demo/sizes.js +0 -43
  323. package/ui/form/DateRangeField/demo/basic.d.ts +0 -8
  324. package/ui/form/DateRangeField/demo/basic.js +0 -37
  325. package/ui/form/DateRangeField/demo/disabled.d.ts +0 -8
  326. package/ui/form/DateRangeField/demo/disabled.js +0 -37
  327. package/ui/form/DateRangeField/demo/errors.d.ts +0 -8
  328. package/ui/form/DateRangeField/demo/errors.js +0 -37
  329. package/ui/form/DateRangeField/demo/icon.d.ts +0 -8
  330. package/ui/form/DateRangeField/demo/icon.js +0 -39
  331. package/ui/form/DateRangeField/demo/placeholder.d.ts +0 -8
  332. package/ui/form/DateRangeField/demo/placeholder.js +0 -37
  333. package/ui/form/DateRangeField/demo/required.d.ts +0 -8
  334. package/ui/form/DateRangeField/demo/required.js +0 -37
  335. package/ui/form/DateTimeField/demo/basic.d.ts +0 -8
  336. package/ui/form/DateTimeField/demo/basic.js +0 -37
  337. package/ui/form/DateTimeField/demo/disabled.d.ts +0 -8
  338. package/ui/form/DateTimeField/demo/disabled.js +0 -38
  339. package/ui/form/DateTimeField/demo/errors.d.ts +0 -8
  340. package/ui/form/DateTimeField/demo/errors.js +0 -37
  341. package/ui/form/DateTimeField/demo/icon.d.ts +0 -8
  342. package/ui/form/DateTimeField/demo/icon.js +0 -39
  343. package/ui/form/DateTimeField/demo/placeholder.d.ts +0 -8
  344. package/ui/form/DateTimeField/demo/placeholder.js +0 -37
  345. package/ui/form/DateTimeField/demo/required.d.ts +0 -8
  346. package/ui/form/DateTimeField/demo/required.js +0 -37
  347. package/ui/form/DateTimeField/demo/showRemove.d.ts +0 -8
  348. package/ui/form/DateTimeField/demo/showRemove.js +0 -36
  349. package/ui/form/DateTimeRangeField/demo/basic.d.ts +0 -8
  350. package/ui/form/DateTimeRangeField/demo/basic.js +0 -36
  351. package/ui/form/DateTimeRangeField/demo/disabled.d.ts +0 -8
  352. package/ui/form/DateTimeRangeField/demo/disabled.js +0 -36
  353. package/ui/form/DateTimeRangeField/demo/errors.d.ts +0 -8
  354. package/ui/form/DateTimeRangeField/demo/errors.js +0 -37
  355. package/ui/form/DateTimeRangeField/demo/icon.d.ts +0 -8
  356. package/ui/form/DateTimeRangeField/demo/icon.js +0 -36
  357. package/ui/form/DateTimeRangeField/demo/placeholder.d.ts +0 -8
  358. package/ui/form/DateTimeRangeField/demo/placeholder.js +0 -37
  359. package/ui/form/DateTimeRangeField/demo/required.d.ts +0 -8
  360. package/ui/form/DateTimeRangeField/demo/required.js +0 -37
  361. package/ui/form/DateTimeRangeField/demo/showRemove.d.ts +0 -8
  362. package/ui/form/DateTimeRangeField/demo/showRemove.js +0 -36
  363. package/ui/form/DropDownField/demo/auto-complete.d.ts +0 -8
  364. package/ui/form/DropDownField/demo/auto-complete.js +0 -38
  365. package/ui/form/DropDownField/demo/basic.d.ts +0 -12
  366. package/ui/form/DropDownField/demo/basic.js +0 -56
  367. package/ui/form/DropDownField/demo/disabled.d.ts +0 -8
  368. package/ui/form/DropDownField/demo/disabled.js +0 -38
  369. package/ui/form/DropDownField/demo/errors.d.ts +0 -8
  370. package/ui/form/DropDownField/demo/errors.js +0 -38
  371. package/ui/form/DropDownField/demo/multiple.d.ts +0 -8
  372. package/ui/form/DropDownField/demo/multiple.js +0 -38
  373. package/ui/form/DropDownField/demo/no-border.d.ts +0 -8
  374. package/ui/form/DropDownField/demo/no-border.js +0 -38
  375. package/ui/form/DropDownField/demo/placeholder.d.ts +0 -8
  376. package/ui/form/DropDownField/demo/placeholder.js +0 -38
  377. package/ui/form/DropDownField/demo/required.d.ts +0 -8
  378. package/ui/form/DropDownField/demo/required.js +0 -38
  379. package/ui/form/DropDownField/demo/show-reset.d.ts +0 -8
  380. package/ui/form/DropDownField/demo/show-reset.js +0 -38
  381. package/ui/form/DropDownField/demo/size.d.ts +0 -8
  382. package/ui/form/DropDownField/demo/size.js +0 -45
  383. package/ui/form/Field/demo/basic.d.ts +0 -8
  384. package/ui/form/Field/demo/basic.js +0 -37
  385. package/ui/form/Field/demo/component.d.ts +0 -8
  386. package/ui/form/Field/demo/component.js +0 -38
  387. package/ui/form/Field/demo/model.d.ts +0 -8
  388. package/ui/form/Field/demo/model.js +0 -48
  389. package/ui/form/FieldLayout/demo/errors.d.ts +0 -8
  390. package/ui/form/FieldLayout/demo/errors.js +0 -38
  391. package/ui/form/FieldLayout/demo/layouts.d.ts +0 -8
  392. package/ui/form/FieldLayout/demo/layouts.js +0 -43
  393. package/ui/form/FieldLayout/demo/required.d.ts +0 -8
  394. package/ui/form/FieldLayout/demo/required.js +0 -38
  395. package/ui/form/FieldList/demo/basic.d.ts +0 -8
  396. package/ui/form/FieldList/demo/basic.js +0 -62
  397. package/ui/form/FieldList/demo/disabled.d.ts +0 -8
  398. package/ui/form/FieldList/demo/disabled.js +0 -62
  399. package/ui/form/FieldSet/demo/basic.d.ts +0 -8
  400. package/ui/form/FieldSet/demo/basic.js +0 -53
  401. package/ui/form/FileField/demo/basic.d.ts +0 -8
  402. package/ui/form/FileField/demo/basic.js +0 -37
  403. package/ui/form/Form/demo/basic.d.ts +0 -8
  404. package/ui/form/Form/demo/basic.js +0 -62
  405. package/ui/form/Form/demo/border.d.ts +0 -8
  406. package/ui/form/Form/demo/border.js +0 -62
  407. package/ui/form/Form/demo/horizontal.d.ts +0 -8
  408. package/ui/form/Form/demo/horizontal.js +0 -55
  409. package/ui/form/Form/demo/inline.d.ts +0 -8
  410. package/ui/form/Form/demo/inline.js +0 -53
  411. package/ui/form/HtmlField/demo/basic.d.ts +0 -8
  412. package/ui/form/HtmlField/demo/basic.js +0 -37
  413. package/ui/form/InputField/demo/addons.d.ts +0 -8
  414. package/ui/form/InputField/demo/addons.js +0 -37
  415. package/ui/form/InputField/demo/basic.d.ts +0 -8
  416. package/ui/form/InputField/demo/basic.js +0 -36
  417. package/ui/form/InputField/demo/disabled.d.ts +0 -8
  418. package/ui/form/InputField/demo/disabled.js +0 -36
  419. package/ui/form/InputField/demo/errors.d.ts +0 -8
  420. package/ui/form/InputField/demo/errors.js +0 -37
  421. package/ui/form/InputField/demo/mask.d.ts +0 -8
  422. package/ui/form/InputField/demo/mask.js +0 -39
  423. package/ui/form/InputField/demo/placeholder.d.ts +0 -8
  424. package/ui/form/InputField/demo/placeholder.js +0 -37
  425. package/ui/form/InputField/demo/required.d.ts +0 -8
  426. package/ui/form/InputField/demo/required.js +0 -37
  427. package/ui/form/InputField/demo/sizes.d.ts +0 -3
  428. package/ui/form/InputField/demo/sizes.js +0 -42
  429. package/ui/form/InputField/demo/textAddons.d.ts +0 -8
  430. package/ui/form/InputField/demo/textAddons.js +0 -37
  431. package/ui/form/InputField/demo/types.d.ts +0 -3
  432. package/ui/form/InputField/demo/types.js +0 -44
  433. package/ui/form/NavField/demo/basic.d.ts +0 -12
  434. package/ui/form/NavField/demo/basic.js +0 -56
  435. package/ui/form/NavField/demo/disabled.d.ts +0 -8
  436. package/ui/form/NavField/demo/disabled.js +0 -38
  437. package/ui/form/NavField/demo/errors.d.ts +0 -8
  438. package/ui/form/NavField/demo/errors.js +0 -38
  439. package/ui/form/NavField/demo/layouts.d.ts +0 -12
  440. package/ui/form/NavField/demo/layouts.js +0 -61
  441. package/ui/form/NavField/demo/required.d.ts +0 -8
  442. package/ui/form/NavField/demo/required.js +0 -38
  443. package/ui/form/NumberField/demo/basic.d.ts +0 -8
  444. package/ui/form/NumberField/demo/basic.js +0 -37
  445. package/ui/form/NumberField/demo/disabled.d.ts +0 -8
  446. package/ui/form/NumberField/demo/disabled.js +0 -37
  447. package/ui/form/NumberField/demo/errors.d.ts +0 -8
  448. package/ui/form/NumberField/demo/errors.js +0 -37
  449. package/ui/form/NumberField/demo/placeholder.d.ts +0 -8
  450. package/ui/form/NumberField/demo/placeholder.js +0 -37
  451. package/ui/form/NumberField/demo/required.d.ts +0 -8
  452. package/ui/form/NumberField/demo/required.js +0 -37
  453. package/ui/form/NumberField/demo/sizes.d.ts +0 -8
  454. package/ui/form/NumberField/demo/sizes.js +0 -42
  455. package/ui/form/PasswordField/demo/basic.d.ts +0 -8
  456. package/ui/form/PasswordField/demo/basic.js +0 -37
  457. package/ui/form/PasswordField/demo/disabled.d.ts +0 -8
  458. package/ui/form/PasswordField/demo/disabled.js +0 -37
  459. package/ui/form/PasswordField/demo/errors.d.ts +0 -8
  460. package/ui/form/PasswordField/demo/errors.js +0 -37
  461. package/ui/form/PasswordField/demo/placeholder.d.ts +0 -8
  462. package/ui/form/PasswordField/demo/placeholder.js +0 -37
  463. package/ui/form/PasswordField/demo/required.d.ts +0 -8
  464. package/ui/form/PasswordField/demo/required.js +0 -37
  465. package/ui/form/PasswordField/demo/security.d.ts +0 -8
  466. package/ui/form/PasswordField/demo/security.js +0 -37
  467. package/ui/form/PasswordField/demo/sizes.d.ts +0 -8
  468. package/ui/form/PasswordField/demo/sizes.js +0 -42
  469. package/ui/form/RadioListField/demo/basic.d.ts +0 -12
  470. package/ui/form/RadioListField/demo/basic.js +0 -56
  471. package/ui/form/RadioListField/demo/disabled.d.ts +0 -8
  472. package/ui/form/RadioListField/demo/disabled.js +0 -38
  473. package/ui/form/RadioListField/demo/errors.d.ts +0 -8
  474. package/ui/form/RadioListField/demo/errors.js +0 -38
  475. package/ui/form/RadioListField/demo/required.d.ts +0 -8
  476. package/ui/form/RadioListField/demo/required.js +0 -38
  477. package/ui/form/ReCaptchaField/demo/basic.d.ts +0 -8
  478. package/ui/form/ReCaptchaField/demo/basic.js +0 -43
  479. package/ui/form/SliderField/demo/basic.d.ts +0 -8
  480. package/ui/form/SliderField/demo/basic.js +0 -37
  481. package/ui/form/SliderField/demo/disabled.d.ts +0 -8
  482. package/ui/form/SliderField/demo/disabled.js +0 -37
  483. package/ui/form/SliderField/demo/errors.d.ts +0 -8
  484. package/ui/form/SliderField/demo/errors.js +0 -37
  485. package/ui/form/SliderField/demo/marks.d.ts +0 -3
  486. package/ui/form/SliderField/demo/marks.js +0 -49
  487. package/ui/form/SliderField/demo/min-max.d.ts +0 -8
  488. package/ui/form/SliderField/demo/min-max.js +0 -37
  489. package/ui/form/SliderField/demo/onAfterChange.d.ts +0 -8
  490. package/ui/form/SliderField/demo/onAfterChange.js +0 -43
  491. package/ui/form/SliderField/demo/onChange.d.ts +0 -8
  492. package/ui/form/SliderField/demo/onChange.js +0 -43
  493. package/ui/form/SliderField/demo/range.d.ts +0 -8
  494. package/ui/form/SliderField/demo/range.js +0 -37
  495. package/ui/form/TextField/demo/basic.d.ts +0 -8
  496. package/ui/form/TextField/demo/basic.js +0 -37
  497. package/ui/form/TextField/demo/disabled.d.ts +0 -8
  498. package/ui/form/TextField/demo/disabled.js +0 -37
  499. package/ui/form/TextField/demo/errors.d.ts +0 -8
  500. package/ui/form/TextField/demo/errors.js +0 -37
  501. package/ui/form/TextField/demo/placeholder.d.ts +0 -8
  502. package/ui/form/TextField/demo/placeholder.js +0 -37
  503. package/ui/form/TextField/demo/required.d.ts +0 -8
  504. package/ui/form/TextField/demo/required.js +0 -37
  505. package/ui/form/TextField/demo/sizes.d.ts +0 -3
  506. package/ui/form/TextField/demo/sizes.js +0 -43
  507. package/ui/form/TextField/demo/submit.d.ts +0 -8
  508. package/ui/form/TextField/demo/submit.js +0 -37
  509. package/ui/format/DateFormatter/demo/basic.d.ts +0 -3
  510. package/ui/format/DateFormatter/demo/basic.js +0 -32
  511. package/ui/format/DateTimeFormatter/demo/basic.d.ts +0 -3
  512. package/ui/format/DateTimeFormatter/demo/basic.js +0 -32
  513. package/ui/layout/Notifications/demo/basic.d.ts +0 -8
  514. package/ui/layout/Notifications/demo/basic.js +0 -57
  515. package/ui/layout/Notifications/demo/position.d.ts +0 -3
  516. package/ui/layout/Notifications/demo/position.js +0 -49
  517. package/ui/layout/Notifications/demo/timeOut.d.ts +0 -3
  518. package/ui/layout/Notifications/demo/timeOut.js +0 -49
  519. package/ui/layout/Tooltip/demo/basic.d.ts +0 -8
  520. package/ui/layout/Tooltip/demo/basic.js +0 -56
  521. package/ui/list/CheckboxColumn/demo/basic.d.ts +0 -8
  522. package/ui/list/CheckboxColumn/demo/basic.js +0 -51
  523. package/ui/list/ControlsColumn/demo/basic.d.ts +0 -8
  524. package/ui/list/ControlsColumn/demo/basic.js +0 -49
  525. package/ui/list/Empty/demo/basic.d.ts +0 -8
  526. package/ui/list/Empty/demo/basic.js +0 -37
  527. package/ui/list/Empty/demo/custom-text.d.ts +0 -8
  528. package/ui/list/Empty/demo/custom-text.js +0 -37
  529. package/ui/list/Grid/demo/basic.d.ts +0 -18
  530. package/ui/list/Grid/demo/basic.js +0 -72
  531. package/ui/list/Grid/demo/controls.d.ts +0 -8
  532. package/ui/list/Grid/demo/controls.js +0 -44
  533. package/ui/list/Grid/demo/empty.d.ts +0 -8
  534. package/ui/list/Grid/demo/empty.js +0 -38
  535. package/ui/list/Grid/demo/formatter.d.ts +0 -8
  536. package/ui/list/Grid/demo/formatter.js +0 -67
  537. package/ui/list/Grid/demo/indexing.d.ts +0 -8
  538. package/ui/list/Grid/demo/indexing.js +0 -52
  539. package/ui/list/Grid/demo/inner-search-form.d.ts +0 -16
  540. package/ui/list/Grid/demo/inner-search-form.js +0 -60
  541. package/ui/list/Grid/demo/load-more.d.ts +0 -8
  542. package/ui/list/Grid/demo/load-more.js +0 -43
  543. package/ui/list/Grid/demo/pagination.d.ts +0 -8
  544. package/ui/list/Grid/demo/pagination.js +0 -41
  545. package/ui/list/Grid/demo/search-form.d.ts +0 -8
  546. package/ui/list/Grid/demo/search-form.js +0 -50
  547. package/ui/list/Grid/demo/sort.d.ts +0 -8
  548. package/ui/list/Grid/demo/sort.js +0 -48
  549. package/ui/list/Grid/demo/visible.d.ts +0 -8
  550. package/ui/list/Grid/demo/visible.js +0 -52
  551. package/ui/list/LayoutNames/demo/basic.d.ts +0 -7
  552. package/ui/list/List/demo/basic.d.ts +0 -12
  553. package/ui/list/List/demo/basic.js +0 -61
  554. package/ui/list/List/demo/condition.d.ts +0 -8
  555. package/ui/list/List/demo/condition.js +0 -90
  556. package/ui/list/List/demo/empty.d.ts +0 -8
  557. package/ui/list/List/demo/empty.js +0 -36
  558. package/ui/list/List/demo/layout.d.ts +0 -8
  559. package/ui/list/List/demo/layout.js +0 -49
  560. package/ui/list/List/demo/load-more.d.ts +0 -8
  561. package/ui/list/List/demo/load-more.js +0 -45
  562. package/ui/list/List/demo/pagination.d.ts +0 -8
  563. package/ui/list/List/demo/pagination.js +0 -45
  564. package/ui/list/List/demo/search-form.d.ts +0 -30
  565. package/ui/list/List/demo/search-form.js +0 -107
  566. package/ui/list/List/demo/sort.d.ts +0 -17
  567. package/ui/list/List/demo/sort.js +0 -92
  568. package/ui/list/Pagination/demo/basic.d.ts +0 -8
  569. package/ui/list/Pagination/demo/basic.js +0 -45
  570. package/ui/list/Pagination/demo/load-more.d.ts +0 -8
  571. package/ui/list/Pagination/demo/load-more.js +0 -41
  572. package/ui/list/Pagination/demo/sizes.d.ts +0 -8
  573. package/ui/list/Pagination/demo/sizes.js +0 -48
  574. package/ui/list/PaginationSize/demo/basic.d.ts +0 -8
  575. package/ui/list/PaginationSize/demo/basic.js +0 -41
  576. package/ui/list/PaginationSize/demo/size.d.ts +0 -8
  577. package/ui/list/PaginationSize/demo/size.js +0 -49
  578. package/ui/modal/Modal/demo/basic.d.ts +0 -8
  579. package/ui/modal/Modal/demo/basic.js +0 -63
  580. package/ui/modal/Modal/demo/closeTimeout.d.ts +0 -8
  581. package/ui/modal/Modal/demo/closeTimeout.js +0 -64
  582. package/ui/modal/Modal/demo/closing.d.ts +0 -9
  583. package/ui/modal/Modal/demo/closing.js +0 -67
  584. package/ui/modal/Modal/demo/component.d.ts +0 -10
  585. package/ui/modal/Modal/demo/component.js +0 -55
  586. package/ui/modal/Modal/demo/controls.d.ts +0 -8
  587. package/ui/modal/Modal/demo/controls.js +0 -66
  588. package/ui/modal/Modal/demo/size.d.ts +0 -8
  589. package/ui/modal/Modal/demo/size.js +0 -70
  590. package/ui/nav/Breadcrumbs/demo/basic.d.ts +0 -8
  591. package/ui/nav/Breadcrumbs/demo/basic.js +0 -37
  592. package/ui/nav/Breadcrumbs/demo/items.d.ts +0 -8
  593. package/ui/nav/Breadcrumbs/demo/items.js +0 -42
  594. package/ui/nav/Breadcrumbs/demo/page-title.d.ts +0 -8
  595. package/ui/nav/Breadcrumbs/demo/page-title.js +0 -37
  596. package/ui/nav/Controls/demo/basic.d.ts +0 -12
  597. package/ui/nav/Controls/demo/basic.js +0 -59
  598. package/ui/nav/Link/demo/badge.d.ts +0 -8
  599. package/ui/nav/Link/demo/badge.js +0 -37
  600. package/ui/nav/Link/demo/basic.d.ts +0 -8
  601. package/ui/nav/Link/demo/basic.js +0 -37
  602. package/ui/nav/Link/demo/colors.d.ts +0 -8
  603. package/ui/nav/Link/demo/colors.js +0 -46
  604. package/ui/nav/Link/demo/confirm.d.ts +0 -8
  605. package/ui/nav/Link/demo/confirm.js +0 -37
  606. package/ui/nav/Link/demo/disabled.d.ts +0 -8
  607. package/ui/nav/Link/demo/disabled.js +0 -37
  608. package/ui/nav/Link/demo/hint.d.ts +0 -8
  609. package/ui/nav/Link/demo/hint.js +0 -37
  610. package/ui/nav/Link/demo/icon.d.ts +0 -8
  611. package/ui/nav/Link/demo/icon.js +0 -37
  612. package/ui/nav/Link/demo/sizes.d.ts +0 -8
  613. package/ui/nav/Link/demo/sizes.js +0 -41
  614. package/ui/nav/Nav/demo/basic.d.ts +0 -13
  615. package/ui/nav/Nav/demo/basic.js +0 -58
  616. package/ui/nav/Nav/demo/layout.d.ts +0 -8
  617. package/ui/nav/Nav/demo/layout.js +0 -56
  618. package/ui/nav/Router/ConnectedRouter.d.ts +0 -16
  619. package/ui/nav/Router/ConnectedRouter.js +0 -107
  620. package/ui/nav/Tree/demo/auto-open-levels.d.ts +0 -8
  621. package/ui/nav/Tree/demo/auto-open-levels.js +0 -38
  622. package/ui/nav/Tree/demo/basic.d.ts +0 -32
  623. package/ui/nav/Tree/demo/basic.js +0 -72
  624. package/ui/nav/Tree/demo/level.d.ts +0 -8
  625. package/ui/nav/Tree/demo/level.js +0 -38
  626. package/ui/nav/Tree/demo/routes.d.ts +0 -8
  627. package/ui/nav/Tree/demo/routes.js +0 -37
  628. package/ui/nav/Tree/demo/selected-item.d.ts +0 -8
  629. package/ui/nav/Tree/demo/selected-item.js +0 -38
package/hooks/index.d.ts CHANGED
@@ -17,4 +17,5 @@ import useScreen from './useScreen';
17
17
  import useSelector from './useSelector';
18
18
  import useSsr from './useSsr';
19
19
  import useUniqueId from './useUniqueId';
20
- export { useAbsolutePositioning, useAddressBar, useApplication, useBem, useComponents, useDataProvider, useDataSelect, useDispatch, useFetch, useFile, useForm, useInitial, useLayout, useList, useModel, useScreen, useSelector, useSsr, useUniqueId, };
20
+ import useTheme from './useTheme';
21
+ export { useAbsolutePositioning, useAddressBar, useApplication, useBem, useComponents, useDataProvider, useDataSelect, useDispatch, useFetch, useFile, useForm, useInitial, useLayout, useList, useModel, useScreen, useSelector, useSsr, useUniqueId, useTheme, };
package/hooks/index.js CHANGED
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  exports.__esModule = true;
6
- exports.useUniqueId = exports.useSsr = exports.useSelector = exports.useScreen = exports.useModel = exports.useList = exports.useLayout = exports.useInitial = exports.useForm = exports.useFile = exports.useFetch = exports.useDispatch = exports.useDataSelect = exports.useDataProvider = exports.useComponents = exports.useBem = exports.useApplication = exports.useAddressBar = exports.useAbsolutePositioning = void 0;
6
+ exports.useTheme = exports.useUniqueId = exports.useSsr = exports.useSelector = exports.useScreen = exports.useModel = exports.useList = exports.useLayout = exports.useInitial = exports.useForm = exports.useFile = exports.useFetch = exports.useDispatch = exports.useDataSelect = exports.useDataProvider = exports.useComponents = exports.useBem = exports.useApplication = exports.useAddressBar = exports.useAbsolutePositioning = void 0;
7
7
  var useAbsolutePositioning_1 = __importDefault(require("./useAbsolutePositioning"));
8
8
  exports.useAbsolutePositioning = useAbsolutePositioning_1["default"];
9
9
  var useAddressBar_1 = __importDefault(require("./useAddressBar"));
@@ -42,3 +42,5 @@ var useSsr_1 = __importDefault(require("./useSsr"));
42
42
  exports.useSsr = useSsr_1["default"];
43
43
  var useUniqueId_1 = __importDefault(require("./useUniqueId"));
44
44
  exports.useUniqueId = useUniqueId_1["default"];
45
+ var useTheme_1 = __importDefault(require("./useTheme"));
46
+ exports.useTheme = useTheme_1["default"];
@@ -2,8 +2,19 @@
2
2
  import { Model } from '../components/MetaComponent';
3
3
  export type ListControlPosition = 'top' | 'bottom' | 'both' | string;
4
4
  export interface IAddressBarConfig {
5
+ /**
6
+ * Флаг для управления включением синхронизации с addressBar
7
+ * @example true
8
+ */
5
9
  enable?: boolean;
10
+ /**
11
+ * Использовать ли #
12
+ * @example false
13
+ */
6
14
  useHash?: boolean;
15
+ /**
16
+ * Модель
17
+ */
7
18
  model?: Model;
8
19
  }
9
20
  export interface IAddressBarOutput {
@@ -1,11 +1,12 @@
1
1
  /// <reference types="react" />
2
+ import { IThemeProviderProps } from '../providers/ThemeProvider';
2
3
  import ClientStorageComponent from '../components/ClientStorageComponent';
3
4
  import HtmlComponent from '../components/HtmlComponent';
4
5
  import StoreComponent from '../components/StoreComponent';
5
6
  import UiComponent from '../components/UiComponent';
6
7
  import MetaComponent from '../components/MetaComponent';
7
8
  import { IComponents } from '../providers/ComponentsProvider';
8
- import { IRouteItem } from '../ui/nav/Router/Router';
9
+ import { IRouteItem, IRouterProps } from '../ui/nav/Router/Router';
9
10
  import MetricsComponent from '../components/MetricsComponent';
10
11
  import { IScreenProviderProps } from '../providers/ScreenProvider';
11
12
  import { IFetchConfig } from '../hooks/useFetch';
@@ -28,6 +29,8 @@ export interface IApplicationHookConfig {
28
29
  layoutView?: () => CustomView;
29
30
  layoutProps?: Record<string, unknown>;
30
31
  screen?: Omit<IScreenProviderProps, 'children'>;
32
+ theme?: Omit<IThemeProviderProps, 'children'>;
33
+ routerProps?: IRouterProps;
31
34
  /**
32
35
  * These fetch configurations will be used to preload and store for no matter what route matched in case of SSR
33
36
  */
@@ -53,6 +53,11 @@ var React = __importStar(require("react"));
53
53
  var react_redux_1 = require("react-redux");
54
54
  var merge_1 = __importDefault(require("lodash-es/merge"));
55
55
  var react_1 = require("react");
56
+ var relativeTime_1 = __importDefault(require("dayjs/plugin/relativeTime"));
57
+ var localizedFormat_1 = __importDefault(require("dayjs/plugin/localizedFormat"));
58
+ var dayjs_1 = __importDefault(require("dayjs"));
59
+ var utc_1 = __importDefault(require("dayjs/plugin/utc"));
60
+ var ThemeProvider_1 = __importDefault(require("../providers/ThemeProvider"));
56
61
  var ClientStorageComponent_1 = __importDefault(require("../components/ClientStorageComponent"));
57
62
  var HtmlComponent_1 = __importDefault(require("../components/HtmlComponent"));
58
63
  var StoreComponent_1 = __importDefault(require("../components/StoreComponent"));
@@ -92,6 +97,10 @@ exports.defaultComponents = {
92
97
  function useApplication(config) {
93
98
  if (config === void 0) { config = {}; }
94
99
  var useGlobal = config.useGlobal !== false;
100
+ //Extending dayjs / day.js with modules that used in steroids
101
+ dayjs_1["default"].extend(relativeTime_1["default"]);
102
+ dayjs_1["default"].extend(localizedFormat_1["default"]);
103
+ dayjs_1["default"].extend(utc_1["default"]);
95
104
  var components = (0, useComponents_1["default"])();
96
105
  if (useGlobal && !process.env.IS_SSR) {
97
106
  components = window.SteroidsComponents || null;
@@ -126,11 +135,14 @@ function useApplication(config) {
126
135
  var content = children;
127
136
  // Wrap in routes
128
137
  if (config.routes) {
129
- content = (React.createElement(Router_1["default"], { routes: config.routes(), wrapperView: config.layoutView(), wrapperProps: config.layoutProps }));
138
+ content = (React.createElement(Router_1["default"], __assign({ routes: config.routes(), wrapperView: config.layoutView(), wrapperProps: config.layoutProps }, config.routerProps)));
130
139
  }
131
140
  if (config.screen) {
132
141
  content = (React.createElement(ScreenProvider_1["default"], __assign({}, config.screen), content));
133
142
  }
143
+ if (config.theme) {
144
+ content = (React.createElement(ThemeProvider_1["default"], __assign({}, config.theme), content));
145
+ }
134
146
  if (!(useGlobal || process.env.IS_SSR)) {
135
147
  content = (React.createElement(ComponentsProvider_1["default"], { components: components }, content));
136
148
  }
@@ -1,6 +1,5 @@
1
- import { IApiMethod } from '../components/ApiComponent';
2
1
  import Enum from '../base/Enum';
3
- export interface AutoCompleteConfig {
2
+ export interface IAutoCompleteConfig {
4
3
  /**
5
4
  * Подключить autocomplete?
6
5
  * @example true
@@ -24,6 +23,32 @@ export type DataProviderItems = string | ({
24
23
  label: string | any;
25
24
  [key: string]: any;
26
25
  })[];
26
+ export interface IDataProvider {
27
+ /**
28
+ * Уникальный (глобально) идентификатор, под которых будут храниться
29
+ * подгруженные данные в redux (при включенном флаге useRedux). Если
30
+ * не задан - данные будут храниться в локальном стейте
31
+ */
32
+ reduxId?: string;
33
+ /**
34
+ * URL для подгрузки новой коллекции данных
35
+ * @example '/api/v1/search'
36
+ */
37
+ action?: string;
38
+ /**
39
+ * Параметры запроса
40
+ * @example {pageSize: 3}
41
+ */
42
+ params?: Record<string, unknown>;
43
+ /**
44
+ * Обработчик, который вызывается для подгрузки данных.
45
+ * Если обработчик не передан, то по умолчанию отправится post-запрос.
46
+ * @param {string} action
47
+ * @param {Object} params
48
+ * @return {Promise<Array> | Array}
49
+ */
50
+ onSearch?: (action: string, params: Record<string, unknown>) => Array<unknown> | Promise<Array<unknown>>;
51
+ }
27
52
  export interface IDataProviderConfig {
28
53
  /**
29
54
  * Коллекция элементов
@@ -34,32 +59,7 @@ export interface IDataProviderConfig {
34
59
  * Конфигурация для подгрузки данных извне.
35
60
  * Если dataProvider не передан, то поиск данных по запросу происходит локально.
36
61
  */
37
- dataProvider?: {
38
- /**
39
- * Уникальный (глобально) идентификатор, под которых будут храниться
40
- * подгруженные данные в redux (при включенном флаге useRedux). Если
41
- * не задан - данные будут храниться в локальном стейте
42
- */
43
- reduxId?: string;
44
- /**
45
- * URL для подгрузки новой коллекции данных
46
- * @example '/api/v1/search'
47
- */
48
- action?: string | IApiMethod;
49
- /**
50
- * Параметры запроса
51
- * @example {pageSize: 3}
52
- */
53
- params?: Record<string, unknown>;
54
- /**
55
- * Обработчик, который вызывается для подгрузки данных.
56
- * Если обработчик не передан, то по умолчанию отправится post-запрос.
57
- * @param {string} action
58
- * @param {Object} params
59
- * @return {Promise<Array> | Array}
60
- */
61
- onSearch?: (action: string, params: Record<string, unknown>) => Array<unknown> | Promise<Array<unknown>>;
62
- };
62
+ dataProvider?: IDataProvider;
63
63
  /**
64
64
  * Текст запроса
65
65
  * @example 'some text'
@@ -69,7 +69,7 @@ export interface IDataProviderConfig {
69
69
  * Настройки поиска
70
70
  * @example {enable: true, minLength: 2, delay: 100}
71
71
  */
72
- autoComplete?: boolean | AutoCompleteConfig;
72
+ autoComplete?: boolean | IAutoCompleteConfig;
73
73
  /**
74
74
  * Загрузка данных после любого изменения запроса.
75
75
  * Если включен autoFetch, то настройки autoComplete не применятся.
@@ -132,10 +132,9 @@ function useDataProvider(config) {
132
132
  return __generator(this, function (_b) {
133
133
  switch (_b.label) {
134
134
  case 0:
135
- searchHandler = dataProvider.onSearch || (typeof dataProvider.action === 'function'
136
- ? function (method, params) { return method(components.api, params).then(function (response) { return response.data; }); }
137
- : function (method, params) { return components.http.send(dataProvider.actionMethod, method, params)
138
- .then(function (response) { return response.data; }); });
135
+ searchHandler = dataProvider.onSearch || (function (method, params) { return components.http
136
+ .send(dataProvider.actionMethod, method, params)
137
+ .then(function (response) { return response.data; }); });
139
138
  result = searchHandler(dataProvider.action, __assign(__assign(__assign({ query: config.query }, (isAuto ? { ids: config.initialSelectedIds } : null)), (((_a = config.initialSelectedIds) === null || _a === void 0 ? void 0 : _a.length) > 0 ? { withIds: config.initialSelectedIds } : null)), config.dataProvider.params));
140
139
  if (!(result && (0, isFunction_1["default"])(result.then))) return [3 /*break*/, 2];
141
140
  setIsLoading(true);
@@ -179,7 +178,7 @@ function useDataProvider(config) {
179
178
  delayTimerRef.current = setTimeout(fetchRemote, autoComplete.delay);
180
179
  }
181
180
  }
182
- }, [autoComplete, components.api, components.http, config.autoFetch,
181
+ }, [autoComplete, components.http, config.autoFetch,
183
182
  config.dataProvider, config.initialSelectedIds, config.query, dataProvider,
184
183
  dataProvider.action, dataProvider.onSearch, prevParams, prevQuery, prevValues, setSourceItems, sourceItems]);
185
184
  return {
@@ -1,5 +1,11 @@
1
- interface IDataSelectItem {
1
+ export interface IDataSelectItem {
2
+ /**
3
+ * Идентификатор элемента
4
+ */
2
5
  id: number | string | boolean;
6
+ /**
7
+ * Отображаемое название для IDataSelectItem
8
+ */
3
9
  label?: string;
4
10
  [key: string]: unknown;
5
11
  }
@@ -54,7 +60,8 @@ export interface IDataSelectResult {
54
60
  selectedIds: PrimaryKey[];
55
61
  setSelectedIds: (ids: PrimaryKey | PrimaryKey[], skipToggle?: boolean) => void;
56
62
  selectedItems: IDataSelectItem[];
63
+ setSelectedAll: VoidFunction;
64
+ isSelectedAll: boolean;
57
65
  }
58
- export declare const getLinearItems: (items: any, groupAttribute: any) => any[];
66
+ export declare const getFlattenedItems: (items: any, groupAttribute: any) => any[];
59
67
  export default function useDataSelect(config: IDataSelectConfig): IDataSelectResult;
60
- export {};
@@ -12,7 +12,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  exports.__esModule = true;
15
- exports.getLinearItems = void 0;
15
+ exports.getFlattenedItems = void 0;
16
16
  var isEqual_1 = __importDefault(require("lodash-es/isEqual"));
17
17
  var isArray_1 = __importDefault(require("lodash-es/isArray"));
18
18
  var isNil_1 = __importDefault(require("lodash-es/isNil"));
@@ -21,11 +21,11 @@ var react_use_1 = require("react-use");
21
21
  var defaultProps = {
22
22
  primaryKey: 'id'
23
23
  };
24
- var getLinearItems = function (items, groupAttribute) {
24
+ var getFlattenedItems = function (items, groupAttribute) {
25
25
  var result = [];
26
26
  items.forEach(function (item) {
27
27
  if (groupAttribute && Array.isArray(item[groupAttribute])) {
28
- result = result.concat((0, exports.getLinearItems)(item[groupAttribute], groupAttribute));
28
+ result = result.concat((0, exports.getFlattenedItems)(item[groupAttribute], groupAttribute));
29
29
  }
30
30
  else {
31
31
  result.push(item);
@@ -33,7 +33,7 @@ var getLinearItems = function (items, groupAttribute) {
33
33
  });
34
34
  return result;
35
35
  };
36
- exports.getLinearItems = getLinearItems;
36
+ exports.getFlattenedItems = getFlattenedItems;
37
37
  var isIdExists = function (id) {
38
38
  if (typeof id === 'boolean') {
39
39
  return true;
@@ -43,7 +43,7 @@ var isIdExists = function (id) {
43
43
  function useDataSelect(config) {
44
44
  // Get primary key
45
45
  var primaryKey = config.primaryKey || defaultProps.primaryKey;
46
- var linearItems = (0, react_1.useMemo)(function () { return (0, exports.getLinearItems)(config.items, config.groupAttribute); }, [config.groupAttribute, config.items]);
46
+ var flattenedItems = (0, react_1.useMemo)(function () { return (0, exports.getFlattenedItems)(config.items, config.groupAttribute); }, [config.groupAttribute, config.items]);
47
47
  // Initial select
48
48
  var initialSelectedIds = (0, react_1.useMemo)(function () {
49
49
  var _a;
@@ -53,22 +53,23 @@ function useDataSelect(config) {
53
53
  if (!(0, isNil_1["default"])(config.inputValue)) {
54
54
  return [].concat((0, isArray_1["default"])(config.inputValue) ? config.inputValue : [config.inputValue]);
55
55
  }
56
- return config.selectFirst && linearItems.length > 0
57
- ? [linearItems[0][primaryKey]]
56
+ return config.selectFirst && flattenedItems.length > 0
57
+ ? [flattenedItems[0][primaryKey]]
58
58
  : [];
59
- }, [config.selectedIds, config.inputValue, config.selectFirst, linearItems, primaryKey]);
60
- var initialSelectedItems = (0, react_1.useMemo)(function () { return linearItems.length > 0
59
+ }, [config.selectedIds, config.inputValue, config.selectFirst, flattenedItems, primaryKey]);
60
+ var initialSelectedItems = (0, react_1.useMemo)(function () { return flattenedItems.length > 0
61
61
  && initialSelectedIds.length > 0
62
62
  ? initialSelectedIds
63
- .map(function (selectedId) { return linearItems.find(function (item) { return item.id === selectedId; }); })
63
+ .map(function (selectedId) { return flattenedItems.find(function (item) { return item.id === selectedId; }); })
64
64
  .filter(isIdExists)
65
- : []; }, [initialSelectedIds, linearItems]);
65
+ : []; }, [initialSelectedIds, flattenedItems]);
66
66
  // State
67
67
  var _a = (0, react_1.useState)(false), isOpened = _a[0], setIsOpened = _a[1];
68
68
  var _b = (0, react_1.useState)(false), isFocused = _b[0], setIsFocused = _b[1];
69
69
  var _c = (0, react_1.useState)(null), hoveredId = _c[0], setHoveredId = _c[1];
70
70
  var _d = (0, react_1.useState)(initialSelectedIds), selectedIds = _d[0], setSelectedIdsInternal = _d[1];
71
71
  var _e = (0, react_1.useState)(initialSelectedItems), selectedItems = _e[0], setSelectedItemsInternal = _e[1];
72
+ var _f = (0, react_1.useState)(config.items.length === selectedIds.length), isSelectedAll = _f[0], setIsSelectedAll = _f[1];
72
73
  // Handler for select/toggle item by id
73
74
  var setSelectedIds = (0, react_1.useCallback)(function (ids, skipToggle) {
74
75
  if (skipToggle === void 0) { skipToggle = false; }
@@ -76,6 +77,10 @@ function useDataSelect(config) {
76
77
  if (!config.multiple && ids.length > 1) {
77
78
  ids = [ids[0]];
78
79
  }
80
+ if (selectedItems.length === ids.length) {
81
+ setSelectedIds([]);
82
+ return;
83
+ }
79
84
  setSelectedIdsInternal(ids.sort());
80
85
  }
81
86
  else {
@@ -100,14 +105,18 @@ function useDataSelect(config) {
100
105
  setIsOpened(false);
101
106
  }
102
107
  }
103
- }, [config.multiple, selectedIds]);
108
+ }, [config.multiple, selectedIds, selectedItems.length]);
109
+ var setSelectedAll = (0, react_1.useCallback)(function () {
110
+ var itemsIds = flattenedItems.map(function (item) { return item.id; });
111
+ setSelectedIds(itemsIds);
112
+ }, [flattenedItems, setSelectedIds]);
104
113
  // Update selected items on change selectedIds or items or source items
105
114
  var prevSelectedIdsLength = (0, react_use_1.usePrevious)(selectedIds.length);
106
115
  (0, react_use_1.useUpdateEffect)(function () {
107
116
  var newSelectedItems = [];
108
117
  var hasChanges = false;
109
118
  selectedIds.forEach(function (selectedId) {
110
- var finedItem = linearItems.find(function (item) { return item[primaryKey] === selectedId; });
119
+ var finedItem = flattenedItems.find(function (item) { return item[primaryKey] === selectedId; });
111
120
  if (!finedItem && config.sourceItems) {
112
121
  finedItem = config.sourceItems.find(function (item) { return item[primaryKey] === selectedId; });
113
122
  }
@@ -123,14 +132,14 @@ function useDataSelect(config) {
123
132
  if (hasChanges || prevSelectedIdsLength !== selectedIds.length) {
124
133
  setSelectedItemsInternal(newSelectedItems);
125
134
  }
126
- }, [linearItems, config.sourceItems, primaryKey, selectedIds, selectedItems, prevSelectedIdsLength]);
135
+ }, [flattenedItems, config.sourceItems, primaryKey, selectedIds, selectedItems, prevSelectedIdsLength]);
127
136
  // Select first after fetch data
128
- var prevItemsLength = (0, react_use_1.usePrevious)(linearItems.length);
137
+ var prevItemsLength = (0, react_use_1.usePrevious)(flattenedItems.length);
129
138
  (0, react_use_1.useUpdateEffect)(function () {
130
- if (config.selectFirst && prevItemsLength === 0 && linearItems.length > 0) {
131
- setSelectedIdsInternal([linearItems[0][primaryKey]]);
139
+ if (config.selectFirst && prevItemsLength === 0 && flattenedItems.length > 0) {
140
+ setSelectedIdsInternal([flattenedItems[0][primaryKey]]);
132
141
  }
133
- }, [linearItems, config.selectFirst, prevItemsLength, primaryKey]);
142
+ }, [flattenedItems, config.selectFirst, prevItemsLength, primaryKey]);
134
143
  // Update selected items on change value
135
144
  var prevConfigSelectedIds = (0, react_use_1.usePrevious)(config.selectedIds || []);
136
145
  (0, react_use_1.useUpdateEffect)(function () {
@@ -146,6 +155,9 @@ function useDataSelect(config) {
146
155
  setSelectedIdsInternal(newSelectedIds);
147
156
  }
148
157
  }, [config.selectedIds, prevConfigSelectedIds, selectedIds, selectedItems]);
158
+ (0, react_use_1.useUpdateEffect)(function () {
159
+ setIsSelectedAll(config.items.length === selectedIds.length);
160
+ }, [config.items.length, selectedIds]);
149
161
  // Global key down handler for navigate on items
150
162
  // Support keys:
151
163
  // - tab
@@ -175,9 +187,9 @@ function useDataSelect(config) {
175
187
  // Select first selected
176
188
  setSelectedIds(selectedIds[0], true);
177
189
  }
178
- else if (linearItems.length > 0) {
190
+ else if (flattenedItems.length > 0) {
179
191
  // Select first result
180
- setSelectedIds(linearItems[0], true);
192
+ setSelectedIds(flattenedItems[0], true);
181
193
  }
182
194
  setIsOpened(false);
183
195
  }
@@ -202,7 +214,7 @@ function useDataSelect(config) {
202
214
  else {
203
215
  // Navigate on items by keys
204
216
  var direction = isDown ? 1 : -1;
205
- var keys = linearItems.map(function (item) { return item.id; });
217
+ var keys = flattenedItems.map(function (item) { return item.id; });
206
218
  // Get current index
207
219
  var index = hoveredId ? keys.indexOf(hoveredId) : -1;
208
220
  if (index === -1 && selectedIds.length === 1) {
@@ -216,7 +228,7 @@ function useDataSelect(config) {
216
228
  setHoveredId(keys[newIndex]);
217
229
  }
218
230
  }
219
- }, [isFocused, isOpened, hoveredId, selectedIds, linearItems, setSelectedIds]);
231
+ }, [isFocused, isOpened, hoveredId, selectedIds, flattenedItems, setSelectedIds]);
220
232
  (0, react_use_1.useEvent)('keydown', onKeyDown);
221
233
  return {
222
234
  isOpened: isOpened,
@@ -227,7 +239,9 @@ function useDataSelect(config) {
227
239
  setHoveredId: setHoveredId,
228
240
  selectedIds: selectedIds,
229
241
  setSelectedIds: setSelectedIds,
230
- selectedItems: selectedItems
242
+ selectedItems: selectedItems,
243
+ setSelectedAll: setSelectedAll,
244
+ isSelectedAll: isSelectedAll
231
245
  };
232
246
  }
233
247
  exports["default"] = useDataSelect;
@@ -1,6 +1,5 @@
1
1
  import { AxiosError } from 'axios';
2
2
  import { IComponents } from '../providers/ComponentsProvider';
3
- import { IApiMethod } from '../components/ApiComponent';
4
3
  declare global {
5
4
  interface Window {
6
5
  APP_PRELOADED_DATA: any;
@@ -8,21 +7,21 @@ declare global {
8
7
  }
9
8
  export interface IFetchConfig {
10
9
  id?: string | number;
11
- url?: string | IApiMethod;
10
+ url?: string;
12
11
  method?: 'get' | 'post' | string;
13
12
  params?: Record<string, unknown>;
14
13
  onFetch?: (config: IFetchConfig, components: IComponents, addCancelToken: (token: any) => any) => any;
15
14
  }
16
- export interface IFetchResult {
15
+ export interface IFetchResult<T> {
17
16
  data?: {
18
17
  providerData?: {
19
18
  type: string;
20
19
  value: string;
21
20
  };
22
21
  [key: string]: unknown;
23
- } | any;
22
+ } | T;
24
23
  isLoading: boolean;
25
- fetch?: (newParams?: Record<string, unknown>) => void;
24
+ fetch: (newParams?: Record<string, unknown>) => void;
26
25
  axiosError: AxiosError | null;
27
26
  }
28
27
  export declare const normalizeConfig: (config: any) => any;
@@ -38,4 +37,4 @@ export declare const fetchData: (config: any, components: any, addCancelToken: a
38
37
  * В процесс загрузки HOC будет отображать "Загрузка...", а после уже отрендерит компонент, передав данные в указанный
39
38
  * ключ `key`.
40
39
  */
41
- export default function useFetch(rawConfig?: IFetchConfig): IFetchResult;
40
+ export default function useFetch<T = any>(rawConfig?: IFetchConfig): IFetchResult<T>;
package/hooks/useFetch.js CHANGED
@@ -75,9 +75,6 @@ var defaultFetchHandler = function (config, components, addCancelToken) {
75
75
  var cancelToken = new axios_1["default"].CancelToken(function (cancel) {
76
76
  addCancelToken(cancel);
77
77
  });
78
- if (typeof config.url === 'function') {
79
- return config.url(components.api, config.params, config.options).then(function (result) { return result.data; });
80
- }
81
78
  return components.http
82
79
  .send(config.method, config.url, config.params, __assign(__assign({}, config.options), { cancelToken: cancelToken }))
83
80
  .then(function (result) { return result.data; });
@@ -1,2 +1,51 @@
1
- import { IFileHocInput, IFileHocOutput } from '../hoc/file';
2
- export default function useFile(props: IFileHocInput): IFileHocOutput;
1
+ export interface IFileInput {
2
+ /**
3
+ * Параметры для input элемента
4
+ */
5
+ input?: FormInputType;
6
+ /**
7
+ * Множественный выбор файлов
8
+ */
9
+ multiple?: boolean;
10
+ /**
11
+ * Позволяет указать uploader
12
+ */
13
+ uploader?: any;
14
+ /**
15
+ * Экшен для отправки на бэкенд
16
+ * @example '/api/v1/user/avatar/crop'
17
+ */
18
+ backendUrl?: any;
19
+ /**
20
+ * Список mime-типов
21
+ */
22
+ mimeTypes?: any;
23
+ /**
24
+ * Использовать только изображения
25
+ */
26
+ imagesOnly?: any;
27
+ imagesProcessor?: any;
28
+ /**
29
+ * Точные размеры изображений
30
+ */
31
+ imagesExactSize?: any;
32
+ /**
33
+ * Начальные файлы
34
+ */
35
+ initialFiles?: any;
36
+ /**
37
+ * Параметры для uploader
38
+ */
39
+ uploaderConfig?: {
40
+ useFormData?: boolean;
41
+ fileFieldName?: string;
42
+ } | any;
43
+ }
44
+ export interface IFileOutput {
45
+ uploader?: any;
46
+ files?: any[];
47
+ onBrowse?: any;
48
+ onRemove?: any;
49
+ onAdd?: any;
50
+ }
51
+ export default function useFile(props: IFileInput): IFileOutput;
@@ -3,7 +3,6 @@ export default function useForm(): {
3
3
  model: any;
4
4
  prefix: string | boolean;
5
5
  size: string;
6
- layout: FormLayout;
7
6
  formDispatch: any;
8
7
  formSelector: (selector: (state: any, setValue: any) => any) => any;
9
8
  };
package/hooks/useForm.js CHANGED
@@ -10,7 +10,6 @@ function useForm() {
10
10
  model: context.model,
11
11
  prefix: context.prefix,
12
12
  size: context.size,
13
- layout: context.layout,
14
13
  formDispatch: context === null || context === void 0 ? void 0 : context.dispatch,
15
14
  formSelector: function (selector) { var _a; return (_a = context === null || context === void 0 ? void 0 : context.provider) === null || _a === void 0 ? void 0 : _a.select(context.formId, selector); }
16
15
  }
@@ -1,4 +1,3 @@
1
- import { IApiMethod } from '../components/ApiComponent';
2
1
  import { IAddressBarConfig } from '../hooks/useAddressBar';
3
2
  import { IList } from '../actions/list';
4
3
  import { ILayoutNamesProps } from '../ui/list/LayoutNames/LayoutNames';
@@ -8,7 +7,7 @@ import { IEmptyProps } from '../ui/list/Empty/Empty';
8
7
  import { IFormProps } from '../ui/form/Form/Form';
9
8
  import { Model } from '../components/MetaComponent';
10
9
  export type ListControlPosition = 'top' | 'bottom' | 'both' | string;
11
- interface ISortProps {
10
+ export interface ISortConfig {
12
11
  /**
13
12
  * Включить сортировку
14
13
  * @example false
@@ -41,7 +40,7 @@ export interface IListConfig {
41
40
  * Url, который вернет коллекцию элементов
42
41
  * @example api/v1/articles
43
42
  */
44
- action?: string | IApiMethod;
43
+ action?: string;
45
44
  /**
46
45
  * Тип HTTP запроса (GET | POST | PUT | DELETE)
47
46
  * @example GET
@@ -61,7 +60,7 @@ export interface IListConfig {
61
60
  * Подключение сортировки
62
61
  * @example {enable: true, defaultSort: 'startDate'}
63
62
  */
64
- sort?: boolean | ISortProps;
63
+ sort?: boolean | ISortConfig;
65
64
  /**
66
65
  * Варианты расположения элементов коллекции
67
66
  * @example {items: [{id: 'list', label: 'List'}, {id: 'grid', label: 'Grid'}]}
@@ -102,6 +101,11 @@ export interface IListConfig {
102
101
  * @return {Promise}
103
102
  */
104
103
  onFetch?: (list: IList, query: Record<string, unknown>, http: any) => Promise<any>;
104
+ /**
105
+ * Обработчик события ошибки выполнения запроса
106
+ * @param args
107
+ */
108
+ onError?: (error: Record<string, any>) => void;
105
109
  /**
106
110
  * Обработчик, который составляет список условий для локальной фильтрации элементов коллекции
107
111
  * @param {Object} query
@@ -113,12 +117,18 @@ export interface IListConfig {
113
117
  * @example true
114
118
  */
115
119
  addressBar?: boolean | IAddressBarConfig;
120
+ /**
121
+ * Параметр для загрузки данных списка с сервера
122
+ */
116
123
  scope?: string[];
117
124
  /**
118
125
  * Дополнительные параметры, значения которых нужно передавать в запросе для получения данных
119
126
  * @example {tagName: 'MarketReviews'}
120
127
  */
121
128
  query?: Record<string, unknown>;
129
+ /**
130
+ * Модель
131
+ */
122
132
  model?: string;
123
133
  /**
124
134
  * Модель для синхронизации значений формы с адресной строкой
@@ -203,4 +213,3 @@ export declare const createInitialValues: ({ paginationProps, paginationSizeProp
203
213
  * Выбранные фильтры синхронизируются с адресной строкой.
204
214
  */
205
215
  export default function useList(config: IListConfig): IListOutput;
206
- export {};
package/hooks/useList.js CHANGED
@@ -141,7 +141,7 @@ function useList(config) {
141
141
  // Layout switcher
142
142
  var LayoutNames = require('../ui/list/LayoutNames')["default"];
143
143
  var layoutNamesProps = (0, LayoutNames_1.normalizeLayoutNamesProps)(config.layout);
144
- var renderLayoutNames = function () { return React.createElement(LayoutNames, __assign({ list: list }, layoutNamesProps)); };
144
+ var renderLayoutNames = function () { return (React.createElement(LayoutNames, __assign({ list: list }, layoutNamesProps))); };
145
145
  // Models
146
146
  var defaultSearchModel = (0, react_1.useMemo)(function () { return (0, exports.getDefaultSearchModel)({
147
147
  paginationProps: paginationProps,
@@ -189,6 +189,7 @@ function useList(config) {
189
189
  action: config.action || config.action === '' ? config.action : null,
190
190
  actionMethod: config.actionMethod || exports.defaultConfig.actionMethod,
191
191
  onFetch: config.onFetch,
192
+ onError: config.onError,
192
193
  condition: config.condition,
193
194
  scope: config.scope,
194
195
  items: null,
@@ -256,7 +257,10 @@ function useList(config) {
256
257
  (0, react_use_1.useUnmount)(function () {
257
258
  var autoDestroy = typeof config.autoDestroy === 'boolean' ? config.autoDestroy : exports.defaultConfig.autoDestroy;
258
259
  if (autoDestroy) {
259
- dispatch((0, list_2.listDestroy)(config.listId));
260
+ dispatch([
261
+ (0, list_2.listDestroy)(config.listId),
262
+ (0, form_1.formDestroy)(config.listId),
263
+ ]);
260
264
  }
261
265
  });
262
266
  var onFetch = (0, react_1.useCallback)(function (params) {
@@ -0,0 +1,2 @@
1
+ import { ITheme } from '../providers/ThemeProvider';
2
+ export default function useTheme(): ITheme;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ exports.__esModule = true;
3
+ var react_1 = require("react");
4
+ var ThemeProvider_1 = require("../providers/ThemeProvider");
5
+ function useTheme() {
6
+ return (0, react_1.useContext)(ThemeProvider_1.ThemeContext);
7
+ }
8
+ exports["default"] = useTheme;