@instructure/ui-table 10.26.1 → 11.0.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 (74) hide show
  1. package/CHANGELOG.md +23 -2
  2. package/es/Table/Body/index.js +4 -16
  3. package/es/Table/Body/props.js +1 -5
  4. package/es/Table/Cell/index.js +2 -2
  5. package/es/Table/Cell/props.js +1 -7
  6. package/es/Table/ColHeader/index.js +2 -2
  7. package/es/Table/ColHeader/props.js +2 -14
  8. package/es/Table/Head/index.js +4 -6
  9. package/es/Table/Head/props.js +1 -6
  10. package/es/Table/Row/index.js +2 -5
  11. package/es/Table/Row/props.js +1 -6
  12. package/es/Table/RowHeader/index.js +2 -2
  13. package/es/Table/RowHeader/props.js +1 -6
  14. package/es/Table/index.js +6 -2
  15. package/es/Table/props.js +1 -10
  16. package/lib/Table/Body/index.js +3 -15
  17. package/lib/Table/Body/props.js +1 -6
  18. package/lib/Table/Cell/index.js +1 -1
  19. package/lib/Table/Cell/props.js +1 -8
  20. package/lib/Table/ColHeader/index.js +1 -1
  21. package/lib/Table/ColHeader/props.js +2 -15
  22. package/lib/Table/Head/index.js +3 -5
  23. package/lib/Table/Head/props.js +1 -7
  24. package/lib/Table/Row/index.js +1 -4
  25. package/lib/Table/Row/props.js +1 -7
  26. package/lib/Table/RowHeader/index.js +1 -1
  27. package/lib/Table/RowHeader/props.js +1 -7
  28. package/lib/Table/index.js +5 -1
  29. package/lib/Table/props.js +1 -11
  30. package/package.json +16 -19
  31. package/src/Table/Body/index.tsx +10 -14
  32. package/src/Table/Body/props.ts +1 -9
  33. package/src/Table/Cell/index.tsx +1 -2
  34. package/src/Table/Cell/props.ts +1 -11
  35. package/src/Table/ColHeader/index.tsx +1 -2
  36. package/src/Table/ColHeader/props.ts +1 -21
  37. package/src/Table/Head/index.tsx +26 -25
  38. package/src/Table/Head/props.ts +1 -10
  39. package/src/Table/Row/index.tsx +9 -7
  40. package/src/Table/Row/props.ts +3 -11
  41. package/src/Table/RowHeader/index.tsx +1 -2
  42. package/src/Table/RowHeader/props.ts +1 -10
  43. package/src/Table/index.tsx +20 -9
  44. package/src/Table/props.ts +3 -19
  45. package/tsconfig.build.json +0 -2
  46. package/tsconfig.build.tsbuildinfo +1 -1
  47. package/types/Table/Body/index.d.ts +0 -1
  48. package/types/Table/Body/index.d.ts.map +1 -1
  49. package/types/Table/Body/props.d.ts +2 -3
  50. package/types/Table/Body/props.d.ts.map +1 -1
  51. package/types/Table/Cell/index.d.ts +0 -5
  52. package/types/Table/Cell/index.d.ts.map +1 -1
  53. package/types/Table/Cell/props.d.ts +2 -3
  54. package/types/Table/Cell/props.d.ts.map +1 -1
  55. package/types/Table/ColHeader/index.d.ts +0 -14
  56. package/types/Table/ColHeader/index.d.ts.map +1 -1
  57. package/types/Table/ColHeader/props.d.ts +2 -7
  58. package/types/Table/ColHeader/props.d.ts.map +1 -1
  59. package/types/Table/Head/index.d.ts +0 -4
  60. package/types/Table/Head/index.d.ts.map +1 -1
  61. package/types/Table/Head/props.d.ts +2 -3
  62. package/types/Table/Head/props.d.ts.map +1 -1
  63. package/types/Table/Row/index.d.ts +1 -5
  64. package/types/Table/Row/index.d.ts.map +1 -1
  65. package/types/Table/Row/props.d.ts +3 -4
  66. package/types/Table/Row/props.d.ts.map +1 -1
  67. package/types/Table/RowHeader/index.d.ts +0 -4
  68. package/types/Table/RowHeader/index.d.ts.map +1 -1
  69. package/types/Table/RowHeader/props.d.ts +2 -3
  70. package/types/Table/RowHeader/props.d.ts.map +1 -1
  71. package/types/Table/index.d.ts +1 -9
  72. package/types/Table/index.d.ts.map +1 -1
  73. package/types/Table/props.d.ts +3 -4
  74. package/types/Table/props.d.ts.map +1 -1
