@instructure/ui-table 10.25.1-pr-snapshot-1758274491790 → 10.25.1-snapshot-1

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 +2 -5
  2. package/es/Table/Body/index.js +16 -4
  3. package/es/Table/Body/props.js +5 -1
  4. package/es/Table/Cell/index.js +2 -2
  5. package/es/Table/Cell/props.js +7 -1
  6. package/es/Table/ColHeader/index.js +2 -2
  7. package/es/Table/ColHeader/props.js +14 -2
  8. package/es/Table/Head/index.js +6 -4
  9. package/es/Table/Head/props.js +6 -1
  10. package/es/Table/Row/index.js +5 -2
  11. package/es/Table/Row/props.js +6 -1
  12. package/es/Table/RowHeader/index.js +2 -2
  13. package/es/Table/RowHeader/props.js +6 -1
  14. package/es/Table/index.js +2 -2
  15. package/es/Table/props.js +10 -1
  16. package/lib/Table/Body/index.js +15 -3
  17. package/lib/Table/Body/props.js +6 -1
  18. package/lib/Table/Cell/index.js +1 -1
  19. package/lib/Table/Cell/props.js +8 -1
  20. package/lib/Table/ColHeader/index.js +1 -1
  21. package/lib/Table/ColHeader/props.js +15 -2
  22. package/lib/Table/Head/index.js +5 -3
  23. package/lib/Table/Head/props.js +7 -1
  24. package/lib/Table/Row/index.js +4 -1
  25. package/lib/Table/Row/props.js +7 -1
  26. package/lib/Table/RowHeader/index.js +1 -1
  27. package/lib/Table/RowHeader/props.js +7 -1
  28. package/lib/Table/index.js +1 -1
  29. package/lib/Table/props.js +11 -1
  30. package/package.json +18 -15
  31. package/src/Table/Body/index.tsx +14 -10
  32. package/src/Table/Body/props.ts +9 -1
  33. package/src/Table/Cell/index.tsx +2 -1
  34. package/src/Table/Cell/props.ts +11 -1
  35. package/src/Table/ColHeader/index.tsx +2 -1
  36. package/src/Table/ColHeader/props.ts +21 -1
  37. package/src/Table/Head/index.tsx +25 -26
  38. package/src/Table/Head/props.ts +10 -1
  39. package/src/Table/Row/index.tsx +7 -9
  40. package/src/Table/Row/props.ts +11 -3
  41. package/src/Table/RowHeader/index.tsx +2 -1
  42. package/src/Table/RowHeader/props.ts +10 -1
  43. package/src/Table/index.tsx +9 -15
  44. package/src/Table/props.ts +18 -2
  45. package/tsconfig.build.json +2 -0
  46. package/tsconfig.build.tsbuildinfo +1 -1
  47. package/types/Table/Body/index.d.ts +1 -0
  48. package/types/Table/Body/index.d.ts.map +1 -1
  49. package/types/Table/Body/props.d.ts +3 -2
  50. package/types/Table/Body/props.d.ts.map +1 -1
  51. package/types/Table/Cell/index.d.ts +5 -0
  52. package/types/Table/Cell/index.d.ts.map +1 -1
  53. package/types/Table/Cell/props.d.ts +3 -2
  54. package/types/Table/Cell/props.d.ts.map +1 -1
  55. package/types/Table/ColHeader/index.d.ts +14 -0
  56. package/types/Table/ColHeader/index.d.ts.map +1 -1
  57. package/types/Table/ColHeader/props.d.ts +7 -2
  58. package/types/Table/ColHeader/props.d.ts.map +1 -1
  59. package/types/Table/Head/index.d.ts +4 -0
  60. package/types/Table/Head/index.d.ts.map +1 -1
  61. package/types/Table/Head/props.d.ts +3 -2
  62. package/types/Table/Head/props.d.ts.map +1 -1
  63. package/types/Table/Row/index.d.ts +5 -1
  64. package/types/Table/Row/index.d.ts.map +1 -1
  65. package/types/Table/Row/props.d.ts +4 -3
  66. package/types/Table/Row/props.d.ts.map +1 -1
  67. package/types/Table/RowHeader/index.d.ts +4 -0
  68. package/types/Table/RowHeader/index.d.ts.map +1 -1
  69. package/types/Table/RowHeader/props.d.ts +3 -2
  70. package/types/Table/RowHeader/props.d.ts.map +1 -1
  71. package/types/Table/index.d.ts +8 -0
  72. package/types/Table/index.d.ts.map +1 -1
  73. package/types/Table/props.d.ts +3 -2
  74. package/types/Table/props.d.ts.map +1 -1
