@webiny/ui 5.39.0-beta.1 → 5.39.0-beta.2

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 (156) hide show
  1. package/Accordion/Accordion.d.ts +1 -1
  2. package/Accordion/Accordion.js.map +1 -1
  3. package/Accordion/AccordionItem.d.ts +2 -2
  4. package/Accordion/AccordionItem.js +1 -4
  5. package/Accordion/AccordionItem.js.map +1 -1
  6. package/Accordion/AccordionItemActions.d.ts +5 -1
  7. package/Accordion/AccordionItemActions.js.map +1 -1
  8. package/Alert/Alert.d.ts +1 -1
  9. package/Alert/Alert.js.map +1 -1
  10. package/AutoComplete/AutoComplete.js +1 -2
  11. package/AutoComplete/AutoComplete.js.map +1 -1
  12. package/AutoComplete/MultiAutoComplete.d.ts +1 -1
  13. package/AutoComplete/MultiAutoComplete.js +2 -2
  14. package/AutoComplete/MultiAutoComplete.js.map +1 -1
  15. package/AutoComplete/types.d.ts +3 -3
  16. package/AutoComplete/types.js.map +1 -1
  17. package/Avatar/Avatar.d.ts +7 -1
  18. package/Avatar/Avatar.js.map +1 -1
  19. package/Button/Button.d.ts +5 -6
  20. package/Button/Button.js.map +1 -1
  21. package/Button/CopyButton/CopyButton.d.ts +2 -2
  22. package/Button/CopyButton/CopyButton.js.map +1 -1
  23. package/Button/IconButton/IconButton.d.ts +2 -1
  24. package/Button/IconButton/IconButton.js.map +1 -1
  25. package/Checkbox/Checkbox.d.ts +0 -1
  26. package/Checkbox/Checkbox.js +1 -3
  27. package/Checkbox/Checkbox.js.map +1 -1
  28. package/Chips/Chip.d.ts +2 -2
  29. package/Chips/Chip.js.map +1 -1
  30. package/Chips/Chips.d.ts +1 -1
  31. package/Chips/Chips.js.map +1 -1
  32. package/ColorPicker/ColorPicker.js +1 -1
  33. package/ColorPicker/ColorPicker.js.map +1 -1
  34. package/ConfirmationDialog/ConfirmationDialog.js +20 -47
  35. package/ConfirmationDialog/ConfirmationDialog.js.map +1 -1
  36. package/ConfirmationDialog/withConfirmation.d.ts +2 -2
  37. package/ConfirmationDialog/withConfirmation.js.map +1 -1
  38. package/DataTable/ColumnDirection.d.ts +5 -0
  39. package/DataTable/ColumnDirection.js +20 -0
  40. package/DataTable/ColumnDirection.js.map +1 -0
  41. package/DataTable/ColumnsVisibility.d.ts +7 -0
  42. package/DataTable/ColumnsVisibility.js +65 -0
  43. package/DataTable/ColumnsVisibility.js.map +1 -0
  44. package/DataTable/DataTable.d.ts +16 -7
  45. package/DataTable/DataTable.js +87 -43
  46. package/DataTable/DataTable.js.map +1 -1
  47. package/DataTable/styled.d.ts +16 -3
  48. package/DataTable/styled.js +24 -6
  49. package/DataTable/styled.js.map +1 -1
  50. package/DateTime/Date.d.ts +7 -0
  51. package/DateTime/Date.js +41 -0
  52. package/DateTime/Date.js.map +1 -0
  53. package/DateTime/index.d.ts +1 -0
  54. package/DateTime/index.js +14 -0
  55. package/DateTime/index.js.map +1 -0
  56. package/DelayedOnChange/DelayedOnChange.d.ts +1 -2
  57. package/DelayedOnChange/DelayedOnChange.js.map +1 -1
  58. package/DelayedOnChange/withDelayedOnChange.d.ts +1 -1
  59. package/DelayedOnChange/withDelayedOnChange.js.map +1 -1
  60. package/Dialog/Dialog.d.ts +6 -7
  61. package/Dialog/Dialog.js.map +1 -1
  62. package/Drawer/Drawer.d.ts +6 -14
  63. package/Drawer/Drawer.js +31 -4
  64. package/Drawer/Drawer.js.map +1 -1
  65. package/DynamicFieldset/Fieldset.d.ts +3 -3
  66. package/DynamicFieldset/Fieldset.js.map +1 -1
  67. package/Icon/Icon.d.ts +2 -2
  68. package/Icon/Icon.js.map +1 -1
  69. package/Image/Image.d.ts +1 -2
  70. package/Image/Image.js.map +1 -1
  71. package/ImageEditor/ImageEditor.d.ts +3 -4
  72. package/ImageEditor/ImageEditor.js +26 -60
  73. package/ImageEditor/ImageEditor.js.map +1 -1
  74. package/ImageEditor/toolbar/filter.js +8 -8
  75. package/ImageEditor/toolbar/filter.js.map +1 -1
  76. package/ImageEditor/toolbar/rotate.js +11 -21
  77. package/ImageEditor/toolbar/rotate.js.map +1 -1
  78. package/ImageEditor/toolbar/types.d.ts +1 -2
  79. package/ImageEditor/toolbar/types.js.map +1 -1
  80. package/ImageUpload/Image.d.ts +2 -1
  81. package/ImageUpload/Image.js.map +1 -1
  82. package/ImageUpload/MultiImageUpload.d.ts +4 -2
  83. package/ImageUpload/MultiImageUpload.js +59 -132
  84. package/ImageUpload/MultiImageUpload.js.map +1 -1
  85. package/ImageUpload/SingleImageUpload.d.ts +4 -2
  86. package/ImageUpload/SingleImageUpload.js +14 -31
  87. package/ImageUpload/SingleImageUpload.js.map +1 -1
  88. package/ImageUpload/styled.d.ts +0 -2
  89. package/ImageUpload/styled.js +1 -2
  90. package/ImageUpload/styled.js.map +1 -1
  91. package/Input/Input.d.ts +7 -2
  92. package/Input/Input.js +15 -34
  93. package/Input/Input.js.map +1 -1
  94. package/Input/__tests__/Input.test.js +0 -2
  95. package/Input/__tests__/Input.test.js.map +1 -1
  96. package/List/CollapsibleList/index.d.ts +1 -1
  97. package/List/CollapsibleList/index.js.map +1 -1
  98. package/List/DataList/DataList.d.ts +31 -3
  99. package/List/DataList/DataList.js.map +1 -1
  100. package/List/DataList/DataList.stories.js +1 -1
  101. package/List/DataList/DataList.stories.js.map +1 -1
  102. package/List/DataList/DataListModalOverlay/DataListModalOverlay.d.ts +2 -2
  103. package/List/DataList/DataListModalOverlay/DataListModalOverlay.js +1 -1
  104. package/List/DataList/DataListModalOverlay/DataListModalOverlay.js.map +1 -1
  105. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.d.ts +1 -1
  106. package/List/DataList/DataListModalOverlay/DataListModalOverlayAction.js.map +1 -1
  107. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.d.ts +1 -1
  108. package/List/DataList/DataListModalOverlay/DataListModalOverlayContext.js.map +1 -1
  109. package/List/DataList/DataListWithSections.d.ts +31 -3
  110. package/List/DataList/DataListWithSections.js.map +1 -1
  111. package/List/DataList/NoData.d.ts +2 -2
  112. package/List/DataList/NoData.js.map +1 -1
  113. package/List/DataList/types.d.ts +6 -6
  114. package/List/DataList/types.js.map +1 -1
  115. package/List/List.d.ts +0 -1
  116. package/Menu/Menu.d.ts +2 -2
  117. package/Menu/Menu.js +1 -1
  118. package/Menu/Menu.js.map +1 -1
  119. package/Mosaic/Mosaic.d.ts +12 -1
  120. package/Mosaic/Mosaic.js +1 -1
  121. package/Mosaic/Mosaic.js.map +1 -1
  122. package/Progress/CircularProgress.d.ts +9 -1
  123. package/Progress/CircularProgress.js.map +1 -1
  124. package/Radio/Radio.d.ts +0 -1
  125. package/Radio/Radio.js +1 -3
  126. package/Radio/Radio.js.map +1 -1
  127. package/RichTextEditor/RichTextEditor.d.ts +2 -2
  128. package/RichTextEditor/RichTextEditor.js +10 -36
  129. package/RichTextEditor/RichTextEditor.js.map +1 -1
  130. package/Ripple/Ripple.d.ts +2 -1
  131. package/Ripple/Ripple.js.map +1 -1
  132. package/Scrollbar/Scrollbar.d.ts +1 -1
  133. package/Scrollbar/Scrollbar.js.map +1 -1
  134. package/Section/index.d.ts +3 -2
  135. package/Section/index.js.map +1 -1
  136. package/Select/Select.d.ts +5 -3
  137. package/Select/Select.js +1 -1
  138. package/Select/Select.js.map +1 -1
  139. package/Slider/Slider.d.ts +1 -1
  140. package/Slider/Slider.js.map +1 -1
  141. package/Snackbar/Snackbar.d.ts +0 -1
  142. package/Switch/Switch.d.ts +0 -1
  143. package/Switch/Switch.js.map +1 -1
  144. package/Tabs/Tab.d.ts +1 -1
  145. package/Tabs/Tab.js +1 -2
  146. package/Tabs/Tab.js.map +1 -1
  147. package/Tabs/Tabs.js +1 -2
  148. package/Tabs/Tabs.js.map +1 -1
  149. package/Tabs/Tabs.stories.js.map +1 -1
  150. package/Tags/Tags.d.ts +4 -4
  151. package/Tags/Tags.js.map +1 -1
  152. package/Tooltip/Tooltip.js +1 -1
  153. package/Tooltip/Tooltip.js.map +1 -1
  154. package/Typography/Typography.d.ts +1 -1
  155. package/Typography/Typography.js.map +1 -1
  156. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_reactColor","_emotion","_FormElementMessage","_classnames","classes","label","css","marginBottom","color","width","height","borderRadius","swatch","padding","background","boxShadow","display","cursor","popover","position","zIndex","classNames","top","right","bottom","left","disable","opacity","pointerEvents","ColorPicker","_React$Component","_inherits2","default","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","showColorPicker","setState","state","onChange","props","hex","_createClass2","key","value","render","_this$props","description","validation","backgroundColorStyle","_ref","validationIsValid","isValid","validationMessage","message","createElement","className","onClick","handleClick","style","handleClose","SketchPicker","handleChange","FormElementMessage","error","React","Component","exports"],"sources":["ColorPicker.tsx"],"sourcesContent":["import React from \"react\";\nimport { SketchPicker, ColorResult } from \"react-color\";\nimport { css } from \"emotion\";\nimport { FormComponentProps } from \"~/types\";\nimport { FormElementMessage } from \"~/FormElementMessage\";\nimport classNames from \"classnames\";\n\nconst classes = {\n label: css({\n marginBottom: \"10px !important\"\n }),\n color: css({\n width: \"36px\",\n height: \"14px\",\n borderRadius: \"2px\"\n }),\n swatch: css({\n padding: \"5px\",\n background: \"#fff\",\n borderRadius: \"1px\",\n boxShadow: \"0 0 0 1px rgba(0,0,0,.1)\",\n display: \"inline-block\",\n cursor: \"pointer\"\n }),\n // @ts-ignore\n popover: css({\n position: \"absolute\",\n zIndex: \"2\"\n }),\n classNames: css({\n position: \"fixed\",\n top: \"0px\",\n right: \"0px\",\n bottom: \"0px\",\n left: \"0px\"\n }),\n disable: css({\n opacity: 0.7,\n pointerEvents: \"none\"\n })\n};\n\ninterface ColorPickerState {\n showColorPicker: boolean;\n}\n\ninterface ColorPickerProps extends FormComponentProps {\n // Component label.\n label?: string;\n\n // Is color picker disabled?\n disable?: boolean;\n\n // Description beneath the color picker.\n description?: string;\n}\n\n/**\n * Use ColorPicker component to display a list of choices, once the handler is triggered.\n */\nclass ColorPicker extends React.Component<ColorPickerProps, ColorPickerState> {\n public override state = {\n showColorPicker: false\n };\n\n handleClick = () => {\n this.setState({ showColorPicker: !this.state.showColorPicker });\n };\n\n handleClose = () => {\n this.setState({ showColorPicker: false });\n };\n\n handleChange = (color: ColorResult) => {\n const { onChange } = this.props;\n onChange && onChange(color.hex);\n };\n\n public override render() {\n const { value, label, disable, description, validation } = this.props;\n\n let backgroundColorStyle = {};\n if (value) {\n backgroundColorStyle = {\n background: `${value}`\n };\n }\n\n const { isValid: validationIsValid, message: validationMessage } = validation || {};\n\n return (\n <div className={classNames({ [classes.disable]: disable })}>\n {label && (\n <div\n className={classNames(\n \"mdc-text-field-helper-text mdc-text-field-helper-text--persistent\",\n classes.label\n )}\n >\n {label}\n </div>\n )}\n\n <div>\n <div className={classes.swatch} onClick={this.handleClick}>\n <div className={classes.color} style={backgroundColorStyle} />\n </div>\n {this.state.showColorPicker ? (\n <div className={classes.popover}>\n <div className={classes.classNames} onClick={this.handleClose} />\n <SketchPicker color={value || \"\"} onChange={this.handleChange} />\n </div>\n ) : null}\n </div>\n\n {validationIsValid === false && (\n <FormElementMessage error>{validationMessage}</FormElementMessage>\n )}\n\n {validationIsValid !== false && description && (\n <FormElementMessage>{description}</FormElementMessage>\n )}\n </div>\n );\n }\n}\n\nexport { ColorPicker };\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_reactColor","_emotion","_FormElementMessage","_classnames","classes","label","css","marginBottom","color","width","height","borderRadius","swatch","padding","background","boxShadow","display","cursor","popover","position","zIndex","classNames","top","right","bottom","left","disable","opacity","pointerEvents","ColorPicker","_React$Component","_inherits2","default","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","showColorPicker","setState","state","onChange","props","hex","_createClass2","key","value","render","_this$props","description","validation","backgroundColorStyle","_ref","validationIsValid","isValid","validationMessage","message","createElement","className","onClick","handleClick","style","handleClose","SketchPicker","handleChange","FormElementMessage","error","React","Component","exports"],"sources":["ColorPicker.tsx"],"sourcesContent":["import React from \"react\";\nimport { SketchPicker, ColorResult } from \"react-color\";\nimport { css } from \"emotion\";\nimport { FormComponentProps } from \"~/types\";\nimport { FormElementMessage } from \"~/FormElementMessage\";\nimport classNames from \"classnames\";\n\nconst classes = {\n label: css({\n marginBottom: \"10px !important\"\n }),\n color: css({\n width: \"36px\",\n height: \"14px\",\n borderRadius: \"2px\"\n }),\n swatch: css({\n padding: \"5px\",\n background: \"#fff\",\n borderRadius: \"1px\",\n boxShadow: \"0 0 0 1px rgba(0,0,0,.1)\",\n display: \"inline-block\",\n cursor: \"pointer\"\n }),\n // @ts-expect-error\n popover: css({\n position: \"absolute\",\n zIndex: \"2\"\n }),\n classNames: css({\n position: \"fixed\",\n top: \"0px\",\n right: \"0px\",\n bottom: \"0px\",\n left: \"0px\"\n }),\n disable: css({\n opacity: 0.7,\n pointerEvents: \"none\"\n })\n};\n\ninterface ColorPickerState {\n showColorPicker: boolean;\n}\n\ninterface ColorPickerProps extends FormComponentProps {\n // Component label.\n label?: string;\n\n // Is color picker disabled?\n disable?: boolean;\n\n // Description beneath the color picker.\n description?: string;\n}\n\n/**\n * Use ColorPicker component to display a list of choices, once the handler is triggered.\n */\nclass ColorPicker extends React.Component<ColorPickerProps, ColorPickerState> {\n public override state = {\n showColorPicker: false\n };\n\n handleClick = () => {\n this.setState({ showColorPicker: !this.state.showColorPicker });\n };\n\n handleClose = () => {\n this.setState({ showColorPicker: false });\n };\n\n handleChange = (color: ColorResult) => {\n const { onChange } = this.props;\n onChange && onChange(color.hex);\n };\n\n public override render() {\n const { value, label, disable, description, validation } = this.props;\n\n let backgroundColorStyle = {};\n if (value) {\n backgroundColorStyle = {\n background: `${value}`\n };\n }\n\n const { isValid: validationIsValid, message: validationMessage } = validation || {};\n\n return (\n <div className={classNames({ [classes.disable]: disable })}>\n {label && (\n <div\n className={classNames(\n \"mdc-text-field-helper-text mdc-text-field-helper-text--persistent\",\n classes.label\n )}\n >\n {label}\n </div>\n )}\n\n <div>\n <div className={classes.swatch} onClick={this.handleClick}>\n <div className={classes.color} style={backgroundColorStyle} />\n </div>\n {this.state.showColorPicker ? (\n <div className={classes.popover}>\n <div className={classes.classNames} onClick={this.handleClose} />\n <SketchPicker color={value || \"\"} onChange={this.handleChange} />\n </div>\n ) : null}\n </div>\n\n {validationIsValid === false && (\n <FormElementMessage error>{validationMessage}</FormElementMessage>\n )}\n\n {validationIsValid !== false && description && (\n <FormElementMessage>{description}</FormElementMessage>\n )}\n </div>\n );\n }\n}\n\nexport { ColorPicker };\n"],"mappings":"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"}