package/CHANGELOG.md CHANGED
@@ -3,9 +3,30 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [10.26.1](https://github.com/instructure/instructure-ui/compare/v10.26.0...v10.26.1) (2025-10-06)
6
+ # [11.0.0](https://github.com/instructure/instructure-ui/compare/v10.26.0...v11.0.0) (2025-10-06)
7
7
 
8
- **Note:** Version bump only for package @instructure/ui-table
8
+
9
+ ### Features
10
+
11
+ * **many:** instUI v11 release ([36f5438](https://github.com/instructure/instructure-ui/commit/36f54382669186227ba24798bbf7201ef2f5cd4c))
12
+
13
+
14
+ ### BREAKING CHANGES
15
+
16
+ * **many:** InstUI v11 contains the following breaking changes:
17
+ - React 16 and 17 are no longer supported
18
+ - remove `PropTypes` from all packages
19
+ - remove `CodeEditor` component
20
+ - remove `@instui/theme-registry` package
21
+ - remove `@testable`, `@experimental`, `@hack` decorators
22
+ - InstUISettingsProvider's `as` prop is removed
23
+ - `canvas.use()`, `canvasHighContrast.use()` functions are removed
24
+ - `canvasThemeLocal`, `canvasHighContrastThemeLocal` are removed
25
+ - `variables` field on theme objects are removed
26
+ - remove deprecated props from Table: Row's `isStacked`, Body's
27
+ `isStacked`, `hover`, and `headers`
28
+ - `Table`'s `caption` prop is now required
29
+ - `ui-dom-utils`'s `getComputedStyle` can now return `undefined`
9
30
 
10
31
 
11
32
 
@@ -29,7 +29,7 @@ import { View } from '@instructure/ui-view';
29
29
  import { withStyle } from '@instructure/emotion';
30
30
  import generateStyle from './styles';
31
31
  import generateComponentTheme from './theme';
32
- import { allowedProps, propTypes } from './props';
32
+ import { allowedProps } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -52,10 +52,7 @@ let Body = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
52
52
  const _this$props3 = this.props,
53
53
  children = _this$props3.children,
54
54
  styles = _this$props3.styles;
55
- const _this$context = this.context,
56
- isStacked = _this$context.isStacked,
57
- hover = _this$context.hover,
58
- headers = _this$context.headers;
55
+ const isStacked = this.context.isStacked;
59
56
  return _jsx(View, {
60
57
  ...View.omitViewProps(omitProps(this.props, Body.allowedProps), Body),
61
58
  as: isStacked ? 'div' : 'tbody',
@@ -64,23 +61,14 @@ let Body = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
64
61
  children: Children.map(children, child => {
65
62
  if (/*#__PURE__*/isValidElement(child)) {
66
63
  return safeCloneElement(child, {
67
- key: child.props.name,
68
- // Sent down for compatibility with custom components
69
- // TODO DEPRECATED, remove in v11
70
- hover,
71
- // Sent down for compatibility with custom components
72
- // TODO DEPRECATED, remove in v11
73
- isStacked,
74
- // Sent down for compatibility with custom components
75
- // TODO DEPRECATED, remove in v11
76
- headers
64
+ key: child.props.name
77
65
  });
78
66
  }
79
67
  return child;
80
68
  })
81
69
  });
82
70
  }
83
- }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = TableContext, _Body.allowedProps = allowedProps, _Body.propTypes = propTypes, _Body.defaultProps = {
71
+ }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = TableContext, _Body.allowedProps = allowedProps, _Body.defaultProps = {
84
72
  children: null
85
73
  }, _Body)) || _class);
