"use strict";
/*
 * Copyright 2024 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.TagRemoveButton = void 0;
var tslib_1 = require("tslib");
var React = tslib_1.__importStar(require("react"));
var icons_1 = require("@blueprintjs/icons");
var common_1 = require("../../common");
var TagRemoveButton = function (props) {
    // eslint-disable-next-line @typescript-eslint/no-deprecated
    var className = props.className, large = props.large, onRemove = props.onRemove, size = props.size, tabIndex = props.tabIndex;
    var isLarge = large || size === "large" || (className === null || className === void 0 ? void 0 : className.includes(common_1.Classes.LARGE));
    var handleRemoveClick = React.useCallback(function (e) {
        onRemove === null || onRemove === void 0 ? void 0 : onRemove(e, props);
    }, [onRemove, props]);
    return (React.createElement("button", { "aria-label": "Remove tag", type: "button", className: common_1.Classes.TAG_REMOVE, onClick: handleRemoveClick, tabIndex: tabIndex },
        React.createElement(icons_1.SmallCross, { size: isLarge ? icons_1.IconSize.LARGE : icons_1.IconSize.STANDARD })));
};
exports.TagRemoveButton = TagRemoveButton;
exports.TagRemoveButton.displayName = "".concat(common_1.DISPLAYNAME_PREFIX, ".TagRemoveButton");
//# sourceMappingURL=tagRemoveButton.js.map