UNPKG

@fluentui/react

Version:

Reusable React components for building web experiences.

35 lines 2.39 kB
define(["require", "exports", "tslib", "react", "../../../Utilities", "../../../Button", "./TagItem.styles", "@fluentui/react-hooks"], function (require, exports, tslib_1, React, Utilities_1, Button_1, TagItem_styles_1, react_hooks_1) { "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.TagItem = exports.TagItemBase = void 0; var getClassNames = Utilities_1.classNamesFunction(); /** * {@docCategory TagPicker} */ var TagItemBase = function (props) { var theme = props.theme, styles = props.styles, selected = props.selected, disabled = props.disabled, enableTagFocusInDisabledPicker = props.enableTagFocusInDisabledPicker, children = props.children, className = props.className, index = props.index, onRemoveItem = props.onRemoveItem, removeButtonAriaLabel = props.removeButtonAriaLabel, _a = props.title, title = _a === void 0 ? typeof props.children === 'string' ? props.children : props.item.name : _a, removeButtonIconProps = props.removeButtonIconProps; var classNames = getClassNames(styles, { theme: theme, className: className, selected: selected, disabled: disabled, }); var itemId = react_hooks_1.useId(); var disabledAttrs = enableTagFocusInDisabledPicker ? { 'aria-disabled': disabled, tabindex: 0, } : { disabled: disabled, }; return (React.createElement("div", { className: classNames.root, role: 'listitem', key: index }, React.createElement("span", { className: classNames.text, title: title, id: itemId + "-text" }, children), React.createElement(Button_1.IconButton, tslib_1.__assign({ id: itemId, onClick: onRemoveItem }, disabledAttrs, { iconProps: removeButtonIconProps !== null && removeButtonIconProps !== void 0 ? removeButtonIconProps : { iconName: 'Cancel' }, styles: { icon: { fontSize: '12px' } }, className: classNames.close, ariaLabel: removeButtonAriaLabel, "aria-labelledby": itemId + " " + itemId + "-text", "data-selection-index": index })))); }; exports.TagItemBase = TagItemBase; exports.TagItem = Utilities_1.styled(exports.TagItemBase, TagItem_styles_1.getStyles, undefined, { scope: 'TagItem', }); }); //# sourceMappingURL=TagItem.js.map