@plesk/ui-library 3.36.1 → 3.37.0

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 (279) hide show
  1. package/README.md +50 -50
  2. package/cjs/components/Action/Action.js +3 -3
  3. package/cjs/components/Alert/Alert.js +5 -5
  4. package/cjs/components/AutoClosable/AutoClosable.js +3 -3
  5. package/cjs/components/AuxiliaryActions/AuxiliaryActions.js +3 -3
  6. package/cjs/components/Badge/Badge.js +3 -3
  7. package/cjs/components/Breadcrumbs/Breadcrumbs.js +4 -4
  8. package/cjs/components/Button/Button.js +4 -4
  9. package/cjs/components/ButtonGroup/ButtonGroup.js +3 -3
  10. package/cjs/components/Card/Card.js +52 -52
  11. package/cjs/components/Card/CardButton.js +2 -2
  12. package/cjs/components/Card/PreviewPanel.js +3 -3
  13. package/cjs/components/Card/images/no-image.svg +6 -6
  14. package/cjs/components/CardList/CardList.js +55 -55
  15. package/cjs/components/Carousel/Carousel.js +186 -81
  16. package/cjs/components/Checkbox/Checkbox.js +3 -3
  17. package/cjs/components/CodeEditor/CodeEditor.js +3 -3
  18. package/cjs/components/Columns/Column.js +3 -3
  19. package/cjs/components/Columns/Columns.js +3 -3
  20. package/cjs/components/ComboBox/ComboBox.js +4 -4
  21. package/cjs/components/ComboBox/ComboBoxOption.js +5 -4
  22. package/cjs/components/ConsoleOutput/ConsoleOutput.js +3 -3
  23. package/cjs/components/ContentLoader/ContentLoader.js +3 -3
  24. package/cjs/components/Cuttable/Cuttable.js +3 -3
  25. package/cjs/components/Dialog/Dialog.js +3 -3
  26. package/cjs/components/Drawer/Drawer.js +4 -4
  27. package/cjs/components/Dropdown/Dropdown.js +5 -5
  28. package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessage.js +4 -4
  29. package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageActions.js +3 -3
  30. package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageDescription.js +3 -3
  31. package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageSeparator.js +3 -3
  32. package/cjs/components/ExtendedStatusMessage/ExtendedStatusMessageTitle.js +3 -3
  33. package/cjs/components/Figure/Figure.js +3 -3
  34. package/cjs/components/Form/Form.js +4 -4
  35. package/cjs/components/Form/utils.js +22 -22
  36. package/cjs/components/FormField/FormField.js +24 -24
  37. package/cjs/components/FormFieldCheckbox/FormFieldCheckbox.js +4 -4
  38. package/cjs/components/FormFieldPassword/FormFieldPassword.js +3 -3
  39. package/cjs/components/FormFieldRadioButtons/FormFieldRadioButtons.js +3 -3
  40. package/cjs/components/FormFieldSelect/FormFieldSelect.js +4 -4
  41. package/cjs/components/FormFieldText/FormFieldText.js +5 -5
  42. package/cjs/components/Grid/Grid.js +3 -3
  43. package/cjs/components/GridCol/GridCol.js +3 -3
  44. package/cjs/components/Heading/Heading.js +3 -3
  45. package/cjs/components/Hint/Hint.js +3 -3
  46. package/cjs/components/Icon/Icon.js +6 -6
  47. package/cjs/components/Icon/images/symbols.svg +1846 -1846
  48. package/cjs/components/InPlaceEdit/InPlaceEdit.js +5 -5
  49. package/cjs/components/Input/Input.js +3 -3
  50. package/cjs/components/InputFile/InputFile.js +3 -3
  51. package/cjs/components/InputNumber/InputNumber.js +3 -3
  52. package/cjs/components/Item/Item.js +4 -4
  53. package/cjs/components/ItemLink/ItemLink.js +4 -4
  54. package/cjs/components/ItemList/ItemList.js +6 -6
  55. package/cjs/components/Label/Label.js +3 -3
  56. package/cjs/components/Layer/Layer.js +2 -2
  57. package/cjs/components/Layout/Layout.js +2 -2
  58. package/cjs/components/Link/Link.js +3 -3
  59. package/cjs/components/List/List.js +4 -7
  60. package/cjs/components/List/ListAction.js +4 -4
  61. package/cjs/components/List/ListActions.js +3 -3
  62. package/cjs/components/List/ListActionsDivider.js +4 -4
  63. package/cjs/components/List/ListEmptyView.js +4 -4
  64. package/cjs/components/List/ListOperation.js +4 -4
  65. package/cjs/components/LocaleProvider/LocaleProvider.js +3 -3
  66. package/cjs/components/Markdown/Markdown.js +3 -3
  67. package/cjs/components/Media/Media.js +5 -5
  68. package/cjs/components/Media/MediaSection.js +3 -3
  69. package/cjs/components/Menu/Menu.js +9 -9
  70. package/cjs/components/Menu/MenuBaseItem.js +3 -3
  71. package/cjs/components/Menu/MenuDivider.js +3 -3
  72. package/cjs/components/Menu/MenuHeader.js +3 -3
  73. package/cjs/components/Menu/MenuItem.js +3 -3
  74. package/cjs/components/Menu/MenuSelectableItem.js +3 -3
  75. package/cjs/components/Overlay/Overlay.js +2 -2
  76. package/cjs/components/PageHeader/PageHeader.js +3 -3
  77. package/cjs/components/Pagination/Pagination.js +3 -3
  78. package/cjs/components/Panel/Panel.js +64 -101
  79. package/cjs/components/Paragraph/Paragraph.js +3 -3
  80. package/cjs/components/Plaintext/Plaintext.js +3 -3
  81. package/cjs/components/Popover/Popover.js +4 -4
  82. package/cjs/components/Popper/Popper.js +2 -2
  83. package/cjs/components/Progress/Progress.js +3 -3
  84. package/cjs/components/ProgressDialog/ProgressDialog.js +3 -3
  85. package/cjs/components/ProgressDialogStep/ProgressDialogStep.js +3 -3
  86. package/cjs/components/ProgressStep/ProgressStep.js +3 -3
  87. package/cjs/components/Radio/Radio.js +3 -3
  88. package/cjs/components/Rating/Rating.js +3 -3
  89. package/cjs/components/Rating/images/rating.svg +6 -6
  90. package/cjs/components/Section/Section.js +4 -4
  91. package/cjs/components/Section/SectionItem.js +3 -3
  92. package/cjs/components/SegmentedControl/SegmentedControl.js +4 -4
  93. package/cjs/components/Select/MultiValue.js +1 -1
  94. package/cjs/components/Select/Select.js +3 -3
  95. package/cjs/components/Select/SelectControl.js +1 -1
  96. package/cjs/components/Select/SelectOption.js +5 -4
  97. package/cjs/components/Select/SelectOptionGroup.js +3 -3
  98. package/cjs/components/Skeleton/Skeleton.js +4 -4
  99. package/cjs/components/Skeleton/SkeletonTabs.js +3 -3
  100. package/cjs/components/Skeleton/SkeletonText.js +3 -3
  101. package/cjs/components/Spinner/Spinner.js +2 -2
  102. package/cjs/components/SplitButton/SplitButton.js +5 -5
  103. package/cjs/components/Spot/Spot.js +3 -3
  104. package/cjs/components/Status/Status.js +3 -3
  105. package/cjs/components/StatusMessage/StatusMessage.js +4 -4
  106. package/cjs/components/Subnav/Subnav.js +5 -5
  107. package/cjs/components/Switch/Switch.js +4 -4
  108. package/cjs/components/SwitchesPanel/SwitchesPanel.js +3 -3
  109. package/cjs/components/SwitchesPanelItem/SwitchesPanelItem.js +4 -4
  110. package/cjs/components/Tabs/SearchBar.js +3 -3
  111. package/cjs/components/Tabs/Tab.js +7 -7
  112. package/cjs/components/Tabs/Tabs.js +6 -6
  113. package/cjs/components/Text/Text.js +3 -3
  114. package/cjs/components/TextArea/TextArea.js +3 -3
  115. package/cjs/components/Toaster/Toaster.js +37 -37
  116. package/cjs/components/Toolbar/Toolbar.js +6 -6
  117. package/cjs/components/Toolbar/ToolbarExpander.js +5 -5
  118. package/cjs/components/Toolbar/ToolbarGroup.js +4 -4
  119. package/cjs/components/Toolbar/ToolbarMenu.js +0 -1
  120. package/cjs/components/Tooltip/Tooltip.js +4 -4
  121. package/cjs/components/Tour/Tour.js +5 -5
  122. package/cjs/components/Translate/Translate.js +3 -3
  123. package/cjs/index.js +1 -1
  124. package/dist/images/no-image.svg +6 -6
  125. package/dist/images/rating.svg +6 -6
  126. package/dist/images/symbols.svg +1846 -1846
  127. package/dist/plesk-ui-library-rtl.css +1 -1
  128. package/dist/plesk-ui-library-rtl.css.map +1 -1
  129. package/dist/plesk-ui-library.css +1 -1
  130. package/dist/plesk-ui-library.css.map +1 -1
  131. package/dist/plesk-ui-library.js +11997 -11914
  132. package/dist/plesk-ui-library.js.map +1 -1
  133. package/dist/plesk-ui-library.min.js +18 -18
  134. package/dist/plesk-ui-library.min.js.map +1 -1
  135. package/esm/components/Action/Action.js +3 -3
  136. package/esm/components/Alert/Alert.js +5 -5
  137. package/esm/components/AutoClosable/AutoClosable.js +3 -3
  138. package/esm/components/AuxiliaryActions/AuxiliaryActions.js +3 -3
  139. package/esm/components/Badge/Badge.js +3 -3
  140. package/esm/components/Breadcrumbs/Breadcrumbs.js +4 -4
  141. package/esm/components/Button/Button.js +4 -4
  142. package/esm/components/ButtonGroup/ButtonGroup.js +3 -3
  143. package/esm/components/Card/Card.js +52 -52
  144. package/esm/components/Card/CardButton.js +2 -2
  145. package/esm/components/Card/PreviewPanel.js +3 -3
  146. package/esm/components/Card/images/no-image.svg +6 -6
  147. package/esm/components/CardList/CardList.js +55 -55
  148. package/esm/components/Carousel/Carousel.js +187 -82
  149. package/esm/components/Checkbox/Checkbox.js +3 -3
  150. package/esm/components/CodeEditor/CodeEditor.js +3 -3
  151. package/esm/components/Columns/Column.js +3 -3
  152. package/esm/components/Columns/Columns.js +3 -3
  153. package/esm/components/ComboBox/ComboBox.js +4 -4
  154. package/esm/components/ComboBox/ComboBoxOption.js +5 -4
  155. package/esm/components/ConsoleOutput/ConsoleOutput.js +3 -3
  156. package/esm/components/ContentLoader/ContentLoader.js +3 -3
  157. package/esm/components/Cuttable/Cuttable.js +3 -3
  158. package/esm/components/Dialog/Dialog.js +3 -3
  159. package/esm/components/Drawer/Drawer.js +4 -4
  160. package/esm/components/Dropdown/Dropdown.js +5 -5
  161. package/esm/components/ExtendedStatusMessage/ExtendedStatusMessage.js +4 -4
  162. package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageActions.js +3 -3
  163. package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageDescription.js +3 -3
  164. package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageSeparator.js +3 -3
  165. package/esm/components/ExtendedStatusMessage/ExtendedStatusMessageTitle.js +3 -3
  166. package/esm/components/Figure/Figure.js +3 -3
  167. package/esm/components/Form/Form.js +4 -4
  168. package/esm/components/Form/utils.js +22 -22
  169. package/esm/components/FormField/FormField.js +24 -24
  170. package/esm/components/FormFieldCheckbox/FormFieldCheckbox.js +4 -4
  171. package/esm/components/FormFieldPassword/FormFieldPassword.js +3 -3
  172. package/esm/components/FormFieldRadioButtons/FormFieldRadioButtons.js +3 -3
  173. package/esm/components/FormFieldSelect/FormFieldSelect.js +4 -4
  174. package/esm/components/FormFieldText/FormFieldText.js +5 -5
  175. package/esm/components/Grid/Grid.js +3 -3
  176. package/esm/components/GridCol/GridCol.js +3 -3
  177. package/esm/components/Heading/Heading.js +3 -3
  178. package/esm/components/Hint/Hint.js +3 -3
  179. package/esm/components/Icon/Icon.js +6 -6
  180. package/esm/components/Icon/images/symbols.svg +1846 -1846
  181. package/esm/components/InPlaceEdit/InPlaceEdit.js +5 -5
  182. package/esm/components/Input/Input.js +3 -3
  183. package/esm/components/InputFile/InputFile.js +3 -3
  184. package/esm/components/InputNumber/InputNumber.js +3 -3
  185. package/esm/components/Item/Item.js +4 -4
  186. package/esm/components/ItemLink/ItemLink.js +4 -4
  187. package/esm/components/ItemList/ItemList.js +6 -6
  188. package/esm/components/Label/Label.js +3 -3
  189. package/esm/components/Layer/Layer.js +2 -2
  190. package/esm/components/Layout/Layout.js +2 -2
  191. package/esm/components/Link/Link.js +3 -3
  192. package/esm/components/List/List.js +4 -7
  193. package/esm/components/List/ListAction.js +4 -4
  194. package/esm/components/List/ListActions.js +3 -3
  195. package/esm/components/List/ListActionsDivider.js +4 -4
  196. package/esm/components/List/ListEmptyView.js +4 -4
  197. package/esm/components/List/ListOperation.js +4 -4
  198. package/esm/components/LocaleProvider/LocaleProvider.js +3 -3
  199. package/esm/components/Markdown/Markdown.js +3 -3
  200. package/esm/components/Media/Media.js +5 -5
  201. package/esm/components/Media/MediaSection.js +3 -3
  202. package/esm/components/Menu/Menu.js +9 -9
  203. package/esm/components/Menu/MenuBaseItem.js +3 -3
  204. package/esm/components/Menu/MenuDivider.js +3 -3
  205. package/esm/components/Menu/MenuHeader.js +3 -3
  206. package/esm/components/Menu/MenuItem.js +3 -3
  207. package/esm/components/Menu/MenuSelectableItem.js +3 -3
  208. package/esm/components/Overlay/Overlay.js +2 -2
  209. package/esm/components/PageHeader/PageHeader.js +3 -3
  210. package/esm/components/Pagination/Pagination.js +3 -3
  211. package/esm/components/Panel/Panel.js +65 -102
  212. package/esm/components/Paragraph/Paragraph.js +3 -3
  213. package/esm/components/Plaintext/Plaintext.js +3 -3
  214. package/esm/components/Popover/Popover.js +4 -4
  215. package/esm/components/Popper/Popper.js +2 -2
  216. package/esm/components/Progress/Progress.js +3 -3
  217. package/esm/components/ProgressDialog/ProgressDialog.js +3 -3
  218. package/esm/components/ProgressDialogStep/ProgressDialogStep.js +3 -3
  219. package/esm/components/ProgressStep/ProgressStep.js +3 -3
  220. package/esm/components/Radio/Radio.js +3 -3
  221. package/esm/components/Rating/Rating.js +3 -3
  222. package/esm/components/Rating/images/rating.svg +6 -6
  223. package/esm/components/Section/Section.js +4 -4
  224. package/esm/components/Section/SectionItem.js +3 -3
  225. package/esm/components/SegmentedControl/SegmentedControl.js +4 -4
  226. package/esm/components/Select/MultiValue.js +1 -1
  227. package/esm/components/Select/Select.js +3 -3
  228. package/esm/components/Select/SelectControl.js +1 -1
  229. package/esm/components/Select/SelectOption.js +5 -4
  230. package/esm/components/Select/SelectOptionGroup.js +3 -3
  231. package/esm/components/Skeleton/Skeleton.js +4 -4
  232. package/esm/components/Skeleton/SkeletonTabs.js +3 -3
  233. package/esm/components/Skeleton/SkeletonText.js +3 -3
  234. package/esm/components/Spinner/Spinner.js +2 -2
  235. package/esm/components/SplitButton/SplitButton.js +5 -5
  236. package/esm/components/Spot/Spot.js +3 -3
  237. package/esm/components/Status/Status.js +3 -3
  238. package/esm/components/StatusMessage/StatusMessage.js +4 -4
  239. package/esm/components/Subnav/Subnav.js +5 -5
  240. package/esm/components/Switch/Switch.js +4 -4
  241. package/esm/components/SwitchesPanel/SwitchesPanel.js +3 -3
  242. package/esm/components/SwitchesPanelItem/SwitchesPanelItem.js +4 -4
  243. package/esm/components/Tabs/SearchBar.js +3 -3
  244. package/esm/components/Tabs/Tab.js +7 -7
  245. package/esm/components/Tabs/Tabs.js +6 -6
  246. package/esm/components/Text/Text.js +3 -3
  247. package/esm/components/TextArea/TextArea.js +3 -3
  248. package/esm/components/Toaster/Toaster.js +37 -37
  249. package/esm/components/Toolbar/Toolbar.js +6 -6
  250. package/esm/components/Toolbar/ToolbarExpander.js +5 -5
  251. package/esm/components/Toolbar/ToolbarGroup.js +4 -4
  252. package/esm/components/Toolbar/ToolbarMenu.js +0 -1
  253. package/esm/components/Tooltip/Tooltip.js +4 -4
  254. package/esm/components/Tour/Tour.js +5 -5
  255. package/esm/components/Translate/Translate.js +3 -3
  256. package/esm/index.js +1 -1
  257. package/index.js +5 -5
  258. package/package.json +150 -150
  259. package/scripts/postinstall.js +9 -9
  260. package/styleguide/browserconfig.xml +9 -9
  261. package/styleguide/build/bundle.c3d05006.js +2 -0
  262. package/styleguide/images/no-image.svg +6 -6
  263. package/styleguide/images/rating.svg +6 -6
  264. package/styleguide/images/symbols.svg +1846 -1846
  265. package/styleguide/index.html +2 -2
  266. package/styleguide/placeholders/placeholder_400x200.svg +5 -5
  267. package/styleguide/placeholders/placeholder_400x400.svg +5 -5
  268. package/styleguide/placeholders/placeholder_600x400.svg +5 -5
  269. package/styleguide/safari-pinned-tab.svg +28 -28
  270. package/styleguide/site.webmanifest +19 -19
  271. package/types/src/components/Carousel/Carousel.d.ts +43 -8
  272. package/types/src/components/List/List.d.ts +0 -1
  273. package/types/src/components/Panel/Panel.d.ts +4 -21
  274. package/types/src/components/Panel/index.d.ts +1 -0
  275. package/types/src/components/Radio/Radio.d.ts +4 -6
  276. package/types/src/components/Section/Section.d.ts +1 -1
  277. package/types/src/components/index.d.ts +1 -0
  278. package/styleguide/build/bundle.ed34a3c0.js +0 -2
  279. /package/styleguide/build/{bundle.ed34a3c0.js.LICENSE.txt → bundle.c3d05006.js.LICENSE.txt} +0 -0