@@ -5,8 +5,6 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.ConfirmationDialog = void 0;
8
- var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
9
- var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
10
8
  var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
11
9
  var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
12
10
  var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
@@ -57,52 +55,27 @@ var ConfirmationDialog = /*#__PURE__*/function (_React$Component) {
57
55
  show: false
58
56
  });
59
57
  });
60
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onAccept", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee() {
61
- var onAccept;
62
- return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
63
- while (1) switch (_context.prev = _context.next) {
64
- case 0:
65
- onAccept = _this.callbacks.onAccept;
66
- if (!(typeof onAccept === "function")) {
67
- _context.next = 6;
68
- break;
69
- }
70
- _this.setState({
71
- loading: true
72
- });
73
- _context.next = 5;
74
- return onAccept();
75
- case 5:
76
- if (_this.__isMounted) {
77
- _this.setState({
78
- loading: false,
79
- show: false
80
- });
81
- }
82
- case 6:
83
- case "end":
84
- return _context.stop();
58
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onAccept", async function () {
59
+ var onAccept = _this.callbacks.onAccept;
60
+ if (typeof onAccept === "function") {
61
+ _this.setState({
62
+ loading: true
63
+ });
64
+ await onAccept();
65
+ if (_this.__isMounted) {
66
+ _this.setState({
67
+ loading: false,
68
+ show: false
69
+ });
85
70
  }
86
- }, _callee);
87
- })));
88
- (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCancel", /*#__PURE__*/(0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee2() {
89
- var onCancel;
90
- return (0, _regeneratorRuntime2.default)().wrap(function _callee2$(_context2) {
91
- while (1) switch (_context2.prev = _context2.next) {
92
- case 0:
93
- onCancel = _this.callbacks.onCancel;
94
- if (!(typeof onCancel === "function")) {
95
- _context2.next = 4;
96
- break;
97
- }
98
- _context2.next = 4;
99
- return onCancel();
100
- case 4:
101
- case "end":
102
- return _context2.stop();
103
- }
104
- }, _callee2);
105
- })));
71
+ }
72
+ });
73
+ (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), "onCancel", async function () {
74
+ var onCancel = _this.callbacks.onCancel;
75
+ if (typeof onCancel === "function") {
76
+ await onCancel();
77
+ }
78
+ });
106
79
  return _this;