86
74
  export default Body;
@@ -22,9 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- children: PropTypes.node
28
- };
29
25
  const allowedProps = ['children'];
30
- export { propTypes, allowedProps };
26
+ export { allowedProps };
@@ -29,7 +29,7 @@ import { View } from '@instructure/ui-view';
29
29
  import { withStyle } from '@instructure/emotion';
30
30
  import generateStyle from './styles';
31
31
  import generateComponentTheme from './theme';
32
- import { allowedProps, propTypes } from './props';
32
+ import { allowedProps } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -62,7 +62,7 @@ let Cell = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
62
62
  children: [header && callRenderProp(header), header && ': ', callRenderProp(children)]
63
63
  });
64
64
  }
65
- }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = TableContext, _Cell.allowedProps = allowedProps, _Cell.propTypes = propTypes, _Cell.defaultProps = {
65
+ }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = TableContext, _Cell.allowedProps = allowedProps, _Cell.defaultProps = {
66
66
  textAlign: 'start',
67
67
  children: null
68
68
  }, _Cell)) || _class);
@@ -22,11 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
28
- header: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
29
- textAlign: PropTypes.oneOf(['start', 'center', 'end'])
30
- };
31
25
  const allowedProps = ['children', 'header', 'textAlign'];
32
- export { propTypes, allowedProps };
26
+ export { allowedProps };
@@ -29,7 +29,7 @@ import { IconMiniArrowUpLine, IconMiniArrowDownLine, IconMiniArrowDoubleLine } f
29
29
  import { withStyle } from '@instructure/emotion';
30
30
  import generateStyle from './styles';
31
31
  import generateComponentTheme from './theme';
32
- import { allowedProps, propTypes } from './props';
32
+ import { allowedProps } from './props';
33
33
 
34
34
  /**
35
35
  ---
@@ -106,7 +106,7 @@ let ColHeader = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_
106
106
  }), !onRequestSort && children, !onRequestSort && this.renderSortArrow()]
107
107
  });
108
108
  }
109
- }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = allowedProps, _ColHeader.propTypes = propTypes, _ColHeader.defaultProps = {
109
+ }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = allowedProps, _ColHeader.defaultProps = {
110
110
  textAlign: 'start',
111
111
  sortDirection: 'none',
112
112
  children: null,
@@ -22,17 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- isStacked: PropTypes.bool,
28
- id: PropTypes.string.isRequired,
29
- stackedSortByLabel: PropTypes.string,
30
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
31
- width: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
32
- textAlign: PropTypes.oneOf(['start', 'center', 'end']),
33
- sortDirection: PropTypes.oneOf(['none', 'ascending', 'descending']),
34
- onRequestSort: PropTypes.func,
35
- scope: PropTypes.oneOf(['row', 'col', 'rowgroup', 'colgroup', 'auto'])
36
- };
37
- const allowedProps = ['id', 'isStacked', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
38
- export { propTypes, allowedProps };
25
+ const allowedProps = ['id', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
26
+ export { allowedProps };
@@ -33,7 +33,7 @@ import { warn } from '@instructure/console';
33
33
  import { withStyle } from '@instructure/emotion';
34
34
  import generateStyle from './styles';
35
35
  import generateComponentTheme from './theme';
36
- import { allowedProps, propTypes } from './props';
36
+ import { allowedProps } from './props';
37
37
  import TableContext from '../TableContext';
38
38
 
39
39
  /**
@@ -161,15 +161,13 @@ let Head = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
161
161
  const _this$props4 = this.props,
162
162
  children = _this$props4.children,
163
163
  styles = _this$props4.styles;
164
- return this.context.isStacked ? this.renderSelect() :
165
- // TODO remove 'hover' exclude in v11, its passed down for compatibility with custom components
166
- _jsx("thead", {
167
- ...omitProps(this.props, Head.allowedProps, ['hover']),
164
+ return this.context.isStacked ? this.renderSelect() : _jsx("thead", {
165
+ ...omitProps(this.props, Head.allowedProps),
168
166
  css: styles === null || styles === void 0 ? void 0 : styles.head,
169
167
  children: children
170
168
  });
171
169
  }
172
- }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = TableContext, _Head.allowedProps = allowedProps, _Head.propTypes = propTypes, _Head.defaultProps = {
170
+ }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = TableContext, _Head.allowedProps = allowedProps, _Head.defaultProps = {
173
171
  children: null
174
172
  }, _Head)) || _class);
175
173
  export default Head;
@@ -22,10 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- children: PropTypes.node,
28
- renderSortLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func])
29
- };
30
25
  const allowedProps = ['children', 'renderSortLabel'];
31
- export { propTypes, allowedProps };
26
+ export { allowedProps };
@@ -29,7 +29,7 @@ import { View } from '@instructure/ui-view';
29
29
  import { withStyle } from '@instructure/emotion';
30
30
  import generateStyle from './styles';
31
31
  import generateComponentTheme from './theme';
32
- import { allowedProps, propTypes } from './props';
32
+ import { allowedProps } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -69,9 +69,6 @@ let Row = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
69
69
  if (/*#__PURE__*/isValidElement(child)) {
70
70
  return safeCloneElement(child, {
71
71
  key: child.props.name,
72
- // Sent down for compatibility with custom components
73
- // TODO DEPRECATED, remove in v11
74
- isStacked,
75
72
  // used by `Cell` to render its column title in `stacked` layout
76
73
  header: headers && headers[index]
77
74
  });
@@ -80,7 +77,7 @@ let Row = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
80
77
  })
