@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
@@ -1,6 +1,15 @@
1
1
  import * as React from 'react';
2
+ import { ILinkProps } from 'src/ui/nav/Link/Link';
2
3
  import { IListConfig, ListControlPosition } from '../../../hooks/useList';
3
4
  import { IControlItem } from '../../nav/Controls/Controls';
5
+ export interface IColumnViewProps extends IGridColumn {
6
+ item: Record<string, any>;
7
+ size: Size;
8
+ primaryKey: string;
9
+ listId: string;
10
+ model: string;
11
+ [key: string]: any;
12
+ }
4
13
  export interface IGridColumn {
5
14
  /**
6
15
  * Атрибут колонки, по которому происходит поиск нужного свойства в items и нужного поля в SearchForm
@@ -44,7 +53,7 @@ export interface IGridColumn {
44
53
  * Компонент для кастомизации отображения значения в ячейке
45
54
  * @example MyCustomView
46
55
  */
47
- valueView?: any;
56
+ valueView?: any | 'ContentColumnView';
48
57
  /**
49
58
  * Свойства для компонента отображения значения в ячейке
50
59
  */
@@ -58,6 +67,48 @@ export interface IGridColumn {
58
67
  * @example true
59
68
  */
60
69
  sortable?: boolean;
70
+ /**
71
+ * Название свойства в items, которое будет использовано как subtitle
72
+ * @example 'name'
73
+ */
74
+ subtitleAttribute?: string;
75
+ /**
76
+ * Параметры для ссылки в колонке
77
+ * @example {attribute: 'name', linkProps: {target: 'blank'}, url: 'https://kozhindev.com'}
78
+ */
79
+ link?: {
80
+ attribute: string;
81
+ linkProps?: ILinkProps;
82
+ urlAttribute: string;
83
+ };
84
+ /**
85
+ * Параметры для иконки в колонке
86
+ * @example {attribute: 'icon', isLeft: true}
87
+ */
88
+ icon?: {
89
+ attribute: string;
90
+ isLeft?: boolean;
91
+ };
92
+ /**
93
+ * Параметры для картинки в колонке
94
+ * @example {attribute: 'icon', isLeft: true}
95
+ */
96
+ picture?: {
97
+ attribute: string;
98
+ isLeft?: boolean;
99
+ };
100
+ /**
101
+ * Диаграмма.
102
+ * Цвет должен соответствовать success | warning | danger | secondary.
103
+ * Цвета можно расширить или изменить через стили (см. colors.scss в react-bootstrap)
104
+ */
105
+ diagram?: {
106
+ type: 'horizontal' | 'vertical' | 'circle';
107
+ items: {
108
+ color: 'success' | 'warning' | 'danger' | 'secondary' | string;
109
+ percentageAttribute: string;
110
+ }[];
111
+ };
61
112
  }
62
113
  /**
63
114
  * Grid
@@ -68,7 +119,7 @@ export interface IGridProps extends IListConfig {
68
119
  * Переопределение view React компонента для кастомизации отображения
69
120
  * @example MyCustomView
70
121
  */
71
- view?: any;
122
+ view?: CustomView;
72
123
  /**
73
124
  * Коллекция с наименованиями и свойствами колонок в таблице
74
125
  * @example [{label: 'Name', attribute: 'name'}, {label: 'Work', attribute: 'work'}]
@@ -85,6 +136,14 @@ export interface IGridProps extends IListConfig {
85
136
  * должно быть задано свойство index
86
137
  */
87
138
  itemsIndexing?: any;
139
+ /**
140
+ * Размер Grid
141
+ */
142
+ size?: Size;
143
+ /**
144
+ * Включает переменные цвета для строк в таблице
145
+ */
146
+ hasAlternatingColors?: boolean;
88
147
  [key: string]: any;
89
148
  }