107
80
  }
108
81
  (0, _createClass2.default)(ConfirmationDialog, [{
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_Dialog","_Progress","_Button","ConfirmationDialog","_React$Component","_inherits2","default","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","onAccept","onCancel","show","loading","callbacks","setState","_asyncToGenerator2","_regeneratorRuntime2","mark","_callee","wrap","_callee$","_context","prev","next","__isMounted","stop","_callee2","_callee2$","_context2","_createClass2","key","value","componentDidMount","componentWillUnmount","render","createElement","Fragment","Dialog","style","props","open","state","onClose","hideConfirmation","DialogTitle","title","DialogContent","message","DialogActions","DialogCancel","onClick","ButtonPrimary","disabled","disableConfirm","children","showConfirmation","React","Component","exports","CircularProgress"],"sources":["ConfirmationDialog.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Dialog, DialogCancel, DialogActions, DialogTitle, DialogContent } from \"./../Dialog\";\n\nimport { CircularProgress } from \"../Progress\";\nimport { ButtonPrimary } from \"~/Button\";\n\ninterface ChildrenRenderProp {\n showConfirmation: (onAccept?: () => void, onCancel?: () => void) => any;\n}\n\ninterface ConfirmationCallbacks {\n onAccept?: () => void;\n onCancel?: () => void;\n}\n\ninterface Props {\n // Title of confirmation dialog\n title?: React.ReactNode;\n\n // Message of confirmation dialog\n message?: React.ReactNode;\n\n // This element will be rendered during loading\n loading?: React.ReactNode;\n\n // For testing purposes\n \"data-testid\"?: string;\n\n // An element that will trigger the confirmation dialog.\n children: (props: ChildrenRenderProp) => React.ReactNode;\n\n // Is `Confirm` button disabled\n disableConfirm?: boolean;\n\n // Dialog component's custom in-line styles.\n style?: React.CSSProperties;\n}\n\ninterface ConfirmationDialogState {\n show: boolean;\n loading: boolean;\n}\n\n/**\n * Use ConfirmationDialog component to display a list of choices, once the handler is triggered.\n */\nclass ConfirmationDialog extends React.Component<Props, ConfirmationDialogState> {\n static defaultProps = {\n title: \"Confirmation\",\n message: \"Are you sure you want to continue?\",\n loading: <CircularProgress />\n };\n\n __isMounted = false;\n\n callbacks: ConfirmationCallbacks = {\n onAccept: () => {\n return void 0;\n },\n onCancel: () => {\n return void 0;\n }\n };\n\n public override state = {\n show: false,\n loading: false\n };\n\n public override componentDidMount() {\n this.__isMounted = true;\n }\n\n public override componentWillUnmount() {\n this.__isMounted = false;\n }\n\n private readonly showConfirmation = (onAccept?: () => void, onCancel?: () => void) => {\n this.callbacks = {\n onAccept,\n onCancel\n };\n this.setState({ show: true });\n };\n\n private readonly hideConfirmation = () => {\n this.setState({ show: false });\n };\n\n private readonly onAccept = async () => {\n const { onAccept } = this.callbacks;\n if (typeof onAccept === \"function\") {\n this.setState({ loading: true });\n await onAccept();\n if (this.__isMounted) {\n this.setState({ loading: false, show: false });\n }\n }\n };\n\n private readonly onCancel = async () => {\n const { onCancel } = this.callbacks;\n if (typeof onCancel === \"function\") {\n await onCancel();\n }\n };\n\n public override render() {\n return (\n <React.Fragment>\n <Dialog\n style={this.props.style}\n open={this.state.show}\n onClose={this.hideConfirmation}\n data-testid={this.props[\"data-testid\"]}\n >\n {this.state.loading ? this.props.loading : null}\n <DialogTitle>{this.props.title}</DialogTitle>\n <DialogContent>{this.props.message}</DialogContent>\n <DialogActions>\n <DialogCancel onClick={this.onCancel}>Cancel</DialogCancel>\n <ButtonPrimary\n data-testid=\"confirmationdialog-confirm-action\"\n onClick={this.onAccept}\n disabled={this.props.disableConfirm}\n >\n Confirm\n </ButtonPrimary>\n </DialogActions>\n </Dialog>\n {this.props.children({\n showConfirmation: this.showConfirmation\n })}\n </React.Fragment>\n );\n }\n}\n\nexport { ConfirmationDialog };\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_Dialog","_Progress","_Button","ConfirmationDialog","_React$Component","_inherits2","default","_super","_createSuper2","_this","_classCallCheck2","_len","arguments","length","args","Array","_key","call","apply","concat","_defineProperty2","_assertThisInitialized2","onAccept","onCancel","show","loading","callbacks","setState","__isMounted","_createClass2","key","value","componentDidMount","componentWillUnmount","render","createElement","Fragment","Dialog","style","props","open","state","onClose","hideConfirmation","DialogTitle","title","DialogContent","message","DialogActions","DialogCancel","onClick","ButtonPrimary","disabled","disableConfirm","children","showConfirmation","React","Component","exports","CircularProgress"],"sources":["ConfirmationDialog.tsx"],"sourcesContent":["import React from \"react\";\n\nimport { Dialog, DialogCancel, DialogActions, DialogTitle, DialogContent } from \"./../Dialog\";\n\nimport { CircularProgress } from \"../Progress\";\nimport { ButtonPrimary } from \"~/Button\";\n\ninterface ChildrenRenderProp {\n showConfirmation: (onAccept?: () => void, onCancel?: () => void) => any;\n}\n\ninterface ConfirmationCallbacks {\n onAccept?: () => void;\n onCancel?: () => void;\n}\n\ninterface Props {\n // Title of confirmation dialog\n title?: React.ReactNode;\n\n // Message of confirmation dialog\n message?: React.ReactNode;\n\n // This element will be rendered during loading\n loading?: React.ReactNode;\n\n // For testing purposes\n \"data-testid\"?: string;\n\n // An element that will trigger the confirmation dialog.\n children: (props: ChildrenRenderProp) => React.ReactNode;\n\n // Is `Confirm` button disabled\n disableConfirm?: boolean;\n\n // Dialog component's custom in-line styles.\n style?: React.CSSProperties;\n}\n\ninterface ConfirmationDialogState {\n show: boolean;\n loading: boolean;\n}\n\n/**\n * Use ConfirmationDialog component to display a list of choices, once the handler is triggered.\n */\nclass ConfirmationDialog extends React.Component<Props, ConfirmationDialogState> {\n static defaultProps = {\n title: \"Confirmation\",\n message: \"Are you sure you want to continue?\",\n loading: <CircularProgress />\n };\n\n __isMounted = false;\n\n callbacks: ConfirmationCallbacks = {\n onAccept: () => {\n return void 0;\n },\n onCancel: () => {\n return void 0;\n }\n };\n\n public override state = {\n show: false,\n loading: false\n };\n\n public override componentDidMount() {\n this.__isMounted = true;\n }\n\n public override componentWillUnmount() {\n this.__isMounted = false;\n }\n\n private readonly showConfirmation = (onAccept?: () => void, onCancel?: () => void) => {\n this.callbacks = {\n onAccept,\n onCancel\n };\n this.setState({ show: true });\n };\n\n private readonly hideConfirmation = () => {\n this.setState({ show: false });\n };\n\n private readonly onAccept = async () => {\n const { onAccept } = this.callbacks;\n if (typeof onAccept === \"function\") {\n this.setState({ loading: true });\n await onAccept();\n if (this.__isMounted) {\n this.setState({ loading: false, show: false });\n }\n }\n };\n\n private readonly onCancel = async () => {\n const { onCancel } = this.callbacks;\n if (typeof onCancel === \"function\") {\n await onCancel();\n }\n };\n\n public override render() {\n return (\n <React.Fragment>\n <Dialog\n style={this.props.style}\n open={this.state.show}\n onClose={this.hideConfirmation}\n data-testid={this.props[\"data-testid\"]}\n >\n {this.state.loading ? this.props.loading : null}\n <DialogTitle>{this.props.title}</DialogTitle>\n <DialogContent>{this.props.message}</DialogContent>\n <DialogActions>\n <DialogCancel onClick={this.onCancel}>Cancel</DialogCancel>\n <ButtonPrimary\n data-testid=\"confirmationdialog-confirm-action\"\n onClick={this.onAccept}\n disabled={this.props.disableConfirm}\n >\n Confirm\n </ButtonPrimary>\n </DialogActions>\n </Dialog>\n {this.props.children({\n showConfirmation: this.showConfirmation\n })}\n </React.Fragment>\n );\n }\n}\n\nexport { ConfirmationDialog };\n"],"mappings":"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"}
@@ -5,7 +5,7 @@ declare type ConfirmationProps = {
5
5
  };