81
78
  });
82
79
  }
83
- }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = TableContext, _Row.allowedProps = allowedProps, _Row.propTypes = propTypes, _Row.defaultProps = {
80
+ }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = TableContext, _Row.allowedProps = allowedProps, _Row.defaultProps = {
84
81
  children: null
85
82
  }, _Row)) || _class);
86
83
  export default Row;
@@ -22,10 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- children: PropTypes.node,
28
- setHoverStateTo: PropTypes.bool
29
- };
30
25
  const allowedProps = ['children', 'setHoverStateTo'];
31
- export { propTypes, allowedProps };
26
+ export { allowedProps };
@@ -29,7 +29,7 @@ import { View } from '@instructure/ui-view';
29
29
  import { withStyle } from '@instructure/emotion';
30
30
  import generateStyle from './styles';
31
31
  import generateComponentTheme from './theme';
32
- import { allowedProps, propTypes } from './props';
32
+ import { allowedProps } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -62,7 +62,7 @@ let RowHeader = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_
62
62
  children: callRenderProp(children)
63
63
  });
64
64
  }
65
- }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = TableContext, _RowHeader.allowedProps = allowedProps, _RowHeader.propTypes = propTypes, _RowHeader.defaultProps = {
65
+ }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = TableContext, _RowHeader.allowedProps = allowedProps, _RowHeader.defaultProps = {
66
66
  textAlign: 'start',
67
67
  children: null
68
68
  }, _RowHeader)) || _class);
@@ -22,10 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
28
- textAlign: PropTypes.oneOf(['start', 'center', 'end'])
29
- };
30
25
  const allowedProps = ['children', 'textAlign'];
31
- export { propTypes, allowedProps };
26
+ export { allowedProps };
package/es/Table/index.js CHANGED
@@ -37,8 +37,9 @@ import { Row } from './Row';
37
37
  import { ColHeader } from './ColHeader';
38
38
  import { RowHeader } from './RowHeader';
39
39
  import { Cell } from './Cell';
40
- import { allowedProps, propTypes } from './props';
40
+ import { allowedProps } from './props';
41
41
  import TableContext from './TableContext';
42
+ import { error } from '@instructure/console';
42
43
 
