office-ui-fabric-react
Version:
Reusable React components for building experiences for Office 365.
105 lines • 4.01 kB
JavaScript
import * as tslib_1 from "tslib";
import * as React from 'react';
import { CommandBarButton, OverflowSet, Checkbox } from 'office-ui-fabric-react';
var noOp = function () { return undefined; };
var checkboxStyles = {
root: {
marginRight: 5
}
};
var OverflowSetCustomExample = /** @class */ (function (_super) {
tslib_1.__extends(OverflowSetCustomExample, _super);
function OverflowSetCustomExample() {
var _this = _super !== null && _super.apply(this, arguments) || this;
_this._onRenderItem = function (item) {
if (item.onRender) {
return item.onRender(item);
}
return React.createElement(CommandBarButton, { role: "menuitem", iconProps: { iconName: item.icon }, menuProps: item.subMenuProps, text: item.name });
};
_this._onRenderOverflowButton = function (overflowItems) {
var buttonStyles = {
root: {
minWidth: 0,
padding: '0 4px',
alignSelf: 'stretch',
height: 'auto'
}
};
return (React.createElement(CommandBarButton, { ariaLabel: "More items", role: "menuitem", styles: buttonStyles, menuIconProps: { iconName: 'More' }, menuProps: { items: overflowItems } }));
};
return _this;
}
OverflowSetCustomExample.prototype.render = function () {
return (React.createElement(OverflowSet, { "aria-label": "Custom Example", items: [
{
key: 'checkbox',
onRender: function () {
return React.createElement(Checkbox, { role: "menuitem", label: "A Checkbox", styles: checkboxStyles });
}
},
{
key: 'newItem',
name: 'New',
icon: 'Add',
ariaLabel: 'New. Use left and right arrow keys to navigate',
onClick: noOp,
subMenuProps: {
items: [
{
key: 'emailMessage',
name: 'Email message',
icon: 'Mail'
},
{
key: 'calendarEvent',
name: 'Calendar event',
icon: 'Calendar'
}
]
}
},
{
key: 'upload',
name: 'Upload',
icon: 'Upload',
onClick: noOp
},
{
key: 'share',
name: 'Share',
icon: 'Share',
onClick: noOp
}
], overflowItems: [
{
key: 'move',
name: 'Move to...',
icon: 'MoveToFolder',
onClick: noOp
},
{
key: 'copy',
name: 'Copy to...',
icon: 'Copy',
onClick: noOp
},
{
key: 'rename',
name: 'Rename...',
icon: 'Edit',
onClick: noOp
},
{
key: 'disabled',
name: 'Disabled...',
icon: 'Cancel',
disabled: true,
onClick: noOp
}
], onRenderOverflowButton: this._onRenderOverflowButton, onRenderItem: this._onRenderItem }));
};
return OverflowSetCustomExample;
}(React.PureComponent));
export { OverflowSetCustomExample };
//# sourceMappingURL=OverflowSet.Custom.Example.js.map