package/CHANGELOG.md CHANGED
@@ -3,12 +3,9 @@
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.25.1-pr-snapshot-1758274491790](https://github.com/instructure/instructure-ui/compare/v10.25.0...v10.25.1-pr-snapshot-1758274491790) (2025-09-19)
6
+ ## [10.25.1-snapshot-1](https://github.com/instructure/instructure-ui/compare/v10.25.0...v10.25.1-snapshot-1) (2025-09-17)
7
7
 
8
-
9
- ### Features
10
-
11
- * **many:** remove prop-types; add support for react 19 and upgrade docs app to use it ([392adc3](https://github.com/instructure/instructure-ui/commit/392adc39ffd3ac7f9e351efc8560c5a3c2540005))
8
+ **Note:** Version bump only for package @instructure/ui-table
12
9
 
13
10
 
14
11
 
@@ -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 } from './props';
32
+ import { allowedProps, propTypes } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -52,7 +52,10 @@ 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 isStacked = this.context.isStacked;
55
+ const _this$context = this.context,
56
+ isStacked = _this$context.isStacked,
57
+ hover = _this$context.hover,
58
+ headers = _this$context.headers;
56
59
  return _jsx(View, {
57
60
  ...View.omitViewProps(omitProps(this.props, Body.allowedProps), Body),
58
61
  as: isStacked ? 'div' : 'tbody',
@@ -61,14 +64,23 @@ let Body = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
61
64
  children: Children.map(children, child => {
62
65
  if (/*#__PURE__*/isValidElement(child)) {
63
66
  return safeCloneElement(child, {
64
- key: child.props.name
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
65
77
  });
66
78
  }
67
79
  return child;
68
80
  })
69
81
  });
70
82
  }
71
- }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = TableContext, _Body.allowedProps = allowedProps, _Body.defaultProps = {
83
+ }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = TableContext, _Body.allowedProps = allowedProps, _Body.propTypes = propTypes, _Body.defaultProps = {
72
84
  children: null
73
85
  }, _Body)) || _class);
74
86
  export default Body;
@@ -22,5 +22,9 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
+ import PropTypes from 'prop-types';
26
+ const propTypes = {
27
+ children: PropTypes.node
28
+ };
25
29
  const allowedProps = ['children'];
26
- export { allowedProps };
30
+ export { propTypes, 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 } from './props';
32
+ import { allowedProps, propTypes } 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.defaultProps = {
65
+ }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = TableContext, _Cell.allowedProps = allowedProps, _Cell.propTypes = propTypes, _Cell.defaultProps = {
66
66
  textAlign: 'start',
67
67
  children: null
68
68
  }, _Cell)) || _class);
@@ -22,5 +22,11 @@
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
+ };
25
31
  const allowedProps = ['children', 'header', 'textAlign'];
26
- export { allowedProps };
32
+ export { propTypes, 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 } from './props';
32
+ import { allowedProps, propTypes } 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.defaultProps = {
109
+ }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = allowedProps, _ColHeader.propTypes = propTypes, _ColHeader.defaultProps = {
110
110
  textAlign: 'start',
111
111
  sortDirection: 'none',
112
112
  children: null,
@@ -22,5 +22,17 @@
22
22
  * SOFTWARE.
23
23
  */
24
24
 
25
- const allowedProps = ['id', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
26
- export { allowedProps };
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 };
@@ -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 } from './props';
36
+ import { allowedProps, propTypes } from './props';
37
37
  import TableContext from '../TableContext';
38
38
 
