@steroidsjs/core 3.0.0-beta.99 → 3.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/actions/notifications.js +7 -1
  2. package/actions/router.js +16 -2
  3. package/components/HttpComponent.d.ts +7 -7
  4. package/components/JwtHttpComponent.d.ts +2 -2
  5. package/components/LocaleComponent.d.ts +6 -6
  6. package/components/MetaComponent.d.ts +90 -1
  7. package/components/MetricsComponent.js +2 -1
  8. package/components/ResourceComponent.d.ts +4 -4
  9. package/components/UiComponent.d.ts +7 -7
  10. package/components/WebSocketComponent.d.ts +11 -11
  11. package/docs-autogen-result.json +15160 -6374
  12. package/en.json +151 -92
  13. package/hooks/index.d.ts +4 -3
  14. package/hooks/index.js +7 -5
  15. package/hooks/useAbsolutePositioning.js +0 -1
  16. package/hooks/useAddressBar.js +0 -1
  17. package/hooks/useApplication.js +8 -1
  18. package/hooks/useDataProvider.d.ts +17 -2
  19. package/hooks/useDataSelect.js +21 -4
  20. package/hooks/useFetch.js +6 -1
  21. package/hooks/useFile.d.ts +1 -0
  22. package/hooks/useFile.js +2 -0
  23. package/hooks/useList.d.ts +53 -14
  24. package/hooks/useList.js +31 -70
  25. package/hooks/useTree.d.ts +104 -0
  26. package/hooks/useTree.js +169 -0
  27. package/index.d.ts +3 -3
  28. package/package.json +94 -93
  29. package/reducers/router.d.ts +2 -1
  30. package/ui/content/Accordion/Accordion.d.ts +8 -5
  31. package/ui/content/Accordion/Accordion.js +6 -1
  32. package/ui/content/Accordion/AccordionItem.d.ts +2 -2
  33. package/ui/content/Accordion/AccordionItem.js +1 -12
  34. package/ui/content/Alert/Alert.d.ts +5 -2
  35. package/ui/content/Alert/Alert.js +13 -12
  36. package/ui/content/Avatar/Avatar.js +18 -12
  37. package/ui/content/Badge/Badge.d.ts +5 -1
  38. package/ui/content/Badge/Badge.js +14 -12
  39. package/ui/content/Calendar/Calendar.d.ts +6 -1
  40. package/ui/content/Calendar/Calendar.js +19 -12
  41. package/ui/content/CalendarSystem/CalendarSystem.d.ts +40 -18
  42. package/ui/content/CalendarSystem/CalendarSystem.js +65 -76
  43. package/ui/content/CalendarSystem/hooks/useCalendarControls.d.ts +1 -2
  44. package/ui/content/CalendarSystem/hooks/useCalendarControls.js +14 -17
  45. package/ui/content/CalendarSystem/hooks/useCalendarSystemEventGroupModals.js +11 -3
  46. package/ui/content/CalendarSystem/hooks/useCalendarSystemModals.js +2 -2
  47. package/ui/content/CalendarSystem/hooks/useCalendarType.d.ts +5 -0
  48. package/ui/content/CalendarSystem/hooks/useCalendarType.js +22 -0
  49. package/ui/content/CalendarSystem/hooks/useEventsFromDate.d.ts +5 -0
  50. package/ui/content/CalendarSystem/hooks/useEventsFromDate.js +49 -0
  51. package/ui/content/CalendarSystem/hooks/{useMonthCalendar.d.ts → useMonthGrid.d.ts} +4 -5
  52. package/ui/content/CalendarSystem/hooks/{useMonthCalendar.js → useMonthGrid.js} +24 -15
  53. package/ui/content/CalendarSystem/hooks/{useWeekCalendar.d.ts → useWeekGrid.d.ts} +6 -5
  54. package/ui/content/CalendarSystem/hooks/useWeekGrid.js +72 -0
  55. package/ui/content/CalendarSystem/utils/utils.d.ts +8 -0
  56. package/ui/content/CalendarSystem/utils/utils.js +27 -1
  57. package/ui/content/Card/Card.d.ts +33 -27
  58. package/ui/content/Card/Card.js +1 -12
  59. package/ui/content/Chart/Chart.d.ts +38 -8
  60. package/ui/content/Chart/Chart.js +16 -12
  61. package/ui/content/Chat/Chat.d.ts +90 -5
  62. package/ui/content/Chat/Chat.js +40 -14
  63. package/ui/content/Chat/constants/timeTemplatesAndUnits.d.ts +1 -0
  64. package/ui/content/Chat/constants/timeTemplatesAndUnits.js +2 -1
  65. package/ui/content/Chat/hooks/useChat.d.ts +5 -6
  66. package/ui/content/Chat/hooks/useChat.js +49 -3
  67. package/ui/content/Chat/utils/addNewMessageIntoGroupedMessages.d.ts +5 -0
  68. package/ui/content/Chat/utils/addNewMessageIntoGroupedMessages.js +61 -0
  69. package/ui/content/Chat/utils/getMessagesGroupedByDate.d.ts +1 -0
  70. package/ui/content/Chat/utils/getMessagesGroupedByDate.js +3 -2
  71. package/ui/content/Chat/utils/index.d.ts +4 -2
  72. package/ui/content/Chat/utils/index.js +6 -1
  73. package/ui/content/Chat/utils/isTodayMessage.d.ts +1 -0
  74. package/ui/content/Chat/utils/isTodayMessage.js +13 -0
  75. package/ui/content/CopyToClipboard/CopyToClipboard.d.ts +3 -3
  76. package/ui/content/CopyToClipboard/CopyToClipboard.js +10 -12
  77. package/ui/content/Dashboard/Dashboard.d.ts +5 -2
  78. package/ui/content/Dashboard/Dashboard.js +27 -3
  79. package/ui/content/Detail/Detail.d.ts +15 -2
  80. package/ui/content/Detail/Detail.js +12 -1
  81. package/ui/content/DropDown/DropDown.d.ts +1 -1
  82. package/ui/content/DropDown/DropDown.js +16 -4
  83. package/ui/content/Icon/Icon.js +13 -15
  84. package/ui/content/Kanban/Kanban.d.ts +15 -4
  85. package/ui/content/Kanban/Kanban.js +8 -12
  86. package/ui/content/Kanban/hooks/useKanban.d.ts +33 -26
  87. package/ui/content/Menu/Menu.js +10 -12
  88. package/ui/content/Slider/Slider.js +1 -12
  89. package/ui/crud/index.d.ts +3 -0
  90. package/ui/form/AutoCompleteField/AutoCompleteField.js +1 -1
  91. package/ui/form/Button/Button.js +8 -2
  92. package/ui/form/CheckboxField/CheckboxField.d.ts +1 -0
  93. package/ui/form/CheckboxField/CheckboxField.js +2 -2
  94. package/ui/form/CheckboxListField/CheckboxListField.d.ts +18 -2
  95. package/ui/form/CheckboxListField/CheckboxListField.js +1 -1
  96. package/ui/form/CheckboxTreeField/CheckboxTreeField.d.ts +67 -0
  97. package/ui/form/CheckboxTreeField/CheckboxTreeField.js +126 -0
  98. package/ui/form/CheckboxTreeField/index.d.ts +2 -0
  99. package/ui/form/CheckboxTreeField/index.js +7 -0
  100. package/ui/form/DateField/DateField.d.ts +4 -3
  101. package/ui/form/DateField/DateField.js +6 -2
  102. package/ui/form/DateField/useDateRange.d.ts +1 -0
  103. package/ui/form/DateField/useDateRange.js +13 -2
  104. package/ui/form/DateRangeField/DateRangeField.d.ts +34 -1
  105. package/ui/form/DateRangeField/DateRangeField.js +59 -8
  106. package/ui/form/DateTimeField/DateTimeField.d.ts +10 -0
  107. package/ui/form/DateTimeField/DateTimeField.js +11 -3
  108. package/ui/form/DateTimeRangeField/DateTimeRangeField.d.ts +25 -1
  109. package/ui/form/DateTimeRangeField/DateTimeRangeField.js +66 -13
  110. package/ui/form/DropDownField/DropDownField.d.ts +23 -3
  111. package/ui/form/DropDownField/DropDownField.js +1 -1
  112. package/ui/form/EmailField/EmailField.d.ts +6 -0
  113. package/ui/form/EmailField/EmailField.js +0 -4
  114. package/ui/form/Field/Field.d.ts +9 -1
  115. package/ui/form/Field/Field.js +1 -1
  116. package/ui/form/Field/fieldWrapper.d.ts +9 -1
  117. package/ui/form/FieldList/FieldList.d.ts +13 -7
  118. package/ui/form/FieldList/FieldList.js +30 -4
  119. package/ui/form/FileField/FileField.js +5 -0
  120. package/ui/form/Form/Form.d.ts +26 -3
  121. package/ui/form/Form/Form.js +5 -3
  122. package/ui/form/ImageField/ImageField.d.ts +9 -1
  123. package/ui/form/InputField/InputField.d.ts +5 -2
  124. package/ui/form/InputField/hooks/useInputFieldWarningByType.js +1 -0
  125. package/ui/form/NumberField/NumberField.js +34 -7
  126. package/ui/form/SliderField/SliderField.d.ts +10 -2
  127. package/ui/form/TimeRangeField/TimeRangeField.d.ts +10 -1
  128. package/ui/form/TimeRangeField/TimeRangeField.js +3 -1
  129. package/ui/form/WizardForm/WizardForm.d.ts +119 -0
  130. package/ui/form/WizardForm/WizardForm.js +167 -0
  131. package/ui/form/WizardForm/index.d.ts +2 -0
  132. package/ui/form/WizardForm/index.js +7 -0
  133. package/ui/form/WizardForm/utils.d.ts +12 -0
  134. package/ui/form/WizardForm/utils.js +111 -0
  135. package/ui/form/index.d.ts +3 -1
  136. package/ui/form/index.js +4 -1
  137. package/ui/layout/ProgressBar/ProgressBar.js +12 -2
  138. package/ui/layout/Skeleton/Skeleton.d.ts +3 -1
  139. package/ui/layout/Tooltip/Tooltip.d.ts +4 -1
  140. package/ui/list/ControlsColumn/ControlsColumn.d.ts +17 -3
  141. package/ui/list/FlexGrid/FlexGrid.d.ts +11 -1
  142. package/ui/list/Grid/Grid.d.ts +42 -6
  143. package/ui/list/Grid/Grid.js +1 -2
  144. package/ui/list/LayoutNames/LayoutNames.d.ts +11 -1
  145. package/ui/list/Steps/Steps.d.ts +19 -7
  146. package/ui/list/Steps/Steps.js +46 -26
  147. package/ui/list/TreeTable/TreeTable.d.ts +34 -33
  148. package/ui/list/TreeTable/TreeTable.js +19 -8
  149. package/ui/modal/Modal/Modal.d.ts +7 -1
  150. package/ui/nav/Breadcrumbs/Breadcrumbs.d.ts +11 -1
  151. package/ui/nav/ButtonGroup/ButtonGroup.d.ts +13 -4
  152. package/ui/nav/Controls/Controls.d.ts +7 -1
  153. package/ui/nav/Link/Link.d.ts +1 -1
  154. package/ui/nav/Nav/Nav.d.ts +19 -4
  155. package/ui/nav/Router/Router.d.ts +19 -3
  156. package/ui/nav/Router/Router.js +11 -6
  157. package/ui/nav/Router/helpers.d.ts +2 -2
  158. package/ui/nav/Router/helpers.js +39 -7
  159. package/ui/nav/Tree/Tree.d.ts +32 -62
  160. package/ui/nav/Tree/Tree.js +18 -165
  161. package/utils/calculateComponentAbsolutePosition.js +74 -24
  162. package/utils/calendar.d.ts +8 -0
  163. package/utils/calendar.js +76 -1
  164. package/utils/data.js +1 -0
  165. package/utils/form.d.ts +1 -0
  166. package/utils/form.js +16 -1
  167. package/ui/content/CalendarSystem/hooks/useWeekCalendar.js +0 -86
  168. package/utils/list.d.ts +0 -1
  169. package/utils/list.js +0 -5