@@ -23,14 +23,14 @@ const calcWidths = node => {
23
23
  totalWidth
24
24
  };
25
25
  };
26
- /**
27
- * Carousel component is used for optimizing page space by displaying only some parts
28
- * of entire content in a cyclic view.
29
- * @since 0.0.42
26
+ /**
27
+ * Carousel component is used for optimizing page space by displaying only some parts
28
+ * of entire content in a cyclic view.
29
+ * @since 0.0.42
30
30
  */
31
31
  class Carousel extends _react.Component {
32
- constructor(props) {
33
- super(props);
32
+ constructor() {
33
+ super(...arguments);
34
34
  (0, _defineProperty2.default)(this, "state", {
35
35
  showControls: false,
36
36
  current: 0,
@@ -40,21 +40,145 @@ class Carousel extends _react.Component {
40
40
  totalWidth: 0
41
41
  });
42
42
  (0, _defineProperty2.default)(this, "speed", 500);
43
- (0, _defineProperty2.default)(this, "playSpeed", 5000);
44
43
  (0, _defineProperty2.default)(this, "isRtl", void 0);
45
44
  (0, _defineProperty2.default)(this, "playTimer", null);
46
45
  (0, _defineProperty2.default)(this, "movingCallback", null);
47
46
  (0, _defineProperty2.default)(this, "rootRef", /*#__PURE__*/(0, _react.createRef)());
48
47
  (0, _defineProperty2.default)(this, "genuineRef", /*#__PURE__*/(0, _react.createRef)());
49
- this.handlePrevClick = this.handlePrevClick.bind(this);
50
- this.handleNextClick = this.handleNextClick.bind(this);
51
- this.stop = this.stop.bind(this);
52
- this.play = this.play.bind(this);
53
- this.handleResize = this.handleResize.bind(this);
48
+ (0, _defineProperty2.default)(this, "handlePrevClick", () => {
49
+ this.stop();
50
+ this.setCurrentSlide(this.state.current - 1);
51
+ });
52
+ (0, _defineProperty2.default)(this, "handleNextClick", () => {
53
+ this.stop();
54
+ this.setCurrentSlide(this.state.current + 1);
55
+ });
56
+ (0, _defineProperty2.default)(this, "play", () => {
57
+ this.playTimer = setTimeout(() => {
58
+ this.setCurrentSlide(this.state.current + 1);
59
+ this.play();
60
+ }, this.props.autoplayInterval);
61
+ });
62
+ (0, _defineProperty2.default)(this, "stop", () => {
63
+ if (this.playTimer) {
64
+ clearTimeout(this.playTimer);
65
+ this.playTimer = null;
66
+ }
67
+ });
68
+ (0, _defineProperty2.default)(this, "handleResize", _ref => {
69
+ let {
70
+ bounds
71
+ } = _ref;
72
+ const node = this.genuineRef.current;
73
+ if (!node) {
74
+ return;
75
+ }
76
+ const {
77
+ slideWidths,
78
+ totalWidth
79
+ } = calcWidths(node);
80
+ this.setState({
81
+ slideWidths,
82
+ totalWidth,
83
+ showControls: (bounds?.width || 0) < totalWidth
84
+ });
85
+ });
86
+ (0, _defineProperty2.default)(this, "renderNavigationDots", () => {
87
+ const {
88
+ children,
89
+ baseClassName,
90
+ dots,
91
+ items
92
+ } = this.props;
93
+ if (!dots || !items) {
94
+ return null;
95
+ }
96
+ const {
97
+ current
98
+ } = this.state;
99
+ const childrenCount = children?.length ?? 1;
100
+ const pages = Math.ceil(childrenCount / items);
101
+ if (pages <= 1) {
102
+ return null;
103
+ }
104
+ return /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
105
+ className: `${baseClassName}__dots`,
106
+ children: Array.from({
107
+ length: pages
108
+ }).map((_, idx) => /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
109
+ role: "button",
110
+ className: (0, _classnames.default)(`${baseClassName}__dots--dot`, current === idx ? `${baseClassName}__dots--dot-current` : null),
111
+ "aria-current": current === idx,
112
+ onClick: () => this.setCurrentSlide(idx)
113
+ // eslint-disable-next-line react/no-array-index-key
114
+ ,
115
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
116
+ name: "dot-big"
117
+ })
118
+ }, idx))
119
+ });
120
+ });
121
+ (0, _defineProperty2.default)(this, "renderNavigationArrows", () => {
122
+ const {
123
+ baseClassName,
124
+ arrows
125
+ } = this.props;
126
+ const {
127
+ showControls
128
+ } = this.state;
129
+ if (!arrows || !showControls) {
130
+ return null;
131
+ }
132
+ return /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
133
+ className: `${baseClassName}__controls`,
134
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
135
+ type: "button",
136
+ "aria-label": "previous slide",
137
+ className: (0, _classnames.default)(`${baseClassName}__control`, `${baseClassName}__control--previous`),
138
+ onClick: this.handlePrevClick,
139
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
140
+ name: "chevron-left",
141
+ flipHorizontal: this.isRtl,
142
+ className: `${baseClassName}__control-icon`
143
+ })
144
+ }), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
145
+ type: "button",
146
+ "aria-label": "next slide",
147
+ className: (0, _classnames.default)(`${baseClassName}__control`, `${baseClassName}__control--next`),
148
+ onClick: this.handleNextClick,
149
+ children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
150
+ name: "chevron-right",
151
+ flipHorizontal: this.isRtl,
152
+ className: `${baseClassName}__control-icon`
153
+ })
154
+ })]
155
+ });
156
+ });
157
+ (0, _defineProperty2.default)(this, "renderSliderItems", () => {
158
+ const {
159
+ children,
160
+ baseClassName,
161
+ items
162
+ } = this.props;
163
+ const childrenCount = children?.length ?? 1;
164
+ let width = '';
165
+ if (items) {
166
+ width = `calc(100% / ${Math.min(childrenCount, items)})`;
167
+ }
168
+ return _react.Children.map(children, item => item && /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
169
+ className: `${baseClassName}__item`,
170
+ style: {
171
+ width
172
+ },
173
+ children: item
174
+ }));
175
+ });
54
176
  }
