linear-react-components-ui 0.4.77-beta.22 → 0.4.77-beta.23

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 (240) hide show
  1. package/.vscode/settings.json +3 -2
  2. package/lib/alerts/AlertContainer.js +12 -19
  3. package/lib/alerts/AlertProvider.js +11 -21
  4. package/lib/alerts/BaseAlert.js +5 -15
  5. package/lib/alerts/Message.js +3 -3
  6. package/lib/alerts/alert.spec.js +11 -11
  7. package/lib/alerts/helpers.js +2 -2
  8. package/lib/alerts/index.js +2 -2
  9. package/lib/alerts/withAlert.js +6 -6
  10. package/lib/assets/styles/treetable.scss +71 -124
  11. package/lib/avatar/avatar.spec.js +9 -9
  12. package/lib/avatar/index.js +6 -6
  13. package/lib/badge/badge.spec.js +5 -5
  14. package/lib/badge/index.js +2 -2
  15. package/lib/buttons/ActivateButton.js +5 -5
  16. package/lib/buttons/AddButton.js +5 -5
  17. package/lib/buttons/Button.js +2 -2
  18. package/lib/buttons/ButtonGroups.js +2 -2
  19. package/lib/buttons/CancelButton.js +2 -2
  20. package/lib/buttons/DangerButton.js +6 -6
  21. package/lib/buttons/DefaultButton.js +12 -22
  22. package/lib/buttons/DestroyButton.js +5 -5
  23. package/lib/buttons/EditButton.js +5 -5
  24. package/lib/buttons/InactivateButton.js +5 -5
  25. package/lib/buttons/InfoButton.js +6 -6
  26. package/lib/buttons/PrimaryButton.js +6 -6
  27. package/lib/buttons/RestoreButton.js +5 -5
  28. package/lib/buttons/SaveButton.js +2 -2
  29. package/lib/buttons/SpinnerLoading.js +2 -2
  30. package/lib/buttons/SuccessButton.js +6 -6
  31. package/lib/buttons/WarningButton.js +6 -6
  32. package/lib/buttons/button_container/index.js +5 -5
  33. package/lib/buttons/buttons.spec.js +3 -3
  34. package/lib/buttons/index.js +2 -2
  35. package/lib/buttons/split_button/index.js +6 -6
  36. package/lib/calendar/DangerCalendar.js +5 -5
  37. package/lib/calendar/InfoCalendar.js +5 -5
  38. package/lib/calendar/PrimaryCalendar.js +5 -5
  39. package/lib/calendar/SuccessCalendar.js +5 -5
  40. package/lib/calendar/WarningCalendar.js +5 -5
  41. package/lib/calendar/base/Day.js +3 -3
  42. package/lib/calendar/base/Month.js +5 -15
  43. package/lib/calendar/base/Week.js +5 -15
  44. package/lib/calendar/base/helpers.js +2 -2
  45. package/lib/calendar/base/index.js +6 -16
  46. package/lib/calendar/calendar.spec.js +9 -9
  47. package/lib/calendar/index.js +2 -2
  48. package/lib/checkbox/Label.js +2 -2
  49. package/lib/checkbox/checkbox.spec.js +18 -18
  50. package/lib/checkbox/index.js +10 -20
  51. package/lib/dialog/Alert.js +5 -5
  52. package/lib/dialog/Custom.js +5 -5
  53. package/lib/dialog/Error.js +5 -5
  54. package/lib/dialog/Information.js +5 -5
  55. package/lib/dialog/Question.js +6 -6
  56. package/lib/dialog/Warning.js +5 -5
  57. package/lib/dialog/base/Content.js +2 -2
  58. package/lib/dialog/base/Footer.js +2 -2
  59. package/lib/dialog/base/Header.js +2 -2
  60. package/lib/dialog/base/index.js +3 -3
  61. package/lib/dialog/dialog.spec.js +55 -62
  62. package/lib/dialog/form/index.js +12 -15
  63. package/lib/dialog/index.js +2 -2
  64. package/lib/drawer/Content.js +3 -3
  65. package/lib/drawer/Drawer.js +11 -41
  66. package/lib/drawer/Drawer.spec.js +39 -67
  67. package/lib/drawer/Header.js +3 -3
  68. package/lib/drawer/helpers.js +2 -2
  69. package/lib/drawer/index.js +2 -2
  70. package/lib/dropdown/Popup.js +2 -2
  71. package/lib/dropdown/dropdown.spec.js +17 -16
  72. package/lib/dropdown/withDropdown.js +10 -20
  73. package/lib/fieldset/fieldset.spec.js +2 -2
  74. package/lib/fieldset/index.js +9 -19
  75. package/lib/form/Field.js +9 -19
  76. package/lib/form/FieldArray.js +10 -10
  77. package/lib/form/FieldNumber.js +5 -5
  78. package/lib/form/FieldPeriod.js +5 -5
  79. package/lib/form/form.spec.js +16 -16
  80. package/lib/form/helpers.js +8 -19
  81. package/lib/form/index.js +21 -38
  82. package/lib/form/withFieldHOC.js +22 -28
  83. package/lib/form/withFormSecurity.js +12 -25
  84. package/lib/gridlayout/GridCol.js +2 -2
  85. package/lib/gridlayout/GridRow.js +2 -2
  86. package/lib/gridlayout/gridLayout.spec.js +7 -7
  87. package/lib/gridlayout/index.js +2 -2
  88. package/lib/icons/icons.spec.js +5 -5
  89. package/lib/icons/index.js +2 -2
  90. package/lib/index.js +3 -3
  91. package/lib/inputs/base/InputTextBase.js +11 -21
  92. package/lib/inputs/base/base.spec.js +3 -3
  93. package/lib/inputs/base/helpers.js +2 -2
  94. package/lib/inputs/color/color_input.spec.js +6 -6
  95. package/lib/inputs/color/index.js +9 -19
  96. package/lib/inputs/date/Dialog.js +2 -2
  97. package/lib/inputs/date/Dropdown.js +14 -24
  98. package/lib/inputs/date/date.spec.js +2 -2
  99. package/lib/inputs/date/helpers.js +2 -2
  100. package/lib/inputs/date/index.js +25 -31
  101. package/lib/inputs/inputHOC.js +23 -29
  102. package/lib/inputs/mask/BaseMask.js +8 -11
  103. package/lib/inputs/mask/Cnpj.js +9 -19
  104. package/lib/inputs/mask/Cpf.js +9 -19
  105. package/lib/inputs/mask/Phone.js +5 -5
  106. package/lib/inputs/mask/ZipCode.js +5 -5
  107. package/lib/inputs/mask/helpers.js +5 -5
  108. package/lib/inputs/mask/imaskHOC.js +28 -35
  109. package/lib/inputs/mask/index.js +2 -2
  110. package/lib/inputs/mask/input_mask.spec.js +11 -11
  111. package/lib/inputs/multiSelect/ActionButtons.js +3 -3
  112. package/lib/inputs/multiSelect/Dropdown.js +9 -19
  113. package/lib/inputs/multiSelect/index.js +22 -38
  114. package/lib/inputs/number/BaseNumber.js +5 -5
  115. package/lib/inputs/number/Currency.js +5 -5
  116. package/lib/inputs/number/Decimal.js +2 -2
  117. package/lib/inputs/number/index.js +5 -5
  118. package/lib/inputs/number/numberfield.spec.js +3 -3
  119. package/lib/inputs/period/Dialog.js +2 -2
  120. package/lib/inputs/period/Dropdown.js +14 -24
  121. package/lib/inputs/period/PeriodList.js +2 -2
  122. package/lib/inputs/period/helper.js +5 -6
  123. package/lib/inputs/period/index.js +16 -26
  124. package/lib/inputs/search/index.js +36 -52
  125. package/lib/inputs/search/search_input.spec.js +7 -7
  126. package/lib/inputs/select/ActionButtons.js +2 -2
  127. package/lib/inputs/select/Dropdown.js +10 -20
  128. package/lib/inputs/select/index.js +5 -8
  129. package/lib/inputs/select/multiple/Selecteds.js +2 -2
  130. package/lib/inputs/select/multiple/index.js +42 -58
  131. package/lib/inputs/select/select.spec.js +6 -6
  132. package/lib/inputs/select/simple/index.js +28 -34
  133. package/lib/inputs/text/index.js +2 -2
  134. package/lib/inputs/text/textfield.spec.js +3 -3
  135. package/lib/inputs/textarea/index.js +5 -5
  136. package/lib/inputs/textarea/textarea.spec.js +2 -2
  137. package/lib/internals/withTooltip.js +12 -22
  138. package/lib/labelMessages/index.js +6 -16
  139. package/lib/labelMessages/labelMessages.spec.js +2 -2
  140. package/lib/labels/DangerLabel.js +5 -5
  141. package/lib/labels/DefaultLabel.js +6 -16
  142. package/lib/labels/InfoLabel.js +5 -5
  143. package/lib/labels/PrimaryLabel.js +5 -5
  144. package/lib/labels/SuccessLabel.js +5 -5
  145. package/lib/labels/WarningLabel.js +5 -5
  146. package/lib/labels/index.js +2 -2
  147. package/lib/labels/label.spec.js +3 -3
  148. package/lib/labels/label_container/index.js +2 -2
  149. package/lib/list/Header.js +2 -2
  150. package/lib/list/Item.js +9 -19
  151. package/lib/list/Separator.js +2 -2
  152. package/lib/list/helpers.js +2 -2
  153. package/lib/list/index.js +8 -18
  154. package/lib/list/list.spec.js +13 -13
  155. package/lib/menus/float/MenuItem.js +3 -3
  156. package/lib/menus/float/float-menu.spec.js +17 -17
  157. package/lib/menus/float/helpers.js +2 -2
  158. package/lib/menus/float/index.js +2 -2
  159. package/lib/menus/index.js +2 -2
  160. package/lib/menus/sidenav/ExpandMenu.js +2 -2
  161. package/lib/menus/sidenav/MenuLink.js +2 -2
  162. package/lib/menus/sidenav/NavMenuGroup.js +3 -3
  163. package/lib/menus/sidenav/NavMenuItem.js +11 -21
  164. package/lib/menus/sidenav/NavSubMenuItem.js +6 -16
  165. package/lib/menus/sidenav/helpers.js +2 -2
  166. package/lib/menus/sidenav/index.js +16 -34
  167. package/lib/menus/sidenav/popup_menu_search/EmptyList.js +2 -2
  168. package/lib/menus/sidenav/popup_menu_search/index.js +8 -18
  169. package/lib/menus/sidenav/sidenav.spec.js +18 -18
  170. package/lib/noPermission/index.js +2 -2
  171. package/lib/panel/Content.js +3 -3
  172. package/lib/panel/DangerPanel.js +5 -5
  173. package/lib/panel/Default.js +7 -17
  174. package/lib/panel/Header.js +3 -3
  175. package/lib/panel/InfoPanel.js +5 -5
  176. package/lib/panel/PrimaryPanel.js +5 -5
  177. package/lib/panel/SuccessPanel.js +5 -5
  178. package/lib/panel/ToolBar.js +2 -2
  179. package/lib/panel/WarningPanel.js +5 -5
  180. package/lib/panel/helpers.js +2 -2
  181. package/lib/panel/index.js +2 -2
  182. package/lib/panel/panel.spec.js +6 -6
  183. package/lib/popover/PopoverText.js +2 -2
  184. package/lib/popover/PopoverTitle.js +2 -2
  185. package/lib/popover/index.js +2 -2
  186. package/lib/popover/popover.spec.js +6 -6
  187. package/lib/progress/Bar.js +2 -2
  188. package/lib/progress/index.js +5 -7
  189. package/lib/progress/progress.spec.js +5 -5
  190. package/lib/radio/index.js +12 -22
  191. package/lib/radio/radio.spec.js +14 -14
  192. package/lib/skeleton/SkeletonContainer.js +2 -2
  193. package/lib/skeleton/index.js +5 -5
  194. package/lib/spinner/SpinnerLoading.js +2 -2
  195. package/lib/spinner/index.js +6 -16
  196. package/lib/spinner/spinner.spec.js +11 -11
  197. package/lib/split/Split.js +24 -34
  198. package/lib/split/SplitSide.js +3 -3
  199. package/lib/split/helpers.js +2 -2
  200. package/lib/split/index.js +2 -2
  201. package/lib/split/split.spec.js +15 -15
  202. package/lib/table/Body.js +7 -7
  203. package/lib/table/Header.js +3 -3
  204. package/lib/table/HeaderColumn.js +3 -3
  205. package/lib/table/Row.js +6 -6
  206. package/lib/table/RowColumn.js +6 -6
  207. package/lib/table/helpers.js +2 -2
  208. package/lib/table/index.js +12 -24
  209. package/lib/table/table.spec.js +15 -15
  210. package/lib/tabs/DropdownItems.js +3 -3
  211. package/lib/tabs/Menu.js +2 -2
  212. package/lib/tabs/MenuItems.js +3 -3
  213. package/lib/tabs/Panel.js +6 -16
  214. package/lib/tabs/index.js +22 -42
  215. package/lib/tabs/tabHelpers.js +2 -2
  216. package/lib/tabs/tabs.spec.js +14 -14
  217. package/lib/toolbar/ButtonBar.js +6 -6
  218. package/lib/toolbar/LabelBar.js +7 -7
  219. package/lib/toolbar/Separator.js +2 -2
  220. package/lib/toolbar/ToolBarGroup.js +2 -2
  221. package/lib/toolbar/index.js +5 -7
  222. package/lib/toolbar/toolbar.spec.js +6 -6
  223. package/lib/tooltip/index.js +3 -3
  224. package/lib/tooltip/tooltip.spec.js +21 -21
  225. package/lib/treetable/TRow.js +255 -0
  226. package/lib/treetable/helpers.js +63 -27
  227. package/lib/treetable/index.js +91 -265
  228. package/lib/treetable/treetable.spec.js +302 -0
  229. package/lib/treeview/Header.js +2 -2
  230. package/lib/treeview/Node.js +28 -44
  231. package/lib/treeview/constants.js +2 -2
  232. package/lib/treeview/index.js +53 -69
  233. package/lib/treeview/treeview.spec.js +13 -13
  234. package/lib/treeview_old/Header.js +2 -2
  235. package/lib/treeview_old/Node.js +20 -26
  236. package/lib/treeview_old/index.js +2 -2
  237. package/lib/uitour/index.js +18 -30
  238. package/lib/uitour/uitour.spec.js +2 -2
  239. package/package.json +2 -2
  240. package/lib/menus/float/SubMenuContainer.js +0 -95
