flipper-ui 0.30.10 → 0.31.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 (194) hide show
  1. package/core/context/theme-provider/index.d.ts +3 -2
  2. package/core/context/theme-provider/index.js +1 -1
  3. package/core/data-display/advertise/index.d.ts +3 -2
  4. package/core/data-display/advertise/index.js +3 -3
  5. package/core/data-display/avatar/index.d.ts +3 -2
  6. package/core/data-display/avatar/index.js +1 -1
  7. package/core/data-display/badge/index.d.ts +3 -2
  8. package/core/data-display/badge/index.js +1 -1
  9. package/core/data-display/chapter/index.d.ts +4 -3
  10. package/core/data-display/chapter/index.js +2 -2
  11. package/core/data-display/chip/index.d.ts +2 -2
  12. package/core/data-display/chip/index.js +1 -1
  13. package/core/data-display/data-table/data-table-action.d.ts +2 -1
  14. package/core/data-display/data-table/data-table-field.d.ts +22 -0
  15. package/core/data-display/data-table/data-table-field.js +131 -0
  16. package/core/data-display/data-table/data-table-pagination-actions.d.ts +2 -1
  17. package/core/data-display/data-table/data-table-pagination-actions.js +13 -13
  18. package/core/data-display/data-table/data-table-query-paginated.d.ts +5 -4
  19. package/core/data-display/data-table/data-table-query-paginated.js +8 -8
  20. package/core/data-display/data-table/data-table.d.ts +18 -4
  21. package/core/data-display/data-table/data-table.js +65 -14
  22. package/core/data-display/data-table/data-table.stories.d.ts +1 -0
  23. package/core/data-display/data-table/index.d.ts +1 -0
  24. package/core/data-display/data-table/index.js +8 -1
  25. package/core/data-display/data-table/rows.d.ts +2 -1
  26. package/core/data-display/data-table/rows.js +12 -12
  27. package/core/data-display/data-table/types.d.ts +2 -2
  28. package/core/data-display/data-table/use-paginated.d.ts +1 -1
  29. package/core/data-display/data-table/use-paginated.js +1 -1
  30. package/core/data-display/data-table/use-rows-state.d.ts +1 -1
  31. package/core/data-display/data-table/use-rows-state.js +1 -1
  32. package/core/data-display/divider/index.d.ts +2 -2
  33. package/core/data-display/divider/index.js +1 -1
  34. package/core/data-display/editable-table/index.d.ts +3 -2
  35. package/core/data-display/editable-table/index.js +19 -19
  36. package/core/data-display/fab/index.d.ts +5 -4
  37. package/core/data-display/fab/index.js +1 -1
  38. package/core/data-display/line/index.d.ts +1 -1
  39. package/core/data-display/list/index.d.ts +1 -1
  40. package/core/data-display/list/index.js +1 -1
  41. package/core/data-display/list-item/index.d.ts +5 -4
  42. package/core/data-display/list-item/index.js +1 -1
  43. package/core/data-display/menu-item/index.d.ts +7 -6
  44. package/core/data-display/menu-item/index.js +1 -1
  45. package/core/data-display/node/index.d.ts +1 -1
  46. package/core/data-display/node/index.js +8 -5
  47. package/core/data-display/table/index.d.ts +2 -2
  48. package/core/data-display/table/index.js +1 -1
  49. package/core/data-display/table/table-body.d.ts +1 -1
  50. package/core/data-display/table/table-body.js +1 -1
  51. package/core/data-display/table/table-cell.d.ts +5 -5
  52. package/core/data-display/table/table-cell.js +3 -3
  53. package/core/data-display/table/table-head.d.ts +2 -2
  54. package/core/data-display/table/table-head.js +1 -1
  55. package/core/data-display/table/table-row.d.ts +4 -3
  56. package/core/data-display/table/table.stories.d.ts +1 -1
  57. package/core/data-display/tree/index.js +5 -5
  58. package/core/data-display/typography/index.d.ts +2 -2
  59. package/core/data-display/typography/typography.stories.d.ts +1 -1
  60. package/core/feedback/collapse/index.d.ts +3 -2
  61. package/core/feedback/collapse/index.js +1 -1
  62. package/core/feedback/dialog/index.d.ts +4 -3
  63. package/core/feedback/dialog/index.js +1 -1
  64. package/core/feedback/fade/index.d.ts +3 -2
  65. package/core/feedback/fade/index.js +1 -1
  66. package/core/feedback/grow/index.d.ts +3 -2
  67. package/core/feedback/grow/index.js +1 -1
  68. package/core/feedback/progress/index.d.ts +1 -1
  69. package/core/feedback/progress/index.js +1 -1
  70. package/core/feedback/slide/index.d.ts +3 -2
  71. package/core/feedback/slide/index.js +1 -1
  72. package/core/feedback/snackbar/index.d.ts +4 -3
  73. package/core/feedback/snackbar/index.js +1 -1
  74. package/core/feedback/tooltip/index.d.ts +4 -3
  75. package/core/feedback/tooltip/index.js +1 -1
  76. package/core/feedback/validation-dialog/index.d.ts +5 -5
  77. package/core/feedback/validation-dialog/index.js +8 -8
  78. package/core/feedback/zoom/index.d.ts +3 -2
  79. package/core/feedback/zoom/index.js +1 -1
  80. package/core/inputs/auto-complete/index.d.ts +3 -2
  81. package/core/inputs/auto-complete/index.js +4 -4
  82. package/core/inputs/button/index.d.ts +4 -3
  83. package/core/inputs/button/index.js +1 -1
  84. package/core/inputs/checkbox/index.d.ts +5 -4
  85. package/core/inputs/checkbox/index.js +1 -1
  86. package/core/inputs/chip-field/index.d.ts +4 -3
  87. package/core/inputs/chip-field/index.js +1 -1
  88. package/core/inputs/date-time/index.d.ts +9 -8
  89. package/core/inputs/date-time/index.js +2 -2
  90. package/core/inputs/icon-button/index.d.ts +3 -2
  91. package/core/inputs/icon-button/index.js +1 -1
  92. package/core/inputs/input-adornment/index.d.ts +3 -3
  93. package/core/inputs/input-adornment/index.js +1 -1
  94. package/core/inputs/input-base/index.d.ts +4 -3
  95. package/core/inputs/input-base/index.js +1 -1
  96. package/core/inputs/mask-field/index.d.ts +4 -3
  97. package/core/inputs/mask-field/index.js +2 -2
  98. package/core/inputs/pin-input/index.d.ts +3 -2
  99. package/core/inputs/pin-input/index.js +7 -7
  100. package/core/inputs/radio/index.d.ts +4 -3
  101. package/core/inputs/radio/index.js +1 -1
  102. package/core/inputs/radio-group/index.d.ts +3 -2
  103. package/core/inputs/radio-group/index.js +1 -1
  104. package/core/inputs/select/index.d.ts +5 -4
  105. package/core/inputs/select/index.js +5 -5
  106. package/core/inputs/slider/index.d.ts +2 -2
  107. package/core/inputs/text-field/index.d.ts +8 -7
  108. package/core/inputs/text-field/index.js +9 -9
  109. package/core/navigation/breadcrumb/breadcrumb.stories.d.ts +1 -1
  110. package/core/navigation/breadcrumb/index.d.ts +1 -1
  111. package/core/navigation/drawer/index.d.ts +2 -2
  112. package/core/navigation/drawer/index.js +1 -1
  113. package/core/navigation/menu/index.d.ts +2 -2
  114. package/core/navigation/menu/index.js +1 -1
  115. package/core/navigation/pagination/index.d.ts +1 -1
  116. package/core/navigation/pagination/index.js +5 -5
  117. package/core/navigation/sidebar/index.d.ts +2 -2
  118. package/core/navigation/sidebar/index.js +3 -3
  119. package/core/navigation/stepper/index.d.ts +1 -1
  120. package/core/navigation/stepper/index.js +5 -2
  121. package/core/navigation/tab/index.d.ts +1 -1
  122. package/core/navigation/tab/index.js +2 -2
  123. package/core/navigation/tabs/index.d.ts +3 -2
  124. package/core/navigation/tabs/index.js +1 -1
  125. package/core/surfaces/box/index.d.ts +2 -1
  126. package/core/surfaces/box/index.js +2 -2
  127. package/core/surfaces/card/index.d.ts +7 -7
  128. package/core/surfaces/card/index.js +1 -1
  129. package/core/surfaces/container/index.d.ts +1 -1
  130. package/core/surfaces/content/index.d.ts +1 -1
  131. package/core/surfaces/expansion-panel/index.d.ts +7 -6
  132. package/core/surfaces/expansion-panel/index.js +6 -6
  133. package/core/surfaces/header/index.d.ts +2 -2
  134. package/core/surfaces/header/index.js +1 -1
  135. package/core/surfaces/paper/index.d.ts +1 -1
  136. package/core/surfaces/paper/index.js +1 -1
  137. package/core/surfaces/step-card/index.d.ts +12 -11
  138. package/core/surfaces/step-card/index.js +2 -2
  139. package/core/surfaces/step-card/step-card-details.d.ts +1 -1
  140. package/core/surfaces/step-card/step-card-details.js +4 -4
  141. package/core/surfaces/step-card/step-card-panel.d.ts +3 -2
  142. package/core/surfaces/step-card/step-card-panel.js +6 -6
  143. package/core/surfaces/step-card/step-card-skeleton.d.ts +3 -2
  144. package/core/surfaces/step-card/step-card-skeleton.js +1 -1
  145. package/core/surfaces/step-card/styles.js +2 -3
  146. package/core/types.d.ts +2 -2
  147. package/experimental/actions/index.d.ts +1 -1
  148. package/experimental/actions/index.js +1 -1
  149. package/experimental/avatar/index.d.ts +2 -1
  150. package/experimental/avatar/index.js +2 -2
  151. package/experimental/breadcrumbs/index.d.ts +2 -1
  152. package/experimental/breadcrumbs/index.js +1 -1
  153. package/experimental/button/index.d.ts +1 -1
  154. package/experimental/button/index.js +3 -3
  155. package/experimental/card/index.d.ts +6 -11
  156. package/experimental/card/index.js +2 -2
  157. package/experimental/dialog/confirm-dialog.js +4 -4
  158. package/experimental/dialog/dialog.d.ts +2 -1
  159. package/experimental/dialog/remove-dialog.js +3 -3
  160. package/experimental/fab/fab-wrapper.d.ts +2 -1
  161. package/experimental/fab/fab.d.ts +1 -1
  162. package/experimental/loading/index.js +1 -1
  163. package/experimental/nothing-found/index.d.ts +1 -1
  164. package/experimental/nothing-found/index.js +1 -1
  165. package/experimental/panel/index.d.ts +4 -3
  166. package/experimental/panel/index.js +1 -1
  167. package/experimental/sidebar/index.d.ts +2 -1
  168. package/experimental/sidebar/index.js +4 -4
  169. package/experimental/skeleton/index.d.ts +1 -1
  170. package/experimental/visibility-icon/index.js +2 -2
  171. package/package.json +35 -37
  172. package/test/mocks/data-table-hidden-mock.js +8 -8
  173. package/test/mocks/data-table-mock.js +8 -8
  174. package/test/mocks/date-time-mock.d.ts +1 -1
  175. package/test/mocks/date-time-mock.js +3 -3
  176. package/test/mocks/editable-table-date-mock.d.ts +1 -1
  177. package/test/mocks/editable-table-date-mock.js +2 -3
  178. package/test/mocks/editable-table-mock.d.ts +1 -1
  179. package/test/mocks/editable-table-mock.js +4 -5
  180. package/test/mocks/pin-input-mock.d.ts +1 -1
  181. package/test/mocks/pin-input-mock.js +4 -4
  182. package/test/mocks/radio-group-mock.d.ts +1 -1
  183. package/test/mocks/radio-group-mock.js +2 -2
  184. package/test/mocks/select-mock.d.ts +1 -1
  185. package/test/mocks/select-mock.js +4 -4
  186. package/test/mocks/snackbar-mock.d.ts +1 -1
  187. package/test/mocks/snackbar-mock.js +1 -1
  188. package/test/mocks/step-card-mock.d.ts +1 -1
  189. package/test/mocks/step-card-mock.js +2 -2
  190. package/test/mocks/text-field-mock.d.ts +1 -1
  191. package/test/mocks/text-field-mock.js +3 -3
  192. package/test/mocks/text-field-options-mock.d.ts +1 -1
  193. package/test/mocks/text-field-options-mock.js +2 -2
  194. package/theme/colors.d.ts +1 -1
