@instructure/ui-options 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.
- package/CHANGELOG.md +23 -2
- package/es/Options/Item/index.js +6 -6
- package/es/Options/Item/props.js +1 -18
- package/es/Options/Separator/index.js +2 -2
- package/es/Options/Separator/props.js +2 -5
- package/es/Options/index.js +6 -6
- package/es/Options/props.js +1 -10
- package/lib/Options/Item/index.js +5 -5
- package/lib/Options/Item/props.js +1 -19
- package/lib/Options/Separator/index.js +1 -1
- package/lib/Options/Separator/props.js +1 -6
- package/lib/Options/index.js +5 -5
- package/lib/Options/props.js +1 -11
- package/package.json +13 -16
- package/src/Options/Item/index.tsx +2 -4
- package/src/Options/Item/props.ts +1 -29
- package/src/Options/Separator/index.tsx +1 -2
- package/src/Options/Separator/props.ts +1 -8
- package/src/Options/index.tsx +7 -5
- package/src/Options/props.ts +1 -15
- package/tsconfig.build.json +0 -2
- package/tsconfig.build.tsbuildinfo +1 -1
- package/types/Options/Item/index.d.ts +0 -1
- package/types/Options/Item/index.d.ts.map +1 -1
- package/types/Options/Item/props.d.ts +2 -3
- package/types/Options/Item/props.d.ts.map +1 -1
- package/types/Options/Separator/index.d.ts +0 -1
- package/types/Options/Separator/index.d.ts.map +1 -1
- package/types/Options/Separator/props.d.ts +2 -3
- package/types/Options/Separator/props.d.ts.map +1 -1
- package/types/Options/index.d.ts +0 -7
- package/types/Options/index.d.ts.map +1 -1
- package/types/Options/props.d.ts +2 -3
- package/types/Options/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
|
-
|
|
6
|
+
# [11.0.0](https://github.com/instructure/instructure-ui/compare/v10.26.0...v11.0.0) (2025-10-06)
|
|
7
7
|
|
|
8
|
-
|
|
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
|
|
package/es/Options/Item/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _dec, _dec2,
|
|
1
|
+
var _dec, _dec2, _class, _Item;
|
|
2
2
|
/*
|
|
3
3
|
* The MIT License (MIT)
|
|
4
4
|
*
|
|
@@ -25,11 +25,10 @@ var _dec, _dec2, _dec3, _class, _Item;
|
|
|
25
25
|
|
|
26
26
|
import { Component } from 'react';
|
|
27
27
|
import { omitProps, getElementType, callRenderProp, withDeterministicId } from '@instructure/ui-react-utils';
|
|
28
|
-
import { testable } from '@instructure/ui-testable';
|
|
29
28
|
import { withStyle } from '@instructure/emotion';
|
|
30
29
|
import generateStyles from './styles';
|
|
31
30
|
import generateComponentTheme from './theme';
|
|
32
|
-
import { allowedProps
|
|
31
|
+
import { allowedProps } from './props';
|
|
33
32
|
|
|
34
33
|
/**
|
|
35
34
|
---
|
|
@@ -38,7 +37,7 @@ id: Options.Item
|
|
|
38
37
|
---
|
|
39
38
|
**/
|
|
40
39
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
41
|
-
let Item = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, generateComponentTheme),
|
|
40
|
+
let Item = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, generateComponentTheme), _dec(_class = _dec2(_class = (_Item = class Item extends Component {
|
|
42
41
|
constructor(props) {
|
|
43
42
|
super(props);
|
|
44
43
|
this.ref = null;
|
|
@@ -93,6 +92,7 @@ let Item = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, gene
|
|
|
93
92
|
const ariaDescribedBy = this.props['aria-describedby'] || (descriptionContent ? this._descriptionId : void 0);
|
|
94
93
|
return _jsxs(ElementType, {
|
|
95
94
|
role: voiceoverRoleBugWorkaround ? role : 'none',
|
|
95
|
+
"data-cid": "Options.Item",
|
|
96
96
|
css: styles === null || styles === void 0 ? void 0 : styles.item,
|
|
97
97
|
ref: element => {
|
|
98
98
|
this.ref = element;
|
|
@@ -116,7 +116,7 @@ let Item = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, gene
|
|
|
116
116
|
}), renderBeforeLabel && this.renderContent(renderBeforeLabel, styles === null || styles === void 0 ? void 0 : styles.contentBefore), renderAfterLabel && this.renderContent(renderAfterLabel, styles === null || styles === void 0 ? void 0 : styles.contentAfter)]
|
|
117
117
|
});
|
|
118
118
|
}
|
|
119
|
-
}, _Item.displayName = "Item", _Item.componentId = 'Options.Item', _Item.allowedProps = allowedProps, _Item.
|
|
119
|
+
}, _Item.displayName = "Item", _Item.componentId = 'Options.Item', _Item.allowedProps = allowedProps, _Item.defaultProps = {
|
|
120
120
|
as: 'span',
|
|
121
121
|
variant: 'default',
|
|
122
122
|
role: 'listitem',
|
|
@@ -124,6 +124,6 @@ let Item = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, gene
|
|
|
124
124
|
beforeLabelContentVAlign: 'center',
|
|
125
125
|
afterLabelContentVAlign: 'center',
|
|
126
126
|
isSelected: false
|
|
127
|
-
}, _Item)) || _class) || _class)
|
|
127
|
+
}, _Item)) || _class) || _class);
|
|
128
128
|
export default Item;
|
|
129
129
|
export { Item };
|
package/es/Options/Item/props.js
CHANGED
|
@@ -22,22 +22,5 @@
|
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
-
import PropTypes from 'prop-types';
|
|
26
|
-
const propTypes = {
|
|
27
|
-
as: PropTypes.elementType,
|
|
28
|
-
variant: PropTypes.oneOf(['default', 'highlighted', 'selected', 'disabled', 'highlighted-disabled', 'selected-highlighted']),
|
|
29
|
-
role: PropTypes.string,
|
|
30
|
-
renderBeforeLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
31
|
-
renderAfterLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
32
|
-
beforeLabelContentVAlign: PropTypes.oneOf(['start', 'center', 'end']),
|
|
33
|
-
afterLabelContentVAlign: PropTypes.oneOf(['start', 'center', 'end']),
|
|
34
|
-
description: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
35
|
-
descriptionRole: PropTypes.string,
|
|
36
|
-
href: PropTypes.string,
|
|
37
|
-
voiceoverRoleBugWorkaround: PropTypes.bool,
|
|
38
|
-
elementRef: PropTypes.func,
|
|
39
|
-
children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
40
|
-
isSelected: PropTypes.bool
|
|
41
|
-
};
|
|
42
25
|
const allowedProps = ['as', 'variant', 'role', 'renderBeforeLabel', 'renderAfterLabel', 'beforeLabelContentVAlign', 'afterLabelContentVAlign', 'description', 'descriptionRole', 'voiceoverRoleBugWorkaround', 'href', 'elementRef', 'children', 'isSelected'];
|
|
43
|
-
export {
|
|
26
|
+
export { allowedProps };
|
|
@@ -30,7 +30,7 @@ import { getElementType, omitProps } from '@instructure/ui-react-utils';
|
|
|
30
30
|
import { withStyle } from '@instructure/emotion';
|
|
31
31
|
import generateStyles from './styles';
|
|
32
32
|
import generateComponentTheme from './theme';
|
|
33
|
-
import { allowedProps
|
|
33
|
+
import { allowedProps } from './props';
|
|
34
34
|
|
|
35
35
|
/**
|
|
36
36
|
---
|
|
@@ -64,7 +64,7 @@ let Separator = (_dec = withStyle(generateStyles, generateComponentTheme), _dec(
|
|
|
64
64
|
})
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
|
-
}, _Separator.displayName = "Separator", _Separator.componentId = 'Options.Separator', _Separator.allowedProps = allowedProps, _Separator.
|
|
67
|
+
}, _Separator.displayName = "Separator", _Separator.componentId = 'Options.Separator', _Separator.allowedProps = allowedProps, _Separator.defaultProps = {
|
|
68
68
|
as: 'span'
|
|
69
69
|
}, _Separator)) || _class);
|
|
70
70
|
export default Separator;
|
|
@@ -21,9 +21,6 @@
|
|
|
21
21
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
|
-
|
|
25
|
-
const propTypes = {
|
|
26
|
-
as: PropTypes.elementType
|
|
27
|
-
};
|
|
24
|
+
|
|
28
25
|
const allowedProps = ['as'];
|
|
29
|
-
export {
|
|
26
|
+
export { allowedProps };
|
package/es/Options/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var _dec, _dec2,
|
|
1
|
+
var _dec, _dec2, _class, _Options;
|
|
2
2
|
/*
|
|
3
3
|
* The MIT License (MIT)
|
|
4
4
|
*
|
|
@@ -25,14 +25,13 @@ var _dec, _dec2, _dec3, _class, _Options;
|
|
|
25
25
|
|
|
26
26
|
import { Component, Children } from 'react';
|
|
27
27
|
import { omitProps, matchComponentTypes, callRenderProp, safeCloneElement, withDeterministicId } from '@instructure/ui-react-utils';
|
|
28
|
-
import { testable } from '@instructure/ui-testable';
|
|
29
28
|
import { View } from '@instructure/ui-view';
|
|
30
29
|
import { withStyle } from '@instructure/emotion';
|
|
31
30
|
import generateStyles from './styles';
|
|
32
31
|
import generateComponentTheme from './theme';
|
|
33
32
|
import { Item } from './Item';
|
|
34
33
|
import { Separator } from './Separator';
|
|
35
|
-
import { allowedProps
|
|
34
|
+
import { allowedProps } from './props';
|
|
36
35
|
import { isAndroidOrIOS } from '@instructure/ui-utils';
|
|
37
36
|
import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
38
37
|
/**
|
|
@@ -40,7 +39,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "@emotion/react/jsx-runtime";
|
|
|
40
39
|
category: components
|
|
41
40
|
---
|
|
42
41
|
**/
|
|
43
|
-
let Options = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, generateComponentTheme),
|
|
42
|
+
let Options = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, generateComponentTheme), _dec(_class = _dec2(_class = (_Options = class Options extends Component {
|
|
44
43
|
constructor(...args) {
|
|
45
44
|
super(...args);
|
|
46
45
|
this.ref = null;
|
|
@@ -122,6 +121,7 @@ let Options = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, g
|
|
|
122
121
|
css: styles === null || styles === void 0 ? void 0 : styles.options,
|
|
123
122
|
role: "presentation",
|
|
124
123
|
ref: this.handleRef,
|
|
124
|
+
"data-cid": "Options",
|
|
125
125
|
children: [renderLabel && this.renderLabel(), _jsx(View, {
|
|
126
126
|
...passthroughProps,
|
|
127
127
|
elementRef: elementRef,
|
|
@@ -137,12 +137,12 @@ let Options = (_dec = withDeterministicId(), _dec2 = withStyle(generateStyles, g
|
|
|
137
137
|
})]
|
|
138
138
|
});
|
|
139
139
|
}
|
|
140
|
-
}, _Options.displayName = "Options", _Options.componentId = 'Options', _Options.allowedProps = allowedProps, _Options.
|
|
140
|
+
}, _Options.displayName = "Options", _Options.componentId = 'Options', _Options.allowedProps = allowedProps, _Options.defaultProps = {
|
|
141
141
|
as: 'span',
|
|
142
142
|
role: 'list',
|
|
143
143
|
elementRef: () => {},
|
|
144
144
|
renderLabel: null,
|
|
145
145
|
children: null
|
|
146
|
-
}, _Options.Item = Item, _Options.Separator = Separator, _Options)) || _class) || _class)
|
|
146
|
+
}, _Options.Item = Item, _Options.Separator = Separator, _Options)) || _class) || _class);
|
|
147
147
|
export default Options;
|
|
148
148
|
export { Options };
|
package/es/Options/props.js
CHANGED
|
@@ -22,14 +22,5 @@
|
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
-
import PropTypes from 'prop-types';
|
|
26
|
-
import { Children as ChildrenPropTypes } from '@instructure/ui-prop-types';
|
|
27
|
-
const propTypes = {
|
|
28
|
-
as: PropTypes.elementType,
|
|
29
|
-
role: PropTypes.string,
|
|
30
|
-
elementRef: PropTypes.func,
|
|
31
|
-
renderLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
32
|
-
children: ChildrenPropTypes.oneOf(['Options', 'Item', 'Separator'])
|
|
33
|
-
};
|
|
34
25
|
const allowedProps = ['as', 'role', 'elementRef', 'renderLabel', 'children'];
|
|
35
|
-
export {
|
|
26
|
+
export { allowedProps };
|
|
@@ -7,13 +7,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = exports.Item = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
-
var _uiTestable = require("@instructure/ui-testable");
|
|
11
10
|
var _emotion = require("@instructure/emotion");
|
|
12
11
|
var _styles = _interopRequireDefault(require("./styles"));
|
|
13
12
|
var _theme = _interopRequireDefault(require("./theme"));
|
|
14
13
|
var _props = require("./props");
|
|
15
14
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
16
|
-
var _dec, _dec2,
|
|
15
|
+
var _dec, _dec2, _class, _Item;
|
|
17
16
|
/*
|
|
18
17
|
* The MIT License (MIT)
|
|
19
18
|
*
|
|
@@ -43,7 +42,7 @@ parent: Options
|
|
|
43
42
|
id: Options.Item
|
|
44
43
|
---
|
|
45
44
|
**/
|
|
46
|
-
let Item = exports.Item = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default),
|
|
45
|
+
let Item = exports.Item = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = (_Item = class Item extends _react.Component {
|
|
47
46
|
constructor(props) {
|
|
48
47
|
super(props);
|
|
49
48
|
this.ref = null;
|
|
@@ -98,6 +97,7 @@ let Item = exports.Item = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec
|
|
|
98
97
|
const ariaDescribedBy = this.props['aria-describedby'] || (descriptionContent ? this._descriptionId : void 0);
|
|
99
98
|
return (0, _jsxRuntime.jsxs)(ElementType, {
|
|
100
99
|
role: voiceoverRoleBugWorkaround ? role : 'none',
|
|
100
|
+
"data-cid": "Options.Item",
|
|
101
101
|
css: styles === null || styles === void 0 ? void 0 : styles.item,
|
|
102
102
|
ref: element => {
|
|
103
103
|
this.ref = element;
|
|
@@ -121,7 +121,7 @@ let Item = exports.Item = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec
|
|
|
121
121
|
}), renderBeforeLabel && this.renderContent(renderBeforeLabel, styles === null || styles === void 0 ? void 0 : styles.contentBefore), renderAfterLabel && this.renderContent(renderAfterLabel, styles === null || styles === void 0 ? void 0 : styles.contentAfter)]
|
|
122
122
|
});
|
|
123
123
|
}
|
|
124
|
-
}, _Item.displayName = "Item", _Item.componentId = 'Options.Item', _Item.allowedProps = _props.allowedProps, _Item.
|
|
124
|
+
}, _Item.displayName = "Item", _Item.componentId = 'Options.Item', _Item.allowedProps = _props.allowedProps, _Item.defaultProps = {
|
|
125
125
|
as: 'span',
|
|
126
126
|
variant: 'default',
|
|
127
127
|
role: 'listitem',
|
|
@@ -129,5 +129,5 @@ let Item = exports.Item = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec
|
|
|
129
129
|
beforeLabelContentVAlign: 'center',
|
|
130
130
|
afterLabelContentVAlign: 'center',
|
|
131
131
|
isSelected: false
|
|
132
|
-
}, _Item)) || _class) || _class)
|
|
132
|
+
}, _Item)) || _class) || _class);
|
|
133
133
|
var _default = exports.default = Item;
|
|
@@ -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.
|
|
8
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
6
|
+
exports.allowedProps = void 0;
|
|
9
7
|
/*
|
|
10
8
|
* The MIT License (MIT)
|
|
11
9
|
*
|
|
@@ -30,20 +28,4 @@ var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
|
30
28
|
* SOFTWARE.
|
|
31
29
|
*/
|
|
32
30
|
|
|
33
|
-
const propTypes = exports.propTypes = {
|
|
34
|
-
as: _propTypes.default.elementType,
|
|
35
|
-
variant: _propTypes.default.oneOf(['default', 'highlighted', 'selected', 'disabled', 'highlighted-disabled', 'selected-highlighted']),
|
|
36
|
-
role: _propTypes.default.string,
|
|
37
|
-
renderBeforeLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
38
|
-
renderAfterLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
39
|
-
beforeLabelContentVAlign: _propTypes.default.oneOf(['start', 'center', 'end']),
|
|
40
|
-
afterLabelContentVAlign: _propTypes.default.oneOf(['start', 'center', 'end']),
|
|
41
|
-
description: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
42
|
-
descriptionRole: _propTypes.default.string,
|
|
43
|
-
href: _propTypes.default.string,
|
|
44
|
-
voiceoverRoleBugWorkaround: _propTypes.default.bool,
|
|
45
|
-
elementRef: _propTypes.default.func,
|
|
46
|
-
children: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
47
|
-
isSelected: _propTypes.default.bool
|
|
48
|
-
};
|
|
49
31
|
const allowedProps = exports.allowedProps = ['as', 'variant', 'role', 'renderBeforeLabel', 'renderAfterLabel', 'beforeLabelContentVAlign', 'afterLabelContentVAlign', 'description', 'descriptionRole', 'voiceoverRoleBugWorkaround', 'href', 'elementRef', 'children', 'isSelected'];
|
|
@@ -69,7 +69,7 @@ let Separator = exports.Separator = (_dec = (0, _emotion.withStyle)(_styles.defa
|
|
|
69
69
|
})
|
|
70
70
|
});
|
|
71
71
|
}
|
|
72
|
-
}, _Separator.displayName = "Separator", _Separator.componentId = 'Options.Separator', _Separator.allowedProps = _props.allowedProps, _Separator.
|
|
72
|
+
}, _Separator.displayName = "Separator", _Separator.componentId = 'Options.Separator', _Separator.allowedProps = _props.allowedProps, _Separator.defaultProps = {
|
|
73
73
|
as: 'span'
|
|
74
74
|
}, _Separator)) || _class);
|
|
75
75
|
var _default = exports.default = Separator;
|
|
@@ -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.
|
|
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
|
-
as: _propTypes.default.elementType
|
|
35
|
-
};
|
|
36
31
|
const allowedProps = exports.allowedProps = ['as'];
|
package/lib/Options/index.js
CHANGED
|
@@ -7,7 +7,6 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = exports.Options = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
-
var _uiTestable = require("@instructure/ui-testable");
|
|
11
10
|
var _uiView = require("@instructure/ui-view");
|
|
12
11
|
var _emotion = require("@instructure/emotion");
|
|
13
12
|
var _styles = _interopRequireDefault(require("./styles"));
|
|
@@ -17,7 +16,7 @@ var _Separator = require("./Separator");
|
|
|
17
16
|
var _props = require("./props");
|
|
18
17
|
var _uiUtils = require("@instructure/ui-utils");
|
|
19
18
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
20
|
-
var _dec, _dec2,
|
|
19
|
+
var _dec, _dec2, _class, _Options;
|
|
21
20
|
/*
|
|
22
21
|
* The MIT License (MIT)
|
|
23
22
|
*
|
|
@@ -46,7 +45,7 @@ var _dec, _dec2, _dec3, _class, _Options;
|
|
|
46
45
|
category: components
|
|
47
46
|
---
|
|
48
47
|
**/
|
|
49
|
-
let Options = exports.Options = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default),
|
|
48
|
+
let Options = exports.Options = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = (_Options = class Options extends _react.Component {
|
|
50
49
|
constructor(...args) {
|
|
51
50
|
super(...args);
|
|
52
51
|
this.ref = null;
|
|
@@ -128,6 +127,7 @@ let Options = exports.Options = (_dec = (0, _uiReactUtils.withDeterministicId)()
|
|
|
128
127
|
css: styles === null || styles === void 0 ? void 0 : styles.options,
|
|
129
128
|
role: "presentation",
|
|
130
129
|
ref: this.handleRef,
|
|
130
|
+
"data-cid": "Options",
|
|
131
131
|
children: [renderLabel && this.renderLabel(), (0, _jsxRuntime.jsx)(_uiView.View, {
|
|
132
132
|
...passthroughProps,
|
|
133
133
|
elementRef: elementRef,
|
|
@@ -143,11 +143,11 @@ let Options = exports.Options = (_dec = (0, _uiReactUtils.withDeterministicId)()
|
|
|
143
143
|
})]
|
|
144
144
|
});
|
|
145
145
|
}
|
|
146
|
-
}, _Options.displayName = "Options", _Options.componentId = 'Options', _Options.allowedProps = _props.allowedProps, _Options.
|
|
146
|
+
}, _Options.displayName = "Options", _Options.componentId = 'Options', _Options.allowedProps = _props.allowedProps, _Options.defaultProps = {
|
|
147
147
|
as: 'span',
|
|
148
148
|
role: 'list',
|
|
149
149
|
elementRef: () => {},
|
|
150
150
|
renderLabel: null,
|
|
151
151
|
children: null
|
|
152
|
-
}, _Options.Item = _Item.Item, _Options.Separator = _Separator.Separator, _Options)) || _class) || _class)
|
|
152
|
+
}, _Options.Item = _Item.Item, _Options.Separator = _Separator.Separator, _Options)) || _class) || _class);
|
|
153
153
|
var _default = exports.default = Options;
|
package/lib/Options/props.js
CHANGED
|
@@ -1,12 +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.
|
|
8
|
-
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
var _uiPropTypes = require("@instructure/ui-prop-types");
|
|
6
|
+
exports.allowedProps = void 0;
|
|
10
7
|
/*
|
|
11
8
|
* The MIT License (MIT)
|
|
12
9
|
*
|
|
@@ -31,11 +28,4 @@ var _uiPropTypes = require("@instructure/ui-prop-types");
|
|
|
31
28
|
* SOFTWARE.
|
|
32
29
|
*/
|
|
33
30
|
|
|
34
|
-
const propTypes = exports.propTypes = {
|
|
35
|
-
as: _propTypes.default.elementType,
|
|
36
|
-
role: _propTypes.default.string,
|
|
37
|
-
elementRef: _propTypes.default.func,
|
|
38
|
-
renderLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
39
|
-
children: _uiPropTypes.Children.oneOf(['Options', 'Item', 'Separator'])
|
|
40
|
-
};
|
|
41
31
|
const allowedProps = exports.allowedProps = ['as', 'role', 'elementRef', 'renderLabel', 'children'];
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/ui-options",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "11.0.0",
|
|
4
4
|
"description": "A view-only component for composing interactive lists and menus.",
|
|
5
5
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
6
6
|
"module": "./es/index.js",
|
|
@@ -23,29 +23,26 @@
|
|
|
23
23
|
},
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"devDependencies": {
|
|
26
|
-
"@instructure/ui-axe-check": "
|
|
27
|
-
"@instructure/ui-babel-preset": "
|
|
28
|
-
"@instructure/ui-color-utils": "
|
|
29
|
-
"@instructure/ui-themes": "
|
|
26
|
+
"@instructure/ui-axe-check": "11.0.0",
|
|
27
|
+
"@instructure/ui-babel-preset": "11.0.0",
|
|
28
|
+
"@instructure/ui-color-utils": "11.0.0",
|
|
29
|
+
"@instructure/ui-themes": "11.0.0",
|
|
30
30
|
"@testing-library/jest-dom": "^6.6.3",
|
|
31
|
-
"@testing-library/react": "
|
|
31
|
+
"@testing-library/react": "15.0.7",
|
|
32
32
|
"@testing-library/user-event": "^14.6.1",
|
|
33
33
|
"vitest": "^3.2.2"
|
|
34
34
|
},
|
|
35
35
|
"dependencies": {
|
|
36
36
|
"@babel/runtime": "^7.27.6",
|
|
37
|
-
"@instructure/emotion": "
|
|
38
|
-
"@instructure/shared-types": "
|
|
39
|
-
"@instructure/ui-icons": "
|
|
40
|
-
"@instructure/ui-
|
|
41
|
-
"@instructure/ui-
|
|
42
|
-
"@instructure/ui-
|
|
43
|
-
"@instructure/ui-utils": "10.26.1",
|
|
44
|
-
"@instructure/ui-view": "10.26.1",
|
|
45
|
-
"prop-types": "^15.8.1"
|
|
37
|
+
"@instructure/emotion": "11.0.0",
|
|
38
|
+
"@instructure/shared-types": "11.0.0",
|
|
39
|
+
"@instructure/ui-icons": "11.0.0",
|
|
40
|
+
"@instructure/ui-react-utils": "11.0.0",
|
|
41
|
+
"@instructure/ui-utils": "11.0.0",
|
|
42
|
+
"@instructure/ui-view": "11.0.0"
|
|
46
43
|
},
|
|
47
44
|
"peerDependencies": {
|
|
48
|
-
"react": ">=
|
|
45
|
+
"react": ">=18 <=19"
|
|
49
46
|
},
|
|
50
47
|
"publishConfig": {
|
|
51
48
|
"access": "public"
|
|
@@ -30,14 +30,13 @@ import {
|
|
|
30
30
|
callRenderProp,
|
|
31
31
|
withDeterministicId
|
|
32
32
|
} from '@instructure/ui-react-utils'
|
|
33
|
-
import { testable } from '@instructure/ui-testable'
|
|
34
33
|
|
|
35
34
|
import { withStyle } from '@instructure/emotion'
|
|
36
35
|
|
|
37
36
|
import generateStyles from './styles'
|
|
38
37
|
import generateComponentTheme from './theme'
|
|
39
38
|
import type { OptionsItemProps, OptionsItemStyle } from './props'
|
|
40
|
-
import { allowedProps
|
|
39
|
+
import { allowedProps } from './props'
|
|
41
40
|
|
|
42
41
|
/**
|
|
43
42
|
---
|
|
@@ -47,12 +46,10 @@ id: Options.Item
|
|
|
47
46
|
**/
|
|
48
47
|
@withDeterministicId()
|
|
49
48
|
@withStyle(generateStyles, generateComponentTheme)
|
|
50
|
-
@testable()
|
|
51
49
|
class Item extends Component<OptionsItemProps> {
|
|
52
50
|
static readonly componentId = 'Options.Item'
|
|
53
51
|
|
|
54
52
|
static allowedProps = allowedProps
|
|
55
|
-
static propTypes = propTypes
|
|
56
53
|
|
|
57
54
|
static defaultProps = {
|
|
58
55
|
as: 'span',
|
|
@@ -138,6 +135,7 @@ class Item extends Component<OptionsItemProps> {
|
|
|
138
135
|
return (
|
|
139
136
|
<ElementType
|
|
140
137
|
role={voiceoverRoleBugWorkaround ? role : 'none'}
|
|
138
|
+
data-cid="Options.Item"
|
|
141
139
|
css={styles?.item}
|
|
142
140
|
ref={(element: Element | null) => {
|
|
143
141
|
this.ref = element
|
|
@@ -22,11 +22,8 @@
|
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
24
|
|
|
25
|
-
import PropTypes from 'prop-types'
|
|
26
|
-
|
|
27
25
|
import type {
|
|
28
26
|
AsElementType,
|
|
29
|
-
PropValidators,
|
|
30
27
|
OptionsItemTheme,
|
|
31
28
|
OtherHTMLAttributes,
|
|
32
29
|
Renderable
|
|
@@ -118,31 +115,6 @@ type OptionsItemStyle = ComponentStyle<
|
|
|
118
115
|
| 'contentAfter'
|
|
119
116
|
| 'description'
|
|
120
117
|
>
|
|
121
|
-
|
|
122
|
-
const propTypes: PropValidators<PropKeys> = {
|
|
123
|
-
as: PropTypes.elementType,
|
|
124
|
-
variant: PropTypes.oneOf([
|
|
125
|
-
'default',
|
|
126
|
-
'highlighted',
|
|
127
|
-
'selected',
|
|
128
|
-
'disabled',
|
|
129
|
-
'highlighted-disabled',
|
|
130
|
-
'selected-highlighted'
|
|
131
|
-
]),
|
|
132
|
-
role: PropTypes.string,
|
|
133
|
-
renderBeforeLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
134
|
-
renderAfterLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
135
|
-
beforeLabelContentVAlign: PropTypes.oneOf(['start', 'center', 'end']),
|
|
136
|
-
afterLabelContentVAlign: PropTypes.oneOf(['start', 'center', 'end']),
|
|
137
|
-
description: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
138
|
-
descriptionRole: PropTypes.string,
|
|
139
|
-
href: PropTypes.string,
|
|
140
|
-
voiceoverRoleBugWorkaround: PropTypes.bool,
|
|
141
|
-
elementRef: PropTypes.func,
|
|
142
|
-
children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
143
|
-
isSelected: PropTypes.bool
|
|
144
|
-
}
|
|
145
|
-
|
|
146
118
|
const allowedProps: AllowedPropKeys = [
|
|
147
119
|
'as',
|
|
148
120
|
'variant',
|
|
@@ -161,4 +133,4 @@ const allowedProps: AllowedPropKeys = [
|
|
|
161
133
|
]
|
|
162
134
|
|
|
163
135
|
export type { OptionsItemProps, OptionsItemStyle, OptionsItemRenderProps }
|
|
164
|
-
export {
|
|
136
|
+
export { allowedProps }
|
|
@@ -31,7 +31,7 @@ import { withStyle } from '@instructure/emotion'
|
|
|
31
31
|
import generateStyles from './styles'
|
|
32
32
|
import generateComponentTheme from './theme'
|
|
33
33
|
import type { OptionsSeparatorProps } from './props'
|
|
34
|
-
import { allowedProps
|
|
34
|
+
import { allowedProps } from './props'
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
---
|
|
@@ -45,7 +45,6 @@ class Separator extends Component<OptionsSeparatorProps> {
|
|
|
45
45
|
static readonly componentId = 'Options.Separator'
|
|
46
46
|
|
|
47
47
|
static allowedProps = allowedProps
|
|
48
|
-
static propTypes = propTypes
|
|
49
48
|
|
|
50
49
|
static defaultProps = {
|
|
51
50
|
as: 'span'
|
|
@@ -21,11 +21,9 @@
|
|
|
21
21
|
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
|
-
import PropTypes from 'prop-types'
|
|
25
24
|
|
|
26
25
|
import type {
|
|
27
26
|
AsElementType,
|
|
28
|
-
PropValidators,
|
|
29
27
|
OptionsSeparatorTheme,
|
|
30
28
|
OtherHTMLAttributes
|
|
31
29
|
} from '@instructure/shared-types'
|
|
@@ -48,12 +46,7 @@ type OptionsSeparatorProps = OptionsSeparatorOwnProps &
|
|
|
48
46
|
OtherHTMLAttributes<OptionsSeparatorOwnProps, AllHTMLAttributes<any>>
|
|
49
47
|
|
|
50
48
|
type OptionsSeparatorStyle = ComponentStyle<'separator'>
|
|
51
|
-
|
|
52
|
-
const propTypes: PropValidators<PropKeys> = {
|
|
53
|
-
as: PropTypes.elementType
|
|
54
|
-
}
|
|
55
|
-
|
|
56
49
|
const allowedProps: AllowedPropKeys = ['as']
|
|
57
50
|
|
|
58
51
|
export type { OptionsSeparatorProps, OptionsSeparatorStyle }
|
|
59
|
-
export {
|
|
52
|
+
export { allowedProps }
|
package/src/Options/index.tsx
CHANGED
|
@@ -31,7 +31,6 @@ import {
|
|
|
31
31
|
safeCloneElement,
|
|
32
32
|
withDeterministicId
|
|
33
33
|
} from '@instructure/ui-react-utils'
|
|
34
|
-
import { testable } from '@instructure/ui-testable'
|
|
35
34
|
|
|
36
35
|
import { View } from '@instructure/ui-view'
|
|
37
36
|
|
|
@@ -46,7 +45,7 @@ import { Separator } from './Separator'
|
|
|
46
45
|
import type { OptionsSeparatorProps } from './Separator/props'
|
|
47
46
|
|
|
48
47
|
import type { OptionsProps } from './props'
|
|
49
|
-
import { allowedProps
|
|
48
|
+
import { allowedProps } from './props'
|
|
50
49
|
import { isAndroidOrIOS } from '@instructure/ui-utils'
|
|
51
50
|
|
|
52
51
|
type ItemChild = ComponentElement<OptionsItemProps, Item>
|
|
@@ -61,12 +60,10 @@ category: components
|
|
|
61
60
|
**/
|
|
62
61
|
@withDeterministicId()
|
|
63
62
|
@withStyle(generateStyles, generateComponentTheme)
|
|
64
|
-
@testable()
|
|
65
63
|
class Options extends Component<OptionsProps> {
|
|
66
64
|
static readonly componentId = 'Options'
|
|
67
65
|
|
|
68
66
|
static allowedProps = allowedProps
|
|
69
|
-
static propTypes = propTypes
|
|
70
67
|
|
|
71
68
|
static defaultProps = {
|
|
72
69
|
as: 'span',
|
|
@@ -162,7 +159,12 @@ class Options extends Component<OptionsProps> {
|
|
|
162
159
|
const { as, role, renderLabel, elementRef, styles } = this.props
|
|
163
160
|
|
|
164
161
|
return (
|
|
165
|
-
<div
|
|
162
|
+
<div
|
|
163
|
+
css={styles?.options}
|
|
164
|
+
role="presentation"
|
|
165
|
+
ref={this.handleRef}
|
|
166
|
+
data-cid="Options"
|
|
167
|
+
>
|
|
166
168
|
{renderLabel && this.renderLabel()}
|
|
167
169
|
<View
|
|
168
170
|
{...passthroughProps}
|
package/src/Options/props.ts
CHANGED
|
@@ -22,13 +22,8 @@
|
|
|
22
22
|
* SOFTWARE.
|
|
23
23
|
*/
|
|
24
24
|
import React from 'react'
|
|
25
|
-
import PropTypes from 'prop-types'
|
|
26
|
-
|
|
27
|
-
import { Children as ChildrenPropTypes } from '@instructure/ui-prop-types'
|
|
28
|
-
|
|
29
25
|
import type {
|
|
30
26
|
AsElementType,
|
|
31
|
-
PropValidators,
|
|
32
27
|
OptionsTheme,
|
|
33
28
|
OtherHTMLAttributes
|
|
34
29
|
} from '@instructure/shared-types'
|
|
@@ -69,15 +64,6 @@ type OptionsProps = OptionsOwnProps &
|
|
|
69
64
|
WithDeterministicIdProps
|
|
70
65
|
|
|
71
66
|
type OptionsStyle = ComponentStyle<'options' | 'list' | 'label'>
|
|
72
|
-
|
|
73
|
-
const propTypes: PropValidators<PropKeys> = {
|
|
74
|
-
as: PropTypes.elementType,
|
|
75
|
-
role: PropTypes.string,
|
|
76
|
-
elementRef: PropTypes.func,
|
|
77
|
-
renderLabel: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
|
|
78
|
-
children: ChildrenPropTypes.oneOf(['Options', 'Item', 'Separator'])
|
|
79
|
-
}
|
|
80
|
-
|
|
81
67
|
const allowedProps: AllowedPropKeys = [
|
|
82
68
|
'as',
|
|
83
69
|
'role',
|
|
@@ -87,4 +73,4 @@ const allowedProps: AllowedPropKeys = [
|
|
|
87
73
|
]
|
|
88
74
|
|
|
89
75
|
export type { OptionsProps, OptionsStyle }
|
|
90
|
-
export {
|
|
76
|
+
export { allowedProps }
|