55
177
  componentDidMount() {
56
178
  this.isRtl = (0, _utils.isRtl)();
57
- this.play();
179
+ if (this.props.autoplay) {
180
+ this.play();
181
+ }
58
182
  }
59
183
  componentDidUpdate() {
60
184
  if (!this.rootRef.current || !this.genuineRef.current) {
@@ -63,6 +187,23 @@ class Carousel extends _react.Component {
63
187
  const {
64
188
  width
65
189
  } = this.rootRef.current.getBoundingClientRect();
190
+ const {
191
+ items,
192
+ children
193
+ } = this.props;
194
+ if (items) {
195
+ const slideItems = items;
196
+ const childrenCount = children?.length ?? 1;
197
+ const totalWidth = childrenCount * (width / slideItems);
198
+ if (this.state.totalWidth !== totalWidth) {
199
+ this.setState({
200
+ slideWidths: new Array(childrenCount).fill(width),
201
+ totalWidth,
202
+ showControls: childrenCount > slideItems
203
+ });
204
+ }
205
+ return;
206
+ }
66
207
  const {
67
208
  slideWidths,
68
209
  totalWidth
@@ -81,26 +222,6 @@ class Carousel extends _react.Component {
81
222
  clearTimeout(this.movingCallback);
82
223
  }
83
224
  }
84
- handlePrevClick() {
85
- this.stop();
86
- this.setCurrentSlide(this.state.current - 1);
87
- }
88
- handleNextClick() {
89
- this.stop();
90
- this.setCurrentSlide(this.state.current + 1);
91
- }
92
- play() {
93
- this.playTimer = setTimeout(() => {
94
- this.setCurrentSlide(this.state.current + 1);
95
- this.play();
96
- }, this.playSpeed);
97
- }
98
- stop() {
99
- if (this.playTimer) {
100
- clearTimeout(this.playTimer);
101
- this.playTimer = null;
102
- }
103
- }
104
225
  setCurrentSlide(next) {
105
226
  const {
106
227
  slideWidths,
@@ -116,6 +237,7 @@ class Carousel extends _react.Component {
116
237
  if (current >= slideWidths.length) {
117
238
  current = 0;
118
239
  }
240
+ this.props.onSlide?.(next);
119
241
  this.setState({
120
242
  current,
121
243
  next,
@@ -128,25 +250,10 @@ class Carousel extends _react.Component {
128
250
  });
129
251
  }, this.speed);
130
252
  }
131
- handleResize(_ref) {
132
- let {
133
- bounds
134
- } = _ref;
135
- const node = this.genuineRef.current;
136
- if (!node) {
137
- return;
138
- }
139
- const {
140
- slideWidths,
141
- totalWidth
142
- } = calcWidths(node);
143
- this.setState({
144
- slideWidths,
145
- totalWidth,
146
- showControls: (bounds?.width || 0) < totalWidth
147
- });
148
- }
149
253
  listStyle() {
254
+ const {
255
+ arrows
256
+ } = this.props;
150
257
  const {
151
258
  current,
152
259
  next,
@@ -155,7 +262,12 @@ class Carousel extends _react.Component {
155
262
  totalWidth
156
263
  } = this.state;
157
264
  const moveTo = moving ? next : current;
158
- let x = -totalWidth + 26;
265
+ let x = -totalWidth;
266
+
267
+ // navigation arrows width
268
+ if (arrows) {
269
+ x += 26;
270
+ }
159
271
  if (moveTo < 0) {
160
272
  for (let i = moveTo; i < 0; i++) {
161
273
  x += slideWidths[i + slideWidths.length];
@@ -183,6 +295,12 @@ class Carousel extends _react.Component {
183
295
  baseClassName,
184
296
  className,
185
297
  children,
298
+ autoplay,
299
+ autoplayInterval,
300
+ items,
301
+ onSlide,
302
+ dots,
303
+ arrows,
186
304
  ...props
187
305
  } = this.props;
188
306
  return /*#__PURE__*/(0, _jsxRuntime.jsx)(_reactMeasure.default, {
@@ -198,35 +316,17 @@ class Carousel extends _react.Component {
198
316
  className: (0, _classnames.default)(baseClassName, className),
199
317
  ...props,
200
318
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
201
- className: `${baseClassName}__slides`,
202
- style: showControls ? this.listStyle() : undefined,
203
- children: [showControls && children, /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
204
- className: `${baseClassName}__genuine-slides`,
205
- ref: this.genuineRef,
206
- children: children
207
- }), showControls && children]
208
- }), showControls && /*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
209
- className: `${baseClassName}__controls`,
210
- children: [/*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
211
- type: "button",
212
- className: (0, _classnames.default)(`${baseClassName}__control`, `${baseClassName}__control--previous`),
213
- onClick: this.handlePrevClick,
214
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
215
- name: "chevron-left",
216
- flipHorizontal: this.isRtl,
217
- className: `${baseClassName}__control-icon`
218
- })
219
- }), /*#__PURE__*/(0, _jsxRuntime.jsx)("button", {
220
- type: "button",
221
- className: (0, _classnames.default)(`${baseClassName}__control`, `${baseClassName}__control--next`),
222
- onClick: this.handleNextClick,
223
- children: /*#__PURE__*/(0, _jsxRuntime.jsx)(_Icon.default, {
224
- name: "chevron-right",
225
- flipHorizontal: this.isRtl,
226
- className: `${baseClassName}__control-icon`
227
- })
228
- })]
229
- })]
319
+ className: `${baseClassName}__wrap`,
320
+ children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)("div", {
321
+ className: `${baseClassName}__slides`,
322
+ style: showControls ? this.listStyle() : undefined,
323
+ children: [showControls && this.renderSliderItems(), /*#__PURE__*/(0, _jsxRuntime.jsx)("div", {
324
+ className: `${baseClassName}__genuine-slides`,
325
+ ref: this.genuineRef,
326
+ children: this.renderSliderItems()
327
+ }), showControls && this.renderSliderItems()]
328
+ }), this.renderNavigationArrows()]
329
+ }), this.renderNavigationDots()]
230
330
  });