43
44
  /**
44
45
  ---
@@ -90,6 +91,9 @@ let Table = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_clas
90
91
  styles = _this$props3.styles;
91
92
  const isStacked = layout === 'stacked';
92
93
  const headers = isStacked ? this.getHeaders() : void 0;
94
+ if (!caption) {
95
+ error(false, `[Table] required prop caption is not set.`);
96
+ }
93
97
  return _jsx(TableContext.Provider, {
94
98
  value: {
95
99
  isStacked: isStacked,
@@ -119,7 +123,7 @@ let Table = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_clas
119
123
  })
120
124
  });
121
125
  }
122
- }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = allowedProps, _Table.propTypes = propTypes, _Table.defaultProps = {
126
+ }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = allowedProps, _Table.defaultProps = {
123
127
  children: null,
124
128
  hover: false,
125
129
  layout: 'auto'
package/es/Table/props.js CHANGED
@@ -22,14 +22,5 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- import PropTypes from 'prop-types';
26
- const propTypes = {
27
- caption: PropTypes.node.isRequired,
28
- children: PropTypes.node,
29
- margin: PropTypes.string,
30
- elementRef: PropTypes.func,
31
- hover: PropTypes.bool,
32
- layout: PropTypes.oneOf(['auto', 'fixed', 'stacked'])
33
- };
34
25
  const allowedProps = ['caption', 'children', 'margin', 'elementRef', 'hover', 'layout'];
35
- export { propTypes, allowedProps };
26
+ export { allowedProps };
@@ -58,10 +58,7 @@ let Body = exports.Body = (_dec = (0, _emotion.withStyle)(_styles.default, _them
58
58
  const _this$props3 = this.props,
59
59
  children = _this$props3.children,
60
60
  styles = _this$props3.styles;
61
- const _this$context = this.context,
62
- isStacked = _this$context.isStacked,
63
- hover = _this$context.hover,
64
- headers = _this$context.headers;
61
+ const isStacked = this.context.isStacked;
65
62
  return (0, _jsxRuntime.jsx)(_View.View, {
66
63
  ..._View.View.omitViewProps((0, _omitProps.omitProps)(this.props, Body.allowedProps), Body),
67
64
  as: isStacked ? 'div' : 'tbody',
@@ -70,23 +67,14 @@ let Body = exports.Body = (_dec = (0, _emotion.withStyle)(_styles.default, _them
70
67
  children: _react.Children.map(children, child => {
71
68
  if (/*#__PURE__*/(0, _react.isValidElement)(child)) {
72
69
  return (0, _safeCloneElement.safeCloneElement)(child, {
73
- key: child.props.name,
74
- // Sent down for compatibility with custom components
75
- // TODO DEPRECATED, remove in v11
76
- hover,
77
- // Sent down for compatibility with custom components
78
- // TODO DEPRECATED, remove in v11
79
- isStacked,
80
- // Sent down for compatibility with custom components
81
- // TODO DEPRECATED, remove in v11
82
- headers
70
+ key: child.props.name
83
71
  });
84
72
  }
85
73
  return child;
86
74
  })
87
75
  });
88
76
  }
89
- }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = _TableContext.default, _Body.allowedProps = _props.allowedProps, _Body.propTypes = _props.propTypes, _Body.defaultProps = {
77
+ }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = _TableContext.default, _Body.allowedProps = _props.allowedProps, _Body.defaultProps = {
90
78
  children: null
91
79
  }, _Body)) || _class);
92
80
  var _default = exports.default = Body;
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,7 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- children: _propTypes.default.node
35
- };
36
31
  const allowedProps = exports.allowedProps = ['children'];
@@ -68,7 +68,7 @@ let Cell = exports.Cell = (_dec = (0, _emotion.withStyle)(_styles.default, _them
68
68
  children: [header && (0, _callRenderProp.callRenderProp)(header), header && ': ', (0, _callRenderProp.callRenderProp)(children)]
69
69
  });
70
70
  }
