@instructure/ui-top-nav-bar 11.7.8 → 11.7.9-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.
- package/CHANGELOG.md +8 -0
- package/lib/TopNavBar/v1/TopNavBarActionItems/index.js +10 -13
- package/lib/TopNavBar/v1/TopNavBarBrand/index.js +5 -6
- package/lib/TopNavBar/v1/TopNavBarBreadcrumb/index.js +3 -4
- package/lib/TopNavBar/v1/TopNavBarItem/index.js +18 -24
- package/lib/TopNavBar/v1/TopNavBarLayout/DesktopLayout/index.js +2 -2
- package/lib/TopNavBar/v1/TopNavBarLayout/SmallViewportLayout/index.js +16 -22
- package/lib/TopNavBar/v1/TopNavBarMenuItems/index.js +6 -8
- package/lib/TopNavBar/v1/TopNavBarUser/index.js +2 -2
- package/lib/TopNavBar/v1/index.js +4 -4
- package/lib/TopNavBar/v1/utils/exampleHelpers.js +7 -12
- package/lib/TopNavBar/v1/utils/mapItemsForDrilldown.js +3 -3
- package/lib/TopNavBar/v2/TopNavBarActionItems/index.js +8 -11
- package/lib/TopNavBar/v2/TopNavBarBrand/index.js +5 -6
- package/lib/TopNavBar/v2/TopNavBarItem/index.js +16 -21
- package/lib/TopNavBar/v2/TopNavBarLayout/DesktopLayout/index.js +2 -2
- package/lib/TopNavBar/v2/TopNavBarLayout/SmallViewportLayout/index.js +11 -14
- package/lib/TopNavBar/v2/TopNavBarMenuItems/index.js +6 -8
- package/lib/TopNavBar/v2/TopNavBarUser/index.js +2 -2
- package/lib/TopNavBar/v2/index.js +4 -4
- package/lib/TopNavBar/v2/utils/mapItemsForDrilldown.js +3 -3
- package/package.json +26 -26
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
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
|
+
## [11.7.9-snapshot-1](https://github.com/instructure/instructure-ui/compare/v11.7.8...v11.7.9-snapshot-1) (2026-10-06)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @instructure/ui-top-nav-bar
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [11.7.8](https://github.com/instructure/instructure-ui/compare/v11.7.7...v11.7.8) (2026-10-02)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @instructure/ui-top-nav-bar
|
|
@@ -6,15 +6,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarActionItems = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _passthroughProps = require("@instructure/ui-react-utils/lib/passthroughProps.js");
|
|
11
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
12
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
13
10
|
var _console = require("@instructure/console");
|
|
14
11
|
var _emotion = require("@instructure/emotion");
|
|
15
12
|
var _v11_ = require("@instructure/ui-drilldown/v11_6");
|
|
16
|
-
var
|
|
17
|
-
var
|
|
13
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
14
|
+
var _uiTruncateList = require("@instructure/ui-truncate-list");
|
|
18
15
|
var _index = require("../TopNavBarItem/index.js");
|
|
19
16
|
var _mapItemsForDrilldown = require("../utils/mapItemsForDrilldown.js");
|
|
20
17
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
@@ -54,7 +51,7 @@ id: TopNavBar.ActionItems
|
|
|
54
51
|
---
|
|
55
52
|
@module TopNavBarActionItems
|
|
56
53
|
**/
|
|
57
|
-
let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0,
|
|
54
|
+
let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = class TopNavBarActionItems extends _react.Component {
|
|
58
55
|
static displayName = 'TopNavBarActionItems';
|
|
59
56
|
static componentId = 'TopNavBar.ActionItems';
|
|
60
57
|
static allowedProps = _props.allowedProps;
|
|
@@ -111,7 +108,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
111
108
|
} = child.props;
|
|
112
109
|
if (renderAvatar) {
|
|
113
110
|
(0, _console.warn)(false, `Items in <TopNavBar.ActionItems> are not allowed to have avatars, please remove it from item with the id "${id}".`);
|
|
114
|
-
return (0,
|
|
111
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
115
112
|
renderAvatar: undefined,
|
|
116
113
|
variant: 'default'
|
|
117
114
|
});
|
|
@@ -121,7 +118,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
121
118
|
(0, _console.error)(false, `Items in <TopNavBar.ActionItems> are required to have the \`renderIcon\` prop, because only the icons are displayed due to the lack of space. Please add an icon to the item with the id "${id}".`);
|
|
122
119
|
return null;
|
|
123
120
|
}
|
|
124
|
-
return (0,
|
|
121
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
125
122
|
variant: variant === 'forceIconWithLabel' ? 'default' : 'icon'
|
|
126
123
|
});
|
|
127
124
|
}
|
|
@@ -154,7 +151,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
154
151
|
const tooltip = typeof renderHiddenItemsMenuTriggerTooltip === 'function' ? renderHiddenItemsMenuTriggerTooltip(hiddenItems.length) : renderHiddenItemsMenuTriggerTooltip;
|
|
155
152
|
return (0, _jsxRuntime.jsx)(_index.TopNavBarItem, {
|
|
156
153
|
id: this._hiddenActionItemsMenuTriggerId,
|
|
157
|
-
renderIcon:
|
|
154
|
+
renderIcon: _uiIcons.IconMoreLine,
|
|
158
155
|
variant: "icon",
|
|
159
156
|
tooltip: tooltip,
|
|
160
157
|
showSubmenuChevron: false,
|
|
@@ -177,8 +174,8 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
177
174
|
renderHiddenItemsMenuTriggerTooltip,
|
|
178
175
|
...restProps
|
|
179
176
|
} = this.props;
|
|
180
|
-
return (0, _react2.createElement)(
|
|
181
|
-
...(0,
|
|
177
|
+
return (0, _react2.createElement)(_uiTruncateList.TruncateList, {
|
|
178
|
+
...(0, _uiReactUtils.passthroughProps)((0, _uiReactUtils.omitProps)(restProps, _props.allowedProps)),
|
|
182
179
|
key: this.state.key // rerender if child count changes
|
|
183
180
|
,
|
|
184
181
|
elementRef: this.handleRef,
|
|
@@ -210,7 +207,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
210
207
|
return this.renderTruncatedActionItemList();
|
|
211
208
|
}
|
|
212
209
|
return (0, _jsxRuntime.jsx)("ul", {
|
|
213
|
-
...(0,
|
|
210
|
+
...(0, _uiReactUtils.omitProps)(restProps, _props.allowedProps),
|
|
214
211
|
ref: this.handleRef,
|
|
215
212
|
css: styles?.topNavBarActionItems,
|
|
216
213
|
"aria-label": listLabel,
|
|
@@ -6,10 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarBrand = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _omitProps = require("@instructure/ui-react-utils/lib/omitProps.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
10
|
var _emotion = require("@instructure/emotion");
|
|
12
|
-
var
|
|
11
|
+
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
13
12
|
var _v11_ = require("@instructure/ui-view/v11_6");
|
|
14
13
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
15
14
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -89,13 +88,13 @@ let TopNavBarBrand = exports.TopNavBarBrand = (_dec = (0, _emotion.withStyle)(_s
|
|
|
89
88
|
onClick,
|
|
90
89
|
styles
|
|
91
90
|
} = this.props;
|
|
92
|
-
const ElementType = (0,
|
|
91
|
+
const ElementType = (0, _uiReactUtils.getElementType)(TopNavBarBrand, this.props);
|
|
93
92
|
return (0, _jsxRuntime.jsx)("div", {
|
|
94
93
|
ref: this.handleRef,
|
|
95
94
|
css: styles?.topNavBarBrand,
|
|
96
95
|
"data-cid": "TopNavBarBrand",
|
|
97
96
|
children: renderIcon && (0, _jsxRuntime.jsxs)(_v11_.View, {
|
|
98
|
-
...(0,
|
|
97
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
99
98
|
css: styles?.container,
|
|
100
99
|
as: ElementType,
|
|
101
100
|
href: href,
|
|
@@ -107,7 +106,7 @@ let TopNavBarBrand = exports.TopNavBarBrand = (_dec = (0, _emotion.withStyle)(_s
|
|
|
107
106
|
themeOverride: {
|
|
108
107
|
focusOutlineInset: styles?.focusOutlineInset
|
|
109
108
|
},
|
|
110
|
-
children: [(0, _jsxRuntime.jsx)(
|
|
109
|
+
children: [(0, _jsxRuntime.jsx)(_uiA11yContent.ScreenReaderContent, {
|
|
111
110
|
children: screenReaderLabel
|
|
112
111
|
}), renderIcon && this.context.layout !== 'smallViewport' && (0, _jsxRuntime.jsx)("div", {
|
|
113
112
|
css: styles?.iconContainer,
|
|
@@ -10,8 +10,7 @@ var _props = require("./props.js");
|
|
|
10
10
|
var _index = _interopRequireDefault(require("../index.js"));
|
|
11
11
|
var _emotion = require("@instructure/emotion");
|
|
12
12
|
var _styles = _interopRequireDefault(require("../TopNavBarBreadcrumb/styles.js"));
|
|
13
|
-
var
|
|
14
|
-
var _IconHamburgerLine = require("@instructure/ui-icons/lib/generated/IconHamburgerLine.js");
|
|
13
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
15
14
|
var _TopNavBarContext = _interopRequireDefault(require("../TopNavBarContext.js"));
|
|
16
15
|
var _console = require("@instructure/console");
|
|
17
16
|
var _v11_ = require("@instructure/ui-link/v11_6");
|
|
@@ -81,7 +80,7 @@ let TopNavBarBreadcrumb = exports.TopNavBarBreadcrumb = (_dec = (0, _emotion.wit
|
|
|
81
80
|
children: (0, _jsxRuntime.jsx)(_index.default.Item, {
|
|
82
81
|
id: "iconItem",
|
|
83
82
|
variant: "icon",
|
|
84
|
-
renderIcon: (0, _jsxRuntime.jsx)(
|
|
83
|
+
renderIcon: (0, _jsxRuntime.jsx)(_uiIcons.IconHamburgerLine, {}),
|
|
85
84
|
onClick: onClick,
|
|
86
85
|
children: "Hamburger menu"
|
|
87
86
|
})
|
|
@@ -118,7 +117,7 @@ let TopNavBarBreadcrumb = exports.TopNavBarBreadcrumb = (_dec = (0, _emotion.wit
|
|
|
118
117
|
children: lastButOneLink && (0, _jsxRuntime.jsx)(_v11_.Link, {
|
|
119
118
|
href: lastButOneLink.props.href,
|
|
120
119
|
isWithinText: false,
|
|
121
|
-
renderIcon:
|
|
120
|
+
renderIcon: _uiIcons.IconArrowOpenStartLine,
|
|
122
121
|
children: lastButOneLink.props.children
|
|
123
122
|
})
|
|
124
123
|
})
|
|
@@ -6,23 +6,17 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarItem = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _omitProps = require("@instructure/ui-react-utils/lib/omitProps.js");
|
|
12
|
-
var _passthroughProps = require("@instructure/ui-react-utils/lib/passthroughProps.js");
|
|
13
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
14
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
15
|
-
var _createChainedFunction = require("@instructure/ui-utils/lib/createChainedFunction.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
16
11
|
var _console = require("@instructure/console");
|
|
17
12
|
var _emotion = require("@instructure/emotion");
|
|
18
|
-
var
|
|
19
|
-
var _IconArrowOpenUpSolid = require("@instructure/ui-icons/lib/generated/IconArrowOpenUpSolid.js");
|
|
13
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
20
14
|
var _v11_ = require("@instructure/ui-avatar/v11_6");
|
|
21
15
|
var _v11_2 = require("@instructure/ui-buttons/v11_6");
|
|
22
16
|
var _v11_3 = require("@instructure/ui-tooltip/v11_6");
|
|
23
17
|
var _v11_4 = require("@instructure/ui-popover/v11_6");
|
|
24
18
|
var _v11_5 = require("@instructure/ui-drilldown/v11_6");
|
|
25
|
-
var
|
|
19
|
+
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
26
20
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
27
21
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
28
22
|
var _theme = _interopRequireDefault(require("./theme.js"));
|
|
@@ -63,7 +57,7 @@ id: TopNavBar.Item
|
|
|
63
57
|
---
|
|
64
58
|
@module TopNavBarItem
|
|
65
59
|
**/
|
|
66
|
-
let TopNavBarItem = exports.TopNavBarItem = (_dec = (0,
|
|
60
|
+
let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = class TopNavBarItem extends _react.Component {
|
|
67
61
|
static displayName = 'TopNavBarItem';
|
|
68
62
|
static componentId = 'TopNavBar.Item';
|
|
69
63
|
static allowedProps = _props.allowedProps;
|
|
@@ -142,7 +136,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
142
136
|
const {
|
|
143
137
|
renderSubmenu
|
|
144
138
|
} = this.props;
|
|
145
|
-
return !!renderSubmenu && (0,
|
|
139
|
+
return !!renderSubmenu && (0, _uiReactUtils.matchComponentTypes)(renderSubmenu, [_v11_5.Drilldown]);
|
|
146
140
|
}
|
|
147
141
|
get shouldRenderPopover() {
|
|
148
142
|
const {
|
|
@@ -208,7 +202,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
208
202
|
}
|
|
209
203
|
return (0, _jsxRuntime.jsx)("span", {
|
|
210
204
|
css: this.props.styles?.submenuIcon,
|
|
211
|
-
children: this.shouldRenderSubmenu && this.state.isSubmenuOpen || this.shouldRenderPopover && this.state.isPopoverOpen ? (0, _jsxRuntime.jsx)(
|
|
205
|
+
children: this.shouldRenderSubmenu && this.state.isSubmenuOpen || this.shouldRenderPopover && this.state.isPopoverOpen ? (0, _jsxRuntime.jsx)(_uiIcons.IconArrowOpenUpSolid, {}) : (0, _jsxRuntime.jsx)(_uiIcons.IconArrowOpenDownSolid, {})
|
|
212
206
|
});
|
|
213
207
|
}
|
|
214
208
|
get buttonThemeOverride() {
|
|
@@ -328,9 +322,9 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
328
322
|
onClick,
|
|
329
323
|
onMouseOver,
|
|
330
324
|
onMouseOut,
|
|
331
|
-
onFocus: (0,
|
|
332
|
-
onBlur: (0,
|
|
333
|
-
onKeyDown: (0,
|
|
325
|
+
onFocus: (0, _uiUtils.createChainedFunction)(onFocus, this.onFocus),
|
|
326
|
+
onBlur: (0, _uiUtils.createChainedFunction)(onBlur, this.onBlur),
|
|
327
|
+
onKeyDown: (0, _uiUtils.createChainedFunction)(onKeyDown, this.handleKeyDown),
|
|
334
328
|
onKeyUp,
|
|
335
329
|
renderIcon,
|
|
336
330
|
themeOverride: this.buttonThemeOverride,
|
|
@@ -388,13 +382,13 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
388
382
|
if (this.isAvatarOnlyVariant) {
|
|
389
383
|
content = this.renderAvatar();
|
|
390
384
|
} else if (this.isIconVariant) {
|
|
391
|
-
content = (0, _jsxRuntime.jsx)(
|
|
385
|
+
content = (0, _jsxRuntime.jsx)(_uiA11yContent.ScreenReaderContent, {
|
|
392
386
|
children: content
|
|
393
387
|
});
|
|
394
388
|
}
|
|
395
389
|
const button = (0, _jsxRuntime.jsx)(_v11_2.BaseButton, {
|
|
396
390
|
...itemProps,
|
|
397
|
-
...(0,
|
|
391
|
+
...(0, _uiReactUtils.passthroughProps)((0, _uiReactUtils.omitProps)(this.props, _props.allowedProps)),
|
|
398
392
|
children: this.isIconVariant && !this.submenuIcon ? content : (0, _jsxRuntime.jsxs)("div", {
|
|
399
393
|
css: styles?.content,
|
|
400
394
|
children: [this.hasAvatar && !this.isAvatarOnlyVariant && (0, _jsxRuntime.jsx)("span", {
|
|
@@ -431,7 +425,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
431
425
|
...tooltip
|
|
432
426
|
};
|
|
433
427
|
}
|
|
434
|
-
const tipContent = (0,
|
|
428
|
+
const tipContent = (0, _uiReactUtils.callRenderProp)(tooltipProps.renderTip);
|
|
435
429
|
if (!tipContent) {
|
|
436
430
|
return button;
|
|
437
431
|
}
|
|
@@ -454,7 +448,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
454
448
|
positionContainerDisplay: "block",
|
|
455
449
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
456
450
|
css: styles?.submenuTriggerContainer,
|
|
457
|
-
children: contentAndTooltipIdentical ? button : (0,
|
|
451
|
+
children: contentAndTooltipIdentical ? button : (0, _uiReactUtils.safeCloneElement)(button, {
|
|
458
452
|
'aria-describedby': this._tooltipContentId
|
|
459
453
|
})
|
|
460
454
|
})
|
|
@@ -502,13 +496,13 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
502
496
|
if (renderSubmenu.props.trigger) {
|
|
503
497
|
(0, _console.warn)(false, `TopNavBar.Item submenus have the item itself as their trigger. The "trigger" prop will be ignored on the Drilldown submenu of item with id: "${id}".`);
|
|
504
498
|
}
|
|
505
|
-
return (0,
|
|
499
|
+
return (0, _uiReactUtils.safeCloneElement)(renderSubmenu, {
|
|
506
500
|
trigger: (0, _jsxRuntime.jsx)("div", {
|
|
507
501
|
css: styles?.submenuTriggerContainer,
|
|
508
502
|
children: this.renderContent()
|
|
509
503
|
}),
|
|
510
504
|
show: this.state.isSubmenuOpen,
|
|
511
|
-
onToggle: (0,
|
|
505
|
+
onToggle: (0, _uiUtils.createChainedFunction)(renderSubmenu.props?.onToggle, this.handleMenuToggle),
|
|
512
506
|
positionContainerDisplay: 'block',
|
|
513
507
|
placement: 'bottom start',
|
|
514
508
|
withArrow: false,
|
|
@@ -552,14 +546,14 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
552
546
|
css: styles?.submenuTriggerContainer,
|
|
553
547
|
children: this.renderContent()
|
|
554
548
|
}),
|
|
555
|
-
onShowContent: (0,
|
|
549
|
+
onShowContent: (0, _uiUtils.createChainedFunction)(customPopoverConfig.onShowContent, () => {
|
|
556
550
|
if (!this.isCustomPopoverControlled) {
|
|
557
551
|
this.setState({
|
|
558
552
|
isPopoverOpen: true
|
|
559
553
|
});
|
|
560
554
|
}
|
|
561
555
|
}),
|
|
562
|
-
onHideContent: (0,
|
|
556
|
+
onHideContent: (0, _uiUtils.createChainedFunction)(customPopoverConfig.onHideContent, () => {
|
|
563
557
|
if (!this.isCustomPopoverControlled) {
|
|
564
558
|
this.setState({
|
|
565
559
|
isPopoverOpen: false
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarDesktopLayout = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
10
|
var _emotion = require("@instructure/emotion");
|
|
11
11
|
var _TopNavBarContext = require("../../TopNavBarContext.js");
|
|
12
12
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -116,7 +116,7 @@ let TopNavBarDesktopLayout = exports.TopNavBarDesktopLayout = (_dec = (0, _emoti
|
|
|
116
116
|
// only render breadcrumb if there is no brand or menu items
|
|
117
117
|
const shouldRenderBreadcrumbBlock = !(this.hasBrandBlock || this.hasMenuItemsBlock) && this.hasBreadcrumbBlock;
|
|
118
118
|
return (0, _jsxRuntime.jsxs)("nav", {
|
|
119
|
-
...(0,
|
|
119
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
120
120
|
ref: this.handleRef,
|
|
121
121
|
css: styles?.topNavBarDesktopLayout,
|
|
122
122
|
"aria-label": navLabel,
|
|
@@ -6,21 +6,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarSmallViewportLayout = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _callRenderProp = require("@instructure/ui-react-utils/lib/callRenderProp.js");
|
|
12
|
-
var _px = require("@instructure/ui-utils/lib/px.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
13
11
|
var _console = require("@instructure/console");
|
|
14
|
-
var
|
|
15
|
-
var _requestAnimationFrame = require("@instructure/ui-dom-utils/lib/requestAnimationFrame.js");
|
|
12
|
+
var _uiDomUtils = require("@instructure/ui-dom-utils");
|
|
16
13
|
var _emotion = require("@instructure/emotion");
|
|
17
14
|
var _v11_ = require("@instructure/ui-tray/v11_6");
|
|
18
|
-
var
|
|
19
|
-
var _IconHamburgerLine = require("@instructure/ui-icons/lib/generated/IconHamburgerLine.js");
|
|
20
|
-
var _IconArrowOpenDownSolid = require("@instructure/ui-icons/lib/generated/IconArrowOpenDownSolid.js");
|
|
21
|
-
var _IconArrowOpenUpSolid = require("@instructure/ui-icons/lib/generated/IconArrowOpenUpSolid.js");
|
|
15
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
22
16
|
var _v11_2 = require("@instructure/ui-avatar/v11_6");
|
|
23
|
-
var
|
|
17
|
+
var _uiDialog = require("@instructure/ui-dialog");
|
|
24
18
|
var _v11_3 = require("@instructure/ui-drilldown/v11_6");
|
|
25
19
|
var _index = require("../../TopNavBarItem/index.js");
|
|
26
20
|
var _mapItemsForDrilldown = require("../../utils/mapItemsForDrilldown.js");
|
|
@@ -58,7 +52,7 @@ var _dec, _dec2, _class;
|
|
|
58
52
|
private: true
|
|
59
53
|
---
|
|
60
54
|
**/
|
|
61
|
-
let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec = (0,
|
|
55
|
+
let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = class TopNavBarSmallViewportLayout extends _react.Component {
|
|
62
56
|
static displayName = 'TopNavBarSmallViewportLayout';
|
|
63
57
|
static componentId = 'TopNavBar.SmallViewportLayout';
|
|
64
58
|
static allowedProps = _props.allowedProps;
|
|
@@ -97,7 +91,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
97
91
|
this.state = {
|
|
98
92
|
isDropdownMenuOpen: false,
|
|
99
93
|
isDropdownMenuVisible: false,
|
|
100
|
-
menuBottomPosition: (0,
|
|
94
|
+
menuBottomPosition: (0, _uiUtils.px)(props.styles?.navbarHeight || 0)
|
|
101
95
|
};
|
|
102
96
|
}
|
|
103
97
|
componentDidMount() {
|
|
@@ -175,7 +169,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
175
169
|
return (0, _mapItemsForDrilldown.renderMappedItemDrilldownSubpages)([...this.mappedUserOptions, ...this.mappedMenuItemsOptions]);
|
|
176
170
|
}
|
|
177
171
|
updateMenuBottomPosition() {
|
|
178
|
-
const boundingRect = (0,
|
|
172
|
+
const boundingRect = (0, _uiDomUtils.getBoundingClientRect)(this.ref);
|
|
179
173
|
this.setState({
|
|
180
174
|
menuBottomPosition: boundingRect.top + boundingRect.height
|
|
181
175
|
});
|
|
@@ -301,15 +295,15 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
301
295
|
children: alternativeTitle ? (0, _jsxRuntime.jsxs)(_index.TopNavBarItem, {
|
|
302
296
|
...itemProps,
|
|
303
297
|
"aria-label": dropdownMenuToggleButtonLabel,
|
|
304
|
-
children: [isDropdownMenuOpen ? (0, _jsxRuntime.jsx)(
|
|
298
|
+
children: [isDropdownMenuOpen ? (0, _jsxRuntime.jsx)(_uiIcons.IconArrowOpenUpSolid, {
|
|
305
299
|
...alternativeTitleIconProps
|
|
306
|
-
}) : (0, _jsxRuntime.jsx)(
|
|
300
|
+
}) : (0, _jsxRuntime.jsx)(_uiIcons.IconArrowOpenDownSolid, {
|
|
307
301
|
...alternativeTitleIconProps
|
|
308
302
|
}), alternativeTitle]
|
|
309
303
|
}) : (0, _jsxRuntime.jsx)(_index.TopNavBarItem, {
|
|
310
304
|
...itemProps,
|
|
311
305
|
variant: "icon",
|
|
312
|
-
renderIcon: isDropdownMenuOpen ? (0, _jsxRuntime.jsx)(
|
|
306
|
+
renderIcon: isDropdownMenuOpen ? (0, _jsxRuntime.jsx)(_uiIcons.IconXLine, {}) : (0, _jsxRuntime.jsx)(_uiIcons.IconHamburgerLine, {}),
|
|
313
307
|
children: dropdownMenuToggleButtonLabel
|
|
314
308
|
})
|
|
315
309
|
});
|
|
@@ -439,12 +433,12 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
439
433
|
onClose();
|
|
440
434
|
}
|
|
441
435
|
if (returnFocusElement) {
|
|
442
|
-
this._raf.push((0,
|
|
436
|
+
this._raf.push((0, _uiDomUtils.requestAnimationFrame)(() => {
|
|
443
437
|
returnFocusElement()?.focus();
|
|
444
438
|
}));
|
|
445
439
|
}
|
|
446
440
|
};
|
|
447
|
-
const dialog = (0, _jsxRuntime.jsx)(
|
|
441
|
+
const dialog = (0, _jsxRuntime.jsx)(_uiDialog.Dialog, {
|
|
448
442
|
display: "block",
|
|
449
443
|
open: open,
|
|
450
444
|
shouldContainFocus: shouldContainFocus,
|
|
@@ -456,14 +450,14 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
456
450
|
css: styles?.inPlaceDialogContainer,
|
|
457
451
|
children: [(0, _jsxRuntime.jsx)("div", {
|
|
458
452
|
css: styles?.inPlaceDialogContainerContent,
|
|
459
|
-
children: (0,
|
|
453
|
+
children: (0, _uiReactUtils.callRenderProp)(content, {
|
|
460
454
|
closeInPlaceDialog: handleClose
|
|
461
455
|
})
|
|
462
456
|
}), (0, _jsxRuntime.jsx)("div", {
|
|
463
457
|
css: styles?.inPlaceDialogContainerButton,
|
|
464
458
|
children: (0, _jsxRuntime.jsx)(_index.TopNavBarItem, {
|
|
465
459
|
id: this._inPlaceDialogCloseButtonId,
|
|
466
|
-
renderIcon:
|
|
460
|
+
renderIcon: _uiIcons.IconXLine,
|
|
467
461
|
variant: "icon",
|
|
468
462
|
onClick: handleClose,
|
|
469
463
|
children: closeButtonLabel
|
|
@@ -481,7 +475,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
481
475
|
styles
|
|
482
476
|
} = this.props;
|
|
483
477
|
return (0, _jsxRuntime.jsxs)("nav", {
|
|
484
|
-
...(0,
|
|
478
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
485
479
|
ref: this.handleRef,
|
|
486
480
|
"aria-label": navLabel,
|
|
487
481
|
"data-cid": "TopNavBarSmallViewportLayout",
|
|
@@ -6,13 +6,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarMenuItems = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
11
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
12
10
|
var _console = require("@instructure/console");
|
|
13
11
|
var _emotion = require("@instructure/emotion");
|
|
14
12
|
var _v11_ = require("@instructure/ui-drilldown/v11_6");
|
|
15
|
-
var
|
|
13
|
+
var _uiTruncateList = require("@instructure/ui-truncate-list");
|
|
16
14
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
17
15
|
var _index = require("../TopNavBarItem/index.js");
|
|
18
16
|
var _mapItemsForDrilldown = require("../utils/mapItemsForDrilldown.js");
|
|
@@ -52,7 +50,7 @@ id: TopNavBar.MenuItems
|
|
|
52
50
|
---
|
|
53
51
|
@module TopNavBarMenuItems
|
|
54
52
|
**/
|
|
55
|
-
let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0,
|
|
53
|
+
let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyle)(_styles.default, _theme.default), _dec(_class = _dec2(_class = class TopNavBarMenuItems extends _react.Component {
|
|
56
54
|
static displayName = 'TopNavBarMenuItems';
|
|
57
55
|
static componentId = 'TopNavBar.MenuItems';
|
|
58
56
|
static allowedProps = _props.allowedProps;
|
|
@@ -165,7 +163,7 @@ let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _withDetermini
|
|
|
165
163
|
(0, _console.warn)(false, `Disabled items can not be set to current/active, but the item with id "${id}" is disabled.`);
|
|
166
164
|
return child;
|
|
167
165
|
}
|
|
168
|
-
return (0,
|
|
166
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
169
167
|
status: 'active',
|
|
170
168
|
// if it has submenu, the root item cannot be current,
|
|
171
169
|
// just a link inside the submenu
|
|
@@ -189,8 +187,8 @@ let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _withDetermini
|
|
|
189
187
|
// in smallViewport mode it is rendered as a Drilldown
|
|
190
188
|
return null;
|
|
191
189
|
}
|
|
192
|
-
return (0, _react2.createElement)(
|
|
193
|
-
...(0,
|
|
190
|
+
return (0, _react2.createElement)(_uiTruncateList.TruncateList, {
|
|
191
|
+
...(0, _uiReactUtils.omitProps)(restProps, _props.allowedProps),
|
|
194
192
|
key: this.state.key // rerender if child count changes
|
|
195
193
|
,
|
|
196
194
|
elementRef: this.handleRef,
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = exports.TopNavBarUser = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _console = require("@instructure/console");
|
|
10
|
-
var
|
|
10
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
11
|
var _emotion = require("@instructure/emotion");
|
|
12
12
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
13
13
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -93,7 +93,7 @@ let TopNavBarUser = exports.TopNavBarUser = (_dec = (0, _emotion.withStyle)(_sty
|
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
95
|
return (0, _jsxRuntime.jsx)("div", {
|
|
96
|
-
...(0,
|
|
96
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
97
97
|
ref: this.handleRef,
|
|
98
98
|
css: styles?.topNavBarUser,
|
|
99
99
|
"data-cid": "TopNavBarUser",
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = exports.TopNavBar = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _console = require("@instructure/console");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
9
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
10
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
11
|
var _v11_ = require("@instructure/ui-responsive/v11_6");
|
|
12
12
|
var _index = require("./TopNavBarActionItems/index.js");
|
|
13
13
|
var _index2 = require("./TopNavBarBrand/index.js");
|
|
@@ -78,7 +78,7 @@ class TopNavBar extends _react.Component {
|
|
|
78
78
|
}
|
|
79
79
|
};
|
|
80
80
|
get breakpoint() {
|
|
81
|
-
return (0,
|
|
81
|
+
return (0, _uiUtils.px)(this.props.breakpoint);
|
|
82
82
|
}
|
|
83
83
|
render() {
|
|
84
84
|
const {
|
|
@@ -105,7 +105,7 @@ class TopNavBar extends _react.Component {
|
|
|
105
105
|
currentLayout: layout,
|
|
106
106
|
inverseColor: isInverseColor
|
|
107
107
|
});
|
|
108
|
-
if (!(0,
|
|
108
|
+
if (!(0, _uiReactUtils.matchComponentTypes)(content, [_index4.TopNavBarLayout])) {
|
|
109
109
|
(0, _console.error)(false, 'The `children` function prop of TopNavBar has to return a child of type <TopNavBar.Layout>, but it returned:', content);
|
|
110
110
|
}
|
|
111
111
|
return (0, _jsxRuntime.jsx)(_TopNavBarContext.TopNavBarContext.Provider, {
|
|
@@ -5,12 +5,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.itemSubmenuExample = exports.getUser = exports.getMenuItems = exports.getLayoutProps = exports.getInPlaceDialogConfig = exports.getCustomPopoverContent = exports.getCustomPopoverConfig = exports.getBreadcrumb = exports.getBrand = exports.getActionItems = exports.avatarExample = exports.SmallViewportModeWrapper = void 0;
|
|
7
7
|
var _v11_ = require("@instructure/ui-drilldown/v11_6");
|
|
8
|
-
var
|
|
9
|
-
var _IconAlertsLine = require("@instructure/ui-icons/lib/generated/IconAlertsLine.js");
|
|
10
|
-
var _IconConfigureLine = require("@instructure/ui-icons/lib/generated/IconConfigureLine.js");
|
|
11
|
-
var _IconSearchLine = require("@instructure/ui-icons/lib/generated/IconSearchLine.js");
|
|
12
|
-
var _IconDiscussionLine = require("@instructure/ui-icons/lib/generated/IconDiscussionLine.js");
|
|
13
|
-
var _IconDashboardLine = require("@instructure/ui-icons/lib/generated/IconDashboardLine.js");
|
|
8
|
+
var _uiIcons = require("@instructure/ui-icons");
|
|
14
9
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
15
10
|
var _index = require("../index.js");
|
|
16
11
|
var _exampleSvgFiles = require("./exampleSvgFiles.js");
|
|
@@ -141,22 +136,22 @@ exports.getMenuItems = getMenuItems;
|
|
|
141
136
|
const getActionItems = (config = {}) => {
|
|
142
137
|
const items = [{
|
|
143
138
|
label: 'Search',
|
|
144
|
-
icon:
|
|
139
|
+
icon: _uiIcons.IconSearchLine
|
|
145
140
|
}, {
|
|
146
141
|
label: 'Info',
|
|
147
|
-
icon:
|
|
142
|
+
icon: _uiIcons.IconQuestionLine
|
|
148
143
|
}, {
|
|
149
144
|
label: 'Alerts',
|
|
150
|
-
icon:
|
|
145
|
+
icon: _uiIcons.IconAlertsLine
|
|
151
146
|
}, {
|
|
152
147
|
label: 'Discussions',
|
|
153
|
-
icon:
|
|
148
|
+
icon: _uiIcons.IconDiscussionLine
|
|
154
149
|
}, {
|
|
155
150
|
label: 'Dashboard',
|
|
156
|
-
icon:
|
|
151
|
+
icon: _uiIcons.IconDashboardLine
|
|
157
152
|
}, {
|
|
158
153
|
label: 'Settings',
|
|
159
|
-
icon:
|
|
154
|
+
icon: _uiIcons.IconConfigureLine
|
|
160
155
|
}];
|
|
161
156
|
const count = typeof config.actionItemsCount !== 'undefined' ? config.actionItemsCount : 3;
|
|
162
157
|
const itemsSubset = items.slice(0, count);
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.renderMappedItemsAsDrilldownOptions = exports.renderMappedItemDrilldownSubpages = exports.mapItemsForDrilldown = exports.default = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _console = require("@instructure/console");
|
|
9
|
-
var
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
10
|
var _v11_ = require("@instructure/ui-drilldown/v11_6");
|
|
11
11
|
var _index = require("../TopNavBarItem/index.js");
|
|
12
12
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
@@ -42,7 +42,7 @@ const mapItemsForDrilldown = (itemList, options = {}) => {
|
|
|
42
42
|
renderOptionContent
|
|
43
43
|
} = options;
|
|
44
44
|
_react.Children.forEach(itemList, item => {
|
|
45
|
-
if (!item || !(0,
|
|
45
|
+
if (!item || !(0, _uiReactUtils.matchComponentTypes)(item, [_index.TopNavBarItem])) return;
|
|
46
46
|
const {
|
|
47
47
|
renderSubmenu,
|
|
48
48
|
customPopoverConfig,
|
|
@@ -61,7 +61,7 @@ const mapItemsForDrilldown = (itemList, options = {}) => {
|
|
|
61
61
|
let optionSubPageId;
|
|
62
62
|
const submenuPages = [];
|
|
63
63
|
if (submenu) {
|
|
64
|
-
if (!(0,
|
|
64
|
+
if (!(0, _uiReactUtils.matchComponentTypes)(submenu, [_v11_.Drilldown])) {
|
|
65
65
|
(0, _console.warn)(false, `The "renderSubmenu" prop accepts only Drilldown components, but the item with id "${id}" received: "${renderSubmenu}".`);
|
|
66
66
|
submenu = undefined;
|
|
67
67
|
}
|
|
@@ -6,15 +6,12 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarActionItems = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _passthroughProps = require("@instructure/ui-react-utils/lib/passthroughProps.js");
|
|
11
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
12
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
13
10
|
var _console = require("@instructure/console");
|
|
14
11
|
var _emotion = require("@instructure/emotion");
|
|
15
12
|
var _latest = require("@instructure/ui-drilldown/latest");
|
|
16
13
|
var _uiIcons = require("@instructure/ui-icons");
|
|
17
|
-
var
|
|
14
|
+
var _uiTruncateList = require("@instructure/ui-truncate-list");
|
|
18
15
|
var _index = require("../TopNavBarItem/index.js");
|
|
19
16
|
var _mapItemsForDrilldown = require("../utils/mapItemsForDrilldown.js");
|
|
20
17
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
@@ -53,7 +50,7 @@ id: TopNavBar.ActionItems
|
|
|
53
50
|
---
|
|
54
51
|
@module TopNavBarActionItems
|
|
55
52
|
**/
|
|
56
|
-
let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0,
|
|
53
|
+
let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyleNew)(_styles.default, 'TopNavBarActionItems'), _dec(_class = _dec2(_class = class TopNavBarActionItems extends _react.Component {
|
|
57
54
|
static displayName = 'TopNavBarActionItems';
|
|
58
55
|
static componentId = 'TopNavBar.ActionItems';
|
|
59
56
|
static themeId = 'TopNavBarActionItems';
|
|
@@ -111,7 +108,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
111
108
|
} = child.props;
|
|
112
109
|
if (renderAvatar) {
|
|
113
110
|
(0, _console.warn)(false, `Items in <TopNavBar.ActionItems> are not allowed to have avatars, please remove it from item with the id "${id}".`);
|
|
114
|
-
return (0,
|
|
111
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
115
112
|
renderAvatar: undefined,
|
|
116
113
|
variant: 'default'
|
|
117
114
|
});
|
|
@@ -121,7 +118,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
121
118
|
(0, _console.error)(false, `Items in <TopNavBar.ActionItems> are required to have the \`renderIcon\` prop, because only the icons are displayed due to the lack of space. Please add an icon to the item with the id "${id}".`);
|
|
122
119
|
return null;
|
|
123
120
|
}
|
|
124
|
-
return (0,
|
|
121
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
125
122
|
variant: variant === 'forceIconWithLabel' ? 'default' : 'icon'
|
|
126
123
|
});
|
|
127
124
|
}
|
|
@@ -177,8 +174,8 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
177
174
|
renderHiddenItemsMenuTriggerTooltip,
|
|
178
175
|
...restProps
|
|
179
176
|
} = this.props;
|
|
180
|
-
return (0, _react2.createElement)(
|
|
181
|
-
...(0,
|
|
177
|
+
return (0, _react2.createElement)(_uiTruncateList.TruncateList, {
|
|
178
|
+
...(0, _uiReactUtils.passthroughProps)((0, _uiReactUtils.omitProps)(restProps, _props.allowedProps)),
|
|
182
179
|
key: this.state.key // rerender if child count changes
|
|
183
180
|
,
|
|
184
181
|
elementRef: this.handleRef,
|
|
@@ -210,7 +207,7 @@ let TopNavBarActionItems = exports.TopNavBarActionItems = (_dec = (0, _withDeter
|
|
|
210
207
|
return this.renderTruncatedActionItemList();
|
|
211
208
|
}
|
|
212
209
|
return (0, _jsxRuntime.jsx)("ul", {
|
|
213
|
-
...(0,
|
|
210
|
+
...(0, _uiReactUtils.omitProps)(restProps, _props.allowedProps),
|
|
214
211
|
ref: this.handleRef,
|
|
215
212
|
css: styles?.topNavBarActionItems,
|
|
216
213
|
"aria-label": listLabel,
|
|
@@ -6,10 +6,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarBrand = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _omitProps = require("@instructure/ui-react-utils/lib/omitProps.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
10
|
var _emotion = require("@instructure/emotion");
|
|
12
|
-
var
|
|
11
|
+
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
13
12
|
var _latest = require("@instructure/ui-view/latest");
|
|
14
13
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
15
14
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -84,7 +83,7 @@ let TopNavBarBrand = exports.TopNavBarBrand = (_dec = (0, _emotion.withStyleNew)
|
|
|
84
83
|
onClick,
|
|
85
84
|
styles
|
|
86
85
|
} = this.props;
|
|
87
|
-
const ElementType = (0,
|
|
86
|
+
const ElementType = (0, _uiReactUtils.getElementType)(TopNavBarBrand, this.props);
|
|
88
87
|
return (0, _jsxRuntime.jsx)("div", {
|
|
89
88
|
ref: this.handleRef,
|
|
90
89
|
css: styles?.topNavBarBrand,
|
|
@@ -99,7 +98,7 @@ let TopNavBarBrand = exports.TopNavBarBrand = (_dec = (0, _emotion.withStyleNew)
|
|
|
99
98
|
}
|
|
100
99
|
}),
|
|
101
100
|
children: (0, _jsxRuntime.jsxs)(_latest.View, {
|
|
102
|
-
...(0,
|
|
101
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
103
102
|
css: styles?.container,
|
|
104
103
|
as: ElementType,
|
|
105
104
|
href: href,
|
|
@@ -108,7 +107,7 @@ let TopNavBarBrand = exports.TopNavBarBrand = (_dec = (0, _emotion.withStyleNew)
|
|
|
108
107
|
focusColor: this.context.inverseColor ? 'info' : 'inverse',
|
|
109
108
|
focusPosition: "inset",
|
|
110
109
|
borderRadius: "medium",
|
|
111
|
-
children: [(0, _jsxRuntime.jsx)(
|
|
110
|
+
children: [(0, _jsxRuntime.jsx)(_uiA11yContent.ScreenReaderContent, {
|
|
112
111
|
children: screenReaderLabel
|
|
113
112
|
}), renderIcon && this.context.layout !== 'smallViewport' && (0, _jsxRuntime.jsx)("div", {
|
|
114
113
|
css: styles?.iconContainer,
|
|
@@ -6,13 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarItem = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _omitProps = require("@instructure/ui-react-utils/lib/omitProps.js");
|
|
12
|
-
var _passthroughProps = require("@instructure/ui-react-utils/lib/passthroughProps.js");
|
|
13
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
14
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
15
|
-
var _createChainedFunction = require("@instructure/ui-utils/lib/createChainedFunction.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
16
11
|
var _console = require("@instructure/console");
|
|
17
12
|
var _emotion = require("@instructure/emotion");
|
|
18
13
|
var _uiIcons = require("@instructure/ui-icons");
|
|
@@ -21,7 +16,7 @@ var _latest2 = require("@instructure/ui-buttons/latest");
|
|
|
21
16
|
var _latest3 = require("@instructure/ui-tooltip/latest");
|
|
22
17
|
var _latest4 = require("@instructure/ui-popover/latest");
|
|
23
18
|
var _latest5 = require("@instructure/ui-drilldown/latest");
|
|
24
|
-
var
|
|
19
|
+
var _uiA11yContent = require("@instructure/ui-a11y-content");
|
|
25
20
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
26
21
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
27
22
|
var _props = require("./props.js");
|
|
@@ -61,7 +56,7 @@ id: TopNavBar.Item
|
|
|
61
56
|
---
|
|
62
57
|
@module TopNavBarItem
|
|
63
58
|
**/
|
|
64
|
-
let TopNavBarItem = exports.TopNavBarItem = (_dec = (0,
|
|
59
|
+
let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyleNew)(_styles.default, 'TopNavBarItem'), _dec(_class = _dec2(_class = class TopNavBarItem extends _react.Component {
|
|
65
60
|
static displayName = 'TopNavBarItem';
|
|
66
61
|
static componentId = 'TopNavBar.Item';
|
|
67
62
|
static themeId = 'TopNavBarItem';
|
|
@@ -141,7 +136,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
141
136
|
const {
|
|
142
137
|
renderSubmenu
|
|
143
138
|
} = this.props;
|
|
144
|
-
return !!renderSubmenu && (0,
|
|
139
|
+
return !!renderSubmenu && (0, _uiReactUtils.matchComponentTypes)(renderSubmenu, [_latest5.Drilldown]);
|
|
145
140
|
}
|
|
146
141
|
get shouldRenderPopover() {
|
|
147
142
|
const {
|
|
@@ -325,9 +320,9 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
325
320
|
onClick,
|
|
326
321
|
onMouseOver,
|
|
327
322
|
onMouseOut,
|
|
328
|
-
onFocus: (0,
|
|
329
|
-
onBlur: (0,
|
|
330
|
-
onKeyDown: (0,
|
|
323
|
+
onFocus: (0, _uiUtils.createChainedFunction)(onFocus, this.onFocus),
|
|
324
|
+
onBlur: (0, _uiUtils.createChainedFunction)(onBlur, this.onBlur),
|
|
325
|
+
onKeyDown: (0, _uiUtils.createChainedFunction)(onKeyDown, this.handleKeyDown),
|
|
331
326
|
onKeyUp,
|
|
332
327
|
renderIcon,
|
|
333
328
|
themeOverride: this.buttonThemeOverride,
|
|
@@ -385,13 +380,13 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
385
380
|
if (this.isAvatarOnlyVariant) {
|
|
386
381
|
content = this.renderAvatar();
|
|
387
382
|
} else if (this.isIconVariant) {
|
|
388
|
-
content = (0, _jsxRuntime.jsx)(
|
|
383
|
+
content = (0, _jsxRuntime.jsx)(_uiA11yContent.ScreenReaderContent, {
|
|
389
384
|
children: content
|
|
390
385
|
});
|
|
391
386
|
}
|
|
392
387
|
const button = (0, _jsxRuntime.jsx)(_latest2.BaseButton, {
|
|
393
388
|
...itemProps,
|
|
394
|
-
...(0,
|
|
389
|
+
...(0, _uiReactUtils.passthroughProps)((0, _uiReactUtils.omitProps)(this.props, _props.allowedProps)),
|
|
395
390
|
children: this.isIconVariant && !this.submenuIcon ? content : (0, _jsxRuntime.jsxs)("div", {
|
|
396
391
|
css: styles?.content,
|
|
397
392
|
children: [this.hasAvatar && !this.isAvatarOnlyVariant && (0, _jsxRuntime.jsx)("span", {
|
|
@@ -428,7 +423,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
428
423
|
...tooltip
|
|
429
424
|
};
|
|
430
425
|
}
|
|
431
|
-
const tipContent = (0,
|
|
426
|
+
const tipContent = (0, _uiReactUtils.callRenderProp)(tooltipProps.renderTip);
|
|
432
427
|
if (!tipContent) {
|
|
433
428
|
return button;
|
|
434
429
|
}
|
|
@@ -451,7 +446,7 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
451
446
|
positionContainerDisplay: "block",
|
|
452
447
|
children: (0, _jsxRuntime.jsx)("div", {
|
|
453
448
|
css: styles?.submenuTriggerContainer,
|
|
454
|
-
children: contentAndTooltipIdentical ? button : (0,
|
|
449
|
+
children: contentAndTooltipIdentical ? button : (0, _uiReactUtils.safeCloneElement)(button, {
|
|
455
450
|
'aria-describedby': this._tooltipContentId
|
|
456
451
|
})
|
|
457
452
|
})
|
|
@@ -499,13 +494,13 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
499
494
|
if (renderSubmenu.props.trigger) {
|
|
500
495
|
(0, _console.warn)(false, `TopNavBar.Item submenus have the item itself as their trigger. The "trigger" prop will be ignored on the Drilldown submenu of item with id: "${id}".`);
|
|
501
496
|
}
|
|
502
|
-
return (0,
|
|
497
|
+
return (0, _uiReactUtils.safeCloneElement)(renderSubmenu, {
|
|
503
498
|
trigger: (0, _jsxRuntime.jsx)("div", {
|
|
504
499
|
css: styles?.submenuTriggerContainer,
|
|
505
500
|
children: this.renderContent()
|
|
506
501
|
}),
|
|
507
502
|
show: this.state.isSubmenuOpen,
|
|
508
|
-
onToggle: (0,
|
|
503
|
+
onToggle: (0, _uiUtils.createChainedFunction)(renderSubmenu.props?.onToggle, this.handleMenuToggle),
|
|
509
504
|
positionContainerDisplay: 'block',
|
|
510
505
|
placement: 'bottom start',
|
|
511
506
|
withArrow: false,
|
|
@@ -549,14 +544,14 @@ let TopNavBarItem = exports.TopNavBarItem = (_dec = (0, _withDeterministicId.wit
|
|
|
549
544
|
css: styles?.submenuTriggerContainer,
|
|
550
545
|
children: this.renderContent()
|
|
551
546
|
}),
|
|
552
|
-
onShowContent: (0,
|
|
547
|
+
onShowContent: (0, _uiUtils.createChainedFunction)(customPopoverConfig.onShowContent, () => {
|
|
553
548
|
if (!this.isCustomPopoverControlled) {
|
|
554
549
|
this.setState({
|
|
555
550
|
isPopoverOpen: true
|
|
556
551
|
});
|
|
557
552
|
}
|
|
558
553
|
}),
|
|
559
|
-
onHideContent: (0,
|
|
554
|
+
onHideContent: (0, _uiUtils.createChainedFunction)(customPopoverConfig.onHideContent, () => {
|
|
560
555
|
if (!this.isCustomPopoverControlled) {
|
|
561
556
|
this.setState({
|
|
562
557
|
isPopoverOpen: false
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarDesktopLayout = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
10
|
var _emotion = require("@instructure/emotion");
|
|
11
11
|
var _TopNavBarContext = require("../../TopNavBarContext.js");
|
|
12
12
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -116,7 +116,7 @@ let TopNavBarDesktopLayout = exports.TopNavBarDesktopLayout = (_dec = (0, _emoti
|
|
|
116
116
|
// only render breadcrumb if there is no brand or menu items
|
|
117
117
|
const shouldRenderBreadcrumbBlock = !(this.hasBrandBlock || this.hasMenuItemsBlock) && this.hasBreadcrumbBlock;
|
|
118
118
|
return (0, _jsxRuntime.jsxs)("nav", {
|
|
119
|
-
...(0,
|
|
119
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
120
120
|
ref: this.handleRef,
|
|
121
121
|
css: styles?.topNavBarDesktopLayout,
|
|
122
122
|
"aria-label": navLabel,
|
|
@@ -6,18 +6,15 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarSmallViewportLayout = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
11
|
-
var _callRenderProp = require("@instructure/ui-react-utils/lib/callRenderProp.js");
|
|
12
|
-
var _px = require("@instructure/ui-utils/lib/px.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
13
11
|
var _console = require("@instructure/console");
|
|
14
|
-
var
|
|
15
|
-
var _requestAnimationFrame = require("@instructure/ui-dom-utils/lib/requestAnimationFrame.js");
|
|
12
|
+
var _uiDomUtils = require("@instructure/ui-dom-utils");
|
|
16
13
|
var _emotion = require("@instructure/emotion");
|
|
17
14
|
var _latest = require("@instructure/ui-tray/latest");
|
|
18
15
|
var _uiIcons = require("@instructure/ui-icons");
|
|
19
16
|
var _latest2 = require("@instructure/ui-avatar/latest");
|
|
20
|
-
var
|
|
17
|
+
var _uiDialog = require("@instructure/ui-dialog");
|
|
21
18
|
var _latest3 = require("@instructure/ui-drilldown/latest");
|
|
22
19
|
var _index = require("../../TopNavBarItem/index.js");
|
|
23
20
|
var _mapItemsForDrilldown = require("../../utils/mapItemsForDrilldown.js");
|
|
@@ -54,7 +51,7 @@ var _dec, _dec2, _class;
|
|
|
54
51
|
private: true
|
|
55
52
|
---
|
|
56
53
|
**/
|
|
57
|
-
let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec = (0,
|
|
54
|
+
let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyleNew)(_styles.default, 'TopNavBarLayout'), _dec(_class = _dec2(_class = class TopNavBarSmallViewportLayout extends _react.Component {
|
|
58
55
|
static displayName = 'TopNavBarSmallViewportLayout';
|
|
59
56
|
static componentId = 'TopNavBar.SmallViewportLayout';
|
|
60
57
|
static themeId = 'TopNavBarLayout';
|
|
@@ -94,7 +91,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
94
91
|
this.state = {
|
|
95
92
|
isDropdownMenuOpen: false,
|
|
96
93
|
isDropdownMenuVisible: false,
|
|
97
|
-
menuBottomPosition: (0,
|
|
94
|
+
menuBottomPosition: (0, _uiUtils.px)(props.styles?.navbarHeight || 0)
|
|
98
95
|
};
|
|
99
96
|
}
|
|
100
97
|
componentDidMount() {
|
|
@@ -172,7 +169,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
172
169
|
return (0, _mapItemsForDrilldown.renderMappedItemDrilldownSubpages)([...this.mappedUserOptions, ...this.mappedMenuItemsOptions]);
|
|
173
170
|
}
|
|
174
171
|
updateMenuBottomPosition() {
|
|
175
|
-
const boundingRect = (0,
|
|
172
|
+
const boundingRect = (0, _uiDomUtils.getBoundingClientRect)(this.ref);
|
|
176
173
|
this.setState({
|
|
177
174
|
menuBottomPosition: boundingRect.top + boundingRect.height
|
|
178
175
|
});
|
|
@@ -433,12 +430,12 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
433
430
|
onClose();
|
|
434
431
|
}
|
|
435
432
|
if (returnFocusElement) {
|
|
436
|
-
this._raf.push((0,
|
|
433
|
+
this._raf.push((0, _uiDomUtils.requestAnimationFrame)(() => {
|
|
437
434
|
returnFocusElement()?.focus();
|
|
438
435
|
}));
|
|
439
436
|
}
|
|
440
437
|
};
|
|
441
|
-
const dialog = (0, _jsxRuntime.jsx)(
|
|
438
|
+
const dialog = (0, _jsxRuntime.jsx)(_uiDialog.Dialog, {
|
|
442
439
|
display: "block",
|
|
443
440
|
open: open,
|
|
444
441
|
shouldContainFocus: shouldContainFocus,
|
|
@@ -450,7 +447,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
450
447
|
css: styles?.inPlaceDialogContainer,
|
|
451
448
|
children: [(0, _jsxRuntime.jsx)("div", {
|
|
452
449
|
css: styles?.inPlaceDialogContainerContent,
|
|
453
|
-
children: (0,
|
|
450
|
+
children: (0, _uiReactUtils.callRenderProp)(content, {
|
|
454
451
|
closeInPlaceDialog: handleClose
|
|
455
452
|
})
|
|
456
453
|
}), (0, _jsxRuntime.jsx)("div", {
|
|
@@ -475,7 +472,7 @@ let TopNavBarSmallViewportLayout = exports.TopNavBarSmallViewportLayout = (_dec
|
|
|
475
472
|
styles
|
|
476
473
|
} = this.props;
|
|
477
474
|
return (0, _jsxRuntime.jsxs)("nav", {
|
|
478
|
-
...(0,
|
|
475
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
479
476
|
ref: this.handleRef,
|
|
480
477
|
"aria-label": navLabel,
|
|
481
478
|
"data-cid": "TopNavBarSmallViewportLayout",
|
|
@@ -6,13 +6,11 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
});
|
|
7
7
|
exports.default = exports.TopNavBarMenuItems = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
|
-
var
|
|
10
|
-
var _safeCloneElement = require("@instructure/ui-react-utils/lib/safeCloneElement.js");
|
|
11
|
-
var _withDeterministicId = require("@instructure/ui-react-utils/lib/DeterministicIdContext/withDeterministicId.js");
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
12
10
|
var _console = require("@instructure/console");
|
|
13
11
|
var _emotion = require("@instructure/emotion");
|
|
14
12
|
var _latest = require("@instructure/ui-drilldown/latest");
|
|
15
|
-
var
|
|
13
|
+
var _uiTruncateList = require("@instructure/ui-truncate-list");
|
|
16
14
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
17
15
|
var _index = require("../TopNavBarItem/index.js");
|
|
18
16
|
var _mapItemsForDrilldown = require("../utils/mapItemsForDrilldown.js");
|
|
@@ -51,7 +49,7 @@ id: TopNavBar.MenuItems
|
|
|
51
49
|
---
|
|
52
50
|
@module TopNavBarMenuItems
|
|
53
51
|
**/
|
|
54
|
-
let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0,
|
|
52
|
+
let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _uiReactUtils.withDeterministicId)(), _dec2 = (0, _emotion.withStyleNew)(_styles.default, 'TopNavBarMenuItems'), _dec(_class = _dec2(_class = class TopNavBarMenuItems extends _react.Component {
|
|
55
53
|
static displayName = 'TopNavBarMenuItems';
|
|
56
54
|
static componentId = 'TopNavBar.MenuItems';
|
|
57
55
|
static themeId = 'TopNavBarMenuItems';
|
|
@@ -165,7 +163,7 @@ let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _withDetermini
|
|
|
165
163
|
(0, _console.warn)(false, `Disabled items can not be set to current/active, but the item with id "${id}" is disabled.`);
|
|
166
164
|
return child;
|
|
167
165
|
}
|
|
168
|
-
return (0,
|
|
166
|
+
return (0, _uiReactUtils.safeCloneElement)(child, {
|
|
169
167
|
status: 'active',
|
|
170
168
|
// if it has submenu, the root item cannot be current,
|
|
171
169
|
// just a link inside the submenu
|
|
@@ -189,8 +187,8 @@ let TopNavBarMenuItems = exports.TopNavBarMenuItems = (_dec = (0, _withDetermini
|
|
|
189
187
|
// in smallViewport mode it is rendered as a Drilldown
|
|
190
188
|
return null;
|
|
191
189
|
}
|
|
192
|
-
return (0, _react2.createElement)(
|
|
193
|
-
...(0,
|
|
190
|
+
return (0, _react2.createElement)(_uiTruncateList.TruncateList, {
|
|
191
|
+
...(0, _uiReactUtils.omitProps)(restProps, _props.allowedProps),
|
|
194
192
|
key: this.state.key // rerender if child count changes
|
|
195
193
|
,
|
|
196
194
|
elementRef: this.handleRef,
|
|
@@ -7,7 +7,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
7
7
|
exports.default = exports.TopNavBarUser = void 0;
|
|
8
8
|
var _react = require("react");
|
|
9
9
|
var _console = require("@instructure/console");
|
|
10
|
-
var
|
|
10
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
11
|
var _emotion = require("@instructure/emotion");
|
|
12
12
|
var _TopNavBarContext = require("../TopNavBarContext.js");
|
|
13
13
|
var _styles = _interopRequireDefault(require("./styles.js"));
|
|
@@ -93,7 +93,7 @@ let TopNavBarUser = exports.TopNavBarUser = (_dec = (0, _emotion.withStyleNew)(_
|
|
|
93
93
|
return null;
|
|
94
94
|
}
|
|
95
95
|
return (0, _jsxRuntime.jsx)("div", {
|
|
96
|
-
...(0,
|
|
96
|
+
...(0, _uiReactUtils.omitProps)(this.props, _props.allowedProps),
|
|
97
97
|
ref: this.handleRef,
|
|
98
98
|
css: styles?.topNavBarUser,
|
|
99
99
|
"data-cid": "TopNavBarUser",
|
|
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.default = exports.TopNavBar = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _console = require("@instructure/console");
|
|
9
|
-
var
|
|
10
|
-
var
|
|
9
|
+
var _uiUtils = require("@instructure/ui-utils");
|
|
10
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
11
11
|
var _latest = require("@instructure/ui-responsive/latest");
|
|
12
12
|
var _index = require("./TopNavBarActionItems/index.js");
|
|
13
13
|
var _index2 = require("./TopNavBarBrand/index.js");
|
|
@@ -78,7 +78,7 @@ class TopNavBar extends _react.Component {
|
|
|
78
78
|
}
|
|
79
79
|
};
|
|
80
80
|
get breakpoint() {
|
|
81
|
-
return (0,
|
|
81
|
+
return (0, _uiUtils.px)(this.props.breakpoint);
|
|
82
82
|
}
|
|
83
83
|
render() {
|
|
84
84
|
const {
|
|
@@ -105,7 +105,7 @@ class TopNavBar extends _react.Component {
|
|
|
105
105
|
currentLayout: layout,
|
|
106
106
|
inverseColor: isInverseColor
|
|
107
107
|
});
|
|
108
|
-
if (!(0,
|
|
108
|
+
if (!(0, _uiReactUtils.matchComponentTypes)(content, [_index4.TopNavBarLayout])) {
|
|
109
109
|
(0, _console.error)(false, 'The `children` function prop of TopNavBar has to return a child of type <TopNavBar.Layout>, but it returned:', content);
|
|
110
110
|
}
|
|
111
111
|
return (0, _jsxRuntime.jsx)(_TopNavBarContext.TopNavBarContext.Provider, {
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
6
6
|
exports.renderMappedItemsAsDrilldownOptions = exports.renderMappedItemDrilldownSubpages = exports.mapItemsForDrilldown = exports.default = void 0;
|
|
7
7
|
var _react = require("react");
|
|
8
8
|
var _console = require("@instructure/console");
|
|
9
|
-
var
|
|
9
|
+
var _uiReactUtils = require("@instructure/ui-react-utils");
|
|
10
10
|
var _latest = require("@instructure/ui-drilldown/latest");
|
|
11
11
|
var _index = require("../TopNavBarItem/index.js");
|
|
12
12
|
var _jsxRuntime = require("@emotion/react/jsx-runtime");
|
|
@@ -42,7 +42,7 @@ const mapItemsForDrilldown = (itemList, options = {}) => {
|
|
|
42
42
|
renderOptionContent
|
|
43
43
|
} = options;
|
|
44
44
|
_react.Children.forEach(itemList, item => {
|
|
45
|
-
if (!item || !(0,
|
|
45
|
+
if (!item || !(0, _uiReactUtils.matchComponentTypes)(item, [_index.TopNavBarItem])) return;
|
|
46
46
|
const {
|
|
47
47
|
renderSubmenu,
|
|
48
48
|
customPopoverConfig,
|
|
@@ -61,7 +61,7 @@ const mapItemsForDrilldown = (itemList, options = {}) => {
|
|
|
61
61
|
let optionSubPageId;
|
|
62
62
|
const submenuPages = [];
|
|
63
63
|
if (submenu) {
|
|
64
|
-
if (!(0,
|
|
64
|
+
if (!(0, _uiReactUtils.matchComponentTypes)(submenu, [_latest.Drilldown])) {
|
|
65
65
|
(0, _console.warn)(false, `The "renderSubmenu" prop accepts only Drilldown components, but the item with id "${id}" received: "${renderSubmenu}".`);
|
|
66
66
|
submenu = undefined;
|
|
67
67
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@instructure/ui-top-nav-bar",
|
|
3
|
-
"version": "11.7.
|
|
3
|
+
"version": "11.7.9-snapshot-1",
|
|
4
4
|
"description": "A UI component library made by Instructure Inc.",
|
|
5
5
|
"author": "Instructure, Inc. Engineering and Product Design",
|
|
6
6
|
"module": "./es/index.js",
|
|
@@ -15,34 +15,34 @@
|
|
|
15
15
|
"license": "MIT",
|
|
16
16
|
"dependencies": {
|
|
17
17
|
"@babel/runtime": "^7.29.7",
|
|
18
|
-
"@instructure/
|
|
19
|
-
"@instructure/
|
|
20
|
-
"@instructure/
|
|
21
|
-
"@instructure/ui-
|
|
22
|
-
"@instructure/
|
|
23
|
-
"@instructure/ui-
|
|
24
|
-
"@instructure/ui-
|
|
25
|
-
"@instructure/ui-
|
|
26
|
-
"@instructure/ui-
|
|
27
|
-
"@instructure/ui-
|
|
28
|
-
"@instructure/ui-
|
|
29
|
-
"@instructure/ui-link": "11.7.
|
|
30
|
-
"@instructure/ui-react-utils": "11.7.
|
|
31
|
-
"@instructure/ui-popover": "11.7.
|
|
32
|
-
"@instructure/ui-tooltip": "11.7.
|
|
33
|
-
"@instructure/ui-
|
|
34
|
-
"@instructure/ui-
|
|
35
|
-
"@instructure/ui-
|
|
36
|
-
"@instructure/ui-
|
|
37
|
-
"@instructure/ui-
|
|
38
|
-
"@instructure/ui-
|
|
18
|
+
"@instructure/console": "11.7.9-snapshot-1",
|
|
19
|
+
"@instructure/emotion": "11.7.9-snapshot-1",
|
|
20
|
+
"@instructure/shared-types": "11.7.9-snapshot-1",
|
|
21
|
+
"@instructure/ui-avatar": "11.7.9-snapshot-1",
|
|
22
|
+
"@instructure/ui-a11y-content": "11.7.9-snapshot-1",
|
|
23
|
+
"@instructure/ui-breadcrumb": "11.7.9-snapshot-1",
|
|
24
|
+
"@instructure/ui-dialog": "11.7.9-snapshot-1",
|
|
25
|
+
"@instructure/ui-dom-utils": "11.7.9-snapshot-1",
|
|
26
|
+
"@instructure/ui-buttons": "11.7.9-snapshot-1",
|
|
27
|
+
"@instructure/ui-drilldown": "11.7.9-snapshot-1",
|
|
28
|
+
"@instructure/ui-icons": "11.7.9-snapshot-1",
|
|
29
|
+
"@instructure/ui-link": "11.7.9-snapshot-1",
|
|
30
|
+
"@instructure/ui-react-utils": "11.7.9-snapshot-1",
|
|
31
|
+
"@instructure/ui-popover": "11.7.9-snapshot-1",
|
|
32
|
+
"@instructure/ui-tooltip": "11.7.9-snapshot-1",
|
|
33
|
+
"@instructure/ui-tray": "11.7.9-snapshot-1",
|
|
34
|
+
"@instructure/ui-themes": "11.7.9-snapshot-1",
|
|
35
|
+
"@instructure/ui-utils": "11.7.9-snapshot-1",
|
|
36
|
+
"@instructure/ui-responsive": "11.7.9-snapshot-1",
|
|
37
|
+
"@instructure/ui-view": "11.7.9-snapshot-1",
|
|
38
|
+
"@instructure/ui-truncate-list": "11.7.9-snapshot-1"
|
|
39
39
|
},
|
|
40
40
|
"devDependencies": {
|
|
41
41
|
"vitest": "^5.0.0",
|
|
42
|
-
"@instructure/ui-
|
|
43
|
-
"@instructure/ui-
|
|
44
|
-
"@instructure/ui-scripts": "11.7.
|
|
45
|
-
"@instructure/ui-
|
|
42
|
+
"@instructure/ui-babel-preset": "11.7.9-snapshot-1",
|
|
43
|
+
"@instructure/ui-color-utils": "11.7.9-snapshot-1",
|
|
44
|
+
"@instructure/ui-scripts": "11.7.9-snapshot-1",
|
|
45
|
+
"@instructure/ui-axe-check": "11.7.9-snapshot-1"
|
|
46
46
|
},
|
|
47
47
|
"peerDependencies": {
|
|
48
48
|
"react": ">=18 <=19"
|