6
6
  declare type WithConfirmationParams = (props: Record<string, any>) => ConfirmationProps;
7
7
  export declare type WithConfirmationProps = {
8
- showConfirmation: (confirm: Function, cancel: Function) => void;
8
+ showConfirmation: (confirm: () => void, cancel: () => void) => void;
9
9
  };
10
- export declare const withConfirmation: (dialogProps: WithConfirmationParams) => Function;
10
+ export declare const withConfirmation: (dialogProps: WithConfirmationParams) => (Component: typeof React.Component) => (ownProps: Record<string, any>) => JSX.Element;
11
11
  export {};
@@ -1 +1 @@
1
- {"version":3,"names":["_react","_interopRequireDefault","require","_ConfirmationDialog","withConfirmation","dialogProps","Component","withConfirmationRender","ownProps","props","default","createElement","ConfirmationDialog","_ref","showConfirmation","Object","assign","exports"],"sources":["withConfirmation.tsx"],"sourcesContent":["import React from \"react\";\nimport { ConfirmationDialog } from \"./ConfirmationDialog\";\n\ntype ConfirmationProps = {\n title?: React.ReactNode;\n message?: React.ReactNode;\n};\n\ntype WithConfirmationParams = (props: Record<string, any>) => ConfirmationProps;\n\nexport type WithConfirmationProps = {\n showConfirmation: (confirm: Function, cancel: Function) => void;\n};\n\nexport const withConfirmation = (dialogProps: WithConfirmationParams): Function => {\n return (Component: typeof React.Component) => {\n return function withConfirmationRender(ownProps: Record<string, any>) {\n const props = typeof dialogProps === \"function\" ? dialogProps(ownProps) : dialogProps;\n return (\n <ConfirmationDialog {...props}>\n {({ showConfirmation }) => (\n <Component {...ownProps} showConfirmation={showConfirmation} />\n )}\n </ConfirmationDialog>\n );\n };\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AAaO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,WAAmC,EAAe;EAC/E,OAAO,UAACC,SAAiC,EAAK;IAC1C,OAAO,SAASC,sBAAsBA,CAACC,QAA6B,EAAE;MAClE,IAAMC,KAAK,GAAG,OAAOJ,WAAW,KAAK,UAAU,GAAGA,WAAW,CAACG,QAAQ,CAAC,GAAGH,WAAW;MACrF,oBACIL,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,mBAAA,CAAAS,kBAAkB,EAAKH,KAAK,EACxB,UAAAI,IAAA;QAAA,IAAGC,gBAAgB,GAAAD,IAAA,CAAhBC,gBAAgB;QAAA,oBAChBd,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACL,SAAS,EAAAS,MAAA,CAAAC,MAAA,KAAKR,QAAQ;UAAEM,gBAAgB,EAAEA;QAAiB,EAAE,CAAC;MAAA,CAEnD,CAAC;IAE7B,CAAC;EACL,CAAC;AACL,CAAC;AAACG,OAAA,CAAAb,gBAAA,GAAAA,gBAAA"}
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_ConfirmationDialog","withConfirmation","dialogProps","Component","withConfirmationRender","ownProps","props","default","createElement","ConfirmationDialog","_ref","showConfirmation","Object","assign","exports"],"sources":["withConfirmation.tsx"],"sourcesContent":["import React from \"react\";\nimport { ConfirmationDialog } from \"./ConfirmationDialog\";\n\ntype ConfirmationProps = {\n title?: React.ReactNode;\n message?: React.ReactNode;\n};\n\ntype WithConfirmationParams = (props: Record<string, any>) => ConfirmationProps;\n\nexport type WithConfirmationProps = {\n showConfirmation: (confirm: () => void, cancel: () => void) => void;\n};\n\nexport const withConfirmation = (dialogProps: WithConfirmationParams) => {\n return (Component: typeof React.Component) => {\n return function withConfirmationRender(ownProps: Record<string, any>) {\n const props = typeof dialogProps === \"function\" ? dialogProps(ownProps) : dialogProps;\n return (\n <ConfirmationDialog {...props}>\n {({ showConfirmation }) => (\n <Component {...ownProps} showConfirmation={showConfirmation} />\n )}\n </ConfirmationDialog>\n );\n };\n };\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,mBAAA,GAAAD,OAAA;AAaO,IAAME,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,WAAmC,EAAK;EACrE,OAAO,UAACC,SAAiC,EAAK;IAC1C,OAAO,SAASC,sBAAsBA,CAACC,QAA6B,EAAE;MAClE,IAAMC,KAAK,GAAG,OAAOJ,WAAW,KAAK,UAAU,GAAGA,WAAW,CAACG,QAAQ,CAAC,GAAGH,WAAW;MACrF,oBACIL,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACR,mBAAA,CAAAS,kBAAkB,EAAKH,KAAK,EACxB,UAAAI,IAAA;QAAA,IAAGC,gBAAgB,GAAAD,IAAA,CAAhBC,gBAAgB;QAAA,oBAChBd,MAAA,CAAAU,OAAA,CAAAC,aAAA,CAACL,SAAS,EAAAS,MAAA,CAAAC,MAAA,KAAKR,QAAQ;UAAEM,gBAAgB,EAAEA;QAAiB,EAAE,CAAC;MAAA,CAEnD,CAAC;IAE7B,CAAC;EACL,CAAC;AACL,CAAC;AAACG,OAAA,CAAAb,gBAAA,GAAAA,gBAAA"}
@@ -0,0 +1,5 @@
1
+ /// <reference types="react" />
2
+ export interface ColumnDirectionProps {
3
+ direction?: "asc" | "desc";
4
+ }
5
+ export declare const ColumnDirection: (props: ColumnDirectionProps) => JSX.Element | null;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ColumnDirection = void 0;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _styled = require("./styled");
10
+ var ColumnDirection = function ColumnDirection(props) {
11
+ if (props.direction) {
12
+ return /*#__PURE__*/_react.default.createElement(_styled.ColumnDirectionWrapper, null, /*#__PURE__*/_react.default.createElement(_styled.ColumnDirectionIcon, {
13
+ direction: props.direction
14
+ }));
15
+ }
16
+ return null;
17
+ };
18
+ exports.ColumnDirection = ColumnDirection;
19
+
20
+ //# sourceMappingURL=ColumnDirection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireDefault","require","_styled","ColumnDirection","props","direction","default","createElement","ColumnDirectionWrapper","ColumnDirectionIcon","exports"],"sources":["ColumnDirection.tsx"],"sourcesContent":["import React from \"react\";\nimport { ColumnDirectionIcon, ColumnDirectionWrapper } from \"~/DataTable/styled\";\n\nexport interface ColumnDirectionProps {\n direction?: \"asc\" | \"desc\";\n}\n\nexport const ColumnDirection = (props: ColumnDirectionProps) => {\n if (props.direction) {\n return (\n <ColumnDirectionWrapper>\n <ColumnDirectionIcon direction={props.direction} />\n </ColumnDirectionWrapper>\n );\n }\n\n return null;\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAMO,IAAME,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,KAA2B,EAAK;EAC5D,IAAIA,KAAK,CAACC,SAAS,EAAE;IACjB,oBACIN,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACL,OAAA,CAAAM,sBAAsB,qBACnBT,MAAA,CAAAO,OAAA,CAAAC,aAAA,CAACL,OAAA,CAAAO,mBAAmB;MAACJ,SAAS,EAAED,KAAK,CAACC;IAAU,CAAE,CAC9B,CAAC;EAEjC;EAEA,OAAO,IAAI;AACf,CAAC;AAACK,OAAA,CAAAP,eAAA,GAAAA,eAAA"}
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { Column } from "@tanstack/react-table";
3
+ interface ColumnsVisibilityProps<T> {
4
+ columns: Column<T>[];
5
+ }
6
+ export declare const ColumnsVisibility: <T>(props: ColumnsVisibilityProps<T>) => JSX.Element | null;
7
+ export {};
@@ -0,0 +1,65 @@
1
+ "use strict";
2
+
3
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.ColumnsVisibility = void 0;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _settings = require("@material-design-icons/svg/outlined/settings.svg");
10
+ var _Button = require("../Button");
11
+ var _Checkbox = require("../Checkbox");
12
+ var _Menu = require("../Menu");
13
+ var _styled = require("./styled");
14
+ var ColumnsVisibility = function ColumnsVisibility(props) {
15
+ /**
16
+ * `@tanstack/react-table` does not have a simple method to return the header component.
17
+ * The only possible way is to use `flexRenderer`, but this is not working with the current implementation
18
+ * since we don't have access to the header context.
19
+ */
20
+ var getHeaderName = (0, _react.useCallback)(function (column) {
21
+ var header = column.columnDef.header;
22
+ if (typeof header === "string") {
23
+ return header;
24
+ }
25
+ if (typeof header === "function") {
26
+ // @ts-expect-error
27
+ return header();
28
+ }
29
+ return column.id;
30
+ }, []);
31
+ var options = (0, _react.useMemo)(function () {
32
+ return props.columns.filter(function (column) {
33
+ return column.getCanHide();
34
+ }).map(function (column) {
35
+ return {
36
+ id: column.id,
37
+ header: getHeaderName(column),
38
+ onChange: column.toggleVisibility,
39
+ getValue: column.getIsVisible
40
+ };
41
+ });
42
+ }, [props.columns]);
43
+ if (options.length === 0) {
44
+ return null;
45
+ }
46
+ return /*#__PURE__*/_react.default.createElement(_Menu.Menu, {
47
+ handle: /*#__PURE__*/_react.default.createElement(_Button.IconButton, {
48
+ icon: /*#__PURE__*/_react.default.createElement(_settings.ReactComponent, null)
49
+ })
50
+ }, /*#__PURE__*/_react.default.createElement(_styled.ColumnsVisibilityMenuHeader, {
51
+ use: "subtitle2",
52
+ tag: "h6"
53
+ }, "Toggle column visibility"), /*#__PURE__*/_react.default.createElement(_Menu.MenuDivider, null), options.map(function (option) {
54
+ return /*#__PURE__*/_react.default.createElement(_styled.ColumnsVisibilityMenuItem, {
55
+ key: option.id
56
+ }, /*#__PURE__*/_react.default.createElement(_Checkbox.Checkbox, {
57
+ label: option.header,
58
+ onChange: option.onChange,
59
+ value: option.getValue()
60
+ }));
61
+ }));
62
+ };
63
+ exports.ColumnsVisibility = ColumnsVisibility;
64
+
65
+ //# sourceMappingURL=ColumnsVisibility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","_interopRequireWildcard","require","_settings","_Button","_Checkbox","_Menu","_styled","ColumnsVisibility","props","getHeaderName","useCallback","column","header","columnDef","id","options","useMemo","columns","filter","getCanHide","map","onChange","toggleVisibility","getValue","getIsVisible","length","default","createElement","Menu","handle","IconButton","icon","ReactComponent","ColumnsVisibilityMenuHeader","use","tag","MenuDivider","option","ColumnsVisibilityMenuItem","key","Checkbox","label","value","exports"],"sources":["ColumnsVisibility.tsx"],"sourcesContent":["import React, { ReactNode, useCallback, useMemo } from \"react\";\nimport { ReactComponent as SettingsIcon } from \"@material-design-icons/svg/outlined/settings.svg\";\nimport { Column } from \"@tanstack/react-table\";\nimport { IconButton } from \"~/Button\";\nimport { Checkbox } from \"~/Checkbox\";\nimport { Menu, MenuDivider } from \"~/Menu\";\nimport { ColumnsVisibilityMenuHeader, ColumnsVisibilityMenuItem } from \"~/DataTable/styled\";\n\ninterface ColumnsVisibilityProps<T> {\n columns: Column<T>[];\n}\n\ninterface Option {\n id: string;\n header: ReactNode;\n onChange: (value?: boolean | undefined) => void;\n getValue: () => boolean;\n}\n\nexport const ColumnsVisibility = <T,>(props: ColumnsVisibilityProps<T>) => {\n /**\n * `@tanstack/react-table` does not have a simple method to return the header component.\n * The only possible way is to use `flexRenderer`, but this is not working with the current implementation\n * since we don't have access to the header context.\n */\n const getHeaderName = useCallback((column: Column<T>) => {\n const { header } = column.columnDef;\n\n if (typeof header === \"string\") {\n return header;\n }\n\n if (typeof header === \"function\") {\n // @ts-expect-error\n return header();\n }\n\n return column.id;\n }, []);\n\n const options: Option[] = useMemo(() => {\n return props.columns\n .filter(column => column.getCanHide())\n .map(column => {\n return {\n id: column.id,\n header: getHeaderName(column),\n onChange: column.toggleVisibility,\n getValue: column.getIsVisible\n };\n });\n }, [props.columns]);\n\n if (options.length === 0) {\n return null;\n }\n\n return (\n <Menu handle={<IconButton icon={<SettingsIcon />} />}>\n <ColumnsVisibilityMenuHeader use={\"subtitle2\"} tag={\"h6\"}>\n {\"Toggle column visibility\"}\n </ColumnsVisibilityMenuHeader>\n <MenuDivider />\n {options.map(option => {\n return (\n <ColumnsVisibilityMenuItem key={option.id}>\n <Checkbox\n label={option.header}\n onChange={option.onChange}\n value={option.getValue()}\n />\n </ColumnsVisibilityMenuItem>\n );\n })}\n </Menu>\n );\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAEA,IAAAE,OAAA,GAAAF,OAAA;AACA,IAAAG,SAAA,GAAAH,OAAA;AACA,IAAAI,KAAA,GAAAJ,OAAA;AACA,IAAAK,OAAA,GAAAL,OAAA;AAaO,IAAMM,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAQC,KAAgC,EAAK;EACvE;AACJ;AACA;AACA;AACA;EACI,IAAMC,aAAa,GAAG,IAAAC,kBAAW,EAAC,UAACC,MAAiB,EAAK;IACrD,IAAQC,MAAM,GAAKD,MAAM,CAACE,SAAS,CAA3BD,MAAM;IAEd,IAAI,OAAOA,MAAM,KAAK,QAAQ,EAAE;MAC5B,OAAOA,MAAM;IACjB;IAEA,IAAI,OAAOA,MAAM,KAAK,UAAU,EAAE;MAC9B;MACA,OAAOA,MAAM,CAAC,CAAC;IACnB;IAEA,OAAOD,MAAM,CAACG,EAAE;EACpB,CAAC,EAAE,EAAE,CAAC;EAEN,IAAMC,OAAiB,GAAG,IAAAC,cAAO,EAAC,YAAM;IACpC,OAAOR,KAAK,CAACS,OAAO,CACfC,MAAM,CAAC,UAAAP,MAAM;MAAA,OAAIA,MAAM,CAACQ,UAAU,CAAC,CAAC;IAAA,EAAC,CACrCC,GAAG,CAAC,UAAAT,MAAM,EAAI;MACX,OAAO;QACHG,EAAE,EAAEH,MAAM,CAACG,EAAE;QACbF,MAAM,EAAEH,aAAa,CAACE,MAAM,CAAC;QAC7BU,QAAQ,EAAEV,MAAM,CAACW,gBAAgB;QACjCC,QAAQ,EAAEZ,MAAM,CAACa;MACrB,CAAC;IACL,CAAC,CAAC;EACV,CAAC,EAAE,CAAChB,KAAK,CAACS,OAAO,CAAC,CAAC;EAEnB,IAAIF,OAAO,CAACU,MAAM,KAAK,CAAC,EAAE;IACtB,OAAO,IAAI;EACf;EAEA,oBACI1B,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACtB,KAAA,CAAAuB,IAAI;IAACC,MAAM,eAAE9B,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACxB,OAAA,CAAA2B,UAAU;MAACC,IAAI,eAAEhC,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACzB,SAAA,CAAA8B,cAAY,MAAE;IAAE,CAAE;EAAE,gBACjDjC,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACrB,OAAA,CAAA2B,2BAA2B;IAACC,GAAG,EAAE,WAAY;IAACC,GAAG,EAAE;EAAK,GACpD,0BACwB,CAAC,eAC9BpC,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACtB,KAAA,CAAA+B,WAAW,MAAE,CAAC,EACdrB,OAAO,CAACK,GAAG,CAAC,UAAAiB,MAAM,EAAI;IACnB,oBACItC,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACrB,OAAA,CAAAgC,yBAAyB;MAACC,GAAG,EAAEF,MAAM,CAACvB;IAAG,gBACtCf,MAAA,CAAA2B,OAAA,CAAAC,aAAA,CAACvB,SAAA,CAAAoC,QAAQ;MACLC,KAAK,EAAEJ,MAAM,CAACzB,MAAO;MACrBS,QAAQ,EAAEgB,MAAM,CAAChB,QAAS;MAC1BqB,KAAK,EAAEL,MAAM,CAACd,QAAQ,CAAC;IAAE,CAC5B,CACsB,CAAC;EAEpC,CAAC,CACC,CAAC;AAEf,CAAC;AAACoB,OAAA,CAAApC,iBAAA,GAAAA,iBAAA"}
@@ -1,8 +1,8 @@
1
1
  /// <reference types="react" />