@@ -1,8 +1,9 @@
1
- import { ThemeOptions } from '@material-ui/core/styles';
2
1
  import React from 'react';
2
+ import type { ReactNode } from 'react';
3
+ import type { ThemeOptions } from '@material-ui/core/styles';
3
4
  interface ThemeProviderProps {
4
5
  options?: ThemeOptions;
5
- children: React.ReactNode;
6
+ children: ReactNode;
6
7
  }
7
8
  declare const ThemeProviderFlipper: ({ options, children }: ThemeProviderProps) => React.JSX.Element;
8
9
  export default ThemeProviderFlipper;
@@ -5,8 +5,8 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports["default"] = void 0;
8
- var _styles = require("@material-ui/core/styles");
9
8
  var _react = _interopRequireDefault(require("react"));
9
+ var _styles = require("@material-ui/core/styles");
10
10
  var ThemeProviderFlipper = function ThemeProviderFlipper(_ref) {
11
11
  var _ref$options = _ref.options,
12
12
  options = _ref$options === void 0 ? {} : _ref$options,
@@ -1,4 +1,5 @@
1
1
  import React from 'react';
2
+ import type { CSSProperties } from 'react';
2
3
  import type { DefaultProps } from '../../types';
3
4
  export interface AdvertiseProps extends DefaultProps {
4
5
  /**
@@ -13,12 +14,12 @@ export interface AdvertiseProps extends DefaultProps {
13
14
  * The style of the comment
14
15
  * @optional
15
16
  */
16
- commentStyle?: React.CSSProperties;
17
+ commentStyle?: CSSProperties;
17
18
  /**
18
19
  * The style of the author
19
20
  * @optional
20
21
  */
21
- authorStyle?: React.CSSProperties;
22
+ authorStyle?: CSSProperties;
22
23
  }
23
24
  declare const Advertise: ({ comment, author, padding, commentStyle, authorStyle, ...otherProps }: AdvertiseProps) => React.JSX.Element;
24
25
  export default Advertise;
@@ -11,8 +11,8 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
11
11
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
12
  var _react = _interopRequireDefault(require("react"));
13
13
  var _styledComponents = _interopRequireDefault(require("styled-components"));
14
+ var _typography = require("../typography");
14
15
  var _paper = _interopRequireDefault(require("../../surfaces/paper"));
15
- var _typography = _interopRequireDefault(require("../typography"));
16
16
  var _theme = require("../../../theme");
17
17
  var _excluded = ["comment", "author", "padding", "commentStyle", "authorStyle"];
18
18
  var _templateObject;
@@ -37,11 +37,11 @@ var Advertise = function Advertise(_ref) {
37
37
  otherProps = (0, _objectWithoutProperties2["default"])(_ref, _excluded);
38
38
  return /*#__PURE__*/_react["default"].createElement(Paper, (0, _extends2["default"])({
39
39
  padding: padding
40
- }, otherProps), /*#__PURE__*/_react["default"].createElement(_typography["default"], {
40
+ }, otherProps), /*#__PURE__*/_react["default"].createElement(_typography.Typography, {
41
41
  margin: "0 12px",
42
42
  padding: "6px 18px",
43
43
  style: _objectSpread(_objectSpread({}, styles.border), commentStyle)
44
- }, comment), /*#__PURE__*/_react["default"].createElement(_typography["default"], {
44
+ }, comment), /*#__PURE__*/_react["default"].createElement(_typography.Typography, {
45
45
  margin: "0px 12px",
46
46
  padding: "6px 18px",
47
47
  variant: "caption",
@@ -1,12 +1,13 @@
1
- import { AvatarProps as MuiAvatarProps } from '@material-ui/core';
2
1
  import React from 'react';
2
+ import type { ReactNode } from 'react';
3
3
  import type { DefaultProps } from '../../types';
4
+ import type { AvatarProps as MuiAvatarProps } from '@material-ui/core';
4
5
  export interface AvatarProps extends DefaultProps, MuiAvatarProps {
5
6
  /**
6
7
  * If true, the avatar will have a primary color background.
7
8
  */
8
9
  primary?: boolean;
9
- children?: React.ReactNode;
10
+ children?: ReactNode;
10
11
  'data-testid'?: string;
11
12
  }
12
13
  export declare const Avatar: ({ children, primary, className, ...otherProps }: AvatarProps) => React.JSX.Element;
@@ -7,9 +7,9 @@ Object.defineProperty(exports, "__esModule", {
7
7
  exports["default"] = exports.Avatar = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
+ var _react = _interopRequireDefault(require("react"));
10
11
  var _Avatar = _interopRequireDefault(require("@material-ui/core/Avatar"));
11
12
  var _styles = require("@material-ui/core/styles");
12
- var _react = _interopRequireDefault(require("react"));
13
13
  var _excluded = ["children", "primary", "className"];
14
14
  var useStyles = (0, _styles.makeStyles)(function (theme) {
15
15
  return (0, _styles.createStyles)({
@@ -1,8 +1,9 @@
1
1
  import React from 'react';
2
- import { BadgeProps as MuiBadgeProps } from '@material-ui/core/Badge';
2
+ import type { ReactNode } from 'react';
3
3
  import type { DefaultProps } from '../../types';
4
+ import type { BadgeProps as MuiBadgeProps } from '@material-ui/core/Badge';
4
5
  export interface BadgeProps extends DefaultProps, MuiBadgeProps {
5
- children: React.ReactNode;
6
+ children: ReactNode;
6
7
  /**
7
8
  * The number to display in the badge.
8
9
  */
@@ -8,8 +8,8 @@ exports["default"] = exports.Badge = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
- var _Badge = _interopRequireDefault(require("@material-ui/core/Badge"));
12
11
  var _react = _interopRequireDefault(require("react"));
12
+ var _Badge = _interopRequireDefault(require("@material-ui/core/Badge"));
13
13
  var _styles = require("@material-ui/core/styles");
14
14
  var _excluded = ["children", "counter", "padding", "margin", "position", "style"];
15
15
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -1,5 +1,6 @@
1
- import React, { CSSProperties } from 'react';
2
- import { DefaultProps } from '../../types';
1
+ import React from 'react';
2
+ import type { CSSProperties, ReactNode } from 'react';
3
+ import type { DefaultProps } from '../../types';
3
4
  import type { TypographyProps } from '@material-ui/core/Typography';
4
5
  export interface LineProps extends DefaultProps {
5
6
  /**
@@ -21,7 +22,7 @@ export interface LineProps extends DefaultProps {
21
22
  /**
22
23
  * The children of the component.
23
24
  */
24
- children?: React.ReactNode;
25
+ children?: ReactNode;
25
26
  'data-testid'?: string;
26
27
  }
27
28
  export declare const Chapter: ({ padding, margin, style, childrenStyle, children, variant, primary, ...otherProps }: LineProps) => React.JSX.Element;
@@ -11,7 +11,7 @@ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/h
11
11
  var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
12
12
  var _react = _interopRequireDefault(require("react"));
13
13
  var _styledComponents = _interopRequireDefault(require("styled-components"));
14
- var _typography = _interopRequireDefault(require("../typography"));
14
+ var _typography = require("../typography");
15
15
  var _theme = require("../../../theme");
16
16
  var _excluded = ["padding", "margin", "style", "childrenStyle", "children", "variant", "primary"];
17
17
  var _templateObject, _templateObject2;
@@ -41,7 +41,7 @@ var Chapter = exports.Chapter = function Chapter(_ref) {
41
41
  };
42
42
  return /*#__PURE__*/_react["default"].createElement(Container, otherProps, /*#__PURE__*/_react["default"].createElement(Line, {
43
43
  primary: primary
44
- }), /*#__PURE__*/_react["default"].createElement(_typography["default"], {
44
+ }), /*#__PURE__*/_react["default"].createElement(_typography.Typography, {
45
45
  variant: variant,
46
46
  style: _objectSpread({}, childrenStyle)
47
47
  }, children), /*#__PURE__*/_react["default"].createElement(Line, {
@@ -1,6 +1,6 @@
1
- import { ChipProps as MuiChipProps } from '@material-ui/core';
2
1
  import React from 'react';
3
- import { DefaultProps } from '../../types';
2
+ import type { DefaultProps } from '../../types';
3
+ import type { ChipProps as MuiChipProps } from '@material-ui/core';
4
4
  export interface IChipProps extends MuiChipProps, Omit<DefaultProps, 'children'> {
5
5
  /**
6
6
  * If `true`, the chip will be squared.
@@ -8,9 +8,9 @@ exports["default"] = exports.Chip = void 0;
8
8
  var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
10
  var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
11
+ var _react = _interopRequireDefault(require("react"));
11
12
  var _Chip = _interopRequireDefault(require("@material-ui/core/Chip"));
12
13
  var _styles = require("@material-ui/core/styles");
13
- var _react = _interopRequireDefault(require("react"));
14
14
  var _excluded = ["square", "padding", "margin", "style"];
15
15
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
16
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
@@ -1,4 +1,5 @@
1
- import React, { ReactNode } from 'react';
1
+ import type { ReactNode } from 'react';
2
+ import React from 'react';
2
3
  export type DataTableActionProps = {
3
4
  label: string;
4
5
  children: ReactNode;
@@ -0,0 +1,22 @@
1
+ import React from 'react';
2
+ import type { Dispatch, SetStateAction } from 'react';
3
+ interface IHeader {
4
+ title: string;
5
+ field: string;
6
+ type?: string;
7
+ editable?: boolean;
8
+ }
9
+ interface ITable<D extends Record<string, unknown>> {
10
+ rows: D[];
11
+ setRows: Dispatch<SetStateAction<D[]>>;
12
+ header: IHeader[];
13
+ checkbox?: boolean;
14
+ checkboxProps?: {
15
+ checkRow?: boolean[];
16
+ checkAllRows?: boolean;
17
+ setSelectedRow?: Dispatch<SetStateAction<boolean[]>>;
18
+ setSelectedAllRows?: Dispatch<SetStateAction<boolean>>;
19
+ };
20
+ }
21
+ export declare const DataTableField: <D extends Record<string, unknown>>(props: ITable<D>) => React.JSX.Element;
22
+ export {};
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.DataTableField = void 0;
8
+ var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
9
+ var _taggedTemplateLiteral2 = _interopRequireDefault(require("@babel/runtime/helpers/taggedTemplateLiteral"));
10
+ var _react = _interopRequireDefault(require("react"));
11
+ var _material = require("@mui/material");
12
+ var _styledComponents = _interopRequireDefault(require("styled-components"));
13
+ var _ = require("../../..");
14
+ var _templateObject, _templateObject2; // eslint-disable-next-line @typescript-eslint/consistent-type-imports
15
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
16
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { (0, _defineProperty2["default"])(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
17
+ var TableCellRows = (0, _styledComponents["default"])(_material.TableCell)(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n && {\n width: 400px;\n height: 60px;\n padding: 0 10px;\n }\n"])));
18
+ var RowTable = (0, _styledComponents["default"])(_material.TableRow)(_templateObject2 || (_templateObject2 = (0, _taggedTemplateLiteral2["default"])(["\n width: 100%;\n cursor: pointer;\n\n &:hover {\n background: -moz-linear-gradient(\n left,\n rgba(189, 189, 189, 0) 0%,\n rgba(189, 189, 189, 1) 100%\n );\n background: -webkit-linear-gradient(\n left,\n rgba(189, 189, 189, 0) 0%,\n rgba(189, 189, 189, 1) 100%\n );\n background: linear-gradient(\n to right,\n rgba(189, 189, 189, 0) 0%,\n rgba(189, 189, 189, 1) 100%\n );\n }\n\n &.no-hover {\n background: none;\n }\n"])));
19
+ var DataTableField = exports.DataTableField = function DataTableField(props) {
20
+ var rows = props.rows,
21
+ header = props.header,
22
+ checkbox = props.checkbox,
23
+ checkboxProps = props.checkboxProps,
24
+ setRows = props.setRows;
25
+ var handleFieldChange = function handleFieldChange(event, fieldName, rowIndex, setRows) {
26
+ var value = event.target.value;
27
+ setRows(function (prevRows) {
28
+ var updatedRows = prevRows.map(function (row, i) {
29
+ if (i === rowIndex) {
30
+ return _objectSpread(_objectSpread({}, row), {}, (0, _defineProperty2["default"])({}, fieldName, value));
31
+ }
32
+ return row;
33
+ });
34
+ return updatedRows;
35
+ });
36
+ };
37
+ var handleSelectCheckbox = function handleSelectCheckbox(index, setSelected, setSelectedAll) {
38
+ setSelected(function (state) {
39
+ var newState = state.map(function (row, i) {
40
+ return index === i ? !row : row;
41
+ });
42
+ if (newState.includes(false)) {
43
+ setSelectedAll(false);
44
+ }
45
+ if (newState.every(function (item) {
46
+ return item === true;
47
+ })) {
48
+ setSelectedAll(true);
49
+ }
50
+ return newState;
51
+ });
52
+ };
53
+ var handleSelectAllCheckbox = function handleSelectAllCheckbox(setSelected, setSelectedAll) {
54
+ setSelectedAll(function (selectedAll) {
55
+ return !selectedAll;
56
+ });
57
+ setSelected(function (state) {
58
+ return state.map(function () {
59
+ return checkboxProps !== undefined ? !checkboxProps.checkAllRows : false;
60
+ });
61
+ });
62
+ };
63
+ var handleSelect = function handleSelect(index) {
64
+ if (checkboxProps !== null && checkboxProps !== void 0 && checkboxProps.setSelectedRow && checkboxProps.setSelectedAllRows) {
65
+ handleSelectCheckbox(index, checkboxProps.setSelectedRow, checkboxProps.setSelectedAllRows);
66
+ }
67
+ };
68
+ var handleTableRow = function handleTableRow(event, index) {
69
+ var isCheckboxClick = event.target.closest('input[type="checkbox"]') !== null;
70
+ if (!isCheckboxClick && (!(checkboxProps !== null && checkboxProps !== void 0 && checkboxProps.checkRow) || !checkboxProps.checkRow[index])) {
71
+ handleSelect(index);
72
+ }
73
+ };
74
+ var tableBody = function tableBody(rows, header) {
75
+ return rows.map(function (row, index) {
76
+ var _checkboxProps$checkR2;
77
+ var columns = header.map(function (column, i) {
78
+ if (Object.keys(row).includes(column.field)) {
79
+ var _checkboxProps$checkR;
80
+ return /*#__PURE__*/_react["default"].createElement(TableCellRows, {
81
+ key: i,
82
+ align: "center"
83
+ }, column.editable && checkboxProps !== null && checkboxProps !== void 0 && checkboxProps.checkRow && checkboxProps.checkRow[index] ? /*#__PURE__*/_react["default"].createElement(_.TextField, {
84
+ fullWidth: true,
85
+ key: "".concat(column.field, "-").concat(i),
86
+ type: column.type,
87
+ value: row[column.field] || '',
88
+ onClick: function onClick(event) {
89
+ return event.stopPropagation();
90
+ },
91
+ onChange: function onChange(event) {
92
+ return handleFieldChange(event, column.field, index, setRows);
93
+ }
94
+ }) : /*#__PURE__*/_react["default"].createElement("span", null, column.editable ? checkboxProps !== null && checkboxProps !== void 0 && (_checkboxProps$checkR = checkboxProps.checkRow) !== null && _checkboxProps$checkR !== void 0 && _checkboxProps$checkR[index] ? row[column.field] : '' : row[column.field]));
95
+ }
96
+ return;
97
+ });
98
+ return /*#__PURE__*/_react["default"].createElement(RowTable, {
99
+ key: index,
100
+ className: checkboxProps !== null && checkboxProps !== void 0 && checkboxProps.checkRow && checkboxProps.checkRow[index] ? 'no-hover' : '',
101
+ onClick: function onClick(event) {
102
+ return handleTableRow(event, index);
103
+ }
104
+ }, checkbox && /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
105
+ padding: "checkbox"
106
+ }, /*#__PURE__*/_react["default"].createElement(_material.Checkbox, {
107
+ color: "primary",
108
+ checked: (checkboxProps === null || checkboxProps === void 0 || (_checkboxProps$checkR2 = checkboxProps.checkRow) === null || _checkboxProps$checkR2 === void 0 ? void 0 : _checkboxProps$checkR2[index]) !== undefined ? checkboxProps.checkRow[index] : false,
109
+ onChange: function onChange() {
110
+ return handleSelect(index);
111
+ }
112
+ })), columns);
113
+ });
114
+ };
115
+ return /*#__PURE__*/_react["default"].createElement(_material.Table, null, /*#__PURE__*/_react["default"].createElement(_material.TableHead, null, checkbox && /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
116
+ padding: "checkbox"
117
+ }, /*#__PURE__*/_react["default"].createElement(_material.Checkbox, {
118
+ color: "primary",
119
+ checked: (checkboxProps === null || checkboxProps === void 0 ? void 0 : checkboxProps.checkAllRows) !== undefined ? checkboxProps.checkAllRows : false,
120
+ onChange: function onChange() {
121
+ if (checkboxProps !== null && checkboxProps !== void 0 && checkboxProps.setSelectedRow && checkboxProps.setSelectedAllRows) {
122
+ handleSelectAllCheckbox(checkboxProps.setSelectedRow, checkboxProps.setSelectedAllRows);
123
+ }
124
+ }
125
+ })), header.map(function (item, i) {
126
+ return /*#__PURE__*/_react["default"].createElement(_material.TableCell, {
127
+ key: i,
128
+ align: "center"
129
+ }, item.title);
130
+ })), /*#__PURE__*/_react["default"].createElement(_material.TableBody, null, tableBody(rows, header)));
131
+ };
@@ -1,9 +1,10 @@
1
1
  import React from 'react';
2
+ import type { MouseEvent } from 'react';
2
3
  interface DataTablePaginationActionsProps {
3
4
  count: number;
4
5
  page: number;
5
6
  rowsPerPage: number;
6
- onPageChange(event: React.MouseEvent<HTMLButtonElement>, newPage: number): void;
7
+ onPageChange(event: MouseEvent<HTMLButtonElement>, newPage: number): void;
7
8
  }
8
9
  interface DataTablePaginationActionsBuilder {
9
10
  showFirstButton?: boolean;
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  });
7
7
  exports.makeDataTablePaginationActions = void 0;
8
8
  var _react = _interopRequireDefault(require("react"));
9
- var _iconButton = _interopRequireDefault(require("../../inputs/icon-button"));
9
+ var _iconButton = require("../../inputs/icon-button");
10
10
  var _icons = require("../../../icons");
11
11
  var PAGINATION_WRAPPER_STYLE = {
12
12
  display: 'flex',
@@ -36,22 +36,22 @@ var makeDataTablePaginationActions = exports.makeDataTablePaginationActions = fu
36
36
  };
37
37
  return /*#__PURE__*/_react["default"].createElement("div", {
38
38
  style: PAGINATION_WRAPPER_STYLE
39
- }, showFirstButton && /*#__PURE__*/_react["default"].createElement(_iconButton["default"], {
40
- onClick: handleFirstPageButtonClick,
39
+ }, showFirstButton && /*#__PURE__*/_react["default"].createElement(_iconButton.IconButton, {
41
40
  disabled: page === 0 || clickable,
42
- "aria-label": "first page"
43
- }, /*#__PURE__*/_react["default"].createElement(_icons.FirstPage, null)), /*#__PURE__*/_react["default"].createElement(_iconButton["default"], {
44
- onClick: handleBackButtonClick,
41
+ "aria-label": "first page",
42
+ onClick: handleFirstPageButtonClick
43
+ }, /*#__PURE__*/_react["default"].createElement(_icons.FirstPage, null)), /*#__PURE__*/_react["default"].createElement(_iconButton.IconButton, {
45
44
  disabled: page === 0 || clickable,
46
- "aria-label": "previous page"
47
- }, /*#__PURE__*/_react["default"].createElement(_icons.KeyboardArrowLeft, null)), /*#__PURE__*/_react["default"].createElement(_iconButton["default"], {
48
- onClick: handleNextButtonClick,
45
+ "aria-label": "previous page",
46
+ onClick: handleBackButtonClick
47
+ }, /*#__PURE__*/_react["default"].createElement(_icons.KeyboardArrowLeft, null)), /*#__PURE__*/_react["default"].createElement(_iconButton.IconButton, {
49
48
  disabled: page >= totalPages || clickable,
50
- "aria-label": "next page"
51
- }, /*#__PURE__*/_react["default"].createElement(_icons.KeyboardArrowRight, null)), showLastButton && /*#__PURE__*/_react["default"].createElement(_iconButton["default"], {
52
- onClick: handleLastPageButtonClick,
49
+ "aria-label": "next page",
50
+ onClick: handleNextButtonClick
51
+ }, /*#__PURE__*/_react["default"].createElement(_icons.KeyboardArrowRight, null)), showLastButton && /*#__PURE__*/_react["default"].createElement(_iconButton.IconButton, {
53
52
  disabled: page >= totalPages || clickable,
54
- "aria-label": "last page"
53
+ "aria-label": "last page",
54
+ onClick: handleLastPageButtonClick
55
55
  }, /*#__PURE__*/_react["default"].createElement(_icons.LastPage, null)));
56
56
  };
57
57
  };
@@ -1,5 +1,6 @@
1
- import React, { MutableRefObject, CSSProperties } from 'react';
2
- import { ColumnSpec, Data, DataTableController, Errors, PaginationOptions, RowViewComponent, StackView } from './types';
1
+ import React from 'react';
2
+ import type { MouseEvent, MutableRefObject, CSSProperties, ReactNode } from 'react';
3
+ import type { ColumnSpec, Data, DataTableController, Errors, PaginationOptions, RowViewComponent, StackView } from './types';
3
4
  export type DataTableProps<D extends Data, V extends StackView = Record<string, unknown>> = {
4
5
  /**
5
6
  * The data to be shown in the table
@@ -41,7 +42,7 @@ export type DataTableProps<D extends Data, V extends StackView = Record<string,
41
42
  /**
42
43
  * Component to show when there are no data
43
44
  */
44
- componentForEmpty?: React.ReactNode;
45
+ componentForEmpty?: ReactNode;
45
46
  /**
46
47
  * Custom style to be applied to the table body
47
48
  */
@@ -79,7 +80,7 @@ export type DataTableProps<D extends Data, V extends StackView = Record<string,
79
80
  * Custom rowViews used as a Stac
80
81
  */
81
82
  rowViews?: Record<keyof V, RowViewComponent<D>>;
82
- onRowClick?: (event: React.MouseEvent<HTMLTableRowElement>, rowData: D) => void;
83
+ onRowClick?: (event: MouseEvent<HTMLTableRowElement>, rowData: D) => void;
83
84
  };
84
85
  export declare const DataTableQueryPaginated: <D extends Data, V extends import("./types").RecordUnknown>(props: DataTableProps<D, V>) => React.JSX.Element;
85
86
  export default DataTableQueryPaginated;
@@ -9,20 +9,20 @@ exports["default"] = exports.DataTableQueryPaginated = void 0;
9
9
  var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
10
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
11
11
  var _react = _interopRequireWildcard(require("react"));
12
- var _last = _interopRequireDefault(require("ramda/es/last"));
12
+ var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
13
13
  var _Table = _interopRequireDefault(require("@material-ui/core/Table"));
14
14
  var _TableBody = _interopRequireDefault(require("@material-ui/core/TableBody"));
15
15
  var _TableCell = _interopRequireDefault(require("@material-ui/core/TableCell"));
16
16
  var _TableContainer = _interopRequireDefault(require("@material-ui/core/TableContainer"));
17
+ var _TableFooter = _interopRequireDefault(require("@material-ui/core/TableFooter"));
17
18
  var _TableHead = _interopRequireDefault(require("@material-ui/core/TableHead"));
18
- var _TableRow = _interopRequireDefault(require("@material-ui/core/TableRow"));
19
- var _Paper = _interopRequireDefault(require("@material-ui/core/Paper"));
20
19
  var _TablePagination = _interopRequireDefault(require("@material-ui/core/TablePagination"));
21
- var _TableFooter = _interopRequireDefault(require("@material-ui/core/TableFooter"));
20
+ var _TableRow = _interopRequireDefault(require("@material-ui/core/TableRow"));
21
+ var _last = _interopRequireDefault(require("ramda/es/last"));
22
+ var _dataTablePaginationActions = require("./data-table-pagination-actions");
23
+ var _rows = require("./rows");
22
24
  var _types = require("./types");
23
25
  var _useRowsState2 = require("./use-rows-state");
24
- var _rows = require("./rows");
25
- var _dataTablePaginationActions = require("./data-table-pagination-actions");
26
26
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
27
27
  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; }
28
28
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
@@ -198,13 +198,13 @@ var DataTableQueryPaginated = exports.DataTableQueryPaginated = function DataTab
198
198
  rowsPerPage: perPage,
199
199
  labelRowsPerPage: pagination.labelRowsPerPage,
200
200
  labelDisplayedRows: pagination.labelDisplayedRows,
201
+ ActionsComponent: paginationActionsComponent,
201
202
  onPageChange: function onPageChange(_, page) {
202
203
  handleChangePage(page);
203
204
  },
204
205
  onRowsPerPageChange: function onRowsPerPageChange(event) {
205
206
  handleChangePerPage(parseInt(event.target.value, 10));
206
- },
207
- ActionsComponent: paginationActionsComponent
207
+ }
208
208
  })))));
