tdesign-react
Version: 
TDesign Component for React
127 lines (119 loc) • 4.52 kB
JavaScript
/**
 * tdesign v1.15.1
 * (c) 2025 tdesign
 * @license MIT
 */
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var slicedToArray = require('../_chunks/dep-8e4d656d.js');
var React = require('react');
var hooks_useControlled = require('../hooks/useControlled.js');
var tag_defaultProps = require('./defaultProps.js');
var hooks_useConfig = require('../hooks/useConfig.js');
var tag_CheckTag = require('./CheckTag.js');
var hooks_useDefaultProps = require('../hooks/useDefaultProps.js');
require('../_chunks/dep-00b49251.js');
require('../_util/noop.js');
require('../_chunks/dep-66114ce9.js');
require('../_chunks/dep-62d1dd66.js');
require('../_chunks/dep-7a148045.js');
require('../_chunks/dep-255ceed8.js');
require('../_chunks/dep-25585736.js');
require('../_chunks/dep-667ac7af.js');
require('../_chunks/dep-64577888.js');
require('../_chunks/dep-79629634.js');
require('../_chunks/dep-62e73936.js');
require('../config-provider/ConfigContext.js');
require('../_chunks/dep-0006fcfa.js');
require('../_chunks/dep-1df1dad8.js');
require('../_chunks/dep-5b5ab11b.js');
require('dayjs');
require('../_chunks/dep-f32c03f1.js');
require('../_chunks/dep-31c4bc3d.js');
require('../_chunks/dep-eea2872a.js');
require('../_chunks/dep-71455db7.js');
require('../_chunks/dep-9e5a468d.js');
require('../_chunks/dep-ec8d2dca.js');
require('../_chunks/dep-fc596d16.js');
require('../_chunks/dep-f26edb7b.js');
require('../_chunks/dep-f33c1939.js');
require('../_chunks/dep-21ece627.js');
require('../_chunks/dep-25e4aa84.js');
require('../_chunks/dep-e1fbe1c3.js');
require('../_chunks/dep-df2b541f.js');
require('../_chunks/dep-edd366db.js');
require('../_chunks/dep-a56c4939.js');
require('../_chunks/dep-6c297e20.js');
require('../_chunks/dep-b7ad4d54.js');
require('../_chunks/dep-a2cb9299.js');
require('../_chunks/dep-f981815b.js');
require('../_chunks/dep-8fa3a4c2.js');
require('classnames');
require('../_chunks/dep-4406837c.js');
require('./Tag.js');
require('tdesign-icons-react');
require('../_chunks/dep-4d5c26af.js');
require('../hooks/useGlobalIcon.js');
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
var CheckTagGroup = function CheckTagGroup(originalProps) {
  var props = hooks_useDefaultProps["default"](originalProps, tag_defaultProps.checkTagGroupDefaultProps);
  var options = props.options,
    onChange = props.onChange;
  var _useConfig = hooks_useConfig["default"](),
    classPrefix = _useConfig.classPrefix;
  var componentName = "".concat(classPrefix, "-check-tag-group");
  var _useControlled = hooks_useControlled["default"](props, "value", onChange),
    _useControlled2 = slicedToArray._slicedToArray(_useControlled, 2),
    innerValue = _useControlled2[0],
    setInnerValue = _useControlled2[1];
  var onCheckTagChange = function onCheckTagChange(checked, ctx) {
    var value = ctx.value;
    if (checked) {
      if (props.multiple) {
        setInnerValue(innerValue.concat(value), {
          e: ctx.e,
          type: "check",
          value: value
        });
      } else {
        setInnerValue([value], {
          e: ctx.e,
          type: "check",
          value: value
        });
      }
    } else {
      var newValue = [];
      if (props.multiple) {
        newValue = innerValue.filter(function (t) {
          return t !== value;
        });
      }
      setInnerValue(newValue, {
        e: ctx.e,
        type: "uncheck",
        value: value
      });
    }
  };
  return /* @__PURE__ */React__default["default"].createElement("div", {
    className: componentName
  }, options === null || options === void 0 ? void 0 : options.map(function (option) {
    var _ref, _option$content;
    return /* @__PURE__ */React__default["default"].createElement(tag_CheckTag["default"], {
      key: option.value,
      value: option.value,
      "data-value": option.value,
      checkedProps: props.checkedProps,
      uncheckedProps: props.uncheckedProps,
      checked: innerValue.includes(option.value),
      onChange: onCheckTagChange,
      disabled: option.disabled,
      size: option.size
    }, (_ref = (_option$content = option.content) !== null && _option$content !== void 0 ? _option$content : option.children) !== null && _ref !== void 0 ? _ref : option.label);
  }));
};
CheckTagGroup.displayName = "CheckTagGroup";
exports["default"] = CheckTagGroup;
//# sourceMappingURL=CheckTagGroup.js.map