linear-react-components-ui 0.4.77-beta.27 → 0.4.77-beta.28

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 (246) hide show
  1. package/.eslintrc.json +3 -76
  2. package/.husky/pre-commit +4 -0
  3. package/.vscode/settings.json +2 -2
  4. package/jest.config.js +3 -3
  5. package/lib/alerts/AlertContainer.js +19 -14
  6. package/lib/alerts/AlertProvider.js +9 -4
  7. package/lib/alerts/BaseAlert.js +8 -5
  8. package/lib/alerts/Message.js +40 -31
  9. package/lib/alerts/alert.spec.js +133 -0
  10. package/lib/alerts/helpers.js +5 -2
  11. package/lib/alerts/withAlert.js +2 -2
  12. package/lib/assets/styles/commons.scss +10 -0
  13. package/lib/assets/styles/dropdown.scss +36 -2
  14. package/lib/assets/styles/effects.scss +11 -0
  15. package/lib/assets/styles/list.scss +8 -0
  16. package/lib/assets/styles/table.scss +2 -7
  17. package/lib/avatar/avatar.spec.js +190 -0
  18. package/lib/avatar/index.js +58 -13
  19. package/lib/badge/badge.spec.js +127 -0
  20. package/lib/badge/index.js +22 -6
  21. package/lib/buttons/ActivateButton.js +3 -3
  22. package/lib/buttons/AddButton.js +1 -1
  23. package/lib/buttons/Button.js +11 -19
  24. package/lib/buttons/ButtonGroups.js +5 -0
  25. package/lib/buttons/CancelButton.js +3 -16
  26. package/lib/buttons/DangerButton.js +19 -14
  27. package/lib/buttons/DefaultButton.js +127 -65
  28. package/lib/buttons/DestroyButton.js +3 -12
  29. package/lib/buttons/EditButton.js +3 -3
  30. package/lib/buttons/InactivateButton.js +3 -3
  31. package/lib/buttons/InfoButton.js +19 -14
  32. package/lib/buttons/PrimaryButton.js +19 -14
  33. package/lib/buttons/RestoreButton.js +3 -3
  34. package/lib/buttons/SaveButton.js +2 -15
  35. package/lib/buttons/SpinnerLoading.js +230 -0
  36. package/lib/buttons/SuccessButton.js +18 -13
  37. package/lib/buttons/WarningButton.js +18 -13
  38. package/lib/buttons/button_container/index.js +18 -5
  39. package/lib/buttons/buttons.spec.js +504 -0
  40. package/lib/buttons/index.js +28 -28
  41. package/lib/buttons/split_button/index.js +30 -13
  42. package/lib/calendar/DangerCalendar.js +2 -11
  43. package/lib/calendar/InfoCalendar.js +2 -11
  44. package/lib/calendar/PrimaryCalendar.js +2 -11
  45. package/lib/calendar/SuccessCalendar.js +2 -11
  46. package/lib/calendar/WarningCalendar.js +2 -11
  47. package/lib/calendar/base/Day.js +8 -2
  48. package/lib/calendar/base/Month.js +5 -0
  49. package/lib/calendar/base/Week.js +6 -0
  50. package/lib/calendar/base/helpers.js +9 -9
  51. package/lib/calendar/base/index.js +36 -33
  52. package/lib/calendar/calendar.spec.js +171 -0
  53. package/lib/calendar/index.js +10 -10
  54. package/lib/checkbox/Label.js +12 -2
  55. package/lib/checkbox/checkbox.spec.js +215 -0
  56. package/lib/checkbox/index.js +79 -42
  57. package/lib/dialog/Alert.js +8 -3
  58. package/lib/dialog/Custom.js +25 -17
  59. package/lib/dialog/Error.js +6 -1
  60. package/lib/dialog/Information.js +6 -1
  61. package/lib/dialog/Question.js +17 -6
  62. package/lib/dialog/Warning.js +6 -1
  63. package/lib/dialog/base/Content.js +9 -0
  64. package/lib/dialog/base/Footer.js +8 -2
  65. package/lib/dialog/base/Header.js +22 -8
  66. package/lib/dialog/base/index.js +28 -6
  67. package/lib/dialog/dialog.spec.js +488 -0
  68. package/lib/dialog/form/index.js +32 -22
  69. package/lib/dialog/index.js +6 -6
  70. package/lib/drawer/Content.js +10 -1
  71. package/lib/drawer/Drawer.js +50 -29
  72. package/lib/drawer/Drawer.spec.js +258 -0
  73. package/lib/drawer/Header.js +31 -12
  74. package/lib/drawer/helpers.js +1 -1
  75. package/lib/drawer/index.js +4 -4
  76. package/lib/dropdown/Popup.js +16 -32
  77. package/lib/dropdown/dropdown.spec.js +169 -0
  78. package/lib/dropdown/helper.js +2 -2
  79. package/lib/dropdown/withDropdown.js +43 -18
  80. package/lib/fieldset/fieldset.spec.js +329 -0
  81. package/lib/fieldset/index.js +43 -12
  82. package/lib/form/Field.js +41 -14
  83. package/lib/form/FieldArray.js +50 -20
  84. package/lib/form/FieldNumber.js +44 -12
  85. package/lib/form/FieldPeriod.js +41 -19
  86. package/lib/form/form.spec.js +293 -0
  87. package/lib/form/helpers.js +16 -10
  88. package/lib/form/index.js +92 -57
  89. package/lib/form/withFieldHOC.js +120 -40
  90. package/lib/form/withFormSecurity.js +38 -17
  91. package/lib/gridlayout/GridCol.js +18 -3
  92. package/lib/gridlayout/GridRow.js +24 -4
  93. package/lib/gridlayout/gridLayout.spec.js +169 -0
  94. package/lib/icons/helper.js +571 -560
  95. package/lib/icons/icons.spec.js +86 -0
  96. package/lib/icons/index.js +40 -23
  97. package/lib/index.js +12 -12
  98. package/lib/inputs/base/InputTextBase.js +149 -40
  99. package/lib/inputs/base/base.spec.js +690 -0
  100. package/lib/inputs/base/helpers.js +4 -4
  101. package/lib/inputs/base/index.js +1 -0
  102. package/lib/inputs/color/color_input.spec.js +174 -0
  103. package/lib/inputs/color/index.js +29 -31
  104. package/lib/inputs/date/Dialog.js +8 -1
  105. package/lib/inputs/date/Dropdown.js +70 -18
  106. package/lib/inputs/date/date.spec.js +354 -0
  107. package/lib/inputs/date/helpers.js +1 -1
  108. package/lib/inputs/date/index.js +411 -255
  109. package/lib/inputs/inputHOC.js +96 -44
  110. package/lib/inputs/mask/BaseMask.js +45 -16
  111. package/lib/inputs/mask/Cnpj.js +19 -12
  112. package/lib/inputs/mask/Cpf.js +22 -14
  113. package/lib/inputs/mask/Phone.js +9 -1
  114. package/lib/inputs/mask/ZipCode.js +1 -1
  115. package/lib/inputs/mask/helpers.js +36 -21
  116. package/lib/inputs/mask/imaskHOC.js +255 -186
  117. package/lib/inputs/mask/index.js +4 -4
  118. package/lib/inputs/mask/input_mask.spec.js +607 -0
  119. package/lib/inputs/multiSelect/ActionButtons.js +14 -2
  120. package/lib/inputs/multiSelect/Dropdown.js +70 -43
  121. package/lib/inputs/multiSelect/index.js +80 -60
  122. package/lib/inputs/number/BaseNumber.js +62 -27
  123. package/lib/inputs/number/Currency.js +14 -4
  124. package/lib/inputs/number/format_number.js +1 -1
  125. package/lib/inputs/number/index.js +15 -9
  126. package/lib/inputs/number/numberfield.spec.js +215 -0
  127. package/lib/inputs/period/Dialog.js +8 -1
  128. package/lib/inputs/period/Dropdown.js +70 -16
  129. package/lib/inputs/period/PeriodList.js +19 -6
  130. package/lib/inputs/period/helper.js +71 -30
  131. package/lib/inputs/period/index.js +160 -112
  132. package/lib/inputs/search/index.js +261 -129
  133. package/lib/inputs/search/search_input.spec.js +209 -0
  134. package/lib/inputs/select/ActionButtons.js +20 -14
  135. package/lib/inputs/select/Dropdown.js +63 -30
  136. package/lib/inputs/select/helper.js +16 -18
  137. package/lib/inputs/select/index.js +13 -14
  138. package/lib/inputs/select/multiple/Selecteds.js +13 -5
  139. package/lib/inputs/select/multiple/index.js +414 -289
  140. package/lib/inputs/select/select.spec.js +395 -0
  141. package/lib/inputs/select/simple/index.js +461 -322
  142. package/lib/inputs/text/index.js +0 -1
  143. package/lib/inputs/text/textfield.spec.js +215 -0
  144. package/lib/inputs/textarea/index.js +15 -5
  145. package/lib/inputs/textarea/textarea.spec.js +59 -0
  146. package/lib/internals/constants.js +1 -1
  147. package/lib/internals/withTooltip.js +34 -26
  148. package/lib/labelMessages/index.js +45 -27
  149. package/lib/labelMessages/labelMessages.spec.js +176 -0
  150. package/lib/labels/DangerLabel.js +4 -13
  151. package/lib/labels/DefaultLabel.js +57 -25
  152. package/lib/labels/InfoLabel.js +4 -13
  153. package/lib/labels/PrimaryLabel.js +4 -13
  154. package/lib/labels/SuccessLabel.js +4 -13
  155. package/lib/labels/WarningLabel.js +4 -13
  156. package/lib/labels/index.js +10 -10
  157. package/lib/labels/label.spec.js +162 -0
  158. package/lib/labels/label_container/index.js +12 -2
  159. package/lib/list/Header.js +13 -0
  160. package/lib/list/Item.js +65 -27
  161. package/lib/list/helpers.js +2 -2
  162. package/lib/list/index.js +51 -31
  163. package/lib/list/list.spec.js +769 -0
  164. package/lib/menus/float/MenuItem.js +42 -10
  165. package/lib/menus/float/SubMenuContainer.js +95 -0
  166. package/lib/menus/float/float-menu.spec.js +221 -0
  167. package/lib/menus/float/helpers.js +1 -1
  168. package/lib/menus/float/index.js +39 -9
  169. package/lib/menus/sidenav/ExpandMenu.js +13 -1
  170. package/lib/menus/sidenav/MenuLink.js +14 -0
  171. package/lib/menus/sidenav/NavMenuGroup.js +12 -1
  172. package/lib/menus/sidenav/NavMenuItem.js +45 -19
  173. package/lib/menus/sidenav/NavSubMenuItem.js +15 -4
  174. package/lib/menus/sidenav/helpers.js +3 -3
  175. package/lib/menus/sidenav/index.js +60 -30
  176. package/lib/menus/sidenav/popup_menu_search/EmptyList.js +11 -2
  177. package/lib/menus/sidenav/popup_menu_search/index.js +11 -14
  178. package/lib/menus/sidenav/sidenav.spec.js +379 -0
  179. package/lib/panel/Content.js +18 -6
  180. package/lib/panel/DangerPanel.js +1 -1
  181. package/lib/panel/Default.js +45 -18
  182. package/lib/panel/Header.js +29 -7
  183. package/lib/panel/InfoPanel.js +1 -1
  184. package/lib/panel/PrimaryPanel.js +1 -1
  185. package/lib/panel/SuccessPanel.js +1 -1
  186. package/lib/panel/ToolBar.js +5 -0
  187. package/lib/panel/WarningPanel.js +1 -1
  188. package/lib/panel/helpers.js +3 -7
  189. package/lib/panel/index.js +14 -14
  190. package/lib/panel/panel.spec.js +216 -0
  191. package/lib/permissionValidations.js +12 -14
  192. package/lib/popover/PopoverText.js +5 -0
  193. package/lib/popover/PopoverTitle.js +5 -0
  194. package/lib/popover/index.js +40 -26
  195. package/lib/popover/popover.spec.js +146 -0
  196. package/lib/progress/Bar.js +47 -37
  197. package/lib/progress/index.js +18 -8
  198. package/lib/progress/progress.spec.js +94 -0
  199. package/lib/radio/index.js +46 -22
  200. package/lib/radio/radio.spec.js +189 -0
  201. package/lib/skeleton/SkeletonContainer.js +13 -0
  202. package/lib/skeleton/index.js +26 -7
  203. package/lib/spinner/SpinnerLoading.js +12 -4
  204. package/lib/spinner/index.js +29 -24
  205. package/lib/spinner/spinner.spec.js +152 -0
  206. package/lib/split/Split.js +62 -45
  207. package/lib/split/SplitSide.js +21 -1
  208. package/lib/split/helpers.js +1 -1
  209. package/lib/split/split.spec.js +163 -0
  210. package/lib/table/Body.js +16 -9
  211. package/lib/table/Header.js +19 -40
  212. package/lib/table/HeaderColumn.js +20 -6
  213. package/lib/table/Row.js +28 -7
  214. package/lib/table/RowColumn.js +30 -12
  215. package/lib/table/helpers.js +3 -3
  216. package/lib/table/index.js +53 -15
  217. package/lib/table/table.spec.js +352 -0
  218. package/lib/tabs/DropdownItems.js +53 -39
  219. package/lib/tabs/Menu.js +20 -16
  220. package/lib/tabs/MenuItems.js +39 -25
  221. package/lib/tabs/Panel.js +51 -18
  222. package/lib/tabs/index.js +75 -81
  223. package/lib/tabs/tabHelpers.js +8 -10
  224. package/lib/tabs/tabs.spec.js +321 -0
  225. package/lib/toolbar/ButtonBar.js +13 -32
  226. package/lib/toolbar/LabelBar.js +18 -31
  227. package/lib/toolbar/ToolBarGroup.js +12 -6
  228. package/lib/toolbar/helpers.js +1 -1
  229. package/lib/toolbar/index.js +33 -25
  230. package/lib/toolbar/toolbar.spec.js +394 -0
  231. package/lib/tooltip/index.js +34 -25
  232. package/lib/tooltip/tooltip.spec.js +215 -0
  233. package/lib/treeview/Header.js +12 -0
  234. package/lib/treeview/Node.js +387 -261
  235. package/lib/treeview/constants.js +2 -1
  236. package/lib/treeview/index.js +548 -363
  237. package/lib/treeview/treeview.spec.js +279 -0
  238. package/lib/treeview_old/Node.js +6 -6
  239. package/lib/uitour/helpers.js +1 -1
  240. package/lib/uitour/index.js +32 -15
  241. package/lib/uitour/uitour.spec.js +176 -0
  242. package/package.json +16 -40
  243. package/.husky/pre-push +0 -4
  244. package/babel.config.json +0 -11
  245. package/tsconfig.json +0 -32
  246. package/tsup.config.ts +0 -10
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -11,6 +11,8 @@ var _react = _interopRequireWildcard(require("react"));
11
11
 