71
- }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = _TableContext.default, _Cell.allowedProps = _props.allowedProps, _Cell.propTypes = _props.propTypes, _Cell.defaultProps = {
71
+ }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = _TableContext.default, _Cell.allowedProps = _props.allowedProps, _Cell.defaultProps = {
72
72
  textAlign: 'start',
73
73
  children: null
74
74
  }, _Cell)) || _class);
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,9 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
35
- header: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
36
- textAlign: _propTypes.default.oneOf(['start', 'center', 'end'])
37
- };
38
31
  const allowedProps = exports.allowedProps = ['children', 'header', 'textAlign'];
@@ -114,7 +114,7 @@ let ColHeader = exports.ColHeader = (_dec = (0, _emotion.withStyle)(_styles.defa
114
114
  }), !onRequestSort && children, !onRequestSort && this.renderSortArrow()]
115
115
  });
116
116
  }
117
- }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = _props.allowedProps, _ColHeader.propTypes = _props.propTypes, _ColHeader.defaultProps = {
117
+ }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = _props.allowedProps, _ColHeader.defaultProps = {
118
118
  textAlign: 'start',
119
119
  sortDirection: 'none',
120
120
  children: null,
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,15 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- isStacked: _propTypes.default.bool,
35
- id: _propTypes.default.string.isRequired,
36
- stackedSortByLabel: _propTypes.default.string,
37
- children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
38
- width: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
39
- textAlign: _propTypes.default.oneOf(['start', 'center', 'end']),
40
- sortDirection: _propTypes.default.oneOf(['none', 'ascending', 'descending']),
41
- onRequestSort: _propTypes.default.func,
42
- scope: _propTypes.default.oneOf(['row', 'col', 'rowgroup', 'colgroup', 'auto'])
43
- };
44
- const allowedProps = exports.allowedProps = ['id', 'isStacked', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
31
+ const allowedProps = exports.allowedProps = ['id', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
@@ -167,15 +167,13 @@ let Head = exports.Head = (_dec = (0, _emotion.withStyle)(_styles.default, _them
167
167
  const _this$props4 = this.props,
168
168
  children = _this$props4.children,
169
169
  styles = _this$props4.styles;
170
- return this.context.isStacked ? this.renderSelect() :
171
- // TODO remove 'hover' exclude in v11, its passed down for compatibility with custom components
172
- (0, _jsxRuntime.jsx)("thead", {
173
- ...(0, _omitProps.omitProps)(this.props, Head.allowedProps, ['hover']),
170
+ return this.context.isStacked ? this.renderSelect() : (0, _jsxRuntime.jsx)("thead", {
171
+ ...(0, _omitProps.omitProps)(this.props, Head.allowedProps),
174
172
  css: styles === null || styles === void 0 ? void 0 : styles.head,
175
173
  children: children
176
174
  });
177
175
  }
178
- }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = _TableContext.default, _Head.allowedProps = _props.allowedProps, _Head.propTypes = _props.propTypes, _Head.defaultProps = {
176
+ }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = _TableContext.default, _Head.allowedProps = _props.allowedProps, _Head.defaultProps = {
179
177
  children: null
180
178
  }, _Head)) || _class);
181
179
  var _default = exports.default = Head;
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,8 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- children: _propTypes.default.node,
35
- renderSortLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func])
36
- };
37
31
  const allowedProps = exports.allowedProps = ['children', 'renderSortLabel'];
@@ -75,9 +75,6 @@ let Row = exports.Row = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.
75
75
  if (/*#__PURE__*/(0, _react.isValidElement)(child)) {
76
76
  return (0, _safeCloneElement.safeCloneElement)(child, {
77
77
  key: child.props.name,
78
- // Sent down for compatibility with custom components
79
- // TODO DEPRECATED, remove in v11
80
- isStacked,
81
78
  // used by `Cell` to render its column title in `stacked` layout
82
79
  header: headers && headers[index]
83
80
  });
@@ -86,7 +83,7 @@ let Row = exports.Row = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.
86
83
  })
87
84
  });
88
85
  }