231
331
  }
232
332
  });
@@ -234,6 +334,11 @@ class Carousel extends _react.Component {
234
334
  }
235
335
  (0, _defineProperty2.default)(Carousel, "defaultProps", {
236
336
  children: null,
337
+ arrows: true,
338
+ dots: false,
339
+ autoplay: true,
340
+ autoplayInterval: 5000,
341
+ onSlide: null,
237
342
  className: null,
238
343
  baseClassName: `${_constants.CLS_PREFIX}carousel`
239
344
  });
@@ -11,9 +11,9 @@ var _Tooltip = _interopRequireDefault(require("../Tooltip"));
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
13
13
 
14
- /**
15
- * `Checkbox` component is used for turning an option on or off and selecting or deselecting an item.
16
- * @since 0.0.55
14
+ /**
15
+ * `Checkbox` component is used for turning an option on or off and selecting or deselecting an item.
16
+ * @since 0.0.55
17
17
  */
18
18
  const Checkbox = _ref => {
19
19
  let {
@@ -14,9 +14,9 @@ var _constants = require("../../constants");
14
14
  var _jsxRuntime = require("react/jsx-runtime");
15
15
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
16
16
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; } // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
17
- /**
18
- * `CodeEditor` component is used for editing text as code with proper color highlighting according to selected programming language.
19
- * @since 0.0.61
17
+ /**
18
+ * `CodeEditor` component is used for editing text as code with proper color highlighting according to selected programming language.
19
+ * @since 0.0.61
20
20
  */
21
21
  class CodeEditor extends _react.Component {
22
22
  constructor() {
@@ -14,9 +14,9 @@ var _jsxRuntime = require("react/jsx-runtime");
14
14
 
15
15
  const normalize = value => String(Number(value)) === String(value) ? `${value}px` : value;
16
16
 
17
- /**
18
- * `Column` component is a part of [Columns](#!/Columns).
19
- * @since 2.6.0
17
+ /**
18
+ * `Column` component is a part of [Columns](#!/Columns).
19
+ * @since 2.6.0
20
20
  */
21
21
  const Column = _ref => {
22
22
  let {
@@ -15,9 +15,9 @@ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return
15
15
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && Object.prototype.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
16
16
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
17
17
 
18
- /**
19
- * `Columns` component is used for creating of multi-column layouts.
20
- * @since 2.6.0
18
+ /**
19
+ * `Columns` component is used for creating of multi-column layouts.
20
+ * @since 2.6.0
21
21
  */
22
22
  const Columns = _ref => {
23
23
  let {
@@ -45,10 +45,10 @@ const collect = function (children) {
45
45
  options
46
46
  };
47
47
  };
48
- /**
49
- * `ComboBox` component is a combination of [Select](#!/Select) and [Input](#!/Input)
50
- * which allows to either enter a value directly into the field or choose from a list of existing options.
51
- * @since 2.6.0
48
+ /**
49
+ * `ComboBox` component is a combination of [Select](#!/Select) and [Input](#!/Input)
50
+ * which allows to either enter a value directly into the field or choose from a list of existing options.
51
+ * @since 2.6.0
52
52
  */
53
53
  const ComboBox = _ref => {
54
54
  let {
@@ -7,10 +7,11 @@ exports.default = void 0;
7
7
  var _jsxRuntime = require("react/jsx-runtime");
8
8
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
9
9
 
10
- /**
11
- * `ComboBoxOption` is a part of [ComboBox](#!/ComboBox) component.
12
- * @since 2.6.0
13
- */ // eslint-disable-next-line @typescript-eslint/no-unused-vars
10
+ /**
11
+ * `ComboBoxOption` is a part of [ComboBox](#!/ComboBox) component.
12
+ * @since 2.6.0
13
+ */
14
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
14
15
  const ComboBoxOption = _props => {
15
16
  // styleguidist doesn't show Props & Methods if component renders nothing
16
17
  // eslint-disable-next-line no-constant-condition
@@ -15,9 +15,9 @@ var _jsxRuntime = require("react/jsx-runtime");
15
15
  const scrollToBottom = el => {
16
16
  el.scrollTop = el.scrollHeight;
17
17
  };
18
- /**
19
- * `ConsoleOutput` component is used for showing dynamically updating data from console output.
20
- * @since 0.0.35
18
+ /**
19
+ * `ConsoleOutput` component is used for showing dynamically updating data from console output.
20
+ * @since 0.0.35
21
21
  */
22
22
  class ConsoleOutput extends _react.PureComponent {
23
23
  constructor() {
@@ -31,9 +31,9 @@ const getLoader = loader => {
31
31
  };
32
32
  };
33
33
 
34
- /**
35
- * `ContentLoader` component is used as placeholder which indicates that the system is loading requested content.
36
- * @since 1.1.0
34
+ /**
35
+ * `ContentLoader` component is used as placeholder which indicates that the system is loading requested content.
36
+ * @since 1.1.0
37
37
  */
38
38
  const ContentLoader = _ref => {
39
39
  let {
@@ -15,9 +15,9 @@ var _Link = _interopRequireDefault(require("../Link"));
15
15
  var _jsxRuntime = require("react/jsx-runtime");
16
16
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
17
17
 
18
- /**
19
- * `Cuttable` component is used for showing and hiding part of content.
20
- * @since 0.0.42
18
+ /**
19
+ * `Cuttable` component is used for showing and hiding part of content.
20
+ * @since 0.0.42
21
21
  */
22
22
  class Cuttable extends _react.Component {
23
23
  constructor() {
@@ -23,9 +23,9 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
23
23
 
24
24
  const isProps = value => value && typeof value === 'object' && ! /*#__PURE__*/(0, _react.isValidElement)(value);
25
25
 
26
- /**
27
- * `Dialog` is a modal window that asks users to make a decision or enter additional information.
28
- * @since 0.0.68
26
+ /**
27
+ * `Dialog` is a modal window that asks users to make a decision or enter additional information.
28
+ * @since 0.0.68
29
29
  */
30
30
  const Dialog = _ref => {
31
31
  let {
@@ -37,10 +37,10 @@ const defaultProps = {
37
37
  className: undefined,
38
38
  baseClassName: `${_constants.CLS_PREFIX}drawer`
39
39
  };
40
- /**
41
- * `Drawer` component is used for working with properties of an object (or system) without leaving the context of the object.
42
- * [Read more when to use Drawer](#!/Drawers%2C%20pages%2C%20popovers).
43
- * @since 0.0.65
40
+ /**
41
+ * `Drawer` component is used for working with properties of an object (or system) without leaving the context of the object.
42
+ * [Read more when to use Drawer](#!/Drawers%2C%20pages%2C%20popovers).
43
+ * @since 0.0.65
44
44
  */
45
45
  const Drawer = _ref => {
46
46
  let {
@@ -124,11 +124,11 @@ const useEnhancedMenu = (menu, _ref2) => {
124
124
  };
125
125
  };
126
126
 
127
- /**
128
- * `Dropdown` component is a [Button](#!/Button) that opens a drop-down (nested) [Menu](#!/Menu).
129
- * Use dropdown for grouping actions that are not used often or are less important than others -- in other words,
130
- * for stuff that you don't want to show users all the time, especially if you have limited screen space.
131
- * @since 0.0.57
127
+ /**
128
+ * `Dropdown` component is a [Button](#!/Button) that opens a drop-down (nested) [Menu](#!/Menu).
129
+ * Use dropdown for grouping actions that are not used often or are less important than others -- in other words,
130
+ * for stuff that you don't want to show users all the time, especially if you have limited screen space.
131
+ * @since 0.0.57
132
132
  */
133
133
  const Dropdown = _ref3 => {
134
134
  let {
@@ -11,10 +11,10 @@ var _constants = require("../../constants");
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
13
13
 
14
- /**
15
- * `ExtendedStatusMessage` component is similar to regular [StatusMessage](#!/StatusMessage)
16
- * but it is used when the message itself is the primary content on the page.
17
- * @since 0.0.35
14
+ /**
15
+ * `ExtendedStatusMessage` component is similar to regular [StatusMessage](#!/StatusMessage)
16
+ * but it is used when the message itself is the primary content on the page.
17
+ * @since 0.0.35
18
18
  */
19
19
  const ExtendedStatusMessage = _ref => {
20
20
  let {
@@ -10,9 +10,9 @@ var _constants = require("../../constants");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
12
12
 
13
- /**
14
- * `ExtendedStatusMessageActions` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
15
- * @since 0.0.35
13
+ /**
14
+ * `ExtendedStatusMessageActions` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
15
+ * @since 0.0.35
16
16
  */
17
17
 
18
18
  const ExtendedStatusMessageActions = _ref => {
@@ -10,9 +10,9 @@ var _constants = require("../../constants");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
12
12
 
13
- /**
14
- * `ExtendedStatusMessageDescription` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
15
- * @since 0.0.35
13
+ /**
14
+ * `ExtendedStatusMessageDescription` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
15
+ * @since 0.0.35
16
16
  */
17
17
 
18
18
  const ExtendedStatusMessageDescription = _ref => {
@@ -9,9 +9,9 @@ var _classnames = _interopRequireDefault(require("classnames"));
9
9
  var _jsxRuntime = require("react/jsx-runtime");
10
10
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
11
11
 
12
- /**
13
- * `ExtendedStatusMessageSeparator` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
14
- * @since 0.0.35
12
+ /**
13
+ * `ExtendedStatusMessageSeparator` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
14
+ * @since 0.0.35
15
15
  */
16
16
 
17
17
  const ExtendedStatusMessageSeparator = _ref => {
@@ -11,9 +11,9 @@ var _Heading = _interopRequireDefault(require("../Heading"));
11
11
  var _jsxRuntime = require("react/jsx-runtime");
12
12
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
13
13
 
14
- /**
15
- * `ExtendedStatusMessageTitle` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
16
- * @since 0.0.35
14
+ /**
15
+ * `ExtendedStatusMessageTitle` is a part of [ExtendedStatusMessage](#!/ExtendedStatusMessage) component.
16
+ * @since 0.0.35
17
17
  */
18
18
 
19
19
  const ExtendedStatusMessageTitle = _ref => {
@@ -10,9 +10,9 @@ var _constants = require("../../constants");
10
10
  var _jsxRuntime = require("react/jsx-runtime");
11
11
  // Copyright 1999-2023. Plesk International GmbH. All rights reserved.
12
12
 
13
- /**
14
- * Figure component.
15
- * @since 0.0.42
13
+ /**
14
+ * Figure component.
15
+ * @since 0.0.42
16
16
  */
17
17
  const Figure = _ref => {
18
18
  let {
@@ -413,9 +413,9 @@ const RefForwardingForm = /*#__PURE__*/(0, _react.forwardRef)((props, ref) => {
413
413
  });
414
414
  });
415
415
  RefForwardingForm.displayName = 'Form';
416
- /**
417
- * `Form` component is used for entering and submitting of user data.
418
- * [More details about designing of forms.](#!/Good%20Forms)
419
- * @since 0.0.54
416
+ /**
417
+ * `Form` component is used for entering and submitting of user data.
418
+ * [More details about designing of forms.](#!/Good%20Forms)
419
+ * @since 0.0.54
420
420
  */
421
421
  var _default = exports.default = RefForwardingForm;