39
39
  /**
@@ -161,13 +161,15 @@ 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() : _jsx("thead", {
165
- ...omitProps(this.props, Head.allowedProps),
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']),
166
168
  css: styles === null || styles === void 0 ? void 0 : styles.head,
167
169
  children: children
168
170
  });
169
171
  }
170
- }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = TableContext, _Head.allowedProps = allowedProps, _Head.defaultProps = {
172
+ }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = TableContext, _Head.allowedProps = allowedProps, _Head.propTypes = propTypes, _Head.defaultProps = {
171
173
  children: null
172
174
  }, _Head)) || _class);
173
175
  export default Head;
@@ -22,5 +22,10 @@
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
+ };
25
30
  const allowedProps = ['children', 'renderSortLabel'];
26
- export { allowedProps };
31
+ export { propTypes, 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 } from './props';
32
+ import { allowedProps, propTypes } from './props';
33
33
  import TableContext from '../TableContext';
34
34
 
35
35
  /**
@@ -69,6 +69,9 @@ 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,
72
75
  // used by `Cell` to render its column title in `stacked` layout
73
76
  header: headers && headers[index]
74
77
  });
@@ -77,7 +80,7 @@ let Row = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_class
77
80
  })
78
81
  });
79
82
  }
80
- }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = TableContext, _Row.allowedProps = allowedProps, _Row.defaultProps = {
83
+ }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = TableContext, _Row.allowedProps = allowedProps, _Row.propTypes = propTypes, _Row.defaultProps = {
81
84
  children: null
82
85
  }, _Row)) || _class);
83
86
  export default Row;
@@ -22,5 +22,10 @@
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
+ };
25
30
  const allowedProps = ['children', 'setHoverStateTo'];
26
- export { allowedProps };
31
+ export { propTypes, 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 } from './props';
32
+ import { allowedProps, propTypes } 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.defaultProps = {
65
+ }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = TableContext, _RowHeader.allowedProps = allowedProps, _RowHeader.propTypes = propTypes, _RowHeader.defaultProps = {
66
66
  textAlign: 'start',
67
67
  children: null
68
68
  }, _RowHeader)) || _class);
@@ -22,5 +22,10 @@
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
+ };
25
30
  const allowedProps = ['children', 'textAlign'];
26
- export { allowedProps };
31
+ export { propTypes, allowedProps };
package/es/Table/index.js CHANGED
@@ -37,7 +37,7 @@ 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 } from './props';
40
+ import { allowedProps, propTypes } from './props';
41
41
  import TableContext from './TableContext';
42
42
 
43
43
  /**
@@ -119,7 +119,7 @@ let Table = (_dec = withStyle(generateStyle, generateComponentTheme), _dec(_clas
119
119
  })
120
120
  });
121
121
  }
122
- }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = allowedProps, _Table.defaultProps = {
122
+ }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = allowedProps, _Table.propTypes = propTypes, _Table.defaultProps = {
123
123
  children: null,
124
124
  hover: false,
125
125
  layout: 'auto'
package/es/Table/props.js CHANGED
@@ -22,5 +22,14 @@
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
+ };
25
34
  const allowedProps = ['caption', 'children', 'margin', 'elementRef', 'hover', 'layout'];
26
- export { allowedProps };
35
+ export { propTypes, allowedProps };
@@ -58,7 +58,10 @@ 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 isStacked = this.context.isStacked;
61
+ const _this$context = this.context,
62
+ isStacked = _this$context.isStacked,
63
+ hover = _this$context.hover,
64
+ headers = _this$context.headers;
62
65
  return (0, _jsxRuntime.jsx)(_View.View, {
63
66
  ..._View.View.omitViewProps((0, _omitProps.omitProps)(this.props, Body.allowedProps), Body),
64
67
  as: isStacked ? 'div' : 'tbody',
@@ -67,14 +70,23 @@ let Body = exports.Body = (_dec = (0, _emotion.withStyle)(_styles.default, _them
67
70
  children: _react.Children.map(children, child => {
68
71
  if (/*#__PURE__*/(0, _react.isValidElement)(child)) {
69
72
  return (0, _safeCloneElement.safeCloneElement)(child, {
70
- key: child.props.name
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
71
83
  });
72
84
  }
73
85
  return child;
74
86
  })
75
87
  });
76
88
  }
77
- }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = _TableContext.default, _Body.allowedProps = _props.allowedProps, _Body.defaultProps = {
89
+ }, _Body.displayName = "Body", _Body.componentId = 'Table.Body', _Body.contextType = _TableContext.default, _Body.allowedProps = _props.allowedProps, _Body.propTypes = _props.propTypes, _Body.defaultProps = {
78
90
  children: null
79
91
  }, _Body)) || _class);