12
12
  var _lodash = _interopRequireDefault(require("lodash"));
13
13
 
14
+ var _propTypes = _interopRequireDefault(require("prop-types"));
15
+
14
16
  var _icons = _interopRequireDefault(require("../../icons"));
15
17
 
16
18
  var _withDropdown = require("../../dropdown/withDropdown");
@@ -29,21 +31,30 @@ var MenuItem = function MenuItem(_ref) {
29
31
  var title = _ref.title,
30
32
  url = _ref.url,
31
33
  iconName = _ref.iconName,
32
- _ref$iconColor = _ref.iconColor,
33
- iconColor = _ref$iconColor === void 0 ? 'gray' : _ref$iconColor,
34
- _ref$iconSize = _ref.iconSize,
35
- iconSize = _ref$iconSize === void 0 ? 24 : _ref$iconSize,
36
- dropdownMenu = _ref.dropdownMenu;
34
+ iconColor = _ref.iconColor,
35
+ iconSize = _ref.iconSize,
36
+ dropdownMenu = _ref.dropdownMenu,
37
+ onClick = _ref.onClick;
37
38
 
38
39
  var _useContext = (0, _react.useContext)(_helpers.default),
39
40
  customClassMenuItem = _useContext.customClassMenuItem;
40
41
 
41
42
  var dropdownContext = (0, _react.useContext)(_withDropdown.WithDropdownContext);
43
+
44
+ var handleOnClick = function handleOnClick() {
45
+ if (onClick) {
46
+ onClick(dropdownContext && dropdownContext.handleDropdownClose);
47
+ return;
48
+ }
49
+
50
+ if (dropdownContext) dropdownContext.handleDropdownClose();
51
+ };
52
+
42
53
  return /*#__PURE__*/_react.default.createElement("div", {
43
54
  className: "floatmenuitem"
44
55
  }, /*#__PURE__*/_react.default.createElement("div", {
45
56
  className: "".concat(customClassMenuItem, " -items")
46
- }, !_lodash.default.isEmpty(dropdownMenu) && /*#__PURE__*/_react.default.createElement(_buttons.default, {
57
+ }, !_lodash.default.isEmpty(dropdownMenu) && !onClick && /*#__PURE__*/_react.default.createElement(_buttons.default, {
47
58
  customClass: "floatmenudropdown",
48
59
  iconName: "more1",
49
60
  transparent: true,
@@ -54,10 +65,11 @@ var MenuItem = function MenuItem(_ref) {
54
65
  }, dropdownMenu), /*#__PURE__*/_react.default.createElement("a", {
55
66
  className: "floatmenulink",
56
67
  target: "_blank",
57
- onClick: function onClick() {
58
- if (dropdownContext) dropdownContext.handleDropdownClose();
59
- },
68
+ onClick: handleOnClick,
60
69
  href: url,
70
+ style: {
71
+ cursor: onClick ? 'pointer' : undefined
72
+ },
61
73
  rel: "noreferrer"
62
74
  }, /*#__PURE__*/_react.default.createElement("span", {
63
75
  className: "iconcontainer"
@@ -71,5 +83,25 @@ var MenuItem = function MenuItem(_ref) {
71
83
  }, title))));
72
84
  };
73
85
 
86
+ MenuItem.propTypes = {
87
+ title: _propTypes.default.string,
88
+ url: _propTypes.default.string,
89
+ iconName: _propTypes.default.string,
90
+ iconColor: _propTypes.default.string,
91
+ iconSize: _propTypes.default.number,
92
+ customClass: _propTypes.default.string,
93
+ dropdownMenu: _propTypes.default.element,
94
+ onClick: _propTypes.default.func
95
+ };
96
+ MenuItem.defaultProps = {
97
+ iconColor: 'gray',
98
+ iconSize: 24,
99
+ title: '',
100
+ iconName: '',
101
+ customClass: '',
102
+ url: undefined,
103
+ dropdownMenu: undefined,
104
+ onClick: undefined
105
+ };
74
106
  var _default = MenuItem;
75
107
  exports.default = _default;
@@ -0,0 +1,95 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ Object.defineProperty(exports, "__esModule", {
6
+ value: true
7
+ });
8
+ exports.default = void 0;
9
+
10
+ var _react = _interopRequireWildcard(require("react"));
11
+
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
14
+ var _icons = _interopRequireDefault(require("../../icons"));
15
+
16
+ var _skeleton = _interopRequireWildcard(require("../../skeleton"));
17
+
18
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
19
+
20
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
+
22
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
23
+
24
+ var renderChildren = function renderChildren(skeletonize, skeletonQtty, children) {
25
+ if (skeletonize && skeletonQtty) {
26
+ var skeletons = Array.from({
27
+ length: skeletonQtty
28
+ }, function (_, i) {
29
+ return i + 1;
30
+ });
31
+ return /*#__PURE__*/_react.default.createElement(_skeleton.SkeletonContainer, {
32
+ style: {
33
+ flexDirection: 'row',
34
+ flexFlow: 'row wrap'
35
+ }
36
+ }, skeletons.map(function (id) {
37
+ return /*#__PURE__*/_react.default.createElement(_skeleton.default, {
38
+ key: id,
39
+ height: 88,
40
+ width: 88,
41
+ style: {
42
+ flexGrow: 'unset',
43
+ marginBottom: 5
44
+ }
45
+ });
46
+ }));
47
+ }
48
+
49
+ return children;
50
+ };
51
+
52
+ var SubMenuContainer = function SubMenuContainer(_ref) {
53
+ var title = _ref.title,
54
+ customClass = _ref.customClass,
55
+ handlerGoBack = _ref.handlerGoBack,
56
+ skeletonize = _ref.skeletonize,
57
+ skeletonQtty = _ref.skeletonQtty,
58
+ children = _ref.children;
59
+ (0, _react.useEffect)(function () {
60
+ return function () {
61
+ handlerGoBack();
62
+ };
63
+ }, []);
64
+ return /*#__PURE__*/_react.default.createElement("div", {
65
+ className: "floatsubmenu ".concat(customClass)
66
+ }, /*#__PURE__*/_react.default.createElement("div", {
67
+ className: "submenuheader"
68
+ }, /*#__PURE__*/_react.default.createElement(_icons.default, {
69
+ onClick: handlerGoBack,
70
+ name: "arrowBack",
71
+ pointerEvents: "all",
72
+ style: {
73
+ cursor: 'pointer'
74
+ }
75
+ }), title && /*#__PURE__*/_react.default.createElement("span", null, title)), /*#__PURE__*/_react.default.createElement("div", {
76
+ className: "submenucontent"
77
+ }, renderChildren(skeletonize, skeletonQtty, children)));
78
+ };
79
+
80
+ SubMenuContainer.propTypes = {
81
+ children: _propTypes.default.element.isRequired,
82
+ handlerGoBack: _propTypes.default.func.isRequired,
83
+ title: _propTypes.default.string,
84
+ customClass: _propTypes.default.string,
85
+ skeletonize: _propTypes.default.bool,
86
+ skeletonQtty: _propTypes.default.number
87
+ };
88
+ SubMenuContainer.defaultProps = {
89
+ title: undefined,
90
+ customClass: undefined,
91
+ skeletonize: true,
92
+ skeletonQtty: 3
93
+ };
94
+ var _default = SubMenuContainer;
95
+ exports.default = _default;
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
+
5
+ var _react = _interopRequireDefault(require("react"));
6
+
7
+ require("babel-polyfill");
8
+
9
+ var _react2 = require("@testing-library/react");
10
+
11
+ require("@testing-library/jest-dom");
12
+
13
+ var _ = _interopRequireWildcard(require("."));
14
+
15
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
+
17
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
18
+
19
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
20
+
21
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
22
+
23
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
24
+
25
+ var menuData = [{
26
+ title: 'Fiscal',
27
+ key: 'FISCAL',
28
+ url: '/teste',
29
+ iconName: 'code',
30
+ iconColor: 'gray',
31
+ iconSize: 24
32
+ }, {
33
+ title: 'Financeiro',
34
+ key: 'FINANCEIRO',
35
+ url: '/teste1',
36
+ iconName: 'folder_close',
37
+ iconColor: 'red',
38
+ iconSize: 24
39
+ }];
40
+
41
+ var floatMenuMockRender = function floatMenuMockRender(props) {
42
+ return /*#__PURE__*/_react.default.createElement(_.default, props, menuData.map(function (p) {
43
+ return /*#__PURE__*/_react.default.createElement(_.MenuItem, p);
44
+ }));
45
+ };
46
+
47
+ describe('SideNav Menu', function () {
48
+ describe('Default', function () {
49
+ it('should render', function () {
50
+ var _render = (0, _react2.render)(floatMenuMockRender()),
51
+ container = _render.container;
52
+
53
+ expect(container.firstChild).toBeInTheDocument();
54
+ });
55
+ it('should apply customClass prop', function () {
56
+ var _render2 = (0, _react2.render)(floatMenuMockRender({
57
+ customClass: 'customClass'
58
+ })),
59
+ container = _render2.container;
60
+
61
+ expect(container.firstChild).toHaveClass('customClass');
62
+ });
63
+ it('should apply iconSize prop', function () {
64
+ (0, _react2.render)(floatMenuMockRender({
65
+ iconSize: 18,
66
+ iconColor: 'red'
67
+ }));
68
+
69
+ var svg = _react2.screen.getByTestId('icon');
70
+
71
+ expect(svg).toHaveAttribute('fill', 'red');
72
+ expect(svg).toHaveAttribute('width', '18px');
73
+ });
74
+ it('should open float menu', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee() {
75
+ return regeneratorRuntime.wrap(function _callee$(_context) {
76
+ while (1) {
77
+ switch (_context.prev = _context.next) {
78
+ case 0:
79
+ (0, _react2.render)(floatMenuMockRender());
80
+
81
+ _react2.fireEvent.click(_react2.screen.getByRole('button'));
82
+
83
+ _context.next = 4;
84
+ return (0, _react2.waitFor)(function () {
85
+ return _react2.screen.getByTestId('dropdown-component');
86
+ });
87
+
88
+ case 4:
89
+ expect(_react2.screen.getByTestId('dropdown-component')).toBeInTheDocument();
90
+
91
+ case 5:
92
+ case "end":
93
+ return _context.stop();
94
+ }
95
+ }
96
+ }, _callee);
97
+ })));
98
+ it('should menu have 2 children', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee2() {
99
+ return regeneratorRuntime.wrap(function _callee2$(_context2) {
100
+ while (1) {
101
+ switch (_context2.prev = _context2.next) {
102
+ case 0:
103
+ (0, _react2.render)(floatMenuMockRender());
104
+
105
+ _react2.fireEvent.click(_react2.screen.getByRole('button'));
106
+
107
+ _context2.next = 4;
108
+ return (0, _react2.waitFor)(function () {
109
+ return _react2.screen.getByTestId('dropdown-component');
110
+ });
111
+
112
+ case 4:
113
+ expect(_react2.screen.getByTestId('dropdown-component').firstChild.childNodes.length).toBe(2);
114
+
115
+ case 5:
116
+ case "end":
117
+ return _context2.stop();
118
+ }
119
+ }
120
+ }, _callee2);
121
+ })));
122
+ it('should href match with prop', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee3() {
123
+ var as;
124
+ return regeneratorRuntime.wrap(function _callee3$(_context3) {
125
+ while (1) {
126
+ switch (_context3.prev = _context3.next) {
127
+ case 0:
128
+ (0, _react2.render)(floatMenuMockRender());
129
+
130
+ _react2.fireEvent.click(_react2.screen.getByRole('button'));
131
+
132
+ _context3.next = 4;
133
+ return (0, _react2.waitFor)(function () {
134
+ return _react2.screen.getByTestId('dropdown-component');
135
+ });
136
+
137
+ case 4:
138
+ as = _react2.screen.getAllByRole('link');
139
+ expect(as[0].href).toBe('http://localhost/teste');
140
+ expect(as[1].href).toBe('http://localhost/teste1');
141
+
142
+ case 7:
143
+ case "end":
144
+ return _context3.stop();
145
+ }
146
+ }
147
+ }, _callee3);
148
+ })));
149
+ it('should link have a icon and label', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee4() {
150
+ var as;
151
+ return regeneratorRuntime.wrap(function _callee4$(_context4) {
152
+ while (1) {
153
+ switch (_context4.prev = _context4.next) {
154
+ case 0:
155
+ (0, _react2.render)(floatMenuMockRender());
156
+
157
+ _react2.fireEvent.click(_react2.screen.getByRole('button'));
158
+
159
+ _context4.next = 4;
160
+ return (0, _react2.waitFor)(function () {
161
+ return _react2.screen.getByTestId('dropdown-component');
162
+ });
163
+
164
+ case 4:
165
+ as = document.querySelectorAll('.dropdown-component .items .floatmenuitem');
166
+ expect(as[0].firstChild).toHaveClass('-items');
167
+ expect(as[0].querySelector('.iconcontainer')).toBeInTheDocument();
168
+ expect(as[0].querySelector('.icon-component')).toBeInTheDocument();
169
+ expect(as[0].querySelector('.nameitem')).toBeInTheDocument();
170
+ expect(as[0]).toHaveTextContent(menuData[0].title);
171
+ expect(as[1].firstChild).toHaveClass('-items');
172
+ expect(as[1].querySelector('.iconcontainer')).toBeInTheDocument();
173
+ expect(as[1].querySelector('.icon-component')).toBeInTheDocument();
174
+ expect(as[1].querySelector('.nameitem')).toBeInTheDocument();
175
+ expect(as[1]).toHaveTextContent(menuData[1].title);
176
+
177
+ case 15:
178
+ case "end":
179
+ return _context4.stop();
180
+ }
181
+ }
182
+ }, _callee4);
183
+ })));
184
+ });
185
+ describe('IsLoading', function () {
186
+ it('should open float menu', /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee5() {
187
+ return regeneratorRuntime.wrap(function _callee5$(_context5) {
188
+ while (1) {
189
+ switch (_context5.prev = _context5.next) {
190
+ case 0:
191
+ (0, _react2.render)(floatMenuMockRender({
192
+ isLoading: true
193
+ }));
194
+
195
+ _react2.fireEvent.click(_react2.screen.getByRole('button'));
196
+
197
+ _context5.next = 4;
198
+ return (0, _react2.waitFor)(function () {
199
+ return _react2.screen.getByTestId('dropdown-component');
200
+ });
201
+
202
+ case 4:
203
+ _context5.next = 6;
204
+ return (0, _react2.waitFor)(function () {
205
+ return _react2.screen.getByTestId('spinner');
206
+ }, {
207
+ timeout: 3000
208
+ });
209
+
210
+ case 6:
211
+ expect(_react2.screen.getByTestId('spinner')).toBeTruthy();
212
+
213
+ case 7:
214
+ case "end":
215
+ return _context5.stop();
216
+ }
217
+ }
218
+ }, _callee5);
219
+ })));
220
+ });
221
+ });
@@ -9,7 +9,7 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
11
 