@@ -1,297 +1,123 @@
1
1
  "use strict";
2
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); }
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+
5
+ var _typeof = require("@babel/runtime/helpers/typeof");
4
6
 
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  exports["default"] = void 0;
9
11
 
10
- var _react = _interopRequireWildcard(require("react"));
12
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
11
13
 
12
14
  var _propTypes = _interopRequireDefault(require("prop-types"));
13
15
 
14
- var _buttons = require("../buttons");
15
-
16
- var _table = _interopRequireWildcard(require("../table"));
16
+ var _react = _interopRequireDefault(require("react"));
17
17
 
18
18
  require("../assets/styles/treetable.scss");
19
19
 
20
- var _helpers = _interopRequireDefault(require("./helpers"));
20
+ var _table = _interopRequireWildcard(require("../table"));
21
+
22
+ var _helpers = require("./helpers");
21
23
 
22
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
24
+ var _TRow = _interopRequireDefault(require("./TRow"));
23
25
 
24
26
  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); }
25
27
 
26
28
  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; }
27
29
 
28
- function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
29
-
30
- function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
31
-
32
- function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
33
-
34
- function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
35
-
36
- function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
37
-
38
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
39
-
40
- function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
41
-
42
- function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
43
-
44
- function _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
45
-
46
- function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
47
-
48
30
  var TreeTable = function TreeTable(props) {
49
- var _useState = (0, _react.useState)([]),
50
- _useState2 = _slicedToArray(_useState, 2),
51
- data = _useState2[0],
52
- setData = _useState2[1];
53
-
54
- var _useState3 = (0, _react.useState)(false),
55
- _useState4 = _slicedToArray(_useState3, 2),
56
- treeExpanded = _useState4[0],
57
- setTreeExpanded = _useState4[1];
58
-
59
- (0, _react.useEffect)(function () {
60
- var objectArrayReturned = (0, _helpers["default"])(props.dataTable);
61
- setData(objectArrayReturned);
62
- }, [props.dataTable]);
63
- var expandOrCollapseTreeTable = (0, _react.useCallback)(function (dataTree, selectedRowID, expandAll, collapseAll) {
64
- var expandOrCollapse = function expandOrCollapse(children) {
65
- var expand = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : expandAll;
66
- var collapse = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : collapseAll;
67
- return children.map(function (node) {
68
- var setExpanded = node.rowID === selectedRowID ? !node.expanded : node.expanded;
69
- var setVisible = node.parentRowID === selectedRowID ? !node.visible : node.visible;
70
-
71
- if (expand) {
72
- setExpanded = true;
73
- setVisible = true;
74
- }
75
-
76
- if (collapse) {
77
- setExpanded = false;
78
- setVisible = false;
79
- } // if (node.parentRowID === selectedRowID && !setVisible) collapse = true;
80
-
81
-
82
- return Object.assign({}, node, {
83
- visible: setVisible,
84
- expanded: setExpanded,
85
- children: expandOrCollapse(node.children, expand, collapse)
86
- });
87
- });
88
- };
89
-
90
- return expandOrCollapse(dataTree);
91
- }, []);
92
-
93
- var rowExpandOrCollapse = function rowExpandOrCollapse(rowID) {
94
- var treeExpandOrCollapse = expandOrCollapseTreeTable(data, rowID, false, false);
95
- setData(treeExpandOrCollapse);
96
- };
97
-
98
- var expandOrCollapseAll = (0, _react.useCallback)(function () {
99
- var isExpanded = !treeExpanded;
100
-
101
- var newTreeNodeExpandOrCollapse = function newTreeNodeExpandOrCollapse(children) {
102
- return children.map(function (node) {
103
- var isVisible = node.rowLevel === 1 ? true : isExpanded;
104
- return Object.assign({}, node, {
105
- visible: isVisible,
106
- expanded: isExpanded,
107
- children: newTreeNodeExpandOrCollapse(node.children)
108
- });
109
- });
110
- };
111
-
112
- setTreeExpanded(isExpanded);
113
- setData(newTreeNodeExpandOrCollapse(data));
114
- }, [data, treeExpanded]);
115
-
116
- var generateDataColumn = function generateDataColumn(row, key, dataField) {
117
- if (row.children && row.children.length > 0) {
118
- var iconCell = row.expanded ? /*#__PURE__*/_react["default"].createElement("button", {
119
- "aria-label": "collapse-row",
120
- type: "button",
121
- className: "button-collapse",
122
- onClick: function onClick() {
123
- return rowExpandOrCollapse(row.rowID);
124
- }
125
- }, "\u25BC") : /*#__PURE__*/_react["default"].createElement("button", {
126
- "aria-label": "expand-row",
127
- type: "button",
128
- className: "button-expand",
129
- onClick: function onClick() {
130
- return rowExpandOrCollapse(row.rowID);
131
- }
132
- }, "\u25BA");
133
-
134
- if (props.tableColumns[0].isFixedWidth) {
135
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
136
- key: key,
137
- style: {
138
- width: "".concat(props.tableColumns[0].percentageWidth, "%")
139
- }
140
- }, /*#__PURE__*/_react["default"].createElement("span", {
141
- className: "button-expand-tree",
142
- style: {
143
- marginLeft: "".concat(row.rowLevel, "rem")
144
- }
145
- }, iconCell, /*#__PURE__*/_react["default"].createElement("span", {
146
- className: "text-first-column"
147
- }, row.data[dataField])));
148
- }
149
-
150
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
151
- key: key
152
- }, /*#__PURE__*/_react["default"].createElement("span", {
153
- className: "button-expand-tree",
154
- style: {
155
- marginLeft: "".concat(row.rowLevel, "rem")
156
- }
157
- }, iconCell, /*#__PURE__*/_react["default"].createElement("span", {
158
- className: "text-first-column"
159
- }, row.data[dataField])));
31
+ var style = props.style,
32
+ initialData = props.initialData,
33
+ customClass = props.customClass,
34
+ skeletonize = props.skeletonize,
35
+ skeletonInRows = props.skeletonInRows,
36
+ skeletonInHeader = props.skeletonInHeader,
37
+ valuePropName = props.valuePropName,
38
+ labelPropName = props.labelPropName,
39
+ valuePropTitle = props.valuePropTitle,
40
+ labelPropTitle = props.labelPropTitle,
41
+ propHasChildren = props.propHasChildren,
42
+ onClickRowItem = props.onClickRowItem,
43
+ showHeaderTable = props.showHeaderTable,
44
+ onClickGetChildrens = props.onClickGetChildrens,
45
+ toolbarElements = props.toolbarElements;
46
+ var contextValue = (0, _extends2["default"])({}, props);
47
+ return /*#__PURE__*/_react["default"].createElement(_helpers.TreeTableContext.Provider, {
48
+ value: contextValue
49
+ }, /*#__PURE__*/_react["default"].createElement("div", {
50
+ className: "treetable-container"
51
+ }, /*#__PURE__*/_react["default"].createElement(_table["default"], {
52
+ hovered: true,
53
+ bordered: true,
54
+ headerColored: true,
55
+ condensed: true,
56
+ skeletonize: skeletonize,
57
+ skeletonInRows: skeletonInRows,
58
+ skeletonInHeader: skeletonInHeader
59
+ }, showHeaderTable && /*#__PURE__*/_react["default"].createElement(_table.THeader, null, /*#__PURE__*/_react["default"].createElement(_table.TRow, {
60
+ rowId: "header-table-id",
61
+ key: "header-table-key"
62
+ }, /*#__PURE__*/_react["default"].createElement(_table.Th, {
63
+ className: "first-column",
64
+ style: {
65
+ width: '50%'
160
66
  }
161
-
162
- if (props.tableColumns[0].isFixedWidth) {
163
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
164
- key: key,
165
- style: {
166
- width: "".concat(props.tableColumns[0].percentageWidth, "%")
167
- }
168
- }, /*#__PURE__*/_react["default"].createElement("span", {
169
- className: "button-expand-tree",
170
- style: {
171
- marginLeft: "".concat(row.rowLevel, "rem")
172
- }
173
- }, /*#__PURE__*/_react["default"].createElement("span", {
174
- className: "text-first-column"
175
- }, row.data[dataField])));
67
+ }, valuePropTitle || valuePropName), /*#__PURE__*/_react["default"].createElement(_table.Th, {
68
+ className: "another-columns",
69
+ style: {
70
+ width: '10%'
176
71
  }
177
-
178
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
179
- key: key
180
- }, /*#__PURE__*/_react["default"].createElement("span", {
181
- className: "button-expand-tree",
182
- style: {
183
- marginLeft: "".concat(row.rowLevel, "rem")
184
- }
185
- }, /*#__PURE__*/_react["default"].createElement("span", {
186
- className: "text-first-column"
187
- }, row.data[dataField])));
188
- };
189
-
190
- var generateDataRow = function generateDataRow(row) {
191
- var rowBody = [];
192
- var mapPerCell = props.tableColumns.map(function (column, index) {
193
- var outputCell = row.data[column.columnContent];
194
- var keyCell = "".concat(row.parentRowID, "-").concat(row.rowID, "-").concat(index);
195
-
196
- if (index === 0) {
197
- return generateDataColumn(row, keyCell, column.columnContent);
198
- }
199
-
200
- if (column.isFixedWidth) {
201
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
202
- key: keyCell,
203
- style: {
204
- width: "".concat(column.percentageWidth, "%")
205
- }
206
- }, outputCell);
207
- }
208
-
209
- return /*#__PURE__*/_react["default"].createElement(_table.Td, {
210
- key: keyCell
211
- }, outputCell);
212
- });
213
- rowBody.push(mapPerCell);
214
- return rowBody;
215
- };
216
-
217
- var generateTableHeader = function generateTableHeader() {
218
- var tableHeader = [];
219
-
220
- if (props.tableColumns) {
221
- tableHeader.push(props.tableColumns.map(function (column) {
222
- if (column.columnTitle) {
223
- return /*#__PURE__*/_react["default"].createElement(_table.Th, {
224
- key: column.columnTitle,
225
- style: {
226
- width: "".concat(column.percentageWidth, "%")
227
- }
228
- }, column.columnTitle);
229
- }
230
-
231
- return /*#__PURE__*/_react["default"].createElement(_table.Th, {
232
- key: column.columnContent,
233
- style: {
234
- width: "".concat(column.percentageWidth, "%")
235
- }
236
- }, column.columnContent);
237
- }));
72
+ }), /*#__PURE__*/_react["default"].createElement(_table.Th, {
73
+ className: "another-columns",
74
+ style: {
75
+ width: '40%'
238
76
  }
239
-
240
- return tableHeader;
241
- };
242
-
243
- var generateTableBody = function generateTableBody(dataBody) {
244
- var tableBody = [];
245
- dataBody.forEach(function (row) {
246
- var cellRow = generateDataRow(row);
247
- var keyRow = "".concat(row.parentRowID, "-").concat(row.rowID);
248
- var isVisibleRow = row.visible ? 'show-tr' : 'hidden-tr';
249
-
250
- var tr = /*#__PURE__*/_react["default"].createElement("tr", {
251
- className: isVisibleRow,
252
- key: keyRow
253
- }, cellRow);
254
-
255
- tableBody.push(tr);
256
-
257
- if (row.children) {
258
- tableBody.push.apply(tableBody, _toConsumableArray(generateTableBody(row.children)));
259
- }
260
- });
261
- return tableBody;
262
- };
263
-
264
- return /*#__PURE__*/_react["default"].createElement("div", null, /*#__PURE__*/_react["default"].createElement(_buttons.PrimaryButton, {
265
- label: treeExpanded ? 'Recolher todos' : 'Expandir todos',
266
- onClick: expandOrCollapseAll,
267
- customClass: "button-expand-or-collapse-all",
268
- visible: props.showButtonExpandedOrCollapseAll
269
- }), /*#__PURE__*/_react["default"].createElement(_table["default"], {
270
- className: "table-content"
271
- }, /*#__PURE__*/_react["default"].createElement(_table.THeader, null, /*#__PURE__*/_react["default"].createElement(_table.TRow, null, generateTableHeader())), /*#__PURE__*/_react["default"].createElement(_table.TBody, null, generateTableBody(data))));
77
+ }, labelPropTitle || labelPropName))), /*#__PURE__*/_react["default"].createElement(_table.TBody, null, initialData.map(function (item) {
78
+ return /*#__PURE__*/_react["default"].createElement(_TRow["default"], (0, _extends2["default"])({}, item, {
79
+ key: item.id,
80
+ id: item.id,
81
+ customClass: customClass,
82
+ style: style,
83
+ label: item[labelPropName],
84
+ content: item[valuePropName],
85
+ hasChildren: item[propHasChildren] !== null || undefined,
86
+ onClickRow: onClickRowItem,
87
+ getChildrens: onClickGetChildrens,
88
+ toolbarElements: toolbarElements
89
+ }));
90
+ })))));
272
91
  };
