@steroidsjs/core 2.1.0-beta.3 → 2.1.0-beta.33

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 (584) hide show
  1. package/README.md +3 -1
  2. package/actions/form.d.ts +9 -0
  3. package/actions/form.js +11 -1
  4. package/actions/list.d.ts +1 -0
  5. package/actions/list.js +1 -0
  6. package/actions/modal.d.ts +3 -2
  7. package/components/ClientStorageComponent.d.ts +3 -3
  8. package/components/ClientStorageComponent.js +28 -22
  9. package/components/HttpComponent.js +32 -15
  10. package/components/LocaleComponent.js +9 -9
  11. package/components/MetricsComponent.js +3 -1
  12. package/components/SocialComponent.d.ts +1 -1
  13. package/components/SocialComponent.js +12 -10
  14. package/components/StoreComponent.d.ts +6 -0
  15. package/components/StoreComponent.js +6 -7
  16. package/components/UiComponent.d.ts +1 -1
  17. package/components/WebSocketComponent.d.ts +1 -1
  18. package/components/social/FacebookProvider.d.ts +1 -1
  19. package/components/social/FacebookProvider.js +5 -6
  20. package/components/social/GitlabProvider.d.ts +8 -0
  21. package/components/social/GitlabProvider.js +98 -0
  22. package/components/social/GoogleProvider.d.ts +1 -1
  23. package/components/social/GoogleProvider.js +2 -2
  24. package/components/social/SteamProvider.d.ts +1 -1
  25. package/components/social/SteamProvider.js +8 -9
  26. package/components/social/VkProvider.d.ts +1 -1
  27. package/components/social/VkProvider.js +8 -9
  28. package/hoc/components.d.ts +1 -1
  29. package/hoc/components.js +1 -1
  30. package/hoc/file.d.ts +1 -0
  31. package/hooks/index.d.ts +2 -1
  32. package/hooks/index.js +3 -1
  33. package/hooks/useAbsolutePositioning.d.ts +5 -0
  34. package/hooks/useAbsolutePositioning.js +6 -6
  35. package/hooks/useApplication.d.ts +29 -26
  36. package/hooks/useApplication.js +17 -82
  37. package/hooks/useComponents.d.ts +1 -14
  38. package/hooks/useComponents.js +4 -5
  39. package/hooks/useDataProvider.d.ts +1 -0
  40. package/hooks/useDataProvider.js +6 -4
  41. package/hooks/useDataSelect.d.ts +15 -8
  42. package/hooks/useDataSelect.js +60 -11
  43. package/hooks/useDispatch.d.ts +1 -1
  44. package/hooks/useFetch.d.ts +11 -3
  45. package/hooks/useFetch.js +37 -31
  46. package/hooks/useFile.js +13 -2
  47. package/hooks/useLayout.d.ts +9 -0
  48. package/hooks/useLayout.js +85 -56
  49. package/hooks/useList.d.ts +56 -1
  50. package/hooks/useList.js +89 -54
  51. package/hooks/useModel.js +1 -1
  52. package/hooks/useScreen.d.ts +1 -1
  53. package/hooks/useScreen.js +2 -2
  54. package/hooks/useSsr.d.ts +2 -0
  55. package/hooks/useSsr.js +8 -0
  56. package/index.d.ts +8 -2
  57. package/package.json +7 -4
  58. package/providers/ComponentsProvider.d.ts +26 -0
  59. package/providers/ComponentsProvider.js +28 -0
  60. package/providers/ScreenProvider.d.ts +20 -0
  61. package/providers/ScreenProvider.js +87 -0
  62. package/providers/SsrProvider.d.ts +17 -0
  63. package/providers/SsrProvider.js +32 -0
  64. package/providers/index.d.ts +4 -0
  65. package/providers/index.js +12 -0
  66. package/reducers/form.d.ts +2 -1
  67. package/reducers/form.js +6 -2
  68. package/reducers/index.js +1 -1
  69. package/reducers/list.js +1 -3
  70. package/reducers/router.js +8 -4
  71. package/ui/content/Alert/Alert.d.ts +60 -0
  72. package/ui/content/Alert/Alert.js +38 -0
  73. package/ui/content/Alert/demo/description.d.ts +9 -0
  74. package/ui/content/Alert/demo/description.js +43 -0
  75. package/ui/content/Alert/demo/icon.d.ts +8 -0
  76. package/ui/content/Alert/demo/icon.js +42 -0
  77. package/ui/content/Alert/demo/text.d.ts +8 -0
  78. package/ui/content/Alert/demo/text.js +42 -0
  79. package/ui/content/Alert/index.d.ts +2 -0
  80. package/ui/content/Alert/index.js +7 -0
  81. package/ui/content/Avatar/Avatar.d.ts +54 -13
  82. package/ui/content/Avatar/Avatar.js +25 -4
  83. package/ui/content/Avatar/AvatarGroup.d.ts +3 -5
  84. package/ui/content/Avatar/AvatarGroup.js +27 -11
  85. package/ui/{form/TimeField/demo/show-remove.d.ts → content/Avatar/demo/custome size.d.ts } +2 -2
  86. package/ui/content/Avatar/demo/custome size.js +35 -0
  87. package/ui/{form/SwitcherField/demo/sizes.d.ts → content/Avatar/demo/group.d.ts} +1 -1
  88. package/ui/content/Avatar/demo/group.js +49 -0
  89. package/ui/content/Avatar/demo/shape.d.ts +8 -0
  90. package/ui/content/Avatar/demo/shape.js +41 -0
  91. package/ui/content/Avatar/demo/size.d.ts +8 -0
  92. package/ui/content/Avatar/demo/size.js +41 -0
  93. package/ui/content/Avatar/demo/title.d.ts +8 -0
  94. package/ui/content/Avatar/demo/title.js +41 -0
  95. package/ui/content/Avatar/index.d.ts +6 -1
  96. package/ui/content/Avatar/index.js +4 -0
  97. package/ui/content/Calendar/demo/basic.d.ts +8 -0
  98. package/ui/{form/FieldLayout → content/Calendar}/demo/basic.js +3 -3
  99. package/ui/content/Card/Card.d.ts +62 -14
  100. package/ui/content/Card/Card.js +3 -2
  101. package/ui/{form/FieldLayout/demo/hint.d.ts → content/Card/demo/basic.d.ts} +2 -2
  102. package/ui/{form/SwitcherField/demo/sizes.js → content/Card/demo/basic.js} +6 -12
  103. package/ui/content/Card/demo/border color.d.ts +3 -0
  104. package/ui/content/Card/demo/border color.js +47 -0
  105. package/ui/content/Card/demo/color.d.ts +3 -0
  106. package/ui/content/Card/demo/color.js +47 -0
  107. package/ui/{form/DateTimeField/demo/sizes.d.ts → content/Card/demo/header.d.ts} +2 -2
  108. package/ui/content/Card/demo/header.js +42 -0
  109. package/ui/content/Card/demo/hover.d.ts +8 -0
  110. package/ui/content/Card/demo/hover.js +37 -0
  111. package/ui/content/Card/demo/link.d.ts +8 -0
  112. package/ui/content/Card/demo/link.js +38 -0
  113. package/ui/content/Card/demo/orientation.d.ts +3 -0
  114. package/ui/content/Card/demo/orientation.js +41 -0
  115. package/ui/content/Collapse/Collapse.d.ts +63 -0
  116. package/ui/content/Collapse/Collapse.js +80 -0
  117. package/ui/content/Collapse/CollapseItem.d.ts +67 -0
  118. package/ui/content/Collapse/CollapseItem.js +22 -0
  119. package/ui/content/Collapse/demo/accordion.d.ts +8 -0
  120. package/ui/content/Collapse/demo/accordion.js +37 -0
  121. package/ui/{form/FieldLayout → content/Collapse}/demo/basic.d.ts +0 -0
  122. package/ui/content/Collapse/demo/basic.js +37 -0
  123. package/ui/{form/SliderField/demo/required.d.ts → content/Collapse/demo/borderless.d.ts} +2 -2
  124. package/ui/content/Collapse/demo/borderless.js +37 -0
  125. package/ui/content/Collapse/demo/disable.d.ts +8 -0
  126. package/ui/content/Collapse/demo/disable.js +37 -0
  127. package/ui/content/Collapse/demo/icon position.d.ts +8 -0
  128. package/ui/content/Collapse/demo/icon position.js +37 -0
  129. package/ui/{form/SliderField/demo/size.d.ts → content/Collapse/demo/icon.d.ts} +1 -1
  130. package/ui/content/Collapse/demo/icon.js +52 -0
  131. package/ui/content/Collapse/demo/onChange.d.ts +8 -0
  132. package/ui/content/Collapse/demo/onChange.js +47 -0
  133. package/ui/content/Collapse/demo/show icon.d.ts +8 -0
  134. package/ui/content/Collapse/demo/show icon.js +37 -0
  135. package/ui/content/Collapse/index.d.ts +7 -0
  136. package/ui/content/Collapse/index.js +8 -0
  137. package/ui/content/Detail/Detail.d.ts +102 -0
  138. package/ui/content/Detail/Detail.js +155 -0
  139. package/ui/content/Detail/DetailItem.d.ts +43 -0
  140. package/ui/content/Detail/DetailItem.js +10 -0
  141. package/ui/content/Detail/demo/basic.d.ts +8 -0
  142. package/ui/content/Detail/demo/basic.js +56 -0
  143. package/ui/content/Detail/demo/colors.d.ts +3 -0
  144. package/ui/content/Detail/demo/colors.js +39 -0
  145. package/ui/content/Detail/demo/controls.d.ts +8 -0
  146. package/ui/content/Detail/demo/controls.js +56 -0
  147. package/ui/content/Detail/demo/layout.d.ts +8 -0
  148. package/ui/content/Detail/demo/layout.js +56 -0
  149. package/ui/content/Detail/demo/responsive.d.ts +8 -0
  150. package/ui/content/Detail/demo/responsive.js +71 -0
  151. package/ui/content/Detail/demo/sizes.d.ts +8 -0
  152. package/ui/content/Detail/demo/sizes.js +61 -0
  153. package/ui/content/Detail/index.d.ts +3 -0
  154. package/ui/content/Detail/index.js +10 -0
  155. package/ui/content/DropDown/DropDown.d.ts +1 -0
  156. package/ui/content/DropDown/DropDown.js +1 -0
  157. package/ui/content/index.d.ts +13 -0
  158. package/ui/content/index.js +22 -0
  159. package/ui/crud/Crud/Crud.d.ts +1 -1
  160. package/ui/crud/Crud/Crud.js +5 -3
  161. package/ui/crud/Crud/CrudContent.d.ts +5 -1
  162. package/ui/crud/Crud/CrudContent.js +5 -5
  163. package/ui/crud/index.d.ts +2 -0
  164. package/ui/form/AutoCompleteField/AutoCompleteField.d.ts +1 -6
  165. package/ui/form/AutoCompleteField/demo/basic.d.ts +5 -5
  166. package/ui/form/AutoCompleteField/demo/basic.js +5 -5
  167. package/ui/form/AutoCompleteField/demo/disabled.d.ts +1 -1
  168. package/ui/form/AutoCompleteField/demo/disabled.js +1 -1
  169. package/ui/form/AutoCompleteField/demo/errors.d.ts +1 -1
  170. package/ui/form/AutoCompleteField/demo/errors.js +2 -2
  171. package/ui/form/AutoCompleteField/demo/placeholder.d.ts +1 -1
  172. package/ui/form/AutoCompleteField/demo/placeholder.js +1 -1
  173. package/ui/form/AutoCompleteField/demo/required.d.ts +1 -1
  174. package/ui/form/AutoCompleteField/demo/required.js +1 -1
  175. package/ui/form/AutoCompleteField/demo/sizes.d.ts +0 -5
  176. package/ui/form/AutoCompleteField/demo/sizes.js +5 -5
  177. package/ui/form/BlankField/BlankField.d.ts +6 -7
  178. package/ui/form/BlankField/demo/basic.d.ts +12 -0
  179. package/ui/form/BlankField/demo/basic.js +51 -0
  180. package/ui/form/Button/Button.d.ts +1 -0
  181. package/ui/form/Button/Button.js +1 -0
  182. package/ui/form/Button/demo/badge.d.ts +1 -1
  183. package/ui/form/Button/demo/badge.js +1 -1
  184. package/ui/form/Button/demo/basic.d.ts +1 -1
  185. package/ui/form/Button/demo/basic.js +1 -1
  186. package/ui/form/Button/demo/block.d.ts +1 -1
  187. package/ui/form/Button/demo/block.js +1 -1
  188. package/ui/form/Button/demo/colors.d.ts +1 -1
  189. package/ui/form/Button/demo/colors.js +3 -3
  190. package/ui/form/Button/demo/confirm.d.ts +1 -1
  191. package/ui/form/Button/demo/confirm.js +2 -2
  192. package/ui/form/Button/demo/disabled.d.ts +1 -1
  193. package/ui/form/Button/demo/disabled.js +1 -1
  194. package/ui/form/Button/demo/hint.d.ts +1 -1
  195. package/ui/form/Button/demo/hint.js +1 -1
  196. package/ui/form/Button/demo/icon.d.ts +1 -1
  197. package/ui/form/Button/demo/icon.js +1 -1
  198. package/ui/form/Button/demo/link.d.ts +1 -1
  199. package/ui/form/Button/demo/link.js +1 -1
  200. package/ui/form/Button/demo/sizes.d.ts +0 -5
  201. package/ui/form/Button/demo/sizes.js +5 -5
  202. package/ui/form/Button/demo/tags.d.ts +1 -1
  203. package/ui/form/Button/demo/tags.js +1 -1
  204. package/ui/form/CheckboxField/CheckboxField.d.ts +1 -6
  205. package/ui/form/CheckboxField/demo/basic.d.ts +1 -1
  206. package/ui/form/CheckboxField/demo/basic.js +1 -1
  207. package/ui/form/CheckboxField/demo/disabled.d.ts +1 -1
  208. package/ui/form/CheckboxField/demo/disabled.js +1 -1
  209. package/ui/form/CheckboxField/demo/errors.d.ts +1 -1
  210. package/ui/form/CheckboxField/demo/errors.js +2 -2
  211. package/ui/form/CheckboxField/demo/required.d.ts +1 -1
  212. package/ui/form/CheckboxField/demo/required.js +1 -1
  213. package/ui/form/CheckboxListField/CheckboxListField.d.ts +1 -6
  214. package/ui/form/CheckboxListField/demo/basic.d.ts +3 -3
  215. package/ui/form/CheckboxListField/demo/basic.js +5 -5
  216. package/ui/form/CheckboxListField/demo/disabled.d.ts +1 -1
  217. package/ui/form/CheckboxListField/demo/disabled.js +1 -1
  218. package/ui/form/CheckboxListField/demo/errors.d.ts +1 -1
  219. package/ui/form/CheckboxListField/demo/errors.js +2 -2
  220. package/ui/form/CheckboxListField/demo/required.d.ts +1 -1
  221. package/ui/form/CheckboxListField/demo/required.js +1 -1
  222. package/ui/form/DateField/DateField.d.ts +1 -7
  223. package/ui/form/DateField/DateField.js +1 -1
  224. package/ui/form/DateField/demo/basic.d.ts +1 -1
  225. package/ui/form/DateField/demo/basic.js +1 -1
  226. package/ui/form/DateField/demo/disabled.d.ts +1 -1
  227. package/ui/form/DateField/demo/disabled.js +1 -1
  228. package/ui/form/DateField/demo/errors.d.ts +1 -1
  229. package/ui/form/DateField/demo/errors.js +1 -1
  230. package/ui/form/DateField/demo/icon.d.ts +1 -1
  231. package/ui/form/DateField/demo/icon.js +2 -2
  232. package/ui/form/DateField/demo/placeholder.d.ts +1 -1
  233. package/ui/form/DateField/demo/placeholder.js +1 -1
  234. package/ui/form/DateField/demo/required.d.ts +1 -1
  235. package/ui/form/DateField/demo/required.js +1 -1
  236. package/ui/form/DateField/demo/sizes.d.ts +1 -1
  237. package/ui/form/DateField/demo/sizes.js +1 -1
  238. package/ui/form/DateField/useDateInputState.d.ts +4 -0
  239. package/ui/form/DateField/useDateInputState.js +3 -3
  240. package/ui/form/DateField/useDateTime.js +9 -7
  241. package/ui/form/DateRangeField/DateRangeField.d.ts +1 -7
  242. package/ui/form/DateRangeField/DateRangeField.js +3 -2
  243. package/ui/form/DateRangeField/demo/basic.d.ts +1 -1
  244. package/ui/form/DateRangeField/demo/basic.js +1 -1
  245. package/ui/form/DateRangeField/demo/disabled.d.ts +8 -0
  246. package/ui/form/DateRangeField/demo/disabled.js +33 -0
  247. package/ui/form/DateRangeField/demo/errors.d.ts +8 -0
  248. package/ui/form/DateRangeField/demo/errors.js +33 -0
  249. package/ui/form/DateRangeField/demo/icon.d.ts +8 -0
  250. package/ui/form/DateRangeField/demo/icon.js +35 -0
  251. package/ui/form/DateRangeField/demo/placeholder.d.ts +8 -0
  252. package/ui/form/DateRangeField/demo/placeholder.js +33 -0
  253. package/ui/form/DateRangeField/demo/required.d.ts +8 -0
  254. package/ui/form/DateRangeField/demo/required.js +33 -0
  255. package/ui/form/DateTimeField/DateTimeField.d.ts +1 -7
  256. package/ui/form/DateTimeField/DateTimeField.js +3 -2
  257. package/ui/form/DateTimeField/demo/basic.d.ts +1 -1
  258. package/ui/form/DateTimeField/demo/basic.js +1 -1
  259. package/ui/form/DateTimeField/demo/disabled.d.ts +1 -1
  260. package/ui/form/DateTimeField/demo/disabled.js +1 -1
  261. package/ui/form/DateTimeField/demo/errors.d.ts +1 -1
  262. package/ui/form/DateTimeField/demo/errors.js +2 -2
  263. package/ui/form/DateTimeField/demo/icon.d.ts +1 -1
  264. package/ui/form/DateTimeField/demo/icon.js +2 -2
  265. package/ui/form/DateTimeField/demo/placeholder.d.ts +1 -1
  266. package/ui/form/DateTimeField/demo/placeholder.js +2 -6
  267. package/ui/form/DateTimeField/demo/required.d.ts +1 -1
  268. package/ui/form/DateTimeField/demo/required.js +1 -1
  269. package/ui/form/DateTimeField/demo/showRemove.d.ts +8 -0
  270. package/ui/form/DateTimeField/demo/showRemove.js +32 -0
  271. package/ui/form/DateTimeRangeField/DateTimeRangeField.d.ts +1 -7
  272. package/ui/form/DateTimeRangeField/DateTimeRangeField.js +11 -2
  273. package/ui/form/DateTimeRangeField/demo/basic.d.ts +8 -0
  274. package/ui/form/DateTimeRangeField/demo/basic.js +32 -0
  275. package/ui/form/DateTimeRangeField/demo/disabled.d.ts +8 -0
  276. package/ui/form/{FieldLayout/demo/hint.js → DateTimeRangeField/demo/disabled.js} +4 -5
  277. package/ui/form/DateTimeRangeField/demo/errors.d.ts +8 -0
  278. package/ui/form/DateTimeRangeField/demo/errors.js +33 -0
  279. package/ui/form/DateTimeRangeField/demo/icon.d.ts +8 -0
  280. package/ui/form/DateTimeRangeField/demo/icon.js +32 -0
  281. package/ui/form/DateTimeRangeField/demo/placeholder.d.ts +8 -0
  282. package/ui/form/DateTimeRangeField/demo/placeholder.js +33 -0
  283. package/ui/form/DateTimeRangeField/demo/required.d.ts +8 -0
  284. package/ui/form/DateTimeRangeField/demo/required.js +33 -0
  285. package/ui/form/DateTimeRangeField/demo/showRemove.d.ts +8 -0
  286. package/ui/form/DateTimeRangeField/demo/showRemove.js +32 -0
  287. package/ui/form/DropDownField/DropDownField.d.ts +3 -8
  288. package/ui/form/DropDownField/DropDownField.js +20 -11
  289. package/ui/form/DropDownField/demo/auto-complete.d.ts +1 -1
  290. package/ui/form/DropDownField/demo/auto-complete.js +1 -1
  291. package/ui/form/DropDownField/demo/basic.d.ts +5 -5
  292. package/ui/form/DropDownField/demo/basic.js +6 -6
  293. package/ui/form/DropDownField/demo/disabled.d.ts +1 -1
  294. package/ui/form/DropDownField/demo/disabled.js +1 -1
  295. package/ui/form/DropDownField/demo/errors.d.ts +1 -1
  296. package/ui/form/DropDownField/demo/errors.js +2 -2
  297. package/ui/form/DropDownField/demo/multiple.d.ts +1 -1
  298. package/ui/form/DropDownField/demo/multiple.js +1 -1
  299. package/ui/form/DropDownField/demo/no-border.d.ts +1 -1
  300. package/ui/form/DropDownField/demo/no-border.js +1 -1
  301. package/ui/form/DropDownField/demo/placeholder.d.ts +1 -1
  302. package/ui/form/DropDownField/demo/placeholder.js +1 -1
  303. package/ui/form/DropDownField/demo/required.d.ts +1 -1
  304. package/ui/form/DropDownField/demo/required.js +1 -1
  305. package/ui/form/DropDownField/demo/show-reset.d.ts +1 -1
  306. package/ui/form/DropDownField/demo/show-reset.js +1 -1
  307. package/ui/form/DropDownField/demo/size.d.ts +1 -1
  308. package/ui/form/DropDownField/demo/size.js +1 -1
  309. package/ui/form/Field/demo/basic.d.ts +1 -1
  310. package/ui/form/Field/demo/basic.js +1 -1
  311. package/ui/form/Field/demo/component.d.ts +1 -1
  312. package/ui/form/Field/demo/component.js +1 -1
  313. package/ui/form/Field/demo/model.d.ts +1 -1
  314. package/ui/form/Field/demo/model.js +1 -1
  315. package/ui/form/Field/fieldWrapper.d.ts +4 -4
  316. package/ui/form/FieldLayout/demo/errors.d.ts +1 -1
  317. package/ui/form/FieldLayout/demo/errors.js +4 -3
  318. package/ui/form/FieldLayout/demo/layouts.d.ts +1 -1
  319. package/ui/form/FieldLayout/demo/layouts.js +4 -3
  320. package/ui/form/FieldLayout/demo/required.d.ts +1 -1
  321. package/ui/form/FieldLayout/demo/required.js +3 -2
  322. package/ui/form/FieldList/FieldList.d.ts +1 -6
  323. package/ui/form/FieldList/demo/basic.d.ts +1 -1
  324. package/ui/form/FieldList/demo/basic.js +1 -1
  325. package/ui/form/FieldList/demo/disabled.d.ts +8 -0
  326. package/ui/form/FieldList/demo/disabled.js +58 -0
  327. package/ui/form/FieldSet/demo/basic.d.ts +1 -1
  328. package/ui/form/FieldSet/demo/basic.js +1 -1
  329. package/ui/form/FileField/FileField.d.ts +1 -6
  330. package/ui/form/FileField/demo/basic.d.ts +8 -0
  331. package/ui/form/FileField/demo/basic.js +33 -0
  332. package/ui/form/Form/Form.d.ts +6 -0
  333. package/ui/form/Form/Form.js +119 -107
  334. package/ui/form/Form/demo/basic.d.ts +1 -1
  335. package/ui/form/Form/demo/basic.js +2 -2
  336. package/ui/form/Form/demo/border.d.ts +8 -0
  337. package/ui/form/Form/demo/border.js +58 -0
  338. package/ui/form/Form/demo/horizontal.d.ts +8 -0
  339. package/ui/form/Form/demo/horizontal.js +51 -0
  340. package/ui/form/Form/demo/inline.d.ts +8 -0
  341. package/ui/form/Form/demo/inline.js +49 -0
  342. package/ui/form/HtmlField/HtmlField.d.ts +1 -7
  343. package/ui/form/HtmlField/demo/basic.d.ts +1 -1
  344. package/ui/form/HtmlField/demo/basic.js +1 -1
  345. package/ui/form/ImageField/ImageField.d.ts +81 -0
  346. package/ui/form/ImageField/ImageField.js +145 -0
  347. package/ui/form/ImageField/index.d.ts +2 -0
  348. package/ui/form/ImageField/index.js +7 -0
  349. package/ui/form/InputField/InputField.d.ts +8 -6
  350. package/ui/form/InputField/InputField.js +26 -22
  351. package/ui/form/InputField/demo/addons.d.ts +3 -3
  352. package/ui/form/InputField/demo/addons.js +3 -3
  353. package/ui/form/InputField/demo/basic.d.ts +1 -1
  354. package/ui/form/InputField/demo/basic.js +2 -3
  355. package/ui/form/InputField/demo/disabled.d.ts +1 -1
  356. package/ui/form/InputField/demo/disabled.js +2 -3
  357. package/ui/form/InputField/demo/errors.d.ts +2 -2
  358. package/ui/form/InputField/demo/errors.js +3 -3
  359. package/ui/form/InputField/demo/mask.d.ts +2 -2
  360. package/ui/form/InputField/demo/mask.js +2 -2
  361. package/ui/form/InputField/demo/placeholder.d.ts +1 -1
  362. package/ui/form/InputField/demo/placeholder.js +1 -1
  363. package/ui/form/InputField/demo/required.d.ts +1 -1
  364. package/ui/form/InputField/demo/required.js +1 -1
  365. package/ui/form/InputField/demo/sizes.d.ts +0 -5
  366. package/ui/form/InputField/demo/sizes.js +5 -5
  367. package/ui/form/InputField/demo/textAddons.d.ts +3 -3
  368. package/ui/form/InputField/demo/textAddons.js +3 -3
  369. package/ui/form/InputField/demo/types.d.ts +0 -5
  370. package/ui/form/InputField/demo/types.js +7 -7
  371. package/ui/form/NavField/NavField.d.ts +2 -8
  372. package/ui/form/NavField/NavField.js +6 -3
  373. package/ui/form/NavField/demo/basic.d.ts +5 -5
  374. package/ui/form/NavField/demo/basic.js +6 -6
  375. package/ui/form/NavField/demo/disabled.d.ts +2 -2
  376. package/ui/form/NavField/demo/disabled.js +3 -3
  377. package/ui/form/NavField/demo/errors.d.ts +2 -2
  378. package/ui/form/NavField/demo/errors.js +4 -4
  379. package/ui/form/NavField/demo/layouts.d.ts +12 -0
  380. package/ui/form/NavField/demo/layouts.js +57 -0
  381. package/ui/form/NavField/demo/required.d.ts +2 -2
  382. package/ui/form/NavField/demo/required.js +3 -3
  383. package/ui/form/NumberField/NumberField.d.ts +1 -6
  384. package/ui/form/NumberField/demo/basic.d.ts +1 -1
  385. package/ui/form/NumberField/demo/basic.js +1 -1
  386. package/ui/form/NumberField/demo/disabled.d.ts +1 -1
  387. package/ui/form/NumberField/demo/disabled.js +1 -1
  388. package/ui/form/NumberField/demo/errors.d.ts +1 -1
  389. package/ui/form/NumberField/demo/errors.js +2 -2
  390. package/ui/form/NumberField/demo/placeholder.d.ts +1 -1
  391. package/ui/form/NumberField/demo/placeholder.js +1 -1
  392. package/ui/form/NumberField/demo/required.d.ts +1 -1
  393. package/ui/form/NumberField/demo/required.js +1 -1
  394. package/ui/form/NumberField/demo/sizes.d.ts +2 -2
  395. package/ui/form/NumberField/demo/sizes.js +2 -2
  396. package/ui/form/PasswordField/PasswordField.d.ts +1 -6
  397. package/ui/form/PasswordField/demo/basic.d.ts +1 -1
  398. package/ui/form/PasswordField/demo/basic.js +1 -1
  399. package/ui/form/PasswordField/demo/disabled.d.ts +1 -1
  400. package/ui/form/PasswordField/demo/disabled.js +1 -1
  401. package/ui/form/PasswordField/demo/errors.d.ts +1 -1
  402. package/ui/form/PasswordField/demo/errors.js +2 -2
  403. package/ui/form/PasswordField/demo/placeholder.d.ts +1 -1
  404. package/ui/form/PasswordField/demo/placeholder.js +1 -1
  405. package/ui/form/PasswordField/demo/required.d.ts +1 -1
  406. package/ui/form/PasswordField/demo/required.js +1 -1
  407. package/ui/form/PasswordField/demo/security.d.ts +1 -1
  408. package/ui/form/PasswordField/demo/security.js +1 -1
  409. package/ui/form/PasswordField/demo/sizes.d.ts +2 -2
  410. package/ui/form/PasswordField/demo/sizes.js +2 -2
  411. package/ui/form/RadioListField/RadioListField.d.ts +1 -6
  412. package/ui/form/RadioListField/demo/basic.d.ts +5 -5
  413. package/ui/form/RadioListField/demo/basic.js +5 -5
  414. package/ui/form/RadioListField/demo/disabled.d.ts +1 -1
  415. package/ui/form/RadioListField/demo/disabled.js +1 -1
  416. package/ui/form/RadioListField/demo/errors.d.ts +1 -1
  417. package/ui/form/RadioListField/demo/errors.js +2 -2
  418. package/ui/form/RadioListField/demo/required.d.ts +1 -1
  419. package/ui/form/RadioListField/demo/required.js +1 -1
  420. package/ui/form/RateField/RateField.d.ts +2 -8
  421. package/ui/form/RateField/demo/allow-clear.d.ts +1 -1
  422. package/ui/form/RateField/demo/allow-clear.js +1 -1
  423. package/ui/form/RateField/demo/basic.d.ts +1 -1
  424. package/ui/form/RateField/demo/basic.js +1 -1
  425. package/ui/form/RateField/demo/default-value.d.ts +1 -1
  426. package/ui/form/RateField/demo/default-value.js +1 -1
  427. package/ui/form/RateField/demo/disabled.d.ts +1 -1
  428. package/ui/form/RateField/demo/disabled.js +1 -1
  429. package/ui/form/RateField/demo/errors.d.ts +1 -1
  430. package/ui/form/RateField/demo/errors.js +2 -2
  431. package/ui/form/RateField/demo/items-count.d.ts +1 -1
  432. package/ui/form/RateField/demo/items-count.js +1 -1
  433. package/ui/form/RateField/demo/required.d.ts +1 -1
  434. package/ui/form/RateField/demo/required.js +1 -1
  435. package/ui/form/ReCaptchaField/ReCaptchaField.d.ts +1 -7
  436. package/ui/form/ReCaptchaField/demo/basic.d.ts +1 -1
  437. package/ui/form/ReCaptchaField/demo/basic.js +1 -1
  438. package/ui/form/SliderField/SliderField.d.ts +42 -15
  439. package/ui/form/SliderField/SliderField.js +18 -9
  440. package/ui/form/SliderField/demo/basic.d.ts +1 -1
  441. package/ui/form/SliderField/demo/basic.js +2 -2
  442. package/ui/form/SliderField/demo/disabled.d.ts +1 -1
  443. package/ui/form/SliderField/demo/disabled.js +2 -2
  444. package/ui/form/SliderField/demo/errors.d.ts +2 -2
  445. package/ui/form/SliderField/demo/errors.js +4 -4
  446. package/ui/form/SliderField/demo/marks.d.ts +3 -0
  447. package/ui/form/SliderField/demo/marks.js +45 -0
  448. package/ui/form/SliderField/demo/min-max.d.ts +2 -2
  449. package/ui/form/SliderField/demo/min-max.js +3 -3
  450. package/ui/form/SliderField/demo/onAfterChange.d.ts +8 -0
  451. package/ui/form/SliderField/demo/onAfterChange.js +39 -0
  452. package/ui/form/SliderField/demo/onChange.d.ts +8 -0
  453. package/ui/form/SliderField/demo/onChange.js +39 -0
  454. package/ui/form/SliderField/demo/range.d.ts +8 -0
  455. package/ui/form/SliderField/demo/{size.js → range.js} +5 -10
  456. package/ui/form/SwitcherField/SwitcherField.d.ts +1 -7
  457. package/ui/form/SwitcherField/demo/basic.d.ts +5 -5
  458. package/ui/form/SwitcherField/demo/basic.js +5 -5
  459. package/ui/form/SwitcherField/demo/disabled.d.ts +1 -1
  460. package/ui/form/SwitcherField/demo/disabled.js +2 -2
  461. package/ui/form/SwitcherField/demo/errors.d.ts +1 -1
  462. package/ui/form/SwitcherField/demo/errors.js +3 -3
  463. package/ui/form/SwitcherField/demo/required.d.ts +1 -1
  464. package/ui/form/SwitcherField/demo/required.js +2 -2
  465. package/ui/form/TextField/TextField.d.ts +3 -7
  466. package/ui/form/TextField/TextField.js +1 -1
  467. package/ui/form/TextField/demo/basic.d.ts +1 -1
  468. package/ui/form/TextField/demo/basic.js +1 -1
  469. package/ui/form/TextField/demo/disabled.d.ts +1 -1
  470. package/ui/form/TextField/demo/disabled.js +1 -1
  471. package/ui/form/TextField/demo/errors.d.ts +1 -1
  472. package/ui/form/TextField/demo/errors.js +2 -2
  473. package/ui/form/TextField/demo/placeholder.d.ts +1 -1
  474. package/ui/form/TextField/demo/placeholder.js +1 -1
  475. package/ui/form/TextField/demo/required.d.ts +1 -1
  476. package/ui/form/TextField/demo/required.js +1 -1
  477. package/ui/form/TextField/demo/sizes.d.ts +0 -5
  478. package/ui/form/TextField/demo/sizes.js +5 -5
  479. package/ui/form/TextField/demo/submit.d.ts +2 -2
  480. package/ui/form/TextField/demo/submit.js +2 -2
  481. package/ui/form/TimeField/TimeField.d.ts +1 -7
  482. package/ui/form/TimeField/TimeField.js +1 -1
  483. package/ui/form/TimeField/demo/basic.d.ts +1 -1
  484. package/ui/form/TimeField/demo/basic.js +1 -1
  485. package/ui/form/TimeField/demo/disabled.d.ts +1 -1
  486. package/ui/form/TimeField/demo/disabled.js +1 -1
  487. package/ui/form/TimeField/demo/errors.d.ts +1 -1
  488. package/ui/form/TimeField/demo/errors.js +2 -2
  489. package/ui/form/TimeField/demo/icon.d.ts +8 -0
  490. package/ui/form/TimeField/demo/icon.js +33 -0
  491. package/ui/form/TimeField/demo/{no-border.d.ts → noBorder.d.ts} +1 -1
  492. package/ui/form/TimeField/demo/{no-border.js → noBorder.js} +1 -1
  493. package/ui/form/TimeField/demo/placeholder.d.ts +1 -1
  494. package/ui/form/TimeField/demo/placeholder.js +1 -1
  495. package/ui/form/TimeField/demo/required.d.ts +1 -1
  496. package/ui/form/TimeField/demo/required.js +1 -1
  497. package/ui/form/TimeField/demo/showRemove.d.ts +8 -0
  498. package/ui/form/TimeField/demo/{show-remove.js → showRemove.js} +1 -1
  499. package/ui/form/index.d.ts +22 -132
  500. package/ui/format/EnumFormatter/EnumFormatter.js +1 -1
  501. package/ui/icon/Icon/Icon.js +3 -0
  502. package/ui/icon/Icon/demo/icon.d.ts +3 -0
  503. package/ui/{form/SliderField/demo/required.js → icon/Icon/demo/icon.js} +2 -7
  504. package/ui/layout/Meta/Meta.d.ts +56 -0
  505. package/ui/layout/Meta/Meta.js +38 -0
  506. package/ui/layout/Meta/index.d.ts +2 -0
  507. package/ui/layout/Meta/index.js +7 -0
  508. package/ui/layout/Notifications/Notifications.d.ts +14 -0
  509. package/ui/layout/Notifications/Notifications.js +1 -1
  510. package/ui/layout/Notifications/demo/basic.d.ts +8 -0
  511. package/ui/layout/Notifications/demo/basic.js +53 -0
  512. package/ui/layout/Notifications/demo/position.d.ts +3 -0
  513. package/ui/layout/Notifications/demo/position.js +45 -0
  514. package/ui/layout/Notifications/demo/timeOut.d.ts +3 -0
  515. package/ui/layout/Notifications/demo/timeOut.js +45 -0
  516. package/ui/layout/Portal.js +3 -0
  517. package/ui/layout/ProgressBar/ProgressBar.d.ts +55 -0
  518. package/ui/layout/ProgressBar/ProgressBar.js +53 -0
  519. package/ui/layout/ProgressBar/demo/percent.d.ts +8 -0
  520. package/ui/layout/ProgressBar/demo/percent.js +49 -0
  521. package/ui/layout/ProgressBar/demo/showLabel.d.ts +8 -0
  522. package/ui/layout/ProgressBar/demo/showLabel.js +40 -0
  523. package/ui/{form/TimeField → layout/ProgressBar}/demo/sizes.d.ts +1 -1
  524. package/ui/layout/ProgressBar/demo/sizes.js +40 -0
  525. package/ui/layout/ProgressBar/demo/status.d.ts +8 -0
  526. package/ui/{form/DateTimeField/demo/sizes.js → layout/ProgressBar/demo/status.js} +8 -12
  527. package/ui/layout/ProgressBar/demo/type.d.ts +8 -0
  528. package/ui/layout/ProgressBar/demo/type.js +40 -0
  529. package/ui/layout/ProgressBar/index.d.ts +2 -0
  530. package/ui/layout/ProgressBar/index.js +7 -0
  531. package/ui/layout/Skeleton/Skeleton.d.ts +25 -0
  532. package/ui/layout/Skeleton/Skeleton.js +11 -0
  533. package/ui/layout/Skeleton/demo/animations.d.ts +8 -0
  534. package/ui/layout/Skeleton/demo/animations.js +49 -0
  535. package/ui/layout/Skeleton/demo/width height.d.ts +8 -0
  536. package/ui/layout/Skeleton/demo/width height.js +38 -0
  537. package/ui/layout/Skeleton/index.d.ts +2 -0
  538. package/ui/layout/Skeleton/index.js +7 -0
  539. package/ui/layout/Tooltip/demo/basic.d.ts +5 -0
  540. package/ui/layout/Tooltip/demo/basic.js +20 -9
  541. package/ui/list/Grid/Grid.js +3 -1
  542. package/ui/list/Grid/demo/inner-search-form.d.ts +1 -6
  543. package/ui/list/LayoutNames/LayoutNames.js +4 -3
  544. package/ui/list/List/List.js +4 -6
  545. package/ui/list/PaginationSize/PaginationSize.d.ts +2 -2
  546. package/ui/list/Steps/Steps.d.ts +32 -0
  547. package/ui/list/Steps/Steps.js +23 -0
  548. package/ui/list/Steps/index.d.ts +2 -0
  549. package/ui/list/Steps/index.js +7 -0
  550. package/ui/modal/Modal/Modal.d.ts +52 -32
  551. package/ui/modal/Modal/Modal.js +3 -1
  552. package/ui/modal/Modal/demo/basic.d.ts +1 -1
  553. package/ui/modal/Modal/demo/basic.js +16 -7
  554. package/ui/modal/Modal/demo/closeTimeout.d.ts +8 -0
  555. package/ui/modal/Modal/demo/closeTimeout.js +60 -0
  556. package/ui/modal/Modal/demo/closing.d.ts +9 -0
  557. package/ui/modal/Modal/demo/closing.js +63 -0
  558. package/ui/modal/Modal/demo/component.d.ts +10 -0
  559. package/ui/modal/Modal/demo/component.js +51 -0
  560. package/ui/modal/Modal/demo/controls.d.ts +8 -0
  561. package/ui/modal/Modal/demo/controls.js +62 -0
  562. package/ui/modal/Modal/demo/size.d.ts +8 -0
  563. package/ui/modal/Modal/demo/size.js +66 -0
  564. package/ui/modal/ModalPortal/ModalPortal.d.ts +8 -0
  565. package/ui/modal/ModalPortal/ModalPortal.js +7 -9
  566. package/ui/nav/Breadcrumbs/Breadcrumbs.d.ts +10 -4
  567. package/ui/nav/Breadcrumbs/demo/basic.d.ts +1 -1
  568. package/ui/nav/Breadcrumbs/demo/basic.js +1 -1
  569. package/ui/nav/Breadcrumbs/demo/items.d.ts +8 -0
  570. package/ui/{form/TimeField/demo/sizes.js → nav/Breadcrumbs/demo/items.js} +9 -10
  571. package/ui/nav/Breadcrumbs/demo/page-title.d.ts +1 -1
  572. package/ui/nav/Breadcrumbs/demo/page-title.js +1 -1
  573. package/ui/nav/Nav/Nav.js +1 -1
  574. package/ui/nav/Router/Router.d.ts +18 -0
  575. package/ui/nav/Router/Router.js +1 -3
  576. package/utils/calendar.d.ts +1 -1
  577. package/utils/calendar.js +8 -1
  578. package/utils/form.d.ts +2 -7
  579. package/components/social/index.d.ts +0 -11
  580. package/components/social/index.js +0 -15
  581. package/ui/content/Avatar/SizeContext.d.ts +0 -1
  582. package/ui/content/Avatar/SizeContext.js +0 -14
  583. package/ui/nav/Router/SsrProvider.d.ts +0 -15
  584. package/ui/nav/Router/SsrProvider.js +0 -55