89
- }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = _TableContext.default, _Row.allowedProps = _props.allowedProps, _Row.propTypes = _props.propTypes, _Row.defaultProps = {
86
+ }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = _TableContext.default, _Row.allowedProps = _props.allowedProps, _Row.defaultProps = {
90
87
  children: null
91
88
  }, _Row)) || _class);
92
89
  var _default = exports.default = Row;
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,8 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- children: _propTypes.default.node,
35
- setHoverStateTo: _propTypes.default.bool
36
- };
37
31
  const allowedProps = exports.allowedProps = ['children', 'setHoverStateTo'];
@@ -68,7 +68,7 @@ let RowHeader = exports.RowHeader = (_dec = (0, _emotion.withStyle)(_styles.defa
68
68
  children: (0, _callRenderProp.callRenderProp)(children)
69
69
  });
70
70
  }
71
- }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = _TableContext.default, _RowHeader.allowedProps = _props.allowedProps, _RowHeader.propTypes = _props.propTypes, _RowHeader.defaultProps = {
71
+ }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = _TableContext.default, _RowHeader.allowedProps = _props.allowedProps, _RowHeader.defaultProps = {
72
72
  textAlign: 'start',
73
73
  children: null
74
74
  }, _RowHeader)) || _class);
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,8 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
35
- textAlign: _propTypes.default.oneOf(['start', 'center', 'end'])
36
- };
37
31
  const allowedProps = exports.allowedProps = ['children', 'textAlign'];
@@ -22,6 +22,7 @@ var _RowHeader = require("./RowHeader");
22
22
  var _Cell = require("./Cell");
23
23
  var _props = require("./props");
24
24
  var _TableContext = _interopRequireDefault(require("./TableContext"));
25
+ var _console = require("@instructure/console");
25
26
  var _jsxRuntime = require("@emotion/react/jsx-runtime");
26
27
  var _dec, _class, _Table;
27
28
  /*
@@ -96,6 +97,9 @@ let Table = exports.Table = (_dec = (0, _emotion.withStyle)(_styles.default, _th
96
97
  styles = _this$props3.styles;
97
98
  const isStacked = layout === 'stacked';
98
99
  const headers = isStacked ? this.getHeaders() : void 0;
100
+ if (!caption) {
101
+ (0, _console.error)(false, `[Table] required prop caption is not set.`);
102
+ }
99
103
  return (0, _jsxRuntime.jsx)(_TableContext.default.Provider, {
100
104
  value: {
101
105
  isStacked: isStacked,
@@ -125,7 +129,7 @@ let Table = exports.Table = (_dec = (0, _emotion.withStyle)(_styles.default, _th
125
129
  })
126
130
  });
127
131
  }
128
- }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = _props.allowedProps, _Table.propTypes = _props.propTypes, _Table.defaultProps = {
132
+ }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = _props.allowedProps, _Table.defaultProps = {
129
133
  children: null,
130
134
  hover: false,
131
135
  layout: 'auto'
@@ -1,11 +1,9 @@
1
1
  "use strict";
2
2
 
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
3
  Object.defineProperty(exports, "__esModule", {
5
4
  value: true
6
5
  });
7
- exports.propTypes = exports.allowedProps = void 0;
8
- var _propTypes = _interopRequireDefault(require("prop-types"));
6
+ exports.allowedProps = void 0;
9
7
  /*
10
8
  * The MIT License (MIT)
11
9
  *
@@ -30,12 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
30
28
  * SOFTWARE.
31
29
  */
32
30
 
33
- const propTypes = exports.propTypes = {
34
- caption: _propTypes.default.node.isRequired,
35
- children: _propTypes.default.node,
36
- margin: _propTypes.default.string,
37
- elementRef: _propTypes.default.func,
38
- hover: _propTypes.default.bool,
39
- layout: _propTypes.default.oneOf(['auto', 'fixed', 'stacked'])
40
- };
41
31
  const allowedProps = exports.allowedProps = ['caption', 'children', 'margin', 'elementRef', 'hover', 'layout'];