package/package.json CHANGED
@@ -1,95 +1,96 @@
1
1
  {
2
- "name": "@steroidsjs/core",
3
- "version": "3.0.0-beta.99",
4
- "description": "",
5
- "author": "Vladimir Kozhin <hello@kozhindev.com>",
6
- "repository": {
7
- "type": "git",
8
- "url": "https://github.com/steroids/react"
9
- },
10
- "main": "dist/index.ts",
11
- "types": "dist/index.d.ts",
12
- "exports": {
13
- "./": "./dist"
14
- },
15
- "license": "MIT",
16
- "homepage": "https://github.com/steroids/react",
17
- "bugs": {
18
- "url": "https://github.com/steroids/react/issues"
19
- },
20
- "scripts": {
21
- "docs": "node docs/docs-autogen.js",
22
- "test": "jest",
23
- "lint": "eslint -c ./.eslintrc --ext .js,.jsx,.ts,.tsx ./src ./tests --quiet",
24
- "build": "tsc && cp ./{package.json,LICENSE,README.md} dist/ && cp src/index.d.ts dist/ && cp docs/docs-autogen-result.json dist/ && cp docs/locales/en.json dist/",
25
- "watch": "tsc -p tsconfig-debug.json"
26
- },
27
- "dependencies": {
28
- "@maskito/core": "1.7.0",
29
- "@maskito/kit": "1.7.0",
30
- "@maskito/react": "^0.12.1",
31
- "@splidejs/react-splide": "^0.7.12",
32
- "axios": "^0.21.1",
33
- "connected-react-router": "^6.9.3",
34
- "dayjs": "^1.11.9",
35
- "domready": "^1.0.8",
36
- "dot-prop-immutable": "^2.1.0",
37
- "fileup-core": "^1.2.7",
38
- "history": "^4.10.1",
39
- "intl-messageformat": "^10.1.4",
40
- "js-cookie": "^2.2.1",
41
- "load-js": "^3.0.3",
42
- "lodash": "^4.17.21",
43
- "lodash-es": "^4.17.21",
44
- "path-to-regexp": "^1.7.0",
45
- "qs": "^6.9.4",
46
- "query-string": "^6.14.0",
47
- "react": "^18.2.0",
48
- "react-click-outside": "^3.0.1",
49
- "react-day-picker": "^8.7.1",
50
- "react-dom": "^18.2.0",
51
- "react-grid-gallery": "^0.4.8",
52
- "react-helmet": "^6.1.0",
53
- "react-image-crop": "^9.0.2",
54
- "react-redux": "^8.0.5",
55
- "react-router": "^5.2.0",
56
- "react-router-dom": "^5.2.0",
57
- "react-use": "^17.4.0",
58
- "redux": "^4.0.4",
59
- "redux-mock-store": "^1.5.4",
60
- "set-cookie-parser": "^2.4.8"
61
- },
62
- "devDependencies": {
63
- "@babel/cli": "^7.13.14",
64
- "@babel/core": "^7.13.15",
65
- "@babel/preset-env": "^7.13.15",
66
- "@babel/preset-react": "^7.13.13",
67
- "@babel/preset-typescript": "^7.13.0",
68
- "@steroidsjs/eslint-config": "^2.1.4",
69
- "@testing-library/dom": "^8.20.0",
70
- "@testing-library/jest-dom": "^5.16.5",
71
- "@testing-library/react": "^13.4.0",
72
- "@testing-library/user-event": "^14.4.3",
73
- "@types/enzyme": "^3.10.8",
74
- "@types/enzyme-adapter-react-16": "^1.0.6",
75
- "@types/jest": "^26.0.22",
76
- "@types/markdown-to-jsx": "^7.0.1",
77
- "@types/reach__router": "^1.3.7",
78
- "@types/react": "^18.0.20",
79
- "@types/react-color": "^3.0.4",
80
- "@types/react-dom": "^18.0.6",
81
- "@types/react-syntax-highlighter": "^13.5.0",
82
- "@types/webpack-env": "^1.16.0",
83
- "@typescript-eslint/eslint-plugin": "^5.51.0",
84
- "@typescript-eslint/parser": "^4.15.0",
85
- "@wojtekmaj/enzyme-adapter-react-17": "^0.4.1",
86
- "enzyme": "^3.11.0",
87
- "eslint": "^8.34.0",
88
- "jest": "^26.6.3",
89
- "jest-environment-jsdom-fifteen": "^1.0.2",
90
- "jest-enzyme": "^7.1.2",
91
- "rc-slider": "9.7.4",
92
- "ts-jest": "^26.5.1",
93
- "typescript": "^4.9.5"
94
- }
2
+ "name": "@steroidsjs/core",
3
+ "version": "3.0.1",
4
+ "description": "",
5
+ "author": "Vladimir Kozhin <hello@kozhindev.com>",
6
+ "repository": {
7
+ "type": "git",
8
+ "url": "https://github.com/steroids/react"
9
+ },
10
+ "main": "dist/index.ts",
11
+ "types": "dist/index.d.ts",
12
+ "exports": {
13
+ "./": "./dist"
14
+ },
15
+ "license": "MIT",
16
+ "homepage": "https://github.com/steroids/react",
17
+ "bugs": {
18
+ "url": "https://github.com/steroids/react/issues"
19
+ },
20
+ "scripts": {
21
+ "docs": "node docs/docs-autogen.js",
22
+ "test": "jest",
23
+ "lint": "eslint -c ./.eslintrc --ext .js,.jsx,.ts,.tsx ./src ./tests --quiet",
24
+ "build": "tsc && cp ./{package.json,LICENSE,README.md} dist/ && cp src/index.d.ts dist/ && cp docs/docs-autogen-result.json dist/ && cp docs/locales/en.json dist/",
25
+ "watch": "tsc -p tsconfig-debug.json"
26
+ },
27
+ "dependencies": {
28
+ "@maskito/core": "1.7.0",
29
+ "@maskito/kit": "1.7.0",
30
+ "@maskito/react": "^0.12.1",
31
+ "@splidejs/react-splide": "^0.7.12",
32
+ "axios": "^0.21.1",
33
+ "connected-react-router": "^6.9.3",
34
+ "dayjs": "^1.11.9",
35
+ "domready": "^1.0.8",
36
+ "dot-prop-immutable": "^2.1.0",
37
+ "fileup-core": "^1.2.7",
38
+ "history": "^4.10.1",
39
+ "intl-messageformat": "^10.1.4",
40
+ "js-cookie": "^2.2.1",
41
+ "load-js": "^3.0.3",
42
+ "lodash": "^4.17.21",
43
+ "lodash-es": "^4.17.21",
44
+ "path-to-regexp": "^1.7.0",
45
+ "qs": "^6.9.4",
46
+ "query-string": "^6.14.0",
47
+ "react": "^18.2.0",
48
+ "react-click-outside": "^3.0.1",
49
+ "react-day-picker": "^8.7.1",
50
+ "react-dom": "^18.2.0",
51
+ "react-grid-gallery": "^0.4.8",
52
+ "react-helmet": "^6.1.0",
53
+ "react-image-crop": "^9.0.2",
54
+ "react-redux": "^8.0.5",
55
+ "react-router": "^5.2.0",
56
+ "react-router-dom": "^5.2.0",
57
+ "react-use": "^17.4.0",
58
+ "redux": "^4.0.4",
59
+ "redux-mock-store": "^1.5.4",
60
+ "set-cookie-parser": "^2.4.8"
61
+ },
62
+ "devDependencies": {
63
+ "@babel/cli": "^7.13.14",
64
+ "@babel/core": "^7.13.15",
65
+ "@babel/preset-env": "^7.13.15",
66
+ "@babel/preset-react": "^7.13.13",
67
+ "@babel/preset-typescript": "^7.13.0",
68
+ "@steroidsjs/eslint-config": "^2.1.6",
69
+ "@testing-library/dom": "^8.20.0",
70
+ "@testing-library/jest-dom": "^5.16.5",
71
+ "@testing-library/react": "^13.4.0",
72
+ "@testing-library/user-event": "^14.4.3",
73
+ "@types/enzyme": "^3.10.8",
74
+ "@types/enzyme-adapter-react-16": "^1.0.6",
75
+ "@types/jest": "^26.0.22",
76
+ "@types/markdown-to-jsx": "^7.0.1",
77
+ "@types/reach__router": "^1.3.7",
78
+ "@types/react": "^18.0.20",
79
+ "@types/react-color": "^3.0.4",
80
+ "@types/react-dom": "^18.0.6",
81
+ "@types/react-syntax-highlighter": "^13.5.0",
82
+ "@types/webpack-env": "^1.16.0",
83
+ "@typescript-eslint/eslint-plugin": "^5.51.0",
84
+ "@typescript-eslint/parser": "^4.15.0",
85
+ "@wojtekmaj/enzyme-adapter-react-17": "^0.4.1",
86
+ "enzyme": "^3.11.0",
87
+ "eslint": "^8.34.0",
88
+ "jest": "^26.6.3",
89
+ "jest-environment-jsdom-fifteen": "^1.0.2",
90
+ "jest-enzyme": "^7.1.2",
91
+ "rc-slider": "9.7.4",
92
+ "ts-jest": "^26.5.1",
93
+ "typedoc": "^0.21.0",
94
+ "typescript": "^4.9.5"
95
+ }
95
96
  }