package/README.md CHANGED
@@ -1 +1,3 @@
1
- # Steroids
1
+ # Steroids for React
2
+
3
+ Для справки по библиотеке обратитесь к [основной документации](docs/index.md)
package/actions/form.d.ts CHANGED
@@ -2,6 +2,7 @@ export declare const FORM_INITIALIZE = "@form/initialize";
2
2
  export declare const FORM_CHANGE = "@form/change";
3
3
  export declare const FORM_RESET = "@form/reset";
4
4
  export declare const FORM_SET_ERRORS = "@form/set_errors";
5
+ export declare const FORM_SUBMIT = "@form/submit";
5
6
  export declare const FORM_ARRAY_ADD = "@form/array_add";
6
7
  export declare const FORM_ARRAY_REMOVE = "@form/array_remove";
7
8
  /**
@@ -36,6 +37,14 @@ export declare const formSetErrors: (formId: any, errors: any) => {
36
37
  formId: any;
37
38
  errors: any;
38
39
  };
40
+ /**
41
+ * Сабмит формы
42
+ * @param formId
43
+ */
44
+ export declare const formSubmit: (formId: any) => {
45
+ type: string;
46
+ formId: any;
47
+ };
39
48
  /**
40
49
  * Сброс данных формы к первоначальному состоянию (к initialValues)
41
50
  * @param formId
package/actions/form.js CHANGED
@@ -1,10 +1,11 @@
1
1
  "use strict";
2
2
  exports.__esModule = true;
3
- exports.formArrayRemove = exports.formArrayAdd = exports.formReset = exports.formSetErrors = exports.formChange = exports.formInitialize = exports.FORM_ARRAY_REMOVE = exports.FORM_ARRAY_ADD = exports.FORM_SET_ERRORS = exports.FORM_RESET = exports.FORM_CHANGE = exports.FORM_INITIALIZE = void 0;
3
+ exports.formArrayRemove = exports.formArrayAdd = exports.formReset = exports.formSubmit = exports.formSetErrors = exports.formChange = exports.formInitialize = exports.FORM_ARRAY_REMOVE = exports.FORM_ARRAY_ADD = exports.FORM_SUBMIT = exports.FORM_SET_ERRORS = exports.FORM_RESET = exports.FORM_CHANGE = exports.FORM_INITIALIZE = void 0;
4
4
  exports.FORM_INITIALIZE = '@form/initialize';
5
5
  exports.FORM_CHANGE = '@form/change';
6
6
  exports.FORM_RESET = '@form/reset';
7
7
  exports.FORM_SET_ERRORS = '@form/set_errors';
8
+ exports.FORM_SUBMIT = '@form/submit';
8
9
  exports.FORM_ARRAY_ADD = '@form/array_add';
9
10
  exports.FORM_ARRAY_REMOVE = '@form/array_remove';
10
11
  /**
@@ -42,6 +43,15 @@ var formSetErrors = function (formId, errors) { return ({
42
43
  errors: errors
43
44
  }); };
44
45
  exports.formSetErrors = formSetErrors;
46
+ /**
47
+ * Сабмит формы
48
+ * @param formId
49
+ */
50
+ var formSubmit = function (formId) { return ({
51
+ type: exports.FORM_SUBMIT,
52
+ formId: formId
53
+ }); };
54
+ exports.formSubmit = formSubmit;
45
55
  /**
46
56
  * Сброс данных формы к первоначальному состоянию (к initialValues)
47
57
  * @param formId
package/actions/list.d.ts CHANGED
@@ -51,6 +51,7 @@ export declare const listInit: (listId: any, payload: any) => {
51
51
  };
52
52
  export declare const listSetItems: (listId: any, items: any) => {
53
53
  type: string;
54
+ listId: any;
54
55
  items: any;
55
56
  };
56
57
  export declare const listSetLayout: (listId: any, layoutName: any) => {
package/actions/list.js CHANGED
@@ -133,6 +133,7 @@ var listInit = function (listId, payload) { return ({
133
133
  exports.listInit = listInit;
134
134
  var listSetItems = function (listId, items) { return ({
135
135
  type: exports.LIST_SET_ITEMS,
136
+ listId: listId,
136
137
  items: items
137
138
  }); };
138
139
  exports.listSetItems = listSetItems;
@@ -1,12 +1,13 @@
1
+ import { IModalProps } from '../ui/modal/Modal/Modal';
1
2
  export declare const MODAL_OPEN = "@modal/open";
2
3
  export declare const MODAL_MARK_CLOSING = "@modal/markClosing";
3
4
  export declare const MODAL_CLOSE = "@modal/close";
4
- export declare const openModal: (modal: any, props?: any) => {
5
+ export declare const openModal: (modal: any, props?: IModalProps) => {
5
6
  type: string;
6
7
  id: any;
7
8
  modal: any;
8
9
  group: any;
9
- props: any;
10
+ props: IModalProps;
10
11
  };
11
12
  export declare const modalMarkClosing: (id: any, group?: any) => {
12
13
  type: string;
@@ -6,16 +6,16 @@ export default class ClientStorageComponent {
6
6
  STORAGE_COOKIE: string;
7
7
  STORAGE_LOCAL: any;
8
8
  STORAGE_SESSION: any;
9
- cookieAvailable: any;
10
9
  localStorageAvailable: boolean;
11
10
  sessionStorageAvailable: boolean;
12
- constructor(components: any);
11
+ private _ssrCookie;
12
+ constructor(components: any, config: any);
13
13
  /**
14
14
  * @param {string} name
15
15
  * @param {string} [storageName]
16
16
  * @returns {*}
17
17
  */
