@instructure/ui-drilldown 8.56.3 → 8.56.5-pr-snapshot-1728655013879
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 +16 -0
- package/lib/Drilldown/DrilldownGroup/props.js +2 -2
- package/lib/Drilldown/DrilldownLocator.js +4 -4
- package/lib/Drilldown/DrilldownPage/props.js +2 -2
- package/lib/Drilldown/index.js +40 -47
- package/lib/Drilldown/props.js +8 -9
- package/package.json +20 -20
- package/tsconfig.build.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,22 @@
|
|
|
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
|
+
## [8.56.5-pr-snapshot-1728655013879](https://github.com/instructure/instructure-ui/compare/v8.56.4...v8.56.5-pr-snapshot-1728655013879) (2024-10-11)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @instructure/ui-drilldown
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
## [8.56.4](https://github.com/instructure/instructure-ui/compare/v8.56.3...v8.56.4) (2024-10-02)
|
|
15
|
+
|
|
16
|
+
**Note:** Version bump only for package @instructure/ui-drilldown
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
|
|
6
22
|
## [8.56.3](https://github.com/instructure/instructure-ui/compare/v8.56.2...v8.56.3) (2024-09-18)
|
|
7
23
|
|
|
8
24
|
**Note:** Version bump only for package @instructure/ui-drilldown
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.propTypes = exports.allowedProps = void 0;
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
var
|
|
9
|
+
var _uiPropTypes = require("@instructure/ui-prop-types");
|
|
10
10
|
var _DrilldownOption = _interopRequireDefault(require("../DrilldownOption"));
|
|
11
11
|
var _DrilldownSeparator = _interopRequireDefault(require("../DrilldownSeparator"));
|
|
12
12
|
/*
|
|
@@ -35,7 +35,7 @@ var _DrilldownSeparator = _interopRequireDefault(require("../DrilldownSeparator"
|
|
|
35
35
|
|
|
36
36
|
const propTypes = exports.propTypes = {
|
|
37
37
|
id: _propTypes.default.string.isRequired,
|
|
38
|
-
children:
|
|
38
|
+
children: _uiPropTypes.Children.oneOf([_DrilldownOption.default, _DrilldownSeparator.default]),
|
|
39
39
|
renderGroupTitle: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
40
40
|
withoutSeparators: _propTypes.default.bool,
|
|
41
41
|
disabled: _propTypes.default.bool,
|
|
@@ -4,10 +4,10 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
6
|
exports.DrilldownLocator = void 0;
|
|
7
|
-
var
|
|
7
|
+
var _uiTestLocator = require("@instructure/ui-test-locator");
|
|
8
8
|
var _uiTestUtils = require("@instructure/ui-test-utils");
|
|
9
|
-
var _OptionsItemLocator = require("@instructure/ui-options/
|
|
10
|
-
var _PopoverLocator = require("@instructure/ui-popover/
|
|
9
|
+
var _OptionsItemLocator = require("@instructure/ui-options/es/Options/Item/OptionsItemLocator");
|
|
10
|
+
var _PopoverLocator = require("@instructure/ui-popover/es/Popover/PopoverLocator");
|
|
11
11
|
var _index = require("./index");
|
|
12
12
|
/*
|
|
13
13
|
* The MIT License (MIT)
|
|
@@ -99,4 +99,4 @@ const customMethods = {
|
|
|
99
99
|
};
|
|
100
100
|
|
|
101
101
|
// @ts-expect-error ts-migrate(2339) FIXME: Property 'selector' does not exist on type 'typeof... Remove this comment to see the full error message
|
|
102
|
-
const DrilldownLocator = exports.DrilldownLocator = (0,
|
|
102
|
+
const DrilldownLocator = exports.DrilldownLocator = (0, _uiTestLocator.locator)(_index.Drilldown.selector, customMethods);
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.propTypes = exports.allowedProps = void 0;
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
var
|
|
9
|
+
var _uiPropTypes = require("@instructure/ui-prop-types");
|
|
10
10
|
var _DrilldownGroup = _interopRequireDefault(require("../DrilldownGroup"));
|
|
11
11
|
var _DrilldownOption = _interopRequireDefault(require("../DrilldownOption"));
|
|
12
12
|
var _DrilldownSeparator = _interopRequireDefault(require("../DrilldownSeparator"));
|
|
@@ -36,7 +36,7 @@ var _DrilldownSeparator = _interopRequireDefault(require("../DrilldownSeparator"
|
|
|
36
36
|
|
|
37
37
|
const propTypes = exports.propTypes = {
|
|
38
38
|
id: _propTypes.default.string.isRequired,
|
|
39
|
-
children:
|
|
39
|
+
children: _uiPropTypes.Children.oneOf([_DrilldownOption.default, _DrilldownSeparator.default, _DrilldownGroup.default]),
|
|
40
40
|
renderTitle: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
41
41
|
renderActionLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
|
42
42
|
renderBackButtonLabel: _propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.func]),
|
package/lib/Drilldown/index.js
CHANGED
|
@@ -9,21 +9,14 @@ exports.default = exports.Drilldown = void 0;
|
|
|
9
9
|
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
10
10
|
var _react = _interopRequireWildcard(require("react"));
|
|
11
11
|
var _console = require("@instructure/console");
|
|
12
|
-
var
|
|
13
|
-
var
|
|
14
|
-
var
|
|
15
|
-
var
|
|
16
|
-
var
|
|
17
|
-
var
|
|
18
|
-
var
|
|
19
|
-
var
|
|
20
|
-
var _View = require("@instructure/ui-view/lib/View");
|
|
21
|
-
var _Options = require("@instructure/ui-options/lib/Options");
|
|
22
|
-
var _Popover = require("@instructure/ui-popover/lib/Popover");
|
|
23
|
-
var _Selectable = require("@instructure/ui-selectable/lib/Selectable");
|
|
24
|
-
var _IconArrowOpenStartSolid = require("@instructure/ui-icons/lib/IconArrowOpenStartSolid.js");
|
|
25
|
-
var _IconArrowOpenEndSolid = require("@instructure/ui-icons/lib/IconArrowOpenEndSolid.js");
|
|
26
|
-
var _IconCheckSolid = require("@instructure/ui-icons/lib/IconCheckSolid.js");
|
|
12
|
+
var _uiTestable = require("@instructure/ui-testable");
|
|
13
|
+
var _uiDomUtils = require("@instructure/ui-dom-utils");
|
|
14
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
15
|
+
var _uiView = require("@instructure/ui-view");
|
|
16
|
+
var _uiOptions = require("@instructure/ui-options");
|
|
17
|
+
var _uiPopover = require("@instructure/ui-popover");
|
|
18
|
+
var _uiSelectable = require("@instructure/ui-selectable");
|
|
19
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
27
20
|
var _emotion = require("@instructure/emotion");
|
|
28
21
|
var _DrilldownSeparator = require("./DrilldownSeparator");
|
|
29
22
|
var _DrilldownOption = require("./DrilldownOption");
|
|
@@ -73,7 +66,7 @@ var _dec, _dec2, _dec3, _class, _class2, _IconArrowOpenEndSoli, _IconArrowOpenSt
|
|
|
73
66
|
category: components
|
|
74
67
|
---
|
|
75
68
|
**/
|
|
76
|
-
let Drilldown = exports.Drilldown = (_dec = (0,
|
|
69
|
+
let Drilldown = exports.Drilldown = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec3 = (0, _uiTestable.testable)(), _dec(_class = _dec2(_class = _dec3(_class = (_class2 = class Drilldown extends _react.Component {
|
|
77
70
|
constructor(props) {
|
|
78
71
|
super(props);
|
|
79
72
|
this._drilldownRef = null;
|
|
@@ -492,7 +485,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
492
485
|
this.pages.forEach(page => {
|
|
493
486
|
const children = page.props.children;
|
|
494
487
|
this.getChildrenArray(children).forEach(child => {
|
|
495
|
-
if ((0,
|
|
488
|
+
if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownGroup.DrilldownGroup])) {
|
|
496
489
|
var _this$getChildrenArra;
|
|
497
490
|
const _child$props = child.props,
|
|
498
491
|
groupId = _child$props.id,
|
|
@@ -512,7 +505,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
512
505
|
}
|
|
513
506
|
selectedGroupOptionsMap[groupId] = new Map();
|
|
514
507
|
(_this$getChildrenArra = this.getChildrenArray(groupChildren)) === null || _this$getChildrenArra === void 0 ? void 0 : _this$getChildrenArra.forEach(groupChild => {
|
|
515
|
-
if ((0,
|
|
508
|
+
if ((0, _uiReactUtils.matchComponentTypes)(groupChild, [_DrilldownOption.DrilldownOption])) {
|
|
516
509
|
const _groupChild$props = groupChild.props,
|
|
517
510
|
optionId = _groupChild$props.id,
|
|
518
511
|
optionValue = _groupChild$props.value,
|
|
@@ -554,8 +547,8 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
554
547
|
|
|
555
548
|
// Back navigation option
|
|
556
549
|
if (this.previousPage) {
|
|
557
|
-
const prevPageTitle = (0,
|
|
558
|
-
const backButtonLabel = (0,
|
|
550
|
+
const prevPageTitle = (0, _uiReactUtils.callRenderProp)(this.previousPage.renderTitle);
|
|
551
|
+
const backButtonLabel = (0, _uiReactUtils.callRenderProp)(renderBackButtonLabel, prevPageTitle);
|
|
559
552
|
headerChildren.push((0, _emotion.jsx)(_DrilldownOption.DrilldownOption, {
|
|
560
553
|
id: this._headerBackId,
|
|
561
554
|
onOptionClick: this.handleBackButtonClick
|
|
@@ -567,7 +560,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
567
560
|
|
|
568
561
|
// Header title
|
|
569
562
|
if (renderTitle) {
|
|
570
|
-
const title = (0,
|
|
563
|
+
const title = (0, _uiReactUtils.callRenderProp)(renderTitle);
|
|
571
564
|
if (title) {
|
|
572
565
|
headerChildren.push((0, _emotion.jsx)(_DrilldownOption.DrilldownOption, {
|
|
573
566
|
id: this._headerTitleId,
|
|
@@ -582,7 +575,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
582
575
|
|
|
583
576
|
// Action label
|
|
584
577
|
if (renderActionLabel) {
|
|
585
|
-
const actionLabel = (0,
|
|
578
|
+
const actionLabel = (0, _uiReactUtils.callRenderProp)(renderActionLabel);
|
|
586
579
|
if (actionLabel) {
|
|
587
580
|
headerChildren.push((0, _emotion.jsx)(_DrilldownOption.DrilldownOption, {
|
|
588
581
|
id: this._headerActionId,
|
|
@@ -641,9 +634,9 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
641
634
|
}
|
|
642
635
|
focused() {
|
|
643
636
|
if (this.shown) {
|
|
644
|
-
return (0,
|
|
637
|
+
return (0, _uiDomUtils.containsActiveElement)(this._drilldownRef);
|
|
645
638
|
} else {
|
|
646
|
-
return (0,
|
|
639
|
+
return (0, _uiDomUtils.containsActiveElement)(this._trigger);
|
|
647
640
|
}
|
|
648
641
|
}
|
|
649
642
|
focusOption(id) {
|
|
@@ -722,7 +715,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
722
715
|
/**
|
|
723
716
|
* --- RENDER GROUP ---
|
|
724
717
|
*/
|
|
725
|
-
if ((0,
|
|
718
|
+
if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownGroup.DrilldownGroup])) {
|
|
726
719
|
const isFirstChild = index === 0;
|
|
727
720
|
const isLastChild = index === pageChildren.length - 1;
|
|
728
721
|
const afterSeparator = lastItemWasSeparator;
|
|
@@ -736,7 +729,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
736
729
|
/**
|
|
737
730
|
* --- RENDER SEPARATOR ---
|
|
738
731
|
*/
|
|
739
|
-
} else if ((0,
|
|
732
|
+
} else if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownSeparator.DrilldownSeparator])) {
|
|
740
733
|
// if the last item was separator, we don't want to duplicate it
|
|
741
734
|
if (lastItemWasSeparator) {
|
|
742
735
|
return null;
|
|
@@ -747,7 +740,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
747
740
|
/**
|
|
748
741
|
* --- RENDER OPTION ---
|
|
749
742
|
*/
|
|
750
|
-
} else if ((0,
|
|
743
|
+
} else if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownOption.DrilldownOption])) {
|
|
751
744
|
lastItemWasSeparator = false;
|
|
752
745
|
return this.renderOption(child, getOptionProps, getDisabledOptionProps);
|
|
753
746
|
} else {
|
|
@@ -760,7 +753,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
760
753
|
id = _separator$props.id,
|
|
761
754
|
themeOverride = _separator$props.themeOverride,
|
|
762
755
|
props = (0, _objectWithoutProperties2.default)(_separator$props, _excluded3);
|
|
763
|
-
return (0, _emotion.jsx)(
|
|
756
|
+
return (0, _emotion.jsx)(_uiOptions.Options.Separator, Object.assign({}, props, {
|
|
764
757
|
id: id,
|
|
765
758
|
key: id,
|
|
766
759
|
role: "separator"
|
|
@@ -798,7 +791,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
798
791
|
// Props passed to the Option.Item
|
|
799
792
|
let optionProps = {
|
|
800
793
|
// passthrough props
|
|
801
|
-
...(0,
|
|
794
|
+
...(0, _uiReactUtils.omitProps)(option.props, [..._DrilldownOption.DrilldownOption.allowedProps, ..._uiOptions.Options.Item.allowedProps]),
|
|
802
795
|
// props from selectable
|
|
803
796
|
...getOptionProps({
|
|
804
797
|
id,
|
|
@@ -854,13 +847,13 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
854
847
|
// we set a few manually on Options.Item,
|
|
855
848
|
// the rest are passed directly
|
|
856
849
|
if (subPageId) {
|
|
857
|
-
optionProps.renderAfterLabel = _IconArrowOpenEndSoli || (_IconArrowOpenEndSoli = (0, _emotion.jsx)(
|
|
850
|
+
optionProps.renderAfterLabel = _IconArrowOpenEndSoli || (_IconArrowOpenEndSoli = (0, _emotion.jsx)(_uiIcons.IconArrowOpenEndSolid, null));
|
|
858
851
|
optionProps['aria-haspopup'] = true;
|
|
859
852
|
optionProps.role = customRole || 'button';
|
|
860
853
|
(0, _console.warn)(!renderAfterLabel, `The prop "renderAfterLabel" is reserved on item with id: "${id}". When it has "subPageId" provided, a navigation arrow will render after the label.`);
|
|
861
854
|
}
|
|
862
855
|
if (id === this._headerBackId) {
|
|
863
|
-
optionProps.renderBeforeLabel = _IconArrowOpenStartSo || (_IconArrowOpenStartSo = (0, _emotion.jsx)(
|
|
856
|
+
optionProps.renderBeforeLabel = _IconArrowOpenStartSo || (_IconArrowOpenStartSo = (0, _emotion.jsx)(_uiIcons.IconArrowOpenStartSolid, null));
|
|
864
857
|
}
|
|
865
858
|
const isOptionControlled = typeof option.props.selected === 'boolean';
|
|
866
859
|
if ((groupProps !== null && groupProps !== void 0 && groupProps.selectableType || isOptionControlled) && groupProps) {
|
|
@@ -871,7 +864,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
871
864
|
isSelected = Boolean(option.props.selected);
|
|
872
865
|
}
|
|
873
866
|
optionProps['aria-checked'] = isSelected;
|
|
874
|
-
optionProps.renderBeforeLabel = (0, _emotion.jsx)(
|
|
867
|
+
optionProps.renderBeforeLabel = (0, _emotion.jsx)(_uiIcons.IconCheckSolid, {
|
|
875
868
|
style: {
|
|
876
869
|
opacity: isSelected ? 1 : 0
|
|
877
870
|
}
|
|
@@ -902,7 +895,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
902
895
|
optionProps.href = href;
|
|
903
896
|
}
|
|
904
897
|
}
|
|
905
|
-
const optionLabel = (0,
|
|
898
|
+
const optionLabel = (0, _uiReactUtils.callRenderProp)(children, {
|
|
906
899
|
id,
|
|
907
900
|
variant: optionProps.variant,
|
|
908
901
|
isSelected
|
|
@@ -926,7 +919,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
926
919
|
if (typeof optionProps.renderAfterLabel === 'function' && !((_optionProps$renderAf = optionProps.renderAfterLabel) !== null && _optionProps$renderAf !== void 0 && (_optionProps$renderAf2 = _optionProps$renderAf.prototype) !== null && _optionProps$renderAf2 !== void 0 && _optionProps$renderAf2.isReactComponent)) {
|
|
927
920
|
optionProps.renderAfterLabel = optionProps.renderAfterLabel.bind(null, renderLabelProps);
|
|
928
921
|
}
|
|
929
|
-
const labelInfo = renderLabelInfo && (0,
|
|
922
|
+
const labelInfo = renderLabelInfo && (0, _uiReactUtils.callRenderProp)(renderLabelInfo, renderLabelProps);
|
|
930
923
|
const vAlignMap = {
|
|
931
924
|
start: 'flex-start',
|
|
932
925
|
center: 'center',
|
|
@@ -936,7 +929,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
936
929
|
const infoAriaId = `${id}__info`;
|
|
937
930
|
const labelledby = option.props['aria-labelledby'] || labelAriaId;
|
|
938
931
|
const describedby = option.props['aria-describedby'] || (labelInfo ? infoAriaId : void 0);
|
|
939
|
-
return (0, _emotion.jsx)(
|
|
932
|
+
return (0, _emotion.jsx)(_uiOptions.Options.Item, Object.assign({}, optionProps, {
|
|
940
933
|
key: id,
|
|
941
934
|
"aria-labelledby": labelledby,
|
|
942
935
|
"aria-describedby": describedby
|
|
@@ -973,12 +966,12 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
973
966
|
|
|
974
967
|
// add a separator above
|
|
975
968
|
if (needsFirstSeparator) {
|
|
976
|
-
groupChildren.push(_Options$Separator || (_Options$Separator = (0, _emotion.jsx)(
|
|
969
|
+
groupChildren.push(_Options$Separator || (_Options$Separator = (0, _emotion.jsx)(_uiOptions.Options.Separator, null)));
|
|
977
970
|
}
|
|
978
971
|
|
|
979
972
|
// create a sublist as a group
|
|
980
973
|
// (a wrapping list item will be created by Options)
|
|
981
|
-
groupChildren.push((0, _emotion.jsx)(
|
|
974
|
+
groupChildren.push((0, _emotion.jsx)(_uiOptions.Options, {
|
|
982
975
|
id: id,
|
|
983
976
|
key: id,
|
|
984
977
|
role: role,
|
|
@@ -989,9 +982,9 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
989
982
|
,
|
|
990
983
|
themeOverride: themeOverride
|
|
991
984
|
}, this.getChildrenArray(children).map(child => {
|
|
992
|
-
if ((0,
|
|
985
|
+
if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownSeparator.DrilldownSeparator])) {
|
|
993
986
|
return this.renderSeparator(child);
|
|
994
|
-
} else if ((0,
|
|
987
|
+
} else if ((0, _uiReactUtils.matchComponentTypes)(child, [_DrilldownOption.DrilldownOption])) {
|
|
995
988
|
return this.renderOption(child, getOptionProps, getDisabledOptionProps, group.props);
|
|
996
989
|
} else {
|
|
997
990
|
return null;
|
|
@@ -1000,7 +993,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1000
993
|
|
|
1001
994
|
// add a separator below
|
|
1002
995
|
if (needsLastSeparator) {
|
|
1003
|
-
groupChildren.push(_Options$Separator2 || (_Options$Separator2 = (0, _emotion.jsx)(
|
|
996
|
+
groupChildren.push(_Options$Separator2 || (_Options$Separator2 = (0, _emotion.jsx)(_uiOptions.Options.Separator, null)));
|
|
1004
997
|
}
|
|
1005
998
|
return groupChildren;
|
|
1006
999
|
}
|
|
@@ -1021,7 +1014,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1021
1014
|
if (!this.currentPage) {
|
|
1022
1015
|
return null;
|
|
1023
1016
|
}
|
|
1024
|
-
return (0, _emotion.jsx)(
|
|
1017
|
+
return (0, _emotion.jsx)(_uiSelectable.Selectable, {
|
|
1025
1018
|
isShowingOptions: this.shown,
|
|
1026
1019
|
highlightedOptionId: this.state.highlightedOptionId,
|
|
1027
1020
|
selectedOptionId: this.selectedGroupOptionIdsArray,
|
|
@@ -1051,7 +1044,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1051
1044
|
getListProps,
|
|
1052
1045
|
getOptionProps,
|
|
1053
1046
|
getDisabledOptionProps
|
|
1054
|
-
}) => (0, _emotion.jsx)(
|
|
1047
|
+
}) => (0, _emotion.jsx)(_uiView.View, Object.assign({
|
|
1055
1048
|
as: "div",
|
|
1056
1049
|
elementRef: this.handleDrilldownRef,
|
|
1057
1050
|
tabIndex: 0,
|
|
@@ -1074,7 +1067,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1074
1067
|
onBlur: event => {
|
|
1075
1068
|
const target = event.currentTarget;
|
|
1076
1069
|
const related = event.relatedTarget;
|
|
1077
|
-
const containsRelated = (0,
|
|
1070
|
+
const containsRelated = (0, _uiDomUtils.contains)(target, related);
|
|
1078
1071
|
if (!related || related === this._drilldownRef || related !== target && !containsRelated) {
|
|
1079
1072
|
this.setState({
|
|
1080
1073
|
highlightedOptionId: void 0
|
|
@@ -1086,7 +1079,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1086
1079
|
highlightedOptionId: void 0
|
|
1087
1080
|
});
|
|
1088
1081
|
}
|
|
1089
|
-
})), (0, _emotion.jsx)(
|
|
1082
|
+
})), (0, _emotion.jsx)(_uiView.View, {
|
|
1090
1083
|
as: "div",
|
|
1091
1084
|
overflowY: overflowY,
|
|
1092
1085
|
overflowX: overflowX,
|
|
@@ -1102,7 +1095,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1102
1095
|
elementRef: element => {
|
|
1103
1096
|
this._containerElement = element;
|
|
1104
1097
|
}
|
|
1105
|
-
}, (0, _emotion.jsx)(
|
|
1098
|
+
}, (0, _emotion.jsx)(_uiOptions.Options, Object.assign({}, getListProps(), {
|
|
1106
1099
|
role: "presentation",
|
|
1107
1100
|
as: as
|
|
1108
1101
|
}), this.renderList(getOptionProps, getDisabledOptionProps)))));
|
|
@@ -1129,7 +1122,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1129
1122
|
onMouseOver = _this$props6.onMouseOver,
|
|
1130
1123
|
offsetX = _this$props6.offsetX,
|
|
1131
1124
|
offsetY = _this$props6.offsetY;
|
|
1132
|
-
return trigger ? (0, _emotion.jsx)(
|
|
1125
|
+
return trigger ? (0, _emotion.jsx)(_uiPopover.Popover, {
|
|
1133
1126
|
isShowingContent: show,
|
|
1134
1127
|
defaultIsShowingContent: defaultShow,
|
|
1135
1128
|
shouldCloseOnDocumentClick: true,
|
|
@@ -1168,7 +1161,7 @@ let Drilldown = exports.Drilldown = (_dec = (0, _withDeterministicId.withDetermi
|
|
|
1168
1161
|
popoverRef(el);
|
|
1169
1162
|
}
|
|
1170
1163
|
},
|
|
1171
|
-
renderTrigger: (0,
|
|
1164
|
+
renderTrigger: (0, _uiReactUtils.safeCloneElement)(trigger, {
|
|
1172
1165
|
ref: el => {
|
|
1173
1166
|
this._trigger = el;
|
|
1174
1167
|
},
|
package/lib/Drilldown/props.js
CHANGED
|
@@ -6,9 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.propTypes = exports.allowedProps = void 0;
|
|
8
8
|
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _PositionPropTypes = require("@instructure/ui-position/lib/PositionPropTypes.js");
|
|
9
|
+
var _uiPropTypes = require("@instructure/ui-prop-types");
|
|
10
|
+
var _uiPosition = require("@instructure/ui-position");
|
|
12
11
|
var _DrilldownPage = require("./DrilldownPage");
|
|
13
12
|
/*
|
|
14
13
|
* The MIT License (MIT)
|
|
@@ -36,7 +35,7 @@ var _DrilldownPage = require("./DrilldownPage");
|
|
|
36
35
|
|
|
37
36
|
const propTypes = exports.propTypes = {
|
|
38
37
|
rootPageId: _propTypes.default.string.isRequired,
|
|
39
|
-
children:
|
|
38
|
+
children: _uiPropTypes.Children.oneOf([_DrilldownPage.DrilldownPage]),
|
|
40
39
|
id: _propTypes.default.string,
|
|
41
40
|
label: _propTypes.default.string,
|
|
42
41
|
disabled: _propTypes.default.bool,
|
|
@@ -54,19 +53,19 @@ const propTypes = exports.propTypes = {
|
|
|
54
53
|
maxHeight: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
55
54
|
maxWidth: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]),
|
|
56
55
|
trigger: _propTypes.default.node,
|
|
57
|
-
placement:
|
|
56
|
+
placement: _uiPosition.PositionPropTypes.placement,
|
|
58
57
|
defaultShow: _propTypes.default.bool,
|
|
59
|
-
show: (0,
|
|
58
|
+
show: (0, _uiPropTypes.controllable)(_propTypes.default.bool, 'onToggle', 'defaultShow'),
|
|
60
59
|
onToggle: _propTypes.default.func,
|
|
61
60
|
onSelect: _propTypes.default.func,
|
|
62
61
|
onDismiss: _propTypes.default.func,
|
|
63
62
|
onFocus: _propTypes.default.func,
|
|
64
63
|
onMouseOver: _propTypes.default.func,
|
|
65
64
|
popoverRef: _propTypes.default.func,
|
|
66
|
-
mountNode:
|
|
67
|
-
positionTarget:
|
|
65
|
+
mountNode: _uiPosition.PositionPropTypes.mountNode,
|
|
66
|
+
positionTarget: _uiPosition.PositionPropTypes.mountNode,
|
|
68
67
|
positionContainerDisplay: _propTypes.default.oneOf(['inline-block', 'block']),
|
|
69
|
-
constrain:
|
|
68
|
+
constrain: _uiPosition.PositionPropTypes.constrain,
|
|
70
69
|
shouldHideOnSelect: _propTypes.default.bool,
|
|
71
70
|
shouldContainFocus: _propTypes.default.bool,
|
|
72
71
|
shouldReturnFocus: _propTypes.default.bool,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/ui-drilldown",
|
|
3
|
-
"version": "8.56.
|
|
3
|
+
"version": "8.56.5-pr-snapshot-1728655013879",
|
|
4
4
|
"description": "A drilldown menu component",
|
|
5
5
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
6
6
|
"module": "./es/index.js",
|
|
@@ -24,28 +24,28 @@
|
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@babel/runtime": "^7.23.2",
|
|
27
|
-
"@instructure/console": "8.56.
|
|
28
|
-
"@instructure/emotion": "8.56.
|
|
29
|
-
"@instructure/shared-types": "8.56.
|
|
30
|
-
"@instructure/ui-dom-utils": "8.56.
|
|
31
|
-
"@instructure/ui-icons": "8.56.
|
|
32
|
-
"@instructure/ui-options": "8.56.
|
|
33
|
-
"@instructure/ui-popover": "8.56.
|
|
34
|
-
"@instructure/ui-position": "8.56.
|
|
35
|
-
"@instructure/ui-prop-types": "8.56.
|
|
36
|
-
"@instructure/ui-react-utils": "8.56.
|
|
37
|
-
"@instructure/ui-selectable": "8.56.
|
|
38
|
-
"@instructure/ui-testable": "8.56.
|
|
39
|
-
"@instructure/ui-utils": "8.56.
|
|
40
|
-
"@instructure/ui-view": "8.56.
|
|
27
|
+
"@instructure/console": "8.56.5-pr-snapshot-1728655013879",
|
|
28
|
+
"@instructure/emotion": "8.56.5-pr-snapshot-1728655013879",
|
|
29
|
+
"@instructure/shared-types": "8.56.5-pr-snapshot-1728655013879",
|
|
30
|
+
"@instructure/ui-dom-utils": "8.56.5-pr-snapshot-1728655013879",
|
|
31
|
+
"@instructure/ui-icons": "8.56.5-pr-snapshot-1728655013879",
|
|
32
|
+
"@instructure/ui-options": "8.56.5-pr-snapshot-1728655013879",
|
|
33
|
+
"@instructure/ui-popover": "8.56.5-pr-snapshot-1728655013879",
|
|
34
|
+
"@instructure/ui-position": "8.56.5-pr-snapshot-1728655013879",
|
|
35
|
+
"@instructure/ui-prop-types": "8.56.5-pr-snapshot-1728655013879",
|
|
36
|
+
"@instructure/ui-react-utils": "8.56.5-pr-snapshot-1728655013879",
|
|
37
|
+
"@instructure/ui-selectable": "8.56.5-pr-snapshot-1728655013879",
|
|
38
|
+
"@instructure/ui-testable": "8.56.5-pr-snapshot-1728655013879",
|
|
39
|
+
"@instructure/ui-utils": "8.56.5-pr-snapshot-1728655013879",
|
|
40
|
+
"@instructure/ui-view": "8.56.5-pr-snapshot-1728655013879",
|
|
41
41
|
"prop-types": "^15.8.1"
|
|
42
42
|
},
|
|
43
43
|
"devDependencies": {
|
|
44
|
-
"@instructure/ui-babel-preset": "8.56.
|
|
45
|
-
"@instructure/ui-color-utils": "8.56.
|
|
46
|
-
"@instructure/ui-test-locator": "8.56.
|
|
47
|
-
"@instructure/ui-test-utils": "8.56.
|
|
48
|
-
"@instructure/ui-themes": "8.56.
|
|
44
|
+
"@instructure/ui-babel-preset": "8.56.5-pr-snapshot-1728655013879",
|
|
45
|
+
"@instructure/ui-color-utils": "8.56.5-pr-snapshot-1728655013879",
|
|
46
|
+
"@instructure/ui-test-locator": "8.56.5-pr-snapshot-1728655013879",
|
|
47
|
+
"@instructure/ui-test-utils": "8.56.5-pr-snapshot-1728655013879",
|
|
48
|
+
"@instructure/ui-themes": "8.56.5-pr-snapshot-1728655013879"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
51
51
|
"react": ">=16.8 <=18"
|