90
149
  export interface IGridViewProps extends Omit<IGridProps, 'onFetch'> {
@@ -105,4 +164,11 @@ export interface IGridViewProps extends Omit<IGridProps, 'onFetch'> {
105
164
  onFetch: (params?: Record<string, unknown>) => void;
106
165
  onSort: (value: any) => void;
107
166
  }
108
- export default function Grid(props: IGridProps): JSX.Element;
167
+ declare function Grid(props: IGridProps): JSX.Element;
168
+ declare namespace Grid {
169
+ var defaultProps: {
170
+ size: string;
171
+ hasAlternatingColors: boolean;
172
+ };
173
+ }
174
+ export default Grid;
@@ -88,10 +88,15 @@ function Grid(props) {
88
88
  var renderValue = (0, react_1.useCallback)(function (item, column) {
89
89
  // Custom component
90
90
  if (column.valueView) {
91
- var ValueView = column.valueView;
92
- return (React.createElement(ValueView, __assign({}, column, column.valueProps, { listId: props.listId, primaryKey: props.primaryKey, item: item })));
91
+ var isValueViewString = typeof column.valueView === 'string';
92
+ var ValueView = isValueViewString ? components.ui.getView("list.".concat(column.valueView)) : column.valueView;
93
+ var viewProps = __assign(__assign(__assign({}, column), column.valueProps), { listId: props.listId, primaryKey: props.primaryKey, item: item, size: props.size });
94
+ if (isValueViewString) {
95
+ return components.ui.renderView(ValueView, viewProps);
96
+ }
97
+ return (React.createElement(ValueView, __assign({}, viewProps)));
93
98
  }
94
- return React.createElement(Format_1["default"], __assign({ item: item, model: props.model }, column, (column.formatter || {})));
99
+ return (React.createElement(Format_1["default"], __assign({ item: item, model: props.model }, column, (column.formatter || {}))));
95
100
  }, [props.listId, props.model, props.primaryKey]);
96
101
  // Columns
97
102
  var columns = (0, react_1.useMemo)(function () { return []
@@ -117,3 +122,7 @@ function Grid(props) {
117
122
  return components.ui.renderView(props.view || 'list.GridView', __assign(__assign({}, props), { list: list, paginationPosition: paginationPosition, paginationSizePosition: paginationSizePosition, layoutNamesPosition: layoutNamesPosition, renderList: renderList, renderEmpty: renderEmpty, renderPagination: renderPagination, renderPaginationSize: renderPaginationSize, renderLayoutNames: renderLayoutNames, renderSearchForm: renderSearchForm, renderValue: renderValue, columns: columns, onFetch: onFetch, onSort: onSort, items: (list === null || list === void 0 ? void 0 : list.items) || [] }));
118
123
  }
119
124
  exports["default"] = Grid;
125
+ Grid.defaultProps = {
126
+ size: 'md',
127
+ hasAlternatingColors: true
128
+ };
@@ -34,10 +34,12 @@ export interface IListViewProps extends Omit<IListProps, 'onFetch'>, Omit<IListO
34
34
  }
35
35
  export interface IListItemViewProps {
36
36
  id: PrimaryKey;
37
+ primaryKey: PrimaryKey;
37
38
  item: {
38
39
  id?: PrimaryKey;
39
40
  title?: string | any;
40
41
  label?: string | any;
42
+ [key: string]: any;
41
43
  };
42
44
  index: number;
43
45
  className?: CssClassName;
@@ -55,6 +55,7 @@ function List(props) {
55
55
  searchForm: props.searchForm,
56
56
  autoDestroy: props.autoDestroy,
57
57
  onFetch: props.onFetch,
58
+ onError: props.onError,
58
59
  condition: props.condition,
59
60
  addressBar: props.addressBar,
60
61
  scope: props.scope,
@@ -1,5 +1,4 @@
1
1
  import * as React from 'react';
2
- import { ListControlPosition } from '../../../hooks/useList';
3
2
  import { IButtonProps } from '../../form/Button/Button';
4
3
  /**
5
4
  * Pagination
@@ -41,10 +40,8 @@ export interface IPaginationProps {
41
40
  */
42
41
  className?: CssClassName;
43
42
  /**
44
- * Расположение пагинации
45
- * @example 'both'
46
- */
47
- position?: ListControlPosition;
43
+ * Параметры кнопки
44
+ */
48
45
  buttonProps?: IButtonProps;
49
46
  /**
50
47
  * Переопределение view React компонента для кастомизации отображения
@@ -69,6 +66,16 @@ export interface IPaginationProps {
69
66
  * Список, для которого используется пагинация
70
67
  */
71
68
  list?: any;
69
+ /**
70
+ * Нужно ли отображать кнопки с шагом в одну страницу
71
+ * @example {'true'}
72
+ */
73
+ showSteps?: boolean;
74
+ /**
75
+ * Нужно ли отображать кнопки с шагом до первой / последней страницы
76
+ * @example {'true'}
77
+ */
78
+ showEdgeSteps?: boolean;
72
79
  [key: string]: any;
73
80
  }
74
81
  export interface IPaginationViewProps extends IPaginationProps {
@@ -80,6 +87,11 @@ export interface IPaginationViewProps extends IPaginationProps {
80
87
  }[];
81
88
  onSelect: (page: number) => void;
82
89
  onSelectNext: () => void;
90
+ onSelectPrev: () => void;
91
+ onSelectLast: () => void;
92
+ onSelectFirst: () => void;
93
+ isFirstPage: boolean;
94
+ isLastPage: boolean;
83
95
  }
84
96
  export declare const generatePages: (page: any, totalPages: any, aroundCount?: number) => any[];
85
97
  declare function Pagination(props: IPaginationProps): JSX.Element;
@@ -89,6 +101,7 @@ declare namespace Pagination {
89
101
  attribute: string;
90
102
  aroundCount: number;
91
103
  defaultValue: number;
104
+ size: string;
92
105
  loadMore: boolean;
93
106
  position: string;
94
107
  sizeAttribute: string;
@@ -44,6 +44,7 @@ var React = __importStar(require("react"));
44
44
  var hooks_1 = require("../../../hooks");
45
45
  var useForm_1 = __importDefault(require("../../../hooks/useForm"));
46
46
  var form_1 = require("../../../actions/form");
47
+ var FIRST_PAGE = 1;
47
48
  var generatePages = function (page, totalPages, aroundCount) {
48
49
  if (aroundCount === void 0) { aroundCount = 3; }
49
50
  if (!page || !totalPages) {
@@ -78,6 +79,8 @@ function Pagination(props) {
78
79
  });
79
80
  }) || initialValues, page = _e.page, pageSize = _e.pageSize;
80
81
  var totalPages = Math.ceil((((_c = props.list) === null || _c === void 0 ? void 0 : _c.total) || 0) / (pageSize || 1));
82
+ var isFirstPage = React.useMemo(function () { return page === FIRST_PAGE; }, [page]);
83
+ var isLastPage = React.useMemo(function () { return page === totalPages; }, [page, totalPages]);
81
84
  var pages = (0, react_1.useMemo)(function () { return (0, exports.generatePages)(page, totalPages, props.aroundCount)
82
85
  .map(function (pageItem, index, pagesArray) {
83
86
  // Номер страницы для '...' кнопки (выбирает страницу между двумя соседними пронумерованными)
@@ -99,26 +102,31 @@ function Pagination(props) {
99
102
  var onSelectNext = (0, react_1.useCallback)(function () {
100
103
  onSelect(page + 1);
101
104
  }, [onSelect, page]);
105
+ var onSelectPrev = (0, react_1.useCallback)(function () {
106
+ onSelect(page - 1);
107
+ }, [onSelect, page]);
108
+ var onSelectLast = (0, react_1.useCallback)(function () {
109
+ onSelect(totalPages);
110
+ }, [onSelect, totalPages]);
111
+ var onSelectFirst = (0, react_1.useCallback)(function () {
112
+ onSelect(FIRST_PAGE);
113
+ }, [onSelect]);
102
114
  if (!props.list || !page || !pageSize || props.list.total <= pageSize) {
103
115
  return null;
104
116
  }
105
117
  // Do not show in last page in 'loadMore' mode
106
- if (props.loadMore && page >= totalPages) {
118
+ if (props.loadMore && isLastPage) {
107
119
  return null;
108
120
  }
109
121
  var defaultView = (props.loadMore ? 'list.PaginationMoreView' : 'list.PaginationButtonView');
110
- return components.ui.renderView(props.view || defaultView, {
111
- totalPages: totalPages,
112
- pages: pages,
113
- onSelect: onSelect,
114
- onSelectNext: onSelectNext
115
- });
122
+ return components.ui.renderView(props.view || defaultView, __assign(__assign({}, props), { totalPages: totalPages, pages: pages, onSelect: onSelect, onSelectNext: onSelectNext, onSelectPrev: onSelectPrev, onSelectLast: onSelectLast, onSelectFirst: onSelectFirst, isFirstPage: isFirstPage, isLastPage: isLastPage }));
116
123
  }
117
124
  Pagination.defaultProps = {
118
125
  enable: true,
119
126
  attribute: 'page',
120
127
  aroundCount: 3,
121
128
  defaultValue: 1,
129
+ size: 'md',
122
130
  loadMore: false,
123
131
  position: 'bottom',
124
132
  sizeAttribute: 'pageSize'
@@ -1,10 +1,11 @@
1
1
  import * as React from 'react';
2
+ import { IButtonProps } from 'src/ui/form/Button/Button';
2
3
  import { ListControlPosition } from '../../../hooks/useList';
3
4
  /**
4
5
  * PaginationSize
5
6
  * Компонент для выбора количества элементов в списке
6
7
  */
7
- export interface IPaginationSizeProps {
8
+ export interface IPaginationSizeProps extends IUiComponent {
8
9
  /**
9
10
  * Подключить выбор количества элементов
10
11
  * @example true
@@ -25,19 +26,10 @@ export interface IPaginationSizeProps {
25
26
  * @example 'both'
26
27
  */
27
28
  position?: ListControlPosition;
28
- /**
29
- * Дополнительный CSS-класс для элемента отображения
30
- */
31
- className?: CssClassName;
32
29
  /**
33
30
  * Значение по-умолчанию
34
31
  */
35
32
  defaultValue?: number;
36
- /**
37
- * Переопределение view React компонента для кастомизации отображения
38
- * @example MyCustomView
39
- */
40
- view?: CustomView;
41
33
  /**
42
34
  * Обработчик, который вызывается после смены страницы
43
35
  * @param {number} value
@@ -48,13 +40,16 @@ export interface IPaginationSizeProps {
48
40
  * Список, для которого используется пагинация
49
41
  */
50
42
  list?: any;
43
+ /**
44
+ * Свойства для кнопок пагинации
45
+ */
46
+ buttonProps?: IButtonProps;
51
47
  [key: string]: any;
52
48
  }
53
49
  export interface IPaginationSizeViewProps extends IPaginationSizeProps {
54
50
  items: {
55
- size: number;
51
+ id: number;
56
52
  label: string | number;
57
- isActive: boolean;
58
53
  }[];
59
54
  onSelect: (size: number) => void;
60
55
  }
@@ -66,6 +61,9 @@ declare namespace PaginationSize {
66
61
  sizes: number[];
67
62
  defaultValue: number;
68
63
  position: string;
64
+ buttonProps: {
65
+ size: string;
66
+ };
69
67
  };
70
68
  }
71
69
  export declare const normalizePaginationSizeProps: (props: any) => any;
@@ -45,15 +45,13 @@ var hooks_1 = require("../../../hooks");
45
45
  var useForm_1 = __importDefault(require("../../../hooks/useForm"));
46
46
  var form_1 = require("../../../actions/form");
47
47
  function PaginationSize(props) {
48
- var _a, _b, _c;
48
+ var _a, _b;
49
49
  var components = (0, hooks_1.useComponents)();
50
- var pageSize = (_a = props.list) === null || _a === void 0 ? void 0 : _a.pageSize;
51
50
  var items = (0, react_1.useMemo)(function () { return props.sizes.map(function (size) { return ({
52
- size: size,
53
- label: size,
54
- isActive: pageSize === size
55
- }); }); }, [pageSize, props.sizes]);
56
- var _d = (0, useForm_1["default"])(), formId = _d.formId, formDispatch = _d.formDispatch;
51
+ id: size,
52
+ label: size
53
+ }); }); }, [props.sizes]);
54
+ var _c = (0, useForm_1["default"])(), formId = _c.formId, formDispatch = _c.formDispatch;
57
55
  var onSelect = (0, react_1.useCallback)(function (newPage) {
58
56
  if (formDispatch) {
59
57
  formDispatch((0, form_1.formChange)(formId, props.attribute, newPage));
@@ -62,7 +60,7 @@ function PaginationSize(props) {
62
60
  props.onChange.call(null, newPage);
63
61
  }
64
62
  }, [formDispatch, formId, props.attribute, props.onChange]);
65
- if (!((_c = (_b = props.list) === null || _b === void 0 ? void 0 : _b.items) === null || _c === void 0 ? void 0 : _c.length)) {
63
+ if (!((_b = (_a = props.list) === null || _a === void 0 ? void 0 : _a.items) === null || _b === void 0 ? void 0 : _b.length)) {
66
64
  return null;
67
65
  }
68
66
  return components.ui.renderView(props.view || 'list.PaginationSizeView', __assign(__assign({}, props), { items: items, onSelect: onSelect }));
@@ -72,7 +70,10 @@ PaginationSize.defaultProps = {
72
70
  attribute: 'pageSize',
73
71
  sizes: [30, 50, 100],
74
72
  defaultValue: 50,
75
- position: 'top'
73
+ position: 'top',
74
+ buttonProps: {
75
+ size: 'sm'
76
+ }
76
77
  };
77
78
  var normalizePaginationSizeProps = function (props) { return (__assign(__assign(__assign({}, PaginationSize.defaultProps), { enable: !!props, defaultValue: (0, get_1["default"])(props, 'sizes.0') || PaginationSize.defaultProps.defaultValue }), (typeof props === 'boolean' ? { enable: props } : props))); };
78
79
  exports.normalizePaginationSizeProps = normalizePaginationSizeProps;
@@ -7,6 +7,9 @@ import { IFormProps } from '../../../ui/form/Form/Form';
7
7
  * после чего в list-компонент подгружаются новые элементы коллекции.
8
8
  */
9
9
  export interface ISearchFormProps extends IFormProps {
10
+ /**
11
+ * Id списка
12
+ */
10
13
  listId?: string;
11
14
  }
12
15
  declare const _default: React.MemoExoticComponent<(props: ISearchFormProps) => JSX.Element>;
@@ -28,12 +28,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
28
28
  exports.__esModule = true;
29
29
  var React = __importStar(require("react"));
30
30
  var List_1 = __importDefault(require("../../List"));
31
- var search_form_1 = require("../../List/demo/search-form");
31
+ // import {searchForm, items} from '../../List/demo/search-form';
32
32
  /**
33
33
  * List with search form
34
34
  * @order 1
35
35
  * @col 6
36
36
  */
37
- exports["default"] = (function () { return (React.createElement(List_1["default"], { listId: 'ListDemoSearch', items: search_form_1.items, searchForm: search_form_1.searchForm, className: 'list-group', itemView: function (props) { return (React.createElement("div", { className: 'list-group-item' },
37
+ exports["default"] = (function () { return (React.createElement(List_1["default"], { listId: 'ListDemoSearch',
38
+ // items={items}
39
+ // searchForm={searchForm}
40
+ className: 'list-group', itemView: function (props) { return (React.createElement("div", { className: 'list-group-item' },
38
41
  React.createElement("div", null, props.item.name),
39
42
  React.createElement("div", null, "Category: ".concat(props.item.category)))); } })); });
@@ -1,18 +1,21 @@
1
1
  import React from 'react';
2
+ /**
3
+ * Компонент Steps предоставляет шаги для выполнения определенного процесса.
4
+ **/
2
5
  interface IStepsProps {
3
6
  stepItems: IStepItem[];
4
7
  currentStep: number;
5
8
  isChangeable?: boolean;
6
- className?: string;
9
+ className?: CssClassName;
7
10
  onChange?: (index: number) => void;
8
11
  }
9
12
  export interface IStepsViewProps {
10
- className?: string;
13
+ className?: CssClassName;
11
14
  children?: React.ReactNode;
12
15
  }
13
16
  export interface IStepItemViewProps {
14
17
  stepItem: IStepItem;
15
- className?: string;
18
+ className?: CssClassName;
16
19
  index: number;
17
20
  status: string;
18
21
  disabled: boolean;
@@ -6,12 +6,15 @@ function Steps(props) {
6
6
  var _a = (0, react_1.useState)(false), isChangeable = _a[0], setIsChangeable = _a[1];
7
7
  (0, react_1.useEffect)(function () { return setIsChangeable(props.isChangeable); }, [props.isChangeable]);
8
8
  function getStepStatus(index, stepItem) {
9
- if (stepItem.isError)
9
+ if (stepItem.isError) {
10
10
  return 'error';
11
- if (props.currentStep < index)
11
+ }
12
+ if (props.currentStep < index) {
12
13
  return 'wait';
13
- if (props.currentStep === index)
14
+ }
15
+ if (props.currentStep === index) {
14
16
  return 'active';
17
+ }
15
18
  return 'finish';
16
19
  }
17
20
  return (0, hooks_1.useComponents)().ui.renderView('list.StepsView', {
@@ -23,8 +26,11 @@ function Steps(props) {
23
26
  index: index + 1,
24
27
  status: getStepStatus(index, stepItem),
25
28
  disabled: !isChangeable,
26
- onChange: function () { if (isChangeable)
27
- props.onChange(index); }
29
+ onChange: function () {
30
+ if (isChangeable) {
31
+ props.onChange(index);
32
+ }
33
+ }
28
34
  }); })
29
35
  });
30
36
  }
@@ -1,5 +1,5 @@
1
- /// <reference types="react" />
2
- import { IControlItem } from '../../nav/Controls/Controls';
1
+ import * as React from 'react';
2
+ import { IButtonProps } from 'src/ui/form/Button/Button';
3
3
  /**
4
4
  * Modal
5
5
  * Модальное окно
@@ -14,16 +14,16 @@ export interface IModalProps {
14
14
  * Компонент, который отрендерится внутри Modal
15
15
  * @example () => <InnerModalComponent />
16
16
  */
17
- component?: () => JSX.Element;
17
+ component?: (props: React.ComponentProps<any>) => JSX.Element;
18
18
  /**
19
19
  * Свойства для внутреннего компонента
20
20
  */
21
21
  componentProps?: any;
22
22
  /**
23
- * Коллекция контролов, которая отобразится в Modal
23
+ * Коллекция кнопок, которая отобразится в нижней секции Modal
24
24
  * @example [{label: __(('Закрыть')), onClick: () => props.onClose()}]
25
25
  */
26
- controls?: IControlItem[];
26
+ buttons?: IButtonProps[];
27
27
  /**
28
28
  * Время, в течение которого будет происходить анимация закрытия Modal.
29
29
  * Переопределяет отрезок времени, заданный в ModalPortal
@@ -49,7 +49,7 @@ function Modal(props) {
49
49
  return (React.createElement(ModalView, __assign({}, props), (ContentComponent && (React.createElement(ContentComponent, __assign({}, props, props.componentProps)))) || (props.children)));
50
50
  }
51
51
  Modal.defaultProps = {
52
- size: 'middle',
52
+ size: 'md',
53
53
  shouldCloseOnEsc: true,
54
54
  shouldCloseOnOverlayClick: true
55
55
  };
@@ -1,4 +1,7 @@
1
1
  /// <reference types="react" />
2
+ /**
3
+ * Компонент ModalPortal отвечает за отображение модальных окон.
4
+ **/
2
5
  export interface IModalPortalProps {
3
6
  /**
4
7
  * Время, через которое произойдет закрытие Modal
@@ -1,7 +1,12 @@
1
1
  /// <reference types="react" />
2
- interface ITwoFactorModalProps {
3
- view?: any;
2
+ interface ITwoFactorModalProps extends IUiComponent {
3
+ /**
4
+ * Имя провайдера
5
+ */
4
6
  providerName: string;
7
+ /**
8
+ * Функция, которая вызывается при закрытии модального окна
9
+ */
5
10
  onClose?: any;
6
11
  }
7
12
  interface ITwoFactorModalPrivateProps extends ITwoFactorModalProps {
@@ -13,6 +18,9 @@ interface ITwoFactorModalPrivateProps extends ITwoFactorModalProps {
13
18
  isConfirmed: string;
14
19
  };
15
20
  }
21
+ /**
22
+ * Компонент TwoFactorModal отображает модальное окно для двухфакторной аутентификации.
23
+ **/
16
24
  export interface ITwoFactorModalViewProps extends ITwoFactorModalPrivateProps {
17
25
  description?: string;
18
26
  formProps?: any;
@@ -2,8 +2,9 @@
2
2
  import { IRouteItem } from '../Router/Router';
3
3
  /**
4
4
  * Breadcrumbs
5
- * Хлебные крошки
6
- */
5
+ *
6
+ * Компонент Breadcrumbs отображает хлебные крошки.
7
+ **/
7
8
  export interface IBreadcrumbsProps {
8
9
  /**
9
10
  * Кастомный CSS-класс
@@ -27,6 +28,15 @@ export interface IBreadcrumbsProps {
27
28
  * @example 'Каталог'
28
29
  */
29
30
  pageTitle?: string;
31
+ /**
32
+ * Показать иконку заменяющую первый роут
33
+ * @example true
34
+ */
35
+ showIcon?: boolean;
36
+ /**
37
+ * Кастомная иконка, заменяющая первый роут
38
+ */
39
+ customIcon?: string | React.ReactElement;
30
40
  /**
31
41
  * Переопределение view React компонента для кастомизации отображения
32
42
  * @example MyCustomView
@@ -0,0 +1,44 @@
1
+ /// <reference types="react" />
2
+ import { IButtonProps } from 'src/ui/form/Button/Button';
3
+ import { DataProviderItems } from '../../../hooks/useDataProvider';
4
+ /**
5
+ * ButtonGroup
6
+ *
7
+ * Компонент ButtonGroup отображает группу кнопок.
8
+ **/
9
+ export interface IButtonGroupProps extends IUiComponent {
10
+ /**
11
+ * Элементы для группы кнопок
12
+ * @example ['button1', 'button2', 'button3']
13
+ */
14
+ items: DataProviderItems;
15
+ /**
16
+ * Функция, которая будет вызываться при клике по кнопке
17
+ * @example setActiveTab
18
+ */
19
+ onClick: (value: number | string | boolean) => void;
20
+ /**
21
+ * При указании в связке с onClick предоставляет возможность реализовать two-way binding
22
+ * @example 'button1'
23
+ */
24
+ activeButton?: number | string;
25
+ /**
26
+ * Кнопка по умолчанию.
27
+ */
28
+ defaultActiveButton?: number | string;
29
+ /**
30
+ * Общие свойства для всех кнопок группы
31
+ * @example {outline: true, color: 'secondary'}
32
+ */
33
+ buttonProps?: IButtonProps;
34
+ }
35
+ export interface IButtonGroupViewProps extends Omit<IButtonGroupProps, 'items'> {
36
+ items: {
37
+ id: number | string | boolean;
38
+ label?: string;
39
+ [key: string]: unknown;
40
+ }[];
41
+ size: Size;
42
+ }
43
+ declare function ButtonGroup(props: IButtonGroupProps): JSX.Element;
44
+ export default ButtonGroup;