80
92
  var _default = exports.default = Body;
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,7 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
33
+ const propTypes = exports.propTypes = {
34
+ children: _propTypes.default.node
35
+ };
31
36
  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.defaultProps = {
71
+ }, _Cell.displayName = "Cell", _Cell.componentId = 'Table.Cell', _Cell.contextType = _TableContext.default, _Cell.allowedProps = _props.allowedProps, _Cell.propTypes = _props.propTypes, _Cell.defaultProps = {
72
72
  textAlign: 'start',
73
73
  children: null
74
74
  }, _Cell)) || _class);
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,9 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
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
+ };
31
38
  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.defaultProps = {
117
+ }, _ColHeader.displayName = "ColHeader", _ColHeader.componentId = 'Table.ColHeader', _ColHeader.allowedProps = _props.allowedProps, _ColHeader.propTypes = _props.propTypes, _ColHeader.defaultProps = {
118
118
  textAlign: 'start',
119
119
  sortDirection: 'none',
120
120
  children: null,
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,15 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
31
- const allowedProps = exports.allowedProps = ['id', 'stackedSortByLabel', 'children', 'width', 'textAlign', 'sortDirection', 'onRequestSort', 'scope'];
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'];
@@ -167,13 +167,15 @@ 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() : (0, _jsxRuntime.jsx)("thead", {
171
- ...(0, _omitProps.omitProps)(this.props, Head.allowedProps),
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']),
172
174
  css: styles === null || styles === void 0 ? void 0 : styles.head,
173
175
  children: children
174
176
  });
175
177
  }
176
- }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = _TableContext.default, _Head.allowedProps = _props.allowedProps, _Head.defaultProps = {
178
+ }, _Head.displayName = "Head", _Head.componentId = 'Table.Head', _Head.contextType = _TableContext.default, _Head.allowedProps = _props.allowedProps, _Head.propTypes = _props.propTypes, _Head.defaultProps = {
177
179
  children: null
178
180
  }, _Head)) || _class);
179
181
  var _default = exports.default = Head;
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,8 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
33
+ const propTypes = exports.propTypes = {
34
+ children: _propTypes.default.node,
35
+ renderSortLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func])
36
+ };
31
37
  const allowedProps = exports.allowedProps = ['children', 'renderSortLabel'];
@@ -75,6 +75,9 @@ 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,
78
81
  // used by `Cell` to render its column title in `stacked` layout
79
82
  header: headers && headers[index]
80
83
  });
@@ -83,7 +86,7 @@ let Row = exports.Row = (_dec = (0, _emotion.withStyle)(_styles.default, _theme.
83
86
  })
84
87
  });
85
88
  }
86
- }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = _TableContext.default, _Row.allowedProps = _props.allowedProps, _Row.defaultProps = {
89
+ }, _Row.displayName = "Row", _Row.componentId = 'Table.Row', _Row.contextType = _TableContext.default, _Row.allowedProps = _props.allowedProps, _Row.propTypes = _props.propTypes, _Row.defaultProps = {
87
90
  children: null
88
91
  }, _Row)) || _class);
89
92
  var _default = exports.default = Row;
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,8 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
33
+ const propTypes = exports.propTypes = {
34
+ children: _propTypes.default.node,
35
+ setHoverStateTo: _propTypes.default.bool
36
+ };
31
37
  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.defaultProps = {
71
+ }, _RowHeader.displayName = "RowHeader", _RowHeader.componentId = 'Table.RowHeader', _RowHeader.contextType = _TableContext.default, _RowHeader.allowedProps = _props.allowedProps, _RowHeader.propTypes = _props.propTypes, _RowHeader.defaultProps = {
72
72
  textAlign: 'start',
73
73
  children: null
74
74
  }, _RowHeader)) || _class);
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,8 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
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
+ };
31
37
  const allowedProps = exports.allowedProps = ['children', 'textAlign'];
@@ -125,7 +125,7 @@ let Table = exports.Table = (_dec = (0, _emotion.withStyle)(_styles.default, _th
125
125
  })
126
126
  });
127
127
  }