2
2
  import { DataTableCellProps } from "@rmwc/data-table";
3
- import { OnChangeFn, SortingState, Row } from "@tanstack/react-table";
3
+ import { OnChangeFn, Row, SortingState, VisibilityState } from "@tanstack/react-table";
4
4
  import "@rmwc/data-table/data-table.css";
5
- interface Column<T> {
5
+ export interface Column<T> {
6
6
  header: string | number | JSX.Element;
7
7
  cell?: (row: T) => string | number | JSX.Element | null;
8
8
  meta?: DataTableCellProps;
@@ -10,16 +10,20 @@ interface Column<T> {
10
10
  className?: string;
11
11
  enableSorting?: boolean;
12
12
  enableResizing?: boolean;
13
+ enableHiding?: boolean;
13
14
  }
14
15
  export declare type Columns<T> = {
15
16
  [P in keyof T]?: Column<T>;
16
17
  };
17
18
  export declare type DefaultData = {
18
19
  id: string;
19
- selectable?: boolean;
20
+ $selectable?: boolean;
20
21
  };
22
+ export declare type TableRow<T> = Row<DefaultData & T>;
21
23
  export declare type Sorting = SortingState;
22
24
  export declare type OnSortingChange = OnChangeFn<Sorting>;
25
+ export declare type ColumnVisibility = VisibilityState;
26
+ export declare type OnColumnVisibilityChange = OnChangeFn<ColumnVisibility>;
23
27
  interface Props<T> {
24
28
  /**
25
29
  * Show or hide borders.
@@ -33,6 +37,14 @@ interface Props<T> {
33
37
  * Columns definition.
34
38
  */
35
39
  columns: Columns<T>;
40
+ /**
41
+ * The column visibility state.
42
+ */
43
+ columnVisibility?: ColumnVisibility;
44
+ /**
45
+ * Callback that receives current column visibility state.
46
+ */
47
+ onColumnVisibilityChange?: OnColumnVisibilityChange;
36
48
  /**
37
49
  * Data to display into DataTable body.
38
50
  */
@@ -78,8 +90,5 @@ interface Props<T> {
78
90
  */
79
91
  stickyRows?: number;
80
92
  }
81
- export interface ColumnDirectionProps {
82
- direction?: "asc" | "desc";
83
- }
84
- export declare const DataTable: <T extends Object & DefaultData>({ data, columns, onSelectRow, onToggleRow, loadingInitial, stickyColumns, stickyRows, bordered, sorting, onSortingChange, isRowSelectable, canSelectAllRows, selectedRows, initialSorting }: Props<T>) => JSX.Element;
93
+ export declare const DataTable: <T extends Record<string, any> & DefaultData>({ data, columns, onSelectRow, onToggleRow, loadingInitial, stickyColumns, stickyRows, bordered, sorting, columnVisibility, onColumnVisibilityChange, onSortingChange, isRowSelectable, canSelectAllRows, selectedRows, initialSorting }: Props<T>) => JSX.Element;
85
94
  export {};
@@ -7,6 +7,7 @@ Object.defineProperty(exports, "__esModule", {
7
7
  });
8
8
  exports.DataTable = void 0;
9
9
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
10
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
10
11
  var _toConsumableArray2 = _interopRequireDefault(require("@babel/runtime/helpers/toConsumableArray"));
11
12
  var _objectSpread3 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
12
13
  var _react = _interopRequireWildcard(require("react"));
@@ -14,6 +15,7 @@ var _dataTable = require("@rmwc/data-table");
14
15
  var _reactTable = require("@tanstack/react-table");
15
16
  var _Checkbox = require("../Checkbox");
16
17
  var _Skeleton = require("../Skeleton");
18
+ var _ColumnsVisibility = require("./ColumnsVisibility");
17
19
  require("@rmwc/data-table/data-table.css");
18
20
  var _styled = require("./styled");
19
21
  var defineColumns = function defineColumns(columns, options) {
@@ -30,6 +32,8 @@ var defineColumns = function defineColumns(columns, options) {
30
32
  var defaults = columnsList.map(function (column) {
31
33
  var _cell = column.cell,
32
34
  className = column.className,
35
+ _column$enableHiding = column.enableHiding,
36
+ enableHiding = _column$enableHiding === void 0 ? true : _column$enableHiding,
33
37
  _column$enableResizin = column.enableResizing,
34
38
  enableResizing = _column$enableResizin === void 0 ? true : _column$enableResizin,
35
39
  _column$enableSorting = column.enableSorting,
@@ -38,8 +42,9 @@ var defineColumns = function defineColumns(columns, options) {
38
42
  id = column.id,
39
43
  meta = column.meta,
40
44
  _column$size = column.size,
41
- size = _column$size === void 0 ? 200 : _column$size;
45
+ size = _column$size === void 0 ? 100 : _column$size;
42
46
  return {
47
+ id: id,
43
48
  accessorKey: id,
44
49
  header: function header() {
45
50
  return _header;
@@ -48,7 +53,7 @@ var defineColumns = function defineColumns(columns, options) {
48
53
  if (_cell && typeof _cell === "function") {
49
54
  return _cell(info.row.original);
50
55
  } else {
51
- return info.getValue();
56
+ return info.getValue() || null;
52
57
  }
53
58
  },
54
59
  enableSorting: enableSorting,
@@ -56,7 +61,8 @@ var defineColumns = function defineColumns(columns, options) {
56
61
  className: className
57
62
  }),
58
63
  enableResizing: enableResizing,
59
- size: size
64
+ size: size,
65
+ enableHiding: enableHiding
60
66
  };
61
67
  });
62
68
  var isSelectable = onToggleRow || onSelectRow;
@@ -90,6 +96,7 @@ var defineColumns = function defineColumns(columns, options) {
90
96
  },
91
97
  enableSorting: false,
92
98
  enableResizing: false,
99
+ enableHiding: false,
93
100
  size: 56
94
101
  }] : [];
95
102
  return [].concat(select, (0, _toConsumableArray2.default)(defaults)).map(function (column) {
@@ -105,12 +112,10 @@ var defineColumns = function defineColumns(columns, options) {
105
112
  }, [columns, onSelectRow, onToggleRow, loadingInitial]);
106
113
  };
107
114
  var defineData = function defineData(data, loadingInitial) {
108
- return (0, _react.useMemo)(function () {
109
- if (loadingInitial) {
110
- return Array(10).fill({});
111
- }
112
- return data;
113
- }, [data, loadingInitial]);
115
+ if (loadingInitial) {
116
+ return Array(10).fill({});
117
+ }
118
+ return data;
114
119
  };
115
120
  var ColumnDirection = function ColumnDirection(_ref2) {
116
121
  var direction = _ref2.direction;
@@ -123,23 +128,29 @@ var ColumnDirection = function ColumnDirection(_ref2) {
123
128
  };
124
129
  var typedMemo = _react.memo;
125
130
  var TableCell = function TableCell(_ref3) {
126
- var cell = _ref3.cell;
127
- return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableCell, Object.assign({}, cell.column.columnDef.meta, {
131
+ var cell = _ref3.cell,
132
+ getColumnWidth = _ref3.getColumnWidth;
133
+ var width = getColumnWidth(cell.column);
134
+ return /*#__PURE__*/_react.default.createElement(_styled.DataTableCell, Object.assign({}, cell.column.columnDef.meta, {
128
135
  style: {
129
- width: cell.column.getSize()
136
+ width: width,
137
+ maxWidth: width
130
138
  }
131
139
  }), (0, _reactTable.flexRender)(cell.column.columnDef.cell, cell.getContext()));
132
140
  };
133
141
  var MemoTableCell = typedMemo(TableCell);
134
142
  var TableRow = function TableRow(_ref4) {
135
- var row = _ref4.row,
136
- selected = _ref4.selected;
143
+ var selected = _ref4.selected,
144
+ cells = _ref4.cells,
145
+ getColumnWidth = _ref4.getColumnWidth;
137
146
  return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableRow, {
138
147
  selected: selected
139
- }, row.getVisibleCells().map(function (cell) {
148
+ }, cells.map(function (cell) {
140
149
  return /*#__PURE__*/_react.default.createElement(MemoTableCell, {
141
150
  key: cell.id,
142
- cell: cell
151
+ cell: cell,
152
+ getColumnWidth: getColumnWidth,
153
+ selected: selected
143
154
  });
144
155
  }));
145
156
  };
@@ -154,6 +165,8 @@ var DataTable = function DataTable(_ref5) {
154
165
  stickyRows = _ref5.stickyRows,
155
166
  bordered = _ref5.bordered,
156
167
  sorting = _ref5.sorting,
168
+ columnVisibility = _ref5.columnVisibility,
169
+ onColumnVisibilityChange = _ref5.onColumnVisibilityChange,
157
170
  onSortingChange = _ref5.onSortingChange,
158
171
  isRowSelectable = _ref5.isRowSelectable,
159
172
  _ref5$canSelectAllRow = _ref5.canSelectAllRows,
@@ -161,6 +174,24 @@ var DataTable = function DataTable(_ref5) {
161
174
  _ref5$selectedRows = _ref5.selectedRows,
162
175
  selectedRows = _ref5$selectedRows === void 0 ? [] : _ref5$selectedRows,
163
176
  initialSorting = _ref5.initialSorting;
177
+ var tableRef = (0, _react.useRef)(null);
178
+ var _useState = (0, _react.useState)(1),
179
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
180
+ tableWidth = _useState2[0],
181
+ setTableWidth = _useState2[1];
182
+ (0, _react.useEffect)(function () {
183
+ var updateElementWidth = function updateElementWidth() {
184
+ if (tableRef.current) {
185
+ var width = tableRef.current.clientWidth;
186
+ setTableWidth(width);
187
+ }
188
+ };
189
+ updateElementWidth();
190
+ window.addEventListener("resize", updateElementWidth);
191
+ return function () {
192
+ window.removeEventListener("resize", updateElementWidth);
193
+ };
194
+ }, [tableRef.current]);
164
195
  var rowSelection = (0, _react.useMemo)(function () {
165
196
  return selectedRows.reduce(function (acc, item) {
166
197
  var recordIndex = data.findIndex(function (rec) {
@@ -218,54 +249,67 @@ var DataTable = function DataTable(_ref5) {
218
249
  getSortedRowModel: (0, _reactTable.getSortedRowModel)(),
219
250
  state: {
220
251
  rowSelection: rowSelection,
221
- sorting: tableSorting
252
+ sorting: tableSorting,
253
+ columnVisibility: columnVisibility
222
254
  },
223
255
  enableRowSelection: isRowSelectable,
224
256
  onRowSelectionChange: onRowSelectionChange,
225
257
  enableSorting: !!onSortingChange,
226
258
  manualSorting: true,
227
- onSortingChange: onSortingChange
259
+ onSortingChange: onSortingChange,
260
+ enableHiding: !!onColumnVisibilityChange,
261
+ onColumnVisibilityChange: onColumnVisibilityChange
228
262
  });
229
- return /*#__PURE__*/_react.default.createElement(_styled.Table, {
263
+ var getColumnWidth = (0, _react.useCallback)(function (column) {
264
+ if (!column.getCanResize()) {
265
+ return column.getSize();
266
+ }
267
+ var tableSize = table.getTotalSize();
268
+ var columnSize = column.getSize();
269
+ return Math.ceil(columnSize * tableWidth / tableSize);
270
+ }, [table, tableWidth]);
271
+ return /*#__PURE__*/_react.default.createElement("div", {
272
+ ref: tableRef
273
+ }, /*#__PURE__*/_react.default.createElement(_styled.Table, {
230
274
  stickyColumns: stickyColumns,
231
275
  stickyRows: stickyRows,
232
276
  bordered: bordered
233
277
  }, /*#__PURE__*/_react.default.createElement(_dataTable.DataTableContent, null, /*#__PURE__*/_react.default.createElement(_dataTable.DataTableHead, null, table.getHeaderGroups().map(function (headerGroup) {
234
278
  return /*#__PURE__*/_react.default.createElement(_dataTable.DataTableRow, {
235
279
  key: headerGroup.id
236
- }, headerGroup.headers.map(function (_ref6) {
237
- var id = _ref6.id,
238
- isPlaceholder = _ref6.isPlaceholder,
239
- column = _ref6.column,
240
- getContext = _ref6.getContext,
241
- colSpan = _ref6.colSpan,
242
- getSize = _ref6.getSize,
243
- getResizeHandler = _ref6.getResizeHandler;
280
+ }, headerGroup.headers.map(function (header, index) {
281
+ var isLastCell = index === headerGroup.headers.length - 1;
282
+ var width = getColumnWidth(header.column);
244
283
  return /*#__PURE__*/_react.default.createElement(_styled.TableHeadCell, Object.assign({
245
- key: id
246
- }, column.columnDef.meta, {
247
- colSpan: colSpan,
284
+ key: header.id
285
+ }, header.column.columnDef.meta, {
286
+ colSpan: header.colSpan,
248
287
  style: {
249
- width: getSize()
288
+ width: width,
289
+ maxWidth: width
250
290
  }
251
- }), isPlaceholder ? null : /*#__PURE__*/_react.default.createElement(_styled.ColumnHeaderWrapper, {
252
- onClick: column.getToggleSortingHandler(),
253
- sortable: column.getCanSort()
254
- }, (0, _reactTable.flexRender)(column.columnDef.header, getContext()), /*#__PURE__*/_react.default.createElement(ColumnDirection, {
255
- direction: column.getIsSorted() || undefined
256
- })), column.getCanResize() && /*#__PURE__*/_react.default.createElement(_styled.Resizer, {
257
- onMouseDown: getResizeHandler(),
258
- onTouchStart: getResizeHandler(),
259
- isResizing: column.getIsResizing()
291
+ }), header.isPlaceholder ? null : /*#__PURE__*/_react.default.createElement(_styled.ColumnHeaderWrapper, {
292
+ onClick: header.column.getToggleSortingHandler(),
293
+ sortable: header.column.getCanSort(),
294
+ isLastCell: isLastCell
295
+ }, (0, _reactTable.flexRender)(header.column.columnDef.header, header.getContext()), /*#__PURE__*/_react.default.createElement(ColumnDirection, {
296
+ direction: header.column.getIsSorted() || undefined
297
+ }), isLastCell && /*#__PURE__*/_react.default.createElement(_ColumnsVisibility.ColumnsVisibility, {
298
+ columns: table.getAllColumns()
299
+ })), header.column.getCanResize() && /*#__PURE__*/_react.default.createElement(_styled.Resizer, {
300
+ onMouseDown: header.getResizeHandler(),
301
+ onTouchStart: header.getResizeHandler(),
302
+ isResizing: header.column.getIsResizing()
260
303
  }));
261
304
  }));
262
305
  })), /*#__PURE__*/_react.default.createElement(_dataTable.DataTableBody, null, table.getRowModel().rows.map(function (row) {
263
306
  return /*#__PURE__*/_react.default.createElement(MemoTableRow, {
264
307
  key: row.original.id || row.id,
265
- row: row,
266
- selected: row.getIsSelected()
308
+ cells: row.getVisibleCells(),
309
+ selected: row.getIsSelected(),
310
+ getColumnWidth: getColumnWidth
267
311
  });
268
- }))));
312
+ })))));
269
313
  };
270
314
  exports.DataTable = DataTable;
271
315