12
- var FloatMenuContext = /*#__PURE__*/_react.default.createContext({});
12
+ var FloatMenuContext = /*#__PURE__*/_react.default.createContext();
13
13
 
14
14
  var _default = FloatMenuContext;
15
15
  exports.default = _default;
@@ -9,12 +9,22 @@ Object.defineProperty(exports, "MenuItem", {
9
9
  return _MenuItem.default;
10
10
  }
11
11
  });
12
+ Object.defineProperty(exports, "SubMenuContainer", {
13
+ enumerable: true,
14
+ get: function get() {
15
+ return _SubMenuContainer.default;
16
+ }
17
+ });
12
18
  exports.default = void 0;
13
19
 
14
20
  var _react = _interopRequireDefault(require("react"));
15
21
 
22
+ var _propTypes = _interopRequireDefault(require("prop-types"));
23
+
16
24
  var _MenuItem = _interopRequireDefault(require("./MenuItem"));
17
25
 
26
+ var _SubMenuContainer = _interopRequireDefault(require("./SubMenuContainer"));
27
+
18
28
  var _buttons = _interopRequireDefault(require("../../buttons"));
19
29
 
20
30
  var _icons = _interopRequireDefault(require("../../icons"));
@@ -28,10 +38,8 @@ var _helpers = _interopRequireDefault(require("./helpers"));
28
38
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
29
39
 
