UNPKG

@sendbird/uikit-react

Version:

Sendbird UIKit for React: A feature-rich and customizable chat UI kit with messaging, channel management, and user authentication.

50 lines (43 loc) 2.72 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var _tslib = require('../../chunks/bundle-DdEJUQ3V.js'); var React = require('react'); var ui_Label = require('../../chunks/bundle-D66YmzI6.js'); var ui_Icon = require('../../ui/Icon.js'); var utils = require('../../chunks/bundle-C9bb3iWF.js'); var ChannelSettings_components_ChannelSettingsMenuItem = require('./ChannelSettingsMenuItem.js'); var useChannelSettings = require('../../chunks/bundle-79zaNhm6.js'); require('../../chunks/bundle-BE-eUbjS.js'); require('../../chunks/bundle-kfqOElgK.js'); require('@sendbird/chat/message'); require('../../chunks/bundle-REYf6P50.js'); require('../../chunks/bundle-C7WnFc5I.js'); require('../../chunks/bundle-HERYYUXZ.js'); require('../../chunks/bundle-DWBI0JnU.js'); require('@sendbird/chat/groupChannel'); require('../../chunks/bundle-BeuUz2c0.js'); require('../../chunks/bundle-HkyQ0DjT.js'); require('../../chunks/bundle-H44hyvFN.js'); require('../../chunks/bundle-D6mmpicY.js'); require('@sendbird/chat'); require('@sendbird/chat/openChannel'); function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; } var React__default = /*#__PURE__*/_interopDefaultCompat(React); var MenuListByRole = function (_a) { var menuItems = _a.menuItems; var channel = useChannelSettings.useChannelSettings().state.channel; var menuItemsByRole = utils.isOperator(channel) ? menuItems.operator : menuItems.nonOperator; // State to track the open accordion key var _b = React.useState(null), openAccordionKey = _b[0], setOpenAccordionKey = _b[1]; return (React__default.default.createElement("div", { className: "sendbird-channel-settings__operator" }, Object.entries(menuItemsByRole).map(function (_a) { var key = _a[0], item = _a[1]; if (item.hideMenu) return null; return (React__default.default.createElement(ChannelSettings_components_ChannelSettingsMenuItem.MenuItem, { key: key, onClick: item.onClick, onKeyDown: item.onKeyDown, renderLeft: function () { return React__default.default.createElement(ui_Icon.default, _tslib.__assign({}, item.icon)); }, renderMiddle: function () { return React__default.default.createElement(ui_Label.Label, _tslib.__assign({}, item.label)); }, renderRight: item.rightComponent, renderAccordion: item.accordionComponent, accordionOpened: openAccordionKey === key, setAccordionOpened: function () { setOpenAccordionKey(function (prevKey) { return (prevKey === key ? null : key); }); } })); }))); }; exports.MenuListByRole = MenuListByRole; exports.default = MenuListByRole; //# sourceMappingURL=ChannelSettingMenuList.js.map