18
- get(name: any, storageName: any): string;
18
+ get(name: any, storageName: any): any;
19
19
  /**
20
20
  * @param {string} name
21
21
  * @param {*} value
@@ -18,17 +18,20 @@ var __importStar = (this && this.__importStar) || function (mod) {
18
18
  __setModuleDefault(result, mod);
19
19
  return result;
20
20
  };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
21
24
  exports.__esModule = true;
22
25
  var cookie = __importStar(require("js-cookie"));
26
+ var moment_1 = __importDefault(require("moment"));
23
27
  /**
24
28
  * Client Storage Component
25
29
  * Слой хранения данных в браузере (cookie, local/session storage) или ReactNative
26
30
  */
27
31
  var ClientStorageComponent = /** @class */ (function () {
28
- function ClientStorageComponent(components) {
32
+ function ClientStorageComponent(components, config) {
29
33
  this.localStorageAvailable = !process.env.IS_SSR;
30
34
  this.sessionStorageAvailable = !process.env.IS_SSR;
31
- this.cookieAvailable = !process.env.IS_SSR;
32
35
  this.STORAGE_SESSION = 'session';
33
36
  this.STORAGE_LOCAL = 'local';
34
37
  this.STORAGE_COOKIE = 'cookie';
@@ -52,6 +55,7 @@ var ClientStorageComponent = /** @class */ (function () {
52
55
  this.sessionStorageAvailable = false;
53
56
  }
54
57
  }
58
+ this._ssrCookie = config === null || config === void 0 ? void 0 : config.ssrCookie;
55
59
  }
56
60
  /**
57
61
  * @param {string} name
@@ -63,14 +67,11 @@ var ClientStorageComponent = /** @class */ (function () {
63
67
  if (this.localStorageAvailable && storageName === this.STORAGE_LOCAL) {
64
68
  return window.localStorage.getItem(name);
65
69
  }
66
- else if (this.sessionStorageAvailable &&
67
- storageName === this.STORAGE_SESSION) {
70
+ if (this.sessionStorageAvailable
71
+ && storageName === this.STORAGE_SESSION) {
68
72
  return window.sessionStorage.getItem(name);
69
73
  }
70
- else if (this.cookieAvailable) {
71
- return cookie.get(name);
72
- }
73
- return null;
74
+ return process.env.IS_SSR ? this._ssrCookie.get(name) : cookie.get(name);
74
75
  };
75
76
  /**
76
77
  * @param {string} name
@@ -84,15 +85,19 @@ var ClientStorageComponent = /** @class */ (function () {
84
85
  if (this.localStorageAvailable && storageName === this.STORAGE_LOCAL) {
85
86
  window.localStorage.setItem(name, value);
86
87
  }
87
- else if (this.sessionStorageAvailable &&
88
- storageName === this.STORAGE_SESSION) {
88
+ else if (this.sessionStorageAvailable
89
+ && storageName === this.STORAGE_SESSION) {
89
90
  window.sessionStorage.setItem(name, value);
90
91
  }
91
- else if (this.cookieAvailable) {
92
- cookie.set(name, value, {
92
+ else {
93
+ var options = {
93
94
  expires: expires,
94
95
  domain: this._getDomain()
95
- });
96
+ };
97
+ if (expires && process.env.IS_SSR) {
98
+ options.expires = moment_1["default"]().add(options.expires).utc().toDate();
99
+ }
100
+ process.env.IS_SSR ? this._ssrCookie.set(name, value, options) : cookie.set(name, value, options);
96
101
  }
97
102
  };
98
103
  /**
@@ -105,24 +110,25 @@ var ClientStorageComponent = /** @class */ (function () {
105
110
  if (this.localStorageAvailable && storageName === this.STORAGE_LOCAL) {
106
111
  window.localStorage.removeItem(name);
107
112
  }
108
- else if (this.sessionStorageAvailable &&
109
- storageName === this.STORAGE_SESSION) {
113
+ else if (this.sessionStorageAvailable
114
+ && storageName === this.STORAGE_SESSION) {
110
115
  window.sessionStorage.removeItem(name);
111
116
  }
112
- else if (this.cookieAvailable) {
113
- cookie.remove(name, {
117
+ else {
118
+ var options = {
114
119
  domain: this._getDomain()
115
- });
120
+ };
121
+ process.env.IS_SSR ? this._ssrCookie.remove(name, options) : cookie.remove(name, options);
116
122
  }
117
123
  };
118
124
  ClientStorageComponent.prototype._getDomain = function () {
119
125
  var host = (typeof location !== 'undefined' && location.hostname) || '';
120
- return ((!/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/.test(host) &&
121
- host
126
+ return ((!/\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}/.test(host)
127
+ && host
122
128
  .split('.')
123
129
  .slice(-2)
124
- .join('.')) ||
125
- host);
130
+ .join('.'))
131
+ || host);
126
132
  };
127
133
  return ClientStorageComponent;
128
134
  }());
@@ -52,6 +52,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
52
52
  exports.__esModule = true;
53
53
  var trimStart_1 = __importDefault(require("lodash-es/trimStart"));
54
54
  var trimEnd_1 = __importDefault(require("lodash-es/trimEnd"));
55
+ var isEmpty_1 = __importDefault(require("lodash-es/isEmpty"));
56
+ var set_cookie_parser_1 = __importDefault(require("set-cookie-parser"));
55
57
  var axios_1 = __importDefault(require("axios"));
56
58
  var notifications_1 = require("../actions/notifications");
57
59
  /**
@@ -65,13 +67,12 @@ var HttpComponent = /** @class */ (function () {
65
67
  this._components = components;
66
68
  this.apiUrl = config.apiUrl
67
69
  //|| process.env.APP_BACKEND_URL
68
- || (typeof window !== 'undefined' ? window.location.protocol + '//' + window.location.host : '');
70
+ || (!process.env.IS_SSR ? window.location.protocol + '//' + window.location.host : '');
69
71
  this.accessTokenKey = config.accessTokenKey || 'accessToken';
70
72
  this._lazyRequests = {};
71
73
  this._axios = null;
72
74
  this._csrfToken = null;
73
75
  this._accessToken = false;
74
- this._promises = [];
75
76
  }
76
77
  HttpComponent.prototype.getAxiosConfig = function () {
77
78
  return __awaiter(this, void 0, void 0, function () {
@@ -191,7 +192,7 @@ var HttpComponent = /** @class */ (function () {
191
192
  });
192
193
  };
193
194
  HttpComponent.prototype.getUrl = function (method) {
194
- if (method === null && typeof window !== 'undefined') {
195
+ if (method === null && !process.env.IS_SSR) {
195
196
  method = window.location.pathname;
196
197
  }
197
198
  if (method.indexOf('://') === -1) {
@@ -236,7 +237,21 @@ var HttpComponent = /** @class */ (function () {
236
237
  };
237
238
  HttpComponent.prototype._send = function (method, config, options) {
238
239
  var _this = this;
240
+ var _a;
239
241
  var axiosConfig = __assign(__assign({}, config), { url: this.getUrl(method) });
242
+ // Manual send cookies for preload data in ssr
243
+ if (process.env.IS_SSR && axiosConfig.url.indexOf(this.apiUrl) !== -1) {
244
+ var clientStorage = this._components.clientStorage;
245
+ axiosConfig.headers = __assign(__assign({}, axiosConfig.headers), { Cookie: Object
246
+ .entries(clientStorage.get(null, clientStorage.STORAGE_COOKIE) || {})
247
+ .map(function (_a) {
248
+ var key = _a[0], value = _a[1];
249
+ return key + "=" + value;
250
+ })
251
+ .concat([(_a = axiosConfig.headers) === null || _a === void 0 ? void 0 : _a.Cookie])
252
+ .filter(Boolean)
253
+ .join(';') });
254
+ }
240
255
  if (options.cancelToken) {
241
256
  axiosConfig.cancelToken = options.cancelToken;
242
257
  }
@@ -258,25 +273,27 @@ var HttpComponent = /** @class */ (function () {
258
273
  };
259
274
  HttpComponent.prototype._sendAxios = function (config, options) {
260
275
  var _this = this;
261
- var promise = this.getAxiosInstance()
276
+ return this.getAxiosInstance()
262
277
  .then(function (instance) { return instance(config); })
263
278
  .then(function (response) { return _this.afterRequest(response, config, options).then(function (newResponse) { return newResponse || response; }); })["catch"](function (error) {
264
279
  console.error('Error, request/response: ', config, String(error)); // eslint-disable-line no-console
265
280
  throw error;
266
281
  });
267
- // Store promises for SSR
268
- if (process.env.IS_SSR) {
269
- this._promises.push(promise);
270
- }
271
- return promise;
272
282
  };
273
283
  HttpComponent.prototype.afterRequest = function (response, config, options) {
274
284
  return __awaiter(this, void 0, void 0, function () {
275
- var store, match, providerName;
276
- return __generator(this, function (_a) {
277
- switch (_a.label) {
285
+ var _a, store, clientStorage, cookie, match, providerName;
286
+ return __generator(this, function (_b) {
287
+ switch (_b.label) {
278
288
  case 0:
279
- store = this._components.store;
289
+ _a = this._components, store = _a.store, clientStorage = _a.clientStorage;
290
+ cookie = response.headers['set-cookie'];
291
+ if (process.env.IS_SSR && config.url.indexOf(this.apiUrl) !== -1 && !isEmpty_1["default"](cookie)) {
292
+ set_cookie_parser_1["default"].parse(cookie).forEach(function (_a) {
293
+ var name = _a.name, value = _a.value, expires = _a.expires;
294
+ return (clientStorage.set(name, value, clientStorage.STORAGE_COOKIE, expires));
295
+ });
296
+ }
280
297
  // Flash
281
298
  if (response.data.flashes) {
282
299
  store.dispatch(notifications_1.setFlashes(response.data.flashes));
@@ -301,14 +318,14 @@ var HttpComponent = /** @class */ (function () {
301
318
  if (!options.onTwoFactor) return [3 /*break*/, 2];
302
319
  return [4 /*yield*/, options.onTwoFactor(providerName)];
303
320
  case 1:
304
- _a.sent();
321
+ _b.sent();
305
322
  return [3 /*break*/, 4];
306
323
  case 2:
307
324
  // Require verification code
308
325
  return [4 /*yield*/, this._onTwoFactor(providerName)];
309
326
  case 3:
310
327
  // Require verification code
311
- _a.sent();
328
+ _b.sent();
312
329
  // Retry request
313
330
  return [2 /*return*/, this._sendAxios(config, options)];
314
331
  case 4: return [2 /*return*/, response];
@@ -73,11 +73,11 @@ var LocaleComponent = /** @class */ (function () {
73
73
  LocaleComponent.prototype.moment = function (date, format) {
74
74
  if (date === void 0) { date = undefined; }
75
75
  if (format === void 0) { format = undefined; }
76
- if (this.backendTimeZone &&
77
- date &&
78
- date.length === 19 &&
79
- moment_1["default"](date, 'YYYY-MM-DD HH:mm:ss').isValid()) {
80
- date = date + this.backendTimeZone;
76
+ if (this.backendTimeZone
77
+ && date
78
+ && date.length === 19
79
+ && moment_1["default"](date, 'YYYY-MM-DD HH:mm:ss').isValid()) {
80
+ date += this.backendTimeZone;
81
81
  }
82
82
  return moment_1["default"](date, format).locale(this.language);
83
83
  };
@@ -126,7 +126,7 @@ var LocaleComponent = /** @class */ (function () {
126
126
  if (a.index < b.index) {
127
127
  return -1;
128
128
  }
129
- else if (a.index > b.index) {
129
+ if (a.index > b.index) {
130
130
  return 1;
131
131
  }
132
132
  return 0;
@@ -136,9 +136,9 @@ var LocaleComponent = /** @class */ (function () {
136
136
  var textParts = message.split('!!component!!');
137
137
  for (var i = 0, j = 0; i < textParts.length; i++) {
138
138
  var isComponentAdded = false;
139
- if (j === 0 &&
140
- j < indexedComponents.length &&
141
- indexedComponents[j].index === 0) {
139
+ if (j === 0
140
+ && j < indexedComponents.length
141
+ && indexedComponents[j].index === 0) {
142
142
  result.push(React.createElement("span", { key: "element-" + j }, indexedComponents[j].component));
143
143
  isComponentAdded = true;
144
144
  j++;
@@ -15,7 +15,9 @@ var MetricsComponent = /** @class */ (function () {
15
15
  this._enable = config.enable === undefined
16
16
  ? process.env.APP_ENV === 'prod'
17
17
  : !!config.enable;
18
- this._init();
18
+ if (!process.env.IS_SSR) {
19
+ this._init();
20
+ }
19
21
  }
20
22
  MetricsComponent.prototype._init = function () {
21
23
  var _this = this;
@@ -6,7 +6,7 @@ export default class SocialComponent {
6
6
  _components: any;
7
7
  _initializing: any;
8
8
  providers: any;
9
- constructor(components: any);
9
+ constructor(components: any, config: any);
10
10
  init(): void;
11
11
  start(socialName: any): any;
12
12
  }
@@ -3,25 +3,29 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  exports.__esModule = true;
6
- var social_1 = __importDefault(require("./social"));
6
+ var isFunction_1 = __importDefault(require("lodash-es/isFunction"));
7
7
  /**
8
8
  * Social Component
9
9
  * Провайдер для социальных сетей. Обеспечивает вызов окна соц сети для oauth авторизации
10
10
  */
11
11
  var SocialComponent = /** @class */ (function () {
12
- function SocialComponent(components) {
13
- this.providers = {};
12
+ function SocialComponent(components, config) {
13
+ this.providers = config.providers || {};
14
14
  this._initializing = {};
15
15
  this._components = components;
16
16
  }
17
17
  SocialComponent.prototype.init = function () {
18
18
  var _this = this;
19
19
  Object.keys(this.providers).forEach(function (name) {
20
- if (social_1["default"][name]) {
21
- var config = _this.providers[name] || {};
22
- _this.providers[name] = new social_1["default"][name](_this._components);
23
- Object.assign(_this.providers[name], config);
20
+ if (isFunction_1["default"](_this.providers[name])) {
21
+ _this.providers[name] = { className: _this.providers[name] };
24
22
  }
23
+ var ProviderClass = _this.providers[name].className;
24
+ delete _this.providers[name].className;
25
+ if (!ProviderClass) {
26
+ throw new Error('Not found class for social provider: ' + name);
27
+ }
28
+ _this.providers[name] = new ProviderClass(_this._components, _this.providers[name]);
25
29
  });
26
30
  Object.keys(this.providers).forEach(function (name) {
27
31
  _this._initializing[name] = _this.providers[name].init();
@@ -32,9 +36,7 @@ var SocialComponent = /** @class */ (function () {
32
36
  if (!this._initializing[socialName]) {
33
37
  return Promise.reject();
34
38
  }
35
- return this._initializing[socialName].then(function () {
36
- return _this.providers[socialName].start();
37
- });
39
+ return this._initializing[socialName].then(function () { return _this.providers[socialName].start(); });
38
40
  };
39
41
  return SocialComponent;
40
42
  }());
@@ -1,3 +1,9 @@
1
+ declare global {
2
+ interface Window {
3
+ APP_REDUX_PRELOAD_STATES?: any;
4
+ __REDUX_DEVTOOLS_EXTENSION__?: any;
5
+ }
6
+ }
1
7
  interface IStoreComponentConfig {
2
8
  initialState: any;
3
9
  history: any;
@@ -37,7 +37,7 @@ var StoreComponent = /** @class */ (function () {
37
37
  this.dispatch = this.dispatch.bind(this);
38
38
  this.subscribe = this.subscribe.bind(this);
39
39
  if (!lazyInit) {
40
- this.initStore();
40
+ this.initStore(config);
41
41
  }
42
42
  }
43
43
  StoreComponent.prototype.init = function (config) {
@@ -49,8 +49,10 @@ var StoreComponent = /** @class */ (function () {
49
49
  var _this = this;
50
50
  if (config === void 0) { config = {}; }
51
51
  var initialState = __assign(__assign({}, (process.env.IS_WEB
52
- // @ts-ignore
53
52
  ? merge_1["default"].apply(void 0, (window.APP_REDUX_PRELOAD_STATES || [{}])) : {})), config.initialState);
53
+ if (window === null || window === void 0 ? void 0 : window.APP_REDUX_PRELOAD_STATES) {
54
+ delete window.APP_REDUX_PRELOAD_STATES;
55
+ }
54
56
  if (process.env.PLATFORM !== 'mobile') {
55
57
  var createHistory = process.env.IS_SSR || typeof location === 'undefined'
56
58
  ? history_1.createMemoryHistory
@@ -59,7 +61,7 @@ var StoreComponent = /** @class */ (function () {
59
61
  : history_1.createBrowserHistory;
60
62
  this.history = createHistory(__assign(__assign({}, get_1["default"](initialState, 'config.store.history', {})), config.history));
61
63
  // Add '?' for fix connected-react-router
62
- if (process.env.IS_SSR && !this.history.location.search && process.env.PLATFORM !== 'mobile') {
64
+ if (process.env.IS_SSR && !this.history.location.search) {
63
65
  this.history.location.search = '?';
64
66
  }
65
67
  this._routerReducer = connected_react_router_1.connectRouter(this.history);
@@ -70,10 +72,7 @@ var StoreComponent = /** @class */ (function () {
70
72
  } : {}), initialState, redux_1.compose(redux_1.applyMiddleware(function (_a) {
71
73
  var getState = _a.getState;
72
74
  return function (next) { return function (action) { return _this._prepare(action, next, getState); }; };
73
- }), redux_1.applyMiddleware(connected_react_router_1.routerMiddleware(this.history)),
74
- // @ts-ignore
75
- !process.env.IS_SSR && window.__REDUX_DEVTOOLS_EXTENSION__ && process.env.PLATFORM !== 'mobile'
76
- // @ts-ignore
75
+ }), redux_1.applyMiddleware(connected_react_router_1.routerMiddleware(this.history)), !process.env.IS_SSR && window.__REDUX_DEVTOOLS_EXTENSION__ && process.env.PLATFORM !== 'mobile'
77
76
  ? window.__REDUX_DEVTOOLS_EXTENSION__()
78
77
  : function (f) { return f; }));
79
78
  }
@@ -1,5 +1,5 @@
1
1
  import { ReactNode } from 'react';
2
- import { IComponents } from '../hooks/useComponents';
2
+ import { IComponents } from '../providers/ComponentsProvider';
3
3
  /**
4
4
  * Ui Component
5
5
  * Компонент для подгрузки и конфигурации UI компонентов приложения
@@ -3,7 +3,7 @@
3
3
  * Компонент, обеспечивающий постоянное web-socket соединение с сервером. Поддерживает подписку на каналы, обработку
4
4
  * ответов и токен авторизации
5
5
  */
6
- import { IComponents } from '../hooks/useComponents';
6
+ import { IComponents } from '../providers/ComponentsProvider';
7
7
  export default class WebSocketComponent {
8
8
  wsUrl: string;
9
9
  streams: string[] | [string, string | number[]][];
@@ -2,7 +2,7 @@ export default class FacebookProvider {
2
2
  _components: any;
3
3
  clientId: string;
4
4
  language: string;
5
- constructor(components: any);
5
+ constructor(components: any, config: any);
6
6
  init(): Promise<any>;
7
7
  start(): Promise<unknown>;
8
8
  }
@@ -37,13 +37,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
37
37
  };
38
38
  exports.__esModule = true;
39
39
  var FacebookProvider = /** @class */ (function () {
40
- function FacebookProvider(components) {
40
+ function FacebookProvider(components, config) {
41
41
  this._components = components;
42
- this.clientId = '';
43
- this.language =
44
- this._components.locale.language +
45
- '_' +
46
- this._components.locale.language.toUpperCase();
42
+ this.clientId = config.clientId || '';
43
+ this.language = this._components.locale.language
44
+ + '_'
45
+ + this._components.locale.language.toUpperCase();
47
46
  }
48
47
  FacebookProvider.prototype.init = function () {
49
48
  return __awaiter(this, void 0, void 0, function () {
@@ -0,0 +1,8 @@
1
+ export default class GitlabProvider {
2
+ _components: any;
3
+ url: string;
4
+ redirectUrl: any;
5
+ constructor(components: any, config: any);
6
+ init(): Promise<void>;
7
+ start(): Promise<unknown>;
8
+ }
@@ -0,0 +1,98 @@
1
+ "use strict";
2
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
+ return new (P || (P = Promise))(function (resolve, reject) {
5
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
9
+ });
10
+ };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (_) try {
18
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
38
+ exports.__esModule = true;
39
+ var GitlabProvider = /** @class */ (function () {
40
+ function GitlabProvider(components, config) {
41
+ this._components = components;
42
+ this.url = config.url || '';
43
+ this.redirectUrl = config.redirectUrl || this._components.http.getUrl('/api/v1/auth/social/proxy');
44
+ }
45
+ GitlabProvider.prototype.init = function () {
46
+ return __awaiter(this, void 0, void 0, function () {
47
+ return __generator(this, function (_a) {
48
+ return [2 /*return*/, Promise.resolve()];
49
+ });
50
+ });
51
+ };
52
+ GitlabProvider.prototype.start = function () {
53
+ return __awaiter(this, void 0, void 0, function () {
54
+ var _this = this;
55
+ return __generator(this, function (_a) {
56
+ return [2 /*return*/, new Promise(function (resolve, reject) {
57
+ // Open popup auth window
58
+ var width = 600;
59
+ var height = 400;
60
+ var params = {
61
+ toolbar: 'no',
62
+ location: 'no',
63
+ directories: 'no',
64
+ status: 'no',
65
+ menubar: 'no',
66
+ scrollbars: 'no',
67
+ resizable: 'no',
68
+ width: width,
69
+ height: height,
70
+ left: window.screen.width / 2 - width / 2,
71
+ top: window.screen.height / 2 - height / 2
72
+ };
73
+ var popup = window.open(_this.url, __('Авторизация через Gitlab'), Object.entries(params)
74
+ .map(function (_a) {
75
+ var key = _a[0], value = _a[1];
76
+ return key + '=' + value;
77
+ })
78
+ .join(','));
79
+ popup.onbeforeunload = function () { return reject(); };
80
+ // This is a handler which is used by child window to pass auth result
81
+ window.authCallback = function (link) {
82
+ // link: http://127.0.0.1:9424/api/v1/auth/social/proxy
83
+ // ?provider=gitlab_kozhindev#access_token=7b87e3de0...5518198d885d&token_type=Bearer
84
+ var token = (/access_token=(\w+)/.exec(link) || [])[1];
85
+ if (token) {
86
+ resolve({ token: token });
87
+ }
88
+ else {
89
+ reject();
90
+ }
91
+ };
92
+ })];
93
+ });
94
+ });
95
+ };
96
+ return GitlabProvider;
97
+ }());
98
+ exports["default"] = GitlabProvider;