30
40
  var FloatMenu = function FloatMenu(props) {
31
- var _props$iconSize = props.iconSize,
32
- iconSize = _props$iconSize === void 0 ? 16 : _props$iconSize,
33
- _props$iconColor = props.iconColor,
34
- iconColor = _props$iconColor === void 0 ? '#676464' : _props$iconColor,
41
+ var iconSize = props.iconSize,
42
+ iconColor = props.iconColor,
35
43
  customClass = props.customClass,
36
44
  children = props.children,
37
45
  spinner = props.spinner,
@@ -39,15 +47,20 @@ var FloatMenu = function FloatMenu(props) {
39
47
  customClassMenuItem = props.customClassMenuItem;
40
48
 
41
49
  var getSpinner = function getSpinner() {
42
- if (isLoading) return /*#__PURE__*/_react.default.createElement(_spinner.default, null);
50
+ if (isLoading) return /*#__PURE__*/_react.default.createElement(_spinner.default, {
51
+ delayTime: 0
52
+ });
43
53
  return spinner;
44
54
  };
45
55
 
46
- var contextValues = {
47
- customClassMenuItem: customClassMenuItem
56
+ var getContextValues = function getContextValues() {
57
+ return {
58
+ customClassMenuItem: customClassMenuItem
59
+ };
48
60
  };
61
+
49
62
  return /*#__PURE__*/_react.default.createElement(_helpers.default.Provider, {
50
- value: contextValues
63
+ value: getContextValues()
51
64
  }, /*#__PURE__*/_react.default.createElement("div", {
52
65
  className: "floatmenu-component ".concat(customClass)
53
66
  }, /*#__PURE__*/_react.default.createElement(_buttons.default, {
@@ -61,12 +74,29 @@ var FloatMenu = function FloatMenu(props) {
61
74
  color: iconColor
62
75
  }),
63
76
  customClass: "buttonfloat",
64
- tabIndex: -1,
77
+ tabIndex: "-1",
65
78
  isFloatMenu: true,
66
79
  customClassForDropdown: "-floatdropdown",
67
80
  showIconDropdown: false
68
81
  }, isLoading || spinner ? getSpinner() : children)));
69
82
  };
70
83
 
84
+ FloatMenu.propTypes = {
85
+ customClass: _propTypes.default.string,
86
+ children: _propTypes.default.arrayOf(_propTypes.default.element).isRequired,
87
+ iconSize: _propTypes.default.number,
88
+ iconColor: _propTypes.default.string,
89
+ customClassMenuItem: _propTypes.default.string,
90
+ isLoading: _propTypes.default.bool,
91
+ spinner: _propTypes.default.instanceOf(Object)
92
+ };
93
+ FloatMenu.defaultProps = {
94
+ customClass: '',
95
+ iconSize: 16,
96
+ iconColor: '#676464',
97
+ customClassMenuItem: '',
98
+ isLoading: false,
99
+ spinner: undefined
100
+ };
71
101
  var _default = FloatMenu;
72
102
  exports.default = _default;
@@ -7,6 +7,8 @@ exports.default = void 0;
7
7
 
8
8
  var _react = _interopRequireDefault(require("react"));
9
9
 
10
+ var _propTypes = _interopRequireDefault(require("prop-types"));
11
+
10
12
  var _icons = _interopRequireDefault(require("../../icons"));
11
13
 
12
14
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -20,12 +22,22 @@ var ExpandMenu = function ExpandMenu(_ref) {
20
22
  role: "button",
21
23
  tabIndex: 0,
22
24
  onClick: onExpandMenu,
23
- onKeyPress: function onKeyPress() {}
25
+ onKeyPress: null
24
26
  }, /*#__PURE__*/_react.default.createElement(_icons.default, {
25
27
  name: iconName,
26
28
  size: 16
27
29
  }));