273
92
 
274
93
  TreeTable.propTypes = {
275
- dataTable: _propTypes["default"].arrayOf(_propTypes["default"].shape({
276
- data: _propTypes["default"].object,
277
- children: _propTypes["default"].arrayOf(_propTypes["default"].object)
278
- })).isRequired,
279
- tableColumns: _propTypes["default"].arrayOf(_propTypes["default"].shape({
280
- // styles: PropTypes.object,
281
- columnTitle: _propTypes["default"].string.isRequired,
282
- columnContent: _propTypes["default"].string.isRequired,
283
- isFixedWidth: _propTypes["default"].bool,
284
- percentageWidth: _propTypes["default"].number
285
- })),
286
- showButtonExpandedOrCollapseAll: _propTypes["default"].bool
94
+ style: _propTypes["default"].object,
95
+ initialData: _propTypes["default"].arrayOf(_propTypes["default"].object).isRequired,
96
+ customClass: _propTypes["default"].string,
97
+ skeletonize: _propTypes["default"].bool,
98
+ skeletonInRows: _propTypes["default"].number,
99
+ skeletonInHeader: _propTypes["default"].bool,
100
+ valuePropName: _propTypes["default"].string.isRequired,
101
+ labelPropName: _propTypes["default"].string.isRequired,
102
+ valuePropTitle: _propTypes["default"].string,
103
+ labelPropTitle: _propTypes["default"].string,
104
+ propHasChildren: _propTypes["default"].string.isRequired,
105
+ showHeaderTable: _propTypes["default"].bool,
106
+ onClickRowItem: _propTypes["default"].func,
107
+ onClickGetChildrens: _propTypes["default"].func.isRequired,
108
+ toolbarElements: _propTypes["default"].arrayOf(_propTypes["default"].element)
287
109
  };
288
110
  TreeTable.defaultProps = {
289
- tableColumns: [{
290
- // styles: {},
291
- isFixedWidth: false,
292
- percentageWidth: 0
293
- }],
294
- showButtonExpandedOrCollapseAll: false
111
+ style: undefined,
112
+ skeletonize: false,
113
+ skeletonInRows: undefined,
114
+ skeletonInHeader: false,
115
+ customClass: undefined,
116
+ onClickRowItem: undefined,
117
+ valuePropTitle: undefined,
118
+ labelPropTitle: undefined,
119
+ showHeaderTable: true,
120
+ toolbarElements: undefined
295
121
  };
296
122
  var _default = TreeTable;
297
123
  exports["default"] = _default;