@@ -1,3 +1,4 @@
1
+ /// <reference types="react" />
1
2
  import { IRouteItem } from '../ui/nav/Router/Router';
2
3
  type TRouteIdArg = string | null;
3
4
  export interface IRouterInitialState {
@@ -43,7 +44,7 @@ export declare const normalizeRoutes: (state: any, item: IRouteItem, activeIds:
43
44
  id: string;
44
45
  title: string;
45
46
  label: string;
46
- icon: any;
47
+ icon: string | import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
47
48
  exact: boolean;
48
49
  strict: boolean;
49
50
  path: string;
@@ -2,7 +2,7 @@ import * as React from 'react';
2
2
  export interface IAccordionIcon {
3
3
  /**
4
4
  * Пользовательская иконка открытия
5
- * @example 'user
5
+ * @example 'user'
6
6
  */
7
7
  open: React.ReactElement | string;
8
8
  /**
@@ -64,7 +64,10 @@ export interface IAccordionProps extends IUiComponent {
64
64
  activeKey?: number;
65
65
  /**
66
66
  * Вызываемая функция при каждом изменении состояния
67
- * @example {() => {console.log('success')}}
67
+ * @example
68
+ * {
69
+ * () => { console.log('success') }
70
+ * }
68
71
  */
69
72
  onChange?: () => void;
70
73
  /**
@@ -78,13 +81,13 @@ export interface IAccordionProps extends IUiComponent {
78
81
  */
79
82
  showIcon?: boolean;
80
83
  }
81
- export interface IAccordionViewProps extends IAccordionProps {
84
+ export interface IAccordionItemProps extends Omit<IAccordionProps, 'onChange'> {
82
85
  toggleAccordion?: (number: any) => void;
83
86
  toggleCollapse?: (number: any) => void;
84
87
  childIndex?: number;
85
88
  isShowMore?: boolean;
86
89
  }
87
- export type IAccordionItemProps = IAccordionProps;
88
- export type IAccordionItemViewProps = IAccordionViewProps;
90
+ export type IAccordionViewProps = Pick<IAccordionProps, 'children' | 'className'>;
91
+ export type IAccordionItemViewProps = IAccordionItemProps & IUiComponent;
89
92
  declare function Accordion(props: IAccordionProps): JSX.Element;
90
93
  export default Accordion;
@@ -44,6 +44,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
44
44
  };
45
45
  exports.__esModule = true;
46
46
  var React = __importStar(require("react"));
47
+ var react_1 = require("react");
47
48
  var hooks_1 = require("../../../hooks");
48
49
  function Accordion(props) {
49
50
  var _a = React.useState([]), selectedAccordionItems = _a[0], setSelectedAccordionItems = _a[1];
@@ -77,7 +78,11 @@ function Accordion(props) {
77
78
  }
78
79
  };
79
80
  var components = (0, hooks_1.useComponents)();
81
+ var viewProps = (0, react_1.useMemo)(function () { return ({
82
+ className: props.className,
83
+ children: props.children
84
+ }); }, [props.children, props.className]);
80
85
  var AccordionView = components.ui.getView(props.view || 'content.AccordionView');
81
- return (React.createElement(AccordionView, __assign({}, props), React.Children.map(props.children, function (child, index) { return React.cloneElement(child, __assign({ style: props.style, activeKey: props.activeKey, childIndex: index, toggleCollapse: toggleCollapse, toggleAccordion: toggleAccordion, hasOneOpenItem: props.hasOneOpenItem, isShowMore: (selectedAccordionItems || []).includes(index), icon: props.icon, showIcon: props.showIcon }, child.props)); })));
86
+ return (React.createElement(AccordionView, __assign({}, viewProps), React.Children.map(props.children, function (child, index) { return React.cloneElement(child, __assign({ style: props.style, activeKey: props.activeKey, childIndex: index, toggleCollapse: toggleCollapse, toggleAccordion: toggleAccordion, hasOneOpenItem: props.hasOneOpenItem, isShowMore: (selectedAccordionItems || []).includes(index), icon: props.icon, showIcon: props.showIcon }, child.props)); })));
82
87
  }
83
88
  exports["default"] = Accordion;
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
- import { IAccordionItemProps } from './Accordion';
2
+ import { IAccordionItemProps, IAccordionItemViewProps } from './Accordion';
3
3
  declare function AccordionItem(props: IAccordionItemProps): import("react").ReactElement<any, string | import("react").JSXElementConstructor<any>>;
4
4
  declare namespace AccordionItem {
5
- var defaultProps: import("./Accordion").IAccordionViewProps;
5
+ var defaultProps: IAccordionItemViewProps;
6
6
  }
7
7
  export default AccordionItem;
@@ -1,20 +1,9 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  exports.__esModule = true;
14
3
  var hooks_1 = require("../../../hooks");
15
4
  function AccordionItem(props) {
16
5
  var components = (0, hooks_1.useComponents)();
17
- return components.ui.renderView(props.view || 'content.AccordionItemView', __assign({}, props));
6
+ return components.ui.renderView(props.view || 'content.AccordionItemView', props);
18
7
  }
19
8
  AccordionItem.defaultProps = {
20
9
  title: 'Accordion',
@@ -18,7 +18,7 @@ import React from 'react';
18
18
  export interface IAlertProps extends IUiComponent {
19
19
  /**
20
20
  * Дочерние элементы
21
- * @example {<span>children</span>}
21
+ * @example { <span>children</span> }
22
22
  */
23
23
  children?: React.ReactNode;
24
24
  /**
@@ -45,7 +45,10 @@ export interface IAlertProps extends IUiComponent {
45
45
  showIcon?: boolean;
46
46
  /**
47
47
  * Callback функция вызываемая при нажатии на кнопку закрытия
48
- * @example {() => console.log('this is callback')}
48
+ * @example
49
+ * {
50
+ * () => console.log('this is callback')
51
+ * }
49
52
  */
50
53
  onClose?: () => void;
51
54
  /**
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  exports.__esModule = true;
14
3
  var react_1 = require("react");
15
4
  var hooks_1 = require("../../../hooks");
@@ -24,7 +13,19 @@ function Alert(props) {
24
13
  props.onClose();
25
14
  }
26
15
  }, [props]);
27
- return components.ui.renderView(props.view || 'content.AlertView', __assign(__assign({}, props), { isExist: isExist, isVisible: isVisible, onClose: onClose }));
16
+ var viewProps = (0, react_1.useMemo)(function () { return ({
17
+ type: props.type,
18
+ showIcon: props.showIcon,
19
+ message: props.message,
20
+ description: props.description,
21
+ showClose: props.showClose,
22
+ className: props.className,
23
+ style: props.style,
24
+ isExist: isExist,
25
+ isVisible: isVisible,
26
+ onClose: onClose
27
+ }); }, [isExist, isVisible, onClose, props.className, props.description, props.message, props.showClose, props.showIcon, props.style, props.type]);
28
+ return components.ui.renderView(props.view || 'content.AlertView', viewProps);
28
29
  }
29
30
  Alert.defaultProps = {
30
31
  type: 'default',
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  exports.__esModule = true;
14
3
  var react_1 = require("react");
15
4
  var hooks_1 = require("../../../hooks");
@@ -32,7 +21,24 @@ function Avatar(props) {
32
21
  }
33
22
  return resultTitle;
34
23
  }, [props.title]);
35
- return components.ui.renderView(props.view || 'content.AvatarView', __assign(__assign({}, props), { isError: isError, onError: onError, formattedTitle: formattedTitle }));
24
+ var viewProps = (0, react_1.useMemo)(function () { return ({
25
+ alt: props.alt,
26
+ size: props.size,
27
+ shape: props.shape,
28
+ src: props.src,
29
+ srcSet: props.srcSet,
30
+ status: props.status,
31
+ title: props.title,
32
+ children: props.children,
33
+ hasBorder: props.hasBorder,
34
+ className: props.className,
35
+ style: props.style,
36
+ isError: isError,
37
+ onError: onError,
38
+ formattedTitle: formattedTitle
39
+ }); }, [props.alt, props.size, props.shape, props.src, props.srcSet, props.status, props.title,
40
+ props.children, props.hasBorder, props.className, props.style, isError, onError, formattedTitle]);
41
+ return components.ui.renderView(props.view || 'content.AvatarView', viewProps);
36
42
  }
37
43
  Avatar.defaultProps = {
38
44
  size: 'md',
@@ -47,7 +47,11 @@ export interface IBadgeProps extends IUiComponent {
47
47
  message?: string;
48
48
  /**
49
49
  * Нужно ли отображать счетчик
50
- * @example {isEnable: true, content: 'Hello from counter!'}
50
+ * @example
51
+ * {
52
+ * isEnable: true,
53
+ * content: 'Hello from counter!',
54
+ * }
51
55
  */
52
56
  counter: boolean | ICounter;
53
57
  /**
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  exports.__esModule = true;
14
3
  var react_1 = require("react");
15
4
  var hooks_1 = require("../../../hooks");
@@ -22,7 +11,20 @@ function Badge(props) {
22
11
  props.onClose();
23
12
  }
24
13
  }, [props]);
25
- return components.ui.renderView(props.view || 'content.BadgeView', __assign(__assign({}, props), { isExist: isExist, onClose: onClose }));
14
+ var viewProps = (0, react_1.useMemo)(function () { return ({
15
+ type: props.type,
16
+ size: props.size,
17
+ showClose: props.showClose,
18
+ roundingStyle: props.roundingStyle,
19
+ counter: props.counter,
20
+ message: props.message,
21
+ className: props.className,
22
+ style: props.style,
23
+ onClose: onClose,
24
+ isExist: isExist
25
+ }); }, [props.type, props.size, props.showClose, props.roundingStyle, props.counter, props.message,
26
+ props.className, props.style, onClose, isExist]);
27
+ return components.ui.renderView(props.view || 'content.BadgeView', viewProps);
26
28
  }
27
29
  Badge.defaultProps = {
28
30
  type: 'primary',
@@ -29,7 +29,12 @@ export interface ICalendarProps extends IUiComponent {
29
29
  onChange?: (date: string) => void;
30
30
  /**
31
31
  * Свойства для компонента DayPickerInput
32
- * @example {dayPickerProps: {showWeekNumbers: true}}
32
+ * @example
33
+ * {
34
+ * dayPickerProps: {
35
+ * showWeekNumbers: true
36
+ * }
37
+ * }
33
38
  */
34
39
  pickerProps?: DayPickerProps | any;
35
40
  /**
@@ -1,15 +1,4 @@
1
1
  "use strict";
2
- var __assign = (this && this.__assign) || function () {
3
- __assign = Object.assign || function(t) {
4
- for (var s, i = 1, n = arguments.length; i < n; i++) {
5
- s = arguments[i];
6
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
7
- t[p] = s[p];
8
- }
9
- return t;
10
- };
11
- return __assign.apply(this, arguments);
12
- };
13
2
  exports.__esModule = true;
14
3
  var react_1 = require("react");
15
4
  var hooks_1 = require("../../../hooks");
@@ -45,7 +34,25 @@ function Calendar(props) {
45
34
  props.onMonthChange(newMonth);
46
35
  }
47
36
  }, [props]);
48
- return components.ui.renderView(props.view || 'content.CalendarView', __assign(__assign(__assign({}, props.viewProps), props.pickerProps), { month: month, toYear: toYear, fromYear: fromYear, onDaySelect: onDaySelect, onMonthSelect: onMonthSelect, selectedDates: selectedDates, toggleCaptionPanel: toggleCaptionPanel, isCaptionPanelVisible: isCaptionPanelVisible, className: props.className, showFooter: props.showFooter, numberOfMonths: props.numberOfMonths }));
37
+ var viewProps = (0, react_1.useMemo)(function () { return ({
38
+ month: month,
39
+ toYear: toYear,
40
+ fromYear: fromYear,
41
+ onDaySelect: onDaySelect,
42
+ onMonthSelect: onMonthSelect,
43
+ selectedDates: selectedDates,
44
+ toggleCaptionPanel: toggleCaptionPanel,
45
+ isCaptionPanelVisible: isCaptionPanelVisible,
46
+ style: props.style,
47
+ className: props.className,
48
+ viewProps: props.viewProps,
49
+ showFooter: props.showFooter,
50
+ pickerProps: props.pickerProps,
51
+ numberOfMonths: props.numberOfMonths
52
+ }); }, [fromYear, isCaptionPanelVisible, month, onDaySelect, onMonthSelect, props.className,
53
+ props.numberOfMonths, props.pickerProps, props.showFooter, props.style, props.viewProps,
54
+ selectedDates, toYear, toggleCaptionPanel]);
55
+ return components.ui.renderView(props.view || 'content.CalendarView', viewProps);
49
56
  }
50
57
  Calendar.defaultProps = {
51
58
  numberOfMonths: 1,
@@ -67,8 +67,15 @@ export interface IEventGroup {
67
67
  events: Omit<IEvent, 'color'>[];
68
68
  }
69
69
  /**
70
- * Комплексный календарь
71
- **/
70
+ * CalendarSystem
71
+ *
72
+ * Комплексный компонент календарь служит для планирования событий и их отображения в календаре.
73
+ *
74
+ * Компонент умеет отображать события с помощью недельной сетки с шагом в 1 час,
75
+ * а также переключать отображение на сетку по месяцам с шагом 1 день.
76
+ * Присутствует возможность добавлять в календарь события и создавать новые группы событий.
77
+ *
78
+ */
72
79
  export interface ICalendarSystemProps extends IUiComponent {
73
80
  /**
74
81
  * Функция, которая вызовется при смене типа календаря
@@ -95,35 +102,50 @@ export interface ICalendarSystemProps extends IUiComponent {
95
102
  */
96
103
  eventGroups: IEventGroup[];
97
104
  };
105
+ /**
106
+ * Дополнительные свойства, которые передаются во view компонента
107
+ */
108
+ additionalViewProps?: Record<string, any>;
98
109
  [key: string]: any;
99
110
  }
100
- export interface ICalendarSystemViewProps extends Omit<ICalendarSystemProps, 'calendarGroups'> {
101
- monthCalendarDays: IDay[];
102
- currentWeekDays: IDay[];
103
- allHours: string[];
104
- calendarType: CalendarEnum;
105
- dateToDisplay: string;
111
+ export interface ICalendarSystemViewProps extends Pick<ICalendarSystemProps, 'className' | 'style' | 'additionalViewProps'> {
112
+ openCreateModal: (eventInitialDay?: IDay) => void;
113
+ onInnerCalendarChangeMonth: (newDate: Date) => void;
106
114
  eventGroups: IEventGroup[];
107
115
  eventGroupsTitle: string;
108
- selectedCalendarGroupsIds: number[];
109
- onChangeCalendarType: (newType: string) => void;
110
- onMonthChange: (newDate: Date) => void;
111
- applyControl: (event: React.MouseEvent<HTMLElement>) => void;
112
- openCreateModal: (eventInitialDay?: IDay) => void;
113
- openCreateEventGroupModal: VoidFunction;
114
- openEditModal: (event: IEvent) => void;
115
- getEventsFromDate: (dateFromDay: Date, currentCalendarType: CalendarEnum) => IEvent[];
116
116
  onChangeEventGroupsIds: (selectedIds: number[]) => void;
117
- weekDays: string[];
117
+ openCreateEventGroupModal: VoidFunction;
118
+ dateToDisplay: string;
119
+ handleCalendarTypeChange: (newType: string) => void;
120
+ handleControlClick: (event: React.MouseEvent<HTMLElement>) => void;
121
+ calendarType: CalendarEnum;
122
+ monthGridProps: {
123
+ monthGridWeekDays: string[];
124
+ monthGridCalendarDays: IDay[];
125
+ getEventsFromDate: (dateFromDay: Date, currentCalendarType: CalendarEnum) => IEvent[];
126
+ openEditModal: (event: IEvent) => void;
127
+ openCreateModal: (eventInitialDay?: IDay) => void;
128
+ };
129
+ weekGridProps: {
130
+ weekGridTwentyFourHoursArray: string[];
131
+ weekGridCurrentWeekDays: IDay[];
132
+ getEventsFromDate: (dateFromDay: Date, currentCalendarType: CalendarEnum) => IEvent[];
133
+ openEditModal: (event: IEvent) => void;
134
+ openCreateModal: (eventInitialDay?: IDay) => void;
135
+ };
118
136
  }
119
137
  export interface ICalendarSystemModalViewProps extends IModalProps {
120
138
  eventGroups: IEventGroup[];
121
- onEventSubmit: (fields: Record<CalendarSystemModalFields, string>, eventInitialValues?: IEventInitialValues) => void;
139
+ onModalFormSubmit: (fields: Record<CalendarSystemModalFields, string>, eventInitialValues?: IEventInitialValues) => void;
122
140
  isCreate: boolean;
123
141
  eventInitialValues?: any;
124
142
  }
125
143
  export interface CalendarSystemEventGroupModalViewProps extends IModalProps {
126
144
  isCreate: boolean;
127
145
  onEventGroupSubmit: (fields: Record<CalendarSystemEventGroupModalFields, string>) => void;
146
+ eventGroupInitialValues?: {
147
+ color: string;
148
+ label: string;
149
+ };
128
150
  }
129
151
  export default function CalendarSystem(props: ICalendarSystemProps): React.ReactElement<any, string | React.JSXElementConstructor<any>>;