209
209
  };
210
210
  var _default = exports["default"] = DataTableQueryPaginated;
@@ -1,5 +1,6 @@
1
- import React, { MutableRefObject, CSSProperties } from 'react';
2
- import { ColumnSpec, Data, DataTableController, Errors, PaginationOptions, RowViewComponent, StackView } from './types';
1
+ import React from 'react';
2
+ import type { MouseEvent, MutableRefObject, CSSProperties, ReactNode, Dispatch, SetStateAction } from 'react';
3
+ import type { ColumnSpec, Data, DataTableController, Errors, PaginationOptions, RowViewComponent, StackView } from './types';
3
4
  export type DataTableProps<D extends Data, V extends StackView = Record<string, unknown>> = {
4
5
  /**
5
6
  * The data to be shown in the table
@@ -21,7 +22,7 @@ export type DataTableProps<D extends Data, V extends StackView = Record<string,
21
22
  /**
22
23
  * Component to show when there are no data
23
24
  */
24
- componentForEmpty?: React.ReactNode;
25
+ componentForEmpty?: ReactNode;
25
26
  /**
26
27
  * Custom style to be applied to the table body
27
28
  */
@@ -59,7 +60,20 @@ export type DataTableProps<D extends Data, V extends StackView = Record<string,
59
60
  * Custom rowViews used as a Stac
60
61
  */
61
62
  rowViews?: Record<keyof V, RowViewComponent<D>>;
62
- onRowClick?: (event: React.MouseEvent<HTMLTableRowElement>, rowData: D) => void;
63
+ /**
64
+ * Hide or show the checkbox
65
+ */
66
+ checkbox?: boolean;
67
+ /**
68
+ * Handle the selected states and values
69
+ */
70
+ checkboxProps?: {
71
+ checkRow?: boolean[];
72
+ checkAllRows?: boolean;
73
+ setSelectedRow?: Dispatch<SetStateAction<boolean[]>>;
74
+ setSelectedAllRows?: Dispatch<SetStateAction<boolean>>;
75
+ };
76
+ onRowClick?: (event: MouseEvent<HTMLTableRowElement>, rowData: D) => void;
63
77
  };
64
78
  export declare const DataTable: <D extends Data, V extends import("./types").RecordUnknown>(props: DataTableProps<D, V>) => React.JSX.Element;
65
79
  export default DataTable;