28
30
  };
29
31
 
32
+ ExpandMenu.propTypes = {
33
+ expandMenuCustomClass: _propTypes.default.string,
34
+ onExpandMenu: _propTypes.default.func,
35
+ iconName: _propTypes.default.string
36
+ };
37
+ ExpandMenu.defaultProps = {
38
+ expandMenuCustomClass: '',
39
+ iconName: '',
40
+ onExpandMenu: undefined
41
+ };
30
42
  var _default = ExpandMenu;
31
43
  exports.default = _default;
@@ -9,6 +9,8 @@ var _react = _interopRequireDefault(require("react"));
9
9
 
10
10
  var _reactRouterDom = require("react-router-dom");
11
11
 
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
12
14
  var _withTooltip = _interopRequireDefault(require("../../internals/withTooltip"));
13
15
 
14
16
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
@@ -32,6 +34,18 @@ var MenuLink = function MenuLink(_ref) {
32
34
  return children;
33
35
  };
34
36
 
37
+ MenuLink.propTypes = {
38
+ url: _propTypes.default.string,
39
+ children: _propTypes.default.element.isRequired,
40
+ targetRef: _propTypes.default.func,
41
+ disabled: _propTypes.default.bool
42
+ };
43
+ MenuLink.defaultProps = {
44
+ url: undefined,
45
+ targetRef: undefined,
46
+ disabled: false
47
+ };
48
+
35
49
  var _default = (0, _withTooltip.default)(MenuLink);
36
50
 
37
51
  exports.default = _default;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
 
3
- function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
3
+ function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
4
4
 
5
5
  Object.defineProperty(exports, "__esModule", {
6
6
  value: true
@@ -9,8 +9,12 @@ exports.default = void 0;
9
9
 
10
10
  var _react = _interopRequireWildcard(require("react"));
11
11
 
12
+ var _propTypes = _interopRequireDefault(require("prop-types"));
13
+
12
14
  var _helpers = _interopRequireWildcard(require("./helpers"));
13
15
 
16
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
17
+
14
18
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
19
 
16
20
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -28,5 +32,12 @@ var NavMenuGroup = function NavMenuGroup(_ref) {
28
32
  }, children);
29
33
  };
30
34
 
35
+ NavMenuGroup.propTypes = {
36
+ children: _propTypes.default.any.isRequired,
37
+ scrollable: _propTypes.default.bool
38
+ };
39
+ NavMenuGroup.defaultProps = {
40
+ scrollable: false
41
+ };
31
42
  var _default = NavMenuGroup;
32
43
  exports.default = _default;