128
- }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = _props.allowedProps, _Table.defaultProps = {
128
+ }, _Table.displayName = "Table", _Table.componentId = 'Table', _Table.allowedProps = _props.allowedProps, _Table.propTypes = _props.propTypes, _Table.defaultProps = {
129
129
  children: null,
130
130
  hover: false,
131
131
  layout: 'auto'
@@ -1,9 +1,11 @@
1
1
  "use strict";
2
2
 
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
3
4
  Object.defineProperty(exports, "__esModule", {
4
5
  value: true
5
6
  });
6
- exports.allowedProps = void 0;
7
+ exports.propTypes = exports.allowedProps = void 0;
8
+ var _propTypes = _interopRequireDefault(require("prop-types"));
7
9
  /*
8
10
  * The MIT License (MIT)
9
11
  *
@@ -28,4 +30,12 @@ exports.allowedProps = void 0;
28
30
  * SOFTWARE.
29
31
  */
30
32
 
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
+ };
31
41
  const allowedProps = exports.allowedProps = ['caption', 'children', 'margin', 'elementRef', 'hover', 'layout'];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@instructure/ui-table",
3
- "version": "10.25.1-pr-snapshot-1758274491790",
3
+ "version": "10.25.1-snapshot-1",
4
4
  "description": "A styled HTML table component",
5
5
  "author": "Instructure, Inc. Engineering and Product Design",
6
6
  "module": "./es/index.js",
@@ -23,10 +23,10 @@
23
23
  },
24
24
  "license": "MIT",
25
25
  "devDependencies": {
26
- "@instructure/ui-axe-check": "10.25.1-pr-snapshot-1758274491790",
27
- "@instructure/ui-babel-preset": "10.25.1-pr-snapshot-1758274491790",
28
- "@instructure/ui-color-utils": "10.25.1-pr-snapshot-1758274491790",
29
- "@instructure/ui-themes": "10.25.1-pr-snapshot-1758274491790",
26
+ "@instructure/ui-axe-check": "10.25.1-snapshot-1",
27
+ "@instructure/ui-babel-preset": "10.25.1-snapshot-1",
28
+ "@instructure/ui-color-utils": "10.25.1-snapshot-1",
29
+ "@instructure/ui-themes": "10.25.1-snapshot-1",
30
30
  "@testing-library/jest-dom": "^6.6.3",
31
31
  "@testing-library/react": "^16.0.1",
32
32
  "@testing-library/user-event": "^14.6.1",
@@ -34,18 +34,21 @@
34
34
  },
35
35
  "dependencies": {
36
36
  "@babel/runtime": "^7.27.6",
37
- "@instructure/console": "10.25.1-pr-snapshot-1758274491790",
38
- "@instructure/emotion": "10.25.1-pr-snapshot-1758274491790",
39
- "@instructure/shared-types": "10.25.1-pr-snapshot-1758274491790",
40
- "@instructure/ui-a11y-content": "10.25.1-pr-snapshot-1758274491790",
41
- "@instructure/ui-icons": "10.25.1-pr-snapshot-1758274491790",
42
- "@instructure/ui-react-utils": "10.25.1-pr-snapshot-1758274491790",
43
- "@instructure/ui-simple-select": "10.25.1-pr-snapshot-1758274491790",
44
- "@instructure/ui-utils": "10.25.1-pr-snapshot-1758274491790",
45
- "@instructure/ui-view": "10.25.1-pr-snapshot-1758274491790"
37
+ "@instructure/console": "10.25.1-snapshot-1",
38
+ "@instructure/emotion": "10.25.1-snapshot-1",
39
+ "@instructure/shared-types": "10.25.1-snapshot-1",
40
+ "@instructure/ui-a11y-content": "10.25.1-snapshot-1",
41
+ "@instructure/ui-icons": "10.25.1-snapshot-1",
42
+ "@instructure/ui-prop-types": "10.25.1-snapshot-1",
43
+ "@instructure/ui-react-utils": "10.25.1-snapshot-1",
44
+ "@instructure/ui-simple-select": "10.25.1-snapshot-1",
45
+ "@instructure/ui-testable": "10.25.1-snapshot-1",
46
+ "@instructure/ui-utils": "10.25.1-snapshot-1",
47
+ "@instructure/ui-view": "10.25.1-snapshot-1",
48
+ "prop-types": "^15.8.1"
46
49
  },
47
50
  "peerDependencies": {
48
- "react": ">=18 <=19"
51
+ "react": ">=16.14 <=18"
49
52
  },
50
53
  "publishConfig": {
51
54
  "access": "public"