{"ast":null,"code":"\"use client\";\n\nimport React, { useMemo } from 'react';\nimport { ColorBlock, Color as RcColor } from '@rc-component/color-picker';\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport Collapse from '../../collapse';\nimport { useLocale } from '../../locale';\nimport { useToken } from '../../theme/internal';\nimport { generateColor } from '../util';\nconst genPresetColor = list => list.map(value => {\n  value.colors = value.colors.map(generateColor);\n  return value;\n});\nconst isBright = (value, bgColorToken) => {\n  const {\n    r,\n    g,\n    b,\n    a\n  } = value.toRgb();\n  const hsv = new RcColor(value.toRgbString()).onBackground(bgColorToken).toHsv();\n  if (a <= 0.5) {\n    // Adapted to dark mode\n    return hsv.v > 0.5;\n  }\n  return r * 0.299 + g * 0.587 + b * 0.114 > 192;\n};\nconst ColorPresets = _ref => {\n  let {\n    prefixCls,\n    presets,\n    value: color,\n    onChange\n  } = _ref;\n  const [locale] = useLocale('ColorPicker');\n  const [, token] = useToken();\n  const [presetsValue] = useMergedState(genPresetColor(presets), {\n    value: genPresetColor(presets),\n    postState: genPresetColor\n  });\n  const colorPresetsPrefixCls = `${prefixCls}-presets`;\n  const activeKeys = useMemo(() => presetsValue.map(preset => `panel-${preset.label}`), [presetsValue]);\n  const handleClick = colorValue => {\n    onChange === null || onChange === void 0 ? void 0 : onChange(colorValue);\n  };\n  const items = presetsValue.map(preset => {\n    var _a;\n    return {\n      key: `panel-${preset.label}`,\n      label: /*#__PURE__*/React.createElement(\"div\", {\n        className: `${colorPresetsPrefixCls}-label`\n      }, preset === null || preset === void 0 ? void 0 : preset.label),\n      children: /*#__PURE__*/React.createElement(\"div\", {\n        className: `${colorPresetsPrefixCls}-items`\n      }, Array.isArray(preset === null || preset === void 0 ? void 0 : preset.colors) && ((_a = preset.colors) === null || _a === void 0 ? void 0 : _a.length) > 0 ? preset.colors.map((presetColor, index) => /*#__PURE__*/React.createElement(ColorBlock\n      // eslint-disable-next-line react/no-array-index-key\n      , {\n        // eslint-disable-next-line react/no-array-index-key\n        key: `preset-${index}-${presetColor.toHexString()}`,\n        color: generateColor(presetColor).toRgbString(),\n        prefixCls: prefixCls,\n        className: classNames(`${colorPresetsPrefixCls}-color`, {\n          [`${colorPresetsPrefixCls}-color-checked`]: presetColor.toHexString() === (color === null || color === void 0 ? void 0 : color.toHexString()),\n          [`${colorPresetsPrefixCls}-color-bright`]: isBright(presetColor, token.colorBgElevated)\n        }),\n        onClick: () => handleClick(presetColor)\n      })) : /*#__PURE__*/React.createElement(\"span\", {\n        className: `${colorPresetsPrefixCls}-empty`\n      }, locale.presetEmpty))\n    };\n  });\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: colorPresetsPrefixCls\n  }, /*#__PURE__*/React.createElement(Collapse, {\n    defaultActiveKey: activeKeys,\n    ghost: true,\n    items: items\n  }));\n};\nexport default ColorPresets;","map":{"version":3,"names":["React","useMemo","ColorBlock","Color","RcColor","classNames","useMergedState","Collapse","useLocale","useToken","generateColor","genPresetColor","list","map","value","colors","isBright","bgColorToken","r","g","b","a","toRgb","hsv","toRgbString","onBackground","toHsv","v","ColorPresets","_ref","prefixCls","presets","color","onChange","locale","token","presetsValue","postState","colorPresetsPrefixCls","activeKeys","preset","label","handleClick","colorValue","items","_a","key","createElement","className","children","Array","isArray","length","presetColor","index","toHexString","colorBgElevated","onClick","presetEmpty","defaultActiveKey","ghost"],"sources":["/var/www/gavt/node_modules/antd/es/color-picker/components/ColorPresets.js"],"sourcesContent":["\"use client\";\n\nimport React, { useMemo } from 'react';\nimport { ColorBlock, Color as RcColor } from '@rc-component/color-picker';\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport Collapse from '../../collapse';\nimport { useLocale } from '../../locale';\nimport { useToken } from '../../theme/internal';\nimport { generateColor } from '../util';\nconst genPresetColor = list => list.map(value => {\n  value.colors = value.colors.map(generateColor);\n  return value;\n});\nconst isBright = (value, bgColorToken) => {\n  const {\n    r,\n    g,\n    b,\n    a\n  } = value.toRgb();\n  const hsv = new RcColor(value.toRgbString()).onBackground(bgColorToken).toHsv();\n  if (a <= 0.5) {\n    // Adapted to dark mode\n    return hsv.v > 0.5;\n  }\n  return r * 0.299 + g * 0.587 + b * 0.114 > 192;\n};\nconst ColorPresets = _ref => {\n  let {\n    prefixCls,\n    presets,\n    value: color,\n    onChange\n  } = _ref;\n  const [locale] = useLocale('ColorPicker');\n  const [, token] = useToken();\n  const [presetsValue] = useMergedState(genPresetColor(presets), {\n    value: genPresetColor(presets),\n    postState: genPresetColor\n  });\n  const colorPresetsPrefixCls = `${prefixCls}-presets`;\n  const activeKeys = useMemo(() => presetsValue.map(preset => `panel-${preset.label}`), [presetsValue]);\n  const handleClick = colorValue => {\n    onChange === null || onChange === void 0 ? void 0 : onChange(colorValue);\n  };\n  const items = presetsValue.map(preset => {\n    var _a;\n    return {\n      key: `panel-${preset.label}`,\n      label: /*#__PURE__*/React.createElement(\"div\", {\n        className: `${colorPresetsPrefixCls}-label`\n      }, preset === null || preset === void 0 ? void 0 : preset.label),\n      children: /*#__PURE__*/React.createElement(\"div\", {\n        className: `${colorPresetsPrefixCls}-items`\n      }, Array.isArray(preset === null || preset === void 0 ? void 0 : preset.colors) && ((_a = preset.colors) === null || _a === void 0 ? void 0 : _a.length) > 0 ? preset.colors.map((presetColor, index) => /*#__PURE__*/React.createElement(ColorBlock\n      // eslint-disable-next-line react/no-array-index-key\n      , {\n        // eslint-disable-next-line react/no-array-index-key\n        key: `preset-${index}-${presetColor.toHexString()}`,\n        color: generateColor(presetColor).toRgbString(),\n        prefixCls: prefixCls,\n        className: classNames(`${colorPresetsPrefixCls}-color`, {\n          [`${colorPresetsPrefixCls}-color-checked`]: presetColor.toHexString() === (color === null || color === void 0 ? void 0 : color.toHexString()),\n          [`${colorPresetsPrefixCls}-color-bright`]: isBright(presetColor, token.colorBgElevated)\n        }),\n        onClick: () => handleClick(presetColor)\n      })) : /*#__PURE__*/React.createElement(\"span\", {\n        className: `${colorPresetsPrefixCls}-empty`\n      }, locale.presetEmpty))\n    };\n  });\n  return /*#__PURE__*/React.createElement(\"div\", {\n    className: colorPresetsPrefixCls\n  }, /*#__PURE__*/React.createElement(Collapse, {\n    defaultActiveKey: activeKeys,\n    ghost: true,\n    items: items\n  }));\n};\nexport default ColorPresets;"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}