@antscorp/antsomi-ui 1.1.2 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/index.js +2 -0
- package/dist/_virtual/index.js.map +1 -0
- package/dist/_virtual/index2.js +2 -0
- package/dist/_virtual/index2.js.map +1 -0
- package/dist/_virtual/react-is.development.js +2 -0
- package/dist/_virtual/react-is.development.js.map +1 -0
- package/dist/_virtual/react-is.production.min.js +2 -0
- package/dist/_virtual/react-is.production.min.js.map +1 -0
- package/dist/components/Cascader/Cascader.d.ts +1 -0
- package/dist/components/Cascader/index.d.ts +1 -0
- package/dist/components/Divider/Divider.stories.d.ts +8 -0
- package/dist/components/Input/Input.stories.d.ts +19 -0
- package/dist/components/Select/Select.d.ts +1 -0
- package/dist/components/Select/index.d.ts +1 -0
- package/dist/{cjs/types/components → components}/index.d.ts +2 -0
- package/dist/index.d.ts +1 -10
- package/dist/node_modules/@ant-design/colors/es/generate.js +2 -0
- package/dist/node_modules/@ant-design/colors/es/generate.js.map +1 -0
- package/dist/node_modules/@ant-design/colors/es/index.js +2 -0
- package/dist/node_modules/@ant-design/colors/es/index.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/Cache.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/Cache.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/Keyframes.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/Keyframes.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/StyleContext.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/StyleContext.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useCacheToken.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useCacheToken.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useGlobalCache.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useGlobalCache.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useHMR.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useHMR.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useStyleRegister.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/hooks/useStyleRegister.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/contentQuotesLinter.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/contentQuotesLinter.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/hashedAnimationLinter.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/hashedAnimationLinter.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/utils.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/linters/utils.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/Theme.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/Theme.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/ThemeCache.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/ThemeCache.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/createTheme.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/theme/createTheme.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/transformers/legacyLogicalProperties.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/transformers/legacyLogicalProperties.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/es/util.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/es/util.js.map +1 -0
- package/dist/node_modules/@ant-design/cssinjs/node_modules/@emotion/hash/dist/hash.esm.js +2 -0
- package/dist/node_modules/@ant-design/cssinjs/node_modules/@emotion/hash/dist/hash.esm.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/components/AntdIcon.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/components/AntdIcon.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/components/Context.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/components/Context.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/components/IconBase.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/components/IconBase.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/components/twoTonePrimaryColor.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/components/twoTonePrimaryColor.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/BarsOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/BarsOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CheckCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CheckCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CheckOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CheckOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CloseCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CloseCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CloseOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/CloseOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/DownOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/DownOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EllipsisOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EllipsisOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/ExclamationCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/ExclamationCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EyeOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/EyeOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/InfoCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/InfoCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/LeftOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/LeftOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/LoadingOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/LoadingOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/RightOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/RightOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/icons/SearchOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/icons/SearchOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons/es/utils.js +2 -0
- package/dist/node_modules/@ant-design/icons/es/utils.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/BarsOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/BarsOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CheckCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CheckCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CheckOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CheckOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/DownOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/DownOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EllipsisOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EllipsisOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/InfoCircleFilled.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/InfoCircleFilled.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/LeftOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/LeftOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/RightOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/RightOutlined.js.map +1 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/SearchOutlined.js +2 -0
- package/dist/node_modules/@ant-design/icons-svg/es/asn/SearchOutlined.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/classCallCheck.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/classCallCheck.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/createClass.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/createClass.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/createSuper.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/createSuper.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/defineProperty.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/defineProperty.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/extends.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/extends.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/inherits.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/inherits.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/iterableToArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/iterableToArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectSpread2.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectSpread2.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/slicedToArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/slicedToArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toPrimitive.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toPrimitive.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/typeof.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/typeof.js.map +1 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js +2 -0
- package/dist/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js.map +1 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/conversion.js +2 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/conversion.js.map +1 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/css-color-names.js +2 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/css-color-names.js.map +1 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/format-input.js +2 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/format-input.js.map +1 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/index.js +2 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/index.js.map +1 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/util.js +2 -0
- package/dist/node_modules/@ctrl/tinycolor/dist/module/util.js.map +1 -0
- package/dist/node_modules/@emotion/cache/dist/emotion-cache.esm.js +2 -0
- package/dist/node_modules/@emotion/cache/dist/emotion-cache.esm.js.map +1 -0
- package/dist/node_modules/@emotion/hash/dist/emotion-hash.esm.js +2 -0
- package/dist/node_modules/@emotion/hash/dist/emotion-hash.esm.js.map +1 -0
- package/dist/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js +2 -0
- package/dist/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js.map +1 -0
- package/dist/node_modules/@emotion/react/dist/emotion-element-3838ba9e.esm.js +2 -0
- package/dist/node_modules/@emotion/react/dist/emotion-element-3838ba9e.esm.js.map +1 -0
- package/dist/node_modules/@emotion/react/dist/emotion-react.esm.js +2 -0
- package/dist/node_modules/@emotion/react/dist/emotion-react.esm.js.map +1 -0
- package/dist/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js +2 -0
- package/dist/node_modules/@emotion/serialize/dist/emotion-serialize.esm.js.map +1 -0
- package/dist/node_modules/@emotion/serialize/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js +2 -0
- package/dist/node_modules/@emotion/serialize/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js.map +1 -0
- package/dist/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js +2 -0
- package/dist/node_modules/@emotion/sheet/dist/emotion-sheet.esm.js.map +1 -0
- package/dist/node_modules/@emotion/unitless/dist/unitless.esm.js +2 -0
- package/dist/node_modules/@emotion/unitless/dist/unitless.esm.js.map +1 -0
- package/dist/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js +2 -0
- package/dist/node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js.map +1 -0
- package/dist/node_modules/@emotion/utils/dist/emotion-utils.esm.js +2 -0
- package/dist/node_modules/@emotion/utils/dist/emotion-utils.esm.js.map +1 -0
- package/dist/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js +2 -0
- package/dist/node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/Context.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/Context.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/Portal.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/Portal.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/index.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/index.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/mock.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/mock.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/useDom.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/useDom.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/useScrollLocker.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/useScrollLocker.js.map +1 -0
- package/dist/node_modules/@rc-component/portal/es/util.js +2 -0
- package/dist/node_modules/@rc-component/portal/es/util.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/Arrow.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/Arrow.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/Mask.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/Mask.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/index.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/Popup/index.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/TriggerWrapper.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/TriggerWrapper.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/context.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/context.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useAction.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useAction.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useAlign.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useAlign.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useWatch.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/hooks/useWatch.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/index.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/index.js.map +1 -0
- package/dist/node_modules/@rc-component/trigger/es/util.js +2 -0
- package/dist/node_modules/@rc-component/trigger/es/util.js.map +1 -0
- package/dist/node_modules/antd/es/_util/ActionButton.js +2 -0
- package/dist/node_modules/antd/es/_util/ActionButton.js.map +1 -0
- package/dist/node_modules/antd/es/_util/PurePanel.js +2 -0
- package/dist/node_modules/antd/es/_util/PurePanel.js.map +1 -0
- package/dist/node_modules/antd/es/_util/colors.js +2 -0
- package/dist/node_modules/antd/es/_util/colors.js.map +1 -0
- package/dist/node_modules/antd/es/_util/getDataOrAriaProps.js +2 -0
- package/dist/node_modules/antd/es/_util/getDataOrAriaProps.js.map +1 -0
- package/dist/node_modules/antd/es/_util/hooks/useFlexGapSupport.js +2 -0
- package/dist/node_modules/antd/es/_util/hooks/useFlexGapSupport.js.map +1 -0
- package/dist/node_modules/antd/es/_util/hooks/usePatchElement.js +2 -0
- package/dist/node_modules/antd/es/_util/hooks/usePatchElement.js.map +1 -0
- package/dist/node_modules/antd/es/_util/isNumeric.js +2 -0
- package/dist/node_modules/antd/es/_util/isNumeric.js.map +1 -0
- package/dist/node_modules/antd/es/_util/motion.js +2 -0
- package/dist/node_modules/antd/es/_util/motion.js.map +1 -0
- package/dist/node_modules/antd/es/_util/placements.js +2 -0
- package/dist/node_modules/antd/es/_util/placements.js.map +1 -0
- package/dist/node_modules/antd/es/_util/reactNode.js +2 -0
- package/dist/node_modules/antd/es/_util/reactNode.js.map +1 -0
- package/dist/node_modules/antd/es/_util/statusUtils.js +2 -0
- package/dist/node_modules/antd/es/_util/statusUtils.js.map +1 -0
- package/dist/node_modules/antd/es/_util/styleChecker.js +2 -0
- package/dist/node_modules/antd/es/_util/styleChecker.js.map +1 -0
- package/dist/node_modules/antd/es/_util/warning.js +2 -0
- package/dist/node_modules/antd/es/_util/warning.js.map +1 -0
- package/dist/node_modules/antd/es/_util/wave/WaveEffect.js +2 -0
- package/dist/node_modules/antd/es/_util/wave/WaveEffect.js.map +1 -0
- package/dist/node_modules/antd/es/_util/wave/index.js +2 -0
- package/dist/node_modules/antd/es/_util/wave/index.js.map +1 -0
- package/dist/node_modules/antd/es/_util/wave/style.js +2 -0
- package/dist/node_modules/antd/es/_util/wave/style.js.map +1 -0
- package/dist/node_modules/antd/es/_util/wave/useWave.js +2 -0
- package/dist/node_modules/antd/es/_util/wave/useWave.js.map +1 -0
- package/dist/node_modules/antd/es/_util/wave/util.js +2 -0
- package/dist/node_modules/antd/es/_util/wave/util.js.map +1 -0
- package/dist/node_modules/antd/es/alert/ErrorBoundary.js +2 -0
- package/dist/node_modules/antd/es/alert/ErrorBoundary.js.map +1 -0
- package/dist/node_modules/antd/es/alert/index.js +2 -0
- package/dist/node_modules/antd/es/alert/index.js.map +1 -0
- package/dist/node_modules/antd/es/alert/style/index.js +2 -0
- package/dist/node_modules/antd/es/alert/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/button/LoadingIcon.js +2 -0
- package/dist/node_modules/antd/es/button/LoadingIcon.js.map +1 -0
- package/dist/node_modules/antd/es/button/button-group.js +2 -0
- package/dist/node_modules/antd/es/button/button-group.js.map +1 -0
- package/dist/node_modules/antd/es/button/button.js +2 -0
- package/dist/node_modules/antd/es/button/button.js.map +1 -0
- package/dist/node_modules/antd/es/button/buttonHelpers.js +2 -0
- package/dist/node_modules/antd/es/button/buttonHelpers.js.map +1 -0
- package/dist/node_modules/antd/es/button/index.js +2 -0
- package/dist/node_modules/antd/es/button/index.js.map +1 -0
- package/dist/node_modules/antd/es/button/style/group.js +2 -0
- package/dist/node_modules/antd/es/button/style/group.js.map +1 -0
- package/dist/node_modules/antd/es/button/style/index.js +2 -0
- package/dist/node_modules/antd/es/button/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/calendar/locale/en_US.js +2 -0
- package/dist/node_modules/antd/es/calendar/locale/en_US.js.map +1 -0
- package/dist/node_modules/antd/es/cascader/index.js +2 -0
- package/dist/node_modules/antd/es/cascader/index.js.map +1 -0
- package/dist/node_modules/antd/es/cascader/style/index.js +2 -0
- package/dist/node_modules/antd/es/cascader/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/checkbox/style/index.js +2 -0
- package/dist/node_modules/antd/es/checkbox/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/DisabledContext.js +2 -0
- package/dist/node_modules/antd/es/config-provider/DisabledContext.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/SizeContext.js +2 -0
- package/dist/node_modules/antd/es/config-provider/SizeContext.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/context.js +2 -0
- package/dist/node_modules/antd/es/config-provider/context.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/cssVariables.js +2 -0
- package/dist/node_modules/antd/es/config-provider/cssVariables.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/defaultRenderEmpty.js +2 -0
- package/dist/node_modules/antd/es/config-provider/defaultRenderEmpty.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/hooks/useConfig.js +2 -0
- package/dist/node_modules/antd/es/config-provider/hooks/useConfig.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/hooks/useTheme.js +2 -0
- package/dist/node_modules/antd/es/config-provider/hooks/useTheme.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/index.js +2 -0
- package/dist/node_modules/antd/es/config-provider/index.js.map +1 -0
- package/dist/node_modules/antd/es/config-provider/style/index.js +2 -0
- package/dist/node_modules/antd/es/config-provider/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/date-picker/locale/en_US.js +2 -0
- package/dist/node_modules/antd/es/date-picker/locale/en_US.js.map +1 -0
- package/dist/node_modules/antd/es/divider/index.js +2 -0
- package/dist/node_modules/antd/es/divider/index.js.map +1 -0
- package/dist/node_modules/antd/es/divider/style/index.js +2 -0
- package/dist/node_modules/antd/es/divider/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/dropdown-button.js +2 -0
- package/dist/node_modules/antd/es/dropdown/dropdown-button.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/dropdown.js +2 -0
- package/dist/node_modules/antd/es/dropdown/dropdown.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/index.js +2 -0
- package/dist/node_modules/antd/es/dropdown/index.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/style/button.js +2 -0
- package/dist/node_modules/antd/es/dropdown/style/button.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/style/index.js +2 -0
- package/dist/node_modules/antd/es/dropdown/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/dropdown/style/status.js +2 -0
- package/dist/node_modules/antd/es/dropdown/style/status.js.map +1 -0
- package/dist/node_modules/antd/es/empty/empty.js +2 -0
- package/dist/node_modules/antd/es/empty/empty.js.map +1 -0
- package/dist/node_modules/antd/es/empty/index.js +2 -0
- package/dist/node_modules/antd/es/empty/index.js.map +1 -0
- package/dist/node_modules/antd/es/empty/simple.js +2 -0
- package/dist/node_modules/antd/es/empty/simple.js.map +1 -0
- package/dist/node_modules/antd/es/empty/style/index.js +2 -0
- package/dist/node_modules/antd/es/empty/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/form/context.js +2 -0
- package/dist/node_modules/antd/es/form/context.js.map +1 -0
- package/dist/node_modules/antd/es/input/Group.js +2 -0
- package/dist/node_modules/antd/es/input/Group.js.map +1 -0
- package/dist/node_modules/antd/es/input/Input.js +2 -0
- package/dist/node_modules/antd/es/input/Input.js.map +1 -0
- package/dist/node_modules/antd/es/input/Password.js +2 -0
- package/dist/node_modules/antd/es/input/Password.js.map +1 -0
- package/dist/node_modules/antd/es/input/Search.js +2 -0
- package/dist/node_modules/antd/es/input/Search.js.map +1 -0
- package/dist/node_modules/antd/es/input/TextArea.js +2 -0
- package/dist/node_modules/antd/es/input/TextArea.js.map +1 -0
- package/dist/node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js +2 -0
- package/dist/node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js.map +1 -0
- package/dist/node_modules/antd/es/input/index.js +2 -0
- package/dist/node_modules/antd/es/input/index.js.map +1 -0
- package/dist/node_modules/antd/es/input/style/index.js +2 -0
- package/dist/node_modules/antd/es/input/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/input/utils.js +2 -0
- package/dist/node_modules/antd/es/input/utils.js.map +1 -0
- package/dist/node_modules/antd/es/layout/Sider.js +2 -0
- package/dist/node_modules/antd/es/layout/Sider.js.map +1 -0
- package/dist/node_modules/antd/es/layout/layout.js +2 -0
- package/dist/node_modules/antd/es/layout/layout.js.map +1 -0
- package/dist/node_modules/antd/es/layout/style/index.js +2 -0
- package/dist/node_modules/antd/es/layout/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/layout/style/light.js +2 -0
- package/dist/node_modules/antd/es/layout/style/light.js.map +1 -0
- package/dist/node_modules/antd/es/locale/context.js +2 -0
- package/dist/node_modules/antd/es/locale/context.js.map +1 -0
- package/dist/node_modules/antd/es/locale/en_US.js +2 -0
- package/dist/node_modules/antd/es/locale/en_US.js.map +1 -0
- package/dist/node_modules/antd/es/locale/index.js +2 -0
- package/dist/node_modules/antd/es/locale/index.js.map +1 -0
- package/dist/node_modules/antd/es/locale/useLocale.js +2 -0
- package/dist/node_modules/antd/es/locale/useLocale.js.map +1 -0
- package/dist/node_modules/antd/es/menu/MenuContext.js +2 -0
- package/dist/node_modules/antd/es/menu/MenuContext.js.map +1 -0
- package/dist/node_modules/antd/es/menu/MenuDivider.js +2 -0
- package/dist/node_modules/antd/es/menu/MenuDivider.js.map +1 -0
- package/dist/node_modules/antd/es/menu/MenuItem.js +2 -0
- package/dist/node_modules/antd/es/menu/MenuItem.js.map +1 -0
- package/dist/node_modules/antd/es/menu/OverrideContext.js +2 -0
- package/dist/node_modules/antd/es/menu/OverrideContext.js.map +1 -0
- package/dist/node_modules/antd/es/menu/SubMenu.js +2 -0
- package/dist/node_modules/antd/es/menu/SubMenu.js.map +1 -0
- package/dist/node_modules/antd/es/menu/hooks/useItems.js +2 -0
- package/dist/node_modules/antd/es/menu/hooks/useItems.js.map +1 -0
- package/dist/node_modules/antd/es/menu/index.js +2 -0
- package/dist/node_modules/antd/es/menu/index.js.map +1 -0
- package/dist/node_modules/antd/es/menu/menu.js +2 -0
- package/dist/node_modules/antd/es/menu/menu.js.map +1 -0
- package/dist/node_modules/antd/es/menu/style/horizontal.js +2 -0
- package/dist/node_modules/antd/es/menu/style/horizontal.js.map +1 -0
- package/dist/node_modules/antd/es/menu/style/index.js +2 -0
- package/dist/node_modules/antd/es/menu/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/menu/style/rtl.js +2 -0
- package/dist/node_modules/antd/es/menu/style/rtl.js.map +1 -0
- package/dist/node_modules/antd/es/menu/style/theme.js +2 -0
- package/dist/node_modules/antd/es/menu/style/theme.js.map +1 -0
- package/dist/node_modules/antd/es/menu/style/vertical.js +2 -0
- package/dist/node_modules/antd/es/menu/style/vertical.js.map +1 -0
- package/dist/node_modules/antd/es/modal/ConfirmDialog.js +2 -0
- package/dist/node_modules/antd/es/modal/ConfirmDialog.js.map +1 -0
- package/dist/node_modules/antd/es/modal/Modal.js +2 -0
- package/dist/node_modules/antd/es/modal/Modal.js.map +1 -0
- package/dist/node_modules/antd/es/modal/PurePanel.js +2 -0
- package/dist/node_modules/antd/es/modal/PurePanel.js.map +1 -0
- package/dist/node_modules/antd/es/modal/confirm.js +2 -0
- package/dist/node_modules/antd/es/modal/confirm.js.map +1 -0
- package/dist/node_modules/antd/es/modal/destroyFns.js +2 -0
- package/dist/node_modules/antd/es/modal/destroyFns.js.map +1 -0
- package/dist/node_modules/antd/es/modal/index.js +2 -0
- package/dist/node_modules/antd/es/modal/index.js.map +1 -0
- package/dist/node_modules/antd/es/modal/locale.js +2 -0
- package/dist/node_modules/antd/es/modal/locale.js.map +1 -0
- package/dist/node_modules/antd/es/modal/style/index.js +2 -0
- package/dist/node_modules/antd/es/modal/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/modal/useModal/HookModal.js +2 -0
- package/dist/node_modules/antd/es/modal/useModal/HookModal.js.map +1 -0
- package/dist/node_modules/antd/es/modal/useModal/index.js +2 -0
- package/dist/node_modules/antd/es/modal/useModal/index.js.map +1 -0
- package/dist/node_modules/antd/es/radio/context.js +2 -0
- package/dist/node_modules/antd/es/radio/context.js.map +1 -0
- package/dist/node_modules/antd/es/radio/group.js +2 -0
- package/dist/node_modules/antd/es/radio/group.js.map +1 -0
- package/dist/node_modules/antd/es/radio/index.js +2 -0
- package/dist/node_modules/antd/es/radio/index.js.map +1 -0
- package/dist/node_modules/antd/es/radio/radio.js +2 -0
- package/dist/node_modules/antd/es/radio/radio.js.map +1 -0
- package/dist/node_modules/antd/es/radio/radioButton.js +2 -0
- package/dist/node_modules/antd/es/radio/radioButton.js.map +1 -0
- package/dist/node_modules/antd/es/radio/style/index.js +2 -0
- package/dist/node_modules/antd/es/radio/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/select/index.js +2 -0
- package/dist/node_modules/antd/es/select/index.js.map +1 -0
- package/dist/node_modules/antd/es/select/style/dropdown.js +2 -0
- package/dist/node_modules/antd/es/select/style/dropdown.js.map +1 -0
- package/dist/node_modules/antd/es/select/style/index.js +2 -0
- package/dist/node_modules/antd/es/select/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/select/style/multiple.js +2 -0
- package/dist/node_modules/antd/es/select/style/multiple.js.map +1 -0
- package/dist/node_modules/antd/es/select/style/single.js +2 -0
- package/dist/node_modules/antd/es/select/style/single.js.map +1 -0
- package/dist/node_modules/antd/es/select/useShowArrow.js +2 -0
- package/dist/node_modules/antd/es/select/useShowArrow.js.map +1 -0
- package/dist/node_modules/antd/es/select/utils/iconUtil.js +2 -0
- package/dist/node_modules/antd/es/select/utils/iconUtil.js.map +1 -0
- package/dist/node_modules/antd/es/space/Compact.js +2 -0
- package/dist/node_modules/antd/es/space/Compact.js.map +1 -0
- package/dist/node_modules/antd/es/space/Item.js +2 -0
- package/dist/node_modules/antd/es/space/Item.js.map +1 -0
- package/dist/node_modules/antd/es/space/index.js +2 -0
- package/dist/node_modules/antd/es/space/index.js.map +1 -0
- package/dist/node_modules/antd/es/space/style/compact.js +2 -0
- package/dist/node_modules/antd/es/space/style/compact.js.map +1 -0
- package/dist/node_modules/antd/es/space/style/index.js +2 -0
- package/dist/node_modules/antd/es/space/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/style/compact-item-vertical.js +2 -0
- package/dist/node_modules/antd/es/style/compact-item-vertical.js.map +1 -0
- package/dist/node_modules/antd/es/style/compact-item.js +2 -0
- package/dist/node_modules/antd/es/style/compact-item.js.map +1 -0
- package/dist/node_modules/antd/es/style/index.js +2 -0
- package/dist/node_modules/antd/es/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/collapse.js +2 -0
- package/dist/node_modules/antd/es/style/motion/collapse.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/fade.js +2 -0
- package/dist/node_modules/antd/es/style/motion/fade.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/motion.js +2 -0
- package/dist/node_modules/antd/es/style/motion/motion.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/move.js +2 -0
- package/dist/node_modules/antd/es/style/motion/move.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/slide.js +2 -0
- package/dist/node_modules/antd/es/style/motion/slide.js.map +1 -0
- package/dist/node_modules/antd/es/style/motion/zoom.js +2 -0
- package/dist/node_modules/antd/es/style/motion/zoom.js.map +1 -0
- package/dist/node_modules/antd/es/style/placementArrow.js +2 -0
- package/dist/node_modules/antd/es/style/placementArrow.js.map +1 -0
- package/dist/node_modules/antd/es/style/presetColor.js +2 -0
- package/dist/node_modules/antd/es/style/presetColor.js.map +1 -0
- package/dist/node_modules/antd/es/style/roundedArrow.js +2 -0
- package/dist/node_modules/antd/es/style/roundedArrow.js.map +1 -0
- package/dist/node_modules/antd/es/theme/index.js +2 -0
- package/dist/node_modules/antd/es/theme/index.js.map +1 -0
- package/dist/node_modules/antd/es/theme/interface/presetColors.js +2 -0
- package/dist/node_modules/antd/es/theme/interface/presetColors.js.map +1 -0
- package/dist/node_modules/antd/es/theme/internal.js +2 -0
- package/dist/node_modules/antd/es/theme/internal.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/compact/genCompactSizeMapToken.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/compact/genCompactSizeMapToken.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/compact/index.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/compact/index.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/dark/colorAlgorithm.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/dark/colorAlgorithm.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/dark/colors.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/dark/colors.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/dark/index.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/dark/index.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/default/colorAlgorithm.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/default/colorAlgorithm.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/default/colors.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/default/colors.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/default/index.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/default/index.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/seed.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/seed.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genColorMapToken.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genColorMapToken.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genCommonMapToken.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genCommonMapToken.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genControlHeight.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genControlHeight.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genFontMapToken.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genFontMapToken.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genFontSizes.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genFontSizes.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genRadius.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genRadius.js.map +1 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genSizeMapToken.js +2 -0
- package/dist/node_modules/antd/es/theme/themes/shared/genSizeMapToken.js.map +1 -0
- package/dist/node_modules/antd/es/theme/util/alias.js +2 -0
- package/dist/node_modules/antd/es/theme/util/alias.js.map +1 -0
- package/dist/node_modules/antd/es/theme/util/genComponentStyleHook.js +2 -0
- package/dist/node_modules/antd/es/theme/util/genComponentStyleHook.js.map +1 -0
- package/dist/node_modules/antd/es/theme/util/getAlphaColor.js +2 -0
- package/dist/node_modules/antd/es/theme/util/getAlphaColor.js.map +1 -0
- package/dist/node_modules/antd/es/theme/util/statistic.js +2 -0
- package/dist/node_modules/antd/es/theme/util/statistic.js.map +1 -0
- package/dist/node_modules/antd/es/time-picker/locale/en_US.js +2 -0
- package/dist/node_modules/antd/es/time-picker/locale/en_US.js.map +1 -0
- package/dist/node_modules/antd/es/tooltip/PurePanel.js +2 -0
- package/dist/node_modules/antd/es/tooltip/PurePanel.js.map +1 -0
- package/dist/node_modules/antd/es/tooltip/index.js +2 -0
- package/dist/node_modules/antd/es/tooltip/index.js.map +1 -0
- package/dist/node_modules/antd/es/tooltip/style/index.js +2 -0
- package/dist/node_modules/antd/es/tooltip/style/index.js.map +1 -0
- package/dist/node_modules/antd/es/tooltip/util.js +2 -0
- package/dist/node_modules/antd/es/tooltip/util.js.map +1 -0
- package/dist/node_modules/antd/es/version/index.js +2 -0
- package/dist/node_modules/antd/es/version/index.js.map +1 -0
- package/dist/node_modules/antd/es/version/version.js +2 -0
- package/dist/node_modules/antd/es/version/version.js.map +1 -0
- package/dist/node_modules/async-validator/dist-web/index.js +2 -0
- package/dist/node_modules/async-validator/dist-web/index.js.map +1 -0
- package/dist/node_modules/classnames/index.js +7 -0
- package/dist/node_modules/classnames/index.js.map +1 -0
- package/dist/node_modules/dom-align/dist-web/index.js +2 -0
- package/dist/node_modules/dom-align/dist-web/index.js.map +1 -0
- package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js +2 -0
- package/dist/node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js.map +1 -0
- package/dist/node_modules/rc-align/es/Align.js +2 -0
- package/dist/node_modules/rc-align/es/Align.js.map +1 -0
- package/dist/node_modules/rc-align/es/hooks/useBuffer.js +2 -0
- package/dist/node_modules/rc-align/es/hooks/useBuffer.js.map +1 -0
- package/dist/node_modules/rc-align/es/index.js +2 -0
- package/dist/node_modules/rc-align/es/index.js.map +1 -0
- package/dist/node_modules/rc-align/es/util.js +2 -0
- package/dist/node_modules/rc-align/es/util.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/Cascader.js +2 -0
- package/dist/node_modules/rc-cascader/es/Cascader.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/OptionList/Checkbox.js +2 -0
- package/dist/node_modules/rc-cascader/es/OptionList/Checkbox.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/OptionList/Column.js +2 -0
- package/dist/node_modules/rc-cascader/es/OptionList/Column.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/OptionList/index.js +2 -0
- package/dist/node_modules/rc-cascader/es/OptionList/index.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/OptionList/useActive.js +2 -0
- package/dist/node_modules/rc-cascader/es/OptionList/useActive.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/OptionList/useKeyboard.js +2 -0
- package/dist/node_modules/rc-cascader/es/OptionList/useKeyboard.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/context.js +2 -0
- package/dist/node_modules/rc-cascader/es/context.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useDisplayValues.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useDisplayValues.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useEntities.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useEntities.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useMissingValues.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useMissingValues.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useRefFunc.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useRefFunc.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useSearchConfig.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useSearchConfig.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/hooks/useSearchOptions.js +2 -0
- package/dist/node_modules/rc-cascader/es/hooks/useSearchOptions.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/index.js +2 -0
- package/dist/node_modules/rc-cascader/es/index.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/utils/commonUtil.js +2 -0
- package/dist/node_modules/rc-cascader/es/utils/commonUtil.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/utils/treeUtil.js +2 -0
- package/dist/node_modules/rc-cascader/es/utils/treeUtil.js.map +1 -0
- package/dist/node_modules/rc-cascader/es/utils/warningPropsUtil.js +2 -0
- package/dist/node_modules/rc-cascader/es/utils/warningPropsUtil.js.map +1 -0
- package/dist/node_modules/rc-checkbox/es/index.js +2 -0
- package/dist/node_modules/rc-checkbox/es/index.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/MemoChildren.js +2 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/MemoChildren.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/Panel.js +2 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/Panel.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/index.js +2 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Content/index.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Mask.js +2 -0
- package/dist/node_modules/rc-dialog/es/Dialog/Mask.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/Dialog/index.js +2 -0
- package/dist/node_modules/rc-dialog/es/Dialog/index.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/DialogWrap.js +2 -0
- package/dist/node_modules/rc-dialog/es/DialogWrap.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/index.js +2 -0
- package/dist/node_modules/rc-dialog/es/index.js.map +1 -0
- package/dist/node_modules/rc-dialog/es/util.js +2 -0
- package/dist/node_modules/rc-dialog/es/util.js.map +1 -0
- package/dist/node_modules/rc-dropdown/es/Dropdown.js +2 -0
- package/dist/node_modules/rc-dropdown/es/Dropdown.js.map +1 -0
- package/dist/node_modules/rc-dropdown/es/hooks/useAccessibility.js +2 -0
- package/dist/node_modules/rc-dropdown/es/hooks/useAccessibility.js.map +1 -0
- package/dist/node_modules/rc-dropdown/es/index.js +2 -0
- package/dist/node_modules/rc-dropdown/es/index.js.map +1 -0
- package/dist/node_modules/rc-dropdown/es/placements.js +2 -0
- package/dist/node_modules/rc-dropdown/es/placements.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/Field.js +2 -0
- package/dist/node_modules/rc-field-form/es/Field.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/FieldContext.js +2 -0
- package/dist/node_modules/rc-field-form/es/FieldContext.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/Form.js +2 -0
- package/dist/node_modules/rc-field-form/es/Form.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/FormContext.js +2 -0
- package/dist/node_modules/rc-field-form/es/FormContext.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/List.js +2 -0
- package/dist/node_modules/rc-field-form/es/List.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/ListContext.js +2 -0
- package/dist/node_modules/rc-field-form/es/ListContext.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/index.js +2 -0
- package/dist/node_modules/rc-field-form/es/index.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/useForm.js +2 -0
- package/dist/node_modules/rc-field-form/es/useForm.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/useWatch.js +2 -0
- package/dist/node_modules/rc-field-form/es/useWatch.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/NameMap.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/NameMap.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/asyncUtil.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/asyncUtil.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/cloneDeep.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/cloneDeep.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/messages.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/messages.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/typeUtil.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/typeUtil.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/validateUtil.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/validateUtil.js.map +1 -0
- package/dist/node_modules/rc-field-form/es/utils/valueUtil.js +2 -0
- package/dist/node_modules/rc-field-form/es/utils/valueUtil.js.map +1 -0
- package/dist/node_modules/rc-input/es/BaseInput.js +2 -0
- package/dist/node_modules/rc-input/es/BaseInput.js.map +1 -0
- package/dist/node_modules/rc-input/es/Input.js +2 -0
- package/dist/node_modules/rc-input/es/Input.js.map +1 -0
- package/dist/node_modules/rc-input/es/index.js +2 -0
- package/dist/node_modules/rc-input/es/index.js.map +1 -0
- package/dist/node_modules/rc-input/es/utils/commonUtils.js +2 -0
- package/dist/node_modules/rc-input/es/utils/commonUtils.js.map +1 -0
- package/dist/node_modules/rc-menu/es/Divider.js +2 -0
- package/dist/node_modules/rc-menu/es/Divider.js.map +1 -0
- package/dist/node_modules/rc-menu/es/Icon.js +2 -0
- package/dist/node_modules/rc-menu/es/Icon.js.map +1 -0
- package/dist/node_modules/rc-menu/es/Menu.js +2 -0
- package/dist/node_modules/rc-menu/es/Menu.js.map +1 -0
- package/dist/node_modules/rc-menu/es/MenuItem.js +2 -0
- package/dist/node_modules/rc-menu/es/MenuItem.js.map +1 -0
- package/dist/node_modules/rc-menu/es/MenuItemGroup.js +2 -0
- package/dist/node_modules/rc-menu/es/MenuItemGroup.js.map +1 -0
- package/dist/node_modules/rc-menu/es/SubMenu/InlineSubMenuList.js +2 -0
- package/dist/node_modules/rc-menu/es/SubMenu/InlineSubMenuList.js.map +1 -0
- package/dist/node_modules/rc-menu/es/SubMenu/PopupTrigger.js +2 -0
- package/dist/node_modules/rc-menu/es/SubMenu/PopupTrigger.js.map +1 -0
- package/dist/node_modules/rc-menu/es/SubMenu/SubMenuList.js +2 -0
- package/dist/node_modules/rc-menu/es/SubMenu/SubMenuList.js.map +1 -0
- package/dist/node_modules/rc-menu/es/SubMenu/index.js +2 -0
- package/dist/node_modules/rc-menu/es/SubMenu/index.js.map +1 -0
- package/dist/node_modules/rc-menu/es/context/IdContext.js +2 -0
- package/dist/node_modules/rc-menu/es/context/IdContext.js.map +1 -0
- package/dist/node_modules/rc-menu/es/context/MenuContext.js +2 -0
- package/dist/node_modules/rc-menu/es/context/MenuContext.js.map +1 -0
- package/dist/node_modules/rc-menu/es/context/PathContext.js +2 -0
- package/dist/node_modules/rc-menu/es/context/PathContext.js.map +1 -0
- package/dist/node_modules/rc-menu/es/context/PrivateContext.js +2 -0
- package/dist/node_modules/rc-menu/es/context/PrivateContext.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useAccessibility.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useAccessibility.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useActive.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useActive.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useDirectionStyle.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useDirectionStyle.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useKeyRecords.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useKeyRecords.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useMemoCallback.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useMemoCallback.js.map +1 -0
- package/dist/node_modules/rc-menu/es/hooks/useUUID.js +2 -0
- package/dist/node_modules/rc-menu/es/hooks/useUUID.js.map +1 -0
- package/dist/node_modules/rc-menu/es/index.js +2 -0
- package/dist/node_modules/rc-menu/es/index.js.map +1 -0
- package/dist/node_modules/rc-menu/es/placements.js +2 -0
- package/dist/node_modules/rc-menu/es/placements.js.map +1 -0
- package/dist/node_modules/rc-menu/es/utils/motionUtil.js +2 -0
- package/dist/node_modules/rc-menu/es/utils/motionUtil.js.map +1 -0
- package/dist/node_modules/rc-menu/es/utils/nodeUtil.js +2 -0
- package/dist/node_modules/rc-menu/es/utils/nodeUtil.js.map +1 -0
- package/dist/node_modules/rc-menu/es/utils/timeUtil.js +2 -0
- package/dist/node_modules/rc-menu/es/utils/timeUtil.js.map +1 -0
- package/dist/node_modules/rc-menu/es/utils/warnUtil.js +2 -0
- package/dist/node_modules/rc-menu/es/utils/warnUtil.js.map +1 -0
- package/dist/node_modules/rc-motion/es/CSSMotion.js +2 -0
- package/dist/node_modules/rc-motion/es/CSSMotion.js.map +1 -0
- package/dist/node_modules/rc-motion/es/CSSMotionList.js +2 -0
- package/dist/node_modules/rc-motion/es/CSSMotionList.js.map +1 -0
- package/dist/node_modules/rc-motion/es/DomWrapper.js +2 -0
- package/dist/node_modules/rc-motion/es/DomWrapper.js.map +1 -0
- package/dist/node_modules/rc-motion/es/hooks/useDomMotionEvents.js +2 -0
- package/dist/node_modules/rc-motion/es/hooks/useDomMotionEvents.js.map +1 -0
- package/dist/node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js +2 -0
- package/dist/node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js.map +1 -0
- package/dist/node_modules/rc-motion/es/hooks/useNextFrame.js +2 -0
- package/dist/node_modules/rc-motion/es/hooks/useNextFrame.js.map +1 -0
- package/dist/node_modules/rc-motion/es/hooks/useStatus.js +2 -0
- package/dist/node_modules/rc-motion/es/hooks/useStatus.js.map +1 -0
- package/dist/node_modules/rc-motion/es/hooks/useStepQueue.js +2 -0
- package/dist/node_modules/rc-motion/es/hooks/useStepQueue.js.map +1 -0
- package/dist/node_modules/rc-motion/es/index.js +2 -0
- package/dist/node_modules/rc-motion/es/index.js.map +1 -0
- package/dist/node_modules/rc-motion/es/interface.js +2 -0
- package/dist/node_modules/rc-motion/es/interface.js.map +1 -0
- package/dist/node_modules/rc-motion/es/util/diff.js +2 -0
- package/dist/node_modules/rc-motion/es/util/diff.js.map +1 -0
- package/dist/node_modules/rc-motion/es/util/motion.js +2 -0
- package/dist/node_modules/rc-motion/es/util/motion.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/Item.js +2 -0
- package/dist/node_modules/rc-overflow/es/Item.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/Overflow.js +2 -0
- package/dist/node_modules/rc-overflow/es/Overflow.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/RawItem.js +2 -0
- package/dist/node_modules/rc-overflow/es/RawItem.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/hooks/channelUpdate.js +2 -0
- package/dist/node_modules/rc-overflow/es/hooks/channelUpdate.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/hooks/useEffectState.js +2 -0
- package/dist/node_modules/rc-overflow/es/hooks/useEffectState.js.map +1 -0
- package/dist/node_modules/rc-overflow/es/index.js +2 -0
- package/dist/node_modules/rc-overflow/es/index.js.map +1 -0
- package/dist/node_modules/rc-pagination/es/locale/en_US.js +2 -0
- package/dist/node_modules/rc-pagination/es/locale/en_US.js.map +1 -0
- package/dist/node_modules/rc-picker/es/locale/en_US.js +2 -0
- package/dist/node_modules/rc-picker/es/locale/en_US.js.map +1 -0
- package/dist/node_modules/rc-resize-observer/es/Collection.js +2 -0
- package/dist/node_modules/rc-resize-observer/es/Collection.js.map +1 -0
- package/dist/node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js +2 -0
- package/dist/node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js.map +1 -0
- package/dist/node_modules/rc-resize-observer/es/SingleObserver/index.js +2 -0
- package/dist/node_modules/rc-resize-observer/es/SingleObserver/index.js.map +1 -0
- package/dist/node_modules/rc-resize-observer/es/index.js +2 -0
- package/dist/node_modules/rc-resize-observer/es/index.js.map +1 -0
- package/dist/node_modules/rc-resize-observer/es/utils/observerUtil.js +2 -0
- package/dist/node_modules/rc-resize-observer/es/utils/observerUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/BaseSelect.js +2 -0
- package/dist/node_modules/rc-select/es/BaseSelect.js.map +1 -0
- package/dist/node_modules/rc-select/es/OptGroup.js +2 -0
- package/dist/node_modules/rc-select/es/OptGroup.js.map +1 -0
- package/dist/node_modules/rc-select/es/Option.js +2 -0
- package/dist/node_modules/rc-select/es/Option.js.map +1 -0
- package/dist/node_modules/rc-select/es/OptionList.js +2 -0
- package/dist/node_modules/rc-select/es/OptionList.js.map +1 -0
- package/dist/node_modules/rc-select/es/Select.js +2 -0
- package/dist/node_modules/rc-select/es/Select.js.map +1 -0
- package/dist/node_modules/rc-select/es/SelectContext.js +2 -0
- package/dist/node_modules/rc-select/es/SelectContext.js.map +1 -0
- package/dist/node_modules/rc-select/es/SelectTrigger.js +2 -0
- package/dist/node_modules/rc-select/es/SelectTrigger.js.map +1 -0
- package/dist/node_modules/rc-select/es/Selector/Input.js +2 -0
- package/dist/node_modules/rc-select/es/Selector/Input.js.map +1 -0
- package/dist/node_modules/rc-select/es/Selector/MultipleSelector.js +2 -0
- package/dist/node_modules/rc-select/es/Selector/MultipleSelector.js.map +1 -0
- package/dist/node_modules/rc-select/es/Selector/SingleSelector.js +2 -0
- package/dist/node_modules/rc-select/es/Selector/SingleSelector.js.map +1 -0
- package/dist/node_modules/rc-select/es/Selector/index.js +2 -0
- package/dist/node_modules/rc-select/es/Selector/index.js.map +1 -0
- package/dist/node_modules/rc-select/es/TransBtn.js +2 -0
- package/dist/node_modules/rc-select/es/TransBtn.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useBaseProps.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useBaseProps.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useCache.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useCache.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useDelayReset.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useDelayReset.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useFilterOptions.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useFilterOptions.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useId.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useId.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useLayoutEffect.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useLayoutEffect.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useLock.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useLock.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useOptions.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useOptions.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useRefFunc.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useRefFunc.js.map +1 -0
- package/dist/node_modules/rc-select/es/hooks/useSelectTriggerControl.js +2 -0
- package/dist/node_modules/rc-select/es/hooks/useSelectTriggerControl.js.map +1 -0
- package/dist/node_modules/rc-select/es/index.js +2 -0
- package/dist/node_modules/rc-select/es/index.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/commonUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/commonUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/keyUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/keyUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/legacyUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/legacyUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/platformUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/platformUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/valueUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/valueUtil.js.map +1 -0
- package/dist/node_modules/rc-select/es/utils/warningPropsUtil.js +2 -0
- package/dist/node_modules/rc-select/es/utils/warningPropsUtil.js.map +1 -0
- package/dist/node_modules/rc-textarea/es/ResizableTextArea.js +2 -0
- package/dist/node_modules/rc-textarea/es/ResizableTextArea.js.map +1 -0
- package/dist/node_modules/rc-textarea/es/TextArea.js +2 -0
- package/dist/node_modules/rc-textarea/es/TextArea.js.map +1 -0
- package/dist/node_modules/rc-textarea/es/calculateNodeHeight.js +2 -0
- package/dist/node_modules/rc-textarea/es/calculateNodeHeight.js.map +1 -0
- package/dist/node_modules/rc-textarea/es/index.js +2 -0
- package/dist/node_modules/rc-textarea/es/index.js.map +1 -0
- package/dist/node_modules/rc-tooltip/es/Popup.js +2 -0
- package/dist/node_modules/rc-tooltip/es/Popup.js.map +1 -0
- package/dist/node_modules/rc-tooltip/es/Tooltip.js +2 -0
- package/dist/node_modules/rc-tooltip/es/Tooltip.js.map +1 -0
- package/dist/node_modules/rc-tooltip/es/index.js +2 -0
- package/dist/node_modules/rc-tooltip/es/index.js.map +1 -0
- package/dist/node_modules/rc-tooltip/es/placements.js +2 -0
- package/dist/node_modules/rc-tooltip/es/placements.js.map +1 -0
- package/dist/node_modules/rc-tree/es/util.js +2 -0
- package/dist/node_modules/rc-tree/es/util.js.map +1 -0
- package/dist/node_modules/rc-tree/es/utils/conductUtil.js +2 -0
- package/dist/node_modules/rc-tree/es/utils/conductUtil.js.map +1 -0
- package/dist/node_modules/rc-tree/es/utils/treeUtil.js +2 -0
- package/dist/node_modules/rc-tree/es/utils/treeUtil.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/Mask.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/Mask.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/MobilePopupInner.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/MobilePopupInner.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/PopupInner.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/PopupInner.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/index.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/index.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/useStretchStyle.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/useStretchStyle.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/Popup/useVisibleStatus.js +2 -0
- package/dist/node_modules/rc-trigger/es/Popup/useVisibleStatus.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/context.js +2 -0
- package/dist/node_modules/rc-trigger/es/context.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/index.js +2 -0
- package/dist/node_modules/rc-trigger/es/index.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/utils/alignUtil.js +2 -0
- package/dist/node_modules/rc-trigger/es/utils/alignUtil.js.map +1 -0
- package/dist/node_modules/rc-trigger/es/utils/legacyUtil.js +2 -0
- package/dist/node_modules/rc-trigger/es/utils/legacyUtil.js.map +1 -0
- package/dist/node_modules/rc-util/es/Children/toArray.js +2 -0
- package/dist/node_modules/rc-util/es/Children/toArray.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/addEventListener.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/addEventListener.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/canUseDom.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/canUseDom.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/contains.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/contains.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/dynamicCSS.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/dynamicCSS.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/findDOMNode.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/findDOMNode.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/focus.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/focus.js.map +1 -0
- package/dist/node_modules/rc-util/es/Dom/isVisible.js +2 -0
- package/dist/node_modules/rc-util/es/Dom/isVisible.js.map +1 -0
- package/dist/node_modules/rc-util/es/KeyCode.js +2 -0
- package/dist/node_modules/rc-util/es/KeyCode.js.map +1 -0
- package/dist/node_modules/rc-util/es/Portal.js +2 -0
- package/dist/node_modules/rc-util/es/Portal.js.map +1 -0
- package/dist/node_modules/rc-util/es/React/render.js +2 -0
- package/dist/node_modules/rc-util/es/React/render.js.map +1 -0
- package/dist/node_modules/rc-util/es/getScrollBarSize.js +2 -0
- package/dist/node_modules/rc-util/es/getScrollBarSize.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useEvent.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useEvent.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useId.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useId.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useLayoutEffect.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useLayoutEffect.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useMemo.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useMemo.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useMergedState.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useMergedState.js.map +1 -0
- package/dist/node_modules/rc-util/es/hooks/useState.js +2 -0
- package/dist/node_modules/rc-util/es/hooks/useState.js.map +1 -0
- package/dist/node_modules/rc-util/es/isEqual.js +2 -0
- package/dist/node_modules/rc-util/es/isEqual.js.map +1 -0
- package/dist/node_modules/rc-util/es/isMobile.js +2 -0
- package/dist/node_modules/rc-util/es/isMobile.js.map +1 -0
- package/dist/node_modules/rc-util/es/omit.js +2 -0
- package/dist/node_modules/rc-util/es/omit.js.map +1 -0
- package/dist/node_modules/rc-util/es/pickAttrs.js +2 -0
- package/dist/node_modules/rc-util/es/pickAttrs.js.map +1 -0
- package/dist/node_modules/rc-util/es/raf.js +2 -0
- package/dist/node_modules/rc-util/es/raf.js.map +1 -0
- package/dist/node_modules/rc-util/es/ref.js +2 -0
- package/dist/node_modules/rc-util/es/ref.js.map +1 -0
- package/dist/node_modules/rc-util/es/utils/get.js +2 -0
- package/dist/node_modules/rc-util/es/utils/get.js.map +1 -0
- package/dist/node_modules/rc-util/es/utils/set.js +2 -0
- package/dist/node_modules/rc-util/es/utils/set.js.map +1 -0
- package/dist/node_modules/rc-util/es/warning.js +2 -0
- package/dist/node_modules/rc-util/es/warning.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/Filler.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/Filler.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/Item.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/Item.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/List.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/List.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/ScrollBar.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/ScrollBar.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useChildren.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useChildren.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useDiffItem.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useDiffItem.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useFrameWheel.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useHeights.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useHeights.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useOriginScroll.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useScrollTo.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/hooks/useScrollTo.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/index.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/index.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/utils/CacheMap.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/utils/CacheMap.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/utils/algorithmUtil.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/utils/algorithmUtil.js.map +1 -0
- package/dist/node_modules/rc-virtual-list/es/utils/isFirefox.js +2 -0
- package/dist/node_modules/rc-virtual-list/es/utils/isFirefox.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js +10 -0
- package/dist/node_modules/react-is/cjs/react-is.development.js.map +1 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js +10 -0
- package/dist/node_modules/react-is/cjs/react-is.production.min.js.map +1 -0
- package/dist/node_modules/react-is/index.js +2 -0
- package/dist/node_modules/react-is/index.js.map +1 -0
- package/dist/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js +2 -0
- package/dist/node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js.map +1 -0
- package/dist/node_modules/stylis/src/Enum.js +2 -0
- package/dist/node_modules/stylis/src/Enum.js.map +1 -0
- package/dist/node_modules/stylis/src/Middleware.js +2 -0
- package/dist/node_modules/stylis/src/Middleware.js.map +1 -0
- package/dist/node_modules/stylis/src/Parser.js +2 -0
- package/dist/node_modules/stylis/src/Parser.js.map +1 -0
- package/dist/node_modules/stylis/src/Serializer.js +2 -0
- package/dist/node_modules/stylis/src/Serializer.js.map +1 -0
- package/dist/node_modules/stylis/src/Tokenizer.js +2 -0
- package/dist/node_modules/stylis/src/Tokenizer.js.map +1 -0
- package/dist/node_modules/stylis/src/Utility.js +2 -0
- package/dist/node_modules/stylis/src/Utility.js.map +1 -0
- package/dist/node_modules/tslib/tslib.es6.js +2 -0
- package/dist/node_modules/tslib/tslib.es6.js.map +1 -0
- package/dist/src/components/ConfigProvider/ConfigProvider.js +2 -0
- package/dist/src/components/ConfigProvider/ConfigProvider.js.map +1 -0
- package/dist/src/components/ConfigProvider/GlobalStyle.js +141 -0
- package/dist/src/components/ConfigProvider/GlobalStyle.js.map +1 -0
- package/dist/src/constants.js +2 -0
- package/dist/src/constants.js.map +1 -0
- package/dist/src/index.js +2 -0
- package/dist/src/index.js.map +1 -0
- package/package.json +2 -2
- package/dist/cjs/index.js +0 -66
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/types/index.d.ts +0 -1
- package/dist/esm/index.js +0 -66
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/types/components/Alert/Alert.d.ts +0 -1
- package/dist/esm/types/components/Alert/index.d.ts +0 -1
- package/dist/esm/types/components/Button/Button.d.ts +0 -1
- package/dist/esm/types/components/Button/Button.stories.d.ts +0 -32
- package/dist/esm/types/components/Button/index.d.ts +0 -1
- package/dist/esm/types/components/Button/test.d.ts +0 -3
- package/dist/esm/types/components/ConfigProvider/ConfigProvider.d.ts +0 -7
- package/dist/esm/types/components/ConfigProvider/GlobalStyle.d.ts +0 -5
- package/dist/esm/types/components/ConfigProvider/index.d.ts +0 -1
- package/dist/esm/types/components/Divider/Divider.d.ts +0 -1
- package/dist/esm/types/components/Divider/index.d.ts +0 -1
- package/dist/esm/types/components/Dropdown/Dropdown.d.ts +0 -1
- package/dist/esm/types/components/Dropdown/index.d.ts +0 -1
- package/dist/esm/types/components/Input/Input.d.ts +0 -1
- package/dist/esm/types/components/Input/index.d.ts +0 -1
- package/dist/esm/types/components/Modal/Modal.d.ts +0 -1
- package/dist/esm/types/components/Modal/index.d.ts +0 -1
- package/dist/esm/types/components/Radio/Radio.d.ts +0 -1
- package/dist/esm/types/components/Radio/index.d.ts +0 -1
- package/dist/esm/types/components/Space/Space.d.ts +0 -1
- package/dist/esm/types/components/Space/index.d.ts +0 -1
- package/dist/esm/types/components/Tooltip/Tooltip.d.ts +0 -1
- package/dist/esm/types/components/Tooltip/index.d.ts +0 -1
- package/dist/esm/types/components/index.d.ts +0 -10
- package/dist/esm/types/constants.d.ts +0 -12
- package/dist/esm/types/index.d.ts +0 -1
- package/dist/esm/types/test.d.ts +0 -3
- /package/dist/{cjs/types/components → components}/Alert/Alert.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Alert/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Button/Button.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Button/Button.stories.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Button/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Button/test.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/ConfigProvider/ConfigProvider.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/ConfigProvider/GlobalStyle.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/ConfigProvider/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Divider/Divider.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Divider/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Dropdown/Dropdown.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Dropdown/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Input/Input.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Input/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Modal/Modal.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Modal/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Radio/Radio.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Radio/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Space/Space.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Space/index.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Tooltip/Tooltip.d.ts +0 -0
- /package/dist/{cjs/types/components → components}/Tooltip/index.d.ts +0 -0
- /package/dist/{cjs/types/constants.d.ts → constants.d.ts} +0 -0
- /package/dist/{cjs/types/test.d.ts → test.d.ts} +0 -0
package/dist/cjs/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../../node_modules/@babel/runtime/helpers/esm/typeof.js","../../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../../node_modules/@babel/runtime/helpers/esm/createClass.js","../../node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../../node_modules/@babel/runtime/helpers/esm/inherits.js","../../node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../../node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../../node_modules/@babel/runtime/helpers/esm/createSuper.js","../../node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../../node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../../node_modules/classnames/index.js","../../node_modules/@babel/runtime/helpers/esm/extends.js","../../node_modules/rc-util/es/Children/toArray.js","../../node_modules/react-is/index.js","../../node_modules/react-is/cjs/react-is.production.min.js","../../node_modules/react-is/cjs/react-is.development.js","../../node_modules/rc-util/es/warning.js","../../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../../node_modules/rc-util/es/hooks/useMemo.js","../../node_modules/rc-util/es/ref.js","../../node_modules/rc-util/es/Dom/findDOMNode.js","../../node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js","../../node_modules/rc-resize-observer/es/utils/observerUtil.js","../../node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js","../../node_modules/rc-resize-observer/es/Collection.js","../../node_modules/rc-resize-observer/es/SingleObserver/index.js","../../node_modules/rc-resize-observer/es/index.js","../../node_modules/rc-util/es/omit.js","../../node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../../node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../../node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../../node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../../node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../../node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../../node_modules/@ant-design/cssinjs/node_modules/@emotion/hash/dist/hash.esm.js","../../node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","../../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../../node_modules/rc-util/es/isEqual.js","../../node_modules/@ant-design/cssinjs/es/Cache.js","../../node_modules/@ant-design/cssinjs/es/StyleContext.js","../../node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../../node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../../node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../../node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../../node_modules/@ant-design/cssinjs/es/hooks/useHMR.js","../../node_modules/@ant-design/cssinjs/es/hooks/useGlobalCache.js","../../node_modules/rc-util/es/Dom/canUseDom.js","../../node_modules/rc-util/es/Dom/contains.js","../../node_modules/rc-util/es/Dom/dynamicCSS.js","../../node_modules/@ant-design/cssinjs/es/util.js","../../node_modules/@ant-design/cssinjs/es/hooks/useCacheToken.js","../../node_modules/@emotion/unitless/dist/unitless.esm.js","../../node_modules/stylis/src/Enum.js","../../node_modules/stylis/src/Utility.js","../../node_modules/stylis/src/Tokenizer.js","../../node_modules/stylis/src/Parser.js","../../node_modules/stylis/src/Serializer.js","../../node_modules/stylis/src/Middleware.js","../../node_modules/@ant-design/cssinjs/es/linters/utils.js","../../node_modules/@ant-design/cssinjs/es/linters/contentQuotesLinter.js","../../node_modules/@ant-design/cssinjs/es/linters/hashedAnimationLinter.js","../../node_modules/@ant-design/cssinjs/es/hooks/useStyleRegister.js","../../node_modules/@ant-design/cssinjs/es/Keyframes.js","../../node_modules/@ant-design/cssinjs/es/theme/ThemeCache.js","../../node_modules/@ant-design/cssinjs/es/theme/Theme.js","../../node_modules/@ant-design/cssinjs/es/theme/createTheme.js","../../node_modules/@ant-design/cssinjs/es/transformers/legacyLogicalProperties.js","../../node_modules/@ant-design/icons/es/components/Context.js","../../node_modules/rc-field-form/es/FieldContext.js","../../node_modules/rc-field-form/es/utils/typeUtil.js","../../node_modules/@babel/runtime/helpers/esm/regeneratorRuntime.js","../../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../../node_modules/async-validator/dist-web/index.js","../../node_modules/rc-field-form/es/utils/messages.js","../../node_modules/rc-util/es/utils/get.js","../../node_modules/rc-util/es/utils/set.js","../../node_modules/@babel/runtime/helpers/esm/toArray.js","../../node_modules/rc-field-form/es/utils/cloneDeep.js","../../node_modules/rc-field-form/es/utils/valueUtil.js","../../node_modules/rc-field-form/es/utils/validateUtil.js","../../node_modules/rc-field-form/es/Field.js","../../node_modules/rc-field-form/es/ListContext.js","../../node_modules/rc-field-form/es/utils/NameMap.js","../../node_modules/rc-field-form/es/useForm.js","../../node_modules/rc-field-form/es/utils/asyncUtil.js","../../node_modules/rc-field-form/es/FormContext.js","../../node_modules/rc-field-form/es/Form.js","../../node_modules/rc-field-form/es/useWatch.js","../../node_modules/rc-field-form/es/index.js","../../node_modules/rc-field-form/es/List.js","../../node_modules/antd/es/_util/warning.js","../../node_modules/antd/es/time-picker/locale/en_US.js","../../node_modules/antd/es/date-picker/locale/en_US.js","../../node_modules/rc-picker/es/locale/en_US.js","../../node_modules/antd/es/locale/en_US.js","../../node_modules/rc-pagination/es/locale/en_US.js","../../node_modules/antd/es/modal/locale.js","../../node_modules/antd/es/locale/context.js","../../node_modules/antd/es/locale/index.js","../../node_modules/antd/es/version/version.js","../../node_modules/antd/es/theme/interface/presetColors.js","../../node_modules/@ctrl/tinycolor/dist/module/util.js","../../node_modules/@ctrl/tinycolor/dist/module/conversion.js","../../node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","../../node_modules/@ctrl/tinycolor/dist/module/format-input.js","../../node_modules/@ctrl/tinycolor/dist/module/index.js","../../node_modules/@ant-design/colors/es/generate.js","../../node_modules/@ant-design/colors/es/index.js","../../node_modules/antd/es/theme/themes/shared/genControlHeight.js","../../node_modules/antd/es/theme/themes/seed.js","../../node_modules/antd/es/theme/themes/shared/genColorMapToken.js","../../node_modules/antd/es/theme/themes/shared/genRadius.js","../../node_modules/antd/es/theme/themes/default/colorAlgorithm.js","../../node_modules/antd/es/theme/themes/default/colors.js","../../node_modules/antd/es/theme/themes/shared/genFontMapToken.js","../../node_modules/antd/es/theme/themes/shared/genFontSizes.js","../../node_modules/antd/es/theme/themes/default/index.js","../../node_modules/antd/es/theme/themes/shared/genSizeMapToken.js","../../node_modules/antd/es/theme/themes/shared/genCommonMapToken.js","../../node_modules/antd/es/theme/util/getAlphaColor.js","../../node_modules/antd/es/theme/util/alias.js","../../node_modules/antd/es/style/presetColor.js","../../node_modules/antd/es/style/roundedArrow.js","../../node_modules/antd/es/style/index.js","../../node_modules/antd/es/config-provider/context.js","../../node_modules/antd/es/theme/util/genComponentStyleHook.js","../../node_modules/antd/es/theme/util/statistic.js","../../node_modules/antd/es/theme/internal.js","../../node_modules/antd/es/config-provider/cssVariables.js","../../node_modules/antd/es/config-provider/DisabledContext.js","../../node_modules/antd/es/config-provider/SizeContext.js","../../node_modules/antd/es/config-provider/style/index.js","../../node_modules/antd/es/config-provider/index.js","../../node_modules/antd/es/config-provider/hooks/useTheme.js","../../node_modules/antd/es/config-provider/hooks/useConfig.js","../../node_modules/rc-util/es/raf.js","../../node_modules/rc-util/es/Dom/addEventListener.js","../../node_modules/@ant-design/icons-svg/es/asn/CheckCircleFilled.js","../../node_modules/@ant-design/icons/es/utils.js","../../node_modules/@ant-design/icons/es/components/IconBase.js","../../node_modules/@ant-design/icons/es/components/twoTonePrimaryColor.js","../../node_modules/@ant-design/icons/es/components/AntdIcon.js","../../node_modules/@ant-design/icons/es/icons/CheckCircleFilled.js","../../node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js","../../node_modules/@ant-design/icons/es/icons/CloseCircleFilled.js","../../node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js","../../node_modules/@ant-design/icons/es/icons/CloseOutlined.js","../../node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleFilled.js","../../node_modules/@ant-design/icons/es/icons/ExclamationCircleFilled.js","../../node_modules/@ant-design/icons-svg/es/asn/InfoCircleFilled.js","../../node_modules/@ant-design/icons/es/icons/InfoCircleFilled.js","../../node_modules/rc-motion/es/util/motion.js","../../node_modules/rc-motion/es/interface.js","../../node_modules/rc-util/es/hooks/useState.js","../../node_modules/rc-motion/es/hooks/useNextFrame.js","../../node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","../../node_modules/rc-motion/es/hooks/useStepQueue.js","../../node_modules/rc-motion/es/hooks/useDomMotionEvents.js","../../node_modules/rc-motion/es/DomWrapper.js","../../node_modules/rc-motion/es/CSSMotion.js","../../node_modules/rc-motion/es/hooks/useStatus.js","../../node_modules/rc-motion/es/util/diff.js","../../node_modules/rc-motion/es/CSSMotionList.js","../../node_modules/antd/es/_util/getDataOrAriaProps.js","../../node_modules/antd/es/_util/reactNode.js","../../node_modules/antd/es/alert/ErrorBoundary.js","../../node_modules/antd/es/alert/style/index.js","../../node_modules/antd/es/alert/index.js","../../node_modules/rc-util/es/hooks/useEvent.js","../../node_modules/rc-util/es/KeyCode.js","../../node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js","../../node_modules/@ant-design/icons/es/icons/LoadingOutlined.js","../../node_modules/rc-util/es/React/render.js","../../node_modules/antd/es/locale/useLocale.js","../../node_modules/antd/es/space/style/compact.js","../../node_modules/antd/es/space/style/index.js","../../node_modules/antd/es/space/Compact.js","../../node_modules/rc-util/es/Dom/isVisible.js","../../node_modules/antd/es/_util/wave/style.js","../../node_modules/antd/es/_util/wave/util.js","../../node_modules/antd/es/_util/wave/WaveEffect.js","../../node_modules/antd/es/_util/wave/useWave.js","../../node_modules/antd/es/_util/wave/index.js","../../node_modules/antd/es/button/button-group.js","../../node_modules/antd/es/button/buttonHelpers.js","../../node_modules/antd/es/button/LoadingIcon.js","../../node_modules/antd/es/button/style/group.js","../../node_modules/antd/es/style/compact-item.js","../../node_modules/antd/es/style/compact-item-vertical.js","../../node_modules/antd/es/button/style/index.js","../../node_modules/antd/es/button/button.js","../../node_modules/antd/es/_util/ActionButton.js","../../node_modules/antd/es/_util/motion.js","../../node_modules/@rc-component/portal/es/Context.js","../../node_modules/rc-util/es/getScrollBarSize.js","../../node_modules/rc-util/es/hooks/useLayoutEffect.js","../../node_modules/@rc-component/portal/es/useDom.js","../../node_modules/@rc-component/portal/es/useScrollLocker.js","../../node_modules/@rc-component/portal/es/util.js","../../node_modules/@rc-component/portal/es/mock.js","../../node_modules/@rc-component/portal/es/Portal.js","../../node_modules/rc-util/es/hooks/useId.js","../../node_modules/rc-util/es/pickAttrs.js","../../node_modules/rc-dialog/es/Dialog/Mask.js","../../node_modules/rc-dialog/es/util.js","../../node_modules/rc-dialog/es/Dialog/Content/MemoChildren.js","../../node_modules/rc-dialog/es/Dialog/Content/Panel.js","../../node_modules/rc-dialog/es/Dialog/Content/index.js","../../node_modules/rc-dialog/es/Dialog/index.js","../../node_modules/rc-dialog/es/DialogWrap.js","../../node_modules/antd/es/form/context.js","../../node_modules/antd/es/_util/styleChecker.js","../../node_modules/antd/es/style/motion/motion.js","../../node_modules/antd/es/style/motion/fade.js","../../node_modules/antd/es/style/motion/move.js","../../node_modules/antd/es/style/motion/slide.js","../../node_modules/antd/es/style/motion/zoom.js","../../node_modules/antd/es/style/motion/collapse.js","../../node_modules/antd/es/modal/style/index.js","../../node_modules/antd/es/modal/PurePanel.js","../../node_modules/antd/es/modal/Modal.js","../../node_modules/antd/es/modal/ConfirmDialog.js","../../node_modules/antd/es/modal/destroyFns.js","../../node_modules/antd/es/modal/confirm.js","../../node_modules/antd/es/modal/useModal/HookModal.js","../../node_modules/antd/es/modal/useModal/index.js","../../node_modules/antd/es/_util/hooks/usePatchElement.js","../../node_modules/rc-util/es/hooks/useMergedState.js","../../node_modules/rc-util/es/isMobile.js","../../node_modules/rc-overflow/es/Item.js","../../node_modules/rc-overflow/es/hooks/useEffectState.js","../../node_modules/rc-overflow/es/hooks/channelUpdate.js","../../node_modules/rc-overflow/es/RawItem.js","../../node_modules/rc-overflow/es/Overflow.js","../../node_modules/@rc-component/trigger/es/context.js","../../node_modules/@rc-component/trigger/es/hooks/useAction.js","../../node_modules/@rc-component/trigger/es/util.js","../../node_modules/@rc-component/trigger/es/hooks/useAlign.js","../../node_modules/@rc-component/trigger/es/Popup/Arrow.js","../../node_modules/@rc-component/trigger/es/Popup/Mask.js","../../node_modules/@rc-component/trigger/es/Popup/index.js","../../node_modules/@rc-component/trigger/es/TriggerWrapper.js","../../node_modules/@rc-component/trigger/es/index.js","../../node_modules/@rc-component/trigger/es/hooks/useWatch.js","../../node_modules/antd/es/_util/statusUtils.js","../../node_modules/@ant-design/icons-svg/es/asn/SearchOutlined.js","../../node_modules/@ant-design/icons/es/icons/SearchOutlined.js","../../node_modules/rc-tooltip/es/placements.js","../../node_modules/rc-tooltip/es/Popup.js","../../node_modules/rc-tooltip/es/Tooltip.js","../../node_modules/antd/es/theme/themes/dark/colorAlgorithm.js","../../node_modules/antd/es/theme/themes/dark/colors.js","../../node_modules/antd/es/theme/themes/dark/index.js","../../node_modules/antd/es/theme/themes/compact/index.js","../../node_modules/antd/es/theme/themes/compact/genCompactSizeMapToken.js","../../node_modules/antd/es/theme/index.js","../../node_modules/antd/es/style/placementArrow.js","../../node_modules/antd/es/_util/placements.js","../../node_modules/antd/es/tooltip/style/index.js","../../node_modules/antd/es/_util/colors.js","../../node_modules/antd/es/tooltip/util.js","../../node_modules/antd/es/tooltip/index.js","../../node_modules/antd/es/tooltip/PurePanel.js","../../node_modules/@ant-design/icons-svg/es/asn/RightOutlined.js","../../node_modules/@ant-design/icons/es/icons/RightOutlined.js","../../node_modules/dom-align/dist-web/index.js","../../node_modules/rc-util/es/Portal.js","../../node_modules/rc-trigger/es/utils/alignUtil.js","../../node_modules/rc-trigger/es/utils/legacyUtil.js","../../node_modules/rc-trigger/es/Popup/Mask.js","../../node_modules/rc-align/es/util.js","../../node_modules/rc-align/es/Align.js","../../node_modules/rc-align/es/hooks/useBuffer.js","../../node_modules/rc-trigger/es/Popup/useVisibleStatus.js","../../node_modules/rc-trigger/es/Popup/PopupInner.js","../../node_modules/rc-trigger/es/Popup/useStretchStyle.js","../../node_modules/rc-trigger/es/Popup/MobilePopupInner.js","../../node_modules/rc-trigger/es/Popup/index.js","../../node_modules/rc-trigger/es/context.js","../../node_modules/rc-trigger/es/index.js","../../node_modules/rc-dropdown/es/placements.js","../../node_modules/rc-util/es/Dom/focus.js","../../node_modules/rc-dropdown/es/hooks/useAccessibility.js","../../node_modules/rc-dropdown/es/Dropdown.js","../../node_modules/rc-menu/es/context/IdContext.js","../../node_modules/rc-menu/es/context/MenuContext.js","../../node_modules/rc-menu/es/context/PathContext.js","../../node_modules/rc-menu/es/context/PrivateContext.js","../../node_modules/rc-menu/es/hooks/useAccessibility.js","../../node_modules/rc-menu/es/hooks/useKeyRecords.js","../../node_modules/rc-menu/es/utils/timeUtil.js","../../node_modules/rc-menu/es/hooks/useMemoCallback.js","../../node_modules/rc-menu/es/hooks/useUUID.js","../../node_modules/rc-menu/es/hooks/useActive.js","../../node_modules/rc-menu/es/utils/warnUtil.js","../../node_modules/rc-menu/es/Icon.js","../../node_modules/rc-menu/es/hooks/useDirectionStyle.js","../../node_modules/rc-menu/es/MenuItem.js","../../node_modules/rc-menu/es/SubMenu/SubMenuList.js","../../node_modules/rc-menu/es/utils/nodeUtil.js","../../node_modules/rc-menu/es/placements.js","../../node_modules/rc-menu/es/utils/motionUtil.js","../../node_modules/rc-menu/es/SubMenu/PopupTrigger.js","../../node_modules/rc-menu/es/SubMenu/InlineSubMenuList.js","../../node_modules/rc-menu/es/SubMenu/index.js","../../node_modules/rc-menu/es/Menu.js","../../node_modules/rc-menu/es/MenuItemGroup.js","../../node_modules/rc-menu/es/Divider.js","../../node_modules/rc-menu/es/index.js","../../node_modules/@ant-design/icons-svg/es/asn/EllipsisOutlined.js","../../node_modules/@ant-design/icons/es/icons/EllipsisOutlined.js","../../node_modules/antd/es/menu/style/horizontal.js","../../node_modules/antd/es/menu/style/rtl.js","../../node_modules/antd/es/menu/style/theme.js","../../node_modules/antd/es/menu/style/vertical.js","../../node_modules/antd/es/menu/style/index.js","../../node_modules/antd/es/menu/OverrideContext.js","../../node_modules/antd/es/menu/MenuDivider.js","../../node_modules/@ant-design/icons-svg/es/asn/BarsOutlined.js","../../node_modules/@ant-design/icons/es/icons/BarsOutlined.js","../../node_modules/@ant-design/icons-svg/es/asn/LeftOutlined.js","../../node_modules/@ant-design/icons/es/icons/LeftOutlined.js","../../node_modules/antd/es/_util/isNumeric.js","../../node_modules/antd/es/layout/style/light.js","../../node_modules/antd/es/layout/style/index.js","../../node_modules/antd/es/layout/layout.js","../../node_modules/antd/es/layout/Sider.js","../../node_modules/antd/es/menu/MenuContext.js","../../node_modules/antd/es/menu/MenuItem.js","../../node_modules/antd/es/menu/SubMenu.js","../../node_modules/antd/es/menu/hooks/useItems.js","../../node_modules/antd/es/menu/menu.js","../../node_modules/antd/es/menu/index.js","../../node_modules/antd/es/_util/hooks/useFlexGapSupport.js","../../node_modules/antd/es/space/Item.js","../../node_modules/antd/es/space/index.js","../../node_modules/antd/es/dropdown/style/button.js","../../node_modules/antd/es/dropdown/style/status.js","../../node_modules/antd/es/dropdown/style/index.js","../../node_modules/antd/es/dropdown/dropdown-button.js","../../node_modules/antd/es/dropdown/dropdown.js","../../node_modules/antd/es/_util/PurePanel.js","../../node_modules/antd/es/radio/context.js","../../node_modules/rc-checkbox/es/index.js","../../node_modules/antd/es/radio/style/index.js","../../node_modules/antd/es/radio/radio.js","../../node_modules/antd/es/radio/group.js","../../node_modules/antd/es/radio/radioButton.js","../../node_modules/antd/es/radio/index.js","../../node_modules/antd/es/input/style/index.js","../../node_modules/antd/es/divider/style/index.js","../../node_modules/antd/es/divider/index.js","../../node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js","../../node_modules/@ant-design/icons/es/icons/EyeOutlined.js","../../node_modules/antd/es/input/Group.js","../../node_modules/rc-input/es/utils/commonUtils.js","../../node_modules/rc-input/es/BaseInput.js","../../node_modules/rc-input/es/Input.js","../../node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js","../../node_modules/antd/es/input/Input.js","../../node_modules/antd/es/input/utils.js","../../node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js","../../node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js","../../node_modules/antd/es/input/Password.js","../../node_modules/antd/es/input/Search.js","../../node_modules/rc-textarea/es/calculateNodeHeight.js","../../node_modules/rc-textarea/es/ResizableTextArea.js","../../node_modules/rc-textarea/es/TextArea.js","../../node_modules/antd/es/input/TextArea.js","../../node_modules/antd/es/input/index.js","../../node_modules/antd/es/modal/index.js","../../src/constants.ts","../../node_modules/@emotion/sheet/dist/emotion-sheet.esm.js","../../node_modules/@emotion/memoize/dist/emotion-memoize.esm.js","../../node_modules/@emotion/cache/dist/emotion-cache.esm.js","../../node_modules/@emotion/weak-memoize/dist/emotion-weak-memoize.esm.js","../../node_modules/hoist-non-react-statics/dist/hoist-non-react-statics.cjs.js","../../node_modules/@emotion/utils/dist/emotion-utils.esm.js","../../node_modules/@emotion/serialize/node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../../node_modules/@emotion/serialize/dist/emotion-serialize.esm.js","../../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../../node_modules/@emotion/use-insertion-effect-with-fallbacks/dist/emotion-use-insertion-effect-with-fallbacks.esm.js","../../node_modules/@emotion/react/dist/emotion-element-3838ba9e.esm.js","../../node_modules/@emotion/react/dist/emotion-react.esm.js","../../src/components/ConfigProvider/GlobalStyle.tsx","../../src/components/ConfigProvider/ConfigProvider.tsx","../../node_modules/tslib/tslib.es6.js"],"sourcesContent":["export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);\n }\n}\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return possibleConstructorReturn(this, result);\n };\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return assertThisInitialized(self);\n}","/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import React from 'react';\nimport { isFragment } from 'react-is';\nexport default function toArray(children) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var ret = [];\n React.Children.forEach(children, function (child) {\n if ((child === undefined || child === null) && !option.keepEmpty) {\n return;\n }\n if (Array.isArray(child)) {\n ret = ret.concat(toArray(child));\n } else if (isFragment(child) && child.props) {\n ret = ret.concat(toArray(child.props.children, option));\n } else {\n ret.push(child);\n }\n });\n return ret;\n}","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-is.production.min.js');\n} else {\n module.exports = require('./cjs/react-is.development.js');\n}\n","/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var b=\"function\"===typeof Symbol&&Symbol.for,c=b?Symbol.for(\"react.element\"):60103,d=b?Symbol.for(\"react.portal\"):60106,e=b?Symbol.for(\"react.fragment\"):60107,f=b?Symbol.for(\"react.strict_mode\"):60108,g=b?Symbol.for(\"react.profiler\"):60114,h=b?Symbol.for(\"react.provider\"):60109,k=b?Symbol.for(\"react.context\"):60110,l=b?Symbol.for(\"react.async_mode\"):60111,m=b?Symbol.for(\"react.concurrent_mode\"):60111,n=b?Symbol.for(\"react.forward_ref\"):60112,p=b?Symbol.for(\"react.suspense\"):60113,q=b?\nSymbol.for(\"react.suspense_list\"):60120,r=b?Symbol.for(\"react.memo\"):60115,t=b?Symbol.for(\"react.lazy\"):60116,v=b?Symbol.for(\"react.block\"):60121,w=b?Symbol.for(\"react.fundamental\"):60117,x=b?Symbol.for(\"react.responder\"):60118,y=b?Symbol.for(\"react.scope\"):60119;\nfunction z(a){if(\"object\"===typeof a&&null!==a){var u=a.$$typeof;switch(u){case c:switch(a=a.type,a){case l:case m:case e:case g:case f:case p:return a;default:switch(a=a&&a.$$typeof,a){case k:case n:case t:case r:case h:return a;default:return u}}case d:return u}}}function A(a){return z(a)===m}exports.AsyncMode=l;exports.ConcurrentMode=m;exports.ContextConsumer=k;exports.ContextProvider=h;exports.Element=c;exports.ForwardRef=n;exports.Fragment=e;exports.Lazy=t;exports.Memo=r;exports.Portal=d;\nexports.Profiler=g;exports.StrictMode=f;exports.Suspense=p;exports.isAsyncMode=function(a){return A(a)||z(a)===l};exports.isConcurrentMode=A;exports.isContextConsumer=function(a){return z(a)===k};exports.isContextProvider=function(a){return z(a)===h};exports.isElement=function(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===c};exports.isForwardRef=function(a){return z(a)===n};exports.isFragment=function(a){return z(a)===e};exports.isLazy=function(a){return z(a)===t};\nexports.isMemo=function(a){return z(a)===r};exports.isPortal=function(a){return z(a)===d};exports.isProfiler=function(a){return z(a)===g};exports.isStrictMode=function(a){return z(a)===f};exports.isSuspense=function(a){return z(a)===p};\nexports.isValidElementType=function(a){return\"string\"===typeof a||\"function\"===typeof a||a===e||a===m||a===g||a===f||a===p||a===q||\"object\"===typeof a&&null!==a&&(a.$$typeof===t||a.$$typeof===r||a.$$typeof===h||a.$$typeof===k||a.$$typeof===n||a.$$typeof===w||a.$$typeof===x||a.$$typeof===y||a.$$typeof===v)};exports.typeOf=z;\n","/** @license React v16.13.1\n * react-is.development.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n\n\nif (process.env.NODE_ENV !== \"production\") {\n (function() {\n'use strict';\n\n// The Symbol used to tag the ReactElement-like types. If there is no native Symbol\n// nor polyfill, then a plain number is used for performance.\nvar hasSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = hasSymbol ? Symbol.for('react.element') : 0xeac7;\nvar REACT_PORTAL_TYPE = hasSymbol ? Symbol.for('react.portal') : 0xeaca;\nvar REACT_FRAGMENT_TYPE = hasSymbol ? Symbol.for('react.fragment') : 0xeacb;\nvar REACT_STRICT_MODE_TYPE = hasSymbol ? Symbol.for('react.strict_mode') : 0xeacc;\nvar REACT_PROFILER_TYPE = hasSymbol ? Symbol.for('react.profiler') : 0xead2;\nvar REACT_PROVIDER_TYPE = hasSymbol ? Symbol.for('react.provider') : 0xeacd;\nvar REACT_CONTEXT_TYPE = hasSymbol ? Symbol.for('react.context') : 0xeace; // TODO: We don't use AsyncMode or ConcurrentMode anymore. They were temporary\n// (unstable) APIs that have been removed. Can we remove the symbols?\n\nvar REACT_ASYNC_MODE_TYPE = hasSymbol ? Symbol.for('react.async_mode') : 0xeacf;\nvar REACT_CONCURRENT_MODE_TYPE = hasSymbol ? Symbol.for('react.concurrent_mode') : 0xeacf;\nvar REACT_FORWARD_REF_TYPE = hasSymbol ? Symbol.for('react.forward_ref') : 0xead0;\nvar REACT_SUSPENSE_TYPE = hasSymbol ? Symbol.for('react.suspense') : 0xead1;\nvar REACT_SUSPENSE_LIST_TYPE = hasSymbol ? Symbol.for('react.suspense_list') : 0xead8;\nvar REACT_MEMO_TYPE = hasSymbol ? Symbol.for('react.memo') : 0xead3;\nvar REACT_LAZY_TYPE = hasSymbol ? Symbol.for('react.lazy') : 0xead4;\nvar REACT_BLOCK_TYPE = hasSymbol ? Symbol.for('react.block') : 0xead9;\nvar REACT_FUNDAMENTAL_TYPE = hasSymbol ? Symbol.for('react.fundamental') : 0xead5;\nvar REACT_RESPONDER_TYPE = hasSymbol ? Symbol.for('react.responder') : 0xead6;\nvar REACT_SCOPE_TYPE = hasSymbol ? Symbol.for('react.scope') : 0xead7;\n\nfunction isValidElementType(type) {\n return typeof type === 'string' || typeof type === 'function' || // Note: its typeof might be other than 'symbol' or 'number' if it's a polyfill.\n type === REACT_FRAGMENT_TYPE || type === REACT_CONCURRENT_MODE_TYPE || type === REACT_PROFILER_TYPE || type === REACT_STRICT_MODE_TYPE || type === REACT_SUSPENSE_TYPE || type === REACT_SUSPENSE_LIST_TYPE || typeof type === 'object' && type !== null && (type.$$typeof === REACT_LAZY_TYPE || type.$$typeof === REACT_MEMO_TYPE || type.$$typeof === REACT_PROVIDER_TYPE || type.$$typeof === REACT_CONTEXT_TYPE || type.$$typeof === REACT_FORWARD_REF_TYPE || type.$$typeof === REACT_FUNDAMENTAL_TYPE || type.$$typeof === REACT_RESPONDER_TYPE || type.$$typeof === REACT_SCOPE_TYPE || type.$$typeof === REACT_BLOCK_TYPE);\n}\n\nfunction typeOf(object) {\n if (typeof object === 'object' && object !== null) {\n var $$typeof = object.$$typeof;\n\n switch ($$typeof) {\n case REACT_ELEMENT_TYPE:\n var type = object.type;\n\n switch (type) {\n case REACT_ASYNC_MODE_TYPE:\n case REACT_CONCURRENT_MODE_TYPE:\n case REACT_FRAGMENT_TYPE:\n case REACT_PROFILER_TYPE:\n case REACT_STRICT_MODE_TYPE:\n case REACT_SUSPENSE_TYPE:\n return type;\n\n default:\n var $$typeofType = type && type.$$typeof;\n\n switch ($$typeofType) {\n case REACT_CONTEXT_TYPE:\n case REACT_FORWARD_REF_TYPE:\n case REACT_LAZY_TYPE:\n case REACT_MEMO_TYPE:\n case REACT_PROVIDER_TYPE:\n return $$typeofType;\n\n default:\n return $$typeof;\n }\n\n }\n\n case REACT_PORTAL_TYPE:\n return $$typeof;\n }\n }\n\n return undefined;\n} // AsyncMode is deprecated along with isAsyncMode\n\nvar AsyncMode = REACT_ASYNC_MODE_TYPE;\nvar ConcurrentMode = REACT_CONCURRENT_MODE_TYPE;\nvar ContextConsumer = REACT_CONTEXT_TYPE;\nvar ContextProvider = REACT_PROVIDER_TYPE;\nvar Element = REACT_ELEMENT_TYPE;\nvar ForwardRef = REACT_FORWARD_REF_TYPE;\nvar Fragment = REACT_FRAGMENT_TYPE;\nvar Lazy = REACT_LAZY_TYPE;\nvar Memo = REACT_MEMO_TYPE;\nvar Portal = REACT_PORTAL_TYPE;\nvar Profiler = REACT_PROFILER_TYPE;\nvar StrictMode = REACT_STRICT_MODE_TYPE;\nvar Suspense = REACT_SUSPENSE_TYPE;\nvar hasWarnedAboutDeprecatedIsAsyncMode = false; // AsyncMode should be deprecated\n\nfunction isAsyncMode(object) {\n {\n if (!hasWarnedAboutDeprecatedIsAsyncMode) {\n hasWarnedAboutDeprecatedIsAsyncMode = true; // Using console['warn'] to evade Babel and ESLint\n\n console['warn']('The ReactIs.isAsyncMode() alias has been deprecated, ' + 'and will be removed in React 17+. Update your code to use ' + 'ReactIs.isConcurrentMode() instead. It has the exact same API.');\n }\n }\n\n return isConcurrentMode(object) || typeOf(object) === REACT_ASYNC_MODE_TYPE;\n}\nfunction isConcurrentMode(object) {\n return typeOf(object) === REACT_CONCURRENT_MODE_TYPE;\n}\nfunction isContextConsumer(object) {\n return typeOf(object) === REACT_CONTEXT_TYPE;\n}\nfunction isContextProvider(object) {\n return typeOf(object) === REACT_PROVIDER_TYPE;\n}\nfunction isElement(object) {\n return typeof object === 'object' && object !== null && object.$$typeof === REACT_ELEMENT_TYPE;\n}\nfunction isForwardRef(object) {\n return typeOf(object) === REACT_FORWARD_REF_TYPE;\n}\nfunction isFragment(object) {\n return typeOf(object) === REACT_FRAGMENT_TYPE;\n}\nfunction isLazy(object) {\n return typeOf(object) === REACT_LAZY_TYPE;\n}\nfunction isMemo(object) {\n return typeOf(object) === REACT_MEMO_TYPE;\n}\nfunction isPortal(object) {\n return typeOf(object) === REACT_PORTAL_TYPE;\n}\nfunction isProfiler(object) {\n return typeOf(object) === REACT_PROFILER_TYPE;\n}\nfunction isStrictMode(object) {\n return typeOf(object) === REACT_STRICT_MODE_TYPE;\n}\nfunction isSuspense(object) {\n return typeOf(object) === REACT_SUSPENSE_TYPE;\n}\n\nexports.AsyncMode = AsyncMode;\nexports.ConcurrentMode = ConcurrentMode;\nexports.ContextConsumer = ContextConsumer;\nexports.ContextProvider = ContextProvider;\nexports.Element = Element;\nexports.ForwardRef = ForwardRef;\nexports.Fragment = Fragment;\nexports.Lazy = Lazy;\nexports.Memo = Memo;\nexports.Portal = Portal;\nexports.Profiler = Profiler;\nexports.StrictMode = StrictMode;\nexports.Suspense = Suspense;\nexports.isAsyncMode = isAsyncMode;\nexports.isConcurrentMode = isConcurrentMode;\nexports.isContextConsumer = isContextConsumer;\nexports.isContextProvider = isContextProvider;\nexports.isElement = isElement;\nexports.isForwardRef = isForwardRef;\nexports.isFragment = isFragment;\nexports.isLazy = isLazy;\nexports.isMemo = isMemo;\nexports.isPortal = isPortal;\nexports.isProfiler = isProfiler;\nexports.isStrictMode = isStrictMode;\nexports.isSuspense = isSuspense;\nexports.isValidElementType = isValidElementType;\nexports.typeOf = typeOf;\n })();\n}\n","/* eslint-disable no-console */\nvar warned = {};\nexport function warning(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.error(\"Warning: \".concat(message));\n }\n}\nexport function note(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.warn(\"Note: \".concat(message));\n }\n}\nexport function resetWarned() {\n warned = {};\n}\nexport function call(method, valid, message) {\n if (!valid && !warned[message]) {\n method(false, message);\n warned[message] = true;\n }\n}\nexport function warningOnce(valid, message) {\n call(warning, valid, message);\n}\nexport function noteOnce(valid, message) {\n call(note, valid, message);\n}\nexport default warningOnce;\n/* eslint-enable */","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}","import * as React from 'react';\nexport default function useMemo(getValue, condition, shouldUpdate) {\n var cacheRef = React.useRef({});\n if (!('value' in cacheRef.current) || shouldUpdate(cacheRef.current.condition, condition)) {\n cacheRef.current.value = getValue();\n cacheRef.current.condition = condition;\n }\n return cacheRef.current.value;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\n/* eslint-disable no-param-reassign */\n\nimport { isMemo } from 'react-is';\nimport useMemo from \"./hooks/useMemo\";\nexport function fillRef(ref, node) {\n if (typeof ref === 'function') {\n ref(node);\n } else if (_typeof(ref) === 'object' && ref && 'current' in ref) {\n ref.current = node;\n }\n}\n\n/**\n * Merge refs into one ref function to support ref passing.\n */\nexport function composeRef() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n var refList = refs.filter(function (ref) {\n return ref;\n });\n if (refList.length <= 1) {\n return refList[0];\n }\n return function (node) {\n refs.forEach(function (ref) {\n fillRef(ref, node);\n });\n };\n}\nexport function useComposeRef() {\n for (var _len2 = arguments.length, refs = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n refs[_key2] = arguments[_key2];\n }\n return useMemo(function () {\n return composeRef.apply(void 0, refs);\n }, refs, function (prev, next) {\n return prev.length === next.length && prev.every(function (ref, i) {\n return ref === next[i];\n });\n });\n}\nexport function supportRef(nodeOrComponent) {\n var _type$prototype, _nodeOrComponent$prot;\n var type = isMemo(nodeOrComponent) ? nodeOrComponent.type.type : nodeOrComponent.type;\n\n // Function component node\n if (typeof type === 'function' && !((_type$prototype = type.prototype) !== null && _type$prototype !== void 0 && _type$prototype.render)) {\n return false;\n }\n\n // Class component\n if (typeof nodeOrComponent === 'function' && !((_nodeOrComponent$prot = nodeOrComponent.prototype) !== null && _nodeOrComponent$prot !== void 0 && _nodeOrComponent$prot.render)) {\n return false;\n }\n return true;\n}\n/* eslint-enable */","import React from 'react';\nimport ReactDOM from 'react-dom';\nexport function isDOM(node) {\n // https://developer.mozilla.org/en-US/docs/Web/API/Element\n // Since XULElement is also subclass of Element, we only need HTMLElement and SVGElement\n return node instanceof HTMLElement || node instanceof SVGElement;\n}\n\n/**\n * Return if a node is a DOM node. Else will return by `findDOMNode`\n */\nexport default function findDOMNode(node) {\n if (isDOM(node)) {\n return node;\n }\n if (node instanceof React.Component) {\n return ReactDOM.findDOMNode(node);\n }\n return null;\n}","/**\r\n * A collection of shims that provide minimal functionality of the ES6 collections.\r\n *\r\n * These implementations are not meant to be used outside of the ResizeObserver\r\n * modules as they cover only a limited range of use cases.\r\n */\r\n/* eslint-disable require-jsdoc, valid-jsdoc */\r\nvar MapShim = (function () {\r\n if (typeof Map !== 'undefined') {\r\n return Map;\r\n }\r\n /**\r\n * Returns index in provided array that matches the specified key.\r\n *\r\n * @param {Array<Array>} arr\r\n * @param {*} key\r\n * @returns {number}\r\n */\r\n function getIndex(arr, key) {\r\n var result = -1;\r\n arr.some(function (entry, index) {\r\n if (entry[0] === key) {\r\n result = index;\r\n return true;\r\n }\r\n return false;\r\n });\r\n return result;\r\n }\r\n return /** @class */ (function () {\r\n function class_1() {\r\n this.__entries__ = [];\r\n }\r\n Object.defineProperty(class_1.prototype, \"size\", {\r\n /**\r\n * @returns {boolean}\r\n */\r\n get: function () {\r\n return this.__entries__.length;\r\n },\r\n enumerable: true,\r\n configurable: true\r\n });\r\n /**\r\n * @param {*} key\r\n * @returns {*}\r\n */\r\n class_1.prototype.get = function (key) {\r\n var index = getIndex(this.__entries__, key);\r\n var entry = this.__entries__[index];\r\n return entry && entry[1];\r\n };\r\n /**\r\n * @param {*} key\r\n * @param {*} value\r\n * @returns {void}\r\n */\r\n class_1.prototype.set = function (key, value) {\r\n var index = getIndex(this.__entries__, key);\r\n if (~index) {\r\n this.__entries__[index][1] = value;\r\n }\r\n else {\r\n this.__entries__.push([key, value]);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.delete = function (key) {\r\n var entries = this.__entries__;\r\n var index = getIndex(entries, key);\r\n if (~index) {\r\n entries.splice(index, 1);\r\n }\r\n };\r\n /**\r\n * @param {*} key\r\n * @returns {void}\r\n */\r\n class_1.prototype.has = function (key) {\r\n return !!~getIndex(this.__entries__, key);\r\n };\r\n /**\r\n * @returns {void}\r\n */\r\n class_1.prototype.clear = function () {\r\n this.__entries__.splice(0);\r\n };\r\n /**\r\n * @param {Function} callback\r\n * @param {*} [ctx=null]\r\n * @returns {void}\r\n */\r\n class_1.prototype.forEach = function (callback, ctx) {\r\n if (ctx === void 0) { ctx = null; }\r\n for (var _i = 0, _a = this.__entries__; _i < _a.length; _i++) {\r\n var entry = _a[_i];\r\n callback.call(ctx, entry[1], entry[0]);\r\n }\r\n };\r\n return class_1;\r\n }());\r\n})();\n\n/**\r\n * Detects whether window and document objects are available in current environment.\r\n */\r\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && window.document === document;\n\n// Returns global object of a current environment.\r\nvar global$1 = (function () {\r\n if (typeof global !== 'undefined' && global.Math === Math) {\r\n return global;\r\n }\r\n if (typeof self !== 'undefined' && self.Math === Math) {\r\n return self;\r\n }\r\n if (typeof window !== 'undefined' && window.Math === Math) {\r\n return window;\r\n }\r\n // eslint-disable-next-line no-new-func\r\n return Function('return this')();\r\n})();\n\n/**\r\n * A shim for the requestAnimationFrame which falls back to the setTimeout if\r\n * first one is not supported.\r\n *\r\n * @returns {number} Requests' identifier.\r\n */\r\nvar requestAnimationFrame$1 = (function () {\r\n if (typeof requestAnimationFrame === 'function') {\r\n // It's required to use a bounded function because IE sometimes throws\r\n // an \"Invalid calling object\" error if rAF is invoked without the global\r\n // object on the left hand side.\r\n return requestAnimationFrame.bind(global$1);\r\n }\r\n return function (callback) { return setTimeout(function () { return callback(Date.now()); }, 1000 / 60); };\r\n})();\n\n// Defines minimum timeout before adding a trailing call.\r\nvar trailingTimeout = 2;\r\n/**\r\n * Creates a wrapper function which ensures that provided callback will be\r\n * invoked only once during the specified delay period.\r\n *\r\n * @param {Function} callback - Function to be invoked after the delay period.\r\n * @param {number} delay - Delay after which to invoke callback.\r\n * @returns {Function}\r\n */\r\nfunction throttle (callback, delay) {\r\n var leadingCall = false, trailingCall = false, lastCallTime = 0;\r\n /**\r\n * Invokes the original callback function and schedules new invocation if\r\n * the \"proxy\" was called during current request.\r\n *\r\n * @returns {void}\r\n */\r\n function resolvePending() {\r\n if (leadingCall) {\r\n leadingCall = false;\r\n callback();\r\n }\r\n if (trailingCall) {\r\n proxy();\r\n }\r\n }\r\n /**\r\n * Callback invoked after the specified delay. It will further postpone\r\n * invocation of the original function delegating it to the\r\n * requestAnimationFrame.\r\n *\r\n * @returns {void}\r\n */\r\n function timeoutCallback() {\r\n requestAnimationFrame$1(resolvePending);\r\n }\r\n /**\r\n * Schedules invocation of the original function.\r\n *\r\n * @returns {void}\r\n */\r\n function proxy() {\r\n var timeStamp = Date.now();\r\n if (leadingCall) {\r\n // Reject immediately following calls.\r\n if (timeStamp - lastCallTime < trailingTimeout) {\r\n return;\r\n }\r\n // Schedule new call to be in invoked when the pending one is resolved.\r\n // This is important for \"transitions\" which never actually start\r\n // immediately so there is a chance that we might miss one if change\r\n // happens amids the pending invocation.\r\n trailingCall = true;\r\n }\r\n else {\r\n leadingCall = true;\r\n trailingCall = false;\r\n setTimeout(timeoutCallback, delay);\r\n }\r\n lastCallTime = timeStamp;\r\n }\r\n return proxy;\r\n}\n\n// Minimum delay before invoking the update of observers.\r\nvar REFRESH_DELAY = 20;\r\n// A list of substrings of CSS properties used to find transition events that\r\n// might affect dimensions of observed elements.\r\nvar transitionKeys = ['top', 'right', 'bottom', 'left', 'width', 'height', 'size', 'weight'];\r\n// Check if MutationObserver is available.\r\nvar mutationObserverSupported = typeof MutationObserver !== 'undefined';\r\n/**\r\n * Singleton controller class which handles updates of ResizeObserver instances.\r\n */\r\nvar ResizeObserverController = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserverController.\r\n *\r\n * @private\r\n */\r\n function ResizeObserverController() {\r\n /**\r\n * Indicates whether DOM listeners have been added.\r\n *\r\n * @private {boolean}\r\n */\r\n this.connected_ = false;\r\n /**\r\n * Tells that controller has subscribed for Mutation Events.\r\n *\r\n * @private {boolean}\r\n */\r\n this.mutationEventsAdded_ = false;\r\n /**\r\n * Keeps reference to the instance of MutationObserver.\r\n *\r\n * @private {MutationObserver}\r\n */\r\n this.mutationsObserver_ = null;\r\n /**\r\n * A list of connected observers.\r\n *\r\n * @private {Array<ResizeObserverSPI>}\r\n */\r\n this.observers_ = [];\r\n this.onTransitionEnd_ = this.onTransitionEnd_.bind(this);\r\n this.refresh = throttle(this.refresh.bind(this), REFRESH_DELAY);\r\n }\r\n /**\r\n * Adds observer to observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be added.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.addObserver = function (observer) {\r\n if (!~this.observers_.indexOf(observer)) {\r\n this.observers_.push(observer);\r\n }\r\n // Add listeners if they haven't been added yet.\r\n if (!this.connected_) {\r\n this.connect_();\r\n }\r\n };\r\n /**\r\n * Removes observer from observers list.\r\n *\r\n * @param {ResizeObserverSPI} observer - Observer to be removed.\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.removeObserver = function (observer) {\r\n var observers = this.observers_;\r\n var index = observers.indexOf(observer);\r\n // Remove observer if it's present in registry.\r\n if (~index) {\r\n observers.splice(index, 1);\r\n }\r\n // Remove listeners if controller has no connected observers.\r\n if (!observers.length && this.connected_) {\r\n this.disconnect_();\r\n }\r\n };\r\n /**\r\n * Invokes the update of observers. It will continue running updates insofar\r\n * it detects changes.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.refresh = function () {\r\n var changesDetected = this.updateObservers_();\r\n // Continue running updates if changes have been detected as there might\r\n // be future ones caused by CSS transitions.\r\n if (changesDetected) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Updates every observer from observers list and notifies them of queued\r\n * entries.\r\n *\r\n * @private\r\n * @returns {boolean} Returns \"true\" if any observer has detected changes in\r\n * dimensions of it's elements.\r\n */\r\n ResizeObserverController.prototype.updateObservers_ = function () {\r\n // Collect observers that have active observations.\r\n var activeObservers = this.observers_.filter(function (observer) {\r\n return observer.gatherActive(), observer.hasActive();\r\n });\r\n // Deliver notifications in a separate cycle in order to avoid any\r\n // collisions between observers, e.g. when multiple instances of\r\n // ResizeObserver are tracking the same element and the callback of one\r\n // of them changes content dimensions of the observed target. Sometimes\r\n // this may result in notifications being blocked for the rest of observers.\r\n activeObservers.forEach(function (observer) { return observer.broadcastActive(); });\r\n return activeObservers.length > 0;\r\n };\r\n /**\r\n * Initializes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.connect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already added.\r\n if (!isBrowser || this.connected_) {\r\n return;\r\n }\r\n // Subscription to the \"Transitionend\" event is used as a workaround for\r\n // delayed transitions. This way it's possible to capture at least the\r\n // final state of an element.\r\n document.addEventListener('transitionend', this.onTransitionEnd_);\r\n window.addEventListener('resize', this.refresh);\r\n if (mutationObserverSupported) {\r\n this.mutationsObserver_ = new MutationObserver(this.refresh);\r\n this.mutationsObserver_.observe(document, {\r\n attributes: true,\r\n childList: true,\r\n characterData: true,\r\n subtree: true\r\n });\r\n }\r\n else {\r\n document.addEventListener('DOMSubtreeModified', this.refresh);\r\n this.mutationEventsAdded_ = true;\r\n }\r\n this.connected_ = true;\r\n };\r\n /**\r\n * Removes DOM listeners.\r\n *\r\n * @private\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.disconnect_ = function () {\r\n // Do nothing if running in a non-browser environment or if listeners\r\n // have been already removed.\r\n if (!isBrowser || !this.connected_) {\r\n return;\r\n }\r\n document.removeEventListener('transitionend', this.onTransitionEnd_);\r\n window.removeEventListener('resize', this.refresh);\r\n if (this.mutationsObserver_) {\r\n this.mutationsObserver_.disconnect();\r\n }\r\n if (this.mutationEventsAdded_) {\r\n document.removeEventListener('DOMSubtreeModified', this.refresh);\r\n }\r\n this.mutationsObserver_ = null;\r\n this.mutationEventsAdded_ = false;\r\n this.connected_ = false;\r\n };\r\n /**\r\n * \"Transitionend\" event handler.\r\n *\r\n * @private\r\n * @param {TransitionEvent} event\r\n * @returns {void}\r\n */\r\n ResizeObserverController.prototype.onTransitionEnd_ = function (_a) {\r\n var _b = _a.propertyName, propertyName = _b === void 0 ? '' : _b;\r\n // Detect whether transition may affect dimensions of an element.\r\n var isReflowProperty = transitionKeys.some(function (key) {\r\n return !!~propertyName.indexOf(key);\r\n });\r\n if (isReflowProperty) {\r\n this.refresh();\r\n }\r\n };\r\n /**\r\n * Returns instance of the ResizeObserverController.\r\n *\r\n * @returns {ResizeObserverController}\r\n */\r\n ResizeObserverController.getInstance = function () {\r\n if (!this.instance_) {\r\n this.instance_ = new ResizeObserverController();\r\n }\r\n return this.instance_;\r\n };\r\n /**\r\n * Holds reference to the controller's instance.\r\n *\r\n * @private {ResizeObserverController}\r\n */\r\n ResizeObserverController.instance_ = null;\r\n return ResizeObserverController;\r\n}());\n\n/**\r\n * Defines non-writable/enumerable properties of the provided target object.\r\n *\r\n * @param {Object} target - Object for which to define properties.\r\n * @param {Object} props - Properties to be defined.\r\n * @returns {Object} Target object.\r\n */\r\nvar defineConfigurable = (function (target, props) {\r\n for (var _i = 0, _a = Object.keys(props); _i < _a.length; _i++) {\r\n var key = _a[_i];\r\n Object.defineProperty(target, key, {\r\n value: props[key],\r\n enumerable: false,\r\n writable: false,\r\n configurable: true\r\n });\r\n }\r\n return target;\r\n});\n\n/**\r\n * Returns the global object associated with provided element.\r\n *\r\n * @param {Object} target\r\n * @returns {Object}\r\n */\r\nvar getWindowOf = (function (target) {\r\n // Assume that the element is an instance of Node, which means that it\r\n // has the \"ownerDocument\" property from which we can retrieve a\r\n // corresponding global object.\r\n var ownerGlobal = target && target.ownerDocument && target.ownerDocument.defaultView;\r\n // Return the local global object if it's not possible extract one from\r\n // provided element.\r\n return ownerGlobal || global$1;\r\n});\n\n// Placeholder of an empty content rectangle.\r\nvar emptyRect = createRectInit(0, 0, 0, 0);\r\n/**\r\n * Converts provided string to a number.\r\n *\r\n * @param {number|string} value\r\n * @returns {number}\r\n */\r\nfunction toFloat(value) {\r\n return parseFloat(value) || 0;\r\n}\r\n/**\r\n * Extracts borders size from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @param {...string} positions - Borders positions (top, right, ...)\r\n * @returns {number}\r\n */\r\nfunction getBordersSize(styles) {\r\n var positions = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n positions[_i - 1] = arguments[_i];\r\n }\r\n return positions.reduce(function (size, position) {\r\n var value = styles['border-' + position + '-width'];\r\n return size + toFloat(value);\r\n }, 0);\r\n}\r\n/**\r\n * Extracts paddings sizes from provided styles.\r\n *\r\n * @param {CSSStyleDeclaration} styles\r\n * @returns {Object} Paddings box.\r\n */\r\nfunction getPaddings(styles) {\r\n var positions = ['top', 'right', 'bottom', 'left'];\r\n var paddings = {};\r\n for (var _i = 0, positions_1 = positions; _i < positions_1.length; _i++) {\r\n var position = positions_1[_i];\r\n var value = styles['padding-' + position];\r\n paddings[position] = toFloat(value);\r\n }\r\n return paddings;\r\n}\r\n/**\r\n * Calculates content rectangle of provided SVG element.\r\n *\r\n * @param {SVGGraphicsElement} target - Element content rectangle of which needs\r\n * to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getSVGContentRect(target) {\r\n var bbox = target.getBBox();\r\n return createRectInit(0, 0, bbox.width, bbox.height);\r\n}\r\n/**\r\n * Calculates content rectangle of provided HTMLElement.\r\n *\r\n * @param {HTMLElement} target - Element for which to calculate the content rectangle.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getHTMLElementContentRect(target) {\r\n // Client width & height properties can't be\r\n // used exclusively as they provide rounded values.\r\n var clientWidth = target.clientWidth, clientHeight = target.clientHeight;\r\n // By this condition we can catch all non-replaced inline, hidden and\r\n // detached elements. Though elements with width & height properties less\r\n // than 0.5 will be discarded as well.\r\n //\r\n // Without it we would need to implement separate methods for each of\r\n // those cases and it's not possible to perform a precise and performance\r\n // effective test for hidden elements. E.g. even jQuery's ':visible' filter\r\n // gives wrong results for elements with width & height less than 0.5.\r\n if (!clientWidth && !clientHeight) {\r\n return emptyRect;\r\n }\r\n var styles = getWindowOf(target).getComputedStyle(target);\r\n var paddings = getPaddings(styles);\r\n var horizPad = paddings.left + paddings.right;\r\n var vertPad = paddings.top + paddings.bottom;\r\n // Computed styles of width & height are being used because they are the\r\n // only dimensions available to JS that contain non-rounded values. It could\r\n // be possible to utilize the getBoundingClientRect if only it's data wasn't\r\n // affected by CSS transformations let alone paddings, borders and scroll bars.\r\n var width = toFloat(styles.width), height = toFloat(styles.height);\r\n // Width & height include paddings and borders when the 'border-box' box\r\n // model is applied (except for IE).\r\n if (styles.boxSizing === 'border-box') {\r\n // Following conditions are required to handle Internet Explorer which\r\n // doesn't include paddings and borders to computed CSS dimensions.\r\n //\r\n // We can say that if CSS dimensions + paddings are equal to the \"client\"\r\n // properties then it's either IE, and thus we don't need to subtract\r\n // anything, or an element merely doesn't have paddings/borders styles.\r\n if (Math.round(width + horizPad) !== clientWidth) {\r\n width -= getBordersSize(styles, 'left', 'right') + horizPad;\r\n }\r\n if (Math.round(height + vertPad) !== clientHeight) {\r\n height -= getBordersSize(styles, 'top', 'bottom') + vertPad;\r\n }\r\n }\r\n // Following steps can't be applied to the document's root element as its\r\n // client[Width/Height] properties represent viewport area of the window.\r\n // Besides, it's as well not necessary as the <html> itself neither has\r\n // rendered scroll bars nor it can be clipped.\r\n if (!isDocumentElement(target)) {\r\n // In some browsers (only in Firefox, actually) CSS width & height\r\n // include scroll bars size which can be removed at this step as scroll\r\n // bars are the only difference between rounded dimensions + paddings\r\n // and \"client\" properties, though that is not always true in Chrome.\r\n var vertScrollbar = Math.round(width + horizPad) - clientWidth;\r\n var horizScrollbar = Math.round(height + vertPad) - clientHeight;\r\n // Chrome has a rather weird rounding of \"client\" properties.\r\n // E.g. for an element with content width of 314.2px it sometimes gives\r\n // the client width of 315px and for the width of 314.7px it may give\r\n // 314px. And it doesn't happen all the time. So just ignore this delta\r\n // as a non-relevant.\r\n if (Math.abs(vertScrollbar) !== 1) {\r\n width -= vertScrollbar;\r\n }\r\n if (Math.abs(horizScrollbar) !== 1) {\r\n height -= horizScrollbar;\r\n }\r\n }\r\n return createRectInit(paddings.left, paddings.top, width, height);\r\n}\r\n/**\r\n * Checks whether provided element is an instance of the SVGGraphicsElement.\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nvar isSVGGraphicsElement = (function () {\r\n // Some browsers, namely IE and Edge, don't have the SVGGraphicsElement\r\n // interface.\r\n if (typeof SVGGraphicsElement !== 'undefined') {\r\n return function (target) { return target instanceof getWindowOf(target).SVGGraphicsElement; };\r\n }\r\n // If it's so, then check that element is at least an instance of the\r\n // SVGElement and that it has the \"getBBox\" method.\r\n // eslint-disable-next-line no-extra-parens\r\n return function (target) { return (target instanceof getWindowOf(target).SVGElement &&\r\n typeof target.getBBox === 'function'); };\r\n})();\r\n/**\r\n * Checks whether provided element is a document element (<html>).\r\n *\r\n * @param {Element} target - Element to be checked.\r\n * @returns {boolean}\r\n */\r\nfunction isDocumentElement(target) {\r\n return target === getWindowOf(target).document.documentElement;\r\n}\r\n/**\r\n * Calculates an appropriate content rectangle for provided html or svg element.\r\n *\r\n * @param {Element} target - Element content rectangle of which needs to be calculated.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction getContentRect(target) {\r\n if (!isBrowser) {\r\n return emptyRect;\r\n }\r\n if (isSVGGraphicsElement(target)) {\r\n return getSVGContentRect(target);\r\n }\r\n return getHTMLElementContentRect(target);\r\n}\r\n/**\r\n * Creates rectangle with an interface of the DOMRectReadOnly.\r\n * Spec: https://drafts.fxtf.org/geometry/#domrectreadonly\r\n *\r\n * @param {DOMRectInit} rectInit - Object with rectangle's x/y coordinates and dimensions.\r\n * @returns {DOMRectReadOnly}\r\n */\r\nfunction createReadOnlyRect(_a) {\r\n var x = _a.x, y = _a.y, width = _a.width, height = _a.height;\r\n // If DOMRectReadOnly is available use it as a prototype for the rectangle.\r\n var Constr = typeof DOMRectReadOnly !== 'undefined' ? DOMRectReadOnly : Object;\r\n var rect = Object.create(Constr.prototype);\r\n // Rectangle's properties are not writable and non-enumerable.\r\n defineConfigurable(rect, {\r\n x: x, y: y, width: width, height: height,\r\n top: y,\r\n right: x + width,\r\n bottom: height + y,\r\n left: x\r\n });\r\n return rect;\r\n}\r\n/**\r\n * Creates DOMRectInit object based on the provided dimensions and the x/y coordinates.\r\n * Spec: https://drafts.fxtf.org/geometry/#dictdef-domrectinit\r\n *\r\n * @param {number} x - X coordinate.\r\n * @param {number} y - Y coordinate.\r\n * @param {number} width - Rectangle's width.\r\n * @param {number} height - Rectangle's height.\r\n * @returns {DOMRectInit}\r\n */\r\nfunction createRectInit(x, y, width, height) {\r\n return { x: x, y: y, width: width, height: height };\r\n}\n\n/**\r\n * Class that is responsible for computations of the content rectangle of\r\n * provided DOM element and for keeping track of it's changes.\r\n */\r\nvar ResizeObservation = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObservation.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n */\r\n function ResizeObservation(target) {\r\n /**\r\n * Broadcasted width of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastWidth = 0;\r\n /**\r\n * Broadcasted height of content rectangle.\r\n *\r\n * @type {number}\r\n */\r\n this.broadcastHeight = 0;\r\n /**\r\n * Reference to the last observed content rectangle.\r\n *\r\n * @private {DOMRectInit}\r\n */\r\n this.contentRect_ = createRectInit(0, 0, 0, 0);\r\n this.target = target;\r\n }\r\n /**\r\n * Updates content rectangle and tells whether it's width or height properties\r\n * have changed since the last broadcast.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObservation.prototype.isActive = function () {\r\n var rect = getContentRect(this.target);\r\n this.contentRect_ = rect;\r\n return (rect.width !== this.broadcastWidth ||\r\n rect.height !== this.broadcastHeight);\r\n };\r\n /**\r\n * Updates 'broadcastWidth' and 'broadcastHeight' properties with a data\r\n * from the corresponding properties of the last observed content rectangle.\r\n *\r\n * @returns {DOMRectInit} Last observed content rectangle.\r\n */\r\n ResizeObservation.prototype.broadcastRect = function () {\r\n var rect = this.contentRect_;\r\n this.broadcastWidth = rect.width;\r\n this.broadcastHeight = rect.height;\r\n return rect;\r\n };\r\n return ResizeObservation;\r\n}());\n\nvar ResizeObserverEntry = /** @class */ (function () {\r\n /**\r\n * Creates an instance of ResizeObserverEntry.\r\n *\r\n * @param {Element} target - Element that is being observed.\r\n * @param {DOMRectInit} rectInit - Data of the element's content rectangle.\r\n */\r\n function ResizeObserverEntry(target, rectInit) {\r\n var contentRect = createReadOnlyRect(rectInit);\r\n // According to the specification following properties are not writable\r\n // and are also not enumerable in the native implementation.\r\n //\r\n // Property accessors are not being used as they'd require to define a\r\n // private WeakMap storage which may cause memory leaks in browsers that\r\n // don't support this type of collections.\r\n defineConfigurable(this, { target: target, contentRect: contentRect });\r\n }\r\n return ResizeObserverEntry;\r\n}());\n\nvar ResizeObserverSPI = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback function that is invoked\r\n * when one of the observed elements changes it's content dimensions.\r\n * @param {ResizeObserverController} controller - Controller instance which\r\n * is responsible for the updates of observer.\r\n * @param {ResizeObserver} callbackCtx - Reference to the public\r\n * ResizeObserver instance which will be passed to callback function.\r\n */\r\n function ResizeObserverSPI(callback, controller, callbackCtx) {\r\n /**\r\n * Collection of resize observations that have detected changes in dimensions\r\n * of elements.\r\n *\r\n * @private {Array<ResizeObservation>}\r\n */\r\n this.activeObservations_ = [];\r\n /**\r\n * Registry of the ResizeObservation instances.\r\n *\r\n * @private {Map<Element, ResizeObservation>}\r\n */\r\n this.observations_ = new MapShim();\r\n if (typeof callback !== 'function') {\r\n throw new TypeError('The callback provided as parameter 1 is not a function.');\r\n }\r\n this.callback_ = callback;\r\n this.controller_ = controller;\r\n this.callbackCtx_ = callbackCtx;\r\n }\r\n /**\r\n * Starts observing provided element.\r\n *\r\n * @param {Element} target - Element to be observed.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.observe = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is already being observed.\r\n if (observations.has(target)) {\r\n return;\r\n }\r\n observations.set(target, new ResizeObservation(target));\r\n this.controller_.addObserver(this);\r\n // Force the update of observations.\r\n this.controller_.refresh();\r\n };\r\n /**\r\n * Stops observing provided element.\r\n *\r\n * @param {Element} target - Element to stop observing.\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.unobserve = function (target) {\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n // Do nothing if current environment doesn't have the Element interface.\r\n if (typeof Element === 'undefined' || !(Element instanceof Object)) {\r\n return;\r\n }\r\n if (!(target instanceof getWindowOf(target).Element)) {\r\n throw new TypeError('parameter 1 is not of type \"Element\".');\r\n }\r\n var observations = this.observations_;\r\n // Do nothing if element is not being observed.\r\n if (!observations.has(target)) {\r\n return;\r\n }\r\n observations.delete(target);\r\n if (!observations.size) {\r\n this.controller_.removeObserver(this);\r\n }\r\n };\r\n /**\r\n * Stops observing all elements.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.disconnect = function () {\r\n this.clearActive();\r\n this.observations_.clear();\r\n this.controller_.removeObserver(this);\r\n };\r\n /**\r\n * Collects observation instances the associated element of which has changed\r\n * it's content rectangle.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.gatherActive = function () {\r\n var _this = this;\r\n this.clearActive();\r\n this.observations_.forEach(function (observation) {\r\n if (observation.isActive()) {\r\n _this.activeObservations_.push(observation);\r\n }\r\n });\r\n };\r\n /**\r\n * Invokes initial callback function with a list of ResizeObserverEntry\r\n * instances collected from active resize observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.broadcastActive = function () {\r\n // Do nothing if observer doesn't have active observations.\r\n if (!this.hasActive()) {\r\n return;\r\n }\r\n var ctx = this.callbackCtx_;\r\n // Create ResizeObserverEntry instance for every active observation.\r\n var entries = this.activeObservations_.map(function (observation) {\r\n return new ResizeObserverEntry(observation.target, observation.broadcastRect());\r\n });\r\n this.callback_.call(ctx, entries, ctx);\r\n this.clearActive();\r\n };\r\n /**\r\n * Clears the collection of active observations.\r\n *\r\n * @returns {void}\r\n */\r\n ResizeObserverSPI.prototype.clearActive = function () {\r\n this.activeObservations_.splice(0);\r\n };\r\n /**\r\n * Tells whether observer has active observations.\r\n *\r\n * @returns {boolean}\r\n */\r\n ResizeObserverSPI.prototype.hasActive = function () {\r\n return this.activeObservations_.length > 0;\r\n };\r\n return ResizeObserverSPI;\r\n}());\n\n// Registry of internal observers. If WeakMap is not available use current shim\r\n// for the Map collection as it has all required methods and because WeakMap\r\n// can't be fully polyfilled anyway.\r\nvar observers = typeof WeakMap !== 'undefined' ? new WeakMap() : new MapShim();\r\n/**\r\n * ResizeObserver API. Encapsulates the ResizeObserver SPI implementation\r\n * exposing only those methods and properties that are defined in the spec.\r\n */\r\nvar ResizeObserver = /** @class */ (function () {\r\n /**\r\n * Creates a new instance of ResizeObserver.\r\n *\r\n * @param {ResizeObserverCallback} callback - Callback that is invoked when\r\n * dimensions of the observed elements change.\r\n */\r\n function ResizeObserver(callback) {\r\n if (!(this instanceof ResizeObserver)) {\r\n throw new TypeError('Cannot call a class as a function.');\r\n }\r\n if (!arguments.length) {\r\n throw new TypeError('1 argument required, but only 0 present.');\r\n }\r\n var controller = ResizeObserverController.getInstance();\r\n var observer = new ResizeObserverSPI(callback, controller, this);\r\n observers.set(this, observer);\r\n }\r\n return ResizeObserver;\r\n}());\r\n// Expose public methods of ResizeObserver.\r\n[\r\n 'observe',\r\n 'unobserve',\r\n 'disconnect'\r\n].forEach(function (method) {\r\n ResizeObserver.prototype[method] = function () {\r\n var _a;\r\n return (_a = observers.get(this))[method].apply(_a, arguments);\r\n };\r\n});\n\nvar index = (function () {\r\n // Export existing implementation if available.\r\n if (typeof global$1.ResizeObserver !== 'undefined') {\r\n return global$1.ResizeObserver;\r\n }\r\n return ResizeObserver;\r\n})();\n\nexport default index;\n","import ResizeObserver from 'resize-observer-polyfill';\n// =============================== Const ===============================\nvar elementListeners = new Map();\nfunction onResize(entities) {\n entities.forEach(function (entity) {\n var _elementListeners$get;\n var target = entity.target;\n (_elementListeners$get = elementListeners.get(target)) === null || _elementListeners$get === void 0 ? void 0 : _elementListeners$get.forEach(function (listener) {\n return listener(target);\n });\n });\n}\n// Note: ResizeObserver polyfill not support option to measure border-box resize\nvar resizeObserver = new ResizeObserver(onResize);\n// Dev env only\nexport var _el = process.env.NODE_ENV !== 'production' ? elementListeners : null; // eslint-disable-line\nexport var _rs = process.env.NODE_ENV !== 'production' ? onResize : null; // eslint-disable-line\n// ============================== Observe ==============================\nexport function observe(element, callback) {\n if (!elementListeners.has(element)) {\n elementListeners.set(element, new Set());\n resizeObserver.observe(element);\n }\n elementListeners.get(element).add(callback);\n}\nexport function unobserve(element, callback) {\n if (elementListeners.has(element)) {\n elementListeners.get(element).delete(callback);\n if (!elementListeners.get(element).size) {\n resizeObserver.unobserve(element);\n elementListeners.delete(element);\n }\n }\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport * as React from 'react';\n/**\n * Fallback to findDOMNode if origin ref do not provide any dom element\n */\nvar DomWrapper = /*#__PURE__*/function (_React$Component) {\n _inherits(DomWrapper, _React$Component);\n var _super = _createSuper(DomWrapper);\n function DomWrapper() {\n _classCallCheck(this, DomWrapper);\n return _super.apply(this, arguments);\n }\n _createClass(DomWrapper, [{\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n return DomWrapper;\n}(React.Component);\nexport { DomWrapper as default };","import * as React from 'react';\nexport var CollectionContext = /*#__PURE__*/React.createContext(null);\n/**\n * Collect all the resize event from children ResizeObserver\n */\nexport function Collection(_ref) {\n var children = _ref.children,\n onBatchResize = _ref.onBatchResize;\n var resizeIdRef = React.useRef(0);\n var resizeInfosRef = React.useRef([]);\n var onCollectionResize = React.useContext(CollectionContext);\n var onResize = React.useCallback(function (size, element, data) {\n resizeIdRef.current += 1;\n var currentId = resizeIdRef.current;\n resizeInfosRef.current.push({\n size: size,\n element: element,\n data: data\n });\n Promise.resolve().then(function () {\n if (currentId === resizeIdRef.current) {\n onBatchResize === null || onBatchResize === void 0 ? void 0 : onBatchResize(resizeInfosRef.current);\n resizeInfosRef.current = [];\n }\n });\n // Continue bubbling if parent exist\n onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(size, element, data);\n }, [onBatchResize, onCollectionResize]);\n return /*#__PURE__*/React.createElement(CollectionContext.Provider, {\n value: onResize\n }, children);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { observe, unobserve } from '../utils/observerUtil';\nimport DomWrapper from './DomWrapper';\nimport { CollectionContext } from '../Collection';\nfunction SingleObserver(props, ref) {\n var children = props.children,\n disabled = props.disabled;\n var elementRef = React.useRef(null);\n var wrapperRef = React.useRef(null);\n var onCollectionResize = React.useContext(CollectionContext);\n // =========================== Children ===========================\n var isRenderProps = typeof children === 'function';\n var mergedChildren = isRenderProps ? children(elementRef) : children;\n // ============================= Size =============================\n var sizeRef = React.useRef({\n width: -1,\n height: -1,\n offsetWidth: -1,\n offsetHeight: -1\n });\n // ============================= Ref ==============================\n var canRef = !isRenderProps && /*#__PURE__*/React.isValidElement(mergedChildren) && supportRef(mergedChildren);\n var originRef = canRef ? mergedChildren.ref : null;\n var mergedRef = React.useMemo(function () {\n return composeRef(originRef, elementRef);\n }, [originRef, elementRef]);\n var getDom = function getDom() {\n return findDOMNode(elementRef.current) || findDOMNode(wrapperRef.current);\n };\n React.useImperativeHandle(ref, function () {\n return getDom();\n });\n // =========================== Observe ============================\n var propsRef = React.useRef(props);\n propsRef.current = props;\n // Handler\n var onInternalResize = React.useCallback(function (target) {\n var _propsRef$current = propsRef.current,\n onResize = _propsRef$current.onResize,\n data = _propsRef$current.data;\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n var offsetWidth = target.offsetWidth,\n offsetHeight = target.offsetHeight;\n /**\n * Resize observer trigger when content size changed.\n * In most case we just care about element size,\n * let's use `boundary` instead of `contentRect` here to avoid shaking.\n */\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n if (sizeRef.current.width !== fixedWidth || sizeRef.current.height !== fixedHeight || sizeRef.current.offsetWidth !== offsetWidth || sizeRef.current.offsetHeight !== offsetHeight) {\n var size = {\n width: fixedWidth,\n height: fixedHeight,\n offsetWidth: offsetWidth,\n offsetHeight: offsetHeight\n };\n sizeRef.current = size;\n // IE is strange, right?\n var mergedOffsetWidth = offsetWidth === Math.round(width) ? width : offsetWidth;\n var mergedOffsetHeight = offsetHeight === Math.round(height) ? height : offsetHeight;\n var sizeInfo = _objectSpread(_objectSpread({}, size), {}, {\n offsetWidth: mergedOffsetWidth,\n offsetHeight: mergedOffsetHeight\n });\n // Let collection know what happened\n onCollectionResize === null || onCollectionResize === void 0 ? void 0 : onCollectionResize(sizeInfo, target, data);\n if (onResize) {\n // defer the callback but not defer to next frame\n Promise.resolve().then(function () {\n onResize(sizeInfo, target);\n });\n }\n }\n }, []);\n // Dynamic observe\n React.useEffect(function () {\n var currentElement = getDom();\n if (currentElement && !disabled) {\n observe(currentElement, onInternalResize);\n }\n return function () {\n return unobserve(currentElement, onInternalResize);\n };\n }, [elementRef.current, disabled]);\n // ============================ Render ============================\n return /*#__PURE__*/React.createElement(DomWrapper, {\n ref: wrapperRef\n }, canRef ? /*#__PURE__*/React.cloneElement(mergedChildren, {\n ref: mergedRef\n }) : mergedChildren);\n}\nvar RefSingleObserver = /*#__PURE__*/React.forwardRef(SingleObserver);\nif (process.env.NODE_ENV !== 'production') {\n RefSingleObserver.displayName = 'SingleObserver';\n}\nexport default RefSingleObserver;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport { warning } from \"rc-util/es/warning\";\nimport SingleObserver from './SingleObserver';\nimport { Collection } from './Collection';\nvar INTERNAL_PREFIX_KEY = 'rc-observer-key';\nimport { _rs } from './utils/observerUtil';\nexport { /** @private Test only for mock trigger resize event */\n_rs };\nfunction ResizeObserver(props, ref) {\n var children = props.children;\n var childNodes = typeof children === 'function' ? [children] : toArray(children);\n if (process.env.NODE_ENV !== 'production') {\n if (childNodes.length > 1) {\n warning(false, 'Find more than one child node with `children` in ResizeObserver. Please use ResizeObserver.Collection instead.');\n } else if (childNodes.length === 0) {\n warning(false, '`children` of ResizeObserver is empty. Nothing is in observe.');\n }\n }\n return childNodes.map(function (child, index) {\n var key = (child === null || child === void 0 ? void 0 : child.key) || \"\".concat(INTERNAL_PREFIX_KEY, \"-\").concat(index);\n return /*#__PURE__*/React.createElement(SingleObserver, _extends({}, props, {\n key: key,\n ref: index === 0 ? ref : undefined\n }), child);\n });\n}\nvar RefResizeObserver = /*#__PURE__*/React.forwardRef(ResizeObserver);\nif (process.env.NODE_ENV !== 'production') {\n RefResizeObserver.displayName = 'ResizeObserver';\n}\nRefResizeObserver.Collection = Collection;\nexport default RefResizeObserver;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nexport default function omit(obj, fields) {\n var clone = _objectSpread({}, obj);\n if (Array.isArray(fields)) {\n fields.forEach(function (key) {\n delete clone[key];\n });\n }\n return clone;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n return arr2;\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport default murmur2;\n","import objectWithoutPropertiesLoose from \"./objectWithoutPropertiesLoose.js\";\nexport default function _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport warning from \"./warning\";\n\n/**\n * Deeply compares two object literals.\n * @param obj1 object 1\n * @param obj2 object 2\n * @param shallow shallow compare\n * @returns\n */\nfunction isEqual(obj1, obj2) {\n var shallow = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n // https://github.com/mapbox/mapbox-gl-js/pull/5979/files#diff-fde7145050c47cc3a306856efd5f9c3016e86e859de9afbd02c879be5067e58f\n var refSet = new Set();\n function deepEqual(a, b) {\n var level = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 1;\n var circular = refSet.has(a);\n warning(!circular, 'Warning: There may be circular references');\n if (circular) {\n return false;\n }\n if (a === b) {\n return true;\n }\n if (shallow && level > 1) {\n return false;\n }\n refSet.add(a);\n var newLevel = level + 1;\n if (Array.isArray(a)) {\n if (!Array.isArray(b) || a.length !== b.length) {\n return false;\n }\n for (var i = 0; i < a.length; i++) {\n if (!deepEqual(a[i], b[i], newLevel)) {\n return false;\n }\n }\n return true;\n }\n if (a && b && _typeof(a) === 'object' && _typeof(b) === 'object') {\n var keys = Object.keys(a);\n if (keys.length !== Object.keys(b).length) {\n return false;\n }\n return keys.every(function (key) {\n return deepEqual(a[key], b[key], newLevel);\n });\n }\n // other\n return false;\n }\n return deepEqual(obj1, obj2);\n}\nexport default isEqual;","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n// [times, realValue]\nvar Entity = /*#__PURE__*/function () {\n function Entity() {\n _classCallCheck(this, Entity);\n _defineProperty(this, \"cache\", new Map());\n }\n _createClass(Entity, [{\n key: \"get\",\n value: function get(keys) {\n return this.cache.get(keys.join('%')) || null;\n }\n }, {\n key: \"update\",\n value: function update(keys, valueFn) {\n var path = keys.join('%');\n var prevValue = this.cache.get(path);\n var nextValue = valueFn(prevValue);\n if (nextValue === null) {\n this.cache.delete(path);\n } else {\n this.cache.set(path, nextValue);\n }\n }\n }]);\n return Entity;\n}();\nexport default Entity;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"];\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport * as React from 'react';\nimport CacheEntity from \"./Cache\";\nexport var ATTR_TOKEN = 'data-token-hash';\nexport var ATTR_MARK = 'data-css-hash';\nexport var ATTR_DEV_CACHE_PATH = 'data-dev-cache-path';\n\n// Mark css-in-js instance in style element\nexport var CSS_IN_JS_INSTANCE = '__cssinjs_instance__';\nexport var CSS_IN_JS_INSTANCE_ID = Math.random().toString(12).slice(2);\nexport function createCache() {\n if (typeof document !== 'undefined' && document.head && document.body) {\n var styles = document.body.querySelectorAll(\"style[\".concat(ATTR_MARK, \"]\")) || [];\n var firstChild = document.head.firstChild;\n Array.from(styles).forEach(function (style) {\n style[CSS_IN_JS_INSTANCE] = style[CSS_IN_JS_INSTANCE] || CSS_IN_JS_INSTANCE_ID;\n\n // Not force move if no head\n document.head.insertBefore(style, firstChild);\n });\n\n // Deduplicate of moved styles\n var styleHash = {};\n Array.from(document.querySelectorAll(\"style[\".concat(ATTR_MARK, \"]\"))).forEach(function (style) {\n var hash = style.getAttribute(ATTR_MARK);\n if (styleHash[hash]) {\n if (style[CSS_IN_JS_INSTANCE] === CSS_IN_JS_INSTANCE_ID) {\n var _style$parentNode;\n (_style$parentNode = style.parentNode) === null || _style$parentNode === void 0 ? void 0 : _style$parentNode.removeChild(style);\n }\n } else {\n styleHash[hash] = true;\n }\n });\n }\n return new CacheEntity();\n}\nvar StyleContext = /*#__PURE__*/React.createContext({\n hashPriority: 'low',\n cache: createCache(),\n defaultCache: true\n});\nexport var StyleProvider = function StyleProvider(props) {\n var children = props.children,\n restProps = _objectWithoutProperties(props, _excluded);\n var parentContext = React.useContext(StyleContext);\n var context = useMemo(function () {\n var mergedContext = _objectSpread({}, parentContext);\n Object.keys(restProps).forEach(function (key) {\n var value = restProps[key];\n if (restProps[key] !== undefined) {\n mergedContext[key] = value;\n }\n });\n var cache = restProps.cache;\n mergedContext.cache = mergedContext.cache || createCache();\n mergedContext.defaultCache = !cache && parentContext.defaultCache;\n return mergedContext;\n }, [parentContext, restProps], function (prev, next) {\n return !isEqual(prev[0], next[0], true) || !isEqual(prev[1], next[1], true);\n });\n return /*#__PURE__*/React.createElement(StyleContext.Provider, {\n value: context\n }, children);\n};\nexport default StyleContext;","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0);\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i[\"return\"] && (_r = _i[\"return\"](), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}","function useProdHMR() {\n return false;\n}\nvar webpackHMR = false;\nfunction useDevHMR() {\n return webpackHMR;\n}\nexport default process.env.NODE_ENV === 'production' ? useProdHMR : useDevHMR;\n\n// Webpack `module.hot.accept` do not support any deps update trigger\n// We have to hack handler to force mark as HRM\nif (process.env.NODE_ENV !== 'production' && typeof module !== 'undefined' && module && module.hot) {\n var win = window;\n if (typeof win.webpackHotUpdate === 'function') {\n var originWebpackHotUpdate = win.webpackHotUpdate;\n win.webpackHotUpdate = function () {\n webpackHMR = true;\n setTimeout(function () {\n webpackHMR = false;\n }, 0);\n return originWebpackHotUpdate.apply(void 0, arguments);\n };\n }\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport StyleContext from \"../StyleContext\";\nimport useHMR from \"./useHMR\";\nexport default function useClientCache(prefix, keyPath, cacheFn, onCacheRemove) {\n var _React$useContext = React.useContext(StyleContext),\n globalCache = _React$useContext.cache;\n var fullPath = [prefix].concat(_toConsumableArray(keyPath));\n var HMRUpdate = useHMR();\n\n // Create cache\n React.useMemo(function () {\n globalCache.update(fullPath, function (prevCache) {\n var _ref = prevCache || [],\n _ref2 = _slicedToArray(_ref, 2),\n _ref2$ = _ref2[0],\n times = _ref2$ === void 0 ? 0 : _ref2$,\n cache = _ref2[1];\n\n // HMR should always ignore cache since developer may change it\n var tmpCache = cache;\n if (process.env.NODE_ENV !== 'production' && cache && HMRUpdate) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(tmpCache, HMRUpdate);\n tmpCache = null;\n }\n var mergedCache = tmpCache || cacheFn();\n return [times + 1, mergedCache];\n });\n }, /* eslint-disable react-hooks/exhaustive-deps */\n [fullPath.join('_')]\n /* eslint-enable */);\n\n // Remove if no need anymore\n React.useEffect(function () {\n return function () {\n globalCache.update(fullPath, function (prevCache) {\n var _ref3 = prevCache || [],\n _ref4 = _slicedToArray(_ref3, 2),\n _ref4$ = _ref4[0],\n times = _ref4$ === void 0 ? 0 : _ref4$,\n cache = _ref4[1];\n var nextCount = times - 1;\n if (nextCount === 0) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(cache, false);\n return null;\n }\n return [times - 1, cache];\n });\n };\n }, fullPath);\n return globalCache.get(fullPath)[1];\n}","export default function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}","export default function contains(root, n) {\n if (!root) {\n return false;\n }\n\n // Use native if support\n if (root.contains) {\n return root.contains(n);\n }\n\n // `document.contains` not support with IE11\n var node = n;\n while (node) {\n if (node === root) {\n return true;\n }\n node = node.parentNode;\n }\n return false;\n}","import canUseDom from \"./canUseDom\";\nimport contains from \"./contains\";\nvar APPEND_ORDER = 'data-rc-order';\nvar MARK_KEY = \"rc-util-key\";\nvar containerCache = new Map();\nfunction getMark() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n mark = _ref.mark;\n if (mark) {\n return mark.startsWith('data-') ? mark : \"data-\".concat(mark);\n }\n return MARK_KEY;\n}\nfunction getContainer(option) {\n if (option.attachTo) {\n return option.attachTo;\n }\n var head = document.querySelector('head');\n return head || document.body;\n}\nfunction getOrder(prepend) {\n if (prepend === 'queue') {\n return 'prependQueue';\n }\n return prepend ? 'prepend' : 'append';\n}\n\n/**\n * Find style which inject by rc-util\n */\nfunction findStyles(container) {\n return Array.from((containerCache.get(container) || container).children).filter(function (node) {\n return node.tagName === 'STYLE';\n });\n}\nexport function injectCSS(css) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!canUseDom()) {\n return null;\n }\n var csp = option.csp,\n prepend = option.prepend;\n var styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, getOrder(prepend));\n if (csp !== null && csp !== void 0 && csp.nonce) {\n styleNode.nonce = csp === null || csp === void 0 ? void 0 : csp.nonce;\n }\n styleNode.innerHTML = css;\n var container = getContainer(option);\n var firstChild = container.firstChild;\n if (prepend) {\n // If is queue `prepend`, it will prepend first style and then append rest style\n if (prepend === 'queue') {\n var existStyle = findStyles(container).filter(function (node) {\n return ['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER));\n });\n if (existStyle.length) {\n container.insertBefore(styleNode, existStyle[existStyle.length - 1].nextSibling);\n return styleNode;\n }\n }\n\n // Use `insertBefore` as `prepend`\n container.insertBefore(styleNode, firstChild);\n } else {\n container.appendChild(styleNode);\n }\n return styleNode;\n}\nfunction findExistNode(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var container = getContainer(option);\n return findStyles(container).find(function (node) {\n return node.getAttribute(getMark(option)) === key;\n });\n}\nexport function removeCSS(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var existNode = findExistNode(key, option);\n if (existNode) {\n var container = getContainer(option);\n container.removeChild(existNode);\n }\n}\n\n/**\n * qiankun will inject `appendChild` to insert into other\n */\nfunction syncRealContainer(container, option) {\n var cachedRealContainer = containerCache.get(container);\n\n // Find real container when not cached or cached container removed\n if (!cachedRealContainer || !contains(document, cachedRealContainer)) {\n var placeholderStyle = injectCSS('', option);\n var parentNode = placeholderStyle.parentNode;\n containerCache.set(container, parentNode);\n container.removeChild(placeholderStyle);\n }\n}\n\n/**\n * manually clear container cache to avoid global cache in unit testes\n */\nexport function clearContainerCache() {\n containerCache.clear();\n}\nexport function updateCSS(css, key) {\n var option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var container = getContainer(option);\n\n // Sync real parent\n syncRealContainer(container, option);\n var existNode = findExistNode(key, option);\n if (existNode) {\n var _option$csp, _option$csp2;\n if ((_option$csp = option.csp) !== null && _option$csp !== void 0 && _option$csp.nonce && existNode.nonce !== ((_option$csp2 = option.csp) === null || _option$csp2 === void 0 ? void 0 : _option$csp2.nonce)) {\n var _option$csp3;\n existNode.nonce = (_option$csp3 = option.csp) === null || _option$csp3 === void 0 ? void 0 : _option$csp3.nonce;\n }\n if (existNode.innerHTML !== css) {\n existNode.innerHTML = css;\n }\n return existNode;\n }\n var newNode = injectCSS(css, option);\n newNode.setAttribute(getMark(option), key);\n return newNode;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport hash from '@emotion/hash';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { removeCSS, updateCSS } from \"rc-util/es/Dom/dynamicCSS\";\nexport function flattenToken(token) {\n var str = '';\n Object.keys(token).forEach(function (key) {\n var value = token[key];\n str += key;\n if (value && _typeof(value) === 'object') {\n str += flattenToken(value);\n } else {\n str += value;\n }\n });\n return str;\n}\n\n/**\n * Convert derivative token to key string\n */\nexport function token2key(token, salt) {\n return hash(\"\".concat(salt, \"_\").concat(flattenToken(token)));\n}\nvar layerKey = \"layer-\".concat(Date.now(), \"-\").concat(Math.random()).replace(/\\./g, '');\nvar layerWidth = '903px';\nfunction supportSelector(styleStr, handleElement) {\n if (canUseDom()) {\n var _ele$parentNode;\n updateCSS(styleStr, layerKey);\n var _ele = document.createElement('div');\n _ele.style.position = 'fixed';\n _ele.style.left = '0';\n _ele.style.top = '0';\n handleElement === null || handleElement === void 0 ? void 0 : handleElement(_ele);\n document.body.appendChild(_ele);\n if (process.env.NODE_ENV !== 'production') {\n _ele.innerHTML = 'Test';\n _ele.style.zIndex = '9999999';\n }\n var support = getComputedStyle(_ele).width === layerWidth;\n (_ele$parentNode = _ele.parentNode) === null || _ele$parentNode === void 0 ? void 0 : _ele$parentNode.removeChild(_ele);\n removeCSS(layerKey);\n return support;\n }\n return false;\n}\nvar canLayer = undefined;\nexport function supportLayer() {\n if (canLayer === undefined) {\n canLayer = supportSelector(\"@layer \".concat(layerKey, \" { .\").concat(layerKey, \" { width: \").concat(layerWidth, \"!important; } }\"), function (ele) {\n ele.className = layerKey;\n });\n }\n return canLayer;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport hash from '@emotion/hash';\nimport { ATTR_TOKEN, CSS_IN_JS_INSTANCE, CSS_IN_JS_INSTANCE_ID } from \"../StyleContext\";\nimport useGlobalCache from \"./useGlobalCache\";\nimport { flattenToken, token2key } from \"../util\";\nvar EMPTY_OVERRIDE = {};\n\n// Generate different prefix to make user selector break in production env.\n// This helps developer not to do style override directly on the hash id.\nvar hashPrefix = process.env.NODE_ENV !== 'production' ? 'css-dev-only-do-not-override' : 'css';\nvar tokenKeys = new Map();\nfunction recordCleanToken(tokenKey) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) + 1);\n}\nfunction removeStyleTags(key) {\n if (typeof document !== 'undefined') {\n var styles = document.querySelectorAll(\"style[\".concat(ATTR_TOKEN, \"=\\\"\").concat(key, \"\\\"]\"));\n styles.forEach(function (style) {\n if (style[CSS_IN_JS_INSTANCE] === CSS_IN_JS_INSTANCE_ID) {\n var _style$parentNode;\n (_style$parentNode = style.parentNode) === null || _style$parentNode === void 0 ? void 0 : _style$parentNode.removeChild(style);\n }\n });\n }\n}\n\n// Remove will check current keys first\nfunction cleanTokenStyle(tokenKey) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) - 1);\n var tokenKeyList = Array.from(tokenKeys.keys());\n var cleanableKeyList = tokenKeyList.filter(function (key) {\n var count = tokenKeys.get(key) || 0;\n return count <= 0;\n });\n if (cleanableKeyList.length < tokenKeyList.length) {\n cleanableKeyList.forEach(function (key) {\n removeStyleTags(key);\n tokenKeys.delete(key);\n });\n }\n}\n\n/**\n * Cache theme derivative token as global shared one\n * @param theme Theme entity\n * @param tokens List of tokens, used for cache. Please do not dynamic generate object directly\n * @param option Additional config\n * @returns Call Theme.getDerivativeToken(tokenObject) to get token\n */\nexport default function useCacheToken(theme, tokens) {\n var option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _option$salt = option.salt,\n salt = _option$salt === void 0 ? '' : _option$salt,\n _option$override = option.override,\n override = _option$override === void 0 ? EMPTY_OVERRIDE : _option$override,\n formatToken = option.formatToken;\n\n // Basic - We do basic cache here\n var mergedToken = React.useMemo(function () {\n return Object.assign.apply(Object, [{}].concat(_toConsumableArray(tokens)));\n }, [tokens]);\n var tokenStr = React.useMemo(function () {\n return flattenToken(mergedToken);\n }, [mergedToken]);\n var overrideTokenStr = React.useMemo(function () {\n return flattenToken(override);\n }, [override]);\n var cachedToken = useGlobalCache('token', [salt, theme.id, tokenStr, overrideTokenStr], function () {\n var derivativeToken = theme.getDerivativeToken(mergedToken);\n\n // Merge with override\n var mergedDerivativeToken = _objectSpread(_objectSpread({}, derivativeToken), override);\n\n // Format if needed\n if (formatToken) {\n mergedDerivativeToken = formatToken(mergedDerivativeToken);\n }\n\n // Optimize for `useStyleRegister` performance\n var tokenKey = token2key(mergedDerivativeToken, salt);\n mergedDerivativeToken._tokenKey = tokenKey;\n recordCleanToken(tokenKey);\n var hashId = \"\".concat(hashPrefix, \"-\").concat(hash(tokenKey));\n mergedDerivativeToken._hashId = hashId; // Not used\n\n return [mergedDerivativeToken, hashId];\n }, function (cache) {\n // Remove token will remove all related style\n cleanTokenStyle(cache[0]._tokenKey);\n });\n return cachedToken;\n}","var unitlessKeys = {\n animationIterationCount: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport default unitlessKeys;\n","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset:\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d m s\n\t\t\t\t\t\t\t\t\tcase 100: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import {IMPORT, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import {MS, MOZ, WEBKIT, RULESET, KEYFRAMES, DECLARATION} from './Enum.js'\nimport {match, charat, substr, strlen, sizeof, replace, combine} from './Utility.js'\nimport {copy, tokenize} from './Tokenizer.js'\nimport {serialize} from './Serializer.js'\nimport {prefix} from './Prefixer.js'\n\n/**\n * @param {function[]} collection\n * @return {function}\n */\nexport function middleware (collection) {\n\tvar length = sizeof(collection)\n\n\treturn function (element, index, children, callback) {\n\t\tvar output = ''\n\n\t\tfor (var i = 0; i < length; i++)\n\t\t\toutput += collection[i](element, index, children, callback) || ''\n\n\t\treturn output\n\t}\n}\n\n/**\n * @param {function} callback\n * @return {function}\n */\nexport function rulesheet (callback) {\n\treturn function (element) {\n\t\tif (!element.root)\n\t\t\tif (element = element.return)\n\t\t\t\tcallback(element)\n\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n */\nexport function prefixer (element, index, children, callback) {\n\tif (element.length > -1)\n\t\tif (!element.return)\n\t\t\tswitch (element.type) {\n\t\t\t\tcase DECLARATION: element.return = prefix(element.value, element.length, children)\n\t\t\t\t\treturn\n\t\t\t\tcase KEYFRAMES:\n\t\t\t\t\treturn serialize([copy(element, {value: replace(element.value, '@', '@' + WEBKIT)})], callback)\n\t\t\t\tcase RULESET:\n\t\t\t\t\tif (element.length)\n\t\t\t\t\t\treturn combine(element.props, function (value) {\n\t\t\t\t\t\t\tswitch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n\t\t\t\t\t\t\t\t// :read-(only|write)\n\t\t\t\t\t\t\t\tcase ':read-only': case ':read-write':\n\t\t\t\t\t\t\t\t\treturn serialize([copy(element, {props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]})], callback)\n\t\t\t\t\t\t\t\t// :placeholder\n\t\t\t\t\t\t\t\tcase '::placeholder':\n\t\t\t\t\t\t\t\t\treturn serialize([\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]}),\n\t\t\t\t\t\t\t\t\t\tcopy(element, {props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]})\n\t\t\t\t\t\t\t\t\t], callback)\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\treturn ''\n\t\t\t\t\t\t})\n\t\t\t}\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n */\nexport function namespace (element) {\n\tswitch (element.type) {\n\t\tcase RULESET:\n\t\t\telement.props = element.props.map(function (value) {\n\t\t\t\treturn combine(tokenize(value), function (value, index, children) {\n\t\t\t\t\tswitch (charat(value, 0)) {\n\t\t\t\t\t\t// \\f\n\t\t\t\t\t\tcase 12:\n\t\t\t\t\t\t\treturn substr(value, 1, strlen(value))\n\t\t\t\t\t\t// \\0 ( + > ~\n\t\t\t\t\t\tcase 0: case 40: case 43: case 62: case 126:\n\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t// :\n\t\t\t\t\t\tcase 58:\n\t\t\t\t\t\t\tif (children[++index] === 'global')\n\t\t\t\t\t\t\t\tchildren[index] = '', children[++index] = '\\f' + substr(children[index], index = 1, -1)\n\t\t\t\t\t\t// \\s\n\t\t\t\t\t\tcase 32:\n\t\t\t\t\t\t\treturn index === 1 ? '' : value\n\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\tswitch (index) {\n\t\t\t\t\t\t\t\tcase 0: element = value\n\t\t\t\t\t\t\t\t\treturn sizeof(children) > 1 ? '' : value\n\t\t\t\t\t\t\t\tcase index = sizeof(children) - 1: case 2:\n\t\t\t\t\t\t\t\t\treturn index === 2 ? value + element + element : value + element\n\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\treturn value\n\t\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t})\n\t}\n}\n","import devWarning from \"rc-util/es/warning\";\nexport function lintWarning(message, info) {\n var path = info.path,\n parentSelectors = info.parentSelectors;\n devWarning(false, \"[Ant Design CSS-in-JS] \".concat(path ? \"Error in \".concat(path, \": \") : '').concat(message).concat(parentSelectors.length ? \" Selector: \".concat(parentSelectors.join(' | ')) : ''));\n}","import { lintWarning } from \"./utils\";\nvar linter = function linter(key, value, info) {\n if (key === 'content') {\n // From emotion: https://github.com/emotion-js/emotion/blob/main/packages/serialize/src/index.js#L63\n var contentValuePattern = /(attr|counters?|url|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n var contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n lintWarning(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\".concat(value, \"\\\"'`.\"), info);\n }\n }\n};\nexport default linter;","import { lintWarning } from \"./utils\";\nvar linter = function linter(key, value, info) {\n if (key === 'animation') {\n if (info.hashId && value !== 'none') {\n lintWarning(\"You seem to be using hashed animation '\".concat(value, \"', in which case 'animationName' with Keyframe as value is recommended.\"), info);\n }\n }\n};\nexport default linter;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport hash from '@emotion/hash';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { removeCSS, updateCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport * as React from 'react';\n// @ts-ignore\nimport unitless from '@emotion/unitless';\nimport { compile, serialize, stringify } from 'stylis';\nimport { contentQuotesLinter, hashedAnimationLinter } from \"../linters\";\nimport StyleContext, { ATTR_DEV_CACHE_PATH, ATTR_MARK, ATTR_TOKEN, CSS_IN_JS_INSTANCE, CSS_IN_JS_INSTANCE_ID } from \"../StyleContext\";\nimport { supportLayer } from \"../util\";\nimport useGlobalCache from \"./useGlobalCache\";\nvar isClientSide = canUseDom();\nvar SKIP_CHECK = '_skip_check_';\n// ============================================================================\n// == Parser ==\n// ============================================================================\n// Preprocessor style content to browser support one\nexport function normalizeStyle(styleStr) {\n var serialized = serialize(compile(styleStr), stringify);\n return serialized.replace(/\\{%%%\\:[^;];}/g, ';');\n}\nfunction isCompoundCSSProperty(value) {\n return _typeof(value) === 'object' && value && SKIP_CHECK in value;\n}\n\n// 注入 hash 值\nfunction injectSelectorHash(key, hashId, hashPriority) {\n if (!hashId) {\n return key;\n }\n var hashClassName = \".\".concat(hashId);\n var hashSelector = hashPriority === 'low' ? \":where(\".concat(hashClassName, \")\") : hashClassName;\n\n // 注入 hashId\n var keys = key.split(',').map(function (k) {\n var _firstPath$match;\n var fullPath = k.trim().split(/\\s+/);\n\n // 如果 Selector 第一个是 HTML Element,那我们就插到它的后面。反之,就插到最前面。\n var firstPath = fullPath[0] || '';\n var htmlElement = ((_firstPath$match = firstPath.match(/^\\w+/)) === null || _firstPath$match === void 0 ? void 0 : _firstPath$match[0]) || '';\n firstPath = \"\".concat(htmlElement).concat(hashSelector).concat(firstPath.slice(htmlElement.length));\n return [firstPath].concat(_toConsumableArray(fullPath.slice(1))).join(' ');\n });\n return keys.join(',');\n}\n// Parse CSSObject to style content\nexport var parseStyle = function parseStyle(interpolation) {\n var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _ref = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n root: true,\n parentSelectors: []\n },\n root = _ref.root,\n injectHash = _ref.injectHash,\n parentSelectors = _ref.parentSelectors;\n var hashId = config.hashId,\n layer = config.layer,\n path = config.path,\n hashPriority = config.hashPriority,\n _config$transformers = config.transformers,\n transformers = _config$transformers === void 0 ? [] : _config$transformers,\n _config$linters = config.linters,\n linters = _config$linters === void 0 ? [] : _config$linters;\n var styleStr = '';\n var effectStyle = {};\n function parseKeyframes(keyframes) {\n var animationName = keyframes.getName(hashId);\n if (!effectStyle[animationName]) {\n var _parseStyle = parseStyle(keyframes.style, config, {\n root: false,\n parentSelectors: parentSelectors\n }),\n _parseStyle2 = _slicedToArray(_parseStyle, 1),\n _parsedStr = _parseStyle2[0];\n effectStyle[animationName] = \"@keyframes \".concat(keyframes.getName(hashId)).concat(_parsedStr);\n }\n }\n function flattenList(list) {\n var fullList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n list.forEach(function (item) {\n if (Array.isArray(item)) {\n flattenList(item, fullList);\n } else if (item) {\n fullList.push(item);\n }\n });\n return fullList;\n }\n var flattenStyleList = flattenList(Array.isArray(interpolation) ? interpolation : [interpolation]);\n flattenStyleList.forEach(function (originStyle) {\n // Only root level can use raw string\n var style = typeof originStyle === 'string' && !root ? {} : originStyle;\n if (typeof style === 'string') {\n styleStr += \"\".concat(style, \"\\n\");\n } else if (style._keyframe) {\n // Keyframe\n parseKeyframes(style);\n } else {\n var mergedStyle = transformers.reduce(function (prev, trans) {\n var _trans$visit;\n return (trans === null || trans === void 0 ? void 0 : (_trans$visit = trans.visit) === null || _trans$visit === void 0 ? void 0 : _trans$visit.call(trans, prev)) || prev;\n }, style);\n\n // Normal CSSObject\n Object.keys(mergedStyle).forEach(function (key) {\n var value = mergedStyle[key];\n if (_typeof(value) === 'object' && value && (key !== 'animationName' || !value._keyframe) && !isCompoundCSSProperty(value)) {\n var subInjectHash = false;\n\n // 当成嵌套对象来处理\n var mergedKey = key.trim();\n // Whether treat child as root. In most case it is false.\n var nextRoot = false;\n\n // 拆分多个选择器\n if ((root || injectHash) && hashId) {\n if (mergedKey.startsWith('@')) {\n // 略过媒体查询,交给子节点继续插入 hashId\n subInjectHash = true;\n } else {\n // 注入 hashId\n mergedKey = injectSelectorHash(key, hashId, hashPriority);\n }\n } else if (root && !hashId && (mergedKey === '&' || mergedKey === '')) {\n // In case of `{ '&': { a: { color: 'red' } } }` or `{ '': { a: { color: 'red' } } }` without hashId,\n // we will get `&{a:{color:red;}}` or `{a:{color:red;}}` string for stylis to compile.\n // But it does not conform to stylis syntax,\n // and finally we will get `{color:red;}` as css, which is wrong.\n // So we need to remove key in root, and treat child `{ a: { color: 'red' } }` as root.\n mergedKey = '';\n nextRoot = true;\n }\n var _parseStyle3 = parseStyle(value, config, {\n root: nextRoot,\n injectHash: subInjectHash,\n parentSelectors: [].concat(_toConsumableArray(parentSelectors), [mergedKey])\n }),\n _parseStyle4 = _slicedToArray(_parseStyle3, 2),\n _parsedStr2 = _parseStyle4[0],\n childEffectStyle = _parseStyle4[1];\n effectStyle = _objectSpread(_objectSpread({}, effectStyle), childEffectStyle);\n styleStr += \"\".concat(mergedKey).concat(_parsedStr2);\n } else {\n var _value;\n var actualValue = (_value = value === null || value === void 0 ? void 0 : value.value) !== null && _value !== void 0 ? _value : value;\n if (process.env.NODE_ENV !== 'production' && (_typeof(value) !== 'object' || !(value !== null && value !== void 0 && value[SKIP_CHECK]))) {\n [contentQuotesLinter, hashedAnimationLinter].concat(_toConsumableArray(linters)).forEach(function (linter) {\n return linter(key, actualValue, {\n path: path,\n hashId: hashId,\n parentSelectors: parentSelectors\n });\n });\n }\n\n // 如果是样式则直接插入\n var styleName = key.replace(/[A-Z]/g, function (match) {\n return \"-\".concat(match.toLowerCase());\n });\n\n // Auto suffix with px\n var formatValue = actualValue;\n if (!unitless[key] && typeof formatValue === 'number' && formatValue !== 0) {\n formatValue = \"\".concat(formatValue, \"px\");\n }\n\n // handle animationName & Keyframe value\n if (key === 'animationName' && value !== null && value !== void 0 && value._keyframe) {\n parseKeyframes(value);\n formatValue = value.getName(hashId);\n }\n styleStr += \"\".concat(styleName, \":\").concat(formatValue, \";\");\n }\n });\n }\n });\n if (!root) {\n styleStr = \"{\".concat(styleStr, \"}\");\n } else if (layer && supportLayer()) {\n var layerCells = layer.split(',');\n var layerName = layerCells[layerCells.length - 1].trim();\n styleStr = \"@layer \".concat(layerName, \" {\").concat(styleStr, \"}\");\n\n // Order of layer if needed\n if (layerCells.length > 1) {\n // zombieJ: stylis do not support layer order, so we need to handle it manually.\n styleStr = \"@layer \".concat(layer, \"{%%%:%}\").concat(styleStr);\n }\n }\n return [styleStr, effectStyle];\n};\n\n// ============================================================================\n// == Register ==\n// ============================================================================\nfunction uniqueHash(path, styleStr) {\n return hash(\"\".concat(path.join('%')).concat(styleStr));\n}\nfunction Empty() {\n return null;\n}\n\n/**\n * Register a style to the global style sheet.\n */\nexport default function useStyleRegister(info, styleFn) {\n var token = info.token,\n path = info.path,\n hashId = info.hashId,\n layer = info.layer;\n var _React$useContext = React.useContext(StyleContext),\n autoClear = _React$useContext.autoClear,\n mock = _React$useContext.mock,\n defaultCache = _React$useContext.defaultCache,\n hashPriority = _React$useContext.hashPriority,\n container = _React$useContext.container,\n ssrInline = _React$useContext.ssrInline,\n transformers = _React$useContext.transformers,\n linters = _React$useContext.linters;\n var tokenKey = token._tokenKey;\n var fullPath = [tokenKey].concat(_toConsumableArray(path));\n\n // Check if need insert style\n var isMergedClientSide = isClientSide;\n if (process.env.NODE_ENV !== 'production' && mock !== undefined) {\n isMergedClientSide = mock === 'client';\n }\n var _useGlobalCache = useGlobalCache('style', fullPath,\n // Create cache if needed\n function () {\n var styleObj = styleFn();\n var _parseStyle5 = parseStyle(styleObj, {\n hashId: hashId,\n hashPriority: hashPriority,\n layer: layer,\n path: path.join('-'),\n transformers: transformers,\n linters: linters\n }),\n _parseStyle6 = _slicedToArray(_parseStyle5, 2),\n parsedStyle = _parseStyle6[0],\n effectStyle = _parseStyle6[1];\n var styleStr = normalizeStyle(parsedStyle);\n var styleId = uniqueHash(fullPath, styleStr);\n if (isMergedClientSide) {\n var style = updateCSS(styleStr, styleId, {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container\n });\n style[CSS_IN_JS_INSTANCE] = CSS_IN_JS_INSTANCE_ID;\n\n // Used for `useCacheToken` to remove on batch when token removed\n style.setAttribute(ATTR_TOKEN, tokenKey);\n\n // Dev usage to find which cache path made this easily\n if (process.env.NODE_ENV !== 'production') {\n style.setAttribute(ATTR_DEV_CACHE_PATH, fullPath.join('|'));\n }\n\n // Inject client side effect style\n Object.keys(effectStyle).forEach(function (effectKey) {\n updateCSS(normalizeStyle(effectStyle[effectKey]), \"_effect-\".concat(effectKey), {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container\n });\n });\n }\n return [styleStr, tokenKey, styleId];\n },\n // Remove cache if no need\n function (_ref2, fromHMR) {\n var _ref3 = _slicedToArray(_ref2, 3),\n styleId = _ref3[2];\n if ((fromHMR || autoClear) && isClientSide) {\n removeCSS(styleId, {\n mark: ATTR_MARK\n });\n }\n }),\n _useGlobalCache2 = _slicedToArray(_useGlobalCache, 3),\n cachedStyleStr = _useGlobalCache2[0],\n cachedTokenKey = _useGlobalCache2[1],\n cachedStyleId = _useGlobalCache2[2];\n return function (node) {\n var styleNode;\n if (!ssrInline || isMergedClientSide || !defaultCache) {\n styleNode = /*#__PURE__*/React.createElement(Empty, null);\n } else {\n var _ref4;\n styleNode = /*#__PURE__*/React.createElement(\"style\", _extends({}, (_ref4 = {}, _defineProperty(_ref4, ATTR_TOKEN, cachedTokenKey), _defineProperty(_ref4, ATTR_MARK, cachedStyleId), _ref4), {\n dangerouslySetInnerHTML: {\n __html: cachedStyleStr\n }\n }));\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, styleNode, node);\n };\n}\n\n// ============================================================================\n// == SSR ==\n// ============================================================================\nexport function extractStyle(cache) {\n // prefix with `style` is used for `useStyleRegister` to cache style context\n var styleKeys = Array.from(cache.cache.keys()).filter(function (key) {\n return key.startsWith('style%');\n });\n\n // const tokenStyles: Record<string, string[]> = {};\n\n var styleText = '';\n styleKeys.forEach(function (key) {\n var _ = _slicedToArray(cache.cache.get(key)[1], 3),\n styleStr = _[0],\n tokenKey = _[1],\n styleId = _[2];\n styleText += \"<style \".concat(ATTR_TOKEN, \"=\\\"\").concat(tokenKey, \"\\\" \").concat(ATTR_MARK, \"=\\\"\").concat(styleId, \"\\\">\").concat(styleStr, \"</style>\");\n });\n return styleText;\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar Keyframe = /*#__PURE__*/function () {\n function Keyframe(name, style) {\n _classCallCheck(this, Keyframe);\n _defineProperty(this, \"name\", void 0);\n _defineProperty(this, \"style\", void 0);\n _defineProperty(this, \"_keyframe\", true);\n this.name = name;\n this.style = style;\n }\n _createClass(Keyframe, [{\n key: \"getName\",\n value: function getName() {\n var hashId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return hashId ? \"\".concat(hashId, \"-\").concat(this.name) : this.name;\n }\n }]);\n return Keyframe;\n}();\nexport default Keyframe;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\n// ================================== Cache ==================================\n\nexport function sameDerivativeOption(left, right) {\n if (left.length !== right.length) {\n return false;\n }\n for (var i = 0; i < left.length; i++) {\n if (left[i] !== right[i]) {\n return false;\n }\n }\n return true;\n}\nvar ThemeCache = /*#__PURE__*/function () {\n function ThemeCache() {\n _classCallCheck(this, ThemeCache);\n _defineProperty(this, \"cache\", void 0);\n _defineProperty(this, \"keys\", void 0);\n _defineProperty(this, \"cacheCallTimes\", void 0);\n this.cache = new Map();\n this.keys = [];\n this.cacheCallTimes = 0;\n }\n _createClass(ThemeCache, [{\n key: \"size\",\n value: function size() {\n return this.keys.length;\n }\n }, {\n key: \"internalGet\",\n value: function internalGet(derivativeOption) {\n var _cache2, _cache3;\n var updateCallTimes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var cache = {\n map: this.cache\n };\n derivativeOption.forEach(function (derivative) {\n if (!cache) {\n cache = undefined;\n } else {\n var _cache, _cache$map;\n cache = (_cache = cache) === null || _cache === void 0 ? void 0 : (_cache$map = _cache.map) === null || _cache$map === void 0 ? void 0 : _cache$map.get(derivative);\n }\n });\n if ((_cache2 = cache) !== null && _cache2 !== void 0 && _cache2.value && updateCallTimes) {\n cache.value[1] = this.cacheCallTimes++;\n }\n return (_cache3 = cache) === null || _cache3 === void 0 ? void 0 : _cache3.value;\n }\n }, {\n key: \"get\",\n value: function get(derivativeOption) {\n var _this$internalGet;\n return (_this$internalGet = this.internalGet(derivativeOption, true)) === null || _this$internalGet === void 0 ? void 0 : _this$internalGet[0];\n }\n }, {\n key: \"has\",\n value: function has(derivativeOption) {\n return !!this.internalGet(derivativeOption);\n }\n }, {\n key: \"set\",\n value: function set(derivativeOption, value) {\n var _this = this;\n // New cache\n if (!this.has(derivativeOption)) {\n if (this.size() + 1 > ThemeCache.MAX_CACHE_SIZE + ThemeCache.MAX_CACHE_OFFSET) {\n var _this$keys$reduce = this.keys.reduce(function (result, key) {\n var _result = _slicedToArray(result, 2),\n callTimes = _result[1];\n if (_this.internalGet(key)[1] < callTimes) {\n return [key, _this.internalGet(key)[1]];\n }\n return result;\n }, [this.keys[0], this.cacheCallTimes]),\n _this$keys$reduce2 = _slicedToArray(_this$keys$reduce, 1),\n targetKey = _this$keys$reduce2[0];\n this.delete(targetKey);\n }\n this.keys.push(derivativeOption);\n }\n var cache = this.cache;\n derivativeOption.forEach(function (derivative, index) {\n if (index === derivativeOption.length - 1) {\n cache.set(derivative, {\n value: [value, _this.cacheCallTimes++]\n });\n } else {\n var cacheValue = cache.get(derivative);\n if (!cacheValue) {\n cache.set(derivative, {\n map: new Map()\n });\n } else if (!cacheValue.map) {\n cacheValue.map = new Map();\n }\n cache = cache.get(derivative).map;\n }\n });\n }\n }, {\n key: \"deleteByPath\",\n value: function deleteByPath(currentCache, derivatives) {\n var cache = currentCache.get(derivatives[0]);\n if (derivatives.length === 1) {\n var _cache$value;\n if (!cache.map) {\n currentCache.delete(derivatives[0]);\n } else {\n currentCache.set(derivatives[0], {\n map: cache.map\n });\n }\n return (_cache$value = cache.value) === null || _cache$value === void 0 ? void 0 : _cache$value[0];\n }\n var result = this.deleteByPath(cache.map, derivatives.slice(1));\n if ((!cache.map || cache.map.size === 0) && !cache.value) {\n currentCache.delete(derivatives[0]);\n }\n return result;\n }\n }, {\n key: \"delete\",\n value: function _delete(derivativeOption) {\n // If cache exists\n if (this.has(derivativeOption)) {\n this.keys = this.keys.filter(function (item) {\n return !sameDerivativeOption(item, derivativeOption);\n });\n return this.deleteByPath(this.cache, derivativeOption);\n }\n return undefined;\n }\n }]);\n return ThemeCache;\n}();\n_defineProperty(ThemeCache, \"MAX_CACHE_SIZE\", 20);\n_defineProperty(ThemeCache, \"MAX_CACHE_OFFSET\", 5);\nexport { ThemeCache as default };","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { warning } from \"rc-util/es/warning\";\nvar uuid = 0;\n\n/**\n * Theme with algorithms to derive tokens from design tokens.\n * Use `createTheme` first which will help to manage the theme instance cache.\n */\nvar Theme = /*#__PURE__*/function () {\n function Theme(derivatives) {\n _classCallCheck(this, Theme);\n _defineProperty(this, \"derivatives\", void 0);\n _defineProperty(this, \"id\", void 0);\n this.derivatives = Array.isArray(derivatives) ? derivatives : [derivatives];\n this.id = uuid;\n if (derivatives.length === 0) {\n warning(derivatives.length > 0, '[Ant Design CSS-in-JS] Theme should have at least one derivative function.');\n }\n uuid += 1;\n }\n _createClass(Theme, [{\n key: \"getDerivativeToken\",\n value: function getDerivativeToken(token) {\n return this.derivatives.reduce(function (result, derivative) {\n return derivative(token, result);\n }, undefined);\n }\n }]);\n return Theme;\n}();\nexport { Theme as default };","import ThemeCache from \"./ThemeCache\";\nimport Theme from \"./Theme\";\nvar cacheThemes = new ThemeCache();\n\n/**\n * Same as new Theme, but will always return same one if `derivative` not changed.\n */\nexport default function createTheme(derivatives) {\n var derivativeArr = Array.isArray(derivatives) ? derivatives : [derivatives];\n // Create new theme if not exist\n if (!cacheThemes.has(derivativeArr)) {\n cacheThemes.set(derivativeArr, new Theme(derivativeArr));\n }\n\n // Get theme from cache and return\n return cacheThemes.get(derivativeArr);\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nfunction splitValues(value) {\n if (typeof value === 'number') {\n return [[value], false];\n }\n var rawStyle = String(value).trim();\n var importantCells = rawStyle.match(/(.*)(!important)/);\n var splitStyle = (importantCells ? importantCells[1] : rawStyle).trim().split(/\\s+/);\n\n // Combine styles split in brackets, like `calc(1px + 2px)`\n var temp = '';\n var brackets = 0;\n return [splitStyle.reduce(function (list, item) {\n if (item.includes('(')) {\n temp += item;\n brackets += item.split('(').length - 1;\n } else if (item.includes(')')) {\n temp += item;\n brackets -= item.split(')').length - 1;\n if (brackets === 0) {\n list.push(temp);\n temp = '';\n }\n } else if (brackets > 0) {\n temp += item;\n } else {\n list.push(item);\n }\n return list;\n }, []), !!importantCells];\n}\nfunction noSplit(list) {\n list.notSplit = true;\n return list;\n}\nvar keyMap = {\n // Inset\n inset: ['top', 'right', 'bottom', 'left'],\n insetBlock: ['top', 'bottom'],\n insetBlockStart: ['top'],\n insetBlockEnd: ['bottom'],\n insetInline: ['left', 'right'],\n insetInlineStart: ['left'],\n insetInlineEnd: ['right'],\n // Margin\n marginBlock: ['marginTop', 'marginBottom'],\n marginBlockStart: ['marginTop'],\n marginBlockEnd: ['marginBottom'],\n marginInline: ['marginLeft', 'marginRight'],\n marginInlineStart: ['marginLeft'],\n marginInlineEnd: ['marginRight'],\n // Padding\n paddingBlock: ['paddingTop', 'paddingBottom'],\n paddingBlockStart: ['paddingTop'],\n paddingBlockEnd: ['paddingBottom'],\n paddingInline: ['paddingLeft', 'paddingRight'],\n paddingInlineStart: ['paddingLeft'],\n paddingInlineEnd: ['paddingRight'],\n // Border\n borderBlock: noSplit(['borderTop', 'borderBottom']),\n borderBlockStart: noSplit(['borderTop']),\n borderBlockEnd: noSplit(['borderBottom']),\n borderInline: noSplit(['borderLeft', 'borderRight']),\n borderInlineStart: noSplit(['borderLeft']),\n borderInlineEnd: noSplit(['borderRight']),\n // Border width\n borderBlockWidth: ['borderTopWidth', 'borderBottomWidth'],\n borderBlockStartWidth: ['borderTopWidth'],\n borderBlockEndWidth: ['borderBottomWidth'],\n borderInlineWidth: ['borderLeftWidth', 'borderRightWidth'],\n borderInlineStartWidth: ['borderLeftWidth'],\n borderInlineEndWidth: ['borderRightWidth'],\n // Border style\n borderBlockStyle: ['borderTopStyle', 'borderBottomStyle'],\n borderBlockStartStyle: ['borderTopStyle'],\n borderBlockEndStyle: ['borderBottomStyle'],\n borderInlineStyle: ['borderLeftStyle', 'borderRightStyle'],\n borderInlineStartStyle: ['borderLeftStyle'],\n borderInlineEndStyle: ['borderRightStyle'],\n // Border color\n borderBlockColor: ['borderTopColor', 'borderBottomColor'],\n borderBlockStartColor: ['borderTopColor'],\n borderBlockEndColor: ['borderBottomColor'],\n borderInlineColor: ['borderLeftColor', 'borderRightColor'],\n borderInlineStartColor: ['borderLeftColor'],\n borderInlineEndColor: ['borderRightColor'],\n // Border radius\n borderStartStartRadius: ['borderTopLeftRadius'],\n borderStartEndRadius: ['borderTopRightRadius'],\n borderEndStartRadius: ['borderBottomLeftRadius'],\n borderEndEndRadius: ['borderBottomRightRadius']\n};\nfunction wrapImportantAndSkipCheck(value, important) {\n var parsedValue = value;\n if (important) {\n parsedValue = \"\".concat(parsedValue, \" !important\");\n }\n return {\n _skip_check_: true,\n value: parsedValue\n };\n}\n\n/**\n * Convert css logical properties to legacy properties.\n * Such as: `margin-block-start` to `margin-top`.\n * Transform list:\n * - inset\n * - margin\n * - padding\n * - border\n */\nvar transform = {\n visit: function visit(cssObj) {\n var clone = {};\n Object.keys(cssObj).forEach(function (key) {\n var value = cssObj[key];\n var matchValue = keyMap[key];\n if (matchValue && (typeof value === 'number' || typeof value === 'string')) {\n var _splitValues = splitValues(value),\n _splitValues2 = _slicedToArray(_splitValues, 2),\n _values = _splitValues2[0],\n _important = _splitValues2[1];\n if (matchValue.length && matchValue.notSplit) {\n // not split means always give same value like border\n matchValue.forEach(function (matchKey) {\n clone[matchKey] = wrapImportantAndSkipCheck(value, _important);\n });\n } else if (matchValue.length === 1) {\n // Handle like `marginBlockStart` => `marginTop`\n clone[matchValue[0]] = wrapImportantAndSkipCheck(value, _important);\n } else if (matchValue.length === 2) {\n // Handle like `marginBlock` => `marginTop` & `marginBottom`\n matchValue.forEach(function (matchKey, index) {\n var _values$index;\n clone[matchKey] = wrapImportantAndSkipCheck((_values$index = _values[index]) !== null && _values$index !== void 0 ? _values$index : _values[0], _important);\n });\n } else if (matchValue.length === 4) {\n // Handle like `inset` => `top` & `right` & `bottom` & `left`\n matchValue.forEach(function (matchKey, index) {\n var _ref, _values$index2;\n clone[matchKey] = wrapImportantAndSkipCheck((_ref = (_values$index2 = _values[index]) !== null && _values$index2 !== void 0 ? _values$index2 : _values[index - 2]) !== null && _ref !== void 0 ? _ref : _values[0], _important);\n });\n } else {\n clone[key] = value;\n }\n } else {\n clone[key] = value;\n }\n });\n return clone;\n }\n};\nexport default transform;","import { createContext } from 'react';\nvar IconContext = /*#__PURE__*/createContext({});\nexport default IconContext;","import warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nexport var HOOK_MARK = 'RC_FORM_INTERNAL_HOOKS';\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nvar warningFunc = function warningFunc() {\n warning(false, 'Can not find FormContext. Please make sure you wrap Field under Form.');\n};\nvar Context = /*#__PURE__*/React.createContext({\n getFieldValue: warningFunc,\n getFieldsValue: warningFunc,\n getFieldError: warningFunc,\n getFieldWarning: warningFunc,\n getFieldsError: warningFunc,\n isFieldsTouched: warningFunc,\n isFieldTouched: warningFunc,\n isFieldValidating: warningFunc,\n isFieldsValidating: warningFunc,\n resetFields: warningFunc,\n setFields: warningFunc,\n setFieldValue: warningFunc,\n setFieldsValue: warningFunc,\n validateFields: warningFunc,\n submit: warningFunc,\n getInternalHooks: function getInternalHooks() {\n warningFunc();\n return {\n dispatch: warningFunc,\n initEntityValue: warningFunc,\n registerField: warningFunc,\n useSubscribe: warningFunc,\n setInitialValues: warningFunc,\n destroyForm: warningFunc,\n setCallbacks: warningFunc,\n registerWatch: warningFunc,\n getFields: warningFunc,\n setValidateMessages: warningFunc,\n setPreserve: warningFunc,\n getInitialValue: warningFunc\n };\n }\n});\nexport default Context;","export function toArray(value) {\n if (value === undefined || value === null) {\n return [];\n }\n return Array.isArray(value) ? value : [value];\n}","import _typeof from \"./typeof.js\";\nexport default function _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n _regeneratorRuntime = function _regeneratorRuntime() {\n return exports;\n };\n var exports = {},\n Op = Object.prototype,\n hasOwn = Op.hasOwnProperty,\n defineProperty = Object.defineProperty || function (obj, key, desc) {\n obj[key] = desc.value;\n },\n $Symbol = \"function\" == typeof Symbol ? Symbol : {},\n iteratorSymbol = $Symbol.iterator || \"@@iterator\",\n asyncIteratorSymbol = $Symbol.asyncIterator || \"@@asyncIterator\",\n toStringTagSymbol = $Symbol.toStringTag || \"@@toStringTag\";\n function define(obj, key, value) {\n return Object.defineProperty(obj, key, {\n value: value,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), obj[key];\n }\n try {\n define({}, \"\");\n } catch (err) {\n define = function define(obj, key, value) {\n return obj[key] = value;\n };\n }\n function wrap(innerFn, outerFn, self, tryLocsList) {\n var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator,\n generator = Object.create(protoGenerator.prototype),\n context = new Context(tryLocsList || []);\n return defineProperty(generator, \"_invoke\", {\n value: makeInvokeMethod(innerFn, self, context)\n }), generator;\n }\n function tryCatch(fn, obj, arg) {\n try {\n return {\n type: \"normal\",\n arg: fn.call(obj, arg)\n };\n } catch (err) {\n return {\n type: \"throw\",\n arg: err\n };\n }\n }\n exports.wrap = wrap;\n var ContinueSentinel = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var IteratorPrototype = {};\n define(IteratorPrototype, iteratorSymbol, function () {\n return this;\n });\n var getProto = Object.getPrototypeOf,\n NativeIteratorPrototype = getProto && getProto(getProto(values([])));\n NativeIteratorPrototype && NativeIteratorPrototype !== Op && hasOwn.call(NativeIteratorPrototype, iteratorSymbol) && (IteratorPrototype = NativeIteratorPrototype);\n var Gp = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(IteratorPrototype);\n function defineIteratorMethods(prototype) {\n [\"next\", \"throw\", \"return\"].forEach(function (method) {\n define(prototype, method, function (arg) {\n return this._invoke(method, arg);\n });\n });\n }\n function AsyncIterator(generator, PromiseImpl) {\n function invoke(method, arg, resolve, reject) {\n var record = tryCatch(generator[method], generator, arg);\n if (\"throw\" !== record.type) {\n var result = record.arg,\n value = result.value;\n return value && \"object\" == _typeof(value) && hasOwn.call(value, \"__await\") ? PromiseImpl.resolve(value.__await).then(function (value) {\n invoke(\"next\", value, resolve, reject);\n }, function (err) {\n invoke(\"throw\", err, resolve, reject);\n }) : PromiseImpl.resolve(value).then(function (unwrapped) {\n result.value = unwrapped, resolve(result);\n }, function (error) {\n return invoke(\"throw\", error, resolve, reject);\n });\n }\n reject(record.arg);\n }\n var previousPromise;\n defineProperty(this, \"_invoke\", {\n value: function value(method, arg) {\n function callInvokeWithMethodAndArg() {\n return new PromiseImpl(function (resolve, reject) {\n invoke(method, arg, resolve, reject);\n });\n }\n return previousPromise = previousPromise ? previousPromise.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(innerFn, self, context) {\n var state = \"suspendedStart\";\n return function (method, arg) {\n if (\"executing\" === state) throw new Error(\"Generator is already running\");\n if (\"completed\" === state) {\n if (\"throw\" === method) throw arg;\n return doneResult();\n }\n for (context.method = method, context.arg = arg;;) {\n var delegate = context.delegate;\n if (delegate) {\n var delegateResult = maybeInvokeDelegate(delegate, context);\n if (delegateResult) {\n if (delegateResult === ContinueSentinel) continue;\n return delegateResult;\n }\n }\n if (\"next\" === context.method) context.sent = context._sent = context.arg;else if (\"throw\" === context.method) {\n if (\"suspendedStart\" === state) throw state = \"completed\", context.arg;\n context.dispatchException(context.arg);\n } else \"return\" === context.method && context.abrupt(\"return\", context.arg);\n state = \"executing\";\n var record = tryCatch(innerFn, self, context);\n if (\"normal\" === record.type) {\n if (state = context.done ? \"completed\" : \"suspendedYield\", record.arg === ContinueSentinel) continue;\n return {\n value: record.arg,\n done: context.done\n };\n }\n \"throw\" === record.type && (state = \"completed\", context.method = \"throw\", context.arg = record.arg);\n }\n };\n }\n function maybeInvokeDelegate(delegate, context) {\n var methodName = context.method,\n method = delegate.iterator[methodName];\n if (undefined === method) return context.delegate = null, \"throw\" === methodName && delegate.iterator[\"return\"] && (context.method = \"return\", context.arg = undefined, maybeInvokeDelegate(delegate, context), \"throw\" === context.method) || \"return\" !== methodName && (context.method = \"throw\", context.arg = new TypeError(\"The iterator does not provide a '\" + methodName + \"' method\")), ContinueSentinel;\n var record = tryCatch(method, delegate.iterator, context.arg);\n if (\"throw\" === record.type) return context.method = \"throw\", context.arg = record.arg, context.delegate = null, ContinueSentinel;\n var info = record.arg;\n return info ? info.done ? (context[delegate.resultName] = info.value, context.next = delegate.nextLoc, \"return\" !== context.method && (context.method = \"next\", context.arg = undefined), context.delegate = null, ContinueSentinel) : info : (context.method = \"throw\", context.arg = new TypeError(\"iterator result is not an object\"), context.delegate = null, ContinueSentinel);\n }\n function pushTryEntry(locs) {\n var entry = {\n tryLoc: locs[0]\n };\n 1 in locs && (entry.catchLoc = locs[1]), 2 in locs && (entry.finallyLoc = locs[2], entry.afterLoc = locs[3]), this.tryEntries.push(entry);\n }\n function resetTryEntry(entry) {\n var record = entry.completion || {};\n record.type = \"normal\", delete record.arg, entry.completion = record;\n }\n function Context(tryLocsList) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], tryLocsList.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(iterable) {\n if (iterable) {\n var iteratorMethod = iterable[iteratorSymbol];\n if (iteratorMethod) return iteratorMethod.call(iterable);\n if (\"function\" == typeof iterable.next) return iterable;\n if (!isNaN(iterable.length)) {\n var i = -1,\n next = function next() {\n for (; ++i < iterable.length;) if (hasOwn.call(iterable, i)) return next.value = iterable[i], next.done = !1, next;\n return next.value = undefined, next.done = !0, next;\n };\n return next.next = next;\n }\n }\n return {\n next: doneResult\n };\n }\n function doneResult() {\n return {\n value: undefined,\n done: !0\n };\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, defineProperty(Gp, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), defineProperty(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, toStringTagSymbol, \"GeneratorFunction\"), exports.isGeneratorFunction = function (genFun) {\n var ctor = \"function\" == typeof genFun && genFun.constructor;\n return !!ctor && (ctor === GeneratorFunction || \"GeneratorFunction\" === (ctor.displayName || ctor.name));\n }, exports.mark = function (genFun) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(genFun, GeneratorFunctionPrototype) : (genFun.__proto__ = GeneratorFunctionPrototype, define(genFun, toStringTagSymbol, \"GeneratorFunction\")), genFun.prototype = Object.create(Gp), genFun;\n }, exports.awrap = function (arg) {\n return {\n __await: arg\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, asyncIteratorSymbol, function () {\n return this;\n }), exports.AsyncIterator = AsyncIterator, exports.async = function (innerFn, outerFn, self, tryLocsList, PromiseImpl) {\n void 0 === PromiseImpl && (PromiseImpl = Promise);\n var iter = new AsyncIterator(wrap(innerFn, outerFn, self, tryLocsList), PromiseImpl);\n return exports.isGeneratorFunction(outerFn) ? iter : iter.next().then(function (result) {\n return result.done ? result.value : iter.next();\n });\n }, defineIteratorMethods(Gp), define(Gp, toStringTagSymbol, \"Generator\"), define(Gp, iteratorSymbol, function () {\n return this;\n }), define(Gp, \"toString\", function () {\n return \"[object Generator]\";\n }), exports.keys = function (val) {\n var object = Object(val),\n keys = [];\n for (var key in object) keys.push(key);\n return keys.reverse(), function next() {\n for (; keys.length;) {\n var key = keys.pop();\n if (key in object) return next.value = key, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, exports.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(skipTempReset) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = undefined, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = undefined, this.tryEntries.forEach(resetTryEntry), !skipTempReset) for (var name in this) \"t\" === name.charAt(0) && hasOwn.call(this, name) && !isNaN(+name.slice(1)) && (this[name] = undefined);\n },\n stop: function stop() {\n this.done = !0;\n var rootRecord = this.tryEntries[0].completion;\n if (\"throw\" === rootRecord.type) throw rootRecord.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(exception) {\n if (this.done) throw exception;\n var context = this;\n function handle(loc, caught) {\n return record.type = \"throw\", record.arg = exception, context.next = loc, caught && (context.method = \"next\", context.arg = undefined), !!caught;\n }\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i],\n record = entry.completion;\n if (\"root\" === entry.tryLoc) return handle(\"end\");\n if (entry.tryLoc <= this.prev) {\n var hasCatch = hasOwn.call(entry, \"catchLoc\"),\n hasFinally = hasOwn.call(entry, \"finallyLoc\");\n if (hasCatch && hasFinally) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n } else if (hasCatch) {\n if (this.prev < entry.catchLoc) return handle(entry.catchLoc, !0);\n } else {\n if (!hasFinally) throw new Error(\"try statement without catch or finally\");\n if (this.prev < entry.finallyLoc) return handle(entry.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(type, arg) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc <= this.prev && hasOwn.call(entry, \"finallyLoc\") && this.prev < entry.finallyLoc) {\n var finallyEntry = entry;\n break;\n }\n }\n finallyEntry && (\"break\" === type || \"continue\" === type) && finallyEntry.tryLoc <= arg && arg <= finallyEntry.finallyLoc && (finallyEntry = null);\n var record = finallyEntry ? finallyEntry.completion : {};\n return record.type = type, record.arg = arg, finallyEntry ? (this.method = \"next\", this.next = finallyEntry.finallyLoc, ContinueSentinel) : this.complete(record);\n },\n complete: function complete(record, afterLoc) {\n if (\"throw\" === record.type) throw record.arg;\n return \"break\" === record.type || \"continue\" === record.type ? this.next = record.arg : \"return\" === record.type ? (this.rval = this.arg = record.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === record.type && afterLoc && (this.next = afterLoc), ContinueSentinel;\n },\n finish: function finish(finallyLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.finallyLoc === finallyLoc) return this.complete(entry.completion, entry.afterLoc), resetTryEntry(entry), ContinueSentinel;\n }\n },\n \"catch\": function _catch(tryLoc) {\n for (var i = this.tryEntries.length - 1; i >= 0; --i) {\n var entry = this.tryEntries[i];\n if (entry.tryLoc === tryLoc) {\n var record = entry.completion;\n if (\"throw\" === record.type) {\n var thrown = record.arg;\n resetTryEntry(entry);\n }\n return thrown;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(iterable, resultName, nextLoc) {\n return this.delegate = {\n iterator: values(iterable),\n resultName: resultName,\n nextLoc: nextLoc\n }, \"next\" === this.method && (this.arg = undefined), ContinueSentinel;\n }\n }, exports;\n}","function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n\n _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _construct(Parent, args, Class) {\n if (_isNativeReflectConstruct()) {\n _construct = Reflect.construct.bind();\n } else {\n _construct = function _construct(Parent, args, Class) {\n var a = [null];\n a.push.apply(a, args);\n var Constructor = Function.bind.apply(Parent, a);\n var instance = new Constructor();\n if (Class) _setPrototypeOf(instance, Class.prototype);\n return instance;\n };\n }\n\n return _construct.apply(null, arguments);\n}\n\nfunction _isNativeFunction(fn) {\n return Function.toString.call(fn).indexOf(\"[native code]\") !== -1;\n}\n\nfunction _wrapNativeSuper(Class) {\n var _cache = typeof Map === \"function\" ? new Map() : undefined;\n\n _wrapNativeSuper = function _wrapNativeSuper(Class) {\n if (Class === null || !_isNativeFunction(Class)) return Class;\n\n if (typeof Class !== \"function\") {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n if (typeof _cache !== \"undefined\") {\n if (_cache.has(Class)) return _cache.get(Class);\n\n _cache.set(Class, Wrapper);\n }\n\n function Wrapper() {\n return _construct(Class, arguments, _getPrototypeOf(this).constructor);\n }\n\n Wrapper.prototype = Object.create(Class.prototype, {\n constructor: {\n value: Wrapper,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n return _setPrototypeOf(Wrapper, Class);\n };\n\n return _wrapNativeSuper(Class);\n}\n\n/* eslint no-console:0 */\nvar formatRegExp = /%[sdj%]/g;\nvar warning = function warning() {}; // don't print warning message when in production env or node runtime\n\nif (typeof process !== 'undefined' && process.env && process.env.NODE_ENV !== 'production' && typeof window !== 'undefined' && typeof document !== 'undefined') {\n warning = function warning(type, errors) {\n if (typeof console !== 'undefined' && console.warn && typeof ASYNC_VALIDATOR_NO_WARNING === 'undefined') {\n if (errors.every(function (e) {\n return typeof e === 'string';\n })) {\n console.warn(type, errors);\n }\n }\n };\n}\n\nfunction convertFieldsError(errors) {\n if (!errors || !errors.length) return null;\n var fields = {};\n errors.forEach(function (error) {\n var field = error.field;\n fields[field] = fields[field] || [];\n fields[field].push(error);\n });\n return fields;\n}\nfunction format(template) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var i = 0;\n var len = args.length;\n\n if (typeof template === 'function') {\n return template.apply(null, args);\n }\n\n if (typeof template === 'string') {\n var str = template.replace(formatRegExp, function (x) {\n if (x === '%%') {\n return '%';\n }\n\n if (i >= len) {\n return x;\n }\n\n switch (x) {\n case '%s':\n return String(args[i++]);\n\n case '%d':\n return Number(args[i++]);\n\n case '%j':\n try {\n return JSON.stringify(args[i++]);\n } catch (_) {\n return '[Circular]';\n }\n\n break;\n\n default:\n return x;\n }\n });\n return str;\n }\n\n return template;\n}\n\nfunction isNativeStringType(type) {\n return type === 'string' || type === 'url' || type === 'hex' || type === 'email' || type === 'date' || type === 'pattern';\n}\n\nfunction isEmptyValue(value, type) {\n if (value === undefined || value === null) {\n return true;\n }\n\n if (type === 'array' && Array.isArray(value) && !value.length) {\n return true;\n }\n\n if (isNativeStringType(type) && typeof value === 'string' && !value) {\n return true;\n }\n\n return false;\n}\n\nfunction asyncParallelArray(arr, func, callback) {\n var results = [];\n var total = 0;\n var arrLength = arr.length;\n\n function count(errors) {\n results.push.apply(results, errors || []);\n total++;\n\n if (total === arrLength) {\n callback(results);\n }\n }\n\n arr.forEach(function (a) {\n func(a, count);\n });\n}\n\nfunction asyncSerialArray(arr, func, callback) {\n var index = 0;\n var arrLength = arr.length;\n\n function next(errors) {\n if (errors && errors.length) {\n callback(errors);\n return;\n }\n\n var original = index;\n index = index + 1;\n\n if (original < arrLength) {\n func(arr[original], next);\n } else {\n callback([]);\n }\n }\n\n next([]);\n}\n\nfunction flattenObjArr(objArr) {\n var ret = [];\n Object.keys(objArr).forEach(function (k) {\n ret.push.apply(ret, objArr[k] || []);\n });\n return ret;\n}\n\nvar AsyncValidationError = /*#__PURE__*/function (_Error) {\n _inheritsLoose(AsyncValidationError, _Error);\n\n function AsyncValidationError(errors, fields) {\n var _this;\n\n _this = _Error.call(this, 'Async Validation Error') || this;\n _this.errors = errors;\n _this.fields = fields;\n return _this;\n }\n\n return AsyncValidationError;\n}( /*#__PURE__*/_wrapNativeSuper(Error));\nfunction asyncMap(objArr, option, func, callback, source) {\n if (option.first) {\n var _pending = new Promise(function (resolve, reject) {\n var next = function next(errors) {\n callback(errors);\n return errors.length ? reject(new AsyncValidationError(errors, convertFieldsError(errors))) : resolve(source);\n };\n\n var flattenArr = flattenObjArr(objArr);\n asyncSerialArray(flattenArr, func, next);\n });\n\n _pending[\"catch\"](function (e) {\n return e;\n });\n\n return _pending;\n }\n\n var firstFields = option.firstFields === true ? Object.keys(objArr) : option.firstFields || [];\n var objArrKeys = Object.keys(objArr);\n var objArrLength = objArrKeys.length;\n var total = 0;\n var results = [];\n var pending = new Promise(function (resolve, reject) {\n var next = function next(errors) {\n results.push.apply(results, errors);\n total++;\n\n if (total === objArrLength) {\n callback(results);\n return results.length ? reject(new AsyncValidationError(results, convertFieldsError(results))) : resolve(source);\n }\n };\n\n if (!objArrKeys.length) {\n callback(results);\n resolve(source);\n }\n\n objArrKeys.forEach(function (key) {\n var arr = objArr[key];\n\n if (firstFields.indexOf(key) !== -1) {\n asyncSerialArray(arr, func, next);\n } else {\n asyncParallelArray(arr, func, next);\n }\n });\n });\n pending[\"catch\"](function (e) {\n return e;\n });\n return pending;\n}\n\nfunction isErrorObj(obj) {\n return !!(obj && obj.message !== undefined);\n}\n\nfunction getValue(value, path) {\n var v = value;\n\n for (var i = 0; i < path.length; i++) {\n if (v == undefined) {\n return v;\n }\n\n v = v[path[i]];\n }\n\n return v;\n}\n\nfunction complementError(rule, source) {\n return function (oe) {\n var fieldValue;\n\n if (rule.fullFields) {\n fieldValue = getValue(source, rule.fullFields);\n } else {\n fieldValue = source[oe.field || rule.fullField];\n }\n\n if (isErrorObj(oe)) {\n oe.field = oe.field || rule.fullField;\n oe.fieldValue = fieldValue;\n return oe;\n }\n\n return {\n message: typeof oe === 'function' ? oe() : oe,\n fieldValue: fieldValue,\n field: oe.field || rule.fullField\n };\n };\n}\nfunction deepMerge(target, source) {\n if (source) {\n for (var s in source) {\n if (source.hasOwnProperty(s)) {\n var value = source[s];\n\n if (typeof value === 'object' && typeof target[s] === 'object') {\n target[s] = _extends({}, target[s], value);\n } else {\n target[s] = value;\n }\n }\n }\n }\n\n return target;\n}\n\nvar required$1 = function required(rule, value, source, errors, options, type) {\n if (rule.required && (!source.hasOwnProperty(rule.field) || isEmptyValue(value, type || rule.type))) {\n errors.push(format(options.messages.required, rule.fullField));\n }\n};\n\n/**\n * Rule for validating whitespace.\n *\n * @param rule The validation rule.\n * @param value The value of the field on the source object.\n * @param source The source object being validated.\n * @param errors An array of errors that this rule may add\n * validation errors to.\n * @param options The validation options.\n * @param options.messages The validation messages.\n */\n\nvar whitespace = function whitespace(rule, value, source, errors, options) {\n if (/^\\s+$/.test(value) || value === '') {\n errors.push(format(options.messages.whitespace, rule.fullField));\n }\n};\n\n// https://github.com/kevva/url-regex/blob/master/index.js\nvar urlReg;\nvar getUrlRegex = (function () {\n if (urlReg) {\n return urlReg;\n }\n\n var word = '[a-fA-F\\\\d:]';\n\n var b = function b(options) {\n return options && options.includeBoundaries ? \"(?:(?<=\\\\s|^)(?=\" + word + \")|(?<=\" + word + \")(?=\\\\s|$))\" : '';\n };\n\n var v4 = '(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}';\n var v6seg = '[a-fA-F\\\\d]{1,4}';\n var v6 = (\"\\n(?:\\n(?:\" + v6seg + \":){7}(?:\" + v6seg + \"|:)| // 1:2:3:4:5:6:7:: 1:2:3:4:5:6:7:8\\n(?:\" + v6seg + \":){6}(?:\" + v4 + \"|:\" + v6seg + \"|:)| // 1:2:3:4:5:6:: 1:2:3:4:5:6::8 1:2:3:4:5:6::8 1:2:3:4:5:6::1.2.3.4\\n(?:\" + v6seg + \":){5}(?::\" + v4 + \"|(?::\" + v6seg + \"){1,2}|:)| // 1:2:3:4:5:: 1:2:3:4:5::7:8 1:2:3:4:5::8 1:2:3:4:5::7:1.2.3.4\\n(?:\" + v6seg + \":){4}(?:(?::\" + v6seg + \"){0,1}:\" + v4 + \"|(?::\" + v6seg + \"){1,3}|:)| // 1:2:3:4:: 1:2:3:4::6:7:8 1:2:3:4::8 1:2:3:4::6:7:1.2.3.4\\n(?:\" + v6seg + \":){3}(?:(?::\" + v6seg + \"){0,2}:\" + v4 + \"|(?::\" + v6seg + \"){1,4}|:)| // 1:2:3:: 1:2:3::5:6:7:8 1:2:3::8 1:2:3::5:6:7:1.2.3.4\\n(?:\" + v6seg + \":){2}(?:(?::\" + v6seg + \"){0,3}:\" + v4 + \"|(?::\" + v6seg + \"){1,5}|:)| // 1:2:: 1:2::4:5:6:7:8 1:2::8 1:2::4:5:6:7:1.2.3.4\\n(?:\" + v6seg + \":){1}(?:(?::\" + v6seg + \"){0,4}:\" + v4 + \"|(?::\" + v6seg + \"){1,6}|:)| // 1:: 1::3:4:5:6:7:8 1::8 1::3:4:5:6:7:1.2.3.4\\n(?::(?:(?::\" + v6seg + \"){0,5}:\" + v4 + \"|(?::\" + v6seg + \"){1,7}|:)) // ::2:3:4:5:6:7:8 ::2:3:4:5:6:7:8 ::8 ::1.2.3.4\\n)(?:%[0-9a-zA-Z]{1,})? // %eth0 %1\\n\").replace(/\\s*\\/\\/.*$/gm, '').replace(/\\n/g, '').trim(); // Pre-compile only the exact regexes because adding a global flag make regexes stateful\n\n var v46Exact = new RegExp(\"(?:^\" + v4 + \"$)|(?:^\" + v6 + \"$)\");\n var v4exact = new RegExp(\"^\" + v4 + \"$\");\n var v6exact = new RegExp(\"^\" + v6 + \"$\");\n\n var ip = function ip(options) {\n return options && options.exact ? v46Exact : new RegExp(\"(?:\" + b(options) + v4 + b(options) + \")|(?:\" + b(options) + v6 + b(options) + \")\", 'g');\n };\n\n ip.v4 = function (options) {\n return options && options.exact ? v4exact : new RegExp(\"\" + b(options) + v4 + b(options), 'g');\n };\n\n ip.v6 = function (options) {\n return options && options.exact ? v6exact : new RegExp(\"\" + b(options) + v6 + b(options), 'g');\n };\n\n var protocol = \"(?:(?:[a-z]+:)?//)\";\n var auth = '(?:\\\\S+(?::\\\\S*)?@)?';\n var ipv4 = ip.v4().source;\n var ipv6 = ip.v6().source;\n var host = \"(?:(?:[a-z\\\\u00a1-\\\\uffff0-9][-_]*)*[a-z\\\\u00a1-\\\\uffff0-9]+)\";\n var domain = \"(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff0-9]-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)*\";\n var tld = \"(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff]{2,}))\";\n var port = '(?::\\\\d{2,5})?';\n var path = '(?:[/?#][^\\\\s\"]*)?';\n var regex = \"(?:\" + protocol + \"|www\\\\.)\" + auth + \"(?:localhost|\" + ipv4 + \"|\" + ipv6 + \"|\" + host + domain + tld + \")\" + port + path;\n urlReg = new RegExp(\"(?:^\" + regex + \"$)\", 'i');\n return urlReg;\n});\n\n/* eslint max-len:0 */\n\nvar pattern$2 = {\n // http://emailregex.com/\n email: /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]+\\.)+[a-zA-Z\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]{2,}))$/,\n // url: new RegExp(\n // '^(?!mailto:)(?:(?:http|https|ftp)://|//)(?:\\\\S+(?::\\\\S*)?@)?(?:(?:(?:[1-9]\\\\d?|1\\\\d\\\\d|2[01]\\\\d|22[0-3])(?:\\\\.(?:1?\\\\d{1,2}|2[0-4]\\\\d|25[0-5])){2}(?:\\\\.(?:[0-9]\\\\d?|1\\\\d\\\\d|2[0-4]\\\\d|25[0-4]))|(?:(?:[a-z\\\\u00a1-\\\\uffff0-9]+-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff0-9]+-*)*[a-z\\\\u00a1-\\\\uffff0-9]+)*(?:\\\\.(?:[a-z\\\\u00a1-\\\\uffff]{2,})))|localhost)(?::\\\\d{2,5})?(?:(/|\\\\?|#)[^\\\\s]*)?$',\n // 'i',\n // ),\n hex: /^#?([a-f0-9]{6}|[a-f0-9]{3})$/i\n};\nvar types = {\n integer: function integer(value) {\n return types.number(value) && parseInt(value, 10) === value;\n },\n \"float\": function float(value) {\n return types.number(value) && !types.integer(value);\n },\n array: function array(value) {\n return Array.isArray(value);\n },\n regexp: function regexp(value) {\n if (value instanceof RegExp) {\n return true;\n }\n\n try {\n return !!new RegExp(value);\n } catch (e) {\n return false;\n }\n },\n date: function date(value) {\n return typeof value.getTime === 'function' && typeof value.getMonth === 'function' && typeof value.getYear === 'function' && !isNaN(value.getTime());\n },\n number: function number(value) {\n if (isNaN(value)) {\n return false;\n }\n\n return typeof value === 'number';\n },\n object: function object(value) {\n return typeof value === 'object' && !types.array(value);\n },\n method: function method(value) {\n return typeof value === 'function';\n },\n email: function email(value) {\n return typeof value === 'string' && value.length <= 320 && !!value.match(pattern$2.email);\n },\n url: function url(value) {\n return typeof value === 'string' && value.length <= 2048 && !!value.match(getUrlRegex());\n },\n hex: function hex(value) {\n return typeof value === 'string' && !!value.match(pattern$2.hex);\n }\n};\n\nvar type$1 = function type(rule, value, source, errors, options) {\n if (rule.required && value === undefined) {\n required$1(rule, value, source, errors, options);\n return;\n }\n\n var custom = ['integer', 'float', 'array', 'regexp', 'object', 'method', 'email', 'number', 'date', 'url', 'hex'];\n var ruleType = rule.type;\n\n if (custom.indexOf(ruleType) > -1) {\n if (!types[ruleType](value)) {\n errors.push(format(options.messages.types[ruleType], rule.fullField, rule.type));\n } // straight typeof check\n\n } else if (ruleType && typeof value !== rule.type) {\n errors.push(format(options.messages.types[ruleType], rule.fullField, rule.type));\n }\n};\n\nvar range = function range(rule, value, source, errors, options) {\n var len = typeof rule.len === 'number';\n var min = typeof rule.min === 'number';\n var max = typeof rule.max === 'number'; // 正则匹配码点范围从U+010000一直到U+10FFFF的文字(补充平面Supplementary Plane)\n\n var spRegexp = /[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]/g;\n var val = value;\n var key = null;\n var num = typeof value === 'number';\n var str = typeof value === 'string';\n var arr = Array.isArray(value);\n\n if (num) {\n key = 'number';\n } else if (str) {\n key = 'string';\n } else if (arr) {\n key = 'array';\n } // if the value is not of a supported type for range validation\n // the validation rule rule should use the\n // type property to also test for a particular type\n\n\n if (!key) {\n return false;\n }\n\n if (arr) {\n val = value.length;\n }\n\n if (str) {\n // 处理码点大于U+010000的文字length属性不准确的bug,如\"𠮷𠮷𠮷\".lenght !== 3\n val = value.replace(spRegexp, '_').length;\n }\n\n if (len) {\n if (val !== rule.len) {\n errors.push(format(options.messages[key].len, rule.fullField, rule.len));\n }\n } else if (min && !max && val < rule.min) {\n errors.push(format(options.messages[key].min, rule.fullField, rule.min));\n } else if (max && !min && val > rule.max) {\n errors.push(format(options.messages[key].max, rule.fullField, rule.max));\n } else if (min && max && (val < rule.min || val > rule.max)) {\n errors.push(format(options.messages[key].range, rule.fullField, rule.min, rule.max));\n }\n};\n\nvar ENUM$1 = 'enum';\n\nvar enumerable$1 = function enumerable(rule, value, source, errors, options) {\n rule[ENUM$1] = Array.isArray(rule[ENUM$1]) ? rule[ENUM$1] : [];\n\n if (rule[ENUM$1].indexOf(value) === -1) {\n errors.push(format(options.messages[ENUM$1], rule.fullField, rule[ENUM$1].join(', ')));\n }\n};\n\nvar pattern$1 = function pattern(rule, value, source, errors, options) {\n if (rule.pattern) {\n if (rule.pattern instanceof RegExp) {\n // if a RegExp instance is passed, reset `lastIndex` in case its `global`\n // flag is accidentally set to `true`, which in a validation scenario\n // is not necessary and the result might be misleading\n rule.pattern.lastIndex = 0;\n\n if (!rule.pattern.test(value)) {\n errors.push(format(options.messages.pattern.mismatch, rule.fullField, value, rule.pattern));\n }\n } else if (typeof rule.pattern === 'string') {\n var _pattern = new RegExp(rule.pattern);\n\n if (!_pattern.test(value)) {\n errors.push(format(options.messages.pattern.mismatch, rule.fullField, value, rule.pattern));\n }\n }\n }\n};\n\nvar rules = {\n required: required$1,\n whitespace: whitespace,\n type: type$1,\n range: range,\n \"enum\": enumerable$1,\n pattern: pattern$1\n};\n\nvar string = function string(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value, 'string') && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options, 'string');\n\n if (!isEmptyValue(value, 'string')) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n rules.pattern(rule, value, source, errors, options);\n\n if (rule.whitespace === true) {\n rules.whitespace(rule, value, source, errors, options);\n }\n }\n }\n\n callback(errors);\n};\n\nvar method = function method(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar number = function number(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (value === '') {\n value = undefined;\n }\n\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar _boolean = function _boolean(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar regexp = function regexp(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (!isEmptyValue(value)) {\n rules.type(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar integer = function integer(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar floatFn = function floatFn(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar array = function array(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if ((value === undefined || value === null) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options, 'array');\n\n if (value !== undefined && value !== null) {\n rules.type(rule, value, source, errors, options);\n rules.range(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar object = function object(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules.type(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar ENUM = 'enum';\n\nvar enumerable = function enumerable(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (value !== undefined) {\n rules[ENUM](rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar pattern = function pattern(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value, 'string') && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (!isEmptyValue(value, 'string')) {\n rules.pattern(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar date = function date(rule, value, callback, source, options) {\n // console.log('integer rule called %j', rule);\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field); // console.log('validate on %s value', value);\n\n if (validate) {\n if (isEmptyValue(value, 'date') && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n\n if (!isEmptyValue(value, 'date')) {\n var dateObject;\n\n if (value instanceof Date) {\n dateObject = value;\n } else {\n dateObject = new Date(value);\n }\n\n rules.type(rule, dateObject, source, errors, options);\n\n if (dateObject) {\n rules.range(rule, dateObject.getTime(), source, errors, options);\n }\n }\n }\n\n callback(errors);\n};\n\nvar required = function required(rule, value, callback, source, options) {\n var errors = [];\n var type = Array.isArray(value) ? 'array' : typeof value;\n rules.required(rule, value, source, errors, options, type);\n callback(errors);\n};\n\nvar type = function type(rule, value, callback, source, options) {\n var ruleType = rule.type;\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value, ruleType) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options, ruleType);\n\n if (!isEmptyValue(value, ruleType)) {\n rules.type(rule, value, source, errors, options);\n }\n }\n\n callback(errors);\n};\n\nvar any = function any(rule, value, callback, source, options) {\n var errors = [];\n var validate = rule.required || !rule.required && source.hasOwnProperty(rule.field);\n\n if (validate) {\n if (isEmptyValue(value) && !rule.required) {\n return callback();\n }\n\n rules.required(rule, value, source, errors, options);\n }\n\n callback(errors);\n};\n\nvar validators = {\n string: string,\n method: method,\n number: number,\n \"boolean\": _boolean,\n regexp: regexp,\n integer: integer,\n \"float\": floatFn,\n array: array,\n object: object,\n \"enum\": enumerable,\n pattern: pattern,\n date: date,\n url: type,\n hex: type,\n email: type,\n required: required,\n any: any\n};\n\nfunction newMessages() {\n return {\n \"default\": 'Validation error on field %s',\n required: '%s is required',\n \"enum\": '%s must be one of %s',\n whitespace: '%s cannot be empty',\n date: {\n format: '%s date %s is invalid for format %s',\n parse: '%s date could not be parsed, %s is invalid ',\n invalid: '%s date %s is invalid'\n },\n types: {\n string: '%s is not a %s',\n method: '%s is not a %s (function)',\n array: '%s is not an %s',\n object: '%s is not an %s',\n number: '%s is not a %s',\n date: '%s is not a %s',\n \"boolean\": '%s is not a %s',\n integer: '%s is not an %s',\n \"float\": '%s is not a %s',\n regexp: '%s is not a valid %s',\n email: '%s is not a valid %s',\n url: '%s is not a valid %s',\n hex: '%s is not a valid %s'\n },\n string: {\n len: '%s must be exactly %s characters',\n min: '%s must be at least %s characters',\n max: '%s cannot be longer than %s characters',\n range: '%s must be between %s and %s characters'\n },\n number: {\n len: '%s must equal %s',\n min: '%s cannot be less than %s',\n max: '%s cannot be greater than %s',\n range: '%s must be between %s and %s'\n },\n array: {\n len: '%s must be exactly %s in length',\n min: '%s cannot be less than %s in length',\n max: '%s cannot be greater than %s in length',\n range: '%s must be between %s and %s in length'\n },\n pattern: {\n mismatch: '%s value %s does not match pattern %s'\n },\n clone: function clone() {\n var cloned = JSON.parse(JSON.stringify(this));\n cloned.clone = this.clone;\n return cloned;\n }\n };\n}\nvar messages = newMessages();\n\n/**\n * Encapsulates a validation schema.\n *\n * @param descriptor An object declaring validation rules\n * for this schema.\n */\n\nvar Schema = /*#__PURE__*/function () {\n // ========================= Static =========================\n // ======================== Instance ========================\n function Schema(descriptor) {\n this.rules = null;\n this._messages = messages;\n this.define(descriptor);\n }\n\n var _proto = Schema.prototype;\n\n _proto.define = function define(rules) {\n var _this = this;\n\n if (!rules) {\n throw new Error('Cannot configure a schema with no rules');\n }\n\n if (typeof rules !== 'object' || Array.isArray(rules)) {\n throw new Error('Rules must be an object');\n }\n\n this.rules = {};\n Object.keys(rules).forEach(function (name) {\n var item = rules[name];\n _this.rules[name] = Array.isArray(item) ? item : [item];\n });\n };\n\n _proto.messages = function messages(_messages) {\n if (_messages) {\n this._messages = deepMerge(newMessages(), _messages);\n }\n\n return this._messages;\n };\n\n _proto.validate = function validate(source_, o, oc) {\n var _this2 = this;\n\n if (o === void 0) {\n o = {};\n }\n\n if (oc === void 0) {\n oc = function oc() {};\n }\n\n var source = source_;\n var options = o;\n var callback = oc;\n\n if (typeof options === 'function') {\n callback = options;\n options = {};\n }\n\n if (!this.rules || Object.keys(this.rules).length === 0) {\n if (callback) {\n callback(null, source);\n }\n\n return Promise.resolve(source);\n }\n\n function complete(results) {\n var errors = [];\n var fields = {};\n\n function add(e) {\n if (Array.isArray(e)) {\n var _errors;\n\n errors = (_errors = errors).concat.apply(_errors, e);\n } else {\n errors.push(e);\n }\n }\n\n for (var i = 0; i < results.length; i++) {\n add(results[i]);\n }\n\n if (!errors.length) {\n callback(null, source);\n } else {\n fields = convertFieldsError(errors);\n callback(errors, fields);\n }\n }\n\n if (options.messages) {\n var messages$1 = this.messages();\n\n if (messages$1 === messages) {\n messages$1 = newMessages();\n }\n\n deepMerge(messages$1, options.messages);\n options.messages = messages$1;\n } else {\n options.messages = this.messages();\n }\n\n var series = {};\n var keys = options.keys || Object.keys(this.rules);\n keys.forEach(function (z) {\n var arr = _this2.rules[z];\n var value = source[z];\n arr.forEach(function (r) {\n var rule = r;\n\n if (typeof rule.transform === 'function') {\n if (source === source_) {\n source = _extends({}, source);\n }\n\n value = source[z] = rule.transform(value);\n }\n\n if (typeof rule === 'function') {\n rule = {\n validator: rule\n };\n } else {\n rule = _extends({}, rule);\n } // Fill validator. Skip if nothing need to validate\n\n\n rule.validator = _this2.getValidationMethod(rule);\n\n if (!rule.validator) {\n return;\n }\n\n rule.field = z;\n rule.fullField = rule.fullField || z;\n rule.type = _this2.getType(rule);\n series[z] = series[z] || [];\n series[z].push({\n rule: rule,\n value: value,\n source: source,\n field: z\n });\n });\n });\n var errorFields = {};\n return asyncMap(series, options, function (data, doIt) {\n var rule = data.rule;\n var deep = (rule.type === 'object' || rule.type === 'array') && (typeof rule.fields === 'object' || typeof rule.defaultField === 'object');\n deep = deep && (rule.required || !rule.required && data.value);\n rule.field = data.field;\n\n function addFullField(key, schema) {\n return _extends({}, schema, {\n fullField: rule.fullField + \".\" + key,\n fullFields: rule.fullFields ? [].concat(rule.fullFields, [key]) : [key]\n });\n }\n\n function cb(e) {\n if (e === void 0) {\n e = [];\n }\n\n var errorList = Array.isArray(e) ? e : [e];\n\n if (!options.suppressWarning && errorList.length) {\n Schema.warning('async-validator:', errorList);\n }\n\n if (errorList.length && rule.message !== undefined) {\n errorList = [].concat(rule.message);\n } // Fill error info\n\n\n var filledErrors = errorList.map(complementError(rule, source));\n\n if (options.first && filledErrors.length) {\n errorFields[rule.field] = 1;\n return doIt(filledErrors);\n }\n\n if (!deep) {\n doIt(filledErrors);\n } else {\n // if rule is required but the target object\n // does not exist fail at the rule level and don't\n // go deeper\n if (rule.required && !data.value) {\n if (rule.message !== undefined) {\n filledErrors = [].concat(rule.message).map(complementError(rule, source));\n } else if (options.error) {\n filledErrors = [options.error(rule, format(options.messages.required, rule.field))];\n }\n\n return doIt(filledErrors);\n }\n\n var fieldsSchema = {};\n\n if (rule.defaultField) {\n Object.keys(data.value).map(function (key) {\n fieldsSchema[key] = rule.defaultField;\n });\n }\n\n fieldsSchema = _extends({}, fieldsSchema, data.rule.fields);\n var paredFieldsSchema = {};\n Object.keys(fieldsSchema).forEach(function (field) {\n var fieldSchema = fieldsSchema[field];\n var fieldSchemaList = Array.isArray(fieldSchema) ? fieldSchema : [fieldSchema];\n paredFieldsSchema[field] = fieldSchemaList.map(addFullField.bind(null, field));\n });\n var schema = new Schema(paredFieldsSchema);\n schema.messages(options.messages);\n\n if (data.rule.options) {\n data.rule.options.messages = options.messages;\n data.rule.options.error = options.error;\n }\n\n schema.validate(data.value, data.rule.options || options, function (errs) {\n var finalErrors = [];\n\n if (filledErrors && filledErrors.length) {\n finalErrors.push.apply(finalErrors, filledErrors);\n }\n\n if (errs && errs.length) {\n finalErrors.push.apply(finalErrors, errs);\n }\n\n doIt(finalErrors.length ? finalErrors : null);\n });\n }\n }\n\n var res;\n\n if (rule.asyncValidator) {\n res = rule.asyncValidator(rule, data.value, cb, data.source, options);\n } else if (rule.validator) {\n try {\n res = rule.validator(rule, data.value, cb, data.source, options);\n } catch (error) {\n console.error == null ? void 0 : console.error(error); // rethrow to report error\n\n if (!options.suppressValidatorError) {\n setTimeout(function () {\n throw error;\n }, 0);\n }\n\n cb(error.message);\n }\n\n if (res === true) {\n cb();\n } else if (res === false) {\n cb(typeof rule.message === 'function' ? rule.message(rule.fullField || rule.field) : rule.message || (rule.fullField || rule.field) + \" fails\");\n } else if (res instanceof Array) {\n cb(res);\n } else if (res instanceof Error) {\n cb(res.message);\n }\n }\n\n if (res && res.then) {\n res.then(function () {\n return cb();\n }, function (e) {\n return cb(e);\n });\n }\n }, function (results) {\n complete(results);\n }, source);\n };\n\n _proto.getType = function getType(rule) {\n if (rule.type === undefined && rule.pattern instanceof RegExp) {\n rule.type = 'pattern';\n }\n\n if (typeof rule.validator !== 'function' && rule.type && !validators.hasOwnProperty(rule.type)) {\n throw new Error(format('Unknown rule type %s', rule.type));\n }\n\n return rule.type || 'string';\n };\n\n _proto.getValidationMethod = function getValidationMethod(rule) {\n if (typeof rule.validator === 'function') {\n return rule.validator;\n }\n\n var keys = Object.keys(rule);\n var messageIndex = keys.indexOf('message');\n\n if (messageIndex !== -1) {\n keys.splice(messageIndex, 1);\n }\n\n if (keys.length === 1 && keys[0] === 'required') {\n return validators.required;\n }\n\n return validators[this.getType(rule)] || undefined;\n };\n\n return Schema;\n}();\n\nSchema.register = function register(type, validator) {\n if (typeof validator !== 'function') {\n throw new Error('Cannot register a validator by type, validator is not a function');\n }\n\n validators[type] = validator;\n};\n\nSchema.warning = warning;\nSchema.messages = messages;\nSchema.validators = validators;\n\nexport { Schema as default };\n//# sourceMappingURL=index.js.map\n","var typeTemplate = \"'${name}' is not a valid ${type}\";\nexport var defaultValidateMessages = {\n default: \"Validation error on field '${name}'\",\n required: \"'${name}' is required\",\n enum: \"'${name}' must be one of [${enum}]\",\n whitespace: \"'${name}' cannot be empty\",\n date: {\n format: \"'${name}' is invalid for format date\",\n parse: \"'${name}' could not be parsed as date\",\n invalid: \"'${name}' is invalid date\"\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: \"'${name}' must be exactly ${len} characters\",\n min: \"'${name}' must be at least ${min} characters\",\n max: \"'${name}' cannot be longer than ${max} characters\",\n range: \"'${name}' must be between ${min} and ${max} characters\"\n },\n number: {\n len: \"'${name}' must equal ${len}\",\n min: \"'${name}' cannot be less than ${min}\",\n max: \"'${name}' cannot be greater than ${max}\",\n range: \"'${name}' must be between ${min} and ${max}\"\n },\n array: {\n len: \"'${name}' must be exactly ${len} in length\",\n min: \"'${name}' cannot be less than ${min} in length\",\n max: \"'${name}' cannot be greater than ${max} in length\",\n range: \"'${name}' must be between ${min} and ${max} in length\"\n },\n pattern: {\n mismatch: \"'${name}' does not match pattern ${pattern}\"\n }\n};","export default function get(entity, path) {\n var current = entity;\n for (var i = 0; i < path.length; i += 1) {\n if (current === null || current === undefined) {\n return undefined;\n }\n current = current[path[i]];\n }\n return current;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _toArray from \"@babel/runtime/helpers/esm/toArray\";\nimport get from \"./get\";\nfunction internalSet(entity, paths, value, removeIfUndefined) {\n if (!paths.length) {\n return value;\n }\n var _paths = _toArray(paths),\n path = _paths[0],\n restPath = _paths.slice(1);\n var clone;\n if (!entity && typeof path === 'number') {\n clone = [];\n } else if (Array.isArray(entity)) {\n clone = _toConsumableArray(entity);\n } else {\n clone = _objectSpread({}, entity);\n }\n\n // Delete prop if `removeIfUndefined` and value is undefined\n if (removeIfUndefined && value === undefined && restPath.length === 1) {\n delete clone[path][restPath[0]];\n } else {\n clone[path] = internalSet(clone[path], restPath, value, removeIfUndefined);\n }\n return clone;\n}\nexport default function set(entity, paths, value) {\n var removeIfUndefined = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n // Do nothing if `removeIfUndefined` and parent object not exist\n if (paths.length && removeIfUndefined && value === undefined && !get(entity, paths.slice(0, -1))) {\n return entity;\n }\n return internalSet(entity, paths, value, removeIfUndefined);\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _toArray(arr) {\n return arrayWithHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableRest();\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nfunction cloneDeep(val) {\n if (Array.isArray(val)) {\n return cloneArrayDeep(val);\n } else if (_typeof(val) === 'object' && val !== null) {\n return cloneObjectDeep(val);\n }\n return val;\n}\nfunction cloneObjectDeep(val) {\n if (Object.getPrototypeOf(val) === Object.prototype) {\n var res = {};\n for (var key in val) {\n res[key] = cloneDeep(val[key]);\n }\n return res;\n }\n return val;\n}\nfunction cloneArrayDeep(val) {\n return val.map(function (item) {\n return cloneDeep(item);\n });\n}\nexport default cloneDeep;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport get from \"rc-util/es/utils/get\";\nimport set from \"rc-util/es/utils/set\";\nimport { toArray } from './typeUtil';\nimport cloneDeep from '../utils/cloneDeep';\n/**\n * Convert name to internal supported format.\n * This function should keep since we still thinking if need support like `a.b.c` format.\n * 'a' => ['a']\n * 123 => [123]\n * ['a', 123] => ['a', 123]\n */\nexport function getNamePath(path) {\n return toArray(path);\n}\nexport function getValue(store, namePath) {\n var value = get(store, namePath);\n return value;\n}\nexport function setValue(store, namePath, value) {\n var removeIfUndefined = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var newStore = set(store, namePath, value, removeIfUndefined);\n return newStore;\n}\nexport function cloneByNamePathList(store, namePathList) {\n var newStore = {};\n namePathList.forEach(function (namePath) {\n var value = getValue(store, namePath);\n newStore = setValue(newStore, namePath, value);\n });\n return newStore;\n}\nexport function containsNamePath(namePathList, namePath) {\n return namePathList && namePathList.some(function (path) {\n return matchNamePath(path, namePath);\n });\n}\nfunction isObject(obj) {\n return _typeof(obj) === 'object' && obj !== null && Object.getPrototypeOf(obj) === Object.prototype;\n}\n/**\n * Copy values into store and return a new values object\n * ({ a: 1, b: { c: 2 } }, { a: 4, b: { d: 5 } }) => { a: 4, b: { c: 2, d: 5 } }\n */\nfunction internalSetValues(store, values) {\n var newStore = Array.isArray(store) ? _toConsumableArray(store) : _objectSpread({}, store);\n if (!values) {\n return newStore;\n }\n Object.keys(values).forEach(function (key) {\n var prevValue = newStore[key];\n var value = values[key];\n // If both are object (but target is not array), we use recursion to set deep value\n var recursive = isObject(prevValue) && isObject(value);\n newStore[key] = recursive ? internalSetValues(prevValue, value || {}) : cloneDeep(value); // Clone deep for arrays\n });\n\n return newStore;\n}\nexport function setValues(store) {\n for (var _len = arguments.length, restValues = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n restValues[_key - 1] = arguments[_key];\n }\n return restValues.reduce(function (current, newStore) {\n return internalSetValues(current, newStore);\n }, store);\n}\nexport function matchNamePath(namePath, changedNamePath) {\n if (!namePath || !changedNamePath || namePath.length !== changedNamePath.length) {\n return false;\n }\n return namePath.every(function (nameUnit, i) {\n return changedNamePath[i] === nameUnit;\n });\n}\nexport function isSimilar(source, target) {\n if (source === target) {\n return true;\n }\n if (!source && target || source && !target) {\n return false;\n }\n if (!source || !target || _typeof(source) !== 'object' || _typeof(target) !== 'object') {\n return false;\n }\n var sourceKeys = Object.keys(source);\n var targetKeys = Object.keys(target);\n var keys = new Set([].concat(sourceKeys, targetKeys));\n return _toConsumableArray(keys).every(function (key) {\n var sourceValue = source[key];\n var targetValue = target[key];\n if (typeof sourceValue === 'function' && typeof targetValue === 'function') {\n return true;\n }\n return sourceValue === targetValue;\n });\n}\nexport function defaultGetValueFromEvent(valuePropName) {\n var event = arguments.length <= 1 ? undefined : arguments[1];\n if (event && event.target && _typeof(event.target) === 'object' && valuePropName in event.target) {\n return event.target[valuePropName];\n }\n return event;\n}\n/**\n * Moves an array item from one position in an array to another.\n *\n * Note: This is a pure function so a new array will be returned, instead\n * of altering the array argument.\n *\n * @param array Array in which to move an item. (required)\n * @param moveIndex The index of the item to move. (required)\n * @param toIndex The index to move item at moveIndex to. (required)\n */\nexport function move(array, moveIndex, toIndex) {\n var length = array.length;\n if (moveIndex < 0 || moveIndex >= length || toIndex < 0 || toIndex >= length) {\n return array;\n }\n var item = array[moveIndex];\n var diff = moveIndex - toIndex;\n if (diff > 0) {\n // move left\n return [].concat(_toConsumableArray(array.slice(0, toIndex)), [item], _toConsumableArray(array.slice(toIndex, moveIndex)), _toConsumableArray(array.slice(moveIndex + 1, length)));\n }\n if (diff < 0) {\n // move right\n return [].concat(_toConsumableArray(array.slice(0, moveIndex)), _toConsumableArray(array.slice(moveIndex + 1, toIndex + 1)), [item], _toConsumableArray(array.slice(toIndex + 1, length)));\n }\n return array;\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport RawAsyncValidator from 'async-validator';\nimport * as React from 'react';\nimport warning from \"rc-util/es/warning\";\nimport { defaultValidateMessages } from './messages';\nimport { setValues } from './valueUtil';\n// Remove incorrect original ts define\nvar AsyncValidator = RawAsyncValidator;\n/**\n * Replace with template.\n * `I'm ${name}` + { name: 'bamboo' } = I'm bamboo\n */\nfunction replaceMessage(template, kv) {\n return template.replace(/\\$\\{\\w+\\}/g, function (str) {\n var key = str.slice(2, -1);\n return kv[key];\n });\n}\nvar CODE_LOGIC_ERROR = 'CODE_LOGIC_ERROR';\nfunction validateRule(_x, _x2, _x3, _x4, _x5) {\n return _validateRule.apply(this, arguments);\n}\n/**\n * We use `async-validator` to validate the value.\n * But only check one value in a time to avoid namePath validate issue.\n */\nfunction _validateRule() {\n _validateRule = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(name, value, rule, options, messageVariables) {\n var cloneRule, originValidator, subRuleField, validator, messages, result, subResults, kv, fillVariableResult;\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n cloneRule = _objectSpread({}, rule); // Bug of `async-validator`\n // https://github.com/react-component/field-form/issues/316\n // https://github.com/react-component/field-form/issues/313\n delete cloneRule.ruleIndex;\n if (cloneRule.validator) {\n originValidator = cloneRule.validator;\n cloneRule.validator = function () {\n try {\n return originValidator.apply(void 0, arguments);\n } catch (error) {\n console.error(error);\n return Promise.reject(CODE_LOGIC_ERROR);\n }\n };\n }\n // We should special handle array validate\n subRuleField = null;\n if (cloneRule && cloneRule.type === 'array' && cloneRule.defaultField) {\n subRuleField = cloneRule.defaultField;\n delete cloneRule.defaultField;\n }\n validator = new AsyncValidator(_defineProperty({}, name, [cloneRule]));\n messages = setValues({}, defaultValidateMessages, options.validateMessages);\n validator.messages(messages);\n result = [];\n _context2.prev = 9;\n _context2.next = 12;\n return Promise.resolve(validator.validate(_defineProperty({}, name, value), _objectSpread({}, options)));\n case 12:\n _context2.next = 17;\n break;\n case 14:\n _context2.prev = 14;\n _context2.t0 = _context2[\"catch\"](9);\n if (_context2.t0.errors) {\n result = _context2.t0.errors.map(function (_ref4, index) {\n var message = _ref4.message;\n var mergedMessage = message === CODE_LOGIC_ERROR ? messages.default : message;\n return /*#__PURE__*/React.isValidElement(mergedMessage) ?\n /*#__PURE__*/\n // Wrap ReactNode with `key`\n React.cloneElement(mergedMessage, {\n key: \"error_\".concat(index)\n }) : mergedMessage;\n });\n }\n case 17:\n if (!(!result.length && subRuleField)) {\n _context2.next = 22;\n break;\n }\n _context2.next = 20;\n return Promise.all(value.map(function (subValue, i) {\n return validateRule(\"\".concat(name, \".\").concat(i), subValue, subRuleField, options, messageVariables);\n }));\n case 20:\n subResults = _context2.sent;\n return _context2.abrupt(\"return\", subResults.reduce(function (prev, errors) {\n return [].concat(_toConsumableArray(prev), _toConsumableArray(errors));\n }, []));\n case 22:\n // Replace message with variables\n kv = _objectSpread(_objectSpread({}, rule), {}, {\n name: name,\n enum: (rule.enum || []).join(', ')\n }, messageVariables);\n fillVariableResult = result.map(function (error) {\n if (typeof error === 'string') {\n return replaceMessage(error, kv);\n }\n return error;\n });\n return _context2.abrupt(\"return\", fillVariableResult);\n case 25:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2, null, [[9, 14]]);\n }));\n return _validateRule.apply(this, arguments);\n}\nexport function validateRules(namePath, value, rules, options, validateFirst, messageVariables) {\n var name = namePath.join('.');\n // Fill rule with context\n var filledRules = rules.map(function (currentRule, ruleIndex) {\n var originValidatorFunc = currentRule.validator;\n var cloneRule = _objectSpread(_objectSpread({}, currentRule), {}, {\n ruleIndex: ruleIndex\n });\n // Replace validator if needed\n if (originValidatorFunc) {\n cloneRule.validator = function (rule, val, callback) {\n var hasPromise = false;\n // Wrap callback only accept when promise not provided\n var wrappedCallback = function wrappedCallback() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n // Wait a tick to make sure return type is a promise\n Promise.resolve().then(function () {\n warning(!hasPromise, 'Your validator function has already return a promise. `callback` will be ignored.');\n if (!hasPromise) {\n callback.apply(void 0, args);\n }\n });\n };\n // Get promise\n var promise = originValidatorFunc(rule, val, wrappedCallback);\n hasPromise = promise && typeof promise.then === 'function' && typeof promise.catch === 'function';\n /**\n * 1. Use promise as the first priority.\n * 2. If promise not exist, use callback with warning instead\n */\n warning(hasPromise, '`callback` is deprecated. Please return a promise instead.');\n if (hasPromise) {\n promise.then(function () {\n callback();\n }).catch(function (err) {\n callback(err || ' ');\n });\n }\n };\n }\n return cloneRule;\n }).sort(function (_ref, _ref2) {\n var w1 = _ref.warningOnly,\n i1 = _ref.ruleIndex;\n var w2 = _ref2.warningOnly,\n i2 = _ref2.ruleIndex;\n if (!!w1 === !!w2) {\n // Let keep origin order\n return i1 - i2;\n }\n if (w1) {\n return 1;\n }\n return -1;\n });\n // Do validate rules\n var summaryPromise;\n if (validateFirst === true) {\n // >>>>> Validate by serialization\n summaryPromise = new Promise( /*#__PURE__*/function () {\n var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(resolve, reject) {\n var i, rule, errors;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n i = 0;\n case 1:\n if (!(i < filledRules.length)) {\n _context.next = 12;\n break;\n }\n rule = filledRules[i];\n _context.next = 5;\n return validateRule(name, value, rule, options, messageVariables);\n case 5:\n errors = _context.sent;\n if (!errors.length) {\n _context.next = 9;\n break;\n }\n reject([{\n errors: errors,\n rule: rule\n }]);\n return _context.abrupt(\"return\");\n case 9:\n i += 1;\n _context.next = 1;\n break;\n case 12:\n /* eslint-enable */\n resolve([]);\n case 13:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return function (_x6, _x7) {\n return _ref3.apply(this, arguments);\n };\n }());\n } else {\n // >>>>> Validate by parallel\n var rulePromises = filledRules.map(function (rule) {\n return validateRule(name, value, rule, options, messageVariables).then(function (errors) {\n return {\n errors: errors,\n rule: rule\n };\n });\n });\n summaryPromise = (validateFirst ? finishOnFirstFailed(rulePromises) : finishOnAllFailed(rulePromises)).then(function (errors) {\n // Always change to rejection for Field to catch\n return Promise.reject(errors);\n });\n }\n // Internal catch error to avoid console error log.\n summaryPromise.catch(function (e) {\n return e;\n });\n return summaryPromise;\n}\nfunction finishOnAllFailed(_x8) {\n return _finishOnAllFailed.apply(this, arguments);\n}\nfunction _finishOnAllFailed() {\n _finishOnAllFailed = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(rulePromises) {\n return _regeneratorRuntime().wrap(function _callee3$(_context3) {\n while (1) switch (_context3.prev = _context3.next) {\n case 0:\n return _context3.abrupt(\"return\", Promise.all(rulePromises).then(function (errorsList) {\n var _ref5;\n var errors = (_ref5 = []).concat.apply(_ref5, _toConsumableArray(errorsList));\n return errors;\n }));\n case 1:\n case \"end\":\n return _context3.stop();\n }\n }, _callee3);\n }));\n return _finishOnAllFailed.apply(this, arguments);\n}\nfunction finishOnFirstFailed(_x9) {\n return _finishOnFirstFailed.apply(this, arguments);\n}\nfunction _finishOnFirstFailed() {\n _finishOnFirstFailed = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(rulePromises) {\n var count;\n return _regeneratorRuntime().wrap(function _callee4$(_context4) {\n while (1) switch (_context4.prev = _context4.next) {\n case 0:\n count = 0;\n return _context4.abrupt(\"return\", new Promise(function (resolve) {\n rulePromises.forEach(function (promise) {\n promise.then(function (ruleError) {\n if (ruleError.errors.length) {\n resolve([ruleError]);\n }\n count += 1;\n if (count === rulePromises.length) {\n resolve([]);\n }\n });\n });\n }));\n case 2:\n case \"end\":\n return _context4.stop();\n }\n }, _callee4);\n }));\n return _finishOnFirstFailed.apply(this, arguments);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nvar _excluded = [\"name\"];\nimport toChildrenArray from \"rc-util/es/Children/toArray\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport FieldContext, { HOOK_MARK } from './FieldContext';\nimport { toArray } from './utils/typeUtil';\nimport { validateRules } from './utils/validateUtil';\nimport { containsNamePath, defaultGetValueFromEvent, getNamePath, getValue } from './utils/valueUtil';\nvar EMPTY_ERRORS = [];\nfunction requireUpdate(shouldUpdate, prev, next, prevValue, nextValue, info) {\n if (typeof shouldUpdate === 'function') {\n return shouldUpdate(prev, next, 'source' in info ? {\n source: info.source\n } : {});\n }\n return prevValue !== nextValue;\n}\n// We use Class instead of Hooks here since it will cost much code by using Hooks.\nvar Field = /*#__PURE__*/function (_React$Component) {\n _inherits(Field, _React$Component);\n var _super = _createSuper(Field);\n /**\n * Follow state should not management in State since it will async update by React.\n * This makes first render of form can not get correct state value.\n */\n\n /**\n * Mark when touched & validated. Currently only used for `dependencies`.\n * Note that we do not think field with `initialValue` is dirty\n * but this will be by `isFieldDirty` func.\n */\n\n // ============================== Subscriptions ==============================\n function Field(props) {\n var _this;\n _classCallCheck(this, Field);\n _this = _super.call(this, props);\n // Register on init\n _this.state = {\n resetCount: 0\n };\n _this.cancelRegisterFunc = null;\n _this.mounted = false;\n _this.touched = false;\n _this.dirty = false;\n _this.validatePromise = void 0;\n _this.prevValidating = void 0;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.cancelRegister = function () {\n var _this$props = _this.props,\n preserve = _this$props.preserve,\n isListField = _this$props.isListField,\n name = _this$props.name;\n if (_this.cancelRegisterFunc) {\n _this.cancelRegisterFunc(isListField, preserve, getNamePath(name));\n }\n _this.cancelRegisterFunc = null;\n };\n _this.getNamePath = function () {\n var _this$props2 = _this.props,\n name = _this$props2.name,\n fieldContext = _this$props2.fieldContext;\n var _fieldContext$prefixN = fieldContext.prefixName,\n prefixName = _fieldContext$prefixN === void 0 ? [] : _fieldContext$prefixN;\n return name !== undefined ? [].concat(_toConsumableArray(prefixName), _toConsumableArray(name)) : [];\n };\n _this.getRules = function () {\n var _this$props3 = _this.props,\n _this$props3$rules = _this$props3.rules,\n rules = _this$props3$rules === void 0 ? [] : _this$props3$rules,\n fieldContext = _this$props3.fieldContext;\n return rules.map(function (rule) {\n if (typeof rule === 'function') {\n return rule(fieldContext);\n }\n return rule;\n });\n };\n _this.refresh = function () {\n if (!_this.mounted) return;\n /**\n * Clean up current node.\n */\n _this.setState(function (_ref) {\n var resetCount = _ref.resetCount;\n return {\n resetCount: resetCount + 1\n };\n });\n };\n _this.triggerMetaEvent = function (destroy) {\n var onMetaChange = _this.props.onMetaChange;\n onMetaChange === null || onMetaChange === void 0 ? void 0 : onMetaChange(_objectSpread(_objectSpread({}, _this.getMeta()), {}, {\n destroy: destroy\n }));\n };\n _this.onStoreChange = function (prevStore, namePathList, info) {\n var _this$props4 = _this.props,\n shouldUpdate = _this$props4.shouldUpdate,\n _this$props4$dependen = _this$props4.dependencies,\n dependencies = _this$props4$dependen === void 0 ? [] : _this$props4$dependen,\n onReset = _this$props4.onReset;\n var store = info.store;\n var namePath = _this.getNamePath();\n var prevValue = _this.getValue(prevStore);\n var curValue = _this.getValue(store);\n var namePathMatch = namePathList && containsNamePath(namePathList, namePath);\n // `setFieldsValue` is a quick access to update related status\n if (info.type === 'valueUpdate' && info.source === 'external' && prevValue !== curValue) {\n _this.touched = true;\n _this.dirty = true;\n _this.validatePromise = null;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n }\n switch (info.type) {\n case 'reset':\n if (!namePathList || namePathMatch) {\n // Clean up state\n _this.touched = false;\n _this.dirty = false;\n _this.validatePromise = null;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n onReset === null || onReset === void 0 ? void 0 : onReset();\n _this.refresh();\n return;\n }\n break;\n /**\n * In case field with `preserve = false` nest deps like:\n * - A = 1 => show B\n * - B = 1 => show C\n * - Reset A, need clean B, C\n */\n case 'remove':\n {\n if (shouldUpdate) {\n _this.reRender();\n return;\n }\n break;\n }\n case 'setField':\n {\n if (namePathMatch) {\n var data = info.data;\n if ('touched' in data) {\n _this.touched = data.touched;\n }\n if ('validating' in data && !('originRCField' in data)) {\n _this.validatePromise = data.validating ? Promise.resolve([]) : null;\n }\n if ('errors' in data) {\n _this.errors = data.errors || EMPTY_ERRORS;\n }\n if ('warnings' in data) {\n _this.warnings = data.warnings || EMPTY_ERRORS;\n }\n _this.dirty = true;\n _this.triggerMetaEvent();\n _this.reRender();\n return;\n }\n // Handle update by `setField` with `shouldUpdate`\n if (shouldUpdate && !namePath.length && requireUpdate(shouldUpdate, prevStore, store, prevValue, curValue, info)) {\n _this.reRender();\n return;\n }\n break;\n }\n case 'dependenciesUpdate':\n {\n /**\n * Trigger when marked `dependencies` updated. Related fields will all update\n */\n var dependencyList = dependencies.map(getNamePath);\n // No need for `namePathMath` check and `shouldUpdate` check, since `valueUpdate` will be\n // emitted earlier and they will work there\n // If set it may cause unnecessary twice rerendering\n if (dependencyList.some(function (dependency) {\n return containsNamePath(info.relatedFields, dependency);\n })) {\n _this.reRender();\n return;\n }\n break;\n }\n default:\n // 1. If `namePath` exists in `namePathList`, means it's related value and should update\n // For example <List name=\"list\"><Field name={['list', 0]}></List>\n // If `namePathList` is [['list']] (List value update), Field should be updated\n // If `namePathList` is [['list', 0]] (Field value update), List shouldn't be updated\n // 2.\n // 2.1 If `dependencies` is set, `name` is not set and `shouldUpdate` is not set,\n // don't use `shouldUpdate`. `dependencies` is view as a shortcut if `shouldUpdate`\n // is not provided\n // 2.2 If `shouldUpdate` provided, use customize logic to update the field\n // else to check if value changed\n if (namePathMatch || (!dependencies.length || namePath.length || shouldUpdate) && requireUpdate(shouldUpdate, prevStore, store, prevValue, curValue, info)) {\n _this.reRender();\n return;\n }\n break;\n }\n if (shouldUpdate === true) {\n _this.reRender();\n }\n };\n _this.validateRules = function (options) {\n // We should fixed namePath & value to avoid developer change then by form function\n var namePath = _this.getNamePath();\n var currentValue = _this.getValue();\n // Force change to async to avoid rule OOD under renderProps field\n var rootPromise = Promise.resolve().then(function () {\n if (!_this.mounted) {\n return [];\n }\n var _this$props5 = _this.props,\n _this$props5$validate = _this$props5.validateFirst,\n validateFirst = _this$props5$validate === void 0 ? false : _this$props5$validate,\n messageVariables = _this$props5.messageVariables;\n var _ref2 = options || {},\n triggerName = _ref2.triggerName;\n var filteredRules = _this.getRules();\n if (triggerName) {\n filteredRules = filteredRules.filter(function (rule) {\n return rule;\n }).filter(function (rule) {\n var validateTrigger = rule.validateTrigger;\n if (!validateTrigger) {\n return true;\n }\n var triggerList = toArray(validateTrigger);\n return triggerList.includes(triggerName);\n });\n }\n var promise = validateRules(namePath, currentValue, filteredRules, options, validateFirst, messageVariables);\n promise.catch(function (e) {\n return e;\n }).then(function () {\n var ruleErrors = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : EMPTY_ERRORS;\n if (_this.validatePromise === rootPromise) {\n var _ruleErrors$forEach;\n _this.validatePromise = null;\n // Get errors & warnings\n var nextErrors = [];\n var nextWarnings = [];\n (_ruleErrors$forEach = ruleErrors.forEach) === null || _ruleErrors$forEach === void 0 ? void 0 : _ruleErrors$forEach.call(ruleErrors, function (_ref3) {\n var warningOnly = _ref3.rule.warningOnly,\n _ref3$errors = _ref3.errors,\n errors = _ref3$errors === void 0 ? EMPTY_ERRORS : _ref3$errors;\n if (warningOnly) {\n nextWarnings.push.apply(nextWarnings, _toConsumableArray(errors));\n } else {\n nextErrors.push.apply(nextErrors, _toConsumableArray(errors));\n }\n });\n _this.errors = nextErrors;\n _this.warnings = nextWarnings;\n _this.triggerMetaEvent();\n _this.reRender();\n }\n });\n return promise;\n });\n _this.validatePromise = rootPromise;\n _this.dirty = true;\n _this.errors = EMPTY_ERRORS;\n _this.warnings = EMPTY_ERRORS;\n _this.triggerMetaEvent();\n // Force trigger re-render since we need sync renderProps with new meta\n _this.reRender();\n return rootPromise;\n };\n _this.isFieldValidating = function () {\n return !!_this.validatePromise;\n };\n _this.isFieldTouched = function () {\n return _this.touched;\n };\n _this.isFieldDirty = function () {\n // Touched or validate or has initialValue\n if (_this.dirty || _this.props.initialValue !== undefined) {\n return true;\n }\n // Form set initialValue\n var fieldContext = _this.props.fieldContext;\n var _fieldContext$getInte = fieldContext.getInternalHooks(HOOK_MARK),\n getInitialValue = _fieldContext$getInte.getInitialValue;\n if (getInitialValue(_this.getNamePath()) !== undefined) {\n return true;\n }\n return false;\n };\n _this.getErrors = function () {\n return _this.errors;\n };\n _this.getWarnings = function () {\n return _this.warnings;\n };\n _this.isListField = function () {\n return _this.props.isListField;\n };\n _this.isList = function () {\n return _this.props.isList;\n };\n _this.isPreserve = function () {\n return _this.props.preserve;\n };\n _this.getMeta = function () {\n // Make error & validating in cache to save perf\n _this.prevValidating = _this.isFieldValidating();\n var meta = {\n touched: _this.isFieldTouched(),\n validating: _this.prevValidating,\n errors: _this.errors,\n warnings: _this.warnings,\n name: _this.getNamePath(),\n validated: _this.validatePromise === null\n };\n return meta;\n };\n _this.getOnlyChild = function (children) {\n // Support render props\n if (typeof children === 'function') {\n var meta = _this.getMeta();\n return _objectSpread(_objectSpread({}, _this.getOnlyChild(children(_this.getControlled(), meta, _this.props.fieldContext))), {}, {\n isFunction: true\n });\n }\n // Filed element only\n var childList = toChildrenArray(children);\n if (childList.length !== 1 || ! /*#__PURE__*/React.isValidElement(childList[0])) {\n return {\n child: childList,\n isFunction: false\n };\n }\n return {\n child: childList[0],\n isFunction: false\n };\n };\n _this.getValue = function (store) {\n var getFieldsValue = _this.props.fieldContext.getFieldsValue;\n var namePath = _this.getNamePath();\n return getValue(store || getFieldsValue(true), namePath);\n };\n _this.getControlled = function () {\n var childProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var _this$props6 = _this.props,\n trigger = _this$props6.trigger,\n validateTrigger = _this$props6.validateTrigger,\n getValueFromEvent = _this$props6.getValueFromEvent,\n normalize = _this$props6.normalize,\n valuePropName = _this$props6.valuePropName,\n getValueProps = _this$props6.getValueProps,\n fieldContext = _this$props6.fieldContext;\n var mergedValidateTrigger = validateTrigger !== undefined ? validateTrigger : fieldContext.validateTrigger;\n var namePath = _this.getNamePath();\n var getInternalHooks = fieldContext.getInternalHooks,\n getFieldsValue = fieldContext.getFieldsValue;\n var _getInternalHooks = getInternalHooks(HOOK_MARK),\n dispatch = _getInternalHooks.dispatch;\n var value = _this.getValue();\n var mergedGetValueProps = getValueProps || function (val) {\n return _defineProperty({}, valuePropName, val);\n };\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n var originTriggerFunc = childProps[trigger];\n var control = _objectSpread(_objectSpread({}, childProps), mergedGetValueProps(value));\n // Add trigger\n control[trigger] = function () {\n // Mark as touched\n _this.touched = true;\n _this.dirty = true;\n _this.triggerMetaEvent();\n var newValue;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (getValueFromEvent) {\n newValue = getValueFromEvent.apply(void 0, args);\n } else {\n newValue = defaultGetValueFromEvent.apply(void 0, [valuePropName].concat(args));\n }\n if (normalize) {\n newValue = normalize(newValue, value, getFieldsValue(true));\n }\n dispatch({\n type: 'updateValue',\n namePath: namePath,\n value: newValue\n });\n if (originTriggerFunc) {\n originTriggerFunc.apply(void 0, args);\n }\n };\n // Add validateTrigger\n var validateTriggerList = toArray(mergedValidateTrigger || []);\n validateTriggerList.forEach(function (triggerName) {\n // Wrap additional function of component, so that we can get latest value from store\n var originTrigger = control[triggerName];\n control[triggerName] = function () {\n if (originTrigger) {\n originTrigger.apply(void 0, arguments);\n }\n // Always use latest rules\n var rules = _this.props.rules;\n if (rules && rules.length) {\n // We dispatch validate to root,\n // since it will update related data with other field with same name\n dispatch({\n type: 'validateField',\n namePath: namePath,\n triggerName: triggerName\n });\n }\n };\n });\n return control;\n };\n if (props.fieldContext) {\n var getInternalHooks = props.fieldContext.getInternalHooks;\n var _getInternalHooks2 = getInternalHooks(HOOK_MARK),\n initEntityValue = _getInternalHooks2.initEntityValue;\n initEntityValue(_assertThisInitialized(_this));\n }\n return _this;\n }\n _createClass(Field, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n var _this$props7 = this.props,\n shouldUpdate = _this$props7.shouldUpdate,\n fieldContext = _this$props7.fieldContext;\n this.mounted = true;\n // Register on init\n if (fieldContext) {\n var getInternalHooks = fieldContext.getInternalHooks;\n var _getInternalHooks3 = getInternalHooks(HOOK_MARK),\n registerField = _getInternalHooks3.registerField;\n this.cancelRegisterFunc = registerField(this);\n }\n // One more render for component in case fields not ready\n if (shouldUpdate === true) {\n this.reRender();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.cancelRegister();\n this.triggerMetaEvent(true);\n this.mounted = false;\n }\n }, {\n key: \"reRender\",\n value: function reRender() {\n if (!this.mounted) return;\n this.forceUpdate();\n }\n }, {\n key: \"render\",\n value: function render() {\n var resetCount = this.state.resetCount;\n var children = this.props.children;\n var _this$getOnlyChild = this.getOnlyChild(children),\n child = _this$getOnlyChild.child,\n isFunction = _this$getOnlyChild.isFunction;\n // Not need to `cloneElement` since user can handle this in render function self\n var returnChildNode;\n if (isFunction) {\n returnChildNode = child;\n } else if ( /*#__PURE__*/React.isValidElement(child)) {\n returnChildNode = /*#__PURE__*/React.cloneElement(child, this.getControlled(child.props));\n } else {\n warning(!child, '`children` of Field is not validate ReactElement.');\n returnChildNode = child;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, {\n key: resetCount\n }, returnChildNode);\n }\n }]);\n return Field;\n}(React.Component);\nField.contextType = FieldContext;\nField.defaultProps = {\n trigger: 'onChange',\n valuePropName: 'value'\n};\nfunction WrapperField(_ref5) {\n var name = _ref5.name,\n restProps = _objectWithoutProperties(_ref5, _excluded);\n var fieldContext = React.useContext(FieldContext);\n var namePath = name !== undefined ? getNamePath(name) : undefined;\n var key = 'keep';\n if (!restProps.isListField) {\n key = \"_\".concat((namePath || []).join('_'));\n }\n // Warning if it's a directly list field.\n // We can still support multiple level field preserve.\n if (process.env.NODE_ENV !== 'production' && restProps.preserve === false && restProps.isListField && namePath.length <= 1) {\n warning(false, '`preserve` should not apply on Form.List fields.');\n }\n return /*#__PURE__*/React.createElement(Field, _extends({\n key: key,\n name: namePath\n }, restProps, {\n fieldContext: fieldContext\n }));\n}\nexport default WrapperField;","import * as React from 'react';\nvar ListContext = /*#__PURE__*/React.createContext(null);\nexport default ListContext;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar SPLIT = '__@field_split__';\n/**\n * Convert name path into string to fast the fetch speed of Map.\n */\nfunction normalize(namePath) {\n return namePath.map(function (cell) {\n return \"\".concat(_typeof(cell), \":\").concat(cell);\n })\n // Magic split\n .join(SPLIT);\n}\n/**\n * NameMap like a `Map` but accepts `string[]` as key.\n */\nvar NameMap = /*#__PURE__*/function () {\n function NameMap() {\n _classCallCheck(this, NameMap);\n this.kvs = new Map();\n }\n _createClass(NameMap, [{\n key: \"set\",\n value: function set(key, value) {\n this.kvs.set(normalize(key), value);\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this.kvs.get(normalize(key));\n }\n }, {\n key: \"update\",\n value: function update(key, updater) {\n var origin = this.get(key);\n var next = updater(origin);\n if (!next) {\n this.delete(key);\n } else {\n this.set(key, next);\n }\n }\n }, {\n key: \"delete\",\n value: function _delete(key) {\n this.kvs.delete(normalize(key));\n }\n // Since we only use this in test, let simply realize this\n }, {\n key: \"map\",\n value: function map(callback) {\n return _toConsumableArray(this.kvs.entries()).map(function (_ref) {\n var _ref2 = _slicedToArray(_ref, 2),\n key = _ref2[0],\n value = _ref2[1];\n var cells = key.split(SPLIT);\n return callback({\n key: cells.map(function (cell) {\n var _cell$match = cell.match(/^([^:]*):(.*)$/),\n _cell$match2 = _slicedToArray(_cell$match, 3),\n type = _cell$match2[1],\n unit = _cell$match2[2];\n return type === 'number' ? Number(unit) : unit;\n }),\n value: value\n });\n });\n }\n }, {\n key: \"toJSON\",\n value: function toJSON() {\n var json = {};\n this.map(function (_ref3) {\n var key = _ref3.key,\n value = _ref3.value;\n json[key.join('.')] = value;\n return null;\n });\n return json;\n }\n }]);\n return NameMap;\n}();\nexport default NameMap;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nvar _excluded = [\"name\", \"errors\"];\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { HOOK_MARK } from './FieldContext';\nimport { allPromiseFinish } from './utils/asyncUtil';\nimport cloneDeep from './utils/cloneDeep';\nimport { defaultValidateMessages } from './utils/messages';\nimport NameMap from './utils/NameMap';\nimport { cloneByNamePathList, containsNamePath, getNamePath, getValue, matchNamePath, setValue, setValues } from './utils/valueUtil';\nexport var FormStore = /*#__PURE__*/_createClass(function FormStore(forceRootUpdate) {\n var _this = this;\n _classCallCheck(this, FormStore);\n this.formHooked = false;\n this.forceRootUpdate = void 0;\n this.subscribable = true;\n this.store = {};\n this.fieldEntities = [];\n this.initialValues = {};\n this.callbacks = {};\n this.validateMessages = null;\n this.preserve = null;\n this.lastValidatePromise = null;\n this.getForm = function () {\n return {\n getFieldValue: _this.getFieldValue,\n getFieldsValue: _this.getFieldsValue,\n getFieldError: _this.getFieldError,\n getFieldWarning: _this.getFieldWarning,\n getFieldsError: _this.getFieldsError,\n isFieldsTouched: _this.isFieldsTouched,\n isFieldTouched: _this.isFieldTouched,\n isFieldValidating: _this.isFieldValidating,\n isFieldsValidating: _this.isFieldsValidating,\n resetFields: _this.resetFields,\n setFields: _this.setFields,\n setFieldValue: _this.setFieldValue,\n setFieldsValue: _this.setFieldsValue,\n validateFields: _this.validateFields,\n submit: _this.submit,\n _init: true,\n getInternalHooks: _this.getInternalHooks\n };\n };\n this.getInternalHooks = function (key) {\n if (key === HOOK_MARK) {\n _this.formHooked = true;\n return {\n dispatch: _this.dispatch,\n initEntityValue: _this.initEntityValue,\n registerField: _this.registerField,\n useSubscribe: _this.useSubscribe,\n setInitialValues: _this.setInitialValues,\n destroyForm: _this.destroyForm,\n setCallbacks: _this.setCallbacks,\n setValidateMessages: _this.setValidateMessages,\n getFields: _this.getFields,\n setPreserve: _this.setPreserve,\n getInitialValue: _this.getInitialValue,\n registerWatch: _this.registerWatch\n };\n }\n warning(false, '`getInternalHooks` is internal usage. Should not call directly.');\n return null;\n };\n this.useSubscribe = function (subscribable) {\n _this.subscribable = subscribable;\n };\n this.prevWithoutPreserves = null;\n this.setInitialValues = function (initialValues, init) {\n _this.initialValues = initialValues || {};\n if (init) {\n var _this$prevWithoutPres;\n var nextStore = setValues({}, initialValues, _this.store);\n // We will take consider prev form unmount fields.\n // When the field is not `preserve`, we need fill this with initialValues instead of store.\n // eslint-disable-next-line array-callback-return\n (_this$prevWithoutPres = _this.prevWithoutPreserves) === null || _this$prevWithoutPres === void 0 ? void 0 : _this$prevWithoutPres.map(function (_ref) {\n var namePath = _ref.key;\n nextStore = setValue(nextStore, namePath, getValue(initialValues, namePath));\n });\n _this.prevWithoutPreserves = null;\n _this.updateStore(nextStore);\n }\n };\n this.destroyForm = function () {\n var prevWithoutPreserves = new NameMap();\n _this.getFieldEntities(true).forEach(function (entity) {\n if (!_this.isMergedPreserve(entity.isPreserve())) {\n prevWithoutPreserves.set(entity.getNamePath(), true);\n }\n });\n _this.prevWithoutPreserves = prevWithoutPreserves;\n };\n this.getInitialValue = function (namePath) {\n var initValue = getValue(_this.initialValues, namePath);\n // Not cloneDeep when without `namePath`\n return namePath.length ? cloneDeep(initValue) : initValue;\n };\n this.setCallbacks = function (callbacks) {\n _this.callbacks = callbacks;\n };\n this.setValidateMessages = function (validateMessages) {\n _this.validateMessages = validateMessages;\n };\n this.setPreserve = function (preserve) {\n _this.preserve = preserve;\n };\n this.watchList = [];\n this.registerWatch = function (callback) {\n _this.watchList.push(callback);\n return function () {\n _this.watchList = _this.watchList.filter(function (fn) {\n return fn !== callback;\n });\n };\n };\n this.notifyWatch = function () {\n var namePath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n // No need to cost perf when nothing need to watch\n if (_this.watchList.length) {\n var values = _this.getFieldsValue();\n _this.watchList.forEach(function (callback) {\n callback(values, namePath);\n });\n }\n };\n this.timeoutId = null;\n this.warningUnhooked = function () {\n if (process.env.NODE_ENV !== 'production' && !_this.timeoutId && typeof window !== 'undefined') {\n _this.timeoutId = setTimeout(function () {\n _this.timeoutId = null;\n if (!_this.formHooked) {\n warning(false, 'Instance created by `useForm` is not connected to any Form element. Forget to pass `form` prop?');\n }\n });\n }\n };\n this.updateStore = function (nextStore) {\n _this.store = nextStore;\n };\n this.getFieldEntities = function () {\n var pure = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n if (!pure) {\n return _this.fieldEntities;\n }\n return _this.fieldEntities.filter(function (field) {\n return field.getNamePath().length;\n });\n };\n this.getFieldsMap = function () {\n var pure = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var cache = new NameMap();\n _this.getFieldEntities(pure).forEach(function (field) {\n var namePath = field.getNamePath();\n cache.set(namePath, field);\n });\n return cache;\n };\n this.getFieldEntitiesForNamePathList = function (nameList) {\n if (!nameList) {\n return _this.getFieldEntities(true);\n }\n var cache = _this.getFieldsMap(true);\n return nameList.map(function (name) {\n var namePath = getNamePath(name);\n return cache.get(namePath) || {\n INVALIDATE_NAME_PATH: getNamePath(name)\n };\n });\n };\n this.getFieldsValue = function (nameList, filterFunc) {\n _this.warningUnhooked();\n if (nameList === true && !filterFunc) {\n return _this.store;\n }\n var fieldEntities = _this.getFieldEntitiesForNamePathList(Array.isArray(nameList) ? nameList : null);\n var filteredNameList = [];\n fieldEntities.forEach(function (entity) {\n var _entity$isListField;\n var namePath = 'INVALIDATE_NAME_PATH' in entity ? entity.INVALIDATE_NAME_PATH : entity.getNamePath();\n // Ignore when it's a list item and not specific the namePath,\n // since parent field is already take in count\n if (!nameList && ((_entity$isListField = entity.isListField) === null || _entity$isListField === void 0 ? void 0 : _entity$isListField.call(entity))) {\n return;\n }\n if (!filterFunc) {\n filteredNameList.push(namePath);\n } else {\n var meta = 'getMeta' in entity ? entity.getMeta() : null;\n if (filterFunc(meta)) {\n filteredNameList.push(namePath);\n }\n }\n });\n return cloneByNamePathList(_this.store, filteredNameList.map(getNamePath));\n };\n this.getFieldValue = function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n return getValue(_this.store, namePath);\n };\n this.getFieldsError = function (nameList) {\n _this.warningUnhooked();\n var fieldEntities = _this.getFieldEntitiesForNamePathList(nameList);\n return fieldEntities.map(function (entity, index) {\n if (entity && !('INVALIDATE_NAME_PATH' in entity)) {\n return {\n name: entity.getNamePath(),\n errors: entity.getErrors(),\n warnings: entity.getWarnings()\n };\n }\n return {\n name: getNamePath(nameList[index]),\n errors: [],\n warnings: []\n };\n });\n };\n this.getFieldError = function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n var fieldError = _this.getFieldsError([namePath])[0];\n return fieldError.errors;\n };\n this.getFieldWarning = function (name) {\n _this.warningUnhooked();\n var namePath = getNamePath(name);\n var fieldError = _this.getFieldsError([namePath])[0];\n return fieldError.warnings;\n };\n this.isFieldsTouched = function () {\n _this.warningUnhooked();\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var arg0 = args[0],\n arg1 = args[1];\n var namePathList;\n var isAllFieldsTouched = false;\n if (args.length === 0) {\n namePathList = null;\n } else if (args.length === 1) {\n if (Array.isArray(arg0)) {\n namePathList = arg0.map(getNamePath);\n isAllFieldsTouched = false;\n } else {\n namePathList = null;\n isAllFieldsTouched = arg0;\n }\n } else {\n namePathList = arg0.map(getNamePath);\n isAllFieldsTouched = arg1;\n }\n var fieldEntities = _this.getFieldEntities(true);\n var isFieldTouched = function isFieldTouched(field) {\n return field.isFieldTouched();\n };\n // ===== Will get fully compare when not config namePathList =====\n if (!namePathList) {\n return isAllFieldsTouched ? fieldEntities.every(isFieldTouched) : fieldEntities.some(isFieldTouched);\n }\n // Generate a nest tree for validate\n var map = new NameMap();\n namePathList.forEach(function (shortNamePath) {\n map.set(shortNamePath, []);\n });\n fieldEntities.forEach(function (field) {\n var fieldNamePath = field.getNamePath();\n // Find matched entity and put into list\n namePathList.forEach(function (shortNamePath) {\n if (shortNamePath.every(function (nameUnit, i) {\n return fieldNamePath[i] === nameUnit;\n })) {\n map.update(shortNamePath, function (list) {\n return [].concat(_toConsumableArray(list), [field]);\n });\n }\n });\n });\n // Check if NameMap value is touched\n var isNamePathListTouched = function isNamePathListTouched(entities) {\n return entities.some(isFieldTouched);\n };\n var namePathListEntities = map.map(function (_ref2) {\n var value = _ref2.value;\n return value;\n });\n return isAllFieldsTouched ? namePathListEntities.every(isNamePathListTouched) : namePathListEntities.some(isNamePathListTouched);\n };\n this.isFieldTouched = function (name) {\n _this.warningUnhooked();\n return _this.isFieldsTouched([name]);\n };\n this.isFieldsValidating = function (nameList) {\n _this.warningUnhooked();\n var fieldEntities = _this.getFieldEntities();\n if (!nameList) {\n return fieldEntities.some(function (testField) {\n return testField.isFieldValidating();\n });\n }\n var namePathList = nameList.map(getNamePath);\n return fieldEntities.some(function (testField) {\n var fieldNamePath = testField.getNamePath();\n return containsNamePath(namePathList, fieldNamePath) && testField.isFieldValidating();\n });\n };\n this.isFieldValidating = function (name) {\n _this.warningUnhooked();\n return _this.isFieldsValidating([name]);\n };\n this.resetWithFieldInitialValue = function () {\n var info = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // Create cache\n var cache = new NameMap();\n var fieldEntities = _this.getFieldEntities(true);\n fieldEntities.forEach(function (field) {\n var initialValue = field.props.initialValue;\n var namePath = field.getNamePath();\n // Record only if has `initialValue`\n if (initialValue !== undefined) {\n var records = cache.get(namePath) || new Set();\n records.add({\n entity: field,\n value: initialValue\n });\n cache.set(namePath, records);\n }\n });\n // Reset\n var resetWithFields = function resetWithFields(entities) {\n entities.forEach(function (field) {\n var initialValue = field.props.initialValue;\n if (initialValue !== undefined) {\n var namePath = field.getNamePath();\n var formInitialValue = _this.getInitialValue(namePath);\n if (formInitialValue !== undefined) {\n // Warning if conflict with form initialValues and do not modify value\n warning(false, \"Form already set 'initialValues' with path '\".concat(namePath.join('.'), \"'. Field can not overwrite it.\"));\n } else {\n var records = cache.get(namePath);\n if (records && records.size > 1) {\n // Warning if multiple field set `initialValue`and do not modify value\n warning(false, \"Multiple Field with path '\".concat(namePath.join('.'), \"' set 'initialValue'. Can not decide which one to pick.\"));\n } else if (records) {\n var originValue = _this.getFieldValue(namePath);\n // Set `initialValue`\n if (!info.skipExist || originValue === undefined) {\n _this.updateStore(setValue(_this.store, namePath, _toConsumableArray(records)[0].value));\n }\n }\n }\n }\n });\n };\n var requiredFieldEntities;\n if (info.entities) {\n requiredFieldEntities = info.entities;\n } else if (info.namePathList) {\n requiredFieldEntities = [];\n info.namePathList.forEach(function (namePath) {\n var records = cache.get(namePath);\n if (records) {\n var _requiredFieldEntitie;\n (_requiredFieldEntitie = requiredFieldEntities).push.apply(_requiredFieldEntitie, _toConsumableArray(_toConsumableArray(records).map(function (r) {\n return r.entity;\n })));\n }\n });\n } else {\n requiredFieldEntities = fieldEntities;\n }\n resetWithFields(requiredFieldEntities);\n };\n this.resetFields = function (nameList) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n if (!nameList) {\n _this.updateStore(setValues({}, _this.initialValues));\n _this.resetWithFieldInitialValue();\n _this.notifyObservers(prevStore, null, {\n type: 'reset'\n });\n _this.notifyWatch();\n return;\n }\n // Reset by `nameList`\n var namePathList = nameList.map(getNamePath);\n namePathList.forEach(function (namePath) {\n var initialValue = _this.getInitialValue(namePath);\n _this.updateStore(setValue(_this.store, namePath, initialValue));\n });\n _this.resetWithFieldInitialValue({\n namePathList: namePathList\n });\n _this.notifyObservers(prevStore, namePathList, {\n type: 'reset'\n });\n _this.notifyWatch(namePathList);\n };\n this.setFields = function (fields) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n var namePathList = [];\n fields.forEach(function (fieldData) {\n var name = fieldData.name,\n errors = fieldData.errors,\n data = _objectWithoutProperties(fieldData, _excluded);\n var namePath = getNamePath(name);\n namePathList.push(namePath);\n // Value\n if ('value' in data) {\n _this.updateStore(setValue(_this.store, namePath, data.value));\n }\n _this.notifyObservers(prevStore, [namePath], {\n type: 'setField',\n data: fieldData\n });\n });\n _this.notifyWatch(namePathList);\n };\n this.getFields = function () {\n var entities = _this.getFieldEntities(true);\n var fields = entities.map(function (field) {\n var namePath = field.getNamePath();\n var meta = field.getMeta();\n var fieldData = _objectSpread(_objectSpread({}, meta), {}, {\n name: namePath,\n value: _this.getFieldValue(namePath)\n });\n Object.defineProperty(fieldData, 'originRCField', {\n value: true\n });\n return fieldData;\n });\n return fields;\n };\n this.initEntityValue = function (entity) {\n var initialValue = entity.props.initialValue;\n if (initialValue !== undefined) {\n var namePath = entity.getNamePath();\n var prevValue = getValue(_this.store, namePath);\n if (prevValue === undefined) {\n _this.updateStore(setValue(_this.store, namePath, initialValue));\n }\n }\n };\n this.isMergedPreserve = function (fieldPreserve) {\n var mergedPreserve = fieldPreserve !== undefined ? fieldPreserve : _this.preserve;\n return mergedPreserve !== null && mergedPreserve !== void 0 ? mergedPreserve : true;\n };\n this.registerField = function (entity) {\n _this.fieldEntities.push(entity);\n var namePath = entity.getNamePath();\n _this.notifyWatch([namePath]);\n // Set initial values\n if (entity.props.initialValue !== undefined) {\n var prevStore = _this.store;\n _this.resetWithFieldInitialValue({\n entities: [entity],\n skipExist: true\n });\n _this.notifyObservers(prevStore, [entity.getNamePath()], {\n type: 'valueUpdate',\n source: 'internal'\n });\n }\n // un-register field callback\n return function (isListField, preserve) {\n var subNamePath = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n _this.fieldEntities = _this.fieldEntities.filter(function (item) {\n return item !== entity;\n });\n // Clean up store value if not preserve\n if (!_this.isMergedPreserve(preserve) && (!isListField || subNamePath.length > 1)) {\n var defaultValue = isListField ? undefined : _this.getInitialValue(namePath);\n if (namePath.length && _this.getFieldValue(namePath) !== defaultValue && _this.fieldEntities.every(function (field) {\n return (\n // Only reset when no namePath exist\n !matchNamePath(field.getNamePath(), namePath)\n );\n })) {\n var _prevStore = _this.store;\n _this.updateStore(setValue(_prevStore, namePath, defaultValue, true));\n // Notify that field is unmount\n _this.notifyObservers(_prevStore, [namePath], {\n type: 'remove'\n });\n // Dependencies update\n _this.triggerDependenciesUpdate(_prevStore, namePath);\n }\n }\n _this.notifyWatch([namePath]);\n };\n };\n this.dispatch = function (action) {\n switch (action.type) {\n case 'updateValue':\n {\n var namePath = action.namePath,\n value = action.value;\n _this.updateValue(namePath, value);\n break;\n }\n case 'validateField':\n {\n var _namePath = action.namePath,\n triggerName = action.triggerName;\n _this.validateFields([_namePath], {\n triggerName: triggerName\n });\n break;\n }\n default:\n // Currently we don't have other action. Do nothing.\n }\n };\n this.notifyObservers = function (prevStore, namePathList, info) {\n if (_this.subscribable) {\n var mergedInfo = _objectSpread(_objectSpread({}, info), {}, {\n store: _this.getFieldsValue(true)\n });\n _this.getFieldEntities().forEach(function (_ref3) {\n var onStoreChange = _ref3.onStoreChange;\n onStoreChange(prevStore, namePathList, mergedInfo);\n });\n } else {\n _this.forceRootUpdate();\n }\n };\n this.triggerDependenciesUpdate = function (prevStore, namePath) {\n var childrenFields = _this.getDependencyChildrenFields(namePath);\n if (childrenFields.length) {\n _this.validateFields(childrenFields);\n }\n _this.notifyObservers(prevStore, childrenFields, {\n type: 'dependenciesUpdate',\n relatedFields: [namePath].concat(_toConsumableArray(childrenFields))\n });\n return childrenFields;\n };\n this.updateValue = function (name, value) {\n var namePath = getNamePath(name);\n var prevStore = _this.store;\n _this.updateStore(setValue(_this.store, namePath, value));\n _this.notifyObservers(prevStore, [namePath], {\n type: 'valueUpdate',\n source: 'internal'\n });\n _this.notifyWatch([namePath]);\n // Dependencies update\n var childrenFields = _this.triggerDependenciesUpdate(prevStore, namePath);\n // trigger callback function\n var onValuesChange = _this.callbacks.onValuesChange;\n if (onValuesChange) {\n var changedValues = cloneByNamePathList(_this.store, [namePath]);\n onValuesChange(changedValues, _this.getFieldsValue());\n }\n _this.triggerOnFieldsChange([namePath].concat(_toConsumableArray(childrenFields)));\n };\n this.setFieldsValue = function (store) {\n _this.warningUnhooked();\n var prevStore = _this.store;\n if (store) {\n var nextStore = setValues(_this.store, store);\n _this.updateStore(nextStore);\n }\n _this.notifyObservers(prevStore, null, {\n type: 'valueUpdate',\n source: 'external'\n });\n _this.notifyWatch();\n };\n this.setFieldValue = function (name, value) {\n _this.setFields([{\n name: name,\n value: value\n }]);\n };\n this.getDependencyChildrenFields = function (rootNamePath) {\n var children = new Set();\n var childrenFields = [];\n var dependencies2fields = new NameMap();\n /**\n * Generate maps\n * Can use cache to save perf if user report performance issue with this\n */\n _this.getFieldEntities().forEach(function (field) {\n var dependencies = field.props.dependencies;\n (dependencies || []).forEach(function (dependency) {\n var dependencyNamePath = getNamePath(dependency);\n dependencies2fields.update(dependencyNamePath, function () {\n var fields = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : new Set();\n fields.add(field);\n return fields;\n });\n });\n });\n var fillChildren = function fillChildren(namePath) {\n var fields = dependencies2fields.get(namePath) || new Set();\n fields.forEach(function (field) {\n if (!children.has(field)) {\n children.add(field);\n var fieldNamePath = field.getNamePath();\n if (field.isFieldDirty() && fieldNamePath.length) {\n childrenFields.push(fieldNamePath);\n fillChildren(fieldNamePath);\n }\n }\n });\n };\n fillChildren(rootNamePath);\n return childrenFields;\n };\n this.triggerOnFieldsChange = function (namePathList, filedErrors) {\n var onFieldsChange = _this.callbacks.onFieldsChange;\n if (onFieldsChange) {\n var fields = _this.getFields();\n /**\n * Fill errors since `fields` may be replaced by controlled fields\n */\n if (filedErrors) {\n var cache = new NameMap();\n filedErrors.forEach(function (_ref4) {\n var name = _ref4.name,\n errors = _ref4.errors;\n cache.set(name, errors);\n });\n fields.forEach(function (field) {\n // eslint-disable-next-line no-param-reassign\n field.errors = cache.get(field.name) || field.errors;\n });\n }\n var changedFields = fields.filter(function (_ref5) {\n var fieldName = _ref5.name;\n return containsNamePath(namePathList, fieldName);\n });\n onFieldsChange(changedFields, fields);\n }\n };\n this.validateFields = function (nameList, options) {\n _this.warningUnhooked();\n var provideNameList = !!nameList;\n var namePathList = provideNameList ? nameList.map(getNamePath) : [];\n // Collect result in promise list\n var promiseList = [];\n _this.getFieldEntities(true).forEach(function (field) {\n // Add field if not provide `nameList`\n if (!provideNameList) {\n namePathList.push(field.getNamePath());\n }\n /**\n * Recursive validate if configured.\n * TODO: perf improvement @zombieJ\n */\n if ((options === null || options === void 0 ? void 0 : options.recursive) && provideNameList) {\n var namePath = field.getNamePath();\n if (\n // nameList[i] === undefined 说明是以 nameList 开头的\n // ['name'] -> ['name','list']\n namePath.every(function (nameUnit, i) {\n return nameList[i] === nameUnit || nameList[i] === undefined;\n })) {\n namePathList.push(namePath);\n }\n }\n // Skip if without rule\n if (!field.props.rules || !field.props.rules.length) {\n return;\n }\n var fieldNamePath = field.getNamePath();\n // Add field validate rule in to promise list\n if (!provideNameList || containsNamePath(namePathList, fieldNamePath)) {\n var promise = field.validateRules(_objectSpread({\n validateMessages: _objectSpread(_objectSpread({}, defaultValidateMessages), _this.validateMessages)\n }, options));\n // Wrap promise with field\n promiseList.push(promise.then(function () {\n return {\n name: fieldNamePath,\n errors: [],\n warnings: []\n };\n }).catch(function (ruleErrors) {\n var _ruleErrors$forEach;\n var mergedErrors = [];\n var mergedWarnings = [];\n (_ruleErrors$forEach = ruleErrors.forEach) === null || _ruleErrors$forEach === void 0 ? void 0 : _ruleErrors$forEach.call(ruleErrors, function (_ref6) {\n var warningOnly = _ref6.rule.warningOnly,\n errors = _ref6.errors;\n if (warningOnly) {\n mergedWarnings.push.apply(mergedWarnings, _toConsumableArray(errors));\n } else {\n mergedErrors.push.apply(mergedErrors, _toConsumableArray(errors));\n }\n });\n if (mergedErrors.length) {\n return Promise.reject({\n name: fieldNamePath,\n errors: mergedErrors,\n warnings: mergedWarnings\n });\n }\n return {\n name: fieldNamePath,\n errors: mergedErrors,\n warnings: mergedWarnings\n };\n }));\n }\n });\n var summaryPromise = allPromiseFinish(promiseList);\n _this.lastValidatePromise = summaryPromise;\n // Notify fields with rule that validate has finished and need update\n summaryPromise.catch(function (results) {\n return results;\n }).then(function (results) {\n var resultNamePathList = results.map(function (_ref7) {\n var name = _ref7.name;\n return name;\n });\n _this.notifyObservers(_this.store, resultNamePathList, {\n type: 'validateFinish'\n });\n _this.triggerOnFieldsChange(resultNamePathList, results);\n });\n var returnPromise = summaryPromise.then(function () {\n if (_this.lastValidatePromise === summaryPromise) {\n return Promise.resolve(_this.getFieldsValue(namePathList));\n }\n return Promise.reject([]);\n }).catch(function (results) {\n var errorList = results.filter(function (result) {\n return result && result.errors.length;\n });\n return Promise.reject({\n values: _this.getFieldsValue(namePathList),\n errorFields: errorList,\n outOfDate: _this.lastValidatePromise !== summaryPromise\n });\n });\n // Do not throw in console\n returnPromise.catch(function (e) {\n return e;\n });\n return returnPromise;\n };\n this.submit = function () {\n _this.warningUnhooked();\n _this.validateFields().then(function (values) {\n var onFinish = _this.callbacks.onFinish;\n if (onFinish) {\n try {\n onFinish(values);\n } catch (err) {\n // Should print error if user `onFinish` callback failed\n console.error(err);\n }\n }\n }).catch(function (e) {\n var onFinishFailed = _this.callbacks.onFinishFailed;\n if (onFinishFailed) {\n onFinishFailed(e);\n }\n });\n };\n this.forceRootUpdate = forceRootUpdate;\n});\nfunction useForm(form) {\n var formRef = React.useRef();\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n forceUpdate = _React$useState2[1];\n if (!formRef.current) {\n if (form) {\n formRef.current = form;\n } else {\n // Create a new FormStore if not provided\n var forceReRender = function forceReRender() {\n forceUpdate({});\n };\n var formStore = new FormStore(forceReRender);\n formRef.current = formStore.getForm();\n }\n }\n return [formRef.current];\n}\nexport default useForm;","export function allPromiseFinish(promiseList) {\n var hasError = false;\n var count = promiseList.length;\n var results = [];\n if (!promiseList.length) {\n return Promise.resolve([]);\n }\n return new Promise(function (resolve, reject) {\n promiseList.forEach(function (promise, index) {\n promise.catch(function (e) {\n hasError = true;\n return e;\n }).then(function (result) {\n count -= 1;\n results[index] = result;\n if (count > 0) {\n return;\n }\n if (hasError) {\n reject(results);\n }\n resolve(results);\n });\n });\n });\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nvar FormContext = /*#__PURE__*/React.createContext({\n triggerFormChange: function triggerFormChange() {},\n triggerFormFinish: function triggerFormFinish() {},\n registerForm: function registerForm() {},\n unregisterForm: function unregisterForm() {}\n});\nvar FormProvider = function FormProvider(_ref) {\n var validateMessages = _ref.validateMessages,\n onFormChange = _ref.onFormChange,\n onFormFinish = _ref.onFormFinish,\n children = _ref.children;\n var formContext = React.useContext(FormContext);\n var formsRef = React.useRef({});\n return /*#__PURE__*/React.createElement(FormContext.Provider, {\n value: _objectSpread(_objectSpread({}, formContext), {}, {\n validateMessages: _objectSpread(_objectSpread({}, formContext.validateMessages), validateMessages),\n // =========================================================\n // = Global Form Control =\n // =========================================================\n triggerFormChange: function triggerFormChange(name, changedFields) {\n if (onFormChange) {\n onFormChange(name, {\n changedFields: changedFields,\n forms: formsRef.current\n });\n }\n formContext.triggerFormChange(name, changedFields);\n },\n triggerFormFinish: function triggerFormFinish(name, values) {\n if (onFormFinish) {\n onFormFinish(name, {\n values: values,\n forms: formsRef.current\n });\n }\n formContext.triggerFormFinish(name, values);\n },\n registerForm: function registerForm(name, form) {\n if (name) {\n formsRef.current = _objectSpread(_objectSpread({}, formsRef.current), {}, _defineProperty({}, name, form));\n }\n formContext.registerForm(name, form);\n },\n unregisterForm: function unregisterForm(name) {\n var newForms = _objectSpread({}, formsRef.current);\n delete newForms[name];\n formsRef.current = newForms;\n formContext.unregisterForm(name);\n }\n })\n }, children);\n};\nexport { FormProvider };\nexport default FormContext;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"name\", \"initialValues\", \"fields\", \"form\", \"preserve\", \"children\", \"component\", \"validateMessages\", \"validateTrigger\", \"onValuesChange\", \"onFieldsChange\", \"onFinish\", \"onFinishFailed\"];\nimport * as React from 'react';\nimport useForm from './useForm';\nimport FieldContext, { HOOK_MARK } from './FieldContext';\nimport FormContext from './FormContext';\nimport { isSimilar } from './utils/valueUtil';\nvar Form = function Form(_ref, ref) {\n var name = _ref.name,\n initialValues = _ref.initialValues,\n fields = _ref.fields,\n form = _ref.form,\n preserve = _ref.preserve,\n children = _ref.children,\n _ref$component = _ref.component,\n Component = _ref$component === void 0 ? 'form' : _ref$component,\n validateMessages = _ref.validateMessages,\n _ref$validateTrigger = _ref.validateTrigger,\n validateTrigger = _ref$validateTrigger === void 0 ? 'onChange' : _ref$validateTrigger,\n onValuesChange = _ref.onValuesChange,\n _onFieldsChange = _ref.onFieldsChange,\n _onFinish = _ref.onFinish,\n onFinishFailed = _ref.onFinishFailed,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var formContext = React.useContext(FormContext);\n // We customize handle event since Context will makes all the consumer re-render:\n // https://reactjs.org/docs/context.html#contextprovider\n var _useForm = useForm(form),\n _useForm2 = _slicedToArray(_useForm, 1),\n formInstance = _useForm2[0];\n var _formInstance$getInte = formInstance.getInternalHooks(HOOK_MARK),\n useSubscribe = _formInstance$getInte.useSubscribe,\n setInitialValues = _formInstance$getInte.setInitialValues,\n setCallbacks = _formInstance$getInte.setCallbacks,\n setValidateMessages = _formInstance$getInte.setValidateMessages,\n setPreserve = _formInstance$getInte.setPreserve,\n destroyForm = _formInstance$getInte.destroyForm;\n // Pass ref with form instance\n React.useImperativeHandle(ref, function () {\n return formInstance;\n });\n // Register form into Context\n React.useEffect(function () {\n formContext.registerForm(name, formInstance);\n return function () {\n formContext.unregisterForm(name);\n };\n }, [formContext, formInstance, name]);\n // Pass props to store\n setValidateMessages(_objectSpread(_objectSpread({}, formContext.validateMessages), validateMessages));\n setCallbacks({\n onValuesChange: onValuesChange,\n onFieldsChange: function onFieldsChange(changedFields) {\n formContext.triggerFormChange(name, changedFields);\n if (_onFieldsChange) {\n for (var _len = arguments.length, rest = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n rest[_key - 1] = arguments[_key];\n }\n _onFieldsChange.apply(void 0, [changedFields].concat(rest));\n }\n },\n onFinish: function onFinish(values) {\n formContext.triggerFormFinish(name, values);\n if (_onFinish) {\n _onFinish(values);\n }\n },\n onFinishFailed: onFinishFailed\n });\n setPreserve(preserve);\n // Set initial value, init store value when first mount\n var mountRef = React.useRef(null);\n setInitialValues(initialValues, !mountRef.current);\n if (!mountRef.current) {\n mountRef.current = true;\n }\n React.useEffect(function () {\n return destroyForm;\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n []);\n // Prepare children by `children` type\n var childrenNode;\n var childrenRenderProps = typeof children === 'function';\n if (childrenRenderProps) {\n var values = formInstance.getFieldsValue(true);\n childrenNode = children(values, formInstance);\n } else {\n childrenNode = children;\n }\n // Not use subscribe when using render props\n useSubscribe(!childrenRenderProps);\n // Listen if fields provided. We use ref to save prev data here to avoid additional render\n var prevFieldsRef = React.useRef();\n React.useEffect(function () {\n if (!isSimilar(prevFieldsRef.current || [], fields || [])) {\n formInstance.setFields(fields || []);\n }\n prevFieldsRef.current = fields;\n }, [fields, formInstance]);\n var formContextValue = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, formInstance), {}, {\n validateTrigger: validateTrigger\n });\n }, [formInstance, validateTrigger]);\n var wrapperNode = /*#__PURE__*/React.createElement(FieldContext.Provider, {\n value: formContextValue\n }, childrenNode);\n if (Component === false) {\n return wrapperNode;\n }\n return /*#__PURE__*/React.createElement(Component, _extends({}, restProps, {\n onSubmit: function onSubmit(event) {\n event.preventDefault();\n event.stopPropagation();\n formInstance.submit();\n },\n onReset: function onReset(event) {\n var _restProps$onReset;\n event.preventDefault();\n formInstance.resetFields();\n (_restProps$onReset = restProps.onReset) === null || _restProps$onReset === void 0 ? void 0 : _restProps$onReset.call(restProps, event);\n }\n }), wrapperNode);\n};\nexport default Form;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { FieldContext } from '.';\nimport warning from \"rc-util/es/warning\";\nimport { HOOK_MARK } from './FieldContext';\nimport { useState, useContext, useEffect, useRef, useMemo } from 'react';\nimport { getNamePath, getValue } from './utils/valueUtil';\nexport function stringify(value) {\n try {\n return JSON.stringify(value);\n } catch (err) {\n return Math.random();\n }\n}\nvar useWatchWarning = process.env.NODE_ENV !== 'production' ? function (namePath) {\n var fullyStr = namePath.join('__RC_FIELD_FORM_SPLIT__');\n var nameStrRef = useRef(fullyStr);\n warning(nameStrRef.current === fullyStr, '`useWatch` is not support dynamic `namePath`. Please provide static instead.');\n} : function () {};\nfunction useWatch() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var _args$ = args[0],\n dependencies = _args$ === void 0 ? [] : _args$,\n form = args[1];\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n value = _useState2[0],\n setValue = _useState2[1];\n var valueStr = useMemo(function () {\n return stringify(value);\n }, [value]);\n var valueStrRef = useRef(valueStr);\n valueStrRef.current = valueStr;\n var fieldContext = useContext(FieldContext);\n var formInstance = form || fieldContext;\n var isValidForm = formInstance && formInstance._init;\n // Warning if not exist form instance\n if (process.env.NODE_ENV !== 'production') {\n warning(args.length === 2 ? form ? isValidForm : true : isValidForm, 'useWatch requires a form instance since it can not auto detect from context.');\n }\n var namePath = getNamePath(dependencies);\n var namePathRef = useRef(namePath);\n namePathRef.current = namePath;\n useWatchWarning(namePath);\n useEffect(function () {\n // Skip if not exist form instance\n if (!isValidForm) {\n return;\n }\n var getFieldsValue = formInstance.getFieldsValue,\n getInternalHooks = formInstance.getInternalHooks;\n var _getInternalHooks = getInternalHooks(HOOK_MARK),\n registerWatch = _getInternalHooks.registerWatch;\n var cancelRegister = registerWatch(function (store) {\n var newValue = getValue(store, namePathRef.current);\n var nextValueStr = stringify(newValue);\n // Compare stringify in case it's nest object\n if (valueStrRef.current !== nextValueStr) {\n valueStrRef.current = nextValueStr;\n setValue(newValue);\n }\n });\n // TODO: We can improve this perf in future\n var initialValue = getValue(getFieldsValue(), namePathRef.current);\n setValue(initialValue);\n return cancelRegister;\n },\n // We do not need re-register since namePath content is the same\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [isValidForm]);\n return value;\n}\nexport default useWatch;","import * as React from 'react';\nimport Field from './Field';\nimport List from './List';\nimport useForm from './useForm';\nimport FieldForm from './Form';\nimport { FormProvider } from './FormContext';\nimport FieldContext from './FieldContext';\nimport ListContext from './ListContext';\nimport useWatch from './useWatch';\nvar InternalForm = /*#__PURE__*/React.forwardRef(FieldForm);\nvar RefForm = InternalForm;\nRefForm.FormProvider = FormProvider;\nRefForm.Field = Field;\nRefForm.List = List;\nRefForm.useForm = useForm;\nRefForm.useWatch = useWatch;\nexport { Field, List, useForm, FormProvider, FieldContext, ListContext, useWatch };\nexport default RefForm;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport warning from \"rc-util/es/warning\";\nimport FieldContext from './FieldContext';\nimport Field from './Field';\nimport { move as _move, getNamePath } from './utils/valueUtil';\nimport ListContext from './ListContext';\nvar List = function List(_ref) {\n var name = _ref.name,\n initialValue = _ref.initialValue,\n children = _ref.children,\n rules = _ref.rules,\n validateTrigger = _ref.validateTrigger;\n var context = React.useContext(FieldContext);\n var keyRef = React.useRef({\n keys: [],\n id: 0\n });\n var keyManager = keyRef.current;\n var prefixName = React.useMemo(function () {\n var parentPrefixName = getNamePath(context.prefixName) || [];\n return [].concat(_toConsumableArray(parentPrefixName), _toConsumableArray(getNamePath(name)));\n }, [context.prefixName, name]);\n var fieldContext = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, context), {}, {\n prefixName: prefixName\n });\n }, [context, prefixName]);\n // List context\n var listContext = React.useMemo(function () {\n return {\n getKey: function getKey(namePath) {\n var len = prefixName.length;\n var pathName = namePath[len];\n return [keyManager.keys[pathName], namePath.slice(len + 1)];\n }\n };\n }, [prefixName]);\n // User should not pass `children` as other type.\n if (typeof children !== 'function') {\n warning(false, 'Form.List only accepts function as children.');\n return null;\n }\n var shouldUpdate = function shouldUpdate(prevValue, nextValue, _ref2) {\n var source = _ref2.source;\n if (source === 'internal') {\n return false;\n }\n return prevValue !== nextValue;\n };\n return /*#__PURE__*/React.createElement(ListContext.Provider, {\n value: listContext\n }, /*#__PURE__*/React.createElement(FieldContext.Provider, {\n value: fieldContext\n }, /*#__PURE__*/React.createElement(Field, {\n name: [],\n shouldUpdate: shouldUpdate,\n rules: rules,\n validateTrigger: validateTrigger,\n initialValue: initialValue,\n isList: true\n }, function (_ref3, meta) {\n var _ref3$value = _ref3.value,\n value = _ref3$value === void 0 ? [] : _ref3$value,\n onChange = _ref3.onChange;\n var getFieldValue = context.getFieldValue;\n var getNewValue = function getNewValue() {\n var values = getFieldValue(prefixName || []);\n return values || [];\n };\n /**\n * Always get latest value in case user update fields by `form` api.\n */\n var operations = {\n add: function add(defaultValue, index) {\n // Mapping keys\n var newValue = getNewValue();\n if (index >= 0 && index <= newValue.length) {\n keyManager.keys = [].concat(_toConsumableArray(keyManager.keys.slice(0, index)), [keyManager.id], _toConsumableArray(keyManager.keys.slice(index)));\n onChange([].concat(_toConsumableArray(newValue.slice(0, index)), [defaultValue], _toConsumableArray(newValue.slice(index))));\n } else {\n if (process.env.NODE_ENV !== 'production' && (index < 0 || index > newValue.length)) {\n warning(false, 'The second parameter of the add function should be a valid positive number.');\n }\n keyManager.keys = [].concat(_toConsumableArray(keyManager.keys), [keyManager.id]);\n onChange([].concat(_toConsumableArray(newValue), [defaultValue]));\n }\n keyManager.id += 1;\n },\n remove: function remove(index) {\n var newValue = getNewValue();\n var indexSet = new Set(Array.isArray(index) ? index : [index]);\n if (indexSet.size <= 0) {\n return;\n }\n keyManager.keys = keyManager.keys.filter(function (_, keysIndex) {\n return !indexSet.has(keysIndex);\n });\n // Trigger store change\n onChange(newValue.filter(function (_, valueIndex) {\n return !indexSet.has(valueIndex);\n }));\n },\n move: function move(from, to) {\n if (from === to) {\n return;\n }\n var newValue = getNewValue();\n // Do not handle out of range\n if (from < 0 || from >= newValue.length || to < 0 || to >= newValue.length) {\n return;\n }\n keyManager.keys = _move(keyManager.keys, from, to);\n // Trigger store change\n onChange(_move(newValue, from, to));\n }\n };\n var listValue = value || [];\n if (!Array.isArray(listValue)) {\n listValue = [];\n if (process.env.NODE_ENV !== 'production') {\n warning(false, \"Current value of '\".concat(prefixName.join(' > '), \"' is not an array type.\"));\n }\n }\n return children(listValue.map(function (__, index) {\n var key = keyManager.keys[index];\n if (key === undefined) {\n keyManager.keys[index] = keyManager.id;\n key = keyManager.keys[index];\n keyManager.id += 1;\n }\n return {\n name: index,\n key: key,\n isListField: true\n };\n }), operations, meta);\n })));\n};\nexport default List;","import rcWarning, { resetWarned } from \"rc-util/es/warning\";\nexport { resetWarned };\nexport function noop() {}\n// eslint-disable-next-line import/no-mutable-exports\nlet warning = noop;\nif (process.env.NODE_ENV !== 'production') {\n warning = (valid, component, message) => {\n rcWarning(valid, `[antd: ${component}] ${message}`);\n // StrictMode will inject console which will not throw warning in React 17.\n if (process.env.NODE_ENV === 'test') {\n resetWarned();\n }\n };\n}\nexport default warning;","const locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import CalendarLocale from \"rc-picker/es/locale/en_US\";\nimport TimePickerLocale from '../../time-picker/locale/en_US';\n// Merge into a locale object\nconst locale = {\n lang: Object.assign({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeQuarterPlaceholder: ['Start quarter', 'End quarter'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: Object.assign({}, TimePickerLocale)\n};\n// All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\nexport default locale;","var locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'OK',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from \"rc-pagination/es/locale/en_US\";\nimport Calendar from '../calendar/locale/en_US';\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nconst typeTemplate = '${label} is not a valid ${type}';\nconst localeValues = {\n locale: 'en',\n Pagination,\n DatePicker,\n TimePicker,\n Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n filterCheckall: 'Select all items',\n filterSearchPlaceholder: 'Search in filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Tour: {\n Next: 'Next',\n Previous: 'Previous',\n Finish: 'Finish'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n default: 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n enum: '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n },\n QRCode: {\n expired: 'QR code expired',\n refresh: 'Refresh'\n }\n};\nexport default localeValues;","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: 'Page',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages',\n page_size: 'Page Size'\n};","import defaultLocale from '../locale/en_US';\nlet runtimeLocale = Object.assign({}, defaultLocale.Modal);\nexport function changeConfirmLocale(newLocale) {\n if (newLocale) {\n runtimeLocale = Object.assign(Object.assign({}, runtimeLocale), newLocale);\n } else {\n runtimeLocale = Object.assign({}, defaultLocale.Modal);\n }\n}\nexport function getConfirmLocale() {\n return runtimeLocale;\n}","import { createContext } from 'react';\nconst LocaleContext = /*#__PURE__*/createContext(undefined);\nexport default LocaleContext;","import * as React from 'react';\nimport warning from '../_util/warning';\nimport { changeConfirmLocale } from '../modal/locale';\nimport LocaleContext from './context';\nexport const ANT_MARK = 'internalMark';\nconst LocaleProvider = props => {\n const {\n locale = {},\n children,\n _ANT_MARK__\n } = props;\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(_ANT_MARK__ === ANT_MARK, 'LocaleProvider', '`LocaleProvider` is deprecated. Please use `locale` with `ConfigProvider` instead: http://u.ant.design/locale') : void 0;\n }\n React.useEffect(() => {\n changeConfirmLocale(locale && locale.Modal);\n return () => {\n changeConfirmLocale();\n };\n }, [locale]);\n const getMemoizedContextValue = React.useMemo(() => Object.assign(Object.assign({}, locale), {\n exist: true\n }), [locale]);\n return /*#__PURE__*/React.createElement(LocaleContext.Provider, {\n value: getMemoizedContextValue\n }, children);\n};\nif (process.env.NODE_ENV !== 'production') {\n LocaleProvider.displayName = 'LocaleProvider';\n}\nexport default LocaleProvider;","export default '5.3.2';","export const PresetColors = ['blue', 'purple', 'cyan', 'green', 'magenta', 'pink', 'red', 'orange', 'yellow', 'volcano', 'geekblue', 'lime', 'gold'];","/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nexport function bound01(n, max) {\n if (isOnePointZero(n)) {\n n = '100%';\n }\n var isPercent = isPercentage(n);\n n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n // Automatically convert percentage into number\n if (isPercent) {\n n = parseInt(String(n * max), 10) / 100;\n }\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n // Convert into [0, 1] range if it isn't already\n if (max === 360) {\n // If n is a hue given in degrees,\n // wrap around out-of-range values into [0, 360] range\n // then convert into [0, 1].\n n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n }\n else {\n // If n not a hue given in degrees\n // Convert into [0, 1] range if it isn't already.\n n = (n % max) / parseFloat(String(max));\n }\n return n;\n}\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nexport function clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n/**\n * Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n * <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\n * @hidden\n */\nexport function isOnePointZero(n) {\n return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nexport function isPercentage(n) {\n return typeof n === 'string' && n.indexOf('%') !== -1;\n}\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nexport function boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nexport function convertToPercentage(n) {\n if (n <= 1) {\n return \"\".concat(Number(n) * 100, \"%\");\n }\n return n;\n}\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nexport function pad2(c) {\n return c.length === 1 ? '0' + c : String(c);\n}\n","import { bound01, pad2 } from './util';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * <http://www.w3.org/TR/css3-color/>\n * *Assumes:* r, g, b in [0, 255] or [0, 1]\n * *Returns:* { r, g, b } in [0, 255]\n */\nexport function rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255,\n };\n}\n/**\n * Converts an RGB color value to HSL.\n * *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n * *Returns:* { h, s, l } in [0,1]\n */\nexport function rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n if (max === min) {\n s = 0;\n h = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, l: l };\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * (6 * t);\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n if (s === 0) {\n // achromatic\n g = l;\n b = l;\n r = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nexport function rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var v = max;\n var d = max - min;\n var s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0; // achromatic\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n/**\n * Converts an HSV color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - f * s);\n var t = v * (1 - (1 - f) * s);\n var mod = i % 6;\n var r = [v, q, p, p, t, v][mod];\n var g = [t, v, v, q, p, p][mod];\n var b = [p, p, t, v, v, q][mod];\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nexport function rgbToHex(r, g, b, allow3Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n // Return a 3 character hex if possible\n if (allow3Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\n * Assumes r, g, b are contained in the set [0, 255] and\n * a in [0, 1]. Returns a 4 or 8 character rgba hex\n */\n// eslint-disable-next-line max-params\nexport function rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n pad2(convertDecimalToHex(a)),\n ];\n // Return a 4 character hex if possible\n if (allow4Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1)) &&\n hex[3].startsWith(hex[3].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nexport function rgbaToArgbHex(r, g, b, a) {\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n return hex.join('');\n}\n/** Converts a decimal to a hex value */\nexport function convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n/** Converts a hex value to a decimal */\nexport function convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\n/** Parse a base-16 hex value into a base-10 integer */\nexport function parseIntFromHex(val) {\n return parseInt(val, 16);\n}\nexport function numberInputToObject(color) {\n return {\n r: color >> 16,\n g: (color & 0xff00) >> 8,\n b: color & 0xff,\n };\n}\n","// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexport var names = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n goldenrod: '#daa520',\n gold: '#ffd700',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n lavenderblush: '#fff0f5',\n lavender: '#e6e6fa',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32',\n};\n","/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\nimport { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion';\nimport { names } from './css-color-names';\nimport { boundAlpha, convertToPercentage } from './util';\n/**\n * Given a string or object, convert that input to RGB\n *\n * Possible string inputs:\n * ```\n * \"red\"\n * \"#f00\" or \"f00\"\n * \"#ff0000\" or \"ff0000\"\n * \"#ff000000\" or \"ff000000\"\n * \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n * \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n * \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n * \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n * \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n * \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n * \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n * ```\n */\nexport function inputToRGB(color) {\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color === 'string') {\n color = stringInputToObject(color);\n }\n if (typeof color === 'object') {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === '%' ? 'prgb' : 'rgb';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = 'hsv';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = 'hsl';\n }\n if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a,\n };\n}\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\".concat(CSS_NUMBER, \")|(?:\").concat(CSS_INTEGER, \")\");\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar matchers = {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp('rgb' + PERMISSIVE_MATCH3),\n rgba: new RegExp('rgba' + PERMISSIVE_MATCH4),\n hsl: new RegExp('hsl' + PERMISSIVE_MATCH3),\n hsla: new RegExp('hsla' + PERMISSIVE_MATCH4),\n hsv: new RegExp('hsv' + PERMISSIVE_MATCH3),\n hsva: new RegExp('hsva' + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n};\n/**\n * Permissive string parsing. Take in a number of formats, and output an object\n * based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\n */\nexport function stringInputToObject(color) {\n color = color.trim().toLowerCase();\n if (color.length === 0) {\n return false;\n }\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color === 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: 'name' };\n }\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match = matchers.rgb.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n match = matchers.hex8.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex6.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n match = matchers.hex4.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n a: convertHexToDecimal(match[4] + match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex3.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n return false;\n}\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nexport function isValidCSSUnit(color) {\n return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\n","import { numberInputToObject, rgbaToHex, rgbToHex, rgbToHsl, rgbToHsv } from './conversion';\nimport { names } from './css-color-names';\nimport { inputToRGB } from './format-input';\nimport { bound01, boundAlpha, clamp01 } from './util';\nvar TinyColor = /** @class */ (function () {\n function TinyColor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n var _a;\n // If input is already a tinycolor, return itself\n if (color instanceof TinyColor) {\n // eslint-disable-next-line no-constructor-return\n return color;\n }\n if (typeof color === 'number') {\n color = numberInputToObject(color);\n }\n this.originalInput = color;\n var rgb = inputToRGB(color);\n this.originalInput = color;\n this.r = rgb.r;\n this.g = rgb.g;\n this.b = rgb.b;\n this.a = rgb.a;\n this.roundA = Math.round(100 * this.a) / 100;\n this.format = (_a = opts.format) !== null && _a !== void 0 ? _a : rgb.format;\n this.gradientType = opts.gradientType;\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this.r < 1) {\n this.r = Math.round(this.r);\n }\n if (this.g < 1) {\n this.g = Math.round(this.g);\n }\n if (this.b < 1) {\n this.b = Math.round(this.b);\n }\n this.isValid = rgb.ok;\n }\n TinyColor.prototype.isDark = function () {\n return this.getBrightness() < 128;\n };\n TinyColor.prototype.isLight = function () {\n return !this.isDark();\n };\n /**\n * Returns the perceived brightness of the color, from 0-255.\n */\n TinyColor.prototype.getBrightness = function () {\n // http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n };\n /**\n * Returns the perceived luminance of a color, from 0-1.\n */\n TinyColor.prototype.getLuminance = function () {\n // http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var R;\n var G;\n var B;\n var RsRGB = rgb.r / 255;\n var GsRGB = rgb.g / 255;\n var BsRGB = rgb.b / 255;\n if (RsRGB <= 0.03928) {\n R = RsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n }\n if (GsRGB <= 0.03928) {\n G = GsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n }\n if (BsRGB <= 0.03928) {\n B = BsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n }\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n };\n /**\n * Returns the alpha value of a color, from 0-1.\n */\n TinyColor.prototype.getAlpha = function () {\n return this.a;\n };\n /**\n * Sets the alpha value on the current color.\n *\n * @param alpha - The new alpha value. The accepted range is 0-1.\n */\n TinyColor.prototype.setAlpha = function (alpha) {\n this.a = boundAlpha(alpha);\n this.roundA = Math.round(100 * this.a) / 100;\n return this;\n };\n /**\n * Returns whether the color is monochrome.\n */\n TinyColor.prototype.isMonochrome = function () {\n var s = this.toHsl().s;\n return s === 0;\n };\n /**\n * Returns the object as a HSVA object.\n */\n TinyColor.prototype.toHsv = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this.a };\n };\n /**\n * Returns the hsva values interpolated into a string with the following format:\n * \"hsva(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHsvString = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n var h = Math.round(hsv.h * 360);\n var s = Math.round(hsv.s * 100);\n var v = Math.round(hsv.v * 100);\n return this.a === 1 ? \"hsv(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%)\") : \"hsva(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a HSLA object.\n */\n TinyColor.prototype.toHsl = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this.a };\n };\n /**\n * Returns the hsla values interpolated into a string with the following format:\n * \"hsla(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHslString = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n var h = Math.round(hsl.h * 360);\n var s = Math.round(hsl.s * 100);\n var l = Math.round(hsl.l * 100);\n return this.a === 1 ? \"hsl(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%)\") : \"hsla(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the hex value of the color.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHex = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return rgbToHex(this.r, this.g, this.b, allow3Char);\n };\n /**\n * Returns the hex value of the color -with a # prefixed.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHexString = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return '#' + this.toHex(allow3Char);\n };\n /**\n * Returns the hex 8 value of the color.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8 = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return rgbaToHex(this.r, this.g, this.b, this.a, allow4Char);\n };\n /**\n * Returns the hex 8 value of the color -with a # prefixed.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8String = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return '#' + this.toHex8(allow4Char);\n };\n /**\n * Returns the shorter hex value of the color depends on its alpha -with a # prefixed.\n * @param allowShortChar will shorten hex value to 3 or 4 char if possible\n */\n TinyColor.prototype.toHexShortString = function (allowShortChar) {\n if (allowShortChar === void 0) { allowShortChar = false; }\n return this.a === 1 ? this.toHexString(allowShortChar) : this.toHex8String(allowShortChar);\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toRgb = function () {\n return {\n r: Math.round(this.r),\n g: Math.round(this.g),\n b: Math.round(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA values interpolated into a string with the following format:\n * \"RGBA(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toRgbString = function () {\n var r = Math.round(this.r);\n var g = Math.round(this.g);\n var b = Math.round(this.b);\n return this.a === 1 ? \"rgb(\".concat(r, \", \").concat(g, \", \").concat(b, \")\") : \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toPercentageRgb = function () {\n var fmt = function (x) { return \"\".concat(Math.round(bound01(x, 255) * 100), \"%\"); };\n return {\n r: fmt(this.r),\n g: fmt(this.g),\n b: fmt(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA relative values interpolated into a string\n */\n TinyColor.prototype.toPercentageRgbString = function () {\n var rnd = function (x) { return Math.round(bound01(x, 255) * 100); };\n return this.a === 1\n ? \"rgb(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%)\")\n : \"rgba(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%, \").concat(this.roundA, \")\");\n };\n /**\n * The 'real' name of the color -if there is one.\n */\n TinyColor.prototype.toName = function () {\n if (this.a === 0) {\n return 'transparent';\n }\n if (this.a < 1) {\n return false;\n }\n var hex = '#' + rgbToHex(this.r, this.g, this.b, false);\n for (var _i = 0, _a = Object.entries(names); _i < _a.length; _i++) {\n var _b = _a[_i], key = _b[0], value = _b[1];\n if (hex === value) {\n return key;\n }\n }\n return false;\n };\n TinyColor.prototype.toString = function (format) {\n var formatSet = Boolean(format);\n format = format !== null && format !== void 0 ? format : this.format;\n var formattedString = false;\n var hasAlpha = this.a < 1 && this.a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format.startsWith('hex') || format === 'name');\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === 'name' && this.a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === 'rgb') {\n formattedString = this.toRgbString();\n }\n if (format === 'prgb') {\n formattedString = this.toPercentageRgbString();\n }\n if (format === 'hex' || format === 'hex6') {\n formattedString = this.toHexString();\n }\n if (format === 'hex3') {\n formattedString = this.toHexString(true);\n }\n if (format === 'hex4') {\n formattedString = this.toHex8String(true);\n }\n if (format === 'hex8') {\n formattedString = this.toHex8String();\n }\n if (format === 'name') {\n formattedString = this.toName();\n }\n if (format === 'hsl') {\n formattedString = this.toHslString();\n }\n if (format === 'hsv') {\n formattedString = this.toHsvString();\n }\n return formattedString || this.toHexString();\n };\n TinyColor.prototype.toNumber = function () {\n return (Math.round(this.r) << 16) + (Math.round(this.g) << 8) + Math.round(this.b);\n };\n TinyColor.prototype.clone = function () {\n return new TinyColor(this.toString());\n };\n /**\n * Lighten the color a given amount. Providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.lighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Brighten the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.brighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var rgb = this.toRgb();\n rgb.r = Math.max(0, Math.min(255, rgb.r - Math.round(255 * -(amount / 100))));\n rgb.g = Math.max(0, Math.min(255, rgb.g - Math.round(255 * -(amount / 100))));\n rgb.b = Math.max(0, Math.min(255, rgb.b - Math.round(255 * -(amount / 100))));\n return new TinyColor(rgb);\n };\n /**\n * Darken the color a given amount, from 0 to 100.\n * Providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.darken = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Mix the color with pure white, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.tint = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('white', amount);\n };\n /**\n * Mix the color with pure black, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.shade = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('black', amount);\n };\n /**\n * Desaturate the color a given amount, from 0 to 100.\n * Providing 100 will is the same as calling greyscale\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.desaturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Saturate the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.saturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Completely desaturates a color into greyscale.\n * Same as calling `desaturate(100)`\n */\n TinyColor.prototype.greyscale = function () {\n return this.desaturate(100);\n };\n /**\n * Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n * Values outside of this range will be wrapped into this range.\n */\n TinyColor.prototype.spin = function (amount) {\n var hsl = this.toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return new TinyColor(hsl);\n };\n /**\n * Mix the current color a given amount with another color, from 0 to 100.\n * 0 means no mixing (return current color).\n */\n TinyColor.prototype.mix = function (color, amount) {\n if (amount === void 0) { amount = 50; }\n var rgb1 = this.toRgb();\n var rgb2 = new TinyColor(color).toRgb();\n var p = amount / 100;\n var rgba = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b,\n a: (rgb2.a - rgb1.a) * p + rgb1.a,\n };\n return new TinyColor(rgba);\n };\n TinyColor.prototype.analogous = function (results, slices) {\n if (results === void 0) { results = 6; }\n if (slices === void 0) { slices = 30; }\n var hsl = this.toHsl();\n var part = 360 / slices;\n var ret = [this];\n for (hsl.h = (hsl.h - ((part * results) >> 1) + 720) % 360; --results;) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(new TinyColor(hsl));\n }\n return ret;\n };\n /**\n * taken from https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js\n */\n TinyColor.prototype.complement = function () {\n var hsl = this.toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return new TinyColor(hsl);\n };\n TinyColor.prototype.monochromatic = function (results) {\n if (results === void 0) { results = 6; }\n var hsv = this.toHsv();\n var h = hsv.h;\n var s = hsv.s;\n var v = hsv.v;\n var res = [];\n var modification = 1 / results;\n while (results--) {\n res.push(new TinyColor({ h: h, s: s, v: v }));\n v = (v + modification) % 1;\n }\n return res;\n };\n TinyColor.prototype.splitcomplement = function () {\n var hsl = this.toHsl();\n var h = hsl.h;\n return [\n this,\n new TinyColor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l }),\n new TinyColor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l }),\n ];\n };\n /**\n * Compute how the color would appear on a background\n */\n TinyColor.prototype.onBackground = function (background) {\n var fg = this.toRgb();\n var bg = new TinyColor(background).toRgb();\n var alpha = fg.a + bg.a * (1 - fg.a);\n return new TinyColor({\n r: (fg.r * fg.a + bg.r * bg.a * (1 - fg.a)) / alpha,\n g: (fg.g * fg.a + bg.g * bg.a * (1 - fg.a)) / alpha,\n b: (fg.b * fg.a + bg.b * bg.a * (1 - fg.a)) / alpha,\n a: alpha,\n });\n };\n /**\n * Alias for `polyad(3)`\n */\n TinyColor.prototype.triad = function () {\n return this.polyad(3);\n };\n /**\n * Alias for `polyad(4)`\n */\n TinyColor.prototype.tetrad = function () {\n return this.polyad(4);\n };\n /**\n * Get polyad colors, like (for 1, 2, 3, 4, 5, 6, 7, 8, etc...)\n * monad, dyad, triad, tetrad, pentad, hexad, heptad, octad, etc...\n */\n TinyColor.prototype.polyad = function (n) {\n var hsl = this.toHsl();\n var h = hsl.h;\n var result = [this];\n var increment = 360 / n;\n for (var i = 1; i < n; i++) {\n result.push(new TinyColor({ h: (h + i * increment) % 360, s: hsl.s, l: hsl.l }));\n }\n return result;\n };\n /**\n * compare color vs current color\n */\n TinyColor.prototype.equals = function (color) {\n return this.toRgbString() === new TinyColor(color).toRgbString();\n };\n return TinyColor;\n}());\nexport { TinyColor };\n// kept for backwards compatability with v1\nexport function tinycolor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n return new TinyColor(color, opts);\n}\n","import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}];\n\n// Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nexport default function generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}","import generate from \"./generate\";\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1677FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\nvar gray = presetPalettes.grey;\nexport { generate, presetPalettes, presetDarkPalettes, presetPrimaryColors, red, volcano, orange, gold, yellow, lime, green, cyan, blue, geekblue, purple, magenta, grey, gray };","const genControlHeight = token => {\n const {\n controlHeight\n } = token;\n return {\n controlHeightSM: controlHeight * 0.75,\n controlHeightXS: controlHeight * 0.5,\n controlHeightLG: controlHeight * 1.25\n };\n};\nexport default genControlHeight;","export const defaultPresetColors = {\n blue: '#1677ff',\n purple: '#722ED1',\n cyan: '#13C2C2',\n green: '#52C41A',\n magenta: '#EB2F96',\n pink: '#eb2f96',\n red: '#F5222D',\n orange: '#FA8C16',\n yellow: '#FADB14',\n volcano: '#FA541C',\n geekblue: '#2F54EB',\n gold: '#FAAD14',\n lime: '#A0D911'\n};\nconst seedToken = Object.assign(Object.assign({}, defaultPresetColors), {\n // Color\n colorPrimary: '#1677ff',\n colorSuccess: '#52c41a',\n colorWarning: '#faad14',\n colorError: '#ff4d4f',\n colorInfo: '#1677ff',\n colorTextBase: '',\n colorBgBase: '',\n // Font\n fontFamily: `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,\n'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',\n'Noto Color Emoji'`,\n fontFamilyCode: `'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace`,\n fontSize: 14,\n // Line\n lineWidth: 1,\n lineType: 'solid',\n // Motion\n motionUnit: 0.1,\n motionBase: 0,\n motionEaseOutCirc: 'cubic-bezier(0.08, 0.82, 0.17, 1)',\n motionEaseInOutCirc: 'cubic-bezier(0.78, 0.14, 0.15, 0.86)',\n motionEaseOut: 'cubic-bezier(0.215, 0.61, 0.355, 1)',\n motionEaseInOut: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n motionEaseOutBack: 'cubic-bezier(0.12, 0.4, 0.29, 1.46)',\n motionEaseInBack: 'cubic-bezier(0.71, -0.46, 0.88, 0.6)',\n motionEaseInQuint: 'cubic-bezier(0.755, 0.05, 0.855, 0.06)',\n motionEaseOutQuint: 'cubic-bezier(0.23, 1, 0.32, 1)',\n // Radius\n borderRadius: 6,\n // Size\n sizeUnit: 4,\n sizeStep: 4,\n sizePopupArrow: 16,\n // Control Base\n controlHeight: 32,\n // zIndex\n zIndexBase: 0,\n zIndexPopupBase: 1000,\n // Image\n opacityImage: 1,\n // Wireframe\n wireframe: false\n});\nexport default seedToken;","import { TinyColor } from '@ctrl/tinycolor';\nexport default function genColorMapToken(seed, _ref) {\n let {\n generateColorPalettes,\n generateNeutralColorPalettes\n } = _ref;\n const {\n colorSuccess: colorSuccessBase,\n colorWarning: colorWarningBase,\n colorError: colorErrorBase,\n colorInfo: colorInfoBase,\n colorPrimary: colorPrimaryBase,\n colorBgBase,\n colorTextBase\n } = seed;\n const primaryColors = generateColorPalettes(colorPrimaryBase);\n const successColors = generateColorPalettes(colorSuccessBase);\n const warningColors = generateColorPalettes(colorWarningBase);\n const errorColors = generateColorPalettes(colorErrorBase);\n const infoColors = generateColorPalettes(colorInfoBase);\n const neutralColors = generateNeutralColorPalettes(colorBgBase, colorTextBase);\n return Object.assign(Object.assign({}, neutralColors), {\n colorPrimaryBg: primaryColors[1],\n colorPrimaryBgHover: primaryColors[2],\n colorPrimaryBorder: primaryColors[3],\n colorPrimaryBorderHover: primaryColors[4],\n colorPrimaryHover: primaryColors[5],\n colorPrimary: primaryColors[6],\n colorPrimaryActive: primaryColors[7],\n colorPrimaryTextHover: primaryColors[8],\n colorPrimaryText: primaryColors[9],\n colorPrimaryTextActive: primaryColors[10],\n colorSuccessBg: successColors[1],\n colorSuccessBgHover: successColors[2],\n colorSuccessBorder: successColors[3],\n colorSuccessBorderHover: successColors[4],\n colorSuccessHover: successColors[4],\n colorSuccess: successColors[6],\n colorSuccessActive: successColors[7],\n colorSuccessTextHover: successColors[8],\n colorSuccessText: successColors[9],\n colorSuccessTextActive: successColors[10],\n colorErrorBg: errorColors[1],\n colorErrorBgHover: errorColors[2],\n colorErrorBorder: errorColors[3],\n colorErrorBorderHover: errorColors[4],\n colorErrorHover: errorColors[5],\n colorError: errorColors[6],\n colorErrorActive: errorColors[7],\n colorErrorTextHover: errorColors[8],\n colorErrorText: errorColors[9],\n colorErrorTextActive: errorColors[10],\n colorWarningBg: warningColors[1],\n colorWarningBgHover: warningColors[2],\n colorWarningBorder: warningColors[3],\n colorWarningBorderHover: warningColors[4],\n colorWarningHover: warningColors[4],\n colorWarning: warningColors[6],\n colorWarningActive: warningColors[7],\n colorWarningTextHover: warningColors[8],\n colorWarningText: warningColors[9],\n colorWarningTextActive: warningColors[10],\n colorInfoBg: infoColors[1],\n colorInfoBgHover: infoColors[2],\n colorInfoBorder: infoColors[3],\n colorInfoBorderHover: infoColors[4],\n colorInfoHover: infoColors[4],\n colorInfo: infoColors[6],\n colorInfoActive: infoColors[7],\n colorInfoTextHover: infoColors[8],\n colorInfoText: infoColors[9],\n colorInfoTextActive: infoColors[10],\n colorBgMask: new TinyColor('#000').setAlpha(0.45).toRgbString(),\n colorWhite: '#fff'\n });\n}","const genRadius = radiusBase => {\n let radiusLG = radiusBase;\n let radiusSM = radiusBase;\n let radiusXS = radiusBase;\n let radiusOuter = radiusBase;\n // radiusLG\n if (radiusBase < 6 && radiusBase >= 5) {\n radiusLG = radiusBase + 1;\n } else if (radiusBase < 16 && radiusBase >= 6) {\n radiusLG = radiusBase + 2;\n } else if (radiusBase >= 16) {\n radiusLG = 16;\n }\n // radiusSM\n if (radiusBase < 7 && radiusBase >= 5) {\n radiusSM = 4;\n } else if (radiusBase < 8 && radiusBase >= 7) {\n radiusSM = 5;\n } else if (radiusBase < 14 && radiusBase >= 8) {\n radiusSM = 6;\n } else if (radiusBase < 16 && radiusBase >= 14) {\n radiusSM = 7;\n } else if (radiusBase >= 16) {\n radiusSM = 8;\n }\n // radiusXS\n if (radiusBase < 6 && radiusBase >= 2) {\n radiusXS = 1;\n } else if (radiusBase >= 6) {\n radiusXS = 2;\n }\n // radiusOuter\n if (radiusBase > 4 && radiusBase < 8) {\n radiusOuter = 4;\n } else if (radiusBase >= 8) {\n radiusOuter = 6;\n }\n return {\n borderRadius: radiusBase > 16 ? 16 : radiusBase,\n borderRadiusXS: radiusXS,\n borderRadiusSM: radiusSM,\n borderRadiusLG: radiusLG,\n borderRadiusOuter: radiusOuter\n };\n};\nexport default genRadius;","import { TinyColor } from '@ctrl/tinycolor';\nexport const getAlphaColor = (baseColor, alpha) => new TinyColor(baseColor).setAlpha(alpha).toRgbString();\nexport const getSolidColor = (baseColor, brightness) => {\n const instance = new TinyColor(baseColor);\n return instance.darken(brightness).toHexString();\n};","import { generate } from '@ant-design/colors';\nimport { getAlphaColor, getSolidColor } from './colorAlgorithm';\nexport const generateColorPalettes = baseColor => {\n const colors = generate(baseColor);\n return {\n 1: colors[0],\n 2: colors[1],\n 3: colors[2],\n 4: colors[3],\n 5: colors[4],\n 6: colors[5],\n 7: colors[6],\n 8: colors[4],\n 9: colors[5],\n 10: colors[6]\n // 8: colors[7],\n // 9: colors[8],\n // 10: colors[9],\n };\n};\n\nexport const generateNeutralColorPalettes = (bgBaseColor, textBaseColor) => {\n const colorBgBase = bgBaseColor || '#fff';\n const colorTextBase = textBaseColor || '#000';\n return {\n colorBgBase,\n colorTextBase,\n colorText: getAlphaColor(colorTextBase, 0.88),\n colorTextSecondary: getAlphaColor(colorTextBase, 0.65),\n colorTextTertiary: getAlphaColor(colorTextBase, 0.45),\n colorTextQuaternary: getAlphaColor(colorTextBase, 0.25),\n colorFill: getAlphaColor(colorTextBase, 0.15),\n colorFillSecondary: getAlphaColor(colorTextBase, 0.06),\n colorFillTertiary: getAlphaColor(colorTextBase, 0.04),\n colorFillQuaternary: getAlphaColor(colorTextBase, 0.02),\n colorBgLayout: getSolidColor(colorBgBase, 4),\n colorBgContainer: getSolidColor(colorBgBase, 0),\n colorBgElevated: getSolidColor(colorBgBase, 0),\n colorBgSpotlight: getAlphaColor(colorTextBase, 0.85),\n colorBorder: getSolidColor(colorBgBase, 15),\n colorBorderSecondary: getSolidColor(colorBgBase, 6)\n };\n};","import genFontSizes from './genFontSizes';\nconst genFontMapToken = fontSize => {\n const fontSizePairs = genFontSizes(fontSize);\n const fontSizes = fontSizePairs.map(pair => pair.size);\n const lineHeights = fontSizePairs.map(pair => pair.lineHeight);\n return {\n fontSizeSM: fontSizes[0],\n fontSize: fontSizes[1],\n fontSizeLG: fontSizes[2],\n fontSizeXL: fontSizes[3],\n fontSizeHeading1: fontSizes[6],\n fontSizeHeading2: fontSizes[5],\n fontSizeHeading3: fontSizes[4],\n fontSizeHeading4: fontSizes[3],\n fontSizeHeading5: fontSizes[2],\n lineHeight: lineHeights[1],\n lineHeightLG: lineHeights[2],\n lineHeightSM: lineHeights[0],\n lineHeightHeading1: lineHeights[6],\n lineHeightHeading2: lineHeights[5],\n lineHeightHeading3: lineHeights[4],\n lineHeightHeading4: lineHeights[3],\n lineHeightHeading5: lineHeights[2]\n };\n};\nexport default genFontMapToken;","// https://zhuanlan.zhihu.com/p/32746810\nexport default function getFontSizes(base) {\n const fontSizes = new Array(10).fill(null).map((_, index) => {\n const i = index - 1;\n const baseSize = base * Math.pow(2.71828, i / 5);\n const intSize = index > 1 ? Math.floor(baseSize) : Math.ceil(baseSize);\n // Convert to even\n return Math.floor(intSize / 2) * 2;\n });\n fontSizes[1] = base;\n return fontSizes.map(size => {\n const height = size + 8;\n return {\n size,\n lineHeight: height / size\n };\n });\n}","import { generate } from '@ant-design/colors';\nimport genControlHeight from '../shared/genControlHeight';\nimport genSizeMapToken from '../shared/genSizeMapToken';\nimport { defaultPresetColors } from '../seed';\nimport genColorMapToken from '../shared/genColorMapToken';\nimport genCommonMapToken from '../shared/genCommonMapToken';\nimport { generateColorPalettes, generateNeutralColorPalettes } from './colors';\nimport genFontMapToken from '../shared/genFontMapToken';\nexport default function derivative(token) {\n const colorPalettes = Object.keys(defaultPresetColors).map(colorKey => {\n const colors = generate(token[colorKey]);\n return new Array(10).fill(1).reduce((prev, _, i) => {\n prev[`${colorKey}-${i + 1}`] = colors[i];\n prev[`${colorKey}${i + 1}`] = colors[i];\n return prev;\n }, {});\n }).reduce((prev, cur) => {\n prev = Object.assign(Object.assign({}, prev), cur);\n return prev;\n }, {});\n return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, token), colorPalettes), genColorMapToken(token, {\n generateColorPalettes,\n generateNeutralColorPalettes\n })), genFontMapToken(token.fontSize)), genSizeMapToken(token)), genControlHeight(token)), genCommonMapToken(token));\n}","export default function genSizeMapToken(token) {\n const {\n sizeUnit,\n sizeStep\n } = token;\n return {\n sizeXXL: sizeUnit * (sizeStep + 8),\n sizeXL: sizeUnit * (sizeStep + 4),\n sizeLG: sizeUnit * (sizeStep + 2),\n sizeMD: sizeUnit * (sizeStep + 1),\n sizeMS: sizeUnit * sizeStep,\n size: sizeUnit * sizeStep,\n sizeSM: sizeUnit * (sizeStep - 1),\n sizeXS: sizeUnit * (sizeStep - 2),\n sizeXXS: sizeUnit * (sizeStep - 3) // 4\n };\n}","import genRadius from './genRadius';\nexport default function genCommonMapToken(token) {\n const {\n motionUnit,\n motionBase,\n borderRadius,\n lineWidth\n } = token;\n return Object.assign({\n // motion\n motionDurationFast: `${(motionBase + motionUnit).toFixed(1)}s`,\n motionDurationMid: `${(motionBase + motionUnit * 2).toFixed(1)}s`,\n motionDurationSlow: `${(motionBase + motionUnit * 3).toFixed(1)}s`,\n // line\n lineWidthBold: lineWidth + 1\n }, genRadius(borderRadius));\n}","import { TinyColor } from '@ctrl/tinycolor';\nfunction isStableColor(color) {\n return color >= 0 && color <= 255;\n}\nfunction getAlphaColor(frontColor, backgroundColor) {\n const {\n r: fR,\n g: fG,\n b: fB,\n a: originAlpha\n } = new TinyColor(frontColor).toRgb();\n if (originAlpha < 1) {\n return frontColor;\n }\n const {\n r: bR,\n g: bG,\n b: bB\n } = new TinyColor(backgroundColor).toRgb();\n for (let fA = 0.01; fA <= 1; fA += 0.01) {\n const r = Math.round((fR - bR * (1 - fA)) / fA);\n const g = Math.round((fG - bG * (1 - fA)) / fA);\n const b = Math.round((fB - bB * (1 - fA)) / fA);\n if (isStableColor(r) && isStableColor(g) && isStableColor(b)) {\n return new TinyColor({\n r,\n g,\n b,\n a: Math.round(fA * 100) / 100\n }).toRgbString();\n }\n }\n // fallback\n /* istanbul ignore next */\n return new TinyColor({\n r: fR,\n g: fG,\n b: fB,\n a: 1\n }).toRgbString();\n}\nexport default getAlphaColor;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { TinyColor } from '@ctrl/tinycolor';\nimport getAlphaColor from './getAlphaColor';\nimport seedToken from '../themes/seed';\n/**\n * Seed (designer) > Derivative (designer) > Alias (developer).\n *\n * Merge seed & derivative & override token and generate alias token for developer.\n */\nexport default function formatToken(derivativeToken) {\n const {\n override\n } = derivativeToken,\n restToken = __rest(derivativeToken, [\"override\"]);\n const overrideTokens = Object.assign({}, override);\n Object.keys(seedToken).forEach(token => {\n delete overrideTokens[token];\n });\n const mergedToken = Object.assign(Object.assign({}, restToken), overrideTokens);\n const screenXS = 480;\n const screenSM = 576;\n const screenMD = 768;\n const screenLG = 992;\n const screenXL = 1200;\n const screenXXL = 1600;\n // Generate alias token\n const aliasToken = Object.assign(Object.assign(Object.assign({}, mergedToken), {\n colorLink: mergedToken.colorInfoText,\n colorLinkHover: mergedToken.colorInfoHover,\n colorLinkActive: mergedToken.colorInfoActive,\n // ============== Background ============== //\n colorFillContent: mergedToken.colorFillSecondary,\n colorFillContentHover: mergedToken.colorFill,\n colorFillAlter: mergedToken.colorFillQuaternary,\n colorBgContainerDisabled: mergedToken.colorFillTertiary,\n // ============== Split ============== //\n colorBorderBg: mergedToken.colorBgContainer,\n colorSplit: getAlphaColor(mergedToken.colorBorderSecondary, mergedToken.colorBgContainer),\n // ============== Text ============== //\n colorTextPlaceholder: mergedToken.colorTextQuaternary,\n colorTextDisabled: mergedToken.colorTextQuaternary,\n colorTextHeading: mergedToken.colorText,\n colorTextLabel: mergedToken.colorTextSecondary,\n colorTextDescription: mergedToken.colorTextTertiary,\n colorTextLightSolid: mergedToken.colorWhite,\n colorHighlight: mergedToken.colorError,\n colorBgTextHover: mergedToken.colorFillSecondary,\n colorBgTextActive: mergedToken.colorFill,\n colorIcon: mergedToken.colorTextTertiary,\n colorIconHover: mergedToken.colorText,\n colorErrorOutline: getAlphaColor(mergedToken.colorErrorBg, mergedToken.colorBgContainer),\n colorWarningOutline: getAlphaColor(mergedToken.colorWarningBg, mergedToken.colorBgContainer),\n // Font\n fontSizeIcon: mergedToken.fontSizeSM,\n // Line\n lineWidthFocus: mergedToken.lineWidth * 4,\n // Control\n lineWidth: mergedToken.lineWidth,\n controlOutlineWidth: mergedToken.lineWidth * 2,\n // Checkbox size and expand icon size\n controlInteractiveSize: mergedToken.controlHeight / 2,\n controlItemBgHover: mergedToken.colorFillTertiary,\n controlItemBgActive: mergedToken.colorPrimaryBg,\n controlItemBgActiveHover: mergedToken.colorPrimaryBgHover,\n controlItemBgActiveDisabled: mergedToken.colorFill,\n controlTmpOutline: mergedToken.colorFillQuaternary,\n controlOutline: getAlphaColor(mergedToken.colorPrimaryBg, mergedToken.colorBgContainer),\n lineType: mergedToken.lineType,\n borderRadius: mergedToken.borderRadius,\n borderRadiusXS: mergedToken.borderRadiusXS,\n borderRadiusSM: mergedToken.borderRadiusSM,\n borderRadiusLG: mergedToken.borderRadiusLG,\n fontWeightStrong: 600,\n opacityLoading: 0.65,\n linkDecoration: 'none',\n linkHoverDecoration: 'none',\n linkFocusDecoration: 'none',\n controlPaddingHorizontal: 12,\n controlPaddingHorizontalSM: 8,\n paddingXXS: mergedToken.sizeXXS,\n paddingXS: mergedToken.sizeXS,\n paddingSM: mergedToken.sizeSM,\n padding: mergedToken.size,\n paddingMD: mergedToken.sizeMD,\n paddingLG: mergedToken.sizeLG,\n paddingXL: mergedToken.sizeXL,\n paddingContentHorizontalLG: mergedToken.sizeLG,\n paddingContentVerticalLG: mergedToken.sizeMS,\n paddingContentHorizontal: mergedToken.sizeMS,\n paddingContentVertical: mergedToken.sizeSM,\n paddingContentHorizontalSM: mergedToken.size,\n paddingContentVerticalSM: mergedToken.sizeXS,\n marginXXS: mergedToken.sizeXXS,\n marginXS: mergedToken.sizeXS,\n marginSM: mergedToken.sizeSM,\n margin: mergedToken.size,\n marginMD: mergedToken.sizeMD,\n marginLG: mergedToken.sizeLG,\n marginXL: mergedToken.sizeXL,\n marginXXL: mergedToken.sizeXXL,\n boxShadow: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowSecondary: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTertiary: `\n 0 1px 2px 0 rgba(0, 0, 0, 0.03),\n 0 1px 6px -1px rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(0, 0, 0, 0.02)\n `,\n screenXS,\n screenXSMin: screenXS,\n screenXSMax: screenSM - 1,\n screenSM,\n screenSMMin: screenSM,\n screenSMMax: screenMD - 1,\n screenMD,\n screenMDMin: screenMD,\n screenMDMax: screenLG - 1,\n screenLG,\n screenLGMin: screenLG,\n screenLGMax: screenXL - 1,\n screenXL,\n screenXLMin: screenXL,\n screenXLMax: screenXXL - 1,\n screenXXL,\n screenXXLMin: screenXXL,\n boxShadowPopoverArrow: '2px 2px 5px rgba(0, 0, 0, 0.05)',\n boxShadowCard: `\n 0 1px 2px -2px ${new TinyColor('rgba(0, 0, 0, 0.16)').toRgbString()},\n 0 3px 6px 0 ${new TinyColor('rgba(0, 0, 0, 0.12)').toRgbString()},\n 0 5px 12px 4px ${new TinyColor('rgba(0, 0, 0, 0.09)').toRgbString()}\n `,\n boxShadowDrawerRight: `\n -6px 0 16px 0 rgba(0, 0, 0, 0.08),\n -3px 0 6px -4px rgba(0, 0, 0, 0.12),\n -9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerLeft: `\n 6px 0 16px 0 rgba(0, 0, 0, 0.08),\n 3px 0 6px -4px rgba(0, 0, 0, 0.12),\n 9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerUp: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerDown: `\n 0 -6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 -3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 -9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTabsOverflowLeft: 'inset 10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowRight: 'inset -10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowTop: 'inset 0 10px 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowBottom: 'inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08)'\n }), overrideTokens);\n return aliasToken;\n}","import { PresetColors } from '../theme/internal';\nexport function genPresetColor(token, genCss) {\n return PresetColors.reduce((prev, colorKey) => {\n const lightColor = token[`${colorKey}1`];\n const lightBorderColor = token[`${colorKey}3`];\n const darkColor = token[`${colorKey}6`];\n const textColor = token[`${colorKey}7`];\n return Object.assign(Object.assign({}, prev), genCss(colorKey, {\n lightColor,\n lightBorderColor,\n darkColor,\n textColor\n }));\n }, {});\n}","export const roundedArrow = (width, innerRadius, outerRadius, bgColor, boxShadow) => {\n const unitWidth = width / 2;\n const ax = 0;\n const ay = unitWidth;\n const bx = outerRadius * 1 / Math.sqrt(2);\n const by = unitWidth - outerRadius * (1 - 1 / Math.sqrt(2));\n const cx = unitWidth - innerRadius * (1 / Math.sqrt(2));\n const cy = outerRadius * (Math.sqrt(2) - 1) + innerRadius * (1 / Math.sqrt(2));\n const dx = 2 * unitWidth - cx;\n const dy = cy;\n const ex = 2 * unitWidth - bx;\n const ey = by;\n const fx = 2 * unitWidth - ax;\n const fy = ay;\n const shadowWidth = unitWidth * Math.sqrt(2) + outerRadius * (Math.sqrt(2) - 2);\n return {\n pointerEvents: 'none',\n width,\n height: width,\n overflow: 'hidden',\n '&::before': {\n position: 'absolute',\n bottom: 0,\n insetInlineStart: 0,\n width,\n height: width / 2,\n background: bgColor,\n clipPath: `path('M ${ax} ${ay} A ${outerRadius} ${outerRadius} 0 0 0 ${bx} ${by} L ${cx} ${cy} A ${innerRadius} ${innerRadius} 0 0 1 ${dx} ${dy} L ${ex} ${ey} A ${outerRadius} ${outerRadius} 0 0 0 ${fx} ${fy} Z')`,\n content: '\"\"'\n },\n '&::after': {\n content: '\"\"',\n position: 'absolute',\n width: shadowWidth,\n height: shadowWidth,\n bottom: 0,\n insetInline: 0,\n margin: 'auto',\n borderRadius: {\n _skip_check_: true,\n value: `0 0 ${innerRadius}px 0`\n },\n transform: 'translateY(50%) rotate(-135deg)',\n boxShadow,\n zIndex: 0,\n background: 'transparent'\n }\n };\n};","export { operationUnit } from './operationUnit';\nexport { genPresetColor } from './presetColor';\nexport { roundedArrow } from './roundedArrow';\nexport const textEllipsis = {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n};\nexport const resetComponent = token => ({\n boxSizing: 'border-box',\n margin: 0,\n padding: 0,\n color: token.colorText,\n fontSize: token.fontSize,\n // font-variant: @font-variant-base;\n lineHeight: token.lineHeight,\n listStyle: 'none',\n // font-feature-settings: @font-feature-settings-base;\n fontFamily: token.fontFamily\n});\nexport const resetIcon = () => ({\n display: 'inline-flex',\n alignItems: 'center',\n color: 'inherit',\n fontStyle: 'normal',\n lineHeight: 0,\n textAlign: 'center',\n textTransform: 'none',\n // for SVG icon, see https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n verticalAlign: '-0.125em',\n textRendering: 'optimizeLegibility',\n '-webkit-font-smoothing': 'antialiased',\n '-moz-osx-font-smoothing': 'grayscale',\n '> *': {\n lineHeight: 1\n },\n svg: {\n display: 'inline-block'\n }\n});\nexport const clearFix = () => ({\n // https://github.com/ant-design/ant-design/issues/21301#issuecomment-583955229\n '&::before': {\n display: 'table',\n content: '\"\"'\n },\n '&::after': {\n // https://github.com/ant-design/ant-design/issues/21864\n display: 'table',\n clear: 'both',\n content: '\"\"'\n }\n});\nexport const genLinkStyle = token => ({\n a: {\n color: token.colorLink,\n textDecoration: token.linkDecoration,\n backgroundColor: 'transparent',\n outline: 'none',\n cursor: 'pointer',\n transition: `color ${token.motionDurationSlow}`,\n '-webkit-text-decoration-skip': 'objects',\n '&:hover': {\n color: token.colorLinkHover\n },\n '&:active': {\n color: token.colorLinkActive\n },\n [`&:active,\n &:hover`]: {\n textDecoration: token.linkHoverDecoration,\n outline: 0\n },\n // https://github.com/ant-design/ant-design/issues/22503\n '&:focus': {\n textDecoration: token.linkFocusDecoration,\n outline: 0\n },\n '&[disabled]': {\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n }\n }\n});\nexport const genCommonStyle = (token, componentPrefixCls) => {\n const {\n fontFamily,\n fontSize\n } = token;\n const rootPrefixSelector = `[class^=\"${componentPrefixCls}\"], [class*=\" ${componentPrefixCls}\"]`;\n return {\n [rootPrefixSelector]: {\n fontFamily,\n fontSize,\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n },\n [rootPrefixSelector]: {\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n }\n }\n }\n };\n};\nexport const genFocusOutline = token => ({\n outline: `${token.lineWidthFocus}px solid ${token.colorPrimaryBorder}`,\n outlineOffset: 1,\n transition: 'outline-offset 0s, outline 0s'\n});\nexport const genFocusStyle = token => ({\n '&:focus-visible': Object.assign({}, genFocusOutline(token))\n});","import * as React from 'react';\nexport const defaultIconPrefixCls = 'anticon';\nconst defaultGetPrefixCls = (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `ant-${suffixCls}` : 'ant';\n};\n// zombieJ: 🚨 Do not pass `defaultRenderEmpty` here since it will cause circular dependency.\nexport const ConfigContext = /*#__PURE__*/React.createContext({\n // We provide a default function for Context without provider\n getPrefixCls: defaultGetPrefixCls,\n iconPrefixCls: defaultIconPrefixCls\n});\nexport const {\n Consumer: ConfigConsumer\n} = ConfigContext;","import { useStyleRegister } from '@ant-design/cssinjs';\nimport { useContext } from 'react';\nimport { genCommonStyle, genLinkStyle } from '../../style';\nimport { ConfigContext } from '../../config-provider/context';\nimport { mergeToken, statisticToken, useToken } from '../internal';\nexport default function genComponentStyleHook(component, styleFn, getDefaultToken) {\n return prefixCls => {\n const [theme, token, hashId] = useToken();\n const {\n getPrefixCls,\n iconPrefixCls\n } = useContext(ConfigContext);\n const rootPrefixCls = getPrefixCls();\n // Generate style for all a tags in antd component.\n useStyleRegister({\n theme,\n token,\n hashId,\n path: ['Shared', rootPrefixCls]\n }, () => [{\n // Link\n '&': genLinkStyle(token)\n }]);\n return [useStyleRegister({\n theme,\n token,\n hashId,\n path: [component, prefixCls, iconPrefixCls]\n }, () => {\n const {\n token: proxyToken,\n flush\n } = statisticToken(token);\n const defaultComponentToken = typeof getDefaultToken === 'function' ? getDefaultToken(proxyToken) : getDefaultToken;\n const mergedComponentToken = Object.assign(Object.assign({}, defaultComponentToken), token[component]);\n const componentCls = `.${prefixCls}`;\n const mergedToken = mergeToken(proxyToken, {\n componentCls,\n prefixCls,\n iconCls: `.${iconPrefixCls}`,\n antCls: `.${rootPrefixCls}`\n }, mergedComponentToken);\n const styleInterpolation = styleFn(mergedToken, {\n hashId,\n prefixCls,\n rootPrefixCls,\n iconPrefixCls,\n overrideComponentToken: token[component]\n });\n flush(component, mergedComponentToken);\n return [genCommonStyle(token, prefixCls), styleInterpolation];\n }), hashId];\n };\n}","const enableStatistic = process.env.NODE_ENV !== 'production' || typeof CSSINJS_STATISTIC !== 'undefined';\nlet recording = true;\n/**\n * This function will do as `Object.assign` in production. But will use Object.defineProperty:get to\n * pass all value access in development. To support statistic field usage with alias token.\n */\nexport function merge() {\n for (var _len = arguments.length, objs = new Array(_len), _key = 0; _key < _len; _key++) {\n objs[_key] = arguments[_key];\n }\n /* istanbul ignore next */\n if (!enableStatistic) {\n return Object.assign.apply(Object, [{}].concat(objs));\n }\n recording = false;\n const ret = {};\n objs.forEach(obj => {\n const keys = Object.keys(obj);\n keys.forEach(key => {\n Object.defineProperty(ret, key, {\n configurable: true,\n enumerable: true,\n get: () => obj[key]\n });\n });\n });\n recording = true;\n return ret;\n}\n/** @private Internal Usage. Not use in your production. */\nexport const statistic = {};\n/** @private Internal Usage. Not use in your production. */\n// eslint-disable-next-line camelcase\nexport const _statistic_build_ = {};\n/* istanbul ignore next */\nfunction noop() {}\n/** Statistic token usage case. Should use `merge` function if you do not want spread record. */\nexport default function statisticToken(token) {\n let tokenKeys;\n let proxy = token;\n let flush = noop;\n if (enableStatistic) {\n tokenKeys = new Set();\n proxy = new Proxy(token, {\n get(obj, prop) {\n if (recording) {\n tokenKeys.add(prop);\n }\n return obj[prop];\n }\n });\n flush = (componentName, componentToken) => {\n statistic[componentName] = {\n global: Array.from(tokenKeys),\n component: componentToken\n };\n };\n }\n return {\n token: proxy,\n keys: tokenKeys,\n flush\n };\n}","import { createTheme, useCacheToken, useStyleRegister } from '@ant-design/cssinjs';\nimport React from 'react';\nimport version from '../version';\nimport { PresetColors } from './interface';\nimport defaultDerivative from './themes/default';\nimport defaultSeedToken from './themes/seed';\nimport formatToken from './util/alias';\nimport genComponentStyleHook from './util/genComponentStyleHook';\nimport statisticToken, { merge as mergeToken, statistic } from './util/statistic';\nconst defaultTheme = createTheme(defaultDerivative);\nexport {\n// colors\nPresetColors,\n// Statistic\nstatistic, statisticToken, mergeToken,\n// hooks\nuseStyleRegister, genComponentStyleHook };\n// ================================ Context =================================\n// To ensure snapshot stable. We disable hashed in test env.\nexport const defaultConfig = {\n token: defaultSeedToken,\n hashed: true\n};\nexport const DesignTokenContext = /*#__PURE__*/React.createContext(defaultConfig);\n// ================================== Hook ==================================\nexport function useToken() {\n const {\n token: rootDesignToken,\n hashed,\n theme,\n components\n } = React.useContext(DesignTokenContext);\n const salt = `${version}-${hashed || ''}`;\n const mergedTheme = theme || defaultTheme;\n const [token, hashId] = useCacheToken(mergedTheme, [defaultSeedToken, rootDesignToken], {\n salt,\n override: Object.assign({\n override: rootDesignToken\n }, components),\n formatToken\n });\n return [mergedTheme, token, hashed ? hashId : ''];\n}","/* eslint-disable import/prefer-default-export, prefer-destructuring */\nimport { generate } from '@ant-design/colors';\nimport { TinyColor } from '@ctrl/tinycolor';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { updateCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport warning from '../_util/warning';\nconst dynamicStyleMark = `-ant-${Date.now()}-${Math.random()}`;\nexport function getStyle(globalPrefixCls, theme) {\n const variables = {};\n const formatColor = (color, updater) => {\n let clone = color.clone();\n clone = (updater === null || updater === void 0 ? void 0 : updater(clone)) || clone;\n return clone.toRgbString();\n };\n const fillColor = (colorVal, type) => {\n const baseColor = new TinyColor(colorVal);\n const colorPalettes = generate(baseColor.toRgbString());\n variables[`${type}-color`] = formatColor(baseColor);\n variables[`${type}-color-disabled`] = colorPalettes[1];\n variables[`${type}-color-hover`] = colorPalettes[4];\n variables[`${type}-color-active`] = colorPalettes[6];\n variables[`${type}-color-outline`] = baseColor.clone().setAlpha(0.2).toRgbString();\n variables[`${type}-color-deprecated-bg`] = colorPalettes[0];\n variables[`${type}-color-deprecated-border`] = colorPalettes[2];\n };\n // ================ Primary Color ================\n if (theme.primaryColor) {\n fillColor(theme.primaryColor, 'primary');\n const primaryColor = new TinyColor(theme.primaryColor);\n const primaryColors = generate(primaryColor.toRgbString());\n // Legacy - We should use semantic naming standard\n primaryColors.forEach((color, index) => {\n variables[`primary-${index + 1}`] = color;\n });\n // Deprecated\n variables['primary-color-deprecated-l-35'] = formatColor(primaryColor, c => c.lighten(35));\n variables['primary-color-deprecated-l-20'] = formatColor(primaryColor, c => c.lighten(20));\n variables['primary-color-deprecated-t-20'] = formatColor(primaryColor, c => c.tint(20));\n variables['primary-color-deprecated-t-50'] = formatColor(primaryColor, c => c.tint(50));\n variables['primary-color-deprecated-f-12'] = formatColor(primaryColor, c => c.setAlpha(c.getAlpha() * 0.12));\n const primaryActiveColor = new TinyColor(primaryColors[0]);\n variables['primary-color-active-deprecated-f-30'] = formatColor(primaryActiveColor, c => c.setAlpha(c.getAlpha() * 0.3));\n variables['primary-color-active-deprecated-d-02'] = formatColor(primaryActiveColor, c => c.darken(2));\n }\n // ================ Success Color ================\n if (theme.successColor) {\n fillColor(theme.successColor, 'success');\n }\n // ================ Warning Color ================\n if (theme.warningColor) {\n fillColor(theme.warningColor, 'warning');\n }\n // ================= Error Color =================\n if (theme.errorColor) {\n fillColor(theme.errorColor, 'error');\n }\n // ================= Info Color ==================\n if (theme.infoColor) {\n fillColor(theme.infoColor, 'info');\n }\n // Convert to css variables\n const cssList = Object.keys(variables).map(key => `--${globalPrefixCls}-${key}: ${variables[key]};`);\n return `\n :root {\n ${cssList.join('\\n')}\n }\n `.trim();\n}\nexport function registerTheme(globalPrefixCls, theme) {\n const style = getStyle(globalPrefixCls, theme);\n if (canUseDom()) {\n updateCSS(style, `${dynamicStyleMark}-dynamic-theme`);\n } else {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'ConfigProvider', 'SSR do not support dynamic theme with css variables.') : void 0;\n }\n}","import * as React from 'react';\nconst DisabledContext = /*#__PURE__*/React.createContext(false);\nexport const DisabledContextProvider = _ref => {\n let {\n children,\n disabled\n } = _ref;\n const originDisabled = React.useContext(DisabledContext);\n return /*#__PURE__*/React.createElement(DisabledContext.Provider, {\n value: disabled !== null && disabled !== void 0 ? disabled : originDisabled\n }, children);\n};\nexport default DisabledContext;","import * as React from 'react';\nconst SizeContext = /*#__PURE__*/React.createContext(undefined);\nexport const SizeContextProvider = _ref => {\n let {\n children,\n size\n } = _ref;\n const originSize = React.useContext(SizeContext);\n return /*#__PURE__*/React.createElement(SizeContext.Provider, {\n value: size || originSize\n }, children);\n};\nexport default SizeContext;","import { useStyleRegister } from '@ant-design/cssinjs';\nimport { resetIcon } from '../../style';\nimport { useToken } from '../../theme/internal';\nconst useStyle = iconPrefixCls => {\n const [theme, token] = useToken();\n // Generate style for icons\n return useStyleRegister({\n theme,\n token,\n hashId: '',\n path: ['ant-design-icons', iconPrefixCls]\n }, () => [{\n [`.${iconPrefixCls}`]: Object.assign(Object.assign({}, resetIcon()), {\n [`.${iconPrefixCls} .${iconPrefixCls}-icon`]: {\n display: 'block'\n }\n })\n }]);\n};\nexport default useStyle;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { createTheme } from '@ant-design/cssinjs';\nimport IconContext from \"@ant-design/icons/es/components/Context\";\nimport { FormProvider as RcFormProvider } from 'rc-field-form';\nimport { setValues } from \"rc-field-form/es/utils/valueUtil\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport * as React from 'react';\nimport LocaleProvider, { ANT_MARK } from '../locale';\nimport LocaleContext from '../locale/context';\nimport defaultLocale from '../locale/en_US';\nimport { DesignTokenContext } from '../theme/internal';\nimport defaultSeedToken from '../theme/themes/seed';\nimport warning from '../_util/warning';\nimport { ConfigConsumer, ConfigContext, defaultIconPrefixCls } from './context';\nimport { registerTheme } from './cssVariables';\nimport { DisabledContextProvider } from './DisabledContext';\nimport useConfig from './hooks/useConfig';\nimport useTheme from './hooks/useTheme';\nimport SizeContext, { SizeContextProvider } from './SizeContext';\nimport useStyle from './style';\n/**\n * Since too many feedback using static method like `Modal.confirm` not getting theme,\n * we record the theme register info here to help developer get warning info.\n */\nlet existThemeConfig = false;\nexport const warnContext = process.env.NODE_ENV !== 'production' ? componentName => {\n process.env.NODE_ENV !== \"production\" ? warning(!existThemeConfig, componentName, `Static function can not consume context like dynamic theme. Please use 'App' component instead.`) : void 0;\n} : /* istanbul ignore next */\nnull;\nexport { ConfigContext, ConfigConsumer };\nexport { defaultIconPrefixCls };\nexport const configConsumerProps = ['getTargetContainer', 'getPopupContainer', 'rootPrefixCls', 'getPrefixCls', 'renderEmpty', 'csp', 'autoInsertSpaceInButton', 'locale', 'pageHeader'];\n// These props is used by `useContext` directly in sub component\nconst PASSED_PROPS = ['getTargetContainer', 'getPopupContainer', 'renderEmpty', 'pageHeader', 'input', 'pagination', 'form', 'select'];\nexport const defaultPrefixCls = 'ant';\nlet globalPrefixCls;\nlet globalIconPrefixCls;\nfunction getGlobalPrefixCls() {\n return globalPrefixCls || defaultPrefixCls;\n}\nfunction getGlobalIconPrefixCls() {\n return globalIconPrefixCls || defaultIconPrefixCls;\n}\nconst setGlobalConfig = _ref => {\n let {\n prefixCls,\n iconPrefixCls,\n theme\n } = _ref;\n if (prefixCls !== undefined) {\n globalPrefixCls = prefixCls;\n }\n if (iconPrefixCls !== undefined) {\n globalIconPrefixCls = iconPrefixCls;\n }\n if (theme) {\n registerTheme(getGlobalPrefixCls(), theme);\n }\n};\nexport const globalConfig = () => ({\n getPrefixCls: (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `${getGlobalPrefixCls()}-${suffixCls}` : getGlobalPrefixCls();\n },\n getIconPrefixCls: getGlobalIconPrefixCls,\n getRootPrefixCls: () => {\n // If Global prefixCls provided, use this\n if (globalPrefixCls) {\n return globalPrefixCls;\n }\n // Fallback to default prefixCls\n return getGlobalPrefixCls();\n }\n});\nconst ProviderChildren = props => {\n const {\n children,\n csp: customCsp,\n autoInsertSpaceInButton,\n form,\n locale,\n componentSize,\n direction,\n space,\n virtual,\n dropdownMatchSelectWidth,\n legacyLocale,\n parentContext,\n iconPrefixCls: customIconPrefixCls,\n theme,\n componentDisabled\n } = props;\n const getPrefixCls = React.useCallback((suffixCls, customizePrefixCls) => {\n const {\n prefixCls\n } = props;\n if (customizePrefixCls) return customizePrefixCls;\n const mergedPrefixCls = prefixCls || parentContext.getPrefixCls('');\n return suffixCls ? `${mergedPrefixCls}-${suffixCls}` : mergedPrefixCls;\n }, [parentContext.getPrefixCls, props.prefixCls]);\n const iconPrefixCls = customIconPrefixCls || parentContext.iconPrefixCls || defaultIconPrefixCls;\n const shouldWrapSSR = iconPrefixCls !== parentContext.iconPrefixCls;\n const csp = customCsp || parentContext.csp;\n const wrapSSR = useStyle(iconPrefixCls);\n const mergedTheme = useTheme(theme, parentContext.theme);\n if (process.env.NODE_ENV !== 'production') {\n existThemeConfig = existThemeConfig || !!mergedTheme;\n }\n const baseConfig = {\n csp,\n autoInsertSpaceInButton,\n locale: locale || legacyLocale,\n direction,\n space,\n virtual,\n dropdownMatchSelectWidth,\n getPrefixCls,\n iconPrefixCls,\n theme: mergedTheme\n };\n const config = Object.assign({}, parentContext);\n Object.keys(baseConfig).forEach(key => {\n if (baseConfig[key] !== undefined) {\n config[key] = baseConfig[key];\n }\n });\n // Pass the props used by `useContext` directly with child component.\n // These props should merged into `config`.\n PASSED_PROPS.forEach(propName => {\n const propValue = props[propName];\n if (propValue) {\n config[propName] = propValue;\n }\n });\n // https://github.com/ant-design/ant-design/issues/27617\n const memoedConfig = useMemo(() => config, config, (prevConfig, currentConfig) => {\n const prevKeys = Object.keys(prevConfig);\n const currentKeys = Object.keys(currentConfig);\n return prevKeys.length !== currentKeys.length || prevKeys.some(key => prevConfig[key] !== currentConfig[key]);\n });\n const memoIconContextValue = React.useMemo(() => ({\n prefixCls: iconPrefixCls,\n csp\n }), [iconPrefixCls, csp]);\n let childNode = shouldWrapSSR ? wrapSSR(children) : children;\n const validateMessages = React.useMemo(() => {\n var _a, _b, _c;\n return setValues({}, ((_a = defaultLocale.Form) === null || _a === void 0 ? void 0 : _a.defaultValidateMessages) || {}, ((_c = (_b = memoedConfig.locale) === null || _b === void 0 ? void 0 : _b.Form) === null || _c === void 0 ? void 0 : _c.defaultValidateMessages) || {}, (form === null || form === void 0 ? void 0 : form.validateMessages) || {});\n }, [memoedConfig, form === null || form === void 0 ? void 0 : form.validateMessages]);\n if (Object.keys(validateMessages).length > 0) {\n childNode = /*#__PURE__*/React.createElement(RcFormProvider, {\n validateMessages: validateMessages\n }, children);\n }\n if (locale) {\n childNode = /*#__PURE__*/React.createElement(LocaleProvider, {\n locale: locale,\n _ANT_MARK__: ANT_MARK\n }, childNode);\n }\n if (iconPrefixCls || csp) {\n childNode = /*#__PURE__*/React.createElement(IconContext.Provider, {\n value: memoIconContextValue\n }, childNode);\n }\n if (componentSize) {\n childNode = /*#__PURE__*/React.createElement(SizeContextProvider, {\n size: componentSize\n }, childNode);\n }\n // ================================ Dynamic theme ================================\n const memoTheme = React.useMemo(() => {\n const _a = mergedTheme || {},\n {\n algorithm,\n token\n } = _a,\n rest = __rest(_a, [\"algorithm\", \"token\"]);\n const themeObj = algorithm && (!Array.isArray(algorithm) || algorithm.length > 0) ? createTheme(algorithm) : undefined;\n return Object.assign(Object.assign({}, rest), {\n theme: themeObj,\n token: Object.assign(Object.assign({}, defaultSeedToken), token)\n });\n }, [mergedTheme]);\n if (theme) {\n childNode = /*#__PURE__*/React.createElement(DesignTokenContext.Provider, {\n value: memoTheme\n }, childNode);\n }\n // =================================== Render ===================================\n if (componentDisabled !== undefined) {\n childNode = /*#__PURE__*/React.createElement(DisabledContextProvider, {\n disabled: componentDisabled\n }, childNode);\n }\n return /*#__PURE__*/React.createElement(ConfigContext.Provider, {\n value: memoedConfig\n }, childNode);\n};\nconst ConfigProvider = props => {\n const context = React.useContext(ConfigContext);\n const antLocale = React.useContext(LocaleContext);\n return /*#__PURE__*/React.createElement(ProviderChildren, Object.assign({\n parentContext: context,\n legacyLocale: antLocale\n }, props));\n};\nConfigProvider.ConfigContext = ConfigContext;\nConfigProvider.SizeContext = SizeContext;\nConfigProvider.config = setGlobalConfig;\nConfigProvider.useConfig = useConfig;\nObject.defineProperty(ConfigProvider, 'SizeContext', {\n get: () => {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'ConfigProvider', 'ConfigProvider.SizeContext is deprecated. Please use `ConfigProvider.useConfig().componentSize` instead.') : void 0;\n return SizeContext;\n }\n});\nif (process.env.NODE_ENV !== 'production') {\n ConfigProvider.displayName = 'ConfigProvider';\n}\nexport default ConfigProvider;","import useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nimport { defaultConfig } from '../../theme/internal';\nexport default function useTheme(theme, parentTheme) {\n const themeConfig = theme || {};\n const parentThemeConfig = themeConfig.inherit === false || !parentTheme ? defaultConfig : parentTheme;\n const mergedTheme = useMemo(() => {\n if (!theme) {\n return parentTheme;\n }\n // Override\n const mergedComponents = Object.assign({}, parentThemeConfig.components);\n Object.keys(theme.components || {}).forEach(componentName => {\n mergedComponents[componentName] = Object.assign(Object.assign({}, mergedComponents[componentName]), theme.components[componentName]);\n });\n // Base token\n return Object.assign(Object.assign(Object.assign({}, parentThemeConfig), themeConfig), {\n token: Object.assign(Object.assign({}, parentThemeConfig.token), themeConfig.token),\n components: mergedComponents\n });\n }, [themeConfig, parentThemeConfig], (prev, next) => prev.some((prevTheme, index) => {\n const nextTheme = next[index];\n return !isEqual(prevTheme, nextTheme, true);\n }));\n return mergedTheme;\n}","import { useContext } from 'react';\nimport DisabledContext from '../DisabledContext';\nimport SizeContext from '../SizeContext';\nfunction useConfig() {\n const componentDisabled = useContext(DisabledContext);\n const componentSize = useContext(SizeContext);\n return {\n componentDisabled,\n componentSize\n };\n}\nexport default useConfig;","var raf = function raf(callback) {\n return +setTimeout(callback, 16);\n};\nvar caf = function caf(num) {\n return clearTimeout(num);\n};\nif (typeof window !== 'undefined' && 'requestAnimationFrame' in window) {\n raf = function raf(callback) {\n return window.requestAnimationFrame(callback);\n };\n caf = function caf(handle) {\n return window.cancelAnimationFrame(handle);\n };\n}\nvar rafUUID = 0;\nvar rafIds = new Map();\nfunction cleanup(id) {\n rafIds.delete(id);\n}\nvar wrapperRaf = function wrapperRaf(callback) {\n var times = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n rafUUID += 1;\n var id = rafUUID;\n function callRef(leftTimes) {\n if (leftTimes === 0) {\n // Clean up\n cleanup(id);\n\n // Trigger\n callback();\n } else {\n // Next raf\n var realId = raf(function () {\n callRef(leftTimes - 1);\n });\n\n // Bind real raf id\n rafIds.set(id, realId);\n }\n }\n callRef(times);\n return id;\n};\nwrapperRaf.cancel = function (id) {\n var realId = rafIds.get(id);\n cleanup(realId);\n return caf(realId);\n};\nexport default wrapperRaf;","import ReactDOM from 'react-dom';\nexport default function addEventListenerWrap(target, eventType, cb, option) {\n /* eslint camelcase: 2 */\n var callback = ReactDOM.unstable_batchedUpdates ? function run(e) {\n ReactDOM.unstable_batchedUpdates(cb, e);\n } : cb;\n if (target.addEventListener) {\n target.addEventListener(eventType, callback, option);\n }\n return {\n remove: function remove() {\n if (target.removeEventListener) {\n target.removeEventListener(eventType, callback, option);\n }\n }\n };\n}","// This icon file is generated automatically.\nvar CheckCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z\" } }] }, \"name\": \"check-circle\", \"theme\": \"filled\" };\nexport default CheckCircleFilled;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { generate as generateColor } from '@ant-design/colors';\nimport React, { useContext, useEffect } from 'react';\nimport warn from \"rc-util/es/warning\";\nimport { updateCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport IconContext from './components/Context';\nexport function warning(valid, message) {\n warn(valid, \"[@ant-design/icons] \".concat(message));\n}\nexport function isIconDefinition(target) {\n return _typeof(target) === 'object' && typeof target.name === 'string' && typeof target.theme === 'string' && (_typeof(target.icon) === 'object' || typeof target.icon === 'function');\n}\nexport function normalizeAttrs() {\n var attrs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return Object.keys(attrs).reduce(function (acc, key) {\n var val = attrs[key];\n switch (key) {\n case 'class':\n acc.className = val;\n delete acc.class;\n break;\n default:\n acc[key] = val;\n }\n return acc;\n }, {});\n}\nexport function generate(node, key, rootProps) {\n if (!rootProps) {\n return /*#__PURE__*/React.createElement(node.tag, _objectSpread({\n key: key\n }, normalizeAttrs(node.attrs)), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n }\n return /*#__PURE__*/React.createElement(node.tag, _objectSpread(_objectSpread({\n key: key\n }, normalizeAttrs(node.attrs)), rootProps), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n}\nexport function getSecondaryColor(primaryColor) {\n // choose the second color\n return generateColor(primaryColor)[0];\n}\nexport function normalizeTwoToneColors(twoToneColor) {\n if (!twoToneColor) {\n return [];\n }\n return Array.isArray(twoToneColor) ? twoToneColor : [twoToneColor];\n}\n// These props make sure that the SVG behaviours like general text.\n// Reference: https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\nexport var svgBaseProps = {\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true',\n focusable: 'false'\n};\nexport var iconStyles = \"\\n.anticon {\\n display: inline-block;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\";\nexport var useInsertStyles = function useInsertStyles() {\n var styleStr = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : iconStyles;\n var _useContext = useContext(IconContext),\n csp = _useContext.csp,\n prefixCls = _useContext.prefixCls;\n var mergedStyleStr = styleStr;\n if (prefixCls) {\n mergedStyleStr = mergedStyleStr.replace(/anticon/g, prefixCls);\n }\n useEffect(function () {\n updateCSS(mergedStyleStr, '@ant-design-icons', {\n prepend: true,\n csp: csp\n });\n }, []);\n};","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar _excluded = [\"icon\", \"className\", \"onClick\", \"style\", \"primaryColor\", \"secondaryColor\"];\nimport { generate, getSecondaryColor, isIconDefinition, warning, useInsertStyles } from '../utils';\nvar twoToneColorPalette = {\n primaryColor: '#333',\n secondaryColor: '#E6E6E6',\n calculated: false\n};\nfunction setTwoToneColors(_ref) {\n var primaryColor = _ref.primaryColor,\n secondaryColor = _ref.secondaryColor;\n twoToneColorPalette.primaryColor = primaryColor;\n twoToneColorPalette.secondaryColor = secondaryColor || getSecondaryColor(primaryColor);\n twoToneColorPalette.calculated = !!secondaryColor;\n}\nfunction getTwoToneColors() {\n return _objectSpread({}, twoToneColorPalette);\n}\nvar IconBase = function IconBase(props) {\n var icon = props.icon,\n className = props.className,\n onClick = props.onClick,\n style = props.style,\n primaryColor = props.primaryColor,\n secondaryColor = props.secondaryColor,\n restProps = _objectWithoutProperties(props, _excluded);\n var colors = twoToneColorPalette;\n if (primaryColor) {\n colors = {\n primaryColor: primaryColor,\n secondaryColor: secondaryColor || getSecondaryColor(primaryColor)\n };\n }\n useInsertStyles();\n warning(isIconDefinition(icon), \"icon should be icon definiton, but got \".concat(icon));\n if (!isIconDefinition(icon)) {\n return null;\n }\n var target = icon;\n if (target && typeof target.icon === 'function') {\n target = _objectSpread(_objectSpread({}, target), {}, {\n icon: target.icon(colors.primaryColor, colors.secondaryColor)\n });\n }\n return generate(target.icon, \"svg-\".concat(target.name), _objectSpread({\n className: className,\n onClick: onClick,\n style: style,\n 'data-icon': target.name,\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true'\n }, restProps));\n};\nIconBase.displayName = 'IconReact';\nIconBase.getTwoToneColors = getTwoToneColors;\nIconBase.setTwoToneColors = setTwoToneColors;\nexport default IconBase;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport ReactIcon from './IconBase';\nimport { normalizeTwoToneColors } from '../utils';\nexport function setTwoToneColor(twoToneColor) {\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n return ReactIcon.setTwoToneColors({\n primaryColor: primaryColor,\n secondaryColor: secondaryColor\n });\n}\nexport function getTwoToneColor() {\n var colors = ReactIcon.getTwoToneColors();\n if (!colors.calculated) {\n return colors.primaryColor;\n }\n return [colors.primaryColor, colors.secondaryColor];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"icon\", \"spin\", \"rotate\", \"tabIndex\", \"onClick\", \"twoToneColor\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Context from './Context';\nimport ReactIcon from './IconBase';\nimport { getTwoToneColor, setTwoToneColor } from './twoTonePrimaryColor';\nimport { normalizeTwoToneColors } from '../utils';\n// Initial setting\n// should move it to antd main repo?\nsetTwoToneColor('#1890ff');\nvar Icon = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _classNames;\n var className = props.className,\n icon = props.icon,\n spin = props.spin,\n rotate = props.rotate,\n tabIndex = props.tabIndex,\n onClick = props.onClick,\n twoToneColor = props.twoToneColor,\n restProps = _objectWithoutProperties(props, _excluded);\n var _React$useContext = React.useContext(Context),\n _React$useContext$pre = _React$useContext.prefixCls,\n prefixCls = _React$useContext$pre === void 0 ? 'anticon' : _React$useContext$pre,\n rootClassName = _React$useContext.rootClassName;\n var classString = classNames(rootClassName, prefixCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-\").concat(icon.name), !!icon.name), _defineProperty(_classNames, \"\".concat(prefixCls, \"-spin\"), !!spin || icon.name === 'loading'), _classNames), className);\n var iconTabIndex = tabIndex;\n if (iconTabIndex === undefined && onClick) {\n iconTabIndex = -1;\n }\n var svgStyle = rotate ? {\n msTransform: \"rotate(\".concat(rotate, \"deg)\"),\n transform: \"rotate(\".concat(rotate, \"deg)\")\n } : undefined;\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n return /*#__PURE__*/React.createElement(\"span\", _objectSpread(_objectSpread({\n role: \"img\",\n \"aria-label\": icon.name\n }, restProps), {}, {\n ref: ref,\n tabIndex: iconTabIndex,\n onClick: onClick,\n className: classString\n }), /*#__PURE__*/React.createElement(ReactIcon, {\n icon: icon,\n primaryColor: primaryColor,\n secondaryColor: secondaryColor,\n style: svgStyle\n }));\n});\nIcon.displayName = 'AntdIcon';\nIcon.getTwoToneColor = getTwoToneColor;\nIcon.setTwoToneColor = setTwoToneColor;\nexport default Icon;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport CheckCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CheckCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\nvar CheckCircleFilled = function CheckCircleFilled(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: CheckCircleFilledSvg\n }));\n};\nCheckCircleFilled.displayName = 'CheckCircleFilled';\nexport default /*#__PURE__*/React.forwardRef(CheckCircleFilled);","// This icon file is generated automatically.\nvar CloseCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-.3L512 563.4l-99.3 118.4-66.1.3c-4.4 0-8-3.5-8-8 0-1.9.7-3.7 1.9-5.2l130.1-155L340.5 359a8.32 8.32 0 01-1.9-5.2c0-4.4 3.6-8 8-8l66.1.3L512 464.6l99.3-118.4 66-.3c4.4 0 8 3.5 8 8 0 1.9-.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z\" } }] }, \"name\": \"close-circle\", \"theme\": \"filled\" };\nexport default CloseCircleFilled;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport CloseCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CloseCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\nvar CloseCircleFilled = function CloseCircleFilled(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: CloseCircleFilledSvg\n }));\n};\nCloseCircleFilled.displayName = 'CloseCircleFilled';\nexport default /*#__PURE__*/React.forwardRef(CloseCircleFilled);","// This icon file is generated automatically.\nvar CloseOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z\" } }] }, \"name\": \"close\", \"theme\": \"outlined\" };\nexport default CloseOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport CloseOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar CloseOutlined = function CloseOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: CloseOutlinedSvg\n }));\n};\nCloseOutlined.displayName = 'CloseOutlined';\nexport default /*#__PURE__*/React.forwardRef(CloseOutlined);","// This icon file is generated automatically.\nvar ExclamationCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"exclamation-circle\", \"theme\": \"filled\" };\nexport default ExclamationCircleFilled;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport ExclamationCircleFilledSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\nvar ExclamationCircleFilled = function ExclamationCircleFilled(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: ExclamationCircleFilledSvg\n }));\n};\nExclamationCircleFilled.displayName = 'ExclamationCircleFilled';\nexport default /*#__PURE__*/React.forwardRef(ExclamationCircleFilled);","// This icon file is generated automatically.\nvar InfoCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"info-circle\", \"theme\": \"filled\" };\nexport default InfoCircleFilled;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport InfoCircleFilledSvg from \"@ant-design/icons-svg/es/asn/InfoCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\nvar InfoCircleFilled = function InfoCircleFilled(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: InfoCircleFilledSvg\n }));\n};\nInfoCircleFilled.displayName = 'InfoCircleFilled';\nexport default /*#__PURE__*/React.forwardRef(InfoCircleFilled);","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport canUseDOM from \"rc-util/es/Dom/canUseDom\";\n\n// ================= Transition =================\n// Event wrapper. Copy from react source code\nfunction makePrefixMap(styleProp, eventName) {\n var prefixes = {};\n prefixes[styleProp.toLowerCase()] = eventName.toLowerCase();\n prefixes[\"Webkit\".concat(styleProp)] = \"webkit\".concat(eventName);\n prefixes[\"Moz\".concat(styleProp)] = \"moz\".concat(eventName);\n prefixes[\"ms\".concat(styleProp)] = \"MS\".concat(eventName);\n prefixes[\"O\".concat(styleProp)] = \"o\".concat(eventName.toLowerCase());\n return prefixes;\n}\n\nexport function getVendorPrefixes(domSupport, win) {\n var prefixes = {\n animationend: makePrefixMap('Animation', 'AnimationEnd'),\n transitionend: makePrefixMap('Transition', 'TransitionEnd')\n };\n\n if (domSupport) {\n if (!('AnimationEvent' in win)) {\n delete prefixes.animationend.animation;\n }\n\n if (!('TransitionEvent' in win)) {\n delete prefixes.transitionend.transition;\n }\n }\n\n return prefixes;\n}\nvar vendorPrefixes = getVendorPrefixes(canUseDOM(), typeof window !== 'undefined' ? window : {});\nvar style = {};\n\nif (canUseDOM()) {\n var _document$createEleme = document.createElement('div');\n\n style = _document$createEleme.style;\n}\n\nvar prefixedEventNames = {};\nexport function getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) {\n return prefixedEventNames[eventName];\n }\n\n var prefixMap = vendorPrefixes[eventName];\n\n if (prefixMap) {\n var stylePropList = Object.keys(prefixMap);\n var len = stylePropList.length;\n\n for (var i = 0; i < len; i += 1) {\n var styleProp = stylePropList[i];\n\n if (Object.prototype.hasOwnProperty.call(prefixMap, styleProp) && styleProp in style) {\n prefixedEventNames[eventName] = prefixMap[styleProp];\n return prefixedEventNames[eventName];\n }\n }\n }\n\n return '';\n}\nvar internalAnimationEndName = getVendorPrefixedEventName('animationend');\nvar internalTransitionEndName = getVendorPrefixedEventName('transitionend');\nexport var supportTransition = !!(internalAnimationEndName && internalTransitionEndName);\nexport var animationEndName = internalAnimationEndName || 'animationend';\nexport var transitionEndName = internalTransitionEndName || 'transitionend';\nexport function getTransitionName(transitionName, transitionType) {\n if (!transitionName) return null;\n\n if (_typeof(transitionName) === 'object') {\n var type = transitionType.replace(/-\\w/g, function (match) {\n return match[1].toUpperCase();\n });\n return transitionName[type];\n }\n\n return \"\".concat(transitionName, \"-\").concat(transitionType);\n}","export var STATUS_NONE = 'none';\nexport var STATUS_APPEAR = 'appear';\nexport var STATUS_ENTER = 'enter';\nexport var STATUS_LEAVE = 'leave';\nexport var STEP_NONE = 'none';\nexport var STEP_PREPARE = 'prepare';\nexport var STEP_START = 'start';\nexport var STEP_ACTIVE = 'active';\nexport var STEP_ACTIVATED = 'end';","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n/**\n * Same as React.useState but `setState` accept `ignoreDestroy` param to not to setState after destroyed.\n * We do not make this auto is to avoid real memory leak.\n * Developer should confirm it's safe to ignore themselves.\n */\nexport default function useSafeState(defaultValue) {\n var destroyRef = React.useRef(false);\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n value = _React$useState2[0],\n setValue = _React$useState2[1];\n React.useEffect(function () {\n destroyRef.current = false;\n return function () {\n destroyRef.current = true;\n };\n }, []);\n function safeSetState(updater, ignoreDestroy) {\n if (ignoreDestroy && destroyRef.current) {\n return;\n }\n setValue(updater);\n }\n return [value, safeSetState];\n}","import * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nexport default (function () {\n var nextFrameRef = React.useRef(null);\n\n function cancelNextFrame() {\n raf.cancel(nextFrameRef.current);\n }\n\n function nextFrame(callback) {\n var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n cancelNextFrame();\n var nextFrameId = raf(function () {\n if (delay <= 1) {\n callback({\n isCanceled: function isCanceled() {\n return nextFrameId !== nextFrameRef.current;\n }\n });\n } else {\n nextFrame(callback, delay - 1);\n }\n });\n nextFrameRef.current = nextFrameId;\n }\n\n React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [nextFrame, cancelNextFrame];\n});","import { useEffect, useLayoutEffect } from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\"; // It's safe to use `useLayoutEffect` but the warning is annoying\n\nvar useIsomorphicLayoutEffect = canUseDom() ? useLayoutEffect : useEffect;\nexport default useIsomorphicLayoutEffect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useState from \"rc-util/es/hooks/useState\";\nimport { STEP_PREPARE, STEP_ACTIVE, STEP_START, STEP_ACTIVATED, STEP_NONE } from \"../interface\";\nimport useNextFrame from \"./useNextFrame\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nvar STEP_QUEUE = [STEP_PREPARE, STEP_START, STEP_ACTIVE, STEP_ACTIVATED];\n/** Skip current step */\n\nexport var SkipStep = false;\n/** Current step should be update in */\n\nexport var DoStep = true;\nexport function isActive(step) {\n return step === STEP_ACTIVE || step === STEP_ACTIVATED;\n}\nexport default (function (status, callback) {\n var _useState = useState(STEP_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n step = _useState2[0],\n setStep = _useState2[1];\n\n var _useNextFrame = useNextFrame(),\n _useNextFrame2 = _slicedToArray(_useNextFrame, 2),\n nextFrame = _useNextFrame2[0],\n cancelNextFrame = _useNextFrame2[1];\n\n function startQueue() {\n setStep(STEP_PREPARE, true);\n }\n\n useIsomorphicLayoutEffect(function () {\n if (step !== STEP_NONE && step !== STEP_ACTIVATED) {\n var index = STEP_QUEUE.indexOf(step);\n var nextStep = STEP_QUEUE[index + 1];\n var result = callback(step);\n\n if (result === SkipStep) {\n // Skip when no needed\n setStep(nextStep, true);\n } else {\n // Do as frame for step update\n nextFrame(function (info) {\n function doNext() {\n // Skip since current queue is ood\n if (info.isCanceled()) return;\n setStep(nextStep, true);\n }\n\n if (result === true) {\n doNext();\n } else {\n // Only promise should be async\n Promise.resolve(result).then(doNext);\n }\n });\n }\n }\n }, [status, step]);\n React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [startQueue, step];\n});","import * as React from 'react';\nimport { useRef } from 'react';\nimport { animationEndName, transitionEndName } from \"../util/motion\";\nexport default (function (callback) {\n var cacheElementRef = useRef(); // Cache callback\n\n var callbackRef = useRef(callback);\n callbackRef.current = callback; // Internal motion event handler\n\n var onInternalMotionEnd = React.useCallback(function (event) {\n callbackRef.current(event);\n }, []); // Remove events\n\n function removeMotionEvents(element) {\n if (element) {\n element.removeEventListener(transitionEndName, onInternalMotionEnd);\n element.removeEventListener(animationEndName, onInternalMotionEnd);\n }\n } // Patch events\n\n\n function patchMotionEvents(element) {\n if (cacheElementRef.current && cacheElementRef.current !== element) {\n removeMotionEvents(cacheElementRef.current);\n }\n\n if (element && element !== cacheElementRef.current) {\n element.addEventListener(transitionEndName, onInternalMotionEnd);\n element.addEventListener(animationEndName, onInternalMotionEnd); // Save as cache in case dom removed trigger by `motionDeadline`\n\n cacheElementRef.current = element;\n }\n } // Clean up when removed\n\n\n React.useEffect(function () {\n return function () {\n removeMotionEvents(cacheElementRef.current);\n };\n }, []);\n return [patchMotionEvents, removeMotionEvents];\n});","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport * as React from 'react';\n\nvar DomWrapper = /*#__PURE__*/function (_React$Component) {\n _inherits(DomWrapper, _React$Component);\n\n var _super = _createSuper(DomWrapper);\n\n function DomWrapper() {\n _classCallCheck(this, DomWrapper);\n\n return _super.apply(this, arguments);\n }\n\n _createClass(DomWrapper, [{\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return DomWrapper;\n}(React.Component);\n\nexport default DomWrapper;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/* eslint-disable react/default-props-match-prop-types, react/no-multi-comp, react/prop-types */\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { fillRef, supportRef } from \"rc-util/es/ref\";\nimport classNames from 'classnames';\nimport { getTransitionName, supportTransition } from \"./util/motion\";\nimport { STATUS_NONE, STEP_PREPARE, STEP_START } from \"./interface\";\nimport useStatus from \"./hooks/useStatus\";\nimport DomWrapper from \"./DomWrapper\";\nimport { isActive } from \"./hooks/useStepQueue\";\n\n/**\n * `transitionSupport` is used for none transition test case.\n * Default we use browser transition event support check.\n */\nexport function genCSSMotion(config) {\n var transitionSupport = config;\n\n if (_typeof(config) === 'object') {\n transitionSupport = config.transitionSupport;\n }\n\n function isSupportTransition(props) {\n return !!(props.motionName && transitionSupport);\n }\n\n var CSSMotion = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$visible = props.visible,\n visible = _props$visible === void 0 ? true : _props$visible,\n _props$removeOnLeave = props.removeOnLeave,\n removeOnLeave = _props$removeOnLeave === void 0 ? true : _props$removeOnLeave,\n forceRender = props.forceRender,\n children = props.children,\n motionName = props.motionName,\n leavedClassName = props.leavedClassName,\n eventProps = props.eventProps;\n var supportMotion = isSupportTransition(props); // Ref to the react node, it may be a HTMLElement\n\n var nodeRef = useRef(); // Ref to the dom wrapper in case ref can not pass to HTMLElement\n\n var wrapperNodeRef = useRef();\n\n function getDomElement() {\n try {\n // Here we're avoiding call for findDOMNode since it's deprecated\n // in strict mode. We're calling it only when node ref is not\n // an instance of DOM HTMLElement. Otherwise use\n // findDOMNode as a final resort\n return nodeRef.current instanceof HTMLElement ? nodeRef.current : findDOMNode(wrapperNodeRef.current);\n } catch (e) {\n // Only happen when `motionDeadline` trigger but element removed.\n return null;\n }\n }\n\n var _useStatus = useStatus(supportMotion, visible, getDomElement, props),\n _useStatus2 = _slicedToArray(_useStatus, 4),\n status = _useStatus2[0],\n statusStep = _useStatus2[1],\n statusStyle = _useStatus2[2],\n mergedVisible = _useStatus2[3]; // Record whether content has rendered\n // Will return null for un-rendered even when `removeOnLeave={false}`\n\n\n var renderedRef = React.useRef(mergedVisible);\n\n if (mergedVisible) {\n renderedRef.current = true;\n } // ====================== Refs ======================\n\n\n var setNodeRef = React.useCallback(function (node) {\n nodeRef.current = node;\n fillRef(ref, node);\n }, [ref]); // ===================== Render =====================\n\n var motionChildren;\n\n var mergedProps = _objectSpread(_objectSpread({}, eventProps), {}, {\n visible: visible\n });\n\n if (!children) {\n // No children\n motionChildren = null;\n } else if (status === STATUS_NONE || !isSupportTransition(props)) {\n // Stable children\n if (mergedVisible) {\n motionChildren = children(_objectSpread({}, mergedProps), setNodeRef);\n } else if (!removeOnLeave && renderedRef.current && leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: leavedClassName\n }), setNodeRef);\n } else if (forceRender || !removeOnLeave && !leavedClassName) {\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n style: {\n display: 'none'\n }\n }), setNodeRef);\n } else {\n motionChildren = null;\n }\n } else {\n var _classNames;\n\n // In motion\n var statusSuffix;\n\n if (statusStep === STEP_PREPARE) {\n statusSuffix = 'prepare';\n } else if (isActive(statusStep)) {\n statusSuffix = 'active';\n } else if (statusStep === STEP_START) {\n statusSuffix = 'start';\n }\n\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: classNames(getTransitionName(motionName, status), (_classNames = {}, _defineProperty(_classNames, getTransitionName(motionName, \"\".concat(status, \"-\").concat(statusSuffix)), statusSuffix), _defineProperty(_classNames, motionName, typeof motionName === 'string'), _classNames)),\n style: statusStyle\n }), setNodeRef);\n } // Auto inject ref if child node not have `ref` props\n\n\n if ( /*#__PURE__*/React.isValidElement(motionChildren) && supportRef(motionChildren)) {\n var _ref = motionChildren,\n originNodeRef = _ref.ref;\n\n if (!originNodeRef) {\n motionChildren = /*#__PURE__*/React.cloneElement(motionChildren, {\n ref: setNodeRef\n });\n }\n }\n\n return /*#__PURE__*/React.createElement(DomWrapper, {\n ref: wrapperNodeRef\n }, motionChildren);\n });\n CSSMotion.displayName = 'CSSMotion';\n return CSSMotion;\n}\nexport default genCSSMotion(supportTransition);","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport useState from \"rc-util/es/hooks/useState\";\nimport { STATUS_APPEAR, STATUS_NONE, STATUS_LEAVE, STATUS_ENTER, STEP_PREPARE, STEP_START, STEP_ACTIVE } from \"../interface\";\nimport useStepQueue, { DoStep, SkipStep, isActive } from \"./useStepQueue\";\nimport useDomMotionEvents from \"./useDomMotionEvents\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nexport default function useStatus(supportMotion, visible, getElement, _ref) {\n var _ref$motionEnter = _ref.motionEnter,\n motionEnter = _ref$motionEnter === void 0 ? true : _ref$motionEnter,\n _ref$motionAppear = _ref.motionAppear,\n motionAppear = _ref$motionAppear === void 0 ? true : _ref$motionAppear,\n _ref$motionLeave = _ref.motionLeave,\n motionLeave = _ref$motionLeave === void 0 ? true : _ref$motionLeave,\n motionDeadline = _ref.motionDeadline,\n motionLeaveImmediately = _ref.motionLeaveImmediately,\n onAppearPrepare = _ref.onAppearPrepare,\n onEnterPrepare = _ref.onEnterPrepare,\n onLeavePrepare = _ref.onLeavePrepare,\n onAppearStart = _ref.onAppearStart,\n onEnterStart = _ref.onEnterStart,\n onLeaveStart = _ref.onLeaveStart,\n onAppearActive = _ref.onAppearActive,\n onEnterActive = _ref.onEnterActive,\n onLeaveActive = _ref.onLeaveActive,\n onAppearEnd = _ref.onAppearEnd,\n onEnterEnd = _ref.onEnterEnd,\n onLeaveEnd = _ref.onLeaveEnd,\n onVisibleChanged = _ref.onVisibleChanged;\n\n // Used for outer render usage to avoid `visible: false & status: none` to render nothing\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n asyncVisible = _useState2[0],\n setAsyncVisible = _useState2[1];\n\n var _useState3 = useState(STATUS_NONE),\n _useState4 = _slicedToArray(_useState3, 2),\n status = _useState4[0],\n setStatus = _useState4[1];\n\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n style = _useState6[0],\n setStyle = _useState6[1];\n\n var mountedRef = useRef(false);\n var deadlineRef = useRef(null); // =========================== Dom Node ===========================\n\n function getDomElement() {\n return getElement();\n } // ========================== Motion End ==========================\n\n\n var activeRef = useRef(false);\n\n function onInternalMotionEnd(event) {\n var element = getDomElement();\n\n if (event && !event.deadline && event.target !== element) {\n // event exists\n // not initiated by deadline\n // transitionEnd not fired by inner elements\n return;\n }\n\n var currentActive = activeRef.current;\n var canEnd;\n\n if (status === STATUS_APPEAR && currentActive) {\n canEnd = onAppearEnd === null || onAppearEnd === void 0 ? void 0 : onAppearEnd(element, event);\n } else if (status === STATUS_ENTER && currentActive) {\n canEnd = onEnterEnd === null || onEnterEnd === void 0 ? void 0 : onEnterEnd(element, event);\n } else if (status === STATUS_LEAVE && currentActive) {\n canEnd = onLeaveEnd === null || onLeaveEnd === void 0 ? void 0 : onLeaveEnd(element, event);\n } // Only update status when `canEnd` and not destroyed\n\n\n if (status !== STATUS_NONE && currentActive && canEnd !== false) {\n setStatus(STATUS_NONE, true);\n setStyle(null, true);\n }\n }\n\n var _useDomMotionEvents = useDomMotionEvents(onInternalMotionEnd),\n _useDomMotionEvents2 = _slicedToArray(_useDomMotionEvents, 1),\n patchMotionEvents = _useDomMotionEvents2[0]; // ============================= Step =============================\n\n\n var eventHandlers = React.useMemo(function () {\n var _ref2, _ref3, _ref4;\n\n switch (status) {\n case STATUS_APPEAR:\n return _ref2 = {}, _defineProperty(_ref2, STEP_PREPARE, onAppearPrepare), _defineProperty(_ref2, STEP_START, onAppearStart), _defineProperty(_ref2, STEP_ACTIVE, onAppearActive), _ref2;\n\n case STATUS_ENTER:\n return _ref3 = {}, _defineProperty(_ref3, STEP_PREPARE, onEnterPrepare), _defineProperty(_ref3, STEP_START, onEnterStart), _defineProperty(_ref3, STEP_ACTIVE, onEnterActive), _ref3;\n\n case STATUS_LEAVE:\n return _ref4 = {}, _defineProperty(_ref4, STEP_PREPARE, onLeavePrepare), _defineProperty(_ref4, STEP_START, onLeaveStart), _defineProperty(_ref4, STEP_ACTIVE, onLeaveActive), _ref4;\n\n default:\n return {};\n }\n }, [status]);\n\n var _useStepQueue = useStepQueue(status, function (newStep) {\n // Only prepare step can be skip\n if (newStep === STEP_PREPARE) {\n var onPrepare = eventHandlers[STEP_PREPARE];\n\n if (!onPrepare) {\n return SkipStep;\n }\n\n return onPrepare(getDomElement());\n } // Rest step is sync update\n\n\n if (step in eventHandlers) {\n var _eventHandlers$step;\n\n setStyle(((_eventHandlers$step = eventHandlers[step]) === null || _eventHandlers$step === void 0 ? void 0 : _eventHandlers$step.call(eventHandlers, getDomElement(), null)) || null);\n }\n\n if (step === STEP_ACTIVE) {\n // Patch events when motion needed\n patchMotionEvents(getDomElement());\n\n if (motionDeadline > 0) {\n clearTimeout(deadlineRef.current);\n deadlineRef.current = setTimeout(function () {\n onInternalMotionEnd({\n deadline: true\n });\n }, motionDeadline);\n }\n }\n\n return DoStep;\n }),\n _useStepQueue2 = _slicedToArray(_useStepQueue, 2),\n startStep = _useStepQueue2[0],\n step = _useStepQueue2[1];\n\n var active = isActive(step);\n activeRef.current = active; // ============================ Status ============================\n // Update with new status\n\n useIsomorphicLayoutEffect(function () {\n setAsyncVisible(visible);\n var isMounted = mountedRef.current;\n mountedRef.current = true;\n\n if (!supportMotion) {\n return;\n }\n\n var nextStatus; // Appear\n\n if (!isMounted && visible && motionAppear) {\n nextStatus = STATUS_APPEAR;\n } // Enter\n\n\n if (isMounted && visible && motionEnter) {\n nextStatus = STATUS_ENTER;\n } // Leave\n\n\n if (isMounted && !visible && motionLeave || !isMounted && motionLeaveImmediately && !visible && motionLeave) {\n nextStatus = STATUS_LEAVE;\n } // Update to next status\n\n\n if (nextStatus) {\n setStatus(nextStatus);\n startStep();\n }\n }, [visible]); // ============================ Effect ============================\n // Reset when motion changed\n\n useEffect(function () {\n if ( // Cancel appear\n status === STATUS_APPEAR && !motionAppear || // Cancel enter\n status === STATUS_ENTER && !motionEnter || // Cancel leave\n status === STATUS_LEAVE && !motionLeave) {\n setStatus(STATUS_NONE);\n }\n }, [motionAppear, motionEnter, motionLeave]);\n useEffect(function () {\n return function () {\n mountedRef.current = false;\n clearTimeout(deadlineRef.current);\n };\n }, []); // Trigger `onVisibleChanged`\n\n var firstMountChangeRef = React.useRef(false);\n useEffect(function () {\n // [visible & motion not end] => [!visible & motion end] still need trigger onVisibleChanged\n if (asyncVisible) {\n firstMountChangeRef.current = true;\n }\n\n if (asyncVisible !== undefined && status === STATUS_NONE) {\n // Skip first render is invisible since it's nothing changed\n if (firstMountChangeRef.current || asyncVisible) {\n onVisibleChanged === null || onVisibleChanged === void 0 ? void 0 : onVisibleChanged(asyncVisible);\n }\n\n firstMountChangeRef.current = true;\n }\n }, [asyncVisible, status]); // ============================ Styles ============================\n\n var mergedStyle = style;\n\n if (eventHandlers[STEP_PREPARE] && step === STEP_START) {\n mergedStyle = _objectSpread({\n transition: 'none'\n }, mergedStyle);\n }\n\n return [status, step, mergedStyle, asyncVisible !== null && asyncVisible !== void 0 ? asyncVisible : visible];\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport var STATUS_ADD = 'add';\nexport var STATUS_KEEP = 'keep';\nexport var STATUS_REMOVE = 'remove';\nexport var STATUS_REMOVED = 'removed';\nexport function wrapKeyToObject(key) {\n var keyObj;\n\n if (key && _typeof(key) === 'object' && 'key' in key) {\n keyObj = key;\n } else {\n keyObj = {\n key: key\n };\n }\n\n return _objectSpread(_objectSpread({}, keyObj), {}, {\n key: String(keyObj.key)\n });\n}\nexport function parseKeys() {\n var keys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n return keys.map(wrapKeyToObject);\n}\nexport function diffKeys() {\n var prevKeys = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var currentKeys = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var list = [];\n var currentIndex = 0;\n var currentLen = currentKeys.length;\n var prevKeyObjects = parseKeys(prevKeys);\n var currentKeyObjects = parseKeys(currentKeys); // Check prev keys to insert or keep\n\n prevKeyObjects.forEach(function (keyObj) {\n var hit = false;\n\n for (var i = currentIndex; i < currentLen; i += 1) {\n var currentKeyObj = currentKeyObjects[i];\n\n if (currentKeyObj.key === keyObj.key) {\n // New added keys should add before current key\n if (currentIndex < i) {\n list = list.concat(currentKeyObjects.slice(currentIndex, i).map(function (obj) {\n return _objectSpread(_objectSpread({}, obj), {}, {\n status: STATUS_ADD\n });\n }));\n currentIndex = i;\n }\n\n list.push(_objectSpread(_objectSpread({}, currentKeyObj), {}, {\n status: STATUS_KEEP\n }));\n currentIndex += 1;\n hit = true;\n break;\n }\n } // If not hit, it means key is removed\n\n\n if (!hit) {\n list.push(_objectSpread(_objectSpread({}, keyObj), {}, {\n status: STATUS_REMOVE\n }));\n }\n }); // Add rest to the list\n\n if (currentIndex < currentLen) {\n list = list.concat(currentKeyObjects.slice(currentIndex).map(function (obj) {\n return _objectSpread(_objectSpread({}, obj), {}, {\n status: STATUS_ADD\n });\n }));\n }\n /**\n * Merge same key when it remove and add again:\n * [1 - add, 2 - keep, 1 - remove] -> [1 - keep, 2 - keep]\n */\n\n\n var keys = {};\n list.forEach(function (_ref) {\n var key = _ref.key;\n keys[key] = (keys[key] || 0) + 1;\n });\n var duplicatedKeys = Object.keys(keys).filter(function (key) {\n return keys[key] > 1;\n });\n duplicatedKeys.forEach(function (matchKey) {\n // Remove `STATUS_REMOVE` node.\n list = list.filter(function (_ref2) {\n var key = _ref2.key,\n status = _ref2.status;\n return key !== matchKey || status !== STATUS_REMOVE;\n }); // Update `STATUS_ADD` to `STATUS_KEEP`\n\n list.forEach(function (node) {\n if (node.key === matchKey) {\n // eslint-disable-next-line no-param-reassign\n node.status = STATUS_KEEP;\n }\n });\n });\n return list;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nvar _excluded = [\"component\", \"children\", \"onVisibleChanged\", \"onAllRemoved\"],\n _excluded2 = [\"status\"];\n\n/* eslint react/prop-types: 0 */\nimport * as React from 'react';\nimport OriginCSSMotion from \"./CSSMotion\";\nimport { supportTransition } from \"./util/motion\";\nimport { STATUS_ADD, STATUS_KEEP, STATUS_REMOVE, STATUS_REMOVED, diffKeys, parseKeys } from \"./util/diff\";\nvar MOTION_PROP_NAMES = ['eventProps', 'visible', 'children', 'motionName', 'motionAppear', 'motionEnter', 'motionLeave', 'motionLeaveImmediately', 'motionDeadline', 'removeOnLeave', 'leavedClassName', 'onAppearStart', 'onAppearActive', 'onAppearEnd', 'onEnterStart', 'onEnterActive', 'onEnterEnd', 'onLeaveStart', 'onLeaveActive', 'onLeaveEnd'];\n\n/**\n * Generate a CSSMotionList component with config\n * @param transitionSupport No need since CSSMotionList no longer depends on transition support\n * @param CSSMotion CSSMotion component\n */\nexport function genCSSMotionList(transitionSupport) {\n var CSSMotion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : OriginCSSMotion;\n\n var CSSMotionList = /*#__PURE__*/function (_React$Component) {\n _inherits(CSSMotionList, _React$Component);\n\n var _super = _createSuper(CSSMotionList);\n\n function CSSMotionList() {\n var _this;\n\n _classCallCheck(this, CSSMotionList);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n keyEntities: []\n });\n\n _defineProperty(_assertThisInitialized(_this), \"removeKey\", function (removeKey) {\n var keyEntities = _this.state.keyEntities;\n var nextKeyEntities = keyEntities.map(function (entity) {\n if (entity.key !== removeKey) return entity;\n return _objectSpread(_objectSpread({}, entity), {}, {\n status: STATUS_REMOVED\n });\n });\n\n _this.setState({\n keyEntities: nextKeyEntities\n });\n\n return nextKeyEntities.filter(function (_ref) {\n var status = _ref.status;\n return status !== STATUS_REMOVED;\n }).length;\n });\n\n return _this;\n }\n\n _createClass(CSSMotionList, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var keyEntities = this.state.keyEntities;\n\n var _this$props = this.props,\n component = _this$props.component,\n children = _this$props.children,\n _onVisibleChanged = _this$props.onVisibleChanged,\n onAllRemoved = _this$props.onAllRemoved,\n restProps = _objectWithoutProperties(_this$props, _excluded);\n\n var Component = component || React.Fragment;\n var motionProps = {};\n MOTION_PROP_NAMES.forEach(function (prop) {\n motionProps[prop] = restProps[prop];\n delete restProps[prop];\n });\n delete restProps.keys;\n return /*#__PURE__*/React.createElement(Component, restProps, keyEntities.map(function (_ref2) {\n var status = _ref2.status,\n eventProps = _objectWithoutProperties(_ref2, _excluded2);\n\n var visible = status === STATUS_ADD || status === STATUS_KEEP;\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motionProps, {\n key: eventProps.key,\n visible: visible,\n eventProps: eventProps,\n onVisibleChanged: function onVisibleChanged(changedVisible) {\n _onVisibleChanged === null || _onVisibleChanged === void 0 ? void 0 : _onVisibleChanged(changedVisible, {\n key: eventProps.key\n });\n\n if (!changedVisible) {\n var restKeysCount = _this2.removeKey(eventProps.key);\n\n if (restKeysCount === 0 && onAllRemoved) {\n onAllRemoved();\n }\n }\n }\n }), children);\n }));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref3, _ref4) {\n var keys = _ref3.keys;\n var keyEntities = _ref4.keyEntities;\n var parsedKeyObjects = parseKeys(keys);\n var mixedKeyEntities = diffKeys(keyEntities, parsedKeyObjects);\n return {\n keyEntities: mixedKeyEntities.filter(function (entity) {\n var prevEntity = keyEntities.find(function (_ref5) {\n var key = _ref5.key;\n return entity.key === key;\n }); // Remove if already mark as removed\n\n if (prevEntity && prevEntity.status === STATUS_REMOVED && entity.status === STATUS_REMOVE) {\n return false;\n }\n\n return true;\n })\n };\n } // ZombieJ: Return the count of rest keys. It's safe to refactor if need more info.\n\n }]);\n\n return CSSMotionList;\n }(React.Component);\n\n _defineProperty(CSSMotionList, \"defaultProps\", {\n component: 'div'\n });\n\n return CSSMotionList;\n}\nexport default genCSSMotionList(supportTransition);","export default function getDataOrAriaProps(props) {\n return Object.keys(props).reduce((prev, key) => {\n if ((key.startsWith('data-') || key.startsWith('aria-') || key === 'role') && !key.startsWith('data-__')) {\n prev[key] = props[key];\n }\n return prev;\n }, {});\n}","import * as React from 'react';\nexport const {\n isValidElement\n} = React;\nexport function isFragment(child) {\n return child && isValidElement(child) && child.type === React.Fragment;\n}\nexport function replaceElement(element, replacement, props) {\n if (!isValidElement(element)) {\n return replacement;\n }\n return /*#__PURE__*/React.cloneElement(element, typeof props === 'function' ? props(element.props || {}) : props);\n}\nexport function cloneElement(element, props) {\n return replaceElement(element, element, props);\n}","import _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport * as React from 'react';\nimport Alert from '.';\nlet ErrorBoundary = /*#__PURE__*/function (_React$Component) {\n _inherits(ErrorBoundary, _React$Component);\n var _super = _createSuper(ErrorBoundary);\n function ErrorBoundary() {\n var _this;\n _classCallCheck(this, ErrorBoundary);\n _this = _super.apply(this, arguments);\n _this.state = {\n error: undefined,\n info: {\n componentStack: ''\n }\n };\n return _this;\n }\n _createClass(ErrorBoundary, [{\n key: \"componentDidCatch\",\n value: function componentDidCatch(error, info) {\n this.setState({\n error,\n info\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n const {\n message,\n description,\n children\n } = this.props;\n const {\n error,\n info\n } = this.state;\n const componentStack = info && info.componentStack ? info.componentStack : null;\n const errorMessage = typeof message === 'undefined' ? (error || '').toString() : message;\n const errorDescription = typeof description === 'undefined' ? componentStack : description;\n if (error) {\n return /*#__PURE__*/React.createElement(Alert, {\n type: \"error\",\n message: errorMessage,\n description: /*#__PURE__*/React.createElement(\"pre\", {\n style: {\n fontSize: '0.9em',\n overflowX: 'auto'\n }\n }, errorDescription)\n });\n }\n return children;\n }\n }]);\n return ErrorBoundary;\n}(React.Component);\nexport default ErrorBoundary;","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport { resetComponent } from '../../style';\nconst genAlertTypeStyle = (bgColor, borderColor, iconColor, token, alertCls) => ({\n backgroundColor: bgColor,\n border: `${token.lineWidth}px ${token.lineType} ${borderColor}`,\n [`${alertCls}-icon`]: {\n color: iconColor\n }\n});\nexport const genBaseStyle = token => {\n const {\n componentCls,\n motionDurationSlow: duration,\n marginXS,\n marginSM,\n fontSize,\n fontSizeLG,\n lineHeight,\n borderRadiusLG: borderRadius,\n motionEaseInOutCirc,\n alertIconSizeLG,\n colorText,\n paddingContentVerticalSM,\n alertPaddingHorizontal,\n paddingMD,\n paddingContentHorizontalLG\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n display: 'flex',\n alignItems: 'center',\n padding: `${paddingContentVerticalSM}px ${alertPaddingHorizontal}px`,\n wordWrap: 'break-word',\n borderRadius,\n [`&${componentCls}-rtl`]: {\n direction: 'rtl'\n },\n [`${componentCls}-content`]: {\n flex: 1,\n minWidth: 0\n },\n [`${componentCls}-icon`]: {\n marginInlineEnd: marginXS,\n lineHeight: 0\n },\n [`&-description`]: {\n display: 'none',\n fontSize,\n lineHeight\n },\n '&-message': {\n color: colorText\n },\n [`&${componentCls}-motion-leave`]: {\n overflow: 'hidden',\n opacity: 1,\n transition: `max-height ${duration} ${motionEaseInOutCirc}, opacity ${duration} ${motionEaseInOutCirc},\n padding-top ${duration} ${motionEaseInOutCirc}, padding-bottom ${duration} ${motionEaseInOutCirc},\n margin-bottom ${duration} ${motionEaseInOutCirc}`\n },\n [`&${componentCls}-motion-leave-active`]: {\n maxHeight: 0,\n marginBottom: '0 !important',\n paddingTop: 0,\n paddingBottom: 0,\n opacity: 0\n }\n }),\n [`${componentCls}-with-description`]: {\n alignItems: 'flex-start',\n paddingInline: paddingContentHorizontalLG,\n paddingBlock: paddingMD,\n [`${componentCls}-icon`]: {\n marginInlineEnd: marginSM,\n fontSize: alertIconSizeLG,\n lineHeight: 0\n },\n [`${componentCls}-message`]: {\n display: 'block',\n marginBottom: marginXS,\n color: colorText,\n fontSize: fontSizeLG\n },\n [`${componentCls}-description`]: {\n display: 'block'\n }\n },\n [`${componentCls}-banner`]: {\n marginBottom: 0,\n border: '0 !important',\n borderRadius: 0\n }\n };\n};\nexport const genTypeStyle = token => {\n const {\n componentCls,\n colorSuccess,\n colorSuccessBorder,\n colorSuccessBg,\n colorWarning,\n colorWarningBorder,\n colorWarningBg,\n colorError,\n colorErrorBorder,\n colorErrorBg,\n colorInfo,\n colorInfoBorder,\n colorInfoBg\n } = token;\n return {\n [componentCls]: {\n '&-success': genAlertTypeStyle(colorSuccessBg, colorSuccessBorder, colorSuccess, token, componentCls),\n '&-info': genAlertTypeStyle(colorInfoBg, colorInfoBorder, colorInfo, token, componentCls),\n '&-warning': genAlertTypeStyle(colorWarningBg, colorWarningBorder, colorWarning, token, componentCls),\n '&-error': Object.assign(Object.assign({}, genAlertTypeStyle(colorErrorBg, colorErrorBorder, colorError, token, componentCls)), {\n [`${componentCls}-description > pre`]: {\n margin: 0,\n padding: 0\n }\n })\n }\n };\n};\nexport const genActionStyle = token => {\n const {\n componentCls,\n iconCls,\n motionDurationMid,\n marginXS,\n fontSizeIcon,\n colorIcon,\n colorIconHover\n } = token;\n return {\n [componentCls]: {\n [`&-action`]: {\n marginInlineStart: marginXS\n },\n [`${componentCls}-close-icon`]: {\n marginInlineStart: marginXS,\n padding: 0,\n overflow: 'hidden',\n fontSize: fontSizeIcon,\n lineHeight: `${fontSizeIcon}px`,\n backgroundColor: 'transparent',\n border: 'none',\n outline: 'none',\n cursor: 'pointer',\n [`${iconCls}-close`]: {\n color: colorIcon,\n transition: `color ${motionDurationMid}`,\n '&:hover': {\n color: colorIconHover\n }\n }\n },\n '&-close-text': {\n color: colorIcon,\n transition: `color ${motionDurationMid}`,\n '&:hover': {\n color: colorIconHover\n }\n }\n }\n };\n};\nexport const genAlertStyle = token => [genBaseStyle(token), genTypeStyle(token), genActionStyle(token)];\nexport default genComponentStyleHook('Alert', token => {\n const {\n fontSizeHeading3\n } = token;\n const alertToken = mergeToken(token, {\n alertIconSizeLG: fontSizeHeading3,\n alertPaddingHorizontal: 12 // Fixed value here.\n });\n\n return [genAlertStyle(alertToken)];\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport CheckCircleFilled from \"@ant-design/icons/es/icons/CheckCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport CloseOutlined from \"@ant-design/icons/es/icons/CloseOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons/es/icons/ExclamationCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons/es/icons/InfoCircleFilled\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport getDataOrAriaProps from '../_util/getDataOrAriaProps';\nimport { replaceElement } from '../_util/reactNode';\nimport ErrorBoundary from './ErrorBoundary';\n// CSSINJS\nimport useStyle from './style';\nconst iconMapFilled = {\n success: CheckCircleFilled,\n info: InfoCircleFilled,\n error: CloseCircleFilled,\n warning: ExclamationCircleFilled\n};\nconst IconNode = props => {\n const {\n icon,\n prefixCls,\n type\n } = props;\n const iconType = iconMapFilled[type] || null;\n if (icon) {\n return replaceElement(icon, /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-icon`\n }, icon), () => ({\n className: classNames(`${prefixCls}-icon`, {\n [icon.props.className]: icon.props.className\n })\n }));\n }\n return /*#__PURE__*/React.createElement(iconType, {\n className: `${prefixCls}-icon`\n });\n};\nconst CloseIcon = props => {\n const {\n isClosable,\n closeText,\n prefixCls,\n closeIcon,\n handleClose\n } = props;\n return isClosable ? /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: handleClose,\n className: `${prefixCls}-close-icon`,\n tabIndex: 0\n }, closeText ? /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-close-text`\n }, closeText) : closeIcon) : null;\n};\nconst Alert = _a => {\n var {\n description,\n prefixCls: customizePrefixCls,\n message,\n banner,\n className,\n rootClassName,\n style,\n onMouseEnter,\n onMouseLeave,\n onClick,\n afterClose,\n showIcon,\n closable,\n closeText,\n closeIcon = /*#__PURE__*/React.createElement(CloseOutlined, null),\n action\n } = _a,\n props = __rest(_a, [\"description\", \"prefixCls\", \"message\", \"banner\", \"className\", \"rootClassName\", \"style\", \"onMouseEnter\", \"onMouseLeave\", \"onClick\", \"afterClose\", \"showIcon\", \"closable\", \"closeText\", \"closeIcon\", \"action\"]);\n const [closed, setClosed] = React.useState(false);\n const ref = React.useRef();\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('alert', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const handleClose = e => {\n var _a;\n setClosed(true);\n (_a = props.onClose) === null || _a === void 0 ? void 0 : _a.call(props, e);\n };\n const getType = () => {\n const {\n type\n } = props;\n if (type !== undefined) {\n return type;\n }\n // banner 模式默认为警告\n return banner ? 'warning' : 'info';\n };\n // closeable when closeText is assigned\n const isClosable = closeText ? true : closable;\n const type = getType();\n // banner 模式默认有 Icon\n const isShowIcon = banner && showIcon === undefined ? true : showIcon;\n const alertCls = classNames(prefixCls, `${prefixCls}-${type}`, {\n [`${prefixCls}-with-description`]: !!description,\n [`${prefixCls}-no-icon`]: !isShowIcon,\n [`${prefixCls}-banner`]: !!banner,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName, hashId);\n const dataOrAriaProps = getDataOrAriaProps(props);\n return wrapSSR( /*#__PURE__*/React.createElement(CSSMotion, {\n visible: !closed,\n motionName: `${prefixCls}-motion`,\n motionAppear: false,\n motionEnter: false,\n onLeaveStart: node => ({\n maxHeight: node.offsetHeight\n }),\n onLeaveEnd: afterClose\n }, _ref => {\n let {\n className: motionClassName,\n style: motionStyle\n } = _ref;\n return /*#__PURE__*/React.createElement(\"div\", Object.assign({\n ref: ref,\n \"data-show\": !closed,\n className: classNames(alertCls, motionClassName),\n style: Object.assign(Object.assign({}, style), motionStyle),\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onClick: onClick,\n role: \"alert\"\n }, dataOrAriaProps), isShowIcon ? /*#__PURE__*/React.createElement(IconNode, {\n description: description,\n icon: props.icon,\n prefixCls: prefixCls,\n type: type\n }) : null, /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-content`\n }, message ? /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-message`\n }, message) : null, description ? /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-description`\n }, description) : null), action ? /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-action`\n }, action) : null, /*#__PURE__*/React.createElement(CloseIcon, {\n isClosable: !!isClosable,\n closeText: closeText,\n prefixCls: prefixCls,\n closeIcon: closeIcon,\n handleClose: handleClose\n }));\n }));\n};\nAlert.ErrorBoundary = ErrorBoundary;\nif (process.env.NODE_ENV !== 'production') {\n Alert.displayName = 'Alert';\n}\nexport default Alert;","import * as React from 'react';\nexport default function useEvent(callback) {\n var fnRef = React.useRef();\n fnRef.current = callback;\n var memoFn = React.useCallback(function () {\n var _fnRef$current;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_fnRef$current = fnRef.current) === null || _fnRef$current === void 0 ? void 0 : _fnRef$current.call.apply(_fnRef$current, [fnRef].concat(args));\n }, []);\n return memoFn;\n}","/**\n * @ignore\n * some key-codes definition and utils from closure-library\n * @author yiminghe@gmail.com\n */\n\nvar KeyCode = {\n /**\n * MAC_ENTER\n */\n MAC_ENTER: 3,\n /**\n * BACKSPACE\n */\n BACKSPACE: 8,\n /**\n * TAB\n */\n TAB: 9,\n /**\n * NUMLOCK on FF/Safari Mac\n */\n NUM_CENTER: 12,\n // NUMLOCK on FF/Safari Mac\n /**\n * ENTER\n */\n ENTER: 13,\n /**\n * SHIFT\n */\n SHIFT: 16,\n /**\n * CTRL\n */\n CTRL: 17,\n /**\n * ALT\n */\n ALT: 18,\n /**\n * PAUSE\n */\n PAUSE: 19,\n /**\n * CAPS_LOCK\n */\n CAPS_LOCK: 20,\n /**\n * ESC\n */\n ESC: 27,\n /**\n * SPACE\n */\n SPACE: 32,\n /**\n * PAGE_UP\n */\n PAGE_UP: 33,\n // also NUM_NORTH_EAST\n /**\n * PAGE_DOWN\n */\n PAGE_DOWN: 34,\n // also NUM_SOUTH_EAST\n /**\n * END\n */\n END: 35,\n // also NUM_SOUTH_WEST\n /**\n * HOME\n */\n HOME: 36,\n // also NUM_NORTH_WEST\n /**\n * LEFT\n */\n LEFT: 37,\n // also NUM_WEST\n /**\n * UP\n */\n UP: 38,\n // also NUM_NORTH\n /**\n * RIGHT\n */\n RIGHT: 39,\n // also NUM_EAST\n /**\n * DOWN\n */\n DOWN: 40,\n // also NUM_SOUTH\n /**\n * PRINT_SCREEN\n */\n PRINT_SCREEN: 44,\n /**\n * INSERT\n */\n INSERT: 45,\n // also NUM_INSERT\n /**\n * DELETE\n */\n DELETE: 46,\n // also NUM_DELETE\n /**\n * ZERO\n */\n ZERO: 48,\n /**\n * ONE\n */\n ONE: 49,\n /**\n * TWO\n */\n TWO: 50,\n /**\n * THREE\n */\n THREE: 51,\n /**\n * FOUR\n */\n FOUR: 52,\n /**\n * FIVE\n */\n FIVE: 53,\n /**\n * SIX\n */\n SIX: 54,\n /**\n * SEVEN\n */\n SEVEN: 55,\n /**\n * EIGHT\n */\n EIGHT: 56,\n /**\n * NINE\n */\n NINE: 57,\n /**\n * QUESTION_MARK\n */\n QUESTION_MARK: 63,\n // needs localization\n /**\n * A\n */\n A: 65,\n /**\n * B\n */\n B: 66,\n /**\n * C\n */\n C: 67,\n /**\n * D\n */\n D: 68,\n /**\n * E\n */\n E: 69,\n /**\n * F\n */\n F: 70,\n /**\n * G\n */\n G: 71,\n /**\n * H\n */\n H: 72,\n /**\n * I\n */\n I: 73,\n /**\n * J\n */\n J: 74,\n /**\n * K\n */\n K: 75,\n /**\n * L\n */\n L: 76,\n /**\n * M\n */\n M: 77,\n /**\n * N\n */\n N: 78,\n /**\n * O\n */\n O: 79,\n /**\n * P\n */\n P: 80,\n /**\n * Q\n */\n Q: 81,\n /**\n * R\n */\n R: 82,\n /**\n * S\n */\n S: 83,\n /**\n * T\n */\n T: 84,\n /**\n * U\n */\n U: 85,\n /**\n * V\n */\n V: 86,\n /**\n * W\n */\n W: 87,\n /**\n * X\n */\n X: 88,\n /**\n * Y\n */\n Y: 89,\n /**\n * Z\n */\n Z: 90,\n /**\n * META\n */\n META: 91,\n // WIN_KEY_LEFT\n /**\n * WIN_KEY_RIGHT\n */\n WIN_KEY_RIGHT: 92,\n /**\n * CONTEXT_MENU\n */\n CONTEXT_MENU: 93,\n /**\n * NUM_ZERO\n */\n NUM_ZERO: 96,\n /**\n * NUM_ONE\n */\n NUM_ONE: 97,\n /**\n * NUM_TWO\n */\n NUM_TWO: 98,\n /**\n * NUM_THREE\n */\n NUM_THREE: 99,\n /**\n * NUM_FOUR\n */\n NUM_FOUR: 100,\n /**\n * NUM_FIVE\n */\n NUM_FIVE: 101,\n /**\n * NUM_SIX\n */\n NUM_SIX: 102,\n /**\n * NUM_SEVEN\n */\n NUM_SEVEN: 103,\n /**\n * NUM_EIGHT\n */\n NUM_EIGHT: 104,\n /**\n * NUM_NINE\n */\n NUM_NINE: 105,\n /**\n * NUM_MULTIPLY\n */\n NUM_MULTIPLY: 106,\n /**\n * NUM_PLUS\n */\n NUM_PLUS: 107,\n /**\n * NUM_MINUS\n */\n NUM_MINUS: 109,\n /**\n * NUM_PERIOD\n */\n NUM_PERIOD: 110,\n /**\n * NUM_DIVISION\n */\n NUM_DIVISION: 111,\n /**\n * F1\n */\n F1: 112,\n /**\n * F2\n */\n F2: 113,\n /**\n * F3\n */\n F3: 114,\n /**\n * F4\n */\n F4: 115,\n /**\n * F5\n */\n F5: 116,\n /**\n * F6\n */\n F6: 117,\n /**\n * F7\n */\n F7: 118,\n /**\n * F8\n */\n F8: 119,\n /**\n * F9\n */\n F9: 120,\n /**\n * F10\n */\n F10: 121,\n /**\n * F11\n */\n F11: 122,\n /**\n * F12\n */\n F12: 123,\n /**\n * NUMLOCK\n */\n NUMLOCK: 144,\n /**\n * SEMICOLON\n */\n SEMICOLON: 186,\n // needs localization\n /**\n * DASH\n */\n DASH: 189,\n // needs localization\n /**\n * EQUALS\n */\n EQUALS: 187,\n // needs localization\n /**\n * COMMA\n */\n COMMA: 188,\n // needs localization\n /**\n * PERIOD\n */\n PERIOD: 190,\n // needs localization\n /**\n * SLASH\n */\n SLASH: 191,\n // needs localization\n /**\n * APOSTROPHE\n */\n APOSTROPHE: 192,\n // needs localization\n /**\n * SINGLE_QUOTE\n */\n SINGLE_QUOTE: 222,\n // needs localization\n /**\n * OPEN_SQUARE_BRACKET\n */\n OPEN_SQUARE_BRACKET: 219,\n // needs localization\n /**\n * BACKSLASH\n */\n BACKSLASH: 220,\n // needs localization\n /**\n * CLOSE_SQUARE_BRACKET\n */\n CLOSE_SQUARE_BRACKET: 221,\n // needs localization\n /**\n * WIN_KEY\n */\n WIN_KEY: 224,\n /**\n * MAC_FF_META\n */\n MAC_FF_META: 224,\n // Firefox (Gecko) fires this for the meta key instead of 91\n /**\n * WIN_IME\n */\n WIN_IME: 229,\n // ======================== Function ========================\n /**\n * whether text and modified key is entered at the same time.\n */\n isTextModifyingKeyEvent: function isTextModifyingKeyEvent(e) {\n var keyCode = e.keyCode;\n if (e.altKey && !e.ctrlKey || e.metaKey ||\n // Function keys don't generate text\n keyCode >= KeyCode.F1 && keyCode <= KeyCode.F12) {\n return false;\n }\n\n // The following keys are quite harmless, even in combination with\n // CTRL, ALT or SHIFT.\n switch (keyCode) {\n case KeyCode.ALT:\n case KeyCode.CAPS_LOCK:\n case KeyCode.CONTEXT_MENU:\n case KeyCode.CTRL:\n case KeyCode.DOWN:\n case KeyCode.END:\n case KeyCode.ESC:\n case KeyCode.HOME:\n case KeyCode.INSERT:\n case KeyCode.LEFT:\n case KeyCode.MAC_FF_META:\n case KeyCode.META:\n case KeyCode.NUMLOCK:\n case KeyCode.NUM_CENTER:\n case KeyCode.PAGE_DOWN:\n case KeyCode.PAGE_UP:\n case KeyCode.PAUSE:\n case KeyCode.PRINT_SCREEN:\n case KeyCode.RIGHT:\n case KeyCode.SHIFT:\n case KeyCode.UP:\n case KeyCode.WIN_KEY:\n case KeyCode.WIN_KEY_RIGHT:\n return false;\n default:\n return true;\n }\n },\n /**\n * whether character is entered.\n */\n isCharacterKey: function isCharacterKey(keyCode) {\n if (keyCode >= KeyCode.ZERO && keyCode <= KeyCode.NINE) {\n return true;\n }\n if (keyCode >= KeyCode.NUM_ZERO && keyCode <= KeyCode.NUM_MULTIPLY) {\n return true;\n }\n if (keyCode >= KeyCode.A && keyCode <= KeyCode.Z) {\n return true;\n }\n\n // Safari sends zero key code for non-latin characters.\n if (window.navigator.userAgent.indexOf('WebKit') !== -1 && keyCode === 0) {\n return true;\n }\n switch (keyCode) {\n case KeyCode.SPACE:\n case KeyCode.QUESTION_MARK:\n case KeyCode.NUM_PLUS:\n case KeyCode.NUM_MINUS:\n case KeyCode.NUM_PERIOD:\n case KeyCode.NUM_DIVISION:\n case KeyCode.SEMICOLON:\n case KeyCode.DASH:\n case KeyCode.EQUALS:\n case KeyCode.COMMA:\n case KeyCode.PERIOD:\n case KeyCode.SLASH:\n case KeyCode.APOSTROPHE:\n case KeyCode.SINGLE_QUOTE:\n case KeyCode.OPEN_SQUARE_BRACKET:\n case KeyCode.BACKSLASH:\n case KeyCode.CLOSE_SQUARE_BRACKET:\n return true;\n default:\n return false;\n }\n }\n};\nexport default KeyCode;","// This icon file is generated automatically.\nvar LoadingOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"0 0 1024 1024\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\" } }] }, \"name\": \"loading\", \"theme\": \"outlined\" };\nexport default LoadingOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport LoadingOutlinedSvg from \"@ant-design/icons-svg/es/asn/LoadingOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar LoadingOutlined = function LoadingOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: LoadingOutlinedSvg\n }));\n};\nLoadingOutlined.displayName = 'LoadingOutlined';\nexport default /*#__PURE__*/React.forwardRef(LoadingOutlined);","import _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as ReactDOM from 'react-dom';\n// Let compiler not to search module usage\nvar fullClone = _objectSpread({}, ReactDOM);\nvar version = fullClone.version,\n reactRender = fullClone.render,\n unmountComponentAtNode = fullClone.unmountComponentAtNode;\nvar createRoot;\ntry {\n var mainVersion = Number((version || '').split('.')[0]);\n if (mainVersion >= 18) {\n createRoot = fullClone.createRoot;\n }\n} catch (e) {\n // Do nothing;\n}\nfunction toggleWarning(skip) {\n var __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED = fullClone.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;\n if (__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED && _typeof(__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED) === 'object') {\n __SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.usingClientEntryPoint = skip;\n }\n}\nvar MARK = '__rc_react_root__';\n\n// ========================== Render ==========================\n\nfunction modernRender(node, container) {\n toggleWarning(true);\n var root = container[MARK] || createRoot(container);\n toggleWarning(false);\n root.render(node);\n container[MARK] = root;\n}\nfunction legacyRender(node, container) {\n reactRender(node, container);\n}\n\n/** @private Test usage. Not work in prod */\nexport function _r(node, container) {\n if (process.env.NODE_ENV !== 'production') {\n return legacyRender(node, container);\n }\n}\nexport function render(node, container) {\n if (createRoot) {\n modernRender(node, container);\n return;\n }\n legacyRender(node, container);\n}\n\n// ========================= Unmount ==========================\nfunction modernUnmount(_x) {\n return _modernUnmount.apply(this, arguments);\n}\nfunction _modernUnmount() {\n _modernUnmount = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(container) {\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) switch (_context.prev = _context.next) {\n case 0:\n return _context.abrupt(\"return\", Promise.resolve().then(function () {\n var _container$MARK;\n (_container$MARK = container[MARK]) === null || _container$MARK === void 0 ? void 0 : _container$MARK.unmount();\n delete container[MARK];\n }));\n case 1:\n case \"end\":\n return _context.stop();\n }\n }, _callee);\n }));\n return _modernUnmount.apply(this, arguments);\n}\nfunction legacyUnmount(container) {\n unmountComponentAtNode(container);\n}\n\n/** @private Test usage. Not work in prod */\nexport function _u(container) {\n if (process.env.NODE_ENV !== 'production') {\n return legacyUnmount(container);\n }\n}\nexport function unmount(_x2) {\n return _unmount.apply(this, arguments);\n}\nfunction _unmount() {\n _unmount = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(container) {\n return _regeneratorRuntime().wrap(function _callee2$(_context2) {\n while (1) switch (_context2.prev = _context2.next) {\n case 0:\n if (!(createRoot !== undefined)) {\n _context2.next = 2;\n break;\n }\n return _context2.abrupt(\"return\", modernUnmount(container));\n case 2:\n legacyUnmount(container);\n case 3:\n case \"end\":\n return _context2.stop();\n }\n }, _callee2);\n }));\n return _unmount.apply(this, arguments);\n}","import * as React from 'react';\nimport LocaleContext from './context';\nimport defaultLocaleData from './en_US';\nconst useLocale = (componentName, defaultLocale) => {\n const fullLocale = React.useContext(LocaleContext);\n const getLocale = React.useMemo(() => {\n var _a;\n const locale = defaultLocale || defaultLocaleData[componentName];\n const localeFromContext = (_a = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale[componentName]) !== null && _a !== void 0 ? _a : {};\n return Object.assign(Object.assign({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});\n }, [componentName, defaultLocale, fullLocale]);\n const getLocaleCode = React.useMemo(() => {\n const localeCode = fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.locale;\n // Had use LocaleProvide but didn't set locale\n if ((fullLocale === null || fullLocale === void 0 ? void 0 : fullLocale.exist) && !localeCode) {\n return defaultLocaleData.locale;\n }\n return localeCode;\n }, [fullLocale]);\n return [getLocale, getLocaleCode];\n};\nexport default useLocale;","const genSpaceCompactStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: {\n display: 'inline-flex',\n '&-block': {\n display: 'flex',\n width: '100%'\n },\n '&-vertical': {\n flexDirection: 'column'\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genSpaceCompactStyle;","import { genComponentStyleHook } from '../../theme/internal';\nimport genSpaceCompactStyle from './compact';\nconst genSpaceStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: {\n display: 'inline-flex',\n '&-rtl': {\n direction: 'rtl'\n },\n '&-vertical': {\n flexDirection: 'column'\n },\n '&-align': {\n flexDirection: 'column',\n '&-center': {\n alignItems: 'center'\n },\n '&-start': {\n alignItems: 'flex-start'\n },\n '&-end': {\n alignItems: 'flex-end'\n },\n '&-baseline': {\n alignItems: 'baseline'\n }\n },\n [`${componentCls}-item`]: {\n '&:empty': {\n display: 'none'\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Space', token => [genSpaceStyle(token), genSpaceCompactStyle(token)]);","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nexport const SpaceCompactItemContext = /*#__PURE__*/React.createContext(null);\nexport const useCompactItemContext = (prefixCls, direction) => {\n const compactItemContext = React.useContext(SpaceCompactItemContext);\n const compactItemClassnames = React.useMemo(() => {\n if (!compactItemContext) return '';\n const {\n compactDirection,\n isFirstItem,\n isLastItem\n } = compactItemContext;\n const separator = compactDirection === 'vertical' ? '-vertical-' : '-';\n return classNames({\n [`${prefixCls}-compact${separator}item`]: true,\n [`${prefixCls}-compact${separator}first-item`]: isFirstItem,\n [`${prefixCls}-compact${separator}last-item`]: isLastItem,\n [`${prefixCls}-compact${separator}item-rtl`]: direction === 'rtl'\n });\n }, [prefixCls, direction, compactItemContext]);\n return {\n compactSize: compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.compactSize,\n compactDirection: compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.compactDirection,\n compactItemClassnames\n };\n};\nexport const NoCompactStyle = _ref => {\n let {\n children\n } = _ref;\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: null\n }, children);\n};\nconst CompactItem = _a => {\n var {\n children\n } = _a,\n otherProps = __rest(_a, [\"children\"]);\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: otherProps\n }, children);\n};\nconst Compact = props => {\n const {\n getPrefixCls,\n direction: directionConfig\n } = React.useContext(ConfigContext);\n const {\n size = 'middle',\n direction,\n block,\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n children\n } = props,\n restProps = __rest(props, [\"size\", \"direction\", \"block\", \"prefixCls\", \"className\", \"rootClassName\", \"children\"]);\n const prefixCls = getPrefixCls('space-compact', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const clx = classNames(prefixCls, hashId, {\n [`${prefixCls}-rtl`]: directionConfig === 'rtl',\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-vertical`]: direction === 'vertical'\n }, className, rootClassName);\n const compactItemContext = React.useContext(SpaceCompactItemContext);\n const childNodes = toArray(children);\n const nodes = React.useMemo(() => childNodes.map((child, i) => {\n const key = child && child.key || `${prefixCls}-item-${i}`;\n return /*#__PURE__*/React.createElement(CompactItem, {\n key: key,\n compactSize: size,\n compactDirection: direction,\n isFirstItem: i === 0 && (!compactItemContext || (compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.isFirstItem)),\n isLastItem: i === childNodes.length - 1 && (!compactItemContext || (compactItemContext === null || compactItemContext === void 0 ? void 0 : compactItemContext.isLastItem))\n }, child);\n }), [size, childNodes, compactItemContext]);\n // =========================== Render ===========================\n if (childNodes.length === 0) {\n return null;\n }\n return wrapSSR( /*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: clx\n }, restProps), nodes));\n};\nexport default Compact;","export default (function (element) {\n if (!element) {\n return false;\n }\n if (element instanceof Element) {\n if (element.offsetParent) {\n return true;\n }\n if (element.getBBox) {\n var _getBBox = element.getBBox(),\n width = _getBBox.width,\n height = _getBBox.height;\n if (width || height) {\n return true;\n }\n }\n if (element.getBoundingClientRect) {\n var _element$getBoundingC = element.getBoundingClientRect(),\n _width = _element$getBoundingC.width,\n _height = _element$getBoundingC.height;\n if (_width || _height) {\n return true;\n }\n }\n }\n return false;\n});","import { genComponentStyleHook } from '../../theme/internal';\nconst genWaveStyle = token => {\n const {\n componentCls,\n colorPrimary\n } = token;\n return {\n [componentCls]: {\n position: 'absolute',\n background: 'transparent',\n pointerEvents: 'none',\n boxSizing: 'border-box',\n color: `var(--wave-color, ${colorPrimary})`,\n boxShadow: `0 0 0 0 currentcolor`,\n opacity: 0.2,\n // =================== Motion ===================\n '&.wave-motion-appear': {\n transition: [`box-shadow 0.4s ${token.motionEaseOutCirc}`, `opacity 2s ${token.motionEaseOutCirc}`].join(','),\n '&-active': {\n boxShadow: `0 0 0 6px currentcolor`,\n opacity: 0\n }\n }\n }\n };\n};\nexport default genComponentStyleHook('Wave', token => [genWaveStyle(token)]);","export function isNotGrey(color) {\n // eslint-disable-next-line no-useless-escape\n const match = (color || '').match(/rgba?\\((\\d*), (\\d*), (\\d*)(, [\\d.]*)?\\)/);\n if (match && match[1] && match[2] && match[3]) {\n return !(match[1] === match[2] && match[2] === match[3]);\n }\n return true;\n}\nexport function isValidWaveColor(color) {\n return color && color !== '#fff' && color !== '#ffffff' && color !== 'rgb(255, 255, 255)' && color !== 'rgba(255, 255, 255, 1)' && isNotGrey(color) && !/rgba\\((?:\\d*, ){3}0\\)/.test(color) &&\n // any transparent rgba color\n color !== 'transparent';\n}\nexport function getTargetWaveColor(node) {\n const {\n borderTopColor,\n borderColor,\n backgroundColor\n } = getComputedStyle(node);\n if (isValidWaveColor(borderTopColor)) {\n return borderTopColor;\n }\n if (isValidWaveColor(borderColor)) {\n return borderColor;\n }\n if (isValidWaveColor(backgroundColor)) {\n return backgroundColor;\n }\n return null;\n}","import * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport raf from \"rc-util/es/raf\";\nimport { render, unmount } from \"rc-util/es/React/render\";\nimport classNames from 'classnames';\nimport { getTargetWaveColor } from './util';\nfunction validateNum(value) {\n return Number.isNaN(value) ? 0 : value;\n}\nconst WaveEffect = props => {\n const {\n className,\n target\n } = props;\n const divRef = React.useRef(null);\n const [color, setWaveColor] = React.useState(null);\n const [borderRadius, setBorderRadius] = React.useState([]);\n const [left, setLeft] = React.useState(0);\n const [top, setTop] = React.useState(0);\n const [width, setWidth] = React.useState(0);\n const [height, setHeight] = React.useState(0);\n const [enabled, setEnabled] = React.useState(false);\n const waveStyle = {\n left,\n top,\n width,\n height,\n borderRadius: borderRadius.map(radius => `${radius}px`).join(' ')\n };\n if (color) {\n waveStyle['--wave-color'] = color;\n }\n function syncPos() {\n const nodeStyle = getComputedStyle(target);\n // Get wave color from target\n setWaveColor(getTargetWaveColor(target));\n const isStatic = nodeStyle.position === 'static';\n // Rect\n const {\n borderLeftWidth,\n borderTopWidth\n } = nodeStyle;\n setLeft(isStatic ? target.offsetLeft : validateNum(-parseFloat(borderLeftWidth)));\n setTop(isStatic ? target.offsetTop : validateNum(-parseFloat(borderTopWidth)));\n setWidth(target.offsetWidth);\n setHeight(target.offsetHeight);\n // Get border radius\n const {\n borderTopLeftRadius,\n borderTopRightRadius,\n borderBottomLeftRadius,\n borderBottomRightRadius\n } = nodeStyle;\n setBorderRadius([borderTopLeftRadius, borderTopRightRadius, borderBottomRightRadius, borderBottomLeftRadius].map(radius => validateNum(parseFloat(radius))));\n }\n React.useEffect(() => {\n if (target) {\n // We need delay to check position here\n // since UI may change after click\n const id = raf(() => {\n syncPos();\n setEnabled(true);\n });\n // Add resize observer to follow size\n let resizeObserver;\n if (typeof ResizeObserver !== 'undefined') {\n resizeObserver = new ResizeObserver(syncPos);\n resizeObserver.observe(target);\n }\n return () => {\n raf.cancel(id);\n resizeObserver === null || resizeObserver === void 0 ? void 0 : resizeObserver.disconnect();\n };\n }\n }, []);\n if (!enabled) {\n return null;\n }\n return /*#__PURE__*/React.createElement(CSSMotion, {\n visible: true,\n motionAppear: true,\n motionName: \"wave-motion\",\n motionDeadline: 5000,\n onAppearEnd: (_, event) => {\n var _a;\n if (event.deadline || event.propertyName === 'opacity') {\n const holder = (_a = divRef.current) === null || _a === void 0 ? void 0 : _a.parentElement;\n unmount(holder).then(() => {\n var _a;\n (_a = holder.parentElement) === null || _a === void 0 ? void 0 : _a.removeChild(holder);\n });\n }\n return false;\n }\n }, _ref => {\n let {\n className: motionClassName\n } = _ref;\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: divRef,\n className: classNames(className, motionClassName),\n style: waveStyle\n });\n });\n};\nexport default function showWaveEffect(node, className) {\n // Create holder\n const holder = document.createElement('div');\n holder.style.position = 'absolute';\n holder.style.left = `0px`;\n holder.style.top = `0px`;\n node === null || node === void 0 ? void 0 : node.insertBefore(holder, node === null || node === void 0 ? void 0 : node.firstChild);\n render( /*#__PURE__*/React.createElement(WaveEffect, {\n target: node,\n className: className\n }), holder);\n}","import showWaveEffect from './WaveEffect';\nexport default function useWave(nodeRef, className) {\n function showWave() {\n const node = nodeRef.current;\n showWaveEffect(node, className);\n }\n return showWave;\n}","import classNames from 'classnames';\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport React, { useContext, useRef } from 'react';\nimport { ConfigContext } from '../../config-provider';\nimport { cloneElement } from '../reactNode';\nimport useStyle from './style';\nimport useWave from './useWave';\nconst Wave = props => {\n const {\n children,\n disabled\n } = props;\n const {\n getPrefixCls\n } = useContext(ConfigContext);\n const containerRef = useRef(null);\n // ============================== Style ===============================\n const prefixCls = getPrefixCls('wave');\n const [, hashId] = useStyle(prefixCls);\n // =============================== Wave ===============================\n const showWave = useWave(containerRef, classNames(prefixCls, hashId));\n // ============================== Effect ==============================\n React.useEffect(() => {\n const node = containerRef.current;\n if (!node || node.nodeType !== 1 || disabled) {\n return;\n }\n // Click handler\n const onClick = e => {\n // Fix radio button click twice\n if (e.target.tagName === 'INPUT' || !isVisible(e.target) ||\n // No need wave\n !node.getAttribute || node.getAttribute('disabled') || node.disabled || node.className.includes('disabled') || node.className.includes('-leave')) {\n return;\n }\n showWave();\n };\n // Bind events\n node.addEventListener('click', onClick, true);\n return () => {\n node.removeEventListener('click', onClick, true);\n };\n }, [disabled]);\n // ============================== Render ==============================\n if (! /*#__PURE__*/React.isValidElement(children)) {\n return children !== null && children !== void 0 ? children : null;\n }\n const ref = supportRef(children) ? composeRef(children.ref, containerRef) : containerRef;\n return cloneElement(children, {\n ref\n });\n};\nif (process.env.NODE_ENV !== 'production') {\n Wave.displayName = 'Wave';\n}\nexport default Wave;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { useToken } from '../theme/internal';\nimport warning from '../_util/warning';\nexport const GroupSizeContext = /*#__PURE__*/React.createContext(undefined);\nconst ButtonGroup = props => {\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n size,\n className\n } = props,\n others = __rest(props, [\"prefixCls\", \"size\", \"className\"]);\n const prefixCls = getPrefixCls('btn-group', customizePrefixCls);\n const [,, hashId] = useToken();\n let sizeCls = '';\n switch (size) {\n case 'large':\n sizeCls = 'lg';\n break;\n case 'small':\n sizeCls = 'sm';\n break;\n case 'middle':\n case undefined:\n break;\n default:\n process.env.NODE_ENV !== \"production\" ? warning(!size, 'Button.Group', 'Invalid prop `size`.') : void 0;\n }\n const classes = classNames(prefixCls, {\n [`${prefixCls}-${sizeCls}`]: sizeCls,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, className, hashId);\n return /*#__PURE__*/React.createElement(GroupSizeContext.Provider, {\n value: size\n }, /*#__PURE__*/React.createElement(\"div\", Object.assign({}, others, {\n className: classes\n })));\n};\nexport default ButtonGroup;","import React from 'react';\nimport { cloneElement, isFragment } from '../_util/reactNode';\nconst rxTwoCNChar = /^[\\u4e00-\\u9fa5]{2}$/;\nexport const isTwoCNChar = rxTwoCNChar.test.bind(rxTwoCNChar);\nexport function isString(str) {\n return typeof str === 'string';\n}\nexport function isUnBorderedButtonType(type) {\n return type === 'text' || type === 'link';\n}\nfunction splitCNCharsBySpace(child, needInserted) {\n if (child === null || child === undefined) {\n return;\n }\n const SPACE = needInserted ? ' ' : '';\n if (typeof child !== 'string' && typeof child !== 'number' && isString(child.type) && isTwoCNChar(child.props.children)) {\n return cloneElement(child, {\n children: child.props.children.split('').join(SPACE)\n });\n }\n if (typeof child === 'string') {\n return isTwoCNChar(child) ? /*#__PURE__*/React.createElement(\"span\", null, child.split('').join(SPACE)) : /*#__PURE__*/React.createElement(\"span\", null, child);\n }\n if (isFragment(child)) {\n return /*#__PURE__*/React.createElement(\"span\", null, child);\n }\n return child;\n}\nexport function spaceChildren(children, needInserted) {\n let isPrevChildPure = false;\n const childList = [];\n React.Children.forEach(children, child => {\n const type = typeof child;\n const isCurrentChildPure = type === 'string' || type === 'number';\n if (isPrevChildPure && isCurrentChildPure) {\n const lastIndex = childList.length - 1;\n const lastChild = childList[lastIndex];\n childList[lastIndex] = `${lastChild}${child}`;\n } else {\n childList.push(child);\n }\n isPrevChildPure = isCurrentChildPure;\n });\n return React.Children.map(childList, child => splitCNCharsBySpace(child, needInserted));\n}\nconst ButtonTypes = ['default', 'primary', 'ghost', 'dashed', 'link', 'text'];\nconst ButtonShapes = ['default', 'circle', 'round'];\nconst ButtonHTMLTypes = ['submit', 'button', 'reset'];","import LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport CSSMotion from 'rc-motion';\nimport React from 'react';\nconst getCollapsedWidth = () => ({\n width: 0,\n opacity: 0,\n transform: 'scale(0)'\n});\nconst getRealWidth = node => ({\n width: node.scrollWidth,\n opacity: 1,\n transform: 'scale(1)'\n});\nconst LoadingIcon = _ref => {\n let {\n prefixCls,\n loading,\n existIcon\n } = _ref;\n const visible = !!loading;\n if (existIcon) {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-loading-icon`\n }, /*#__PURE__*/React.createElement(LoadingOutlined, null));\n }\n return /*#__PURE__*/React.createElement(CSSMotion, {\n visible: visible,\n // We do not really use this motionName\n motionName: `${prefixCls}-loading-icon-motion`,\n removeOnLeave: true,\n onAppearStart: getCollapsedWidth,\n onAppearActive: getRealWidth,\n onEnterStart: getCollapsedWidth,\n onEnterActive: getRealWidth,\n onLeaveStart: getRealWidth,\n onLeaveActive: getCollapsedWidth\n }, (_ref2, ref) => {\n let {\n className,\n style\n } = _ref2;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-loading-icon`,\n style: style,\n ref: ref\n }, /*#__PURE__*/React.createElement(LoadingOutlined, {\n className: className\n }));\n });\n};\nexport default LoadingIcon;","const genButtonBorderStyle = (buttonTypeCls, borderColor) => ({\n // Border\n [`> span, > ${buttonTypeCls}`]: {\n '&:not(:last-child)': {\n [`&, & > ${buttonTypeCls}`]: {\n '&:not(:disabled)': {\n borderInlineEndColor: borderColor\n }\n }\n },\n '&:not(:first-child)': {\n [`&, & > ${buttonTypeCls}`]: {\n '&:not(:disabled)': {\n borderInlineStartColor: borderColor\n }\n }\n }\n }\n});\nconst genGroupStyle = token => {\n const {\n componentCls,\n fontSize,\n lineWidth,\n colorPrimaryHover,\n colorErrorHover\n } = token;\n return {\n [`${componentCls}-group`]: [{\n position: 'relative',\n display: 'inline-flex',\n // Border\n [`> span, > ${componentCls}`]: {\n '&:not(:last-child)': {\n [`&, & > ${componentCls}`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0\n }\n },\n '&:not(:first-child)': {\n marginInlineStart: -lineWidth,\n [`&, & > ${componentCls}`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n }\n }\n },\n [componentCls]: {\n position: 'relative',\n zIndex: 1,\n [`&:hover,\n &:focus,\n &:active`]: {\n zIndex: 2\n },\n '&[disabled]': {\n zIndex: 0\n }\n },\n [`${componentCls}-icon-only`]: {\n fontSize\n }\n },\n // Border Color\n genButtonBorderStyle(`${componentCls}-primary`, colorPrimaryHover), genButtonBorderStyle(`${componentCls}-danger`, colorErrorHover)]\n };\n};\nexport default genGroupStyle;","// handle border collapse\nfunction compactItemBorder(token, parentCls, options) {\n const {\n focusElCls,\n focus,\n borderElCls\n } = options;\n const childCombinator = borderElCls ? '> *' : '';\n const hoverEffects = ['hover', focus ? 'focus' : null, 'active'].filter(Boolean).map(n => `&:${n} ${childCombinator}`).join(',');\n return {\n [`&-item:not(${parentCls}-last-item)`]: {\n marginInlineEnd: -token.lineWidth\n },\n '&-item': Object.assign(Object.assign({\n [hoverEffects]: {\n zIndex: 2\n }\n }, focusElCls ? {\n [`&${focusElCls}`]: {\n zIndex: 2\n }\n } : {}), {\n [`&[disabled] ${childCombinator}`]: {\n zIndex: 0\n }\n })\n };\n}\n// handle border-radius\nfunction compactItemBorderRadius(prefixCls, parentCls, options) {\n const {\n borderElCls\n } = options;\n const childCombinator = borderElCls ? `> ${borderElCls}` : '';\n return {\n [`&-item:not(${parentCls}-first-item):not(${parentCls}-last-item) ${childCombinator}`]: {\n borderRadius: 0\n },\n [`&-item:not(${parentCls}-last-item)${parentCls}-first-item`]: {\n [`& ${childCombinator}, &${prefixCls}-sm ${childCombinator}, &${prefixCls}-lg ${childCombinator}`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0\n }\n },\n [`&-item:not(${parentCls}-first-item)${parentCls}-last-item`]: {\n [`& ${childCombinator}, &${prefixCls}-sm ${childCombinator}, &${prefixCls}-lg ${childCombinator}`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n }\n }\n };\n}\nexport function genCompactItemStyle(token) {\n let options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n focus: true\n };\n const {\n componentCls\n } = token;\n const compactCls = `${componentCls}-compact`;\n return {\n [compactCls]: Object.assign(Object.assign({}, compactItemBorder(token, compactCls, options)), compactItemBorderRadius(componentCls, compactCls, options))\n };\n}","function compactItemVerticalBorder(token, parentCls) {\n return {\n // border collapse\n [`&-item:not(${parentCls}-last-item)`]: {\n marginBottom: -token.lineWidth\n },\n '&-item': {\n '&:hover,&:focus,&:active': {\n zIndex: 2\n },\n '&[disabled]': {\n zIndex: 0\n }\n }\n };\n}\nfunction compactItemBorderVerticalRadius(prefixCls, parentCls) {\n return {\n [`&-item:not(${parentCls}-first-item):not(${parentCls}-last-item)`]: {\n borderRadius: 0\n },\n [`&-item${parentCls}-first-item:not(${parentCls}-last-item)`]: {\n [`&, &${prefixCls}-sm, &${prefixCls}-lg`]: {\n borderEndEndRadius: 0,\n borderEndStartRadius: 0\n }\n },\n [`&-item${parentCls}-last-item:not(${parentCls}-first-item)`]: {\n [`&, &${prefixCls}-sm, &${prefixCls}-lg`]: {\n borderStartStartRadius: 0,\n borderStartEndRadius: 0\n }\n }\n };\n}\nexport function genCompactItemVerticalStyle(token) {\n const compactCls = `${token.componentCls}-compact-vertical`;\n return {\n [compactCls]: Object.assign(Object.assign({}, compactItemVerticalBorder(token, compactCls)), compactItemBorderVerticalRadius(token.componentCls, compactCls))\n };\n}","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport genGroupStyle from './group';\nimport { genFocusStyle } from '../../style';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genCompactItemVerticalStyle } from '../../style/compact-item-vertical';\n// ============================== Shared ==============================\nconst genSharedButtonStyle = token => {\n const {\n componentCls,\n iconCls\n } = token;\n return {\n [componentCls]: {\n outline: 'none',\n position: 'relative',\n display: 'inline-block',\n fontWeight: 400,\n whiteSpace: 'nowrap',\n textAlign: 'center',\n backgroundImage: 'none',\n backgroundColor: 'transparent',\n border: `${token.lineWidth}px ${token.lineType} transparent`,\n cursor: 'pointer',\n transition: `all ${token.motionDurationMid} ${token.motionEaseInOut}`,\n userSelect: 'none',\n touchAction: 'manipulation',\n lineHeight: token.lineHeight,\n color: token.colorText,\n '> span': {\n display: 'inline-block'\n },\n // Leave a space between icon and text.\n [`> ${iconCls} + span, > span + ${iconCls}`]: {\n marginInlineStart: token.marginXS\n },\n '> a': {\n color: 'currentColor'\n },\n '&:not(:disabled)': Object.assign({}, genFocusStyle(token)),\n // make `btn-icon-only` not too narrow\n [`&-icon-only${componentCls}-compact-item`]: {\n flex: 'none'\n },\n // Special styles for Primary Button\n [`&-compact-item${componentCls}-primary`]: {\n [`&:not([disabled]) + ${componentCls}-compact-item${componentCls}-primary:not([disabled])`]: {\n position: 'relative',\n '&:before': {\n position: 'absolute',\n top: -token.lineWidth,\n insetInlineStart: -token.lineWidth,\n display: 'inline-block',\n width: token.lineWidth,\n height: `calc(100% + ${token.lineWidth * 2}px)`,\n backgroundColor: token.colorPrimaryHover,\n content: '\"\"'\n }\n }\n },\n // Special styles for Primary Button\n '&-compact-vertical-item': {\n [`&${componentCls}-primary`]: {\n [`&:not([disabled]) + ${componentCls}-compact-vertical-item${componentCls}-primary:not([disabled])`]: {\n position: 'relative',\n '&:before': {\n position: 'absolute',\n top: -token.lineWidth,\n insetInlineStart: -token.lineWidth,\n display: 'inline-block',\n width: `calc(100% + ${token.lineWidth * 2}px)`,\n height: token.lineWidth,\n backgroundColor: token.colorPrimaryHover,\n content: '\"\"'\n }\n }\n }\n }\n }\n };\n};\nconst genHoverActiveButtonStyle = (hoverStyle, activeStyle) => ({\n '&:not(:disabled)': {\n '&:hover': hoverStyle,\n '&:active': activeStyle\n }\n});\n// ============================== Shape ===============================\nconst genCircleButtonStyle = token => ({\n minWidth: token.controlHeight,\n paddingInlineStart: 0,\n paddingInlineEnd: 0,\n borderRadius: '50%'\n});\nconst genRoundButtonStyle = token => ({\n borderRadius: token.controlHeight,\n paddingInlineStart: token.controlHeight / 2,\n paddingInlineEnd: token.controlHeight / 2\n});\n// =============================== Type ===============================\nconst genDisabledStyle = token => ({\n cursor: 'not-allowed',\n borderColor: token.colorBorder,\n color: token.colorTextDisabled,\n backgroundColor: token.colorBgContainerDisabled,\n boxShadow: 'none'\n});\nconst genGhostButtonStyle = (btnCls, textColor, borderColor, textColorDisabled, borderColorDisabled, hoverStyle, activeStyle) => ({\n [`&${btnCls}-background-ghost`]: Object.assign(Object.assign({\n color: textColor || undefined,\n backgroundColor: 'transparent',\n borderColor: borderColor || undefined,\n boxShadow: 'none'\n }, genHoverActiveButtonStyle(Object.assign({\n backgroundColor: 'transparent'\n }, hoverStyle), Object.assign({\n backgroundColor: 'transparent'\n }, activeStyle))), {\n '&:disabled': {\n cursor: 'not-allowed',\n color: textColorDisabled || undefined,\n borderColor: borderColorDisabled || undefined\n }\n })\n});\nconst genSolidDisabledButtonStyle = token => ({\n '&:disabled': Object.assign({}, genDisabledStyle(token))\n});\nconst genSolidButtonStyle = token => Object.assign({}, genSolidDisabledButtonStyle(token));\nconst genPureDisabledButtonStyle = token => ({\n '&:disabled': {\n cursor: 'not-allowed',\n color: token.colorTextDisabled\n }\n});\n// Type: Default\nconst genDefaultButtonStyle = token => Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, genSolidButtonStyle(token)), {\n backgroundColor: token.colorBgContainer,\n borderColor: token.colorBorder,\n boxShadow: `0 ${token.controlOutlineWidth}px 0 ${token.controlTmpOutline}`\n}), genHoverActiveButtonStyle({\n color: token.colorPrimaryHover,\n borderColor: token.colorPrimaryHover\n}, {\n color: token.colorPrimaryActive,\n borderColor: token.colorPrimaryActive\n})), genGhostButtonStyle(token.componentCls, token.colorBgContainer, token.colorBgContainer, token.colorTextDisabled, token.colorBorder)), {\n [`&${token.componentCls}-dangerous`]: Object.assign(Object.assign(Object.assign({\n color: token.colorError,\n borderColor: token.colorError\n }, genHoverActiveButtonStyle({\n color: token.colorErrorHover,\n borderColor: token.colorErrorBorderHover\n }, {\n color: token.colorErrorActive,\n borderColor: token.colorErrorActive\n })), genGhostButtonStyle(token.componentCls, token.colorError, token.colorError, token.colorTextDisabled, token.colorBorder)), genSolidDisabledButtonStyle(token))\n});\n// Type: Primary\nconst genPrimaryButtonStyle = token => Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, genSolidButtonStyle(token)), {\n color: token.colorTextLightSolid,\n backgroundColor: token.colorPrimary,\n boxShadow: `0 ${token.controlOutlineWidth}px 0 ${token.controlOutline}`\n}), genHoverActiveButtonStyle({\n color: token.colorTextLightSolid,\n backgroundColor: token.colorPrimaryHover\n}, {\n color: token.colorTextLightSolid,\n backgroundColor: token.colorPrimaryActive\n})), genGhostButtonStyle(token.componentCls, token.colorPrimary, token.colorPrimary, token.colorTextDisabled, token.colorBorder, {\n color: token.colorPrimaryHover,\n borderColor: token.colorPrimaryHover\n}, {\n color: token.colorPrimaryActive,\n borderColor: token.colorPrimaryActive\n})), {\n [`&${token.componentCls}-dangerous`]: Object.assign(Object.assign(Object.assign({\n backgroundColor: token.colorError,\n boxShadow: `0 ${token.controlOutlineWidth}px 0 ${token.colorErrorOutline}`\n }, genHoverActiveButtonStyle({\n backgroundColor: token.colorErrorHover\n }, {\n backgroundColor: token.colorErrorActive\n })), genGhostButtonStyle(token.componentCls, token.colorError, token.colorError, token.colorTextDisabled, token.colorBorder, {\n color: token.colorErrorHover,\n borderColor: token.colorErrorHover\n }, {\n color: token.colorErrorActive,\n borderColor: token.colorErrorActive\n })), genSolidDisabledButtonStyle(token))\n});\n// Type: Dashed\nconst genDashedButtonStyle = token => Object.assign(Object.assign({}, genDefaultButtonStyle(token)), {\n borderStyle: 'dashed'\n});\n// Type: Link\nconst genLinkButtonStyle = token => Object.assign(Object.assign(Object.assign({\n color: token.colorLink\n}, genHoverActiveButtonStyle({\n color: token.colorLinkHover\n}, {\n color: token.colorLinkActive\n})), genPureDisabledButtonStyle(token)), {\n [`&${token.componentCls}-dangerous`]: Object.assign(Object.assign({\n color: token.colorError\n }, genHoverActiveButtonStyle({\n color: token.colorErrorHover\n }, {\n color: token.colorErrorActive\n })), genPureDisabledButtonStyle(token))\n});\n// Type: Text\nconst genTextButtonStyle = token => Object.assign(Object.assign(Object.assign({}, genHoverActiveButtonStyle({\n color: token.colorText,\n backgroundColor: token.colorBgTextHover\n}, {\n color: token.colorText,\n backgroundColor: token.colorBgTextActive\n})), genPureDisabledButtonStyle(token)), {\n [`&${token.componentCls}-dangerous`]: Object.assign(Object.assign({\n color: token.colorError\n }, genPureDisabledButtonStyle(token)), genHoverActiveButtonStyle({\n color: token.colorErrorHover,\n backgroundColor: token.colorErrorBg\n }, {\n color: token.colorErrorHover,\n backgroundColor: token.colorErrorBg\n }))\n});\n// Href and Disabled\nconst genDisabledButtonStyle = token => Object.assign(Object.assign({}, genDisabledStyle(token)), {\n [`&${token.componentCls}:hover`]: Object.assign({}, genDisabledStyle(token))\n});\nconst genTypeButtonStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [`${componentCls}-default`]: genDefaultButtonStyle(token),\n [`${componentCls}-primary`]: genPrimaryButtonStyle(token),\n [`${componentCls}-dashed`]: genDashedButtonStyle(token),\n [`${componentCls}-link`]: genLinkButtonStyle(token),\n [`${componentCls}-text`]: genTextButtonStyle(token),\n [`${componentCls}-disabled`]: genDisabledButtonStyle(token)\n };\n};\n// =============================== Size ===============================\nconst genSizeButtonStyle = function (token) {\n let sizePrefixCls = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n const {\n componentCls,\n iconCls,\n controlHeight,\n fontSize,\n lineHeight,\n lineWidth,\n borderRadius,\n buttonPaddingHorizontal\n } = token;\n const paddingVertical = Math.max(0, (controlHeight - fontSize * lineHeight) / 2 - lineWidth);\n const paddingHorizontal = buttonPaddingHorizontal - lineWidth;\n const iconOnlyCls = `${componentCls}-icon-only`;\n return [\n // Size\n {\n [`${componentCls}${sizePrefixCls}`]: {\n fontSize,\n height: controlHeight,\n padding: `${paddingVertical}px ${paddingHorizontal}px`,\n borderRadius,\n [`&${iconOnlyCls}`]: {\n width: controlHeight,\n paddingInlineStart: 0,\n paddingInlineEnd: 0,\n [`&${componentCls}-round`]: {\n width: 'auto'\n },\n '> span': {\n transform: 'scale(1.143)' // 14px -> 16px\n }\n },\n\n // Loading\n [`&${componentCls}-loading`]: {\n opacity: token.opacityLoading,\n cursor: 'default'\n },\n [`${componentCls}-loading-icon`]: {\n transition: `width ${token.motionDurationSlow} ${token.motionEaseInOut}, opacity ${token.motionDurationSlow} ${token.motionEaseInOut}`\n },\n [`&:not(${iconOnlyCls}) ${componentCls}-loading-icon > ${iconCls}`]: {\n marginInlineEnd: token.marginXS\n }\n }\n },\n // Shape - patch prefixCls again to override solid border radius style\n {\n [`${componentCls}${componentCls}-circle${sizePrefixCls}`]: genCircleButtonStyle(token)\n }, {\n [`${componentCls}${componentCls}-round${sizePrefixCls}`]: genRoundButtonStyle(token)\n }];\n};\nconst genSizeBaseButtonStyle = token => genSizeButtonStyle(token);\nconst genSizeSmallButtonStyle = token => {\n const smallToken = mergeToken(token, {\n controlHeight: token.controlHeightSM,\n padding: token.paddingXS,\n buttonPaddingHorizontal: 8,\n borderRadius: token.borderRadiusSM\n });\n return genSizeButtonStyle(smallToken, `${token.componentCls}-sm`);\n};\nconst genSizeLargeButtonStyle = token => {\n const largeToken = mergeToken(token, {\n controlHeight: token.controlHeightLG,\n fontSize: token.fontSizeLG,\n borderRadius: token.borderRadiusLG\n });\n return genSizeButtonStyle(largeToken, `${token.componentCls}-lg`);\n};\nconst genBlockButtonStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [componentCls]: {\n [`&${componentCls}-block`]: {\n width: '100%'\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Button', token => {\n const {\n controlTmpOutline,\n paddingContentHorizontal\n } = token;\n const buttonToken = mergeToken(token, {\n colorOutlineDefault: controlTmpOutline,\n buttonPaddingHorizontal: paddingContentHorizontal\n });\n return [\n // Shared\n genSharedButtonStyle(buttonToken),\n // Size\n genSizeSmallButtonStyle(buttonToken), genSizeBaseButtonStyle(buttonToken), genSizeLargeButtonStyle(buttonToken),\n // Block\n genBlockButtonStyle(buttonToken),\n // Group (type, ghost, danger, disabled, loading)\n genTypeButtonStyle(buttonToken),\n // Button Group\n genGroupStyle(buttonToken),\n // Space Compact\n genCompactItemStyle(token), genCompactItemVerticalStyle(token)];\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n/* eslint-disable react/button-has-type */\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport SizeContext from '../config-provider/SizeContext';\nimport { useCompactItemContext } from '../space/Compact';\nimport warning from '../_util/warning';\nimport Wave from '../_util/wave';\nimport Group, { GroupSizeContext } from './button-group';\nimport { isTwoCNChar, isUnBorderedButtonType, spaceChildren } from './buttonHelpers';\nimport LoadingIcon from './LoadingIcon';\nimport useStyle from './style';\nexport function convertLegacyProps(type) {\n if (type === 'danger') {\n return {\n danger: true\n };\n }\n return {\n type\n };\n}\nfunction getLoadingConfig(loading) {\n if (typeof loading === 'object' && loading) {\n const delay = loading === null || loading === void 0 ? void 0 : loading.delay;\n const isDelay = !Number.isNaN(delay) && typeof delay === 'number';\n return {\n loading: false,\n delay: isDelay ? delay : 0\n };\n }\n return {\n loading: !!loading,\n delay: 0\n };\n}\nconst InternalButton = (props, ref) => {\n const {\n loading = false,\n prefixCls: customizePrefixCls,\n type = 'default',\n danger,\n shape = 'default',\n size: customizeSize,\n disabled: customDisabled,\n className,\n rootClassName,\n children,\n icon,\n ghost = false,\n block = false,\n // React does not recognize the `htmlType` prop on a DOM element. Here we pick it out of `rest`.\n htmlType = 'button'\n } = props,\n rest = __rest(props, [\"loading\", \"prefixCls\", \"type\", \"danger\", \"shape\", \"size\", \"disabled\", \"className\", \"rootClassName\", \"children\", \"icon\", \"ghost\", \"block\", \"htmlType\"]);\n const {\n getPrefixCls,\n autoInsertSpaceInButton,\n direction\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('btn', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const size = React.useContext(SizeContext);\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n const groupSize = React.useContext(GroupSizeContext);\n const loadingOrDelay = React.useMemo(() => getLoadingConfig(loading), [loading]);\n const [innerLoading, setLoading] = React.useState(loadingOrDelay.loading);\n const [hasTwoCNChar, setHasTwoCNChar] = React.useState(false);\n const buttonRef = ref || /*#__PURE__*/React.createRef();\n const isNeedInserted = () => React.Children.count(children) === 1 && !icon && !isUnBorderedButtonType(type);\n const fixTwoCNChar = () => {\n // FIXME: for HOC usage like <FormatMessage />\n if (!buttonRef || !buttonRef.current || autoInsertSpaceInButton === false) {\n return;\n }\n const buttonText = buttonRef.current.textContent;\n if (isNeedInserted() && isTwoCNChar(buttonText)) {\n if (!hasTwoCNChar) {\n setHasTwoCNChar(true);\n }\n } else if (hasTwoCNChar) {\n setHasTwoCNChar(false);\n }\n };\n React.useEffect(() => {\n let delayTimer = null;\n if (loadingOrDelay.delay > 0) {\n delayTimer = window.setTimeout(() => {\n delayTimer = null;\n setLoading(true);\n }, loadingOrDelay.delay);\n } else {\n setLoading(loadingOrDelay.loading);\n }\n function cleanupTimer() {\n if (delayTimer) {\n window.clearTimeout(delayTimer);\n delayTimer = null;\n }\n }\n return cleanupTimer;\n }, [loadingOrDelay]);\n React.useEffect(fixTwoCNChar, [buttonRef]);\n const handleClick = e => {\n const {\n onClick\n } = props;\n // FIXME: https://github.com/ant-design/ant-design/issues/30207\n if (innerLoading || mergedDisabled) {\n e.preventDefault();\n return;\n }\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n };\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof icon === 'string' && icon.length > 2), 'Button', `\\`icon\\` is using ReactNode instead of string naming in v4. Please check \\`${icon}\\` at https://ant.design/components/icon`) : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(ghost && isUnBorderedButtonType(type)), 'Button', \"`link` or `text` button can't be a `ghost` button.\") : void 0;\n const autoInsertSpace = autoInsertSpaceInButton !== false;\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n const sizeClassNameMap = {\n large: 'lg',\n small: 'sm',\n middle: undefined\n };\n const sizeFullname = compactSize || groupSize || customizeSize || size;\n const sizeCls = sizeFullname ? sizeClassNameMap[sizeFullname] || '' : '';\n const iconType = innerLoading ? 'loading' : icon;\n const linkButtonRestProps = omit(rest, ['navigate']);\n const hrefAndDisabled = linkButtonRestProps.href !== undefined && mergedDisabled;\n const classes = classNames(prefixCls, hashId, {\n [`${prefixCls}-${shape}`]: shape !== 'default' && shape,\n [`${prefixCls}-${type}`]: type,\n [`${prefixCls}-${sizeCls}`]: sizeCls,\n [`${prefixCls}-icon-only`]: !children && children !== 0 && !!iconType,\n [`${prefixCls}-background-ghost`]: ghost && !isUnBorderedButtonType(type),\n [`${prefixCls}-loading`]: innerLoading,\n [`${prefixCls}-two-chinese-chars`]: hasTwoCNChar && autoInsertSpace && !innerLoading,\n [`${prefixCls}-block`]: block,\n [`${prefixCls}-dangerous`]: !!danger,\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-disabled`]: hrefAndDisabled\n }, compactItemClassnames, className, rootClassName);\n const iconNode = icon && !innerLoading ? icon : /*#__PURE__*/React.createElement(LoadingIcon, {\n existIcon: !!icon,\n prefixCls: prefixCls,\n loading: !!innerLoading\n });\n const kids = children || children === 0 ? spaceChildren(children, isNeedInserted() && autoInsertSpace) : null;\n if (linkButtonRestProps.href !== undefined) {\n return wrapSSR( /*#__PURE__*/React.createElement(\"a\", Object.assign({}, linkButtonRestProps, {\n className: classes,\n onClick: handleClick,\n ref: buttonRef\n }), iconNode, kids));\n }\n let buttonNode = /*#__PURE__*/React.createElement(\"button\", Object.assign({}, rest, {\n type: htmlType,\n className: classes,\n onClick: handleClick,\n disabled: mergedDisabled,\n ref: buttonRef\n }), iconNode, kids);\n if (!isUnBorderedButtonType(type)) {\n buttonNode = /*#__PURE__*/React.createElement(Wave, {\n disabled: !!innerLoading\n }, buttonNode);\n }\n return wrapSSR(buttonNode);\n};\nconst Button = /*#__PURE__*/React.forwardRef(InternalButton);\nif (process.env.NODE_ENV !== 'production') {\n Button.displayName = 'Button';\n}\nButton.Group = Group;\nButton.__ANT_BUTTON = true;\nexport default Button;","import useState from \"rc-util/es/hooks/useState\";\nimport * as React from 'react';\nimport Button from '../button';\nimport { convertLegacyProps } from '../button/button';\nfunction isThenable(thing) {\n return !!(thing && thing.then);\n}\nconst ActionButton = props => {\n const {\n type,\n children,\n prefixCls,\n buttonProps,\n close,\n autoFocus,\n emitEvent,\n quitOnNullishReturnValue,\n actionFn\n } = props;\n const clickedRef = React.useRef(false);\n const buttonRef = React.useRef(null);\n const [loading, setLoading] = useState(false);\n const onInternalClose = function () {\n close === null || close === void 0 ? void 0 : close.apply(void 0, arguments);\n };\n React.useEffect(() => {\n let timeoutId = null;\n if (autoFocus) {\n timeoutId = setTimeout(() => {\n var _a;\n (_a = buttonRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n });\n }\n return () => {\n if (timeoutId) {\n clearTimeout(timeoutId);\n }\n };\n }, []);\n const handlePromiseOnOk = returnValueOfOnOk => {\n if (!isThenable(returnValueOfOnOk)) {\n return;\n }\n setLoading(true);\n returnValueOfOnOk.then(function () {\n setLoading(false, true);\n onInternalClose.apply(void 0, arguments);\n clickedRef.current = false;\n }, e => {\n // See: https://github.com/ant-design/ant-design/issues/6183\n setLoading(false, true);\n clickedRef.current = false;\n return Promise.reject(e);\n });\n };\n const onClick = e => {\n if (clickedRef.current) {\n return;\n }\n clickedRef.current = true;\n if (!actionFn) {\n onInternalClose();\n return;\n }\n let returnValueOfOnOk;\n if (emitEvent) {\n returnValueOfOnOk = actionFn(e);\n if (quitOnNullishReturnValue && !isThenable(returnValueOfOnOk)) {\n clickedRef.current = false;\n onInternalClose(e);\n return;\n }\n } else if (actionFn.length) {\n returnValueOfOnOk = actionFn(close);\n // https://github.com/ant-design/ant-design/issues/23358\n clickedRef.current = false;\n } else {\n returnValueOfOnOk = actionFn();\n if (!returnValueOfOnOk) {\n onInternalClose();\n return;\n }\n }\n handlePromiseOnOk(returnValueOfOnOk);\n };\n return /*#__PURE__*/React.createElement(Button, Object.assign({}, convertLegacyProps(type), {\n onClick: onClick,\n loading: loading,\n prefixCls: prefixCls\n }, buttonProps, {\n ref: buttonRef\n }), children);\n};\nexport default ActionButton;","// ================== Collapse Motion ==================\nconst getCollapsedHeight = () => ({\n height: 0,\n opacity: 0\n});\nconst getRealHeight = node => {\n const {\n scrollHeight\n } = node;\n return {\n height: scrollHeight,\n opacity: 1\n };\n};\nconst getCurrentHeight = node => ({\n height: node ? node.offsetHeight : 0\n});\nconst skipOpacityTransition = (_, event) => (event === null || event === void 0 ? void 0 : event.deadline) === true || event.propertyName === 'height';\nconst initCollapseMotion = function () {\n let rootCls = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ant';\n return {\n motionName: `${rootCls}-motion-collapse`,\n onAppearStart: getCollapsedHeight,\n onEnterStart: getCollapsedHeight,\n onAppearActive: getRealHeight,\n onEnterActive: getRealHeight,\n onLeaveStart: getCurrentHeight,\n onLeaveActive: getCollapsedHeight,\n onAppearEnd: skipOpacityTransition,\n onEnterEnd: skipOpacityTransition,\n onLeaveEnd: skipOpacityTransition,\n motionDeadline: 500\n };\n};\nconst SelectPlacements = ['bottomLeft', 'bottomRight', 'topLeft', 'topRight'];\nconst getTransitionDirection = placement => {\n if (placement !== undefined && (placement === 'topLeft' || placement === 'topRight')) {\n return `slide-down`;\n }\n return `slide-up`;\n};\nconst getTransitionName = (rootPrefixCls, motion, transitionName) => {\n if (transitionName !== undefined) {\n return transitionName;\n }\n return `${rootPrefixCls}-${motion}`;\n};\nexport { getTransitionName, getTransitionDirection };\nexport default initCollapseMotion;","import * as React from 'react';\nvar OrderContext = /*#__PURE__*/React.createContext(null);\nexport default OrderContext;","/* eslint-disable no-param-reassign */\n\nvar cached;\nexport default function getScrollBarSize(fresh) {\n if (typeof document === 'undefined') {\n return 0;\n }\n if (fresh || cached === undefined) {\n var inner = document.createElement('div');\n inner.style.width = '100%';\n inner.style.height = '200px';\n var outer = document.createElement('div');\n var outerStyle = outer.style;\n outerStyle.position = 'absolute';\n outerStyle.top = '0';\n outerStyle.left = '0';\n outerStyle.pointerEvents = 'none';\n outerStyle.visibility = 'hidden';\n outerStyle.width = '200px';\n outerStyle.height = '150px';\n outerStyle.overflow = 'hidden';\n outer.appendChild(inner);\n document.body.appendChild(outer);\n var widthContained = inner.offsetWidth;\n outer.style.overflow = 'scroll';\n var widthScroll = inner.offsetWidth;\n if (widthContained === widthScroll) {\n widthScroll = outer.clientWidth;\n }\n document.body.removeChild(outer);\n cached = widthContained - widthScroll;\n }\n return cached;\n}\nfunction ensureSize(str) {\n var match = str.match(/^(.*)px$/);\n var value = Number(match === null || match === void 0 ? void 0 : match[1]);\n return Number.isNaN(value) ? getScrollBarSize() : value;\n}\nexport function getTargetScrollBarSize(target) {\n if (typeof document === 'undefined' || !target || !(target instanceof Element)) {\n return {\n width: 0,\n height: 0\n };\n }\n var _getComputedStyle = getComputedStyle(target, '::-webkit-scrollbar'),\n width = _getComputedStyle.width,\n height = _getComputedStyle.height;\n return {\n width: ensureSize(width),\n height: ensureSize(height)\n };\n}","import * as React from 'react';\nimport canUseDom from \"../Dom/canUseDom\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nvar useLayoutEffect = process.env.NODE_ENV !== 'test' && canUseDom() ? React.useLayoutEffect : React.useEffect;\nexport default useLayoutEffect;\nexport var useLayoutUpdateEffect = function useLayoutUpdateEffect(callback, deps) {\n var firstMountRef = React.useRef(true);\n useLayoutEffect(function () {\n if (!firstMountRef.current) {\n return callback();\n }\n }, deps);\n\n // We tell react that first mount has passed\n useLayoutEffect(function () {\n firstMountRef.current = false;\n return function () {\n firstMountRef.current = true;\n };\n }, []);\n};","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport OrderContext from \"./Context\";\nvar EMPTY_LIST = [];\n/**\n * Will add `div` to document. Nest call will keep order\n * @param render Render DOM in document\n */\n\nexport default function useDom(render, debug) {\n var _React$useState = React.useState(function () {\n if (!canUseDom()) {\n return null;\n }\n\n var defaultEle = document.createElement('div');\n\n if (process.env.NODE_ENV !== 'production' && debug) {\n defaultEle.setAttribute('data-debug', debug);\n }\n\n return defaultEle;\n }),\n _React$useState2 = _slicedToArray(_React$useState, 1),\n ele = _React$useState2[0]; // ========================== Order ==========================\n\n\n var appendedRef = React.useRef(false);\n var queueCreate = React.useContext(OrderContext);\n\n var _React$useState3 = React.useState(EMPTY_LIST),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n queue = _React$useState4[0],\n setQueue = _React$useState4[1];\n\n var mergedQueueCreate = queueCreate || (appendedRef.current ? undefined : function (appendFn) {\n setQueue(function (origin) {\n var newQueue = [appendFn].concat(_toConsumableArray(origin));\n return newQueue;\n });\n }); // =========================== DOM ===========================\n\n function append() {\n if (!ele.parentElement) {\n document.body.appendChild(ele);\n }\n\n appendedRef.current = true;\n }\n\n function cleanup() {\n var _ele$parentElement;\n\n (_ele$parentElement = ele.parentElement) === null || _ele$parentElement === void 0 ? void 0 : _ele$parentElement.removeChild(ele);\n appendedRef.current = false;\n }\n\n useLayoutEffect(function () {\n if (render) {\n if (queueCreate) {\n queueCreate(append);\n } else {\n append();\n }\n } else {\n cleanup();\n }\n\n return cleanup;\n }, [render]);\n useLayoutEffect(function () {\n if (queue.length) {\n queue.forEach(function (appendFn) {\n return appendFn();\n });\n setQueue(EMPTY_LIST);\n }\n }, [queue]);\n return [ele, mergedQueueCreate];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { updateCSS, removeCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport getScrollBarSize from \"rc-util/es/getScrollBarSize\";\nimport { isBodyOverflowing } from \"./util\";\nvar UNIQUE_ID = \"rc-util-locker-\".concat(Date.now());\nvar uuid = 0;\nexport default function useScrollLocker(lock) {\n var mergedLock = !!lock;\n\n var _React$useState = React.useState(function () {\n uuid += 1;\n return \"\".concat(UNIQUE_ID, \"_\").concat(uuid);\n }),\n _React$useState2 = _slicedToArray(_React$useState, 1),\n id = _React$useState2[0];\n\n useLayoutEffect(function () {\n if (mergedLock) {\n var scrollbarSize = getScrollBarSize();\n var isOverflow = isBodyOverflowing();\n updateCSS(\"\\nhtml body {\\n overflow-y: hidden;\\n \".concat(isOverflow ? \"width: calc(100% - \".concat(scrollbarSize, \"px);\") : '', \"\\n}\"), id);\n } else {\n removeCSS(id);\n }\n\n return function () {\n removeCSS(id);\n };\n }, [mergedLock, id]);\n}","/**\n * Test usage export. Do not use in your production\n */\nexport function isBodyOverflowing() {\n return document.body.scrollHeight > (window.innerHeight || document.documentElement.clientHeight) && window.innerWidth > document.body.offsetWidth;\n}","export var inline = false;\nexport function inlineMock(nextInline) {\n if (typeof nextInline === 'boolean') {\n inline = nextInline;\n }\n\n return inline;\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { createPortal } from 'react-dom';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { supportRef, useComposeRef } from \"rc-util/es/ref\";\nimport OrderContext from \"./Context\";\nimport useDom from \"./useDom\";\nimport useScrollLocker from \"./useScrollLocker\";\nimport { inlineMock } from \"./mock\";\n\nvar getPortalContainer = function getPortalContainer(getContainer) {\n if (getContainer === false) {\n return false;\n }\n\n if (!canUseDom() || !getContainer) {\n return null;\n }\n\n if (typeof getContainer === 'string') {\n return document.querySelector(getContainer);\n }\n\n if (typeof getContainer === 'function') {\n return getContainer();\n }\n\n return getContainer;\n};\n\nvar Portal = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var open = props.open,\n autoLock = props.autoLock,\n getContainer = props.getContainer,\n debug = props.debug,\n _props$autoDestroy = props.autoDestroy,\n autoDestroy = _props$autoDestroy === void 0 ? true : _props$autoDestroy,\n children = props.children;\n\n var _React$useState = React.useState(open),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n shouldRender = _React$useState2[0],\n setShouldRender = _React$useState2[1];\n\n var mergedRender = shouldRender || open; // ====================== Should Render ======================\n\n React.useEffect(function () {\n if (autoDestroy || open) {\n setShouldRender(open);\n }\n }, [open, autoDestroy]); // ======================== Container ========================\n\n var _React$useState3 = React.useState(function () {\n return getPortalContainer(getContainer);\n }),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n innerContainer = _React$useState4[0],\n setInnerContainer = _React$useState4[1];\n\n React.useEffect(function () {\n var customizeContainer = getPortalContainer(getContainer); // Tell component that we check this in effect which is safe to be `null`\n\n setInnerContainer(customizeContainer !== null && customizeContainer !== void 0 ? customizeContainer : null);\n });\n\n var _useDom = useDom(mergedRender && !innerContainer, debug),\n _useDom2 = _slicedToArray(_useDom, 2),\n defaultContainer = _useDom2[0],\n queueCreate = _useDom2[1];\n\n var mergedContainer = innerContainer !== null && innerContainer !== void 0 ? innerContainer : defaultContainer; // ========================= Locker ==========================\n\n useScrollLocker(autoLock && open && canUseDom() && (mergedContainer === defaultContainer || mergedContainer === document.body)); // =========================== Ref ===========================\n\n var childRef = null;\n\n if (children && supportRef(children) && ref) {\n var _ref = children;\n childRef = _ref.ref;\n }\n\n var mergedRef = useComposeRef(childRef, ref); // ========================= Render ==========================\n // Do not render when nothing need render\n // When innerContainer is `undefined`, it may not ready since user use ref in the same render\n\n if (!mergedRender || !canUseDom() || innerContainer === undefined) {\n return null;\n } // Render inline\n\n\n var renderInline = mergedContainer === false || inlineMock();\n var reffedChildren = children;\n\n if (ref) {\n reffedChildren = /*#__PURE__*/React.cloneElement(children, {\n ref: mergedRef\n });\n }\n\n return /*#__PURE__*/React.createElement(OrderContext.Provider, {\n value: queueCreate\n }, renderInline ? reffedChildren : /*#__PURE__*/createPortal(reffedChildren, mergedContainer));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Portal.displayName = 'Portal';\n}\n\nexport default Portal;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nfunction getUseId() {\n // We need fully clone React function here to avoid webpack warning React 17 do not export `useId`\n var fullClone = _objectSpread({}, React);\n return fullClone.useId;\n}\nvar uuid = 0;\n\n/** @private Note only worked in develop env. Not work in production. */\nexport function resetUuid() {\n if (process.env.NODE_ENV !== 'production') {\n uuid = 0;\n }\n}\nexport default function useId(id) {\n // Inner id for accessibility usage. Only work in client side\n var _React$useState = React.useState('ssr-id'),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerId = _React$useState2[0],\n setInnerId = _React$useState2[1];\n var useOriginId = getUseId();\n var reactNativeId = useOriginId === null || useOriginId === void 0 ? void 0 : useOriginId();\n React.useEffect(function () {\n if (!useOriginId) {\n var nextId = uuid;\n uuid += 1;\n setInnerId(\"rc_unique_\".concat(nextId));\n }\n }, []);\n\n // Developer passed id is single source of truth\n if (id) {\n return id;\n }\n\n // Test env always return mock id\n if (process.env.NODE_ENV === 'test') {\n return 'test-id';\n }\n\n // Return react native id or inner id\n return reactNativeId || innerId;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar attributes = \"accept acceptCharset accessKey action allowFullScreen allowTransparency\\n alt async autoComplete autoFocus autoPlay capture cellPadding cellSpacing challenge\\n charSet checked classID className colSpan cols content contentEditable contextMenu\\n controls coords crossOrigin data dateTime default defer dir disabled download draggable\\n encType form formAction formEncType formMethod formNoValidate formTarget frameBorder\\n headers height hidden high href hrefLang htmlFor httpEquiv icon id inputMode integrity\\n is keyParams keyType kind label lang list loop low manifest marginHeight marginWidth max maxLength media\\n mediaGroup method min minLength multiple muted name noValidate nonce open\\n optimum pattern placeholder poster preload radioGroup readOnly rel required\\n reversed role rowSpan rows sandbox scope scoped scrolling seamless selected\\n shape size sizes span spellCheck src srcDoc srcLang srcSet start step style\\n summary tabIndex target title type useMap value width wmode wrap\";\nvar eventsName = \"onCopy onCut onPaste onCompositionEnd onCompositionStart onCompositionUpdate onKeyDown\\n onKeyPress onKeyUp onFocus onBlur onChange onInput onSubmit onClick onContextMenu onDoubleClick\\n onDrag onDragEnd onDragEnter onDragExit onDragLeave onDragOver onDragStart onDrop onMouseDown\\n onMouseEnter onMouseLeave onMouseMove onMouseOut onMouseOver onMouseUp onSelect onTouchCancel\\n onTouchEnd onTouchMove onTouchStart onScroll onWheel onAbort onCanPlay onCanPlayThrough\\n onDurationChange onEmptied onEncrypted onEnded onError onLoadedData onLoadedMetadata\\n onLoadStart onPause onPlay onPlaying onProgress onRateChange onSeeked onSeeking onStalled onSuspend onTimeUpdate onVolumeChange onWaiting onLoad onError\";\nvar propList = \"\".concat(attributes, \" \").concat(eventsName).split(/[\\s\\n]+/);\n\n/* eslint-enable max-len */\nvar ariaPrefix = 'aria-';\nvar dataPrefix = 'data-';\nfunction match(key, prefix) {\n return key.indexOf(prefix) === 0;\n}\n/**\n * Picker props from exist props with filter\n * @param props Passed props\n * @param ariaOnly boolean | { aria?: boolean; data?: boolean; attr?: boolean; } filter config\n */\nexport default function pickAttrs(props) {\n var ariaOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var mergedConfig;\n if (ariaOnly === false) {\n mergedConfig = {\n aria: true,\n data: true,\n attr: true\n };\n } else if (ariaOnly === true) {\n mergedConfig = {\n aria: true\n };\n } else {\n mergedConfig = _objectSpread({}, ariaOnly);\n }\n var attrs = {};\n Object.keys(props).forEach(function (key) {\n if (\n // Aria\n mergedConfig.aria && (key === 'role' || match(key, ariaPrefix)) ||\n // Data\n mergedConfig.data && match(key, dataPrefix) ||\n // Attr\n mergedConfig.attr && propList.includes(key)) {\n attrs[key] = props[key];\n }\n });\n return attrs;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n style = props.style,\n visible = props.visible,\n maskProps = props.maskProps,\n motionName = props.motionName;\n return /*#__PURE__*/React.createElement(CSSMotion, {\n key: \"mask\",\n visible: visible,\n motionName: motionName,\n leavedClassName: \"\".concat(prefixCls, \"-mask-hidden\")\n }, function (_ref, ref) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: ref,\n style: _objectSpread(_objectSpread({}, motionStyle), style),\n className: classNames(\"\".concat(prefixCls, \"-mask\"), motionClassName)\n }, maskProps));\n });\n}","// =============================== Motion ===============================\nexport function getMotionName(prefixCls, transitionName, animationName) {\n var motionName = transitionName;\n if (!motionName && animationName) {\n motionName = \"\".concat(prefixCls, \"-\").concat(animationName);\n }\n return motionName;\n}\n// =============================== Offset ===============================\nfunction getScroll(w, top) {\n var ret = w[\"page\".concat(top ? 'Y' : 'X', \"Offset\")];\n var method = \"scroll\".concat(top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n ret = d.body[method];\n }\n }\n return ret;\n}\nexport function offset(el) {\n var rect = el.getBoundingClientRect();\n var pos = {\n left: rect.left,\n top: rect.top\n };\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScroll(w);\n pos.top += getScroll(w, true);\n return pos;\n}","import * as React from 'react';\nexport default /*#__PURE__*/React.memo(function (_ref) {\n var children = _ref.children;\n return children;\n}, function (_, _ref2) {\n var shouldUpdate = _ref2.shouldUpdate;\n return !shouldUpdate;\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport React, { useRef } from 'react';\nimport classNames from 'classnames';\nimport MemoChildren from './MemoChildren';\nvar sentinelStyle = {\n width: 0,\n height: 0,\n overflow: 'hidden',\n outline: 'none'\n};\nvar Panel = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n title = props.title,\n ariaId = props.ariaId,\n footer = props.footer,\n closable = props.closable,\n closeIcon = props.closeIcon,\n onClose = props.onClose,\n children = props.children,\n bodyStyle = props.bodyStyle,\n bodyProps = props.bodyProps,\n modalRender = props.modalRender,\n onMouseDown = props.onMouseDown,\n onMouseUp = props.onMouseUp,\n holderRef = props.holderRef,\n visible = props.visible,\n forceRender = props.forceRender,\n width = props.width,\n height = props.height;\n // ================================= Refs =================================\n var sentinelStartRef = useRef();\n var sentinelEndRef = useRef();\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus() {\n var _sentinelStartRef$cur;\n (_sentinelStartRef$cur = sentinelStartRef.current) === null || _sentinelStartRef$cur === void 0 ? void 0 : _sentinelStartRef$cur.focus();\n },\n changeActive: function changeActive(next) {\n var _document = document,\n activeElement = _document.activeElement;\n if (next && activeElement === sentinelEndRef.current) {\n sentinelStartRef.current.focus();\n } else if (!next && activeElement === sentinelStartRef.current) {\n sentinelEndRef.current.focus();\n }\n }\n };\n });\n // ================================ Style =================================\n var contentStyle = {};\n if (width !== undefined) {\n contentStyle.width = width;\n }\n if (height !== undefined) {\n contentStyle.height = height;\n }\n // ================================ Render ================================\n var footerNode;\n if (footer) {\n footerNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-footer\")\n }, footer);\n }\n var headerNode;\n if (title) {\n headerNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-header\")\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-title\"),\n id: ariaId\n }, title));\n }\n var closer;\n if (closable) {\n closer = /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onClose,\n \"aria-label\": \"Close\",\n className: \"\".concat(prefixCls, \"-close\")\n }, closeIcon || /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-close-x\")\n }));\n }\n var content = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, closer, headerNode, /*#__PURE__*/React.createElement(\"div\", _extends({\n className: \"\".concat(prefixCls, \"-body\"),\n style: bodyStyle\n }, bodyProps), children), footerNode);\n return /*#__PURE__*/React.createElement(\"div\", {\n key: \"dialog-element\",\n role: \"dialog\",\n \"aria-labelledby\": title ? ariaId : null,\n \"aria-modal\": \"true\",\n ref: holderRef,\n style: _objectSpread(_objectSpread({}, style), contentStyle),\n className: classNames(prefixCls, className),\n onMouseDown: onMouseDown,\n onMouseUp: onMouseUp\n }, /*#__PURE__*/React.createElement(\"div\", {\n tabIndex: 0,\n ref: sentinelStartRef,\n style: sentinelStyle,\n \"aria-hidden\": \"true\"\n }), /*#__PURE__*/React.createElement(MemoChildren, {\n shouldUpdate: visible || forceRender\n }, modalRender ? modalRender(content) : content), /*#__PURE__*/React.createElement(\"div\", {\n tabIndex: 0,\n ref: sentinelEndRef,\n style: sentinelStyle,\n \"aria-hidden\": \"true\"\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n Panel.displayName = 'Panel';\n}\nexport default Panel;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport { offset } from '../../util';\nimport Panel from './Panel';\nvar Content = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n title = props.title,\n style = props.style,\n className = props.className,\n visible = props.visible,\n forceRender = props.forceRender,\n destroyOnClose = props.destroyOnClose,\n motionName = props.motionName,\n ariaId = props.ariaId,\n onVisibleChanged = props.onVisibleChanged,\n mousePosition = props.mousePosition;\n var dialogRef = useRef();\n // ============================= Style ==============================\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n transformOrigin = _React$useState2[0],\n setTransformOrigin = _React$useState2[1];\n var contentStyle = {};\n if (transformOrigin) {\n contentStyle.transformOrigin = transformOrigin;\n }\n function onPrepare() {\n var elementOffset = offset(dialogRef.current);\n setTransformOrigin(mousePosition ? \"\".concat(mousePosition.x - elementOffset.left, \"px \").concat(mousePosition.y - elementOffset.top, \"px\") : '');\n }\n // ============================= Render =============================\n return /*#__PURE__*/React.createElement(CSSMotion, {\n visible: visible,\n onVisibleChanged: onVisibleChanged,\n onAppearPrepare: onPrepare,\n onEnterPrepare: onPrepare,\n forceRender: forceRender,\n motionName: motionName,\n removeOnLeave: destroyOnClose,\n ref: dialogRef\n }, function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n return /*#__PURE__*/React.createElement(Panel, _extends({}, props, {\n ref: ref,\n title: title,\n ariaId: ariaId,\n prefixCls: prefixCls,\n holderRef: motionRef,\n style: _objectSpread(_objectSpread(_objectSpread({}, motionStyle), style), contentStyle),\n className: classNames(className, motionClassName)\n }));\n });\n});\nContent.displayName = 'Content';\nexport default Content;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport useId from \"rc-util/es/hooks/useId\";\nimport contains from \"rc-util/es/Dom/contains\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Mask from './Mask';\nimport { getMotionName } from '../util';\nimport Content from './Content';\nexport default function Dialog(props) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-dialog' : _props$prefixCls,\n zIndex = props.zIndex,\n _props$visible = props.visible,\n visible = _props$visible === void 0 ? false : _props$visible,\n _props$keyboard = props.keyboard,\n keyboard = _props$keyboard === void 0 ? true : _props$keyboard,\n _props$focusTriggerAf = props.focusTriggerAfterClose,\n focusTriggerAfterClose = _props$focusTriggerAf === void 0 ? true : _props$focusTriggerAf,\n wrapStyle = props.wrapStyle,\n wrapClassName = props.wrapClassName,\n wrapProps = props.wrapProps,\n onClose = props.onClose,\n afterClose = props.afterClose,\n transitionName = props.transitionName,\n animation = props.animation,\n _props$closable = props.closable,\n closable = _props$closable === void 0 ? true : _props$closable,\n _props$mask = props.mask,\n mask = _props$mask === void 0 ? true : _props$mask,\n maskTransitionName = props.maskTransitionName,\n maskAnimation = props.maskAnimation,\n _props$maskClosable = props.maskClosable,\n maskClosable = _props$maskClosable === void 0 ? true : _props$maskClosable,\n maskStyle = props.maskStyle,\n maskProps = props.maskProps,\n rootClassName = props.rootClassName;\n var lastOutSideActiveElementRef = useRef();\n var wrapperRef = useRef();\n var contentRef = useRef();\n var _React$useState = React.useState(visible),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n animatedVisible = _React$useState2[0],\n setAnimatedVisible = _React$useState2[1];\n // ========================== Init ==========================\n var ariaId = useId();\n function saveLastOutSideActiveElementRef() {\n if (!contains(wrapperRef.current, document.activeElement)) {\n lastOutSideActiveElementRef.current = document.activeElement;\n }\n }\n function focusDialogContent() {\n if (!contains(wrapperRef.current, document.activeElement)) {\n var _contentRef$current;\n (_contentRef$current = contentRef.current) === null || _contentRef$current === void 0 ? void 0 : _contentRef$current.focus();\n }\n }\n // ========================= Events =========================\n function onDialogVisibleChanged(newVisible) {\n // Try to focus\n if (newVisible) {\n focusDialogContent();\n } else {\n // Clean up scroll bar & focus back\n setAnimatedVisible(false);\n if (mask && lastOutSideActiveElementRef.current && focusTriggerAfterClose) {\n try {\n lastOutSideActiveElementRef.current.focus({\n preventScroll: true\n });\n } catch (e) {\n // Do nothing\n }\n lastOutSideActiveElementRef.current = null;\n }\n // Trigger afterClose only when change visible from true to false\n if (animatedVisible) {\n afterClose === null || afterClose === void 0 ? void 0 : afterClose();\n }\n }\n }\n function onInternalClose(e) {\n onClose === null || onClose === void 0 ? void 0 : onClose(e);\n }\n // >>> Content\n var contentClickRef = useRef(false);\n var contentTimeoutRef = useRef();\n // We need record content click incase content popup out of dialog\n var onContentMouseDown = function onContentMouseDown() {\n clearTimeout(contentTimeoutRef.current);\n contentClickRef.current = true;\n };\n var onContentMouseUp = function onContentMouseUp() {\n contentTimeoutRef.current = setTimeout(function () {\n contentClickRef.current = false;\n });\n };\n // >>> Wrapper\n // Close only when element not on dialog\n var onWrapperClick = null;\n if (maskClosable) {\n onWrapperClick = function onWrapperClick(e) {\n if (contentClickRef.current) {\n contentClickRef.current = false;\n } else if (wrapperRef.current === e.target) {\n onInternalClose(e);\n }\n };\n }\n function onWrapperKeyDown(e) {\n if (keyboard && e.keyCode === KeyCode.ESC) {\n e.stopPropagation();\n onInternalClose(e);\n return;\n }\n // keep focus inside dialog\n if (visible) {\n if (e.keyCode === KeyCode.TAB) {\n contentRef.current.changeActive(!e.shiftKey);\n }\n }\n }\n // ========================= Effect =========================\n useEffect(function () {\n if (visible) {\n setAnimatedVisible(true);\n saveLastOutSideActiveElementRef();\n }\n }, [visible]);\n // Remove direct should also check the scroll bar update\n useEffect(function () {\n return function () {\n clearTimeout(contentTimeoutRef.current);\n };\n }, []);\n // ========================= Render =========================\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: classNames(\"\".concat(prefixCls, \"-root\"), rootClassName)\n }, pickAttrs(props, {\n data: true\n })), /*#__PURE__*/React.createElement(Mask, {\n prefixCls: prefixCls,\n visible: mask && visible,\n motionName: getMotionName(prefixCls, maskTransitionName, maskAnimation),\n style: _objectSpread({\n zIndex: zIndex\n }, maskStyle),\n maskProps: maskProps\n }), /*#__PURE__*/React.createElement(\"div\", _extends({\n tabIndex: -1,\n onKeyDown: onWrapperKeyDown,\n className: classNames(\"\".concat(prefixCls, \"-wrap\"), wrapClassName),\n ref: wrapperRef,\n onClick: onWrapperClick,\n style: _objectSpread(_objectSpread({\n zIndex: zIndex\n }, wrapStyle), {}, {\n display: !animatedVisible ? 'none' : null\n })\n }, wrapProps), /*#__PURE__*/React.createElement(Content, _extends({}, props, {\n onMouseDown: onContentMouseDown,\n onMouseUp: onContentMouseUp,\n ref: contentRef,\n closable: closable,\n ariaId: ariaId,\n prefixCls: prefixCls,\n visible: visible && animatedVisible,\n onClose: onInternalClose,\n onVisibleChanged: onDialogVisibleChanged,\n motionName: getMotionName(prefixCls, transitionName, animation)\n }))));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport Portal from '@rc-component/portal';\nimport Dialog from './Dialog';\n// fix issue #10656\n/*\n * getContainer remarks\n * Custom container should not be return, because in the Portal component, it will remove the\n * return container element here, if the custom container is the only child of it's component,\n * like issue #10656, It will has a conflict with removeChild method in react-dom.\n * So here should add a child (div element) to custom container.\n * */\nvar DialogWrap = function DialogWrap(props) {\n var visible = props.visible,\n getContainer = props.getContainer,\n forceRender = props.forceRender,\n _props$destroyOnClose = props.destroyOnClose,\n destroyOnClose = _props$destroyOnClose === void 0 ? false : _props$destroyOnClose,\n _afterClose = props.afterClose;\n var _React$useState = React.useState(visible),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n animatedVisible = _React$useState2[0],\n setAnimatedVisible = _React$useState2[1];\n React.useEffect(function () {\n if (visible) {\n setAnimatedVisible(true);\n }\n }, [visible]);\n // // 渲染在当前 dom 里;\n // if (getContainer === false) {\n // return (\n // <Dialog\n // {...props}\n // getOpenCount={() => 2} // 不对 body 做任何操作。。\n // />\n // );\n // }\n // Destroy on close will remove wrapped div\n if (!forceRender && destroyOnClose && !animatedVisible) {\n return null;\n }\n return /*#__PURE__*/React.createElement(Portal, {\n open: visible || forceRender || animatedVisible,\n autoDestroy: false,\n getContainer: getContainer,\n autoLock: visible || animatedVisible\n }, /*#__PURE__*/React.createElement(Dialog, _extends({}, props, {\n destroyOnClose: destroyOnClose,\n afterClose: function afterClose() {\n _afterClose === null || _afterClose === void 0 ? void 0 : _afterClose();\n setAnimatedVisible(false);\n }\n })));\n};\nDialogWrap.displayName = 'Dialog';\nexport default DialogWrap;","import { FormProvider as RcFormProvider } from 'rc-field-form';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nexport const FormContext = /*#__PURE__*/React.createContext({\n labelAlign: 'right',\n vertical: false,\n itemRef: () => {}\n});\nexport const NoStyleItemContext = /*#__PURE__*/React.createContext(null);\nexport const FormProvider = props => {\n const providerProps = omit(props, ['prefixCls']);\n return /*#__PURE__*/React.createElement(RcFormProvider, Object.assign({}, providerProps));\n};\nexport const FormItemPrefixContext = /*#__PURE__*/React.createContext({\n prefixCls: ''\n});\nexport const FormItemInputContext = /*#__PURE__*/React.createContext({});\nexport const NoFormStyle = _ref => {\n let {\n children,\n status,\n override\n } = _ref;\n const formItemInputContext = useContext(FormItemInputContext);\n const newFormItemInputContext = useMemo(() => {\n const newContext = Object.assign({}, formItemInputContext);\n if (override) {\n delete newContext.isFormItemInput;\n }\n if (status) {\n delete newContext.status;\n delete newContext.hasFeedback;\n delete newContext.feedbackIcon;\n }\n return newContext;\n }, [status, override, formItemInputContext]);\n return /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {\n value: newFormItemInputContext\n }, children);\n};","import canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { isStyleSupport } from \"rc-util/es/Dom/styleChecker\";\nexport const canUseDocElement = () => canUseDom() && window.document.documentElement;\nexport { isStyleSupport };\nlet flexGapSupported;\nexport const detectFlexGapSupported = () => {\n if (!canUseDocElement()) {\n return false;\n }\n if (flexGapSupported !== undefined) {\n return flexGapSupported;\n }\n // create flex container with row-gap set\n const flex = document.createElement('div');\n flex.style.display = 'flex';\n flex.style.flexDirection = 'column';\n flex.style.rowGap = '1px';\n // create two, elements inside it\n flex.appendChild(document.createElement('div'));\n flex.appendChild(document.createElement('div'));\n // append to the DOM (needed to obtain scrollHeight)\n document.body.appendChild(flex);\n flexGapSupported = flex.scrollHeight === 1; // flex container should be 1px high from the row-gap\n document.body.removeChild(flex);\n return flexGapSupported;\n};","const initMotionCommon = duration => ({\n animationDuration: duration,\n animationFillMode: 'both'\n});\n// FIXME: origin less code seems same as initMotionCommon. Maybe we can safe remove\nconst initMotionCommonLeave = duration => ({\n animationDuration: duration,\n animationFillMode: 'both'\n});\nexport const initMotion = function (motionCls, inKeyframes, outKeyframes, duration) {\n let sameLevel = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n const sameLevelPrefix = sameLevel ? '&' : '';\n return {\n [`\n ${sameLevelPrefix}${motionCls}-enter,\n ${sameLevelPrefix}${motionCls}-appear\n `]: Object.assign(Object.assign({}, initMotionCommon(duration)), {\n animationPlayState: 'paused'\n }),\n [`${sameLevelPrefix}${motionCls}-leave`]: Object.assign(Object.assign({}, initMotionCommonLeave(duration)), {\n animationPlayState: 'paused'\n }),\n [`\n ${sameLevelPrefix}${motionCls}-enter${motionCls}-enter-active,\n ${sameLevelPrefix}${motionCls}-appear${motionCls}-appear-active\n `]: {\n animationName: inKeyframes,\n animationPlayState: 'running'\n },\n [`${sameLevelPrefix}${motionCls}-leave${motionCls}-leave-active`]: {\n animationName: outKeyframes,\n animationPlayState: 'running',\n pointerEvents: 'none'\n }\n };\n};","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const fadeIn = new Keyframes('antFadeIn', {\n '0%': {\n opacity: 0\n },\n '100%': {\n opacity: 1\n }\n});\nexport const fadeOut = new Keyframes('antFadeOut', {\n '0%': {\n opacity: 1\n },\n '100%': {\n opacity: 0\n }\n});\nexport const initFadeMotion = function (token) {\n let sameLevel = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-fade`;\n const sameLevelPrefix = sameLevel ? '&' : '';\n return [initMotion(motionCls, fadeIn, fadeOut, token.motionDurationMid, sameLevel), {\n [`\n ${sameLevelPrefix}${motionCls}-enter,\n ${sameLevelPrefix}${motionCls}-appear\n `]: {\n opacity: 0,\n animationTimingFunction: 'linear'\n },\n [`${sameLevelPrefix}${motionCls}-leave`]: {\n animationTimingFunction: 'linear'\n }\n }];\n};","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const moveDownIn = new Keyframes('antMoveDownIn', {\n '0%': {\n transform: 'translate3d(0, 100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveDownOut = new Keyframes('antMoveDownOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(0, 100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveLeftIn = new Keyframes('antMoveLeftIn', {\n '0%': {\n transform: 'translate3d(-100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveLeftOut = new Keyframes('antMoveLeftOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(-100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveRightIn = new Keyframes('antMoveRightIn', {\n '0%': {\n transform: 'translate3d(100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveRightOut = new Keyframes('antMoveRightOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(100%, 0, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nexport const moveUpIn = new Keyframes('antMoveUpIn', {\n '0%': {\n transform: 'translate3d(0, -100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n },\n '100%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n }\n});\nexport const moveUpOut = new Keyframes('antMoveUpOut', {\n '0%': {\n transform: 'translate3d(0, 0, 0)',\n transformOrigin: '0 0',\n opacity: 1\n },\n '100%': {\n transform: 'translate3d(0, -100%, 0)',\n transformOrigin: '0 0',\n opacity: 0\n }\n});\nconst moveMotion = {\n 'move-up': {\n inKeyframes: moveUpIn,\n outKeyframes: moveUpOut\n },\n 'move-down': {\n inKeyframes: moveDownIn,\n outKeyframes: moveDownOut\n },\n 'move-left': {\n inKeyframes: moveLeftIn,\n outKeyframes: moveLeftOut\n },\n 'move-right': {\n inKeyframes: moveRightIn,\n outKeyframes: moveRightOut\n }\n};\nexport const initMoveMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = moveMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n opacity: 0,\n animationTimingFunction: token.motionEaseOutCirc\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInOutCirc\n }\n }];\n};","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const slideUpIn = new Keyframes('antSlideUpIn', {\n '0%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleY(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n }\n});\nexport const slideUpOut = new Keyframes('antSlideUpOut', {\n '0%': {\n transform: 'scaleY(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n }\n});\nexport const slideDownIn = new Keyframes('antSlideDownIn', {\n '0%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '100% 100%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleY(1)',\n transformOrigin: '100% 100%',\n opacity: 1\n }\n});\nexport const slideDownOut = new Keyframes('antSlideDownOut', {\n '0%': {\n transform: 'scaleY(1)',\n transformOrigin: '100% 100%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleY(0.8)',\n transformOrigin: '100% 100%',\n opacity: 0\n }\n});\nexport const slideLeftIn = new Keyframes('antSlideLeftIn', {\n '0%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleX(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n }\n});\nexport const slideLeftOut = new Keyframes('antSlideLeftOut', {\n '0%': {\n transform: 'scaleX(1)',\n transformOrigin: '0% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '0% 0%',\n opacity: 0\n }\n});\nexport const slideRightIn = new Keyframes('antSlideRightIn', {\n '0%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '100% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scaleX(1)',\n transformOrigin: '100% 0%',\n opacity: 1\n }\n});\nexport const slideRightOut = new Keyframes('antSlideRightOut', {\n '0%': {\n transform: 'scaleX(1)',\n transformOrigin: '100% 0%',\n opacity: 1\n },\n '100%': {\n transform: 'scaleX(0.8)',\n transformOrigin: '100% 0%',\n opacity: 0\n }\n});\nconst slideMotion = {\n 'slide-up': {\n inKeyframes: slideUpIn,\n outKeyframes: slideUpOut\n },\n 'slide-down': {\n inKeyframes: slideDownIn,\n outKeyframes: slideDownOut\n },\n 'slide-left': {\n inKeyframes: slideLeftIn,\n outKeyframes: slideLeftOut\n },\n 'slide-right': {\n inKeyframes: slideRightIn,\n outKeyframes: slideRightOut\n }\n};\nexport const initSlideMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = slideMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n transform: 'scale(0)',\n transformOrigin: '0% 0%',\n opacity: 0,\n animationTimingFunction: token.motionEaseOutQuint,\n [`&-prepare`]: {\n transform: 'scale(1)'\n }\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInQuint\n }\n }];\n};","import { Keyframes } from '@ant-design/cssinjs';\nimport { initMotion } from './motion';\nexport const zoomIn = new Keyframes('antZoomIn', {\n '0%': {\n transform: 'scale(0.2)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomOut = new Keyframes('antZoomOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.2)',\n opacity: 0\n }\n});\nexport const zoomBigIn = new Keyframes('antZoomBigIn', {\n '0%': {\n transform: 'scale(0.8)',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n opacity: 1\n }\n});\nexport const zoomBigOut = new Keyframes('antZoomBigOut', {\n '0%': {\n transform: 'scale(1)'\n },\n '100%': {\n transform: 'scale(0.8)',\n opacity: 0\n }\n});\nexport const zoomUpIn = new Keyframes('antZoomUpIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n }\n});\nexport const zoomUpOut = new Keyframes('antZoomUpOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 0%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 0%',\n opacity: 0\n }\n});\nexport const zoomLeftIn = new Keyframes('antZoomLeftIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n }\n});\nexport const zoomLeftOut = new Keyframes('antZoomLeftOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '0% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '0% 50%',\n opacity: 0\n }\n});\nexport const zoomRightIn = new Keyframes('antZoomRightIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n }\n});\nexport const zoomRightOut = new Keyframes('antZoomRightOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '100% 50%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '100% 50%',\n opacity: 0\n }\n});\nexport const zoomDownIn = new Keyframes('antZoomDownIn', {\n '0%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n },\n '100%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n }\n});\nexport const zoomDownOut = new Keyframes('antZoomDownOut', {\n '0%': {\n transform: 'scale(1)',\n transformOrigin: '50% 100%'\n },\n '100%': {\n transform: 'scale(0.8)',\n transformOrigin: '50% 100%',\n opacity: 0\n }\n});\nconst zoomMotion = {\n zoom: {\n inKeyframes: zoomIn,\n outKeyframes: zoomOut\n },\n 'zoom-big': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-big-fast': {\n inKeyframes: zoomBigIn,\n outKeyframes: zoomBigOut\n },\n 'zoom-left': {\n inKeyframes: zoomLeftIn,\n outKeyframes: zoomLeftOut\n },\n 'zoom-right': {\n inKeyframes: zoomRightIn,\n outKeyframes: zoomRightOut\n },\n 'zoom-up': {\n inKeyframes: zoomUpIn,\n outKeyframes: zoomUpOut\n },\n 'zoom-down': {\n inKeyframes: zoomDownIn,\n outKeyframes: zoomDownOut\n }\n};\nexport const initZoomMotion = (token, motionName) => {\n const {\n antCls\n } = token;\n const motionCls = `${antCls}-${motionName}`;\n const {\n inKeyframes,\n outKeyframes\n } = zoomMotion[motionName];\n return [initMotion(motionCls, inKeyframes, outKeyframes, motionName === 'zoom-big-fast' ? token.motionDurationFast : token.motionDurationMid), {\n [`\n ${motionCls}-enter,\n ${motionCls}-appear\n `]: {\n transform: 'scale(0)',\n opacity: 0,\n animationTimingFunction: token.motionEaseOutCirc,\n '&-prepare': {\n transform: 'none'\n }\n },\n [`${motionCls}-leave`]: {\n animationTimingFunction: token.motionEaseInOutCirc\n }\n }];\n};","const genCollapseMotion = token => ({\n [token.componentCls]: {\n // For common/openAnimation\n [`${token.antCls}-motion-collapse-legacy`]: {\n overflow: 'hidden',\n '&-active': {\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n },\n [`${token.antCls}-motion-collapse`]: {\n overflow: 'hidden',\n transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},\n opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`\n }\n }\n});\nexport default genCollapseMotion;","import { clearFix, genFocusStyle, resetComponent } from '../../style';\nimport { initFadeMotion, initZoomMotion } from '../../style/motion';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nfunction box(position) {\n return {\n position,\n top: 0,\n insetInlineEnd: 0,\n bottom: 0,\n insetInlineStart: 0\n };\n}\nexport const genModalMaskStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n return [{\n [`${componentCls}-root`]: {\n [`${componentCls}${antCls}-zoom-enter, ${componentCls}${antCls}-zoom-appear`]: {\n // reset scale avoid mousePosition bug\n transform: 'none',\n opacity: 0,\n animationDuration: token.motionDurationSlow,\n // https://github.com/ant-design/ant-design/issues/11777\n userSelect: 'none'\n },\n // https://github.com/ant-design/ant-design/issues/37329\n // https://github.com/ant-design/ant-design/issues/40272\n [`${componentCls}${antCls}-zoom-leave ${componentCls}-content`]: {\n pointerEvents: 'none'\n },\n [`${componentCls}-mask`]: Object.assign(Object.assign({}, box('fixed')), {\n zIndex: token.zIndexPopupBase,\n height: '100%',\n backgroundColor: token.colorBgMask,\n [`${componentCls}-hidden`]: {\n display: 'none'\n }\n }),\n [`${componentCls}-wrap`]: Object.assign(Object.assign({}, box('fixed')), {\n overflow: 'auto',\n outline: 0,\n WebkitOverflowScrolling: 'touch'\n })\n }\n }, {\n [`${componentCls}-root`]: initFadeMotion(token)\n }];\n};\nconst genModalStyle = token => {\n const {\n componentCls\n } = token;\n return [\n // ======================== Root =========================\n {\n [`${componentCls}-root`]: {\n [`${componentCls}-wrap`]: {\n zIndex: token.zIndexPopupBase,\n position: 'fixed',\n inset: 0,\n overflow: 'auto',\n outline: 0,\n WebkitOverflowScrolling: 'touch'\n },\n [`${componentCls}-wrap-rtl`]: {\n direction: 'rtl'\n },\n [`${componentCls}-centered`]: {\n textAlign: 'center',\n '&::before': {\n display: 'inline-block',\n width: 0,\n height: '100%',\n verticalAlign: 'middle',\n content: '\"\"'\n },\n [componentCls]: {\n top: 0,\n display: 'inline-block',\n paddingBottom: 0,\n textAlign: 'start',\n verticalAlign: 'middle'\n }\n },\n [`@media (max-width: ${token.screenSMMax})`]: {\n [componentCls]: {\n maxWidth: 'calc(100vw - 16px)',\n margin: `${token.marginXS} auto`\n },\n [`${componentCls}-centered`]: {\n [componentCls]: {\n flex: 1\n }\n }\n }\n }\n },\n // ======================== Modal ========================\n {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n pointerEvents: 'none',\n position: 'relative',\n top: 100,\n width: 'auto',\n maxWidth: `calc(100vw - ${token.margin * 2}px)`,\n margin: '0 auto',\n paddingBottom: token.paddingLG,\n [`${componentCls}-title`]: {\n margin: 0,\n color: token.modalHeadingColor,\n fontWeight: token.fontWeightStrong,\n fontSize: token.modalHeaderTitleFontSize,\n lineHeight: token.modalHeaderTitleLineHeight,\n wordWrap: 'break-word'\n },\n [`${componentCls}-content`]: {\n position: 'relative',\n backgroundColor: token.modalContentBg,\n backgroundClip: 'padding-box',\n border: 0,\n borderRadius: token.borderRadiusLG,\n boxShadow: token.boxShadow,\n pointerEvents: 'auto',\n padding: `${token.paddingMD}px ${token.paddingContentHorizontalLG}px`\n },\n [`${componentCls}-close`]: Object.assign({\n position: 'absolute',\n top: (token.modalHeaderCloseSize - token.modalCloseBtnSize) / 2,\n insetInlineEnd: (token.modalHeaderCloseSize - token.modalCloseBtnSize) / 2,\n zIndex: token.zIndexPopupBase + 10,\n padding: 0,\n color: token.modalCloseColor,\n fontWeight: token.fontWeightStrong,\n lineHeight: 1,\n textDecoration: 'none',\n background: 'transparent',\n borderRadius: token.borderRadiusSM,\n width: token.modalConfirmIconSize,\n height: token.modalConfirmIconSize,\n border: 0,\n outline: 0,\n cursor: 'pointer',\n transition: `color ${token.motionDurationMid}, background-color ${token.motionDurationMid}`,\n '&-x': {\n display: 'block',\n fontSize: token.fontSizeLG,\n fontStyle: 'normal',\n lineHeight: `${token.modalCloseBtnSize}px`,\n textAlign: 'center',\n textTransform: 'none',\n textRendering: 'auto'\n },\n '&:hover': {\n color: token.modalIconHoverColor,\n backgroundColor: token.wireframe ? 'transparent' : token.colorFillContent,\n textDecoration: 'none'\n },\n '&:active': {\n backgroundColor: token.wireframe ? 'transparent' : token.colorFillContentHover\n }\n }, genFocusStyle(token)),\n [`${componentCls}-header`]: {\n color: token.colorText,\n background: token.modalHeaderBg,\n borderRadius: `${token.borderRadiusLG}px ${token.borderRadiusLG}px 0 0`,\n marginBottom: token.marginXS\n },\n [`${componentCls}-body`]: {\n fontSize: token.fontSize,\n lineHeight: token.lineHeight,\n wordWrap: 'break-word'\n },\n [`${componentCls}-footer`]: {\n textAlign: 'end',\n background: token.modalFooterBg,\n marginTop: token.marginSM,\n [`${token.antCls}-btn + ${token.antCls}-btn:not(${token.antCls}-dropdown-trigger)`]: {\n marginBottom: 0,\n marginInlineStart: token.marginXS\n }\n },\n [`${componentCls}-open`]: {\n overflow: 'hidden'\n }\n })\n },\n // ======================== Pure =========================\n {\n [`${componentCls}-pure-panel`]: {\n top: 'auto',\n padding: 0,\n display: 'flex',\n flexDirection: 'column',\n [`${componentCls}-content,\n ${componentCls}-body,\n ${componentCls}-confirm-body-wrapper`]: {\n display: 'flex',\n flexDirection: 'column',\n flex: 'auto'\n },\n [`${componentCls}-confirm-body`]: {\n marginBottom: 'auto'\n }\n }\n }];\n};\nconst genModalConfirmStyle = token => {\n const {\n componentCls\n } = token;\n const confirmComponentCls = `${componentCls}-confirm`;\n return {\n [confirmComponentCls]: {\n '&-rtl': {\n direction: 'rtl'\n },\n [`${token.antCls}-modal-header`]: {\n display: 'none'\n },\n [`${confirmComponentCls}-body-wrapper`]: Object.assign({}, clearFix()),\n [`${confirmComponentCls}-body`]: {\n display: 'flex',\n flexWrap: 'wrap',\n alignItems: 'center',\n [`${confirmComponentCls}-title`]: {\n flex: '0 0 100%',\n display: 'block',\n // create BFC to avoid\n // https://user-images.githubusercontent.com/507615/37702510-ba844e06-2d2d-11e8-9b67-8e19be57f445.png\n overflow: 'hidden',\n color: token.colorTextHeading,\n fontWeight: token.fontWeightStrong,\n fontSize: token.modalHeaderTitleFontSize,\n lineHeight: token.modalHeaderTitleLineHeight,\n [`+ ${confirmComponentCls}-content`]: {\n marginBlockStart: token.marginXS,\n flexBasis: '100%',\n maxWidth: `calc(100% - ${token.modalConfirmIconSize + token.marginSM}px)`\n }\n },\n [`${confirmComponentCls}-content`]: {\n color: token.colorText,\n fontSize: token.fontSize\n },\n [`> ${token.iconCls}`]: {\n flex: 'none',\n marginInlineEnd: token.marginSM,\n fontSize: token.modalConfirmIconSize,\n [`+ ${confirmComponentCls}-title`]: {\n flex: 1\n },\n // `content` after `icon` should set marginLeft\n [`+ ${confirmComponentCls}-title + ${confirmComponentCls}-content`]: {\n marginInlineStart: token.modalConfirmIconSize + token.marginSM\n }\n }\n },\n [`${confirmComponentCls}-btns`]: {\n textAlign: 'end',\n marginTop: token.marginSM,\n [`${token.antCls}-btn + ${token.antCls}-btn`]: {\n marginBottom: 0,\n marginInlineStart: token.marginXS\n }\n }\n },\n [`${confirmComponentCls}-error ${confirmComponentCls}-body > ${token.iconCls}`]: {\n color: token.colorError\n },\n [`${confirmComponentCls}-warning ${confirmComponentCls}-body > ${token.iconCls},\n ${confirmComponentCls}-confirm ${confirmComponentCls}-body > ${token.iconCls}`]: {\n color: token.colorWarning\n },\n [`${confirmComponentCls}-info ${confirmComponentCls}-body > ${token.iconCls}`]: {\n color: token.colorInfo\n },\n [`${confirmComponentCls}-success ${confirmComponentCls}-body > ${token.iconCls}`]: {\n color: token.colorSuccess\n }\n };\n};\nconst genRTLStyle = token => {\n const {\n componentCls\n } = token;\n return {\n [`${componentCls}-root`]: {\n [`${componentCls}-wrap-rtl`]: {\n direction: 'rtl',\n [`${componentCls}-confirm-body`]: {\n direction: 'rtl'\n }\n }\n }\n };\n};\nconst genWireframeStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n const confirmComponentCls = `${componentCls}-confirm`;\n return {\n [componentCls]: {\n [`${componentCls}-content`]: {\n padding: 0\n },\n [`${componentCls}-header`]: {\n padding: token.modalHeaderPadding,\n borderBottom: `${token.modalHeaderBorderWidth}px ${token.modalHeaderBorderStyle} ${token.modalHeaderBorderColorSplit}`,\n marginBottom: 0\n },\n [`${componentCls}-body`]: {\n padding: token.modalBodyPadding\n },\n [`${componentCls}-footer`]: {\n padding: `${token.modalFooterPaddingVertical}px ${token.modalFooterPaddingHorizontal}px`,\n borderTop: `${token.modalFooterBorderWidth}px ${token.modalFooterBorderStyle} ${token.modalFooterBorderColorSplit}`,\n borderRadius: `0 0 ${token.borderRadiusLG}px ${token.borderRadiusLG}px`,\n marginTop: 0\n }\n },\n [confirmComponentCls]: {\n [`${antCls}-modal-body`]: {\n padding: `${token.padding * 2}px ${token.padding * 2}px ${token.paddingLG}px`\n },\n [`${confirmComponentCls}-body`]: {\n [`> ${token.iconCls}`]: {\n marginInlineEnd: token.margin,\n // `content` after `icon` should set marginLeft\n [`+ ${confirmComponentCls}-title + ${confirmComponentCls}-content`]: {\n marginInlineStart: token.modalConfirmIconSize + token.margin\n }\n }\n },\n [`${confirmComponentCls}-btns`]: {\n marginTop: token.marginLG\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Modal', token => {\n const headerPaddingVertical = token.padding;\n const headerFontSize = token.fontSizeHeading5;\n const headerLineHeight = token.lineHeightHeading5;\n const modalToken = mergeToken(token, {\n modalBodyPadding: token.paddingLG,\n modalHeaderBg: token.colorBgElevated,\n modalHeaderPadding: `${headerPaddingVertical}px ${token.paddingLG}px`,\n modalHeaderBorderWidth: token.lineWidth,\n modalHeaderBorderStyle: token.lineType,\n modalHeaderTitleLineHeight: headerLineHeight,\n modalHeaderTitleFontSize: headerFontSize,\n modalHeaderBorderColorSplit: token.colorSplit,\n modalHeaderCloseSize: headerLineHeight * headerFontSize + headerPaddingVertical * 2,\n modalContentBg: token.colorBgElevated,\n modalHeadingColor: token.colorTextHeading,\n modalCloseColor: token.colorTextDescription,\n modalFooterBg: 'transparent',\n modalFooterBorderColorSplit: token.colorSplit,\n modalFooterBorderStyle: token.lineType,\n modalFooterPaddingVertical: token.paddingXS,\n modalFooterPaddingHorizontal: token.padding,\n modalFooterBorderWidth: token.lineWidth,\n modalConfirmTitleFontSize: token.fontSizeLG,\n modalIconHoverColor: token.colorIconHover,\n modalConfirmIconSize: token.fontSize * token.lineHeight,\n modalCloseBtnSize: token.controlHeightLG * 0.55\n });\n return [genModalStyle(modalToken), genModalConfirmStyle(modalToken), genRTLStyle(modalToken), genModalMaskStyle(modalToken), token.wireframe && genWireframeStyle(modalToken), initZoomMotion(modalToken, 'zoom')];\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\n/* eslint-disable react/jsx-no-useless-fragment */\nimport CloseOutlined from \"@ant-design/icons/es/icons/CloseOutlined\";\nimport classNames from 'classnames';\nimport { Panel } from 'rc-dialog';\nimport * as React from 'react';\nimport Button from '../button';\nimport { convertLegacyProps } from '../button/button';\nimport { ConfigContext } from '../config-provider';\nimport useLocale from '../locale/useLocale';\nimport { ConfirmContent } from './ConfirmDialog';\nimport { getConfirmLocale } from './locale';\nimport useStyle from './style';\nexport function renderCloseIcon(prefixCls, closeIcon) {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-close-x`\n }, closeIcon || /*#__PURE__*/React.createElement(CloseOutlined, {\n className: `${prefixCls}-close-icon`\n }));\n}\nexport const Footer = props => {\n const {\n okText,\n okType = 'primary',\n cancelText,\n confirmLoading,\n onOk,\n onCancel,\n okButtonProps,\n cancelButtonProps\n } = props;\n const [locale] = useLocale('Modal', getConfirmLocale());\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Button, Object.assign({\n onClick: onCancel\n }, cancelButtonProps), cancelText || (locale === null || locale === void 0 ? void 0 : locale.cancelText)), /*#__PURE__*/React.createElement(Button, Object.assign({}, convertLegacyProps(okType), {\n loading: confirmLoading,\n onClick: onOk\n }, okButtonProps), okText || (locale === null || locale === void 0 ? void 0 : locale.okText)));\n};\nconst PurePanel = props => {\n const {\n prefixCls: customizePrefixCls,\n className,\n closeIcon,\n closable,\n type,\n title,\n children\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"closeIcon\", \"closable\", \"type\", \"title\", \"children\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const rootPrefixCls = getPrefixCls();\n const prefixCls = customizePrefixCls || getPrefixCls('modal');\n const [, hashId] = useStyle(prefixCls);\n const confirmPrefixCls = `${prefixCls}-confirm`;\n // Choose target props by confirm mark\n let additionalProps = {};\n if (type) {\n additionalProps = {\n closable: closable !== null && closable !== void 0 ? closable : false,\n title: '',\n footer: '',\n children: /*#__PURE__*/React.createElement(ConfirmContent, Object.assign({}, props, {\n confirmPrefixCls: confirmPrefixCls,\n rootPrefixCls: rootPrefixCls,\n content: children\n }))\n };\n } else {\n additionalProps = {\n closable: closable !== null && closable !== void 0 ? closable : true,\n title,\n footer: props.footer === undefined ? /*#__PURE__*/React.createElement(Footer, Object.assign({}, props)) : props.footer,\n children\n };\n }\n return /*#__PURE__*/React.createElement(Panel, Object.assign({\n prefixCls: prefixCls,\n className: classNames(hashId, `${prefixCls}-pure-panel`, type && confirmPrefixCls, type && `${confirmPrefixCls}-${type}`, className)\n }, restProps, {\n closeIcon: renderCloseIcon(prefixCls, closeIcon),\n closable: closable\n }, additionalProps));\n};\nexport default PurePanel;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport Dialog from 'rc-dialog';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { NoFormStyle } from '../form/context';\nimport { NoCompactStyle } from '../space/Compact';\nimport { getTransitionName } from '../_util/motion';\nimport { canUseDocElement } from '../_util/styleChecker';\nimport warning from '../_util/warning';\nimport { Footer, renderCloseIcon } from './PurePanel';\nimport useStyle from './style';\nlet mousePosition;\n// ref: https://github.com/ant-design/ant-design/issues/15795\nconst getClickPosition = e => {\n mousePosition = {\n x: e.pageX,\n y: e.pageY\n };\n // 100ms 内发生过点击事件,则从点击位置动画展示\n // 否则直接 zoom 展示\n // 这样可以兼容非点击方式展开\n setTimeout(() => {\n mousePosition = null;\n }, 100);\n};\n// 只有点击事件支持从鼠标位置动画展开\nif (canUseDocElement()) {\n document.documentElement.addEventListener('click', getClickPosition, true);\n}\nconst Modal = props => {\n var _a;\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const handleCancel = e => {\n const {\n onCancel\n } = props;\n onCancel === null || onCancel === void 0 ? void 0 : onCancel(e);\n };\n const handleOk = e => {\n const {\n onOk\n } = props;\n onOk === null || onOk === void 0 ? void 0 : onOk(e);\n };\n process.env.NODE_ENV !== \"production\" ? warning(!('visible' in props), 'Modal', `\\`visible\\` will be removed in next major version, please use \\`open\\` instead.`) : void 0;\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n open,\n wrapClassName,\n centered,\n getContainer,\n closeIcon,\n focusTriggerAfterClose = true,\n // Deprecated\n visible,\n width = 520,\n footer\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"rootClassName\", \"open\", \"wrapClassName\", \"centered\", \"getContainer\", \"closeIcon\", \"focusTriggerAfterClose\", \"visible\", \"width\", \"footer\"]);\n const prefixCls = getPrefixCls('modal', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n // Style\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const wrapClassNameExtended = classNames(wrapClassName, {\n [`${prefixCls}-centered`]: !!centered,\n [`${prefixCls}-wrap-rtl`]: direction === 'rtl'\n });\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(!('visible' in props), 'Modal', '`visible` is deprecated, please use `open` instead.') : void 0;\n }\n const dialogFooter = footer === undefined ? /*#__PURE__*/React.createElement(Footer, Object.assign({}, props, {\n onOk: handleOk,\n onCancel: handleCancel\n })) : footer;\n return wrapSSR( /*#__PURE__*/React.createElement(NoCompactStyle, null, /*#__PURE__*/React.createElement(NoFormStyle, {\n status: true,\n override: true\n }, /*#__PURE__*/React.createElement(Dialog, Object.assign({\n width: width\n }, restProps, {\n getContainer: getContainer === undefined ? getContextPopupContainer : getContainer,\n prefixCls: prefixCls,\n rootClassName: classNames(hashId, rootClassName),\n wrapClassName: wrapClassNameExtended,\n footer: dialogFooter,\n visible: open !== null && open !== void 0 ? open : visible,\n mousePosition: (_a = restProps.mousePosition) !== null && _a !== void 0 ? _a : mousePosition,\n onClose: handleCancel,\n closeIcon: renderCloseIcon(prefixCls, closeIcon),\n focusTriggerAfterClose: focusTriggerAfterClose,\n transitionName: getTransitionName(rootPrefixCls, 'zoom', props.transitionName),\n maskTransitionName: getTransitionName(rootPrefixCls, 'fade', props.maskTransitionName),\n className: classNames(hashId, className)\n })))));\n};\nexport default Modal;","import CheckCircleFilled from \"@ant-design/icons/es/icons/CheckCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport ExclamationCircleFilled from \"@ant-design/icons/es/icons/ExclamationCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons/es/icons/InfoCircleFilled\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport ConfigProvider from '../config-provider';\nimport useLocale from '../locale/useLocale';\nimport ActionButton from '../_util/ActionButton';\nimport { getTransitionName } from '../_util/motion';\nimport warning from '../_util/warning';\nimport Dialog from './Modal';\nexport function ConfirmContent(props) {\n const {\n icon,\n onCancel,\n onOk,\n close,\n okText,\n okButtonProps,\n cancelText,\n cancelButtonProps,\n confirmPrefixCls,\n rootPrefixCls,\n type,\n okCancel,\n footer,\n // Legacy for static function usage\n locale: staticLocale\n } = props;\n process.env.NODE_ENV !== \"production\" ? warning(!(typeof icon === 'string' && icon.length > 2), 'Modal', `\\`icon\\` is using ReactNode instead of string naming in v4. Please check \\`${icon}\\` at https://ant.design/components/icon`) : void 0;\n // Icon\n let mergedIcon = icon;\n // 支持传入{ icon: null }来隐藏`Modal.confirm`默认的Icon\n if (!icon && icon !== null) {\n switch (type) {\n case 'info':\n mergedIcon = /*#__PURE__*/React.createElement(InfoCircleFilled, null);\n break;\n case 'success':\n mergedIcon = /*#__PURE__*/React.createElement(CheckCircleFilled, null);\n break;\n case 'error':\n mergedIcon = /*#__PURE__*/React.createElement(CloseCircleFilled, null);\n break;\n default:\n mergedIcon = /*#__PURE__*/React.createElement(ExclamationCircleFilled, null);\n }\n }\n const okType = props.okType || 'primary';\n // 默认为 true,保持向下兼容\n const mergedOkCancel = okCancel !== null && okCancel !== void 0 ? okCancel : type === 'confirm';\n const autoFocusButton = props.autoFocusButton === null ? false : props.autoFocusButton || 'ok';\n const [locale] = useLocale('Modal');\n const mergedLocale = staticLocale || locale;\n const cancelButton = mergedOkCancel && /*#__PURE__*/React.createElement(ActionButton, {\n actionFn: onCancel,\n close: close,\n autoFocus: autoFocusButton === 'cancel',\n buttonProps: cancelButtonProps,\n prefixCls: `${rootPrefixCls}-btn`\n }, cancelText || (mergedLocale === null || mergedLocale === void 0 ? void 0 : mergedLocale.cancelText));\n return /*#__PURE__*/React.createElement(\"div\", {\n className: `${confirmPrefixCls}-body-wrapper`\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: `${confirmPrefixCls}-body`\n }, mergedIcon, props.title === undefined ? null : /*#__PURE__*/React.createElement(\"span\", {\n className: `${confirmPrefixCls}-title`\n }, props.title), /*#__PURE__*/React.createElement(\"div\", {\n className: `${confirmPrefixCls}-content`\n }, props.content)), footer === undefined ? /*#__PURE__*/React.createElement(\"div\", {\n className: `${confirmPrefixCls}-btns`\n }, cancelButton, /*#__PURE__*/React.createElement(ActionButton, {\n type: okType,\n actionFn: onOk,\n close: close,\n autoFocus: autoFocusButton === 'ok',\n buttonProps: okButtonProps,\n prefixCls: `${rootPrefixCls}-btn`\n }, okText || (mergedOkCancel ? mergedLocale === null || mergedLocale === void 0 ? void 0 : mergedLocale.okText : mergedLocale === null || mergedLocale === void 0 ? void 0 : mergedLocale.justOkText))) : footer);\n}\nconst ConfirmDialog = props => {\n const {\n close,\n zIndex,\n afterClose,\n visible,\n open,\n keyboard,\n centered,\n getContainer,\n maskStyle,\n direction,\n prefixCls,\n wrapClassName,\n rootPrefixCls,\n iconPrefixCls,\n bodyStyle,\n closable = false,\n closeIcon,\n modalRender,\n focusTriggerAfterClose\n } = props;\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(visible === undefined, 'Modal', `\\`visible\\` is deprecated, please use \\`open\\` instead.`) : void 0;\n }\n const confirmPrefixCls = `${prefixCls}-confirm`;\n const width = props.width || 416;\n const style = props.style || {};\n const mask = props.mask === undefined ? true : props.mask;\n // 默认为 false,保持旧版默认行为\n const maskClosable = props.maskClosable === undefined ? false : props.maskClosable;\n const classString = classNames(confirmPrefixCls, `${confirmPrefixCls}-${props.type}`, {\n [`${confirmPrefixCls}-rtl`]: direction === 'rtl'\n }, props.className);\n return /*#__PURE__*/React.createElement(ConfigProvider, {\n prefixCls: rootPrefixCls,\n iconPrefixCls: iconPrefixCls,\n direction: direction\n }, /*#__PURE__*/React.createElement(Dialog, {\n prefixCls: prefixCls,\n className: classString,\n wrapClassName: classNames({\n [`${confirmPrefixCls}-centered`]: !!props.centered\n }, wrapClassName),\n onCancel: () => close === null || close === void 0 ? void 0 : close({\n triggerCancel: true\n }),\n open: open,\n title: \"\",\n footer: null,\n transitionName: getTransitionName(rootPrefixCls, 'zoom', props.transitionName),\n maskTransitionName: getTransitionName(rootPrefixCls, 'fade', props.maskTransitionName),\n mask: mask,\n maskClosable: maskClosable,\n maskStyle: maskStyle,\n style: style,\n bodyStyle: bodyStyle,\n width: width,\n zIndex: zIndex,\n afterClose: afterClose,\n keyboard: keyboard,\n centered: centered,\n getContainer: getContainer,\n closable: closable,\n closeIcon: closeIcon,\n modalRender: modalRender,\n focusTriggerAfterClose: focusTriggerAfterClose\n }, /*#__PURE__*/React.createElement(ConfirmContent, Object.assign({}, props, {\n confirmPrefixCls: confirmPrefixCls\n }))));\n};\nif (process.env.NODE_ENV !== 'production') {\n ConfirmDialog.displayName = 'ConfirmDialog';\n}\nexport default ConfirmDialog;","const destroyFns = [];\nexport default destroyFns;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { render as reactRender, unmount as reactUnmount } from \"rc-util/es/React/render\";\nimport * as React from 'react';\nimport { globalConfig, warnContext } from '../config-provider';\nimport warning from '../_util/warning';\nimport ConfirmDialog from './ConfirmDialog';\nimport destroyFns from './destroyFns';\nimport { getConfirmLocale } from './locale';\nlet defaultRootPrefixCls = '';\nfunction getRootPrefixCls() {\n return defaultRootPrefixCls;\n}\nexport default function confirm(config) {\n // Warning if exist theme\n if (process.env.NODE_ENV !== 'production') {\n warnContext('Modal');\n }\n const container = document.createDocumentFragment();\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n let currentConfig = Object.assign(Object.assign({}, config), {\n close,\n open: true\n });\n let timeoutId;\n function destroy() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n const triggerCancel = args.some(param => param && param.triggerCancel);\n if (config.onCancel && triggerCancel) {\n config.onCancel.apply(config, [() => {}].concat(_toConsumableArray(args.slice(1))));\n }\n for (let i = 0; i < destroyFns.length; i++) {\n const fn = destroyFns[i];\n // eslint-disable-next-line @typescript-eslint/no-use-before-define\n if (fn === close) {\n destroyFns.splice(i, 1);\n break;\n }\n }\n reactUnmount(container);\n }\n function render(_a) {\n var {\n okText,\n cancelText,\n prefixCls: customizePrefixCls\n } = _a,\n props = __rest(_a, [\"okText\", \"cancelText\", \"prefixCls\"]);\n clearTimeout(timeoutId);\n /**\n * https://github.com/ant-design/ant-design/issues/23623\n *\n * Sync render blocks React event. Let's make this async.\n */\n timeoutId = setTimeout(() => {\n const runtimeLocale = getConfirmLocale();\n const {\n getPrefixCls,\n getIconPrefixCls\n } = globalConfig();\n // because Modal.config \b set rootPrefixCls, which is different from other components\n const rootPrefixCls = getPrefixCls(undefined, getRootPrefixCls());\n const prefixCls = customizePrefixCls || `${rootPrefixCls}-modal`;\n const iconPrefixCls = getIconPrefixCls();\n reactRender( /*#__PURE__*/React.createElement(ConfirmDialog, Object.assign({}, props, {\n prefixCls: prefixCls,\n rootPrefixCls: rootPrefixCls,\n iconPrefixCls: iconPrefixCls,\n okText: okText,\n locale: runtimeLocale,\n cancelText: cancelText || runtimeLocale.cancelText\n })), container);\n });\n }\n function close() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n currentConfig = Object.assign(Object.assign({}, currentConfig), {\n open: false,\n afterClose: () => {\n if (typeof config.afterClose === 'function') {\n config.afterClose();\n }\n destroy.apply(this, args);\n }\n });\n // Legacy support\n if (currentConfig.visible) {\n delete currentConfig.visible;\n }\n render(currentConfig);\n }\n function update(configUpdate) {\n if (typeof configUpdate === 'function') {\n currentConfig = configUpdate(currentConfig);\n } else {\n currentConfig = Object.assign(Object.assign({}, currentConfig), configUpdate);\n }\n render(currentConfig);\n }\n render(currentConfig);\n destroyFns.push(close);\n return {\n destroy: close,\n update\n };\n}\nexport function withWarn(props) {\n return Object.assign(Object.assign({}, props), {\n type: 'warning'\n });\n}\nexport function withInfo(props) {\n return Object.assign(Object.assign({}, props), {\n type: 'info'\n });\n}\nexport function withSuccess(props) {\n return Object.assign(Object.assign({}, props), {\n type: 'success'\n });\n}\nexport function withError(props) {\n return Object.assign(Object.assign({}, props), {\n type: 'error'\n });\n}\nexport function withConfirm(props) {\n return Object.assign(Object.assign({}, props), {\n type: 'confirm'\n });\n}\nexport function modalGlobalConfig(_ref) {\n let {\n rootPrefixCls\n } = _ref;\n process.env.NODE_ENV !== \"production\" ? warning(false, 'Modal', 'Modal.config is deprecated. Please use ConfigProvider.config instead.') : void 0;\n defaultRootPrefixCls = rootPrefixCls;\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport { ConfigContext } from '../../config-provider';\nimport defaultLocale from '../../locale/en_US';\nimport useLocale from '../../locale/useLocale';\nimport ConfirmDialog from '../ConfirmDialog';\nconst HookModal = (_ref, ref) => {\n let {\n afterClose,\n config\n } = _ref;\n var _a;\n const [open, setOpen] = React.useState(true);\n const [innerConfig, setInnerConfig] = React.useState(config);\n const {\n direction,\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('modal');\n const rootPrefixCls = getPrefixCls();\n const close = function () {\n setOpen(false);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n const triggerCancel = args.some(param => param && param.triggerCancel);\n if (innerConfig.onCancel && triggerCancel) {\n innerConfig.onCancel.apply(innerConfig, [() => {}].concat(_toConsumableArray(args.slice(1))));\n }\n };\n React.useImperativeHandle(ref, () => ({\n destroy: close,\n update: newConfig => {\n setInnerConfig(originConfig => Object.assign(Object.assign({}, originConfig), newConfig));\n }\n }));\n const mergedOkCancel = (_a = innerConfig.okCancel) !== null && _a !== void 0 ? _a : innerConfig.type === 'confirm';\n const [contextLocale] = useLocale('Modal', defaultLocale.Modal);\n return /*#__PURE__*/React.createElement(ConfirmDialog, Object.assign({\n prefixCls: prefixCls,\n rootPrefixCls: rootPrefixCls\n }, innerConfig, {\n close: close,\n open: open,\n afterClose: afterClose,\n okText: innerConfig.okText || (mergedOkCancel ? contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.okText : contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.justOkText),\n direction: direction,\n cancelText: innerConfig.cancelText || (contextLocale === null || contextLocale === void 0 ? void 0 : contextLocale.cancelText)\n }));\n};\nexport default /*#__PURE__*/React.forwardRef(HookModal);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nimport usePatchElement from '../../_util/hooks/usePatchElement';\nimport { withConfirm, withError, withInfo, withSuccess, withWarn } from '../confirm';\nimport HookModal from './HookModal';\nimport destroyFns from '../destroyFns';\nlet uuid = 0;\nconst ElementsHolder = /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef((_props, ref) => {\n const [elements, patchElement] = usePatchElement();\n React.useImperativeHandle(ref, () => ({\n patchElement\n }), []);\n // eslint-disable-next-line react/jsx-no-useless-fragment\n return /*#__PURE__*/React.createElement(React.Fragment, null, elements);\n}));\nfunction useModal() {\n const holderRef = React.useRef(null);\n // ========================== Effect ==========================\n const [actionQueue, setActionQueue] = React.useState([]);\n React.useEffect(() => {\n if (actionQueue.length) {\n const cloneQueue = _toConsumableArray(actionQueue);\n cloneQueue.forEach(action => {\n action();\n });\n setActionQueue([]);\n }\n }, [actionQueue]);\n // =========================== Hook ===========================\n const getConfirmFunc = React.useCallback(withFunc => function hookConfirm(config) {\n var _a;\n uuid += 1;\n const modalRef = /*#__PURE__*/React.createRef();\n let closeFunc;\n const modal = /*#__PURE__*/React.createElement(HookModal, {\n key: `modal-${uuid}`,\n config: withFunc(config),\n ref: modalRef,\n afterClose: () => {\n closeFunc === null || closeFunc === void 0 ? void 0 : closeFunc();\n }\n });\n closeFunc = (_a = holderRef.current) === null || _a === void 0 ? void 0 : _a.patchElement(modal);\n if (closeFunc) {\n destroyFns.push(closeFunc);\n }\n return {\n destroy: () => {\n function destroyAction() {\n var _a;\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.destroy();\n }\n if (modalRef.current) {\n destroyAction();\n } else {\n setActionQueue(prev => [].concat(_toConsumableArray(prev), [destroyAction]));\n }\n },\n update: newConfig => {\n function updateAction() {\n var _a;\n (_a = modalRef.current) === null || _a === void 0 ? void 0 : _a.update(newConfig);\n }\n if (modalRef.current) {\n updateAction();\n } else {\n setActionQueue(prev => [].concat(_toConsumableArray(prev), [updateAction]));\n }\n }\n };\n }, []);\n const fns = React.useMemo(() => ({\n info: getConfirmFunc(withInfo),\n success: getConfirmFunc(withSuccess),\n error: getConfirmFunc(withError),\n warning: getConfirmFunc(withWarn),\n confirm: getConfirmFunc(withConfirm)\n }), []);\n return [fns, /*#__PURE__*/React.createElement(ElementsHolder, {\n key: \"modal-holder\",\n ref: holderRef\n })];\n}\nexport default useModal;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nexport default function usePatchElement() {\n const [elements, setElements] = React.useState([]);\n const patchElement = React.useCallback(element => {\n // append a new element to elements (and create a new ref)\n setElements(originElements => [].concat(_toConsumableArray(originElements), [element]));\n // return a function that removes the new element out of elements (and create a new ref)\n // it works a little like useEffect\n return () => {\n setElements(originElements => originElements.filter(ele => ele !== element));\n };\n }, []);\n return [elements, patchElement];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"./useEvent\";\nimport { useLayoutUpdateEffect } from \"./useLayoutEffect\";\nimport useState from \"./useState\";\n/** We only think `undefined` is empty */\nfunction hasValue(value) {\n return value !== undefined;\n}\n\n/**\n * Similar to `useState` but will use props value if provided.\n * Note that internal use rc-util `useState` hook.\n */\nexport default function useMergedState(defaultStateValue, option) {\n var _ref = option || {},\n defaultValue = _ref.defaultValue,\n value = _ref.value,\n onChange = _ref.onChange,\n postState = _ref.postState;\n\n // ======================= Init =======================\n var _useState = useState(function () {\n if (hasValue(value)) {\n return value;\n } else if (hasValue(defaultValue)) {\n return typeof defaultValue === 'function' ? defaultValue() : defaultValue;\n } else {\n return typeof defaultStateValue === 'function' ? defaultStateValue() : defaultStateValue;\n }\n }),\n _useState2 = _slicedToArray(_useState, 2),\n innerValue = _useState2[0],\n setInnerValue = _useState2[1];\n var mergedValue = value !== undefined ? value : innerValue;\n var postMergedValue = postState ? postState(mergedValue) : mergedValue;\n\n // ====================== Change ======================\n var onChangeFn = useEvent(onChange);\n var _useState3 = useState([mergedValue]),\n _useState4 = _slicedToArray(_useState3, 2),\n prevValue = _useState4[0],\n setPrevValue = _useState4[1];\n useLayoutUpdateEffect(function () {\n var prev = prevValue[0];\n if (innerValue !== prev) {\n onChangeFn(innerValue, prev);\n }\n }, [prevValue]);\n\n // Sync value back to `undefined` when it from control to un-control\n useLayoutUpdateEffect(function () {\n if (!hasValue(value)) {\n setInnerValue(value);\n }\n }, [value]);\n\n // ====================== Update ======================\n var triggerChange = useEvent(function (updater, ignoreDestroy) {\n setInnerValue(updater, ignoreDestroy);\n setPrevValue([mergedValue], ignoreDestroy);\n });\n return [postMergedValue, triggerChange];\n}","export default (function () {\n if (typeof navigator === 'undefined' || typeof window === 'undefined') {\n return false;\n }\n var agent = navigator.userAgent || navigator.vendor || window.opera;\n return /(android|bb\\d+|meego).+mobile|avantgo|bada\\/|blackberry|blazer|compal|elaine|fennec|hiptop|iemobile|ip(hone|od)|iris|kindle|lge |maemo|midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\.(browser|link)|vodafone|wap|windows ce|xda|xiino|android|ipad|playbook|silk/i.test(agent) || /1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s-)|ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|-m|r |s )|avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw-(n|u)|c55\\/|capi|ccwa|cdm-|cell|chtm|cldc|cmd-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc-s|devi|dica|dmob|do(c|p)o|ds(12|-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(-|_)|g1 u|g560|gene|gf-5|g-mo|go(\\.w|od)|gr(ad|un)|haie|hcit|hd-(m|p|t)|hei-|hi(pt|ta)|hp( i|ip)|hs-c|ht(c(-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i-(20|go|ma)|i230|iac( |-|\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|kddi|keji|kgt( |\\/)|klon|kpt |kwc-|kyo(c|k)|le(no|xi)|lg( g|\\/(k|l|u)|50|54|-[a-w])|libw|lynx|m1-w|m3ga|m50\\/|ma(te|ui|xo)|mc(01|21|ca)|m-cr|me(rc|ri)|mi(o8|oa|ts)|mmef|mo(01|02|bi|de|do|t(-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|-([1-8]|c))|phil|pire|pl(ay|uc)|pn-2|po(ck|rt|se)|prox|psio|pt-g|qa-a|qc(07|12|21|32|60|-[2-7]|i-)|qtek|r380|r600|raks|rim9|ro(ve|zo)|s55\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h-|oo|p-)|sdk\\/|se(c(-|0|1)|47|mc|nd|ri)|sgh-|shar|sie(-|m)|sk-0|sl(45|id)|sm(al|ar|b3|it|t5)|so(ft|ny)|sp(01|h-|v-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl-|tdg-|tel(i|m)|tim-|t-mo|to(pl|sh)|ts(70|m-|m3|m5)|tx-9|up(\\.b|g1|si)|utst|v400|v750|veri|vi(rg|te)|vk(40|5[0-3]|-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|w3c(-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas-|your|zeto|zte-/i.test(agent === null || agent === void 0 ? void 0 : agent.substr(0, 4));\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"invalidate\", \"item\", \"renderItem\", \"responsive\", \"responsiveDisabled\", \"registerSize\", \"itemKey\", \"className\", \"style\", \"children\", \"display\", \"order\", \"component\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\n// Use shared variable to save bundle size\nvar UNDEFINED = undefined;\nfunction InternalItem(props, ref) {\n var prefixCls = props.prefixCls,\n invalidate = props.invalidate,\n item = props.item,\n renderItem = props.renderItem,\n responsive = props.responsive,\n responsiveDisabled = props.responsiveDisabled,\n registerSize = props.registerSize,\n itemKey = props.itemKey,\n className = props.className,\n style = props.style,\n children = props.children,\n display = props.display,\n order = props.order,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedHidden = responsive && !display;\n // ================================ Effect ================================\n function internalRegisterSize(width) {\n registerSize(itemKey, width);\n }\n React.useEffect(function () {\n return function () {\n internalRegisterSize(null);\n };\n }, []);\n // ================================ Render ================================\n var childNode = renderItem && item !== UNDEFINED ? renderItem(item) : children;\n var overflowStyle;\n if (!invalidate) {\n overflowStyle = {\n opacity: mergedHidden ? 0 : 1,\n height: mergedHidden ? 0 : UNDEFINED,\n overflowY: mergedHidden ? 'hidden' : UNDEFINED,\n order: responsive ? order : UNDEFINED,\n pointerEvents: mergedHidden ? 'none' : UNDEFINED,\n position: mergedHidden ? 'absolute' : UNDEFINED\n };\n }\n var overflowProps = {};\n if (mergedHidden) {\n overflowProps['aria-hidden'] = true;\n }\n var itemNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: _objectSpread(_objectSpread({}, overflowStyle), style)\n }, overflowProps, restProps, {\n ref: ref\n }), childNode);\n if (responsive) {\n itemNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref) {\n var offsetWidth = _ref.offsetWidth;\n internalRegisterSize(offsetWidth);\n },\n disabled: responsiveDisabled\n }, itemNode);\n }\n return itemNode;\n}\nvar Item = /*#__PURE__*/React.forwardRef(InternalItem);\nItem.displayName = 'Item';\nexport default Item;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport * as React from 'react';\nimport { unstable_batchedUpdates } from 'react-dom';\nimport channelUpdate from './channelUpdate';\n/**\n * Batcher for record any `useEffectState` need update.\n */\nexport function useBatcher() {\n // Updater Trigger\n var updateFuncRef = React.useRef(null);\n // Notify update\n var notifyEffectUpdate = function notifyEffectUpdate(callback) {\n if (!updateFuncRef.current) {\n updateFuncRef.current = [];\n channelUpdate(function () {\n unstable_batchedUpdates(function () {\n updateFuncRef.current.forEach(function (fn) {\n fn();\n });\n updateFuncRef.current = null;\n });\n });\n }\n updateFuncRef.current.push(callback);\n };\n return notifyEffectUpdate;\n}\n/**\n * Trigger state update by `useLayoutEffect` to save perf.\n */\nexport default function useEffectState(notifyEffectUpdate, defaultValue) {\n // Value\n var _React$useState = React.useState(defaultValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n stateValue = _React$useState2[0],\n setStateValue = _React$useState2[1];\n // Set State\n var setEffectVal = useEvent(function (nextValue) {\n notifyEffectUpdate(function () {\n setStateValue(nextValue);\n });\n });\n return [stateValue, setEffectVal];\n}","import raf from \"rc-util/es/raf\";\nexport default function channelUpdate(callback) {\n if (typeof MessageChannel === 'undefined') {\n raf(callback);\n } else {\n var channel = new MessageChannel();\n channel.port1.onmessage = function () {\n return callback();\n };\n channel.port2.postMessage(undefined);\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"component\"],\n _excluded2 = [\"className\"],\n _excluded3 = [\"className\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Item from './Item';\nimport { OverflowContext } from './Overflow';\nvar InternalRawItem = function InternalRawItem(props, ref) {\n var context = React.useContext(OverflowContext);\n // Render directly when context not provided\n if (!context) {\n var _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n _restProps = _objectWithoutProperties(props, _excluded);\n return /*#__PURE__*/React.createElement(Component, _extends({}, _restProps, {\n ref: ref\n }));\n }\n var contextClassName = context.className,\n restContext = _objectWithoutProperties(context, _excluded2);\n var className = props.className,\n restProps = _objectWithoutProperties(props, _excluded3);\n // Do not pass context to sub item to avoid multiple measure\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: null\n }, /*#__PURE__*/React.createElement(Item, _extends({\n ref: ref,\n className: classNames(contextClassName, className)\n }, restContext, restProps)));\n};\nvar RawItem = /*#__PURE__*/React.forwardRef(InternalRawItem);\nRawItem.displayName = 'RawItem';\nexport default RawItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"data\", \"renderItem\", \"renderRawItem\", \"itemKey\", \"itemWidth\", \"ssr\", \"style\", \"className\", \"maxCount\", \"renderRest\", \"renderRawRest\", \"suffix\", \"component\", \"itemComponent\", \"onVisibleChange\"];\nimport * as React from 'react';\nimport { useState, useMemo, useCallback } from 'react';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport Item from './Item';\nimport useEffectState, { useBatcher } from './hooks/useEffectState';\nimport RawItem from './RawItem';\nexport var OverflowContext = /*#__PURE__*/React.createContext(null);\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nfunction defaultRenderRest(omittedItems) {\n return \"+ \".concat(omittedItems.length, \" ...\");\n}\nfunction Overflow(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-overflow' : _props$prefixCls,\n _props$data = props.data,\n data = _props$data === void 0 ? [] : _props$data,\n renderItem = props.renderItem,\n renderRawItem = props.renderRawItem,\n itemKey = props.itemKey,\n _props$itemWidth = props.itemWidth,\n itemWidth = _props$itemWidth === void 0 ? 10 : _props$itemWidth,\n ssr = props.ssr,\n style = props.style,\n className = props.className,\n maxCount = props.maxCount,\n renderRest = props.renderRest,\n renderRawRest = props.renderRawRest,\n suffix = props.suffix,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n itemComponent = props.itemComponent,\n onVisibleChange = props.onVisibleChange,\n restProps = _objectWithoutProperties(props, _excluded);\n var fullySSR = ssr === 'full';\n var notifyEffectUpdate = useBatcher();\n var _useEffectState = useEffectState(notifyEffectUpdate, null),\n _useEffectState2 = _slicedToArray(_useEffectState, 2),\n containerWidth = _useEffectState2[0],\n setContainerWidth = _useEffectState2[1];\n var mergedContainerWidth = containerWidth || 0;\n var _useEffectState3 = useEffectState(notifyEffectUpdate, new Map()),\n _useEffectState4 = _slicedToArray(_useEffectState3, 2),\n itemWidths = _useEffectState4[0],\n setItemWidths = _useEffectState4[1];\n var _useEffectState5 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState6 = _slicedToArray(_useEffectState5, 2),\n prevRestWidth = _useEffectState6[0],\n setPrevRestWidth = _useEffectState6[1];\n var _useEffectState7 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState8 = _slicedToArray(_useEffectState7, 2),\n restWidth = _useEffectState8[0],\n setRestWidth = _useEffectState8[1];\n var _useEffectState9 = useEffectState(notifyEffectUpdate, 0),\n _useEffectState10 = _slicedToArray(_useEffectState9, 2),\n suffixWidth = _useEffectState10[0],\n setSuffixWidth = _useEffectState10[1];\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n suffixFixedStart = _useState2[0],\n setSuffixFixedStart = _useState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n displayCount = _useState4[0],\n setDisplayCount = _useState4[1];\n var mergedDisplayCount = React.useMemo(function () {\n if (displayCount === null && fullySSR) {\n return Number.MAX_SAFE_INTEGER;\n }\n return displayCount || 0;\n }, [displayCount, containerWidth]);\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n restReady = _useState6[0],\n setRestReady = _useState6[1];\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n // Always use the max width to avoid blink\n var mergedRestWidth = Math.max(prevRestWidth, restWidth);\n // ================================= Data =================================\n var isResponsive = maxCount === RESPONSIVE;\n var shouldResponsive = data.length && isResponsive;\n var invalidate = maxCount === INVALIDATE;\n /**\n * When is `responsive`, we will always render rest node to get the real width of it for calculation\n */\n var showRest = shouldResponsive || typeof maxCount === 'number' && data.length > maxCount;\n var mergedData = useMemo(function () {\n var items = data;\n if (shouldResponsive) {\n if (containerWidth === null && fullySSR) {\n items = data;\n } else {\n items = data.slice(0, Math.min(data.length, mergedContainerWidth / itemWidth));\n }\n } else if (typeof maxCount === 'number') {\n items = data.slice(0, maxCount);\n }\n return items;\n }, [data, itemWidth, containerWidth, maxCount, shouldResponsive]);\n var omittedItems = useMemo(function () {\n if (shouldResponsive) {\n return data.slice(mergedDisplayCount + 1);\n }\n return data.slice(mergedData.length);\n }, [data, mergedData, shouldResponsive, mergedDisplayCount]);\n // ================================= Item =================================\n var getKey = useCallback(function (item, index) {\n var _ref;\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return (_ref = itemKey && (item === null || item === void 0 ? void 0 : item[itemKey])) !== null && _ref !== void 0 ? _ref : index;\n }, [itemKey]);\n var mergedRenderItem = useCallback(renderItem || function (item) {\n return item;\n }, [renderItem]);\n function updateDisplayCount(count, suffixFixedStartVal, notReady) {\n // React 18 will sync render even when the value is same in some case.\n // We take `mergedData` as deps which may cause dead loop if it's dynamic generate.\n // ref: https://github.com/ant-design/ant-design/issues/36559\n if (displayCount === count && (suffixFixedStartVal === undefined || suffixFixedStartVal === suffixFixedStart)) {\n return;\n }\n setDisplayCount(count);\n if (!notReady) {\n setRestReady(count < data.length - 1);\n onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(count);\n }\n if (suffixFixedStartVal !== undefined) {\n setSuffixFixedStart(suffixFixedStartVal);\n }\n }\n // ================================= Size =================================\n function onOverflowResize(_, element) {\n setContainerWidth(element.clientWidth);\n }\n function registerSize(key, width) {\n setItemWidths(function (origin) {\n var clone = new Map(origin);\n if (width === null) {\n clone.delete(key);\n } else {\n clone.set(key, width);\n }\n return clone;\n });\n }\n function registerOverflowSize(_, width) {\n setRestWidth(width);\n setPrevRestWidth(restWidth);\n }\n function registerSuffixSize(_, width) {\n setSuffixWidth(width);\n }\n // ================================ Effect ================================\n function getItemWidth(index) {\n return itemWidths.get(getKey(mergedData[index], index));\n }\n useLayoutEffect(function () {\n if (mergedContainerWidth && typeof mergedRestWidth === 'number' && mergedData) {\n var totalWidth = suffixWidth;\n var len = mergedData.length;\n var lastIndex = len - 1;\n // When data count change to 0, reset this since not loop will reach\n if (!len) {\n updateDisplayCount(0, null);\n return;\n }\n for (var i = 0; i < len; i += 1) {\n var currentItemWidth = getItemWidth(i);\n // Fully will always render\n if (fullySSR) {\n currentItemWidth = currentItemWidth || 0;\n }\n // Break since data not ready\n if (currentItemWidth === undefined) {\n updateDisplayCount(i - 1, undefined, true);\n break;\n }\n // Find best match\n totalWidth += currentItemWidth;\n if (\n // Only one means `totalWidth` is the final width\n lastIndex === 0 && totalWidth <= mergedContainerWidth ||\n // Last two width will be the final width\n i === lastIndex - 1 && totalWidth + getItemWidth(lastIndex) <= mergedContainerWidth) {\n // Additional check if match the end\n updateDisplayCount(lastIndex, null);\n break;\n } else if (totalWidth + mergedRestWidth > mergedContainerWidth) {\n // Can not hold all the content to show rest\n updateDisplayCount(i - 1, totalWidth - currentItemWidth - suffixWidth + restWidth);\n break;\n }\n }\n if (suffix && getItemWidth(0) + suffixWidth > mergedContainerWidth) {\n setSuffixFixedStart(null);\n }\n }\n }, [mergedContainerWidth, itemWidths, restWidth, suffixWidth, getKey, mergedData]);\n // ================================ Render ================================\n var displayRest = restReady && !!omittedItems.length;\n var suffixStyle = {};\n if (suffixFixedStart !== null && shouldResponsive) {\n suffixStyle = {\n position: 'absolute',\n left: suffixFixedStart,\n top: 0\n };\n }\n var itemSharedProps = {\n prefixCls: itemPrefixCls,\n responsive: shouldResponsive,\n component: itemComponent,\n invalidate: invalidate\n };\n // >>>>> Choice render fun by `renderRawItem`\n var internalRenderItemNode = renderRawItem ? function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n key: key,\n value: _objectSpread(_objectSpread({}, itemSharedProps), {}, {\n order: index,\n item: item,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n })\n }, renderRawItem(item, index));\n } : function (item, index) {\n var key = getKey(item, index);\n return /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n order: index,\n key: key,\n item: item,\n renderItem: mergedRenderItem,\n itemKey: key,\n registerSize: registerSize,\n display: index <= mergedDisplayCount\n }));\n };\n // >>>>> Rest node\n var restNode;\n var restContextProps = {\n order: displayRest ? mergedDisplayCount : Number.MAX_SAFE_INTEGER,\n className: \"\".concat(itemPrefixCls, \"-rest\"),\n registerSize: registerOverflowSize,\n display: displayRest\n };\n if (!renderRawRest) {\n var mergedRenderRest = renderRest || defaultRenderRest;\n restNode = /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, restContextProps), typeof mergedRenderRest === 'function' ? mergedRenderRest(omittedItems) : mergedRenderRest);\n } else if (renderRawRest) {\n restNode = /*#__PURE__*/React.createElement(OverflowContext.Provider, {\n value: _objectSpread(_objectSpread({}, itemSharedProps), restContextProps)\n }, renderRawRest(omittedItems));\n }\n var overflowNode = /*#__PURE__*/React.createElement(Component, _extends({\n className: classNames(!invalidate && prefixCls, className),\n style: style,\n ref: ref\n }, restProps), mergedData.map(internalRenderItemNode), showRest ? restNode : null, suffix && /*#__PURE__*/React.createElement(Item, _extends({}, itemSharedProps, {\n responsive: isResponsive,\n responsiveDisabled: !shouldResponsive,\n order: mergedDisplayCount,\n className: \"\".concat(itemPrefixCls, \"-suffix\"),\n registerSize: registerSuffixSize,\n display: true,\n style: suffixStyle\n }), suffix));\n if (isResponsive) {\n overflowNode = /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onOverflowResize,\n disabled: !shouldResponsive\n }, overflowNode);\n }\n return overflowNode;\n}\nvar ForwardOverflow = /*#__PURE__*/React.forwardRef(Overflow);\nForwardOverflow.displayName = 'Overflow';\nForwardOverflow.Item = RawItem;\nForwardOverflow.RESPONSIVE = RESPONSIVE;\nForwardOverflow.INVALIDATE = INVALIDATE;\n// Convert to generic type\nexport default ForwardOverflow;","import * as React from 'react';\nvar TriggerContext = /*#__PURE__*/React.createContext(null);\nexport default TriggerContext;","import * as React from 'react';\nfunction toArray(val) {\n return val ? Array.isArray(val) ? val : [val] : [];\n}\nexport default function useAction(mobile, action, showAction, hideAction) {\n return React.useMemo(function () {\n var mergedShowAction = toArray(showAction !== null && showAction !== void 0 ? showAction : action);\n var mergedHideAction = toArray(hideAction !== null && hideAction !== void 0 ? hideAction : action);\n var showActionSet = new Set(mergedShowAction);\n var hideActionSet = new Set(mergedHideAction);\n if (mobile) {\n if (showActionSet.has('hover')) {\n showActionSet.delete('hover');\n showActionSet.add('click');\n }\n if (hideActionSet.has('hover')) {\n hideActionSet.delete('hover');\n hideActionSet.add('click');\n }\n }\n return [showActionSet, hideActionSet];\n }, [mobile, action, showAction, hideAction]);\n}","function isPointsEq() {\n var a1 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];\n var a2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var isAlignPoint = arguments.length > 2 ? arguments[2] : undefined;\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n var placements = Object.keys(builtinPlacements);\n for (var i = 0; i < placements.length; i += 1) {\n var _builtinPlacements$pl;\n var placement = placements[i];\n if (isPointsEq((_builtinPlacements$pl = builtinPlacements[placement]) === null || _builtinPlacements$pl === void 0 ? void 0 : _builtinPlacements$pl.points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n return '';\n}\n\n/** @deprecated We should not use this if we can refactor all deps */\nexport function getMotion(prefixCls, motion, animation, transitionName) {\n if (motion) {\n return motion;\n }\n if (animation) {\n return {\n motionName: \"\".concat(prefixCls, \"-\").concat(animation)\n };\n }\n if (transitionName) {\n return {\n motionName: transitionName\n };\n }\n return null;\n}\nexport function getWin(ele) {\n return ele.ownerDocument.defaultView;\n}\nexport function collectScroller(ele) {\n var scrollerList = [];\n var current = ele === null || ele === void 0 ? void 0 : ele.parentElement;\n var scrollStyle = ['hidden', 'scroll', 'auto'];\n while (current) {\n var _getWin$getComputedSt = getWin(current).getComputedStyle(current),\n overflowX = _getWin$getComputedSt.overflowX,\n overflowY = _getWin$getComputedSt.overflowY;\n if (scrollStyle.includes(overflowX) || scrollStyle.includes(overflowY)) {\n scrollerList.push(current);\n }\n current = current.parentElement;\n }\n return scrollerList;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { isDOM } from \"rc-util/es/Dom/findDOMNode\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport * as React from 'react';\nimport { collectScroller, getWin } from \"../util\";\nfunction toNum(num) {\n return Number.isNaN(num) ? 1 : num;\n}\nfunction splitPoints() {\n var points = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return [points[0], points[1]];\n}\nfunction getAlignPoint(rect, points) {\n var topBottom = points[0];\n var leftRight = points[1];\n var x;\n var y;\n\n // Top & Bottom\n if (topBottom === 't') {\n y = rect.y;\n } else if (topBottom === 'b') {\n y = rect.y + rect.height;\n } else {\n y = rect.y + rect.height / 2;\n }\n\n // Left & Right\n if (leftRight === 'l') {\n x = rect.x;\n } else if (leftRight === 'r') {\n x = rect.x + rect.width;\n } else {\n x = rect.x + rect.width / 2;\n }\n return {\n x: x,\n y: y\n };\n}\nfunction reversePoints(points, index) {\n var reverseMap = {\n t: 'b',\n b: 't',\n l: 'r',\n r: 'l'\n };\n return points.map(function (point, i) {\n if (i === index) {\n return reverseMap[point] || 'c';\n }\n return point;\n }).join('');\n}\nexport default function useAlign(open, popupEle, target, placement, builtinPlacements, popupAlign, onPopupAlign) {\n var _React$useState = React.useState({\n ready: false,\n offsetX: 0,\n offsetY: 0,\n arrowX: 0,\n arrowY: 0,\n scaleX: 1,\n scaleY: 1,\n align: builtinPlacements[placement] || {}\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n offsetInfo = _React$useState2[0],\n setOffsetInfo = _React$useState2[1];\n var alignCountRef = React.useRef(0);\n var scrollerList = React.useMemo(function () {\n if (!popupEle) {\n return [];\n }\n return collectScroller(popupEle);\n }, [popupEle]);\n\n // ========================= Align =========================\n var onAlign = useEvent(function () {\n if (popupEle && target && open) {\n var popupElement = popupEle;\n var originLeft = popupElement.style.left;\n var originTop = popupElement.style.top;\n var doc = popupElement.ownerDocument;\n var win = getWin(popupElement);\n\n // Placement\n var placementInfo = _objectSpread(_objectSpread({}, builtinPlacements[placement]), popupAlign);\n\n // Reset first\n popupElement.style.left = '0';\n popupElement.style.top = '0';\n\n // Calculate align style, we should consider `transform` case\n var targetRect;\n if (Array.isArray(target)) {\n targetRect = {\n x: target[0],\n y: target[1],\n width: 0,\n height: 0\n };\n } else {\n var rect = target.getBoundingClientRect();\n targetRect = {\n x: rect.x,\n y: rect.y,\n width: rect.width,\n height: rect.height\n };\n }\n var popupRect = popupElement.getBoundingClientRect();\n var _win$getComputedStyle = win.getComputedStyle(popupElement),\n width = _win$getComputedStyle.width,\n height = _win$getComputedStyle.height;\n var _doc$documentElement = doc.documentElement,\n clientWidth = _doc$documentElement.clientWidth,\n clientHeight = _doc$documentElement.clientHeight,\n scrollWidth = _doc$documentElement.scrollWidth,\n scrollHeight = _doc$documentElement.scrollHeight,\n scrollTop = _doc$documentElement.scrollTop,\n scrollLeft = _doc$documentElement.scrollLeft;\n var popupHeight = popupRect.height;\n var popupWidth = popupRect.width;\n var targetHeight = targetRect.height;\n var targetWidth = targetRect.width;\n\n // Get bounding of visible area\n var visibleArea = placementInfo.htmlRegion === 'scroll' ?\n // Scroll region should take scrollLeft & scrollTop into account\n {\n left: -scrollLeft,\n top: -scrollTop,\n right: scrollWidth - scrollLeft,\n bottom: scrollHeight - scrollTop\n } : {\n left: 0,\n top: 0,\n right: clientWidth,\n bottom: clientHeight\n };\n (scrollerList || []).forEach(function (ele) {\n if (ele instanceof HTMLBodyElement) {\n return;\n }\n var eleRect = ele.getBoundingClientRect();\n var eleOutHeight = ele.offsetHeight,\n eleInnerHeight = ele.clientHeight,\n eleOutWidth = ele.offsetWidth,\n eleInnerWidth = ele.clientWidth;\n var scaleX = toNum(Math.round(eleRect.width / eleOutWidth * 1000) / 1000);\n var scaleY = toNum(Math.round(eleRect.height / eleOutHeight * 1000) / 1000);\n var eleScrollWidth = (eleOutWidth - eleInnerWidth) * scaleX;\n var eleScrollHeight = (eleOutHeight - eleInnerHeight) * scaleY;\n var eleRight = eleRect.x + eleRect.width - eleScrollWidth;\n var eleBottom = eleRect.y + eleRect.height - eleScrollHeight;\n visibleArea.left = Math.max(visibleArea.left, eleRect.left);\n visibleArea.top = Math.max(visibleArea.top, eleRect.top);\n visibleArea.right = Math.min(visibleArea.right, eleRight);\n visibleArea.bottom = Math.min(visibleArea.bottom, eleBottom);\n });\n\n // Reset back\n popupElement.style.left = originLeft;\n popupElement.style.top = originTop;\n\n // Calculate scale\n var _scaleX = toNum(Math.round(popupWidth / parseFloat(width) * 1000) / 1000);\n var _scaleY = toNum(Math.round(popupHeight / parseFloat(height) * 1000) / 1000);\n\n // No need to align since it's not visible in view\n if (_scaleX === 0 || _scaleY === 0 || isDOM(target) && !isVisible(target)) {\n return;\n }\n\n // Offset\n var offset = placementInfo.offset,\n targetOffset = placementInfo.targetOffset;\n var _ref = offset || [],\n _ref2 = _slicedToArray(_ref, 2),\n _ref2$ = _ref2[0],\n popupOffsetX = _ref2$ === void 0 ? 0 : _ref2$,\n _ref2$2 = _ref2[1],\n popupOffsetY = _ref2$2 === void 0 ? 0 : _ref2$2;\n var _ref3 = targetOffset || [],\n _ref4 = _slicedToArray(_ref3, 2),\n _ref4$ = _ref4[0],\n targetOffsetX = _ref4$ === void 0 ? 0 : _ref4$,\n _ref4$2 = _ref4[1],\n targetOffsetY = _ref4$2 === void 0 ? 0 : _ref4$2;\n targetRect.x += targetOffsetX;\n targetRect.y += targetOffsetY;\n\n // Points\n var _ref5 = placementInfo.points || [],\n _ref6 = _slicedToArray(_ref5, 2),\n popupPoint = _ref6[0],\n targetPoint = _ref6[1];\n var targetPoints = splitPoints(targetPoint);\n var popupPoints = splitPoints(popupPoint);\n var targetAlignPoint = getAlignPoint(targetRect, targetPoints);\n var popupAlignPoint = getAlignPoint(popupRect, popupPoints);\n\n // Real align info may not same as origin one\n var nextAlignInfo = _objectSpread({}, placementInfo);\n\n // Next Offset\n var nextOffsetX = targetAlignPoint.x - popupAlignPoint.x + popupOffsetX;\n var nextOffsetY = targetAlignPoint.y - popupAlignPoint.y + popupOffsetY;\n\n // ============== Intersection ===============\n // Get area by position. Used for check if flip area is better\n function getIntersectionVisibleArea(x, y) {\n var r = x + popupWidth;\n var b = y + popupHeight;\n var visibleX = Math.max(x, visibleArea.left);\n var visibleY = Math.max(y, visibleArea.top);\n var visibleR = Math.min(r, visibleArea.right);\n var visibleB = Math.min(b, visibleArea.bottom);\n return (visibleR - visibleX) * (visibleB - visibleY);\n }\n var originIntersectionVisibleArea = getIntersectionVisibleArea(nextOffsetX, nextOffsetY);\n\n // ================ Overflow =================\n var targetAlignPointTL = getAlignPoint(targetRect, ['t', 'l']);\n var popupAlignPointTL = getAlignPoint(popupRect, ['t', 'l']);\n var targetAlignPointBR = getAlignPoint(targetRect, ['b', 'r']);\n var popupAlignPointBR = getAlignPoint(popupRect, ['b', 'r']);\n var overflow = placementInfo.overflow || {};\n var adjustX = overflow.adjustX,\n adjustY = overflow.adjustY,\n shiftX = overflow.shiftX,\n shiftY = overflow.shiftY;\n var supportAdjust = function supportAdjust(val) {\n if (typeof val === 'boolean') {\n return val;\n }\n return val >= 0;\n };\n\n // >>>>>>>>>> Top & Bottom\n var nextPopupY = popupRect.y + nextOffsetY;\n var nextPopupBottom = nextPopupY + popupHeight;\n var needAdjustY = supportAdjust(adjustY);\n var sameTB = popupPoints[0] === targetPoints[0];\n\n // Bottom to Top\n if (needAdjustY && popupPoints[0] === 't' && nextPopupBottom > visibleArea.bottom) {\n var tmpNextOffsetY = nextOffsetY;\n if (sameTB) {\n tmpNextOffsetY -= popupHeight - targetHeight;\n } else {\n tmpNextOffsetY = targetAlignPointTL.y - popupAlignPointBR.y - popupOffsetY;\n }\n if (getIntersectionVisibleArea(nextOffsetX, tmpNextOffsetY) > originIntersectionVisibleArea) {\n nextOffsetY = tmpNextOffsetY;\n nextAlignInfo.points = [reversePoints(popupPoints, 0), reversePoints(targetPoints, 0)];\n }\n }\n\n // Top to Bottom\n if (needAdjustY && popupPoints[0] === 'b' && nextPopupY < visibleArea.top) {\n var _tmpNextOffsetY = nextOffsetY;\n if (sameTB) {\n _tmpNextOffsetY += popupHeight - targetHeight;\n } else {\n _tmpNextOffsetY = targetAlignPointBR.y - popupAlignPointTL.y - popupOffsetY;\n }\n if (getIntersectionVisibleArea(nextOffsetX, _tmpNextOffsetY) > originIntersectionVisibleArea) {\n nextOffsetY = _tmpNextOffsetY;\n nextAlignInfo.points = [reversePoints(popupPoints, 0), reversePoints(targetPoints, 0)];\n }\n }\n\n // >>>>>>>>>> Left & Right\n var nextPopupX = popupRect.x + nextOffsetX;\n var nextPopupRight = nextPopupX + popupWidth;\n var needAdjustX = supportAdjust(adjustX);\n\n // >>>>> Flip\n var sameLR = popupPoints[1] === targetPoints[1];\n\n // Right to Left\n if (needAdjustX && popupPoints[1] === 'l' && nextPopupRight > visibleArea.right) {\n var tmpNextOffsetX = nextOffsetX;\n if (sameLR) {\n tmpNextOffsetX -= popupWidth - targetWidth;\n } else {\n tmpNextOffsetX = targetAlignPointTL.x - popupAlignPointBR.x - popupOffsetX;\n }\n if (getIntersectionVisibleArea(tmpNextOffsetX, nextOffsetY) > originIntersectionVisibleArea) {\n nextOffsetX = tmpNextOffsetX;\n nextAlignInfo.points = [reversePoints(popupPoints, 1), reversePoints(targetPoints, 1)];\n }\n }\n\n // Left to Right\n if (needAdjustX && popupPoints[1] === 'r' && nextPopupX < visibleArea.left) {\n var _tmpNextOffsetX = nextOffsetX;\n if (sameLR) {\n _tmpNextOffsetX += popupWidth - targetWidth;\n } else {\n _tmpNextOffsetX = targetAlignPointBR.x - popupAlignPointTL.x - popupOffsetX;\n }\n if (getIntersectionVisibleArea(_tmpNextOffsetX, nextOffsetY) > originIntersectionVisibleArea) {\n nextOffsetX = _tmpNextOffsetX;\n nextAlignInfo.points = [reversePoints(popupPoints, 1), reversePoints(targetPoints, 1)];\n }\n }\n\n // >>>>> Shift\n var numShiftX = shiftX === true ? 0 : shiftX;\n if (typeof numShiftX === 'number') {\n // Left\n if (nextPopupX < visibleArea.left) {\n nextOffsetX -= nextPopupX - visibleArea.left;\n if (targetRect.x + targetWidth < visibleArea.left + numShiftX) {\n nextOffsetX += targetRect.x - visibleArea.left + targetWidth - numShiftX;\n }\n }\n\n // Right\n if (nextPopupRight > visibleArea.right) {\n nextOffsetX -= nextPopupRight - visibleArea.right;\n if (targetRect.x > visibleArea.right - numShiftX) {\n nextOffsetX += targetRect.x - visibleArea.right + numShiftX;\n }\n }\n }\n var numShiftY = shiftY === true ? 0 : shiftY;\n if (typeof numShiftY === 'number') {\n // Top\n if (nextPopupY < visibleArea.top) {\n nextOffsetY -= nextPopupY - visibleArea.top;\n if (targetRect.y + targetHeight < visibleArea.top + numShiftY) {\n nextOffsetY += targetRect.y - visibleArea.top + targetHeight - numShiftY;\n }\n }\n\n // Bottom\n if (nextPopupBottom > visibleArea.bottom) {\n nextOffsetY -= nextPopupBottom - visibleArea.bottom;\n if (targetRect.y > visibleArea.bottom - numShiftY) {\n nextOffsetY += targetRect.y - visibleArea.bottom + numShiftY;\n }\n }\n }\n\n // Arrow center align\n var popupLeft = popupRect.x + nextOffsetX;\n var popupRight = popupLeft + popupWidth;\n var popupTop = popupRect.y + nextOffsetY;\n var popupBottom = popupTop + popupHeight;\n var targetLeft = targetRect.x;\n var targetRight = targetLeft + targetWidth;\n var targetTop = targetRect.y;\n var targetBottom = targetTop + targetHeight;\n var maxLeft = Math.max(popupLeft, targetLeft);\n var minRight = Math.min(popupRight, targetRight);\n var xCenter = (maxLeft + minRight) / 2;\n var nextArrowX = xCenter - popupLeft;\n var maxTop = Math.max(popupTop, targetTop);\n var minBottom = Math.min(popupBottom, targetBottom);\n var yCenter = (maxTop + minBottom) / 2;\n var nextArrowY = yCenter - popupTop;\n onPopupAlign === null || onPopupAlign === void 0 ? void 0 : onPopupAlign(popupEle, nextAlignInfo);\n setOffsetInfo({\n ready: true,\n offsetX: nextOffsetX / _scaleX,\n offsetY: nextOffsetY / _scaleY,\n arrowX: nextArrowX / _scaleX,\n arrowY: nextArrowY / _scaleY,\n scaleX: _scaleX,\n scaleY: _scaleY,\n align: nextAlignInfo\n });\n }\n });\n var triggerAlign = function triggerAlign() {\n alignCountRef.current += 1;\n var id = alignCountRef.current;\n\n // Merge all align requirement into one frame\n Promise.resolve().then(function () {\n if (alignCountRef.current === id) {\n onAlign();\n }\n });\n };\n\n // Reset ready status when placement & open changed\n var resetReady = function resetReady() {\n setOffsetInfo(function (ori) {\n return _objectSpread(_objectSpread({}, ori), {}, {\n ready: false\n });\n });\n };\n useLayoutEffect(resetReady, [placement]);\n useLayoutEffect(function () {\n if (!open) {\n resetReady();\n }\n }, [open]);\n return [offsetInfo.ready, offsetInfo.offsetX, offsetInfo.offsetY, offsetInfo.arrowX, offsetInfo.arrowY, offsetInfo.scaleX, offsetInfo.scaleY, offsetInfo.align, triggerAlign];\n}","import * as React from 'react';\nexport default function Arrow(props) {\n var prefixCls = props.prefixCls,\n align = props.align,\n _props$arrowX = props.arrowX,\n arrowX = _props$arrowX === void 0 ? 0 : _props$arrowX,\n _props$arrowY = props.arrowY,\n arrowY = _props$arrowY === void 0 ? 0 : _props$arrowY;\n var arrowRef = React.useRef();\n\n // Skip if no align\n if (!align || !align.points) {\n return null;\n }\n var alignStyle = {\n position: 'absolute'\n };\n\n // Skip if no need to align\n if (align.autoArrow !== false) {\n var popupPoints = align.points[0];\n var targetPoints = align.points[1];\n var popupTB = popupPoints[0];\n var popupLR = popupPoints[1];\n var targetTB = targetPoints[0];\n var targetLR = targetPoints[1];\n\n // Top & Bottom\n if (popupTB === targetTB || !['t', 'b'].includes(popupTB)) {\n alignStyle.top = arrowY;\n } else if (popupTB === 't') {\n alignStyle.top = 0;\n } else {\n alignStyle.bottom = 0;\n }\n\n // Left & Right\n if (popupLR === targetLR || !['l', 'r'].includes(popupLR)) {\n alignStyle.left = arrowX;\n } else if (popupLR === 'l') {\n alignStyle.left = 0;\n } else {\n alignStyle.right = 0;\n }\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: arrowRef,\n className: \"\".concat(prefixCls, \"-arrow\"),\n style: alignStyle\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n open = props.open,\n zIndex = props.zIndex,\n mask = props.mask,\n motion = props.motion;\n if (!mask) {\n return null;\n }\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motion, {\n motionAppear: true,\n visible: open,\n removeOnLeave: true\n }), function (_ref) {\n var className = _ref.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n zIndex: zIndex\n },\n className: classNames(\"\".concat(prefixCls, \"-mask\"), className)\n });\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport Arrow from \"./Arrow\";\nimport Mask from \"./Mask\";\nvar Popup = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var popup = props.popup,\n className = props.className,\n prefixCls = props.prefixCls,\n style = props.style,\n target = props.target,\n _onVisibleChanged = props.onVisibleChanged,\n open = props.open,\n keepDom = props.keepDom,\n onClick = props.onClick,\n mask = props.mask,\n arrow = props.arrow,\n align = props.align,\n arrowX = props.arrowX,\n arrowY = props.arrowY,\n motion = props.motion,\n maskMotion = props.maskMotion,\n forceRender = props.forceRender,\n getPopupContainer = props.getPopupContainer,\n autoDestroy = props.autoDestroy,\n Portal = props.portal,\n zIndex = props.zIndex,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n ready = props.ready,\n offsetX = props.offsetX,\n offsetY = props.offsetY,\n onAlign = props.onAlign,\n onPrepare = props.onPrepare,\n stretch = props.stretch,\n targetWidth = props.targetWidth,\n targetHeight = props.targetHeight;\n var childNode = typeof popup === 'function' ? popup() : popup;\n\n // We can not remove holder only when motion finished.\n var isNodeVisible = open || keepDom;\n\n // ======================= Container ========================\n var getPopupContainerNeedParams = (getPopupContainer === null || getPopupContainer === void 0 ? void 0 : getPopupContainer.length) > 0;\n var _React$useState = React.useState(!getPopupContainer || !getPopupContainerNeedParams),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n show = _React$useState2[0],\n setShow = _React$useState2[1];\n\n // Delay to show since `getPopupContainer` need target element\n useLayoutEffect(function () {\n if (!show && getPopupContainerNeedParams && target) {\n setShow(true);\n }\n }, [show, getPopupContainerNeedParams, target]);\n\n // ========================= Render =========================\n if (!show) {\n return null;\n }\n\n // >>>>> Offset\n var offsetStyle = ready || !open ? {\n left: offsetX,\n top: offsetY\n } : {\n left: '-1000vw',\n top: '-1000vh'\n };\n\n // >>>>> Misc\n var miscStyle = {};\n if (stretch) {\n if (stretch.includes('height') && targetHeight) {\n miscStyle.height = targetHeight;\n } else if (stretch.includes('minHeight') && targetHeight) {\n miscStyle.minHeight = targetHeight;\n }\n if (stretch.includes('width') && targetWidth) {\n miscStyle.width = targetWidth;\n } else if (stretch.includes('minWidth') && targetWidth) {\n miscStyle.minWidth = targetWidth;\n }\n }\n if (!open) {\n miscStyle.pointerEvents = 'none';\n }\n return /*#__PURE__*/React.createElement(Portal, {\n open: forceRender || isNodeVisible,\n getContainer: getPopupContainer && function () {\n return getPopupContainer(target);\n },\n autoDestroy: autoDestroy\n }, /*#__PURE__*/React.createElement(Mask, {\n prefixCls: prefixCls,\n open: open,\n zIndex: zIndex,\n mask: mask,\n motion: maskMotion\n }), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onAlign,\n disabled: !open\n }, function (resizeObserverRef) {\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n motionAppear: true,\n motionEnter: true,\n motionLeave: true,\n removeOnLeave: false,\n forceRender: forceRender,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }, motion, {\n onAppearPrepare: onPrepare,\n onEnterPrepare: onPrepare,\n visible: open,\n onVisibleChanged: function onVisibleChanged(nextVisible) {\n var _motion$onVisibleChan;\n motion === null || motion === void 0 ? void 0 : (_motion$onVisibleChan = motion.onVisibleChanged) === null || _motion$onVisibleChan === void 0 ? void 0 : _motion$onVisibleChan.call(motion, nextVisible);\n _onVisibleChanged(nextVisible);\n }\n }), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var cls = classNames(prefixCls, motionClassName, className);\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: composeRef(resizeObserverRef, ref, motionRef),\n className: cls,\n style: _objectSpread(_objectSpread(_objectSpread(_objectSpread({}, offsetStyle), miscStyle), motionStyle), {}, {\n boxSizing: 'border-box',\n zIndex: zIndex\n }, style),\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onClick: onClick\n }, arrow && /*#__PURE__*/React.createElement(Arrow, {\n prefixCls: prefixCls,\n align: align,\n arrowX: arrowX,\n arrowY: arrowY\n }), childNode);\n });\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n Popup.displayName = 'Popup';\n}\nexport default Popup;","import { fillRef, supportRef, useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nvar TriggerWrapper = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var children = props.children,\n getTriggerDOMNode = props.getTriggerDOMNode;\n var canUseRef = supportRef(children);\n\n // When use `getTriggerDOMNode`, we should do additional work to get the real dom\n var setRef = React.useCallback(function (node) {\n fillRef(ref, getTriggerDOMNode ? getTriggerDOMNode(node) : node);\n }, [getTriggerDOMNode]);\n var mergedRef = useComposeRef(setRef, children.ref);\n return canUseRef ? /*#__PURE__*/React.cloneElement(children, {\n ref: mergedRef\n }) : children;\n});\nif (process.env.NODE_ENV !== 'production') {\n TriggerWrapper.displayName = 'TriggerWrapper';\n}\nexport default TriggerWrapper;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"children\", \"action\", \"showAction\", \"hideAction\", \"popupVisible\", \"defaultPopupVisible\", \"onPopupVisibleChange\", \"afterPopupVisibleChange\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"focusDelay\", \"blurDelay\", \"mask\", \"maskClosable\", \"getPopupContainer\", \"forceRender\", \"autoDestroy\", \"destroyPopupOnHide\", \"popup\", \"popupClassName\", \"popupStyle\", \"popupPlacement\", \"builtinPlacements\", \"popupAlign\", \"zIndex\", \"stretch\", \"getPopupClassNameFromAlign\", \"alignPoint\", \"onPopupClick\", \"onPopupAlign\", \"arrow\", \"popupMotion\", \"maskMotion\", \"popupTransitionName\", \"popupAnimation\", \"maskTransitionName\", \"maskAnimation\", \"className\", \"getTriggerDOMNode\"];\nimport Portal from '@rc-component/portal';\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { isDOM } from \"rc-util/es/Dom/findDOMNode\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useId from \"rc-util/es/hooks/useId\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport TriggerContext from \"./context\";\nimport useAction from \"./hooks/useAction\";\nimport useAlign from \"./hooks/useAlign\";\nimport useWatch from \"./hooks/useWatch\";\nimport Popup from \"./Popup\";\nimport TriggerWrapper from \"./TriggerWrapper\";\nimport { getAlignPopupClassName, getMotion, getWin } from \"./util\";\nexport function generateTrigger() {\n var PortalComponent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : Portal;\n var Trigger = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-trigger-popup' : _props$prefixCls,\n children = props.children,\n _props$action = props.action,\n action = _props$action === void 0 ? 'hover' : _props$action,\n showAction = props.showAction,\n hideAction = props.hideAction,\n popupVisible = props.popupVisible,\n defaultPopupVisible = props.defaultPopupVisible,\n onPopupVisibleChange = props.onPopupVisibleChange,\n afterPopupVisibleChange = props.afterPopupVisibleChange,\n mouseEnterDelay = props.mouseEnterDelay,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n focusDelay = props.focusDelay,\n blurDelay = props.blurDelay,\n mask = props.mask,\n _props$maskClosable = props.maskClosable,\n maskClosable = _props$maskClosable === void 0 ? true : _props$maskClosable,\n getPopupContainer = props.getPopupContainer,\n forceRender = props.forceRender,\n autoDestroy = props.autoDestroy,\n destroyPopupOnHide = props.destroyPopupOnHide,\n popup = props.popup,\n popupClassName = props.popupClassName,\n popupStyle = props.popupStyle,\n popupPlacement = props.popupPlacement,\n _props$builtinPlaceme = props.builtinPlacements,\n builtinPlacements = _props$builtinPlaceme === void 0 ? {} : _props$builtinPlaceme,\n popupAlign = props.popupAlign,\n zIndex = props.zIndex,\n stretch = props.stretch,\n getPopupClassNameFromAlign = props.getPopupClassNameFromAlign,\n alignPoint = props.alignPoint,\n onPopupClick = props.onPopupClick,\n onPopupAlign = props.onPopupAlign,\n arrow = props.arrow,\n popupMotion = props.popupMotion,\n maskMotion = props.maskMotion,\n popupTransitionName = props.popupTransitionName,\n popupAnimation = props.popupAnimation,\n maskTransitionName = props.maskTransitionName,\n maskAnimation = props.maskAnimation,\n className = props.className,\n getTriggerDOMNode = props.getTriggerDOMNode,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedAutoDestroy = autoDestroy || destroyPopupOnHide || false;\n\n // =========================== Mobile ===========================\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mobile = _React$useState2[0],\n setMobile = _React$useState2[1];\n useLayoutEffect(function () {\n setMobile(isMobile());\n }, []);\n\n // ========================== Context ===========================\n var subPopupElements = React.useRef({});\n var parentContext = React.useContext(TriggerContext);\n var context = React.useMemo(function () {\n return {\n registerSubPopup: function registerSubPopup(id, subPopupEle) {\n subPopupElements.current[id] = subPopupEle;\n parentContext === null || parentContext === void 0 ? void 0 : parentContext.registerSubPopup(id, subPopupEle);\n }\n };\n }, [parentContext]);\n\n // =========================== Popup ============================\n var id = useId();\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n popupEle = _React$useState4[0],\n setPopupEle = _React$useState4[1];\n var setPopupRef = useEvent(function (node) {\n if (isDOM(node) && popupEle !== node) {\n setPopupEle(node);\n }\n parentContext === null || parentContext === void 0 ? void 0 : parentContext.registerSubPopup(id, node);\n });\n\n // =========================== Target ===========================\n // Use state to control here since `useRef` update not trigger render\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n targetEle = _React$useState6[0],\n setTargetEle = _React$useState6[1];\n var setTargetRef = useEvent(function (node) {\n if (isDOM(node) && targetEle !== node) {\n setTargetEle(node);\n }\n });\n\n // ========================== Children ==========================\n var child = React.Children.only(children);\n var originChildProps = (child === null || child === void 0 ? void 0 : child.props) || {};\n var cloneProps = {};\n var inPopupOrChild = useEvent(function (ele) {\n var _childDOM$getRootNode, _popupEle$getRootNode;\n var childDOM = targetEle;\n return (childDOM === null || childDOM === void 0 ? void 0 : childDOM.contains(ele)) || (childDOM === null || childDOM === void 0 ? void 0 : (_childDOM$getRootNode = childDOM.getRootNode()) === null || _childDOM$getRootNode === void 0 ? void 0 : _childDOM$getRootNode.host) === ele || ele === childDOM || (popupEle === null || popupEle === void 0 ? void 0 : popupEle.contains(ele)) || (popupEle === null || popupEle === void 0 ? void 0 : (_popupEle$getRootNode = popupEle.getRootNode()) === null || _popupEle$getRootNode === void 0 ? void 0 : _popupEle$getRootNode.host) === ele || ele === popupEle || Object.values(subPopupElements.current).some(function (subPopupEle) {\n return subPopupEle.contains(ele) || ele === subPopupEle;\n });\n });\n\n // =========================== Motion ===========================\n var mergePopupMotion = getMotion(prefixCls, popupMotion, popupAnimation, popupTransitionName);\n var mergeMaskMotion = getMotion(prefixCls, maskMotion, maskAnimation, maskTransitionName);\n\n // ============================ Open ============================\n var _React$useState7 = React.useState(defaultPopupVisible || false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n internalOpen = _React$useState8[0],\n setInternalOpen = _React$useState8[1];\n\n // Render still use props as first priority\n var mergedOpen = popupVisible !== null && popupVisible !== void 0 ? popupVisible : internalOpen;\n\n // We use effect sync here in case `popupVisible` back to `undefined`\n var setMergedOpen = useEvent(function (nextOpen) {\n if (popupVisible === undefined) {\n setInternalOpen(nextOpen);\n }\n });\n useLayoutEffect(function () {\n setInternalOpen(popupVisible || false);\n }, [popupVisible]);\n var openRef = React.useRef(mergedOpen);\n openRef.current = mergedOpen;\n var internalTriggerOpen = useEvent(function (nextOpen) {\n if (mergedOpen !== nextOpen) {\n setMergedOpen(nextOpen);\n onPopupVisibleChange === null || onPopupVisibleChange === void 0 ? void 0 : onPopupVisibleChange(nextOpen);\n }\n });\n\n // Trigger for delay\n var delayRef = React.useRef();\n var clearDelay = function clearDelay() {\n clearTimeout(delayRef.current);\n };\n var triggerOpen = function triggerOpen(nextOpen) {\n var delay = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n clearDelay();\n if (delay === 0) {\n internalTriggerOpen(nextOpen);\n } else {\n delayRef.current = setTimeout(function () {\n internalTriggerOpen(nextOpen);\n }, delay * 1000);\n }\n };\n React.useEffect(function () {\n return clearDelay;\n }, []);\n\n // ========================== Motion ============================\n var _React$useState9 = React.useState(false),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n inMotion = _React$useState10[0],\n setInMotion = _React$useState10[1];\n var mountRef = React.useRef(true);\n useLayoutEffect(function () {\n if (!mountRef.current || mergedOpen) {\n setInMotion(true);\n }\n mountRef.current = true;\n }, [mergedOpen]);\n var _React$useState11 = React.useState(null),\n _React$useState12 = _slicedToArray(_React$useState11, 2),\n motionPrepareResolve = _React$useState12[0],\n setMotionPrepareResolve = _React$useState12[1];\n\n // =========================== Align ============================\n var _React$useState13 = React.useState([0, 0]),\n _React$useState14 = _slicedToArray(_React$useState13, 2),\n mousePos = _React$useState14[0],\n setMousePos = _React$useState14[1];\n var setMousePosByEvent = function setMousePosByEvent(event) {\n setMousePos([event.clientX, event.clientY]);\n };\n var _useAlign = useAlign(mergedOpen, popupEle, alignPoint ? mousePos : targetEle, popupPlacement, builtinPlacements, popupAlign, onPopupAlign),\n _useAlign2 = _slicedToArray(_useAlign, 9),\n ready = _useAlign2[0],\n offsetX = _useAlign2[1],\n offsetY = _useAlign2[2],\n arrowX = _useAlign2[3],\n arrowY = _useAlign2[4],\n scaleX = _useAlign2[5],\n scaleY = _useAlign2[6],\n alignInfo = _useAlign2[7],\n onAlign = _useAlign2[8];\n var triggerAlign = useEvent(function () {\n if (!inMotion) {\n onAlign();\n }\n });\n useWatch(mergedOpen, targetEle, popupEle, triggerAlign);\n useLayoutEffect(function () {\n triggerAlign();\n }, [mousePos]);\n\n // When no builtinPlacements and popupAlign changed\n useLayoutEffect(function () {\n if (mergedOpen && !(builtinPlacements !== null && builtinPlacements !== void 0 && builtinPlacements[popupPlacement])) {\n triggerAlign();\n }\n }, [JSON.stringify(popupAlign)]);\n var alignedClassName = React.useMemo(function () {\n var baseClassName = getAlignPopupClassName(builtinPlacements, prefixCls, alignInfo, alignPoint);\n return classNames(baseClassName, getPopupClassNameFromAlign === null || getPopupClassNameFromAlign === void 0 ? void 0 : getPopupClassNameFromAlign(alignInfo));\n }, [alignInfo, getPopupClassNameFromAlign, builtinPlacements, prefixCls, alignPoint]);\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: triggerAlign\n };\n });\n\n // ========================== Motion ============================\n var onVisibleChanged = function onVisibleChanged(visible) {\n setInMotion(false);\n onAlign();\n afterPopupVisibleChange === null || afterPopupVisibleChange === void 0 ? void 0 : afterPopupVisibleChange(visible);\n };\n\n // We will trigger align when motion is in prepare\n var onPrepare = function onPrepare() {\n return new Promise(function (resolve) {\n setMotionPrepareResolve(function () {\n return resolve;\n });\n });\n };\n useLayoutEffect(function () {\n if (motionPrepareResolve) {\n onAlign();\n motionPrepareResolve();\n setMotionPrepareResolve(null);\n }\n }, [motionPrepareResolve]);\n\n // ========================== Stretch ===========================\n var _React$useState15 = React.useState(0),\n _React$useState16 = _slicedToArray(_React$useState15, 2),\n targetWidth = _React$useState16[0],\n setTargetWidth = _React$useState16[1];\n var _React$useState17 = React.useState(0),\n _React$useState18 = _slicedToArray(_React$useState17, 2),\n targetHeight = _React$useState18[0],\n setTargetHeight = _React$useState18[1];\n var onTargetResize = function onTargetResize(_, ele) {\n triggerAlign();\n if (stretch) {\n var rect = ele.getBoundingClientRect();\n setTargetWidth(rect.width);\n setTargetHeight(rect.height);\n }\n };\n\n // =========================== Action ===========================\n var _useAction = useAction(mobile, action, showAction, hideAction),\n _useAction2 = _slicedToArray(_useAction, 2),\n showActions = _useAction2[0],\n hideActions = _useAction2[1];\n\n // Util wrapper for trigger action\n var wrapperAction = function wrapperAction(eventName, nextOpen, delay, preEvent) {\n cloneProps[eventName] = function (event) {\n var _originChildProps$eve;\n preEvent === null || preEvent === void 0 ? void 0 : preEvent(event);\n triggerOpen(nextOpen, delay);\n\n // Pass to origin\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n (_originChildProps$eve = originChildProps[eventName]) === null || _originChildProps$eve === void 0 ? void 0 : _originChildProps$eve.call.apply(_originChildProps$eve, [originChildProps, event].concat(args));\n };\n };\n\n // ======================= Action: Click ========================\n var clickToShow = showActions.has('click');\n var clickToHide = hideActions.has('click') || hideActions.has('contextMenu');\n if (clickToShow || clickToHide) {\n cloneProps.onClick = function (event) {\n var _originChildProps$onC;\n if (openRef.current && clickToHide) {\n triggerOpen(false);\n } else if (!openRef.current && clickToShow) {\n setMousePosByEvent(event);\n triggerOpen(true);\n }\n\n // Pass to origin\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n (_originChildProps$onC = originChildProps.onClick) === null || _originChildProps$onC === void 0 ? void 0 : _originChildProps$onC.call.apply(_originChildProps$onC, [originChildProps, event].concat(args));\n };\n }\n\n // Click to hide is special action since click popup element should not hide\n React.useEffect(function () {\n if (clickToHide && popupEle && (!mask || maskClosable)) {\n var onWindowClick = function onWindowClick(_ref) {\n var target = _ref.target;\n if (openRef.current && !inPopupOrChild(target)) {\n triggerOpen(false);\n }\n };\n var win = getWin(popupEle);\n var targetRoot = targetEle === null || targetEle === void 0 ? void 0 : targetEle.getRootNode();\n win.addEventListener('click', onWindowClick);\n\n // shadow root\n var inShadow = targetRoot && targetRoot !== targetEle.ownerDocument;\n if (inShadow) {\n targetRoot.addEventListener('click', onWindowClick);\n }\n\n // Warning if target and popup not in same root\n if (process.env.NODE_ENV !== 'production') {\n var popupRoot = popupEle.getRootNode();\n warning(targetRoot === popupRoot, \"trigger element and popup element should in same shadow root.\");\n }\n return function () {\n win.removeEventListener('click', onWindowClick);\n if (inShadow) {\n targetRoot.removeEventListener('click', onWindowClick);\n }\n };\n }\n }, [clickToHide, targetEle, popupEle, mask, maskClosable]);\n\n // ======================= Action: Hover ========================\n var hoverToShow = showActions.has('hover');\n var hoverToHide = hideActions.has('hover');\n var onPopupMouseEnter;\n var onPopupMouseLeave;\n if (hoverToShow) {\n wrapperAction('onMouseEnter', true, mouseEnterDelay, function (event) {\n setMousePosByEvent(event);\n });\n onPopupMouseEnter = function onPopupMouseEnter() {\n triggerOpen(true, mouseEnterDelay);\n };\n\n // Align Point\n if (alignPoint) {\n cloneProps.onMouseMove = function (event) {\n var _originChildProps$onM;\n // setMousePosByEvent(event);\n (_originChildProps$onM = originChildProps.onMouseMove) === null || _originChildProps$onM === void 0 ? void 0 : _originChildProps$onM.call(originChildProps, event);\n };\n }\n }\n if (hoverToHide) {\n wrapperAction('onMouseLeave', false, mouseLeaveDelay);\n onPopupMouseLeave = function onPopupMouseLeave() {\n triggerOpen(false, mouseLeaveDelay);\n };\n }\n\n // ======================= Action: Focus ========================\n if (showActions.has('focus')) {\n wrapperAction('onFocus', true, focusDelay);\n }\n if (hideActions.has('focus')) {\n wrapperAction('onBlur', false, blurDelay);\n }\n\n // ==================== Action: ContextMenu =====================\n if (showActions.has('contextMenu')) {\n cloneProps.onContextMenu = function (event) {\n var _originChildProps$onC2;\n setMousePosByEvent(event);\n triggerOpen(true);\n event.preventDefault();\n\n // Pass to origin\n for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n args[_key3 - 1] = arguments[_key3];\n }\n (_originChildProps$onC2 = originChildProps.onContextMenu) === null || _originChildProps$onC2 === void 0 ? void 0 : _originChildProps$onC2.call.apply(_originChildProps$onC2, [originChildProps, event].concat(args));\n };\n }\n\n // ========================= ClassName ==========================\n if (className) {\n cloneProps.className = classNames(originChildProps.className, className);\n }\n\n // =========================== Render ===========================\n var mergedChildrenProps = _objectSpread(_objectSpread({}, originChildProps), cloneProps);\n\n // Pass props into cloneProps for nest usage\n var passedProps = {};\n var passedEventList = ['onContextMenu', 'onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur'];\n passedEventList.forEach(function (eventName) {\n if (restProps[eventName]) {\n passedProps[eventName] = function () {\n var _mergedChildrenProps$;\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n (_mergedChildrenProps$ = mergedChildrenProps[eventName]) === null || _mergedChildrenProps$ === void 0 ? void 0 : _mergedChildrenProps$.call.apply(_mergedChildrenProps$, [mergedChildrenProps].concat(args));\n restProps[eventName].apply(restProps, args);\n };\n }\n });\n\n // Child Node\n var triggerNode = /*#__PURE__*/React.cloneElement(child, _objectSpread(_objectSpread({}, mergedChildrenProps), passedProps));\n\n // Render\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(ResizeObserver, {\n disabled: !mergedOpen,\n ref: setTargetRef,\n onResize: onTargetResize\n }, /*#__PURE__*/React.createElement(TriggerWrapper, {\n getTriggerDOMNode: getTriggerDOMNode\n }, triggerNode)), /*#__PURE__*/React.createElement(TriggerContext.Provider, {\n value: context\n }, /*#__PURE__*/React.createElement(Popup, {\n portal: PortalComponent,\n ref: setPopupRef,\n prefixCls: prefixCls,\n popup: popup,\n className: classNames(popupClassName, alignedClassName),\n style: popupStyle,\n target: targetEle,\n onMouseEnter: onPopupMouseEnter,\n onMouseLeave: onPopupMouseLeave,\n zIndex: zIndex\n // Open\n ,\n open: mergedOpen,\n keepDom: inMotion\n // Click\n ,\n onClick: onPopupClick\n // Mask\n ,\n mask: mask\n // Motion\n ,\n motion: mergePopupMotion,\n maskMotion: mergeMaskMotion,\n onVisibleChanged: onVisibleChanged,\n onPrepare: onPrepare\n // Portal\n ,\n forceRender: forceRender,\n autoDestroy: mergedAutoDestroy,\n getPopupContainer: getPopupContainer\n // Arrow\n ,\n align: alignInfo,\n arrow: arrow\n // Align\n ,\n ready: ready,\n offsetX: offsetX,\n offsetY: offsetY,\n arrowX: arrowX,\n arrowY: arrowY,\n onAlign: triggerAlign\n // Stretch\n ,\n stretch: stretch,\n targetWidth: targetWidth / scaleX,\n targetHeight: targetHeight / scaleY\n })));\n });\n if (process.env.NODE_ENV !== 'production') {\n Trigger.displayName = 'Trigger';\n }\n return Trigger;\n}\nexport default generateTrigger(Portal);","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { collectScroller, getWin } from \"../util\";\nexport default function useWatch(open, target, popup, onAlign) {\n useLayoutEffect(function () {\n if (open && target && popup) {\n var targetElement = target;\n var popupElement = popup;\n var targetScrollList = collectScroller(targetElement);\n var popupScrollList = collectScroller(popupElement);\n var win = getWin(popupElement);\n var mergedList = new Set([win].concat(_toConsumableArray(targetScrollList), _toConsumableArray(popupScrollList)));\n function notifyScroll() {\n onAlign();\n }\n mergedList.forEach(function (scroller) {\n scroller.addEventListener('scroll', notifyScroll, {\n passive: true\n });\n });\n win.addEventListener('resize', notifyScroll, {\n passive: true\n });\n\n // First time always do align\n onAlign();\n return function () {\n mergedList.forEach(function (scroller) {\n scroller.removeEventListener('scroll', notifyScroll);\n win.removeEventListener('resize', notifyScroll);\n });\n };\n }\n }, [open, target, popup]);\n}","import classNames from 'classnames';\nconst InputStatuses = ['warning', 'error', ''];\nexport function getStatusClassNames(prefixCls, status, hasFeedback) {\n return classNames({\n [`${prefixCls}-status-success`]: status === 'success',\n [`${prefixCls}-status-warning`]: status === 'warning',\n [`${prefixCls}-status-error`]: status === 'error',\n [`${prefixCls}-status-validating`]: status === 'validating',\n [`${prefixCls}-has-feedback`]: hasFeedback\n });\n}\nexport const getMergedStatus = (contextStatus, customStatus) => customStatus || contextStatus;","// This icon file is generated automatically.\nvar SearchOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z\" } }] }, \"name\": \"search\", \"theme\": \"outlined\" };\nexport default SearchOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport SearchOutlinedSvg from \"@ant-design/icons-svg/es/asn/SearchOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar SearchOutlined = function SearchOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: SearchOutlinedSvg\n }));\n};\nSearchOutlined.displayName = 'SearchOutlined';\nexport default /*#__PURE__*/React.forwardRef(SearchOutlined);","var autoAdjustOverflowTopBottom = {\n shiftX: 64,\n adjustY: 1\n};\nvar autoAdjustOverflowLeftRight = {\n adjustX: 1,\n shiftY: true\n};\nvar targetOffset = [0, 0];\nexport var placements = {\n left: {\n points: ['cr', 'cl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n right: {\n points: ['cl', 'cr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n top: {\n points: ['bc', 'tc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n bottom: {\n points: ['tc', 'bc'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n rightBottom: {\n points: ['bl', 'br'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [4, 0],\n targetOffset: targetOffset\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflowTopBottom,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n leftBottom: {\n points: ['br', 'bl'],\n overflow: autoAdjustOverflowLeftRight,\n offset: [-4, 0],\n targetOffset: targetOffset\n }\n};\nexport default placements;","import classNames from 'classnames';\nimport * as React from 'react';\nexport default function Popup(props) {\n var children = props.children,\n prefixCls = props.prefixCls,\n id = props.id,\n overlayInnerStyle = props.overlayInnerStyle,\n className = props.className,\n style = props.style;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-content\"), className),\n style: style\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-inner\"),\n id: id,\n role: \"tooltip\",\n style: overlayInnerStyle\n }, typeof children === 'function' ? children() : children));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"overlayClassName\", \"trigger\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"prefixCls\", \"children\", \"onVisibleChange\", \"afterVisibleChange\", \"transitionName\", \"animation\", \"motion\", \"placement\", \"align\", \"destroyTooltipOnHide\", \"defaultVisible\", \"getTooltipContainer\", \"overlayInnerStyle\", \"arrowContent\", \"overlay\", \"id\", \"showArrow\"];\nimport Trigger from '@rc-component/trigger';\nimport * as React from 'react';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\nimport { placements } from \"./placements\";\nimport Popup from \"./Popup\";\nvar Tooltip = function Tooltip(props, ref) {\n var overlayClassName = props.overlayClassName,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,\n _props$mouseEnterDela = props.mouseEnterDelay,\n mouseEnterDelay = _props$mouseEnterDela === void 0 ? 0 : _props$mouseEnterDela,\n _props$mouseLeaveDela = props.mouseLeaveDelay,\n mouseLeaveDelay = _props$mouseLeaveDela === void 0 ? 0.1 : _props$mouseLeaveDela,\n overlayStyle = props.overlayStyle,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-tooltip' : _props$prefixCls,\n children = props.children,\n onVisibleChange = props.onVisibleChange,\n afterVisibleChange = props.afterVisibleChange,\n transitionName = props.transitionName,\n animation = props.animation,\n motion = props.motion,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'right' : _props$placement,\n _props$align = props.align,\n align = _props$align === void 0 ? {} : _props$align,\n _props$destroyTooltip = props.destroyTooltipOnHide,\n destroyTooltipOnHide = _props$destroyTooltip === void 0 ? false : _props$destroyTooltip,\n defaultVisible = props.defaultVisible,\n getTooltipContainer = props.getTooltipContainer,\n overlayInnerStyle = props.overlayInnerStyle,\n arrowContent = props.arrowContent,\n overlay = props.overlay,\n id = props.id,\n _props$showArrow = props.showArrow,\n showArrow = _props$showArrow === void 0 ? true : _props$showArrow,\n restProps = _objectWithoutProperties(props, _excluded);\n var triggerRef = useRef(null);\n useImperativeHandle(ref, function () {\n return triggerRef.current;\n });\n var extraProps = _objectSpread({}, restProps);\n if ('visible' in props) {\n extraProps.popupVisible = props.visible;\n }\n var getPopupElement = function getPopupElement() {\n return /*#__PURE__*/React.createElement(Popup, {\n key: \"content\",\n prefixCls: prefixCls,\n id: id,\n overlayInnerStyle: overlayInnerStyle\n }, overlay);\n };\n return /*#__PURE__*/React.createElement(Trigger, _extends({\n popupClassName: overlayClassName,\n prefixCls: prefixCls,\n popup: getPopupElement,\n action: trigger,\n builtinPlacements: placements,\n popupPlacement: placement,\n ref: triggerRef,\n popupAlign: align,\n getPopupContainer: getTooltipContainer,\n onPopupVisibleChange: onVisibleChange,\n afterPopupVisibleChange: afterVisibleChange,\n popupTransitionName: transitionName,\n popupAnimation: animation,\n popupMotion: motion,\n defaultPopupVisible: defaultVisible,\n autoDestroy: destroyTooltipOnHide,\n mouseLeaveDelay: mouseLeaveDelay,\n popupStyle: overlayStyle,\n mouseEnterDelay: mouseEnterDelay,\n arrow: showArrow\n }, extraProps), children);\n};\nexport default /*#__PURE__*/forwardRef(Tooltip);","import { TinyColor } from '@ctrl/tinycolor';\nexport const getAlphaColor = (baseColor, alpha) => new TinyColor(baseColor).setAlpha(alpha).toRgbString();\nexport const getSolidColor = (baseColor, brightness) => {\n const instance = new TinyColor(baseColor);\n return instance.lighten(brightness).toHexString();\n};","import { generate } from '@ant-design/colors';\nimport { getAlphaColor, getSolidColor } from './colorAlgorithm';\nexport const generateColorPalettes = baseColor => {\n const colors = generate(baseColor, {\n theme: 'dark'\n });\n return {\n 1: colors[0],\n 2: colors[1],\n 3: colors[2],\n 4: colors[3],\n 5: colors[6],\n 6: colors[5],\n 7: colors[4],\n 8: colors[6],\n 9: colors[5],\n 10: colors[4]\n // 8: colors[9],\n // 9: colors[8],\n // 10: colors[7],\n };\n};\n\nexport const generateNeutralColorPalettes = (bgBaseColor, textBaseColor) => {\n const colorBgBase = bgBaseColor || '#000';\n const colorTextBase = textBaseColor || '#fff';\n return {\n colorBgBase,\n colorTextBase,\n colorText: getAlphaColor(colorTextBase, 0.85),\n colorTextSecondary: getAlphaColor(colorTextBase, 0.65),\n colorTextTertiary: getAlphaColor(colorTextBase, 0.45),\n colorTextQuaternary: getAlphaColor(colorTextBase, 0.25),\n colorFill: getAlphaColor(colorTextBase, 0.18),\n colorFillSecondary: getAlphaColor(colorTextBase, 0.12),\n colorFillTertiary: getAlphaColor(colorTextBase, 0.08),\n colorFillQuaternary: getAlphaColor(colorTextBase, 0.04),\n colorBgElevated: getSolidColor(colorBgBase, 12),\n colorBgContainer: getSolidColor(colorBgBase, 8),\n colorBgLayout: getSolidColor(colorBgBase, 0),\n colorBgSpotlight: getSolidColor(colorBgBase, 26),\n colorBorder: getSolidColor(colorBgBase, 26),\n colorBorderSecondary: getSolidColor(colorBgBase, 19)\n };\n};","import { generate } from '@ant-design/colors';\nimport { defaultPresetColors } from '../seed';\nimport genColorMapToken from '../shared/genColorMapToken';\nimport { generateColorPalettes, generateNeutralColorPalettes } from './colors';\nimport defaultAlgorithm from '../default';\nconst derivative = (token, mapToken) => {\n const colorPalettes = Object.keys(defaultPresetColors).map(colorKey => {\n const colors = generate(token[colorKey], {\n theme: 'dark'\n });\n return new Array(10).fill(1).reduce((prev, _, i) => {\n prev[`${colorKey}-${i + 1}`] = colors[i];\n prev[`${colorKey}${i + 1}`] = colors[i];\n return prev;\n }, {});\n }).reduce((prev, cur) => {\n prev = Object.assign(Object.assign({}, prev), cur);\n return prev;\n }, {});\n const mergedMapToken = mapToken !== null && mapToken !== void 0 ? mapToken : defaultAlgorithm(token);\n return Object.assign(Object.assign(Object.assign({}, mergedMapToken), colorPalettes), genColorMapToken(token, {\n generateColorPalettes,\n generateNeutralColorPalettes\n }));\n};\nexport default derivative;","import genControlHeight from '../shared/genControlHeight';\nimport defaultAlgorithm from '../default';\nimport genCompactSizeMapToken from './genCompactSizeMapToken';\nimport genFontMapToken from '../shared/genFontMapToken';\nconst derivative = (token, mapToken) => {\n const mergedMapToken = mapToken !== null && mapToken !== void 0 ? mapToken : defaultAlgorithm(token);\n const fontSize = mergedMapToken.fontSizeSM; // Smaller size font-size as base\n const controlHeight = mergedMapToken.controlHeight - 4;\n return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, mergedMapToken), genCompactSizeMapToken(mapToken !== null && mapToken !== void 0 ? mapToken : token)), genFontMapToken(fontSize)), {\n // controlHeight\n controlHeight\n }), genControlHeight(Object.assign(Object.assign({}, mergedMapToken), {\n controlHeight\n })));\n};\nexport default derivative;","export default function genSizeMapToken(token) {\n const {\n sizeUnit,\n sizeStep\n } = token;\n const compactSizeStep = sizeStep - 2;\n return {\n sizeXXL: sizeUnit * (compactSizeStep + 10),\n sizeXL: sizeUnit * (compactSizeStep + 6),\n sizeLG: sizeUnit * (compactSizeStep + 2),\n sizeMD: sizeUnit * (compactSizeStep + 2),\n sizeMS: sizeUnit * (compactSizeStep + 1),\n size: sizeUnit * compactSizeStep,\n sizeSM: sizeUnit * compactSizeStep,\n sizeXS: sizeUnit * (compactSizeStep - 1),\n sizeXXS: sizeUnit * (compactSizeStep - 1)\n };\n}","/* eslint-disable import/prefer-default-export */\nimport { defaultConfig, useToken as useInternalToken } from './internal';\nimport defaultAlgorithm from './themes/default';\nimport darkAlgorithm from './themes/dark';\nimport compactAlgorithm from './themes/compact';\n// ZombieJ: We export as object to user but array in internal.\n// This is used to minimize the bundle size for antd package but safe to refactor as object also.\n// Please do not export internal `useToken` directly to avoid something export unexpected.\n/** Get current context Design Token. Will be different if you are using nest theme config. */\nfunction useToken() {\n const [theme, token, hashId] = useInternalToken();\n return {\n theme,\n token,\n hashId\n };\n}\nexport default {\n /** @private Test Usage. Do not use in production. */\n defaultConfig,\n /** Default seedToken */\n defaultSeed: defaultConfig.token,\n useToken,\n defaultAlgorithm,\n darkAlgorithm,\n compactAlgorithm\n};","import { roundedArrow } from './roundedArrow';\nexport const MAX_VERTICAL_CONTENT_RADIUS = 8;\nexport function getArrowOffset(options) {\n const maxVerticalContentRadius = MAX_VERTICAL_CONTENT_RADIUS;\n const {\n contentRadius,\n limitVerticalRadius\n } = options;\n const dropdownArrowOffset = contentRadius > 12 ? contentRadius + 2 : 12;\n const dropdownArrowOffsetVertical = limitVerticalRadius ? maxVerticalContentRadius : dropdownArrowOffset;\n return {\n dropdownArrowOffset,\n dropdownArrowOffsetVertical\n };\n}\nfunction isInject(valid, code) {\n if (!valid) return {};\n return code;\n}\nexport default function getArrowStyle(token, options) {\n const {\n componentCls,\n sizePopupArrow,\n borderRadiusXS,\n borderRadiusOuter,\n boxShadowPopoverArrow\n } = token;\n const {\n colorBg,\n contentRadius = token.borderRadiusLG,\n limitVerticalRadius,\n arrowDistance = 0,\n arrowPlacement = {\n left: true,\n right: true,\n top: true,\n bottom: true\n }\n } = options;\n const {\n dropdownArrowOffsetVertical,\n dropdownArrowOffset\n } = getArrowOffset({\n contentRadius,\n limitVerticalRadius\n });\n return {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({\n // ============================ Basic ============================\n [`${componentCls}-arrow`]: [Object.assign(Object.assign({\n position: 'absolute',\n zIndex: 1,\n display: 'block'\n }, roundedArrow(sizePopupArrow, borderRadiusXS, borderRadiusOuter, colorBg, boxShadowPopoverArrow)), {\n '&:before': {\n background: colorBg\n }\n })]\n }, isInject(!!arrowPlacement.top, {\n [[`&-placement-top ${componentCls}-arrow`, `&-placement-topLeft ${componentCls}-arrow`, `&-placement-topRight ${componentCls}-arrow`].join(',')]: {\n bottom: arrowDistance,\n transform: 'translateY(100%) rotate(180deg)'\n },\n [`&-placement-top ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateX(-50%) translateY(100%) rotate(180deg)'\n },\n [`&-placement-topLeft ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: dropdownArrowOffset\n }\n },\n [`&-placement-topRight ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: dropdownArrowOffset\n }\n }\n })), isInject(!!arrowPlacement.bottom, {\n [[`&-placement-bottom ${componentCls}-arrow`, `&-placement-bottomLeft ${componentCls}-arrow`, `&-placement-bottomRight ${componentCls}-arrow`].join(',')]: {\n top: arrowDistance,\n transform: `translateY(-100%)`\n },\n [`&-placement-bottom ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: '50%'\n },\n transform: `translateX(-50%) translateY(-100%)`\n },\n [`&-placement-bottomLeft ${componentCls}-arrow`]: {\n left: {\n _skip_check_: true,\n value: dropdownArrowOffset\n }\n },\n [`&-placement-bottomRight ${componentCls}-arrow`]: {\n right: {\n _skip_check_: true,\n value: dropdownArrowOffset\n }\n }\n })), isInject(!!arrowPlacement.left, {\n [[`&-placement-left ${componentCls}-arrow`, `&-placement-leftTop ${componentCls}-arrow`, `&-placement-leftBottom ${componentCls}-arrow`].join(',')]: {\n right: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(100%) rotate(90deg)'\n },\n [`&-placement-left ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(100%) rotate(90deg)'\n },\n [`&-placement-leftTop ${componentCls}-arrow`]: {\n top: dropdownArrowOffsetVertical\n },\n [`&-placement-leftBottom ${componentCls}-arrow`]: {\n bottom: dropdownArrowOffsetVertical\n }\n })), isInject(!!arrowPlacement.right, {\n [[`&-placement-right ${componentCls}-arrow`, `&-placement-rightTop ${componentCls}-arrow`, `&-placement-rightBottom ${componentCls}-arrow`].join(',')]: {\n left: {\n _skip_check_: true,\n value: arrowDistance\n },\n transform: 'translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-right ${componentCls}-arrow`]: {\n top: {\n _skip_check_: true,\n value: '50%'\n },\n transform: 'translateY(-50%) translateX(-100%) rotate(-90deg)'\n },\n [`&-placement-rightTop ${componentCls}-arrow`]: {\n top: dropdownArrowOffsetVertical\n },\n [`&-placement-rightBottom ${componentCls}-arrow`]: {\n bottom: dropdownArrowOffsetVertical\n }\n }))\n };\n}","import { getArrowOffset } from '../style/placementArrow';\nexport function getOverflowOptions(placement, arrowOffset, arrowWidth, autoAdjustOverflow) {\n if (autoAdjustOverflow === false) {\n return {\n adjustX: false,\n adjustY: false\n };\n }\n const overflow = autoAdjustOverflow && typeof autoAdjustOverflow === 'object' ? autoAdjustOverflow : {};\n const baseOverflow = {};\n switch (placement) {\n case 'top':\n case 'bottom':\n baseOverflow.shiftX = arrowOffset.dropdownArrowOffset * 2 + arrowWidth;\n break;\n case 'left':\n case 'right':\n baseOverflow.shiftY = arrowOffset.dropdownArrowOffsetVertical * 2 + arrowWidth;\n break;\n }\n const mergedOverflow = Object.assign(Object.assign({}, baseOverflow), overflow);\n // Support auto shift\n if (!mergedOverflow.shiftX) {\n mergedOverflow.adjustX = true;\n }\n if (!mergedOverflow.shiftY) {\n mergedOverflow.adjustY = true;\n }\n return mergedOverflow;\n}\nconst PlacementAlignMap = {\n left: {\n points: ['cr', 'cl']\n },\n right: {\n points: ['cl', 'cr']\n },\n top: {\n points: ['bc', 'tc']\n },\n bottom: {\n points: ['tc', 'bc']\n },\n topLeft: {\n points: ['bl', 'tl']\n },\n leftTop: {\n points: ['tr', 'tl']\n },\n topRight: {\n points: ['br', 'tr']\n },\n rightTop: {\n points: ['tl', 'tr']\n },\n bottomRight: {\n points: ['tr', 'br']\n },\n rightBottom: {\n points: ['bl', 'br']\n },\n bottomLeft: {\n points: ['tl', 'bl']\n },\n leftBottom: {\n points: ['br', 'bl']\n }\n};\nconst ArrowCenterPlacementAlignMap = {\n topLeft: {\n points: ['bl', 'tc']\n },\n leftTop: {\n points: ['tr', 'cl']\n },\n topRight: {\n points: ['br', 'tc']\n },\n rightTop: {\n points: ['tl', 'cr']\n },\n bottomRight: {\n points: ['tr', 'bc']\n },\n rightBottom: {\n points: ['bl', 'cr']\n },\n bottomLeft: {\n points: ['tl', 'bc']\n },\n leftBottom: {\n points: ['br', 'cl']\n }\n};\nconst DisableAutoArrowList = new Set(['topLeft', 'topRight', 'bottomLeft', 'bottomRight', 'leftTop', 'leftBottom', 'rightTop', 'rightBottom']);\nexport default function getPlacements(config) {\n const {\n arrowWidth,\n autoAdjustOverflow,\n arrowPointAtCenter,\n offset,\n borderRadius\n } = config;\n const halfArrowWidth = arrowWidth / 2;\n const placementMap = {};\n Object.keys(PlacementAlignMap).forEach(key => {\n const template = arrowPointAtCenter && ArrowCenterPlacementAlignMap[key] || PlacementAlignMap[key];\n const placementInfo = Object.assign(Object.assign({}, template), {\n offset: [0, 0]\n });\n placementMap[key] = placementInfo;\n // Disable autoArrow since design is fixed position\n if (DisableAutoArrowList.has(key)) {\n placementInfo.autoArrow = false;\n }\n // Static offset\n switch (key) {\n case 'top':\n case 'topLeft':\n case 'topRight':\n placementInfo.offset[1] = -halfArrowWidth - offset;\n break;\n case 'bottom':\n case 'bottomLeft':\n case 'bottomRight':\n placementInfo.offset[1] = halfArrowWidth + offset;\n break;\n case 'left':\n case 'leftTop':\n case 'leftBottom':\n placementInfo.offset[0] = -halfArrowWidth - offset;\n break;\n case 'right':\n case 'rightTop':\n case 'rightBottom':\n placementInfo.offset[0] = halfArrowWidth + offset;\n break;\n }\n // Dynamic offset\n const arrowOffset = getArrowOffset({\n contentRadius: borderRadius,\n limitVerticalRadius: true\n });\n if (arrowPointAtCenter) {\n switch (key) {\n case 'topLeft':\n case 'bottomLeft':\n placementInfo.offset[0] = -arrowOffset.dropdownArrowOffset - halfArrowWidth;\n break;\n case 'topRight':\n case 'bottomRight':\n placementInfo.offset[0] = arrowOffset.dropdownArrowOffset + halfArrowWidth;\n break;\n case 'leftTop':\n case 'rightTop':\n placementInfo.offset[1] = -arrowOffset.dropdownArrowOffset - halfArrowWidth;\n break;\n case 'leftBottom':\n case 'rightBottom':\n placementInfo.offset[1] = arrowOffset.dropdownArrowOffset + halfArrowWidth;\n break;\n }\n }\n // Overflow\n placementInfo.overflow = getOverflowOptions(key, arrowOffset, arrowWidth, autoAdjustOverflow);\n });\n return placementMap;\n}","import { genPresetColor, resetComponent } from '../../style';\nimport { initZoomMotion } from '../../style/motion';\nimport getArrowStyle, { MAX_VERTICAL_CONTENT_RADIUS } from '../../style/placementArrow';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nconst genTooltipStyle = token => {\n const {\n componentCls,\n // ant-tooltip\n tooltipMaxWidth,\n tooltipColor,\n tooltipBg,\n tooltipBorderRadius,\n zIndexPopup,\n controlHeight,\n boxShadowSecondary,\n paddingSM,\n paddingXS,\n tooltipRadiusOuter\n } = token;\n return [{\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n zIndex: zIndexPopup,\n display: 'block',\n width: 'max-content',\n maxWidth: tooltipMaxWidth,\n visibility: 'visible',\n '&-hidden': {\n display: 'none'\n },\n '--antd-arrow-background-color': tooltipBg,\n // Wrapper for the tooltip content\n [`${componentCls}-inner`]: {\n minWidth: controlHeight,\n minHeight: controlHeight,\n padding: `${paddingSM / 2}px ${paddingXS}px`,\n color: tooltipColor,\n textAlign: 'start',\n textDecoration: 'none',\n wordWrap: 'break-word',\n backgroundColor: tooltipBg,\n borderRadius: tooltipBorderRadius,\n boxShadow: boxShadowSecondary\n },\n // Limit left and right placement radius\n [[`&-placement-left`, `&-placement-leftTop`, `&-placement-leftBottom`, `&-placement-right`, `&-placement-rightTop`, `&-placement-rightBottom`].join(',')]: {\n [`${componentCls}-inner`]: {\n borderRadius: Math.min(tooltipBorderRadius, MAX_VERTICAL_CONTENT_RADIUS)\n }\n },\n [`${componentCls}-content`]: {\n position: 'relative'\n }\n }), genPresetColor(token, (colorKey, _ref) => {\n let {\n darkColor\n } = _ref;\n return {\n [`&${componentCls}-${colorKey}`]: {\n [`${componentCls}-inner`]: {\n backgroundColor: darkColor\n },\n [`${componentCls}-arrow`]: {\n '--antd-arrow-background-color': darkColor\n }\n }\n };\n })), {\n // RTL\n '&-rtl': {\n direction: 'rtl'\n }\n })\n },\n // Arrow Style\n getArrowStyle(mergeToken(token, {\n borderRadiusOuter: tooltipRadiusOuter\n }), {\n colorBg: 'var(--antd-arrow-background-color)',\n contentRadius: tooltipBorderRadius,\n limitVerticalRadius: true\n }),\n // Pure Render\n {\n [`${componentCls}-pure`]: {\n position: 'relative',\n maxWidth: 'none',\n margin: token.sizePopupArrow\n }\n }];\n};\n// ============================== Export ==============================\nexport default ((prefixCls, injectStyle) => {\n const useOriginHook = genComponentStyleHook('Tooltip', token => {\n // Popover use Tooltip as internal component. We do not need to handle this.\n if (injectStyle === false) {\n return [];\n }\n const {\n borderRadius,\n colorTextLightSolid,\n colorBgDefault,\n borderRadiusOuter\n } = token;\n const TooltipToken = mergeToken(token, {\n // default variables\n tooltipMaxWidth: 250,\n tooltipColor: colorTextLightSolid,\n tooltipBorderRadius: borderRadius,\n tooltipBg: colorBgDefault,\n tooltipRadiusOuter: borderRadiusOuter > 4 ? 4 : borderRadiusOuter\n });\n return [genTooltipStyle(TooltipToken), initZoomMotion(token, 'zoom-big-fast')];\n }, _ref2 => {\n let {\n zIndexPopupBase,\n colorBgSpotlight\n } = _ref2;\n return {\n zIndexPopup: zIndexPopupBase + 70,\n colorBgDefault: colorBgSpotlight\n };\n });\n return useOriginHook(prefixCls);\n});","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport { PresetColors } from '../theme/interface';\nconst inverseColors = PresetColors.map(color => `${color}-inverse`);\nexport const PresetStatusColorTypes = ['success', 'processing', 'error', 'default', 'warning'];\n/**\n * determine if the color keyword belongs to the `Ant Design` {@link PresetColors}.\n * @param color color to be judged\n * @param includeInverse whether to include reversed colors\n */\nexport function isPresetColor(color) {\n let includeInverse = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n if (includeInverse) {\n return [].concat(_toConsumableArray(inverseColors), _toConsumableArray(PresetColors)).includes(color);\n }\n return PresetColors.includes(color);\n}\nexport function isPresetStatusColor(color) {\n return PresetStatusColorTypes.includes(color);\n}","/* eslint-disable import/prefer-default-export */\nimport classNames from 'classnames';\nimport { isPresetColor } from '../_util/colors';\nexport function parseColor(prefixCls, color) {\n const isInternalColor = isPresetColor(color);\n const className = classNames({\n [`${prefixCls}-${color}`]: color && isInternalColor\n });\n const overlayStyle = {};\n const arrowStyle = {};\n if (color && !isInternalColor) {\n overlayStyle.background = color;\n // @ts-ignore\n arrowStyle['--antd-arrow-background-color'] = color;\n }\n return {\n className,\n overlayStyle,\n arrowStyle\n };\n}","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport RcTooltip from 'rc-tooltip';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport theme from '../theme';\nimport { getTransitionName } from '../_util/motion';\nimport getPlacements from '../_util/placements';\nimport { cloneElement, isFragment, isValidElement } from '../_util/reactNode';\nimport warning from '../_util/warning';\nimport PurePanel from './PurePanel';\nimport useStyle from './style';\nimport { parseColor } from './util';\nconst {\n useToken\n} = theme;\nconst splitObject = (obj, keys) => {\n const picked = {};\n const omitted = Object.assign({}, obj);\n keys.forEach(key => {\n if (obj && key in obj) {\n picked[key] = obj[key];\n delete omitted[key];\n }\n });\n return {\n picked,\n omitted\n };\n};\n// Fix Tooltip won't hide at disabled button\n// mouse events don't trigger at disabled button in Chrome\n// https://github.com/react-component/tooltip/issues/18\nfunction getDisabledCompatibleChildren(element, prefixCls) {\n const elementType = element.type;\n if ((elementType.__ANT_BUTTON === true || element.type === 'button') && element.props.disabled || elementType.__ANT_SWITCH === true && (element.props.disabled || element.props.loading) || elementType.__ANT_RADIO === true && element.props.disabled) {\n // Pick some layout related style properties up to span\n // Prevent layout bugs like https://github.com/ant-design/ant-design/issues/5254\n const {\n picked,\n omitted\n } = splitObject(element.props.style, ['position', 'left', 'right', 'top', 'bottom', 'float', 'display', 'zIndex']);\n const spanStyle = Object.assign(Object.assign({\n display: 'inline-block'\n }, picked), {\n cursor: 'not-allowed',\n width: element.props.block ? '100%' : undefined\n });\n const buttonStyle = Object.assign(Object.assign({}, omitted), {\n pointerEvents: 'none'\n });\n const child = cloneElement(element, {\n style: buttonStyle,\n className: null\n });\n return /*#__PURE__*/React.createElement(\"span\", {\n style: spanStyle,\n className: classNames(element.props.className, `${prefixCls}-disabled-compatible-wrapper`)\n }, child);\n }\n return element;\n}\nconst Tooltip = /*#__PURE__*/React.forwardRef((props, ref) => {\n var _a, _b;\n const {\n prefixCls: customizePrefixCls,\n openClassName,\n getTooltipContainer,\n overlayClassName,\n color,\n overlayInnerStyle,\n children,\n afterOpenChange,\n afterVisibleChange,\n destroyTooltipOnHide,\n arrow = true\n } = props;\n const mergedShowArrow = !!arrow;\n const {\n token\n } = useToken();\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n // ============================== Ref ===============================\n const tooltipRef = React.useRef(null);\n const forceAlign = () => {\n var _a;\n (_a = tooltipRef.current) === null || _a === void 0 ? void 0 : _a.forceAlign();\n };\n React.useImperativeHandle(ref, () => ({\n forceAlign,\n forcePopupAlign: () => {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'Tooltip', '`forcePopupAlign` is align to `forceAlign` instead.') : void 0;\n forceAlign();\n }\n }));\n // ============================== Warn ==============================\n if (process.env.NODE_ENV !== 'production') {\n [['visible', 'open'], ['defaultVisible', 'defaultOpen'], ['onVisibleChange', 'onOpenChange'], ['afterVisibleChange', 'afterOpenChange'], ['arrowPointAtCenter', 'arrow']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n process.env.NODE_ENV !== \"production\" ? warning(!(deprecatedName in props), 'Tooltip', `\\`${deprecatedName}\\` is deprecated, please use \\`${newName}\\` instead.`) : void 0;\n });\n process.env.NODE_ENV !== \"production\" ? warning(!destroyTooltipOnHide || typeof destroyTooltipOnHide === 'boolean', 'Tooltip', '`destroyTooltipOnHide` no need config `keepParent` anymore. Please use `boolean` value directly.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!arrow || typeof arrow === 'boolean' || !('arrowPointAtCenter' in arrow), 'Tooltip', '`arrowPointAtCenter` in `arrow` is deprecated, please use `pointAtCenter` instead.') : void 0;\n }\n // ============================== Open ==============================\n const [open, setOpen] = useMergedState(false, {\n value: (_a = props.open) !== null && _a !== void 0 ? _a : props.visible,\n defaultValue: (_b = props.defaultOpen) !== null && _b !== void 0 ? _b : props.defaultVisible\n });\n const isNoTitle = () => {\n const {\n title,\n overlay\n } = props;\n return !title && !overlay && title !== 0; // overlay for old version compatibility\n };\n\n const onOpenChange = vis => {\n var _a, _b;\n setOpen(isNoTitle() ? false : vis);\n if (!isNoTitle()) {\n (_a = props.onOpenChange) === null || _a === void 0 ? void 0 : _a.call(props, vis);\n (_b = props.onVisibleChange) === null || _b === void 0 ? void 0 : _b.call(props, vis);\n }\n };\n const getTooltipPlacements = () => {\n var _a, _b;\n const {\n builtinPlacements,\n arrowPointAtCenter = false,\n autoAdjustOverflow = true\n } = props;\n let mergedArrowPointAtCenter = arrowPointAtCenter;\n if (typeof arrow === 'object') {\n mergedArrowPointAtCenter = (_b = (_a = arrow.pointAtCenter) !== null && _a !== void 0 ? _a : arrow.arrowPointAtCenter) !== null && _b !== void 0 ? _b : arrowPointAtCenter;\n }\n return builtinPlacements || getPlacements({\n arrowPointAtCenter: mergedArrowPointAtCenter,\n autoAdjustOverflow,\n arrowWidth: mergedShowArrow ? token.sizePopupArrow : 0,\n borderRadius: token.borderRadius,\n offset: token.marginXXS\n });\n };\n // 动态设置动画点\n const onPopupAlign = (domNode, align) => {\n const placements = getTooltipPlacements();\n // 当前返回的位置\n const placement = Object.keys(placements).find(key => {\n var _a, _b;\n return placements[key].points[0] === ((_a = align.points) === null || _a === void 0 ? void 0 : _a[0]) && placements[key].points[1] === ((_b = align.points) === null || _b === void 0 ? void 0 : _b[1]);\n });\n if (placement) {\n // 根据当前坐标设置动画点\n const rect = domNode.getBoundingClientRect();\n const transformOrigin = {\n top: '50%',\n left: '50%'\n };\n if (/top|Bottom/.test(placement)) {\n transformOrigin.top = `${rect.height - align.offset[1]}px`;\n } else if (/Top|bottom/.test(placement)) {\n transformOrigin.top = `${-align.offset[1]}px`;\n }\n if (/left|Right/.test(placement)) {\n transformOrigin.left = `${rect.width - align.offset[0]}px`;\n } else if (/right|Left/.test(placement)) {\n transformOrigin.left = `${-align.offset[0]}px`;\n }\n domNode.style.transformOrigin = `${transformOrigin.left} ${transformOrigin.top}`;\n }\n };\n const getOverlay = () => {\n const {\n title,\n overlay\n } = props;\n if (title === 0) {\n return title;\n }\n return overlay || title || '';\n };\n const {\n getPopupContainer,\n placement = 'top',\n mouseEnterDelay = 0.1,\n mouseLeaveDelay = 0.1,\n overlayStyle,\n rootClassName\n } = props,\n otherProps = __rest(props, [\"getPopupContainer\", \"placement\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayStyle\", \"rootClassName\"]);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const rootPrefixCls = getPrefixCls();\n const injectFromPopover = props['data-popover-inject'];\n let tempOpen = open;\n // Hide tooltip when there is no title\n if (!('open' in props) && !('visible' in props) && isNoTitle()) {\n tempOpen = false;\n }\n // ============================= Render =============================\n const child = getDisabledCompatibleChildren(isValidElement(children) && !isFragment(children) ? children : /*#__PURE__*/React.createElement(\"span\", null, children), prefixCls);\n const childProps = child.props;\n const childCls = !childProps.className || typeof childProps.className === 'string' ? classNames(childProps.className, {\n [openClassName || `${prefixCls}-open`]: true\n }) : childProps.className;\n // Style\n const [wrapSSR, hashId] = useStyle(prefixCls, !injectFromPopover);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const formattedOverlayInnerStyle = Object.assign(Object.assign({}, overlayInnerStyle), colorInfo.overlayStyle);\n const arrowContentStyle = colorInfo.arrowStyle;\n const customOverlayClassName = classNames(overlayClassName, {\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, colorInfo.className, rootClassName, hashId);\n return wrapSSR( /*#__PURE__*/React.createElement(RcTooltip, Object.assign({}, otherProps, {\n showArrow: mergedShowArrow,\n placement: placement,\n mouseEnterDelay: mouseEnterDelay,\n mouseLeaveDelay: mouseLeaveDelay,\n prefixCls: prefixCls,\n overlayClassName: customOverlayClassName,\n overlayStyle: Object.assign(Object.assign({}, arrowContentStyle), overlayStyle),\n getTooltipContainer: getPopupContainer || getTooltipContainer || getContextPopupContainer,\n ref: tooltipRef,\n builtinPlacements: getTooltipPlacements(),\n overlay: getOverlay(),\n visible: tempOpen,\n onVisibleChange: onOpenChange,\n afterVisibleChange: afterOpenChange !== null && afterOpenChange !== void 0 ? afterOpenChange : afterVisibleChange,\n onPopupAlign: onPopupAlign,\n overlayInnerStyle: formattedOverlayInnerStyle,\n arrowContent: /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-arrow-content`\n }),\n motion: {\n motionName: getTransitionName(rootPrefixCls, 'zoom-big-fast', props.transitionName),\n motionDeadline: 1000\n },\n destroyTooltipOnHide: !!destroyTooltipOnHide\n }), tempOpen ? cloneElement(child, {\n className: childCls\n }) : child));\n});\nif (process.env.NODE_ENV !== 'production') {\n Tooltip.displayName = 'Tooltip';\n}\nTooltip._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nexport default Tooltip;","import classNames from 'classnames';\nimport { Popup } from 'rc-tooltip';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nimport { parseColor } from './util';\n// ant-tooltip css-dev-only-do-not-override-w2s56n ant-tooltip-placement-top ant-tooltip-hidden\nexport default function PurePanel(props) {\n const {\n prefixCls: customizePrefixCls,\n className,\n placement = 'top',\n title,\n color,\n overlayInnerStyle\n } = props;\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('tooltip', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls, true);\n // Color\n const colorInfo = parseColor(prefixCls, color);\n const formattedOverlayInnerStyle = Object.assign(Object.assign({}, overlayInnerStyle), colorInfo.overlayStyle);\n const arrowContentStyle = colorInfo.arrowStyle;\n return wrapSSR( /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(hashId, prefixCls, `${prefixCls}-pure`, `${prefixCls}-placement-${placement}`, className, colorInfo.className),\n style: arrowContentStyle\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-arrow`\n }), /*#__PURE__*/React.createElement(Popup, Object.assign({}, props, {\n className: hashId,\n prefixCls: prefixCls,\n overlayInnerStyle: formattedOverlayInnerStyle\n }), title)));\n}","// This icon file is generated automatically.\nvar RightOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z\" } }] }, \"name\": \"right\", \"theme\": \"outlined\" };\nexport default RightOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport RightOutlinedSvg from \"@ant-design/icons-svg/es/asn/RightOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar RightOutlined = function RightOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: RightOutlinedSvg\n }));\n};\nRightOutlined.displayName = 'RightOutlined';\nexport default /*#__PURE__*/React.forwardRef(RightOutlined);","function ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\n\nvar vendorPrefix;\nvar jsCssMap = {\n Webkit: '-webkit-',\n Moz: '-moz-',\n // IE did it wrong again ...\n ms: '-ms-',\n O: '-o-'\n};\nfunction getVendorPrefix() {\n if (vendorPrefix !== undefined) {\n return vendorPrefix;\n }\n vendorPrefix = '';\n var style = document.createElement('p').style;\n var testProp = 'Transform';\n for (var key in jsCssMap) {\n if (key + testProp in style) {\n vendorPrefix = key;\n }\n }\n return vendorPrefix;\n}\nfunction getTransitionName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"TransitionProperty\") : 'transitionProperty';\n}\nfunction getTransformName() {\n return getVendorPrefix() ? \"\".concat(getVendorPrefix(), \"Transform\") : 'transform';\n}\nfunction setTransitionProperty(node, value) {\n var name = getTransitionName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transitionProperty') {\n node.style.transitionProperty = value;\n }\n }\n}\nfunction setTransform(node, value) {\n var name = getTransformName();\n if (name) {\n node.style[name] = value;\n if (name !== 'transform') {\n node.style.transform = value;\n }\n }\n}\nfunction getTransitionProperty(node) {\n return node.style.transitionProperty || node.style[getTransitionName()];\n}\nfunction getTransformXY(node) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var matrix = transform.replace(/[^0-9\\-.,]/g, '').split(',');\n return {\n x: parseFloat(matrix[12] || matrix[4], 0),\n y: parseFloat(matrix[13] || matrix[5], 0)\n };\n }\n return {\n x: 0,\n y: 0\n };\n}\nvar matrix2d = /matrix\\((.*)\\)/;\nvar matrix3d = /matrix3d\\((.*)\\)/;\nfunction setTransformXY(node, xy) {\n var style = window.getComputedStyle(node, null);\n var transform = style.getPropertyValue('transform') || style.getPropertyValue(getTransformName());\n if (transform && transform !== 'none') {\n var arr;\n var match2d = transform.match(matrix2d);\n if (match2d) {\n match2d = match2d[1];\n arr = match2d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[4] = xy.x;\n arr[5] = xy.y;\n setTransform(node, \"matrix(\".concat(arr.join(','), \")\"));\n } else {\n var match3d = transform.match(matrix3d)[1];\n arr = match3d.split(',').map(function (item) {\n return parseFloat(item, 10);\n });\n arr[12] = xy.x;\n arr[13] = xy.y;\n setTransform(node, \"matrix3d(\".concat(arr.join(','), \")\"));\n }\n } else {\n setTransform(node, \"translateX(\".concat(xy.x, \"px) translateY(\").concat(xy.y, \"px) translateZ(0)\"));\n }\n}\n\nvar RE_NUM = /[\\-+]?(?:\\d*\\.|)\\d+(?:[eE][\\-+]?\\d+|)/.source;\nvar getComputedStyleX;\n\n// https://stackoverflow.com/a/3485654/3040605\nfunction forceRelayout(elem) {\n var originalStyle = elem.style.display;\n elem.style.display = 'none';\n elem.offsetHeight; // eslint-disable-line\n elem.style.display = originalStyle;\n}\nfunction css(el, name, v) {\n var value = v;\n if (_typeof(name) === 'object') {\n for (var i in name) {\n if (name.hasOwnProperty(i)) {\n css(el, i, name[i]);\n }\n }\n return undefined;\n }\n if (typeof value !== 'undefined') {\n if (typeof value === 'number') {\n value = \"\".concat(value, \"px\");\n }\n el.style[name] = value;\n return undefined;\n }\n return getComputedStyleX(el, name);\n}\nfunction getClientPosition(elem) {\n var box;\n var x;\n var y;\n var doc = elem.ownerDocument;\n var body = doc.body;\n var docElem = doc && doc.documentElement;\n // 根据 GBS 最新数据,A-Grade Browsers 都已支持 getBoundingClientRect 方法,不用再考虑传统的实现方式\n box = elem.getBoundingClientRect();\n\n // 注:jQuery 还考虑减去 docElem.clientLeft/clientTop\n // 但测试发现,这样反而会导致当 html 和 body 有边距/边框样式时,获取的值不正确\n // 此外,ie6 会忽略 html 的 margin 值,幸运地是没有谁会去设置 html 的 margin\n\n x = Math.floor(box.left);\n y = Math.floor(box.top);\n\n // In IE, most of the time, 2 extra pixels are added to the top and left\n // due to the implicit 2-pixel inset border. In IE6/7 quirks mode and\n // IE6 standards mode, this border can be overridden by setting the\n // document element's border to zero -- thus, we cannot rely on the\n // offset always being 2 pixels.\n\n // In quirks mode, the offset can be determined by querying the body's\n // clientLeft/clientTop, but in standards mode, it is found by querying\n // the document element's clientLeft/clientTop. Since we already called\n // getClientBoundingRect we have already forced a reflow, so it is not\n // too expensive just to query them all.\n\n // ie 下应该减去窗口的边框吧,毕竟默认 absolute 都是相对窗口定位的\n // 窗口边框标准是设 documentElement ,quirks 时设置 body\n // 最好禁止在 body 和 html 上边框 ,但 ie < 9 html 默认有 2px ,减去\n // 但是非 ie 不可能设置窗口边框,body html 也不是窗口 ,ie 可以通过 html,body 设置\n // 标准 ie 下 docElem.clientTop 就是 border-top\n // ie7 html 即窗口边框改变不了。永远为 2\n // 但标准 firefox/chrome/ie9 下 docElem.clientTop 是窗口边框,即使设了 border-top 也为 0\n\n x -= docElem.clientLeft || body.clientLeft || 0;\n y -= docElem.clientTop || body.clientTop || 0;\n return {\n left: x,\n top: y\n };\n}\nfunction getScroll(w, top) {\n var ret = w[\"page\".concat(top ? 'Y' : 'X', \"Offset\")];\n var method = \"scroll\".concat(top ? 'Top' : 'Left');\n if (typeof ret !== 'number') {\n var d = w.document;\n // ie6,7,8 standard mode\n ret = d.documentElement[method];\n if (typeof ret !== 'number') {\n // quirks mode\n ret = d.body[method];\n }\n }\n return ret;\n}\nfunction getScrollLeft(w) {\n return getScroll(w);\n}\nfunction getScrollTop(w) {\n return getScroll(w, true);\n}\nfunction getOffset(el) {\n var pos = getClientPosition(el);\n var doc = el.ownerDocument;\n var w = doc.defaultView || doc.parentWindow;\n pos.left += getScrollLeft(w);\n pos.top += getScrollTop(w);\n return pos;\n}\n\n/**\n * A crude way of determining if an object is a window\n * @member util\n */\nfunction isWindow(obj) {\n // must use == for ie8\n /* eslint eqeqeq:0 */\n return obj !== null && obj !== undefined && obj == obj.window;\n}\nfunction getDocument(node) {\n if (isWindow(node)) {\n return node.document;\n }\n if (node.nodeType === 9) {\n return node;\n }\n return node.ownerDocument;\n}\nfunction _getComputedStyle(elem, name, cs) {\n var computedStyle = cs;\n var val = '';\n var d = getDocument(elem);\n computedStyle = computedStyle || d.defaultView.getComputedStyle(elem, null);\n\n // https://github.com/kissyteam/kissy/issues/61\n if (computedStyle) {\n val = computedStyle.getPropertyValue(name) || computedStyle[name];\n }\n return val;\n}\nvar _RE_NUM_NO_PX = new RegExp(\"^(\".concat(RE_NUM, \")(?!px)[a-z%]+$\"), 'i');\nvar RE_POS = /^(top|right|bottom|left)$/;\nvar CURRENT_STYLE = 'currentStyle';\nvar RUNTIME_STYLE = 'runtimeStyle';\nvar LEFT = 'left';\nvar PX = 'px';\nfunction _getComputedStyleIE(elem, name) {\n // currentStyle maybe null\n // http://msdn.microsoft.com/en-us/library/ms535231.aspx\n var ret = elem[CURRENT_STYLE] && elem[CURRENT_STYLE][name];\n\n // 当 width/height 设置为百分比时,通过 pixelLeft 方式转换的 width/height 值\n // 一开始就处理了! CUSTOM_STYLE.height,CUSTOM_STYLE.width ,cssHook 解决@2011-08-19\n // 在 ie 下不对,需要直接用 offset 方式\n // borderWidth 等值也有问题,但考虑到 borderWidth 设为百分比的概率很小,这里就不考虑了\n\n // From the awesome hack by Dean Edwards\n // http://erik.eae.net/archives/2007/07/27/18.54.15/#comment-102291\n // If we're not dealing with a regular pixel number\n // but a number that has a weird ending, we need to convert it to pixels\n // exclude left right for relativity\n if (_RE_NUM_NO_PX.test(ret) && !RE_POS.test(name)) {\n // Remember the original values\n var style = elem.style;\n var left = style[LEFT];\n var rsLeft = elem[RUNTIME_STYLE][LEFT];\n\n // prevent flashing of content\n elem[RUNTIME_STYLE][LEFT] = elem[CURRENT_STYLE][LEFT];\n\n // Put in the new values to get a computed value out\n style[LEFT] = name === 'fontSize' ? '1em' : ret || 0;\n ret = style.pixelLeft + PX;\n\n // Revert the changed values\n style[LEFT] = left;\n elem[RUNTIME_STYLE][LEFT] = rsLeft;\n }\n return ret === '' ? 'auto' : ret;\n}\nif (typeof window !== 'undefined') {\n getComputedStyleX = window.getComputedStyle ? _getComputedStyle : _getComputedStyleIE;\n}\nfunction getOffsetDirection(dir, option) {\n if (dir === 'left') {\n return option.useCssRight ? 'right' : dir;\n }\n return option.useCssBottom ? 'bottom' : dir;\n}\nfunction oppositeOffsetDirection(dir) {\n if (dir === 'left') {\n return 'right';\n } else if (dir === 'right') {\n return 'left';\n } else if (dir === 'top') {\n return 'bottom';\n } else if (dir === 'bottom') {\n return 'top';\n }\n}\n\n// 设置 elem 相对 elem.ownerDocument 的坐标\nfunction setLeftTop(elem, offset, option) {\n // set position first, in-case top/left are set even on static elem\n if (css(elem, 'position') === 'static') {\n elem.style.position = 'relative';\n }\n var presetH = -999;\n var presetV = -999;\n var horizontalProperty = getOffsetDirection('left', option);\n var verticalProperty = getOffsetDirection('top', option);\n var oppositeHorizontalProperty = oppositeOffsetDirection(horizontalProperty);\n var oppositeVerticalProperty = oppositeOffsetDirection(verticalProperty);\n if (horizontalProperty !== 'left') {\n presetH = 999;\n }\n if (verticalProperty !== 'top') {\n presetV = 999;\n }\n var originalTransition = '';\n var originalOffset = getOffset(elem);\n if ('left' in offset || 'top' in offset) {\n originalTransition = getTransitionProperty(elem) || '';\n setTransitionProperty(elem, 'none');\n }\n if ('left' in offset) {\n elem.style[oppositeHorizontalProperty] = '';\n elem.style[horizontalProperty] = \"\".concat(presetH, \"px\");\n }\n if ('top' in offset) {\n elem.style[oppositeVerticalProperty] = '';\n elem.style[verticalProperty] = \"\".concat(presetV, \"px\");\n }\n // force relayout\n forceRelayout(elem);\n var old = getOffset(elem);\n var originalStyle = {};\n for (var key in offset) {\n if (offset.hasOwnProperty(key)) {\n var dir = getOffsetDirection(key, option);\n var preset = key === 'left' ? presetH : presetV;\n var off = originalOffset[key] - old[key];\n if (dir === key) {\n originalStyle[dir] = preset + off;\n } else {\n originalStyle[dir] = preset - off;\n }\n }\n }\n css(elem, originalStyle);\n // force relayout\n forceRelayout(elem);\n if ('left' in offset || 'top' in offset) {\n setTransitionProperty(elem, originalTransition);\n }\n var ret = {};\n for (var _key in offset) {\n if (offset.hasOwnProperty(_key)) {\n var _dir = getOffsetDirection(_key, option);\n var _off = offset[_key] - originalOffset[_key];\n if (_key === _dir) {\n ret[_dir] = originalStyle[_dir] + _off;\n } else {\n ret[_dir] = originalStyle[_dir] - _off;\n }\n }\n }\n css(elem, ret);\n}\nfunction setTransform$1(elem, offset) {\n var originalOffset = getOffset(elem);\n var originalXY = getTransformXY(elem);\n var resultXY = {\n x: originalXY.x,\n y: originalXY.y\n };\n if ('left' in offset) {\n resultXY.x = originalXY.x + offset.left - originalOffset.left;\n }\n if ('top' in offset) {\n resultXY.y = originalXY.y + offset.top - originalOffset.top;\n }\n setTransformXY(elem, resultXY);\n}\nfunction setOffset(elem, offset, option) {\n if (option.ignoreShake) {\n var oriOffset = getOffset(elem);\n var oLeft = oriOffset.left.toFixed(0);\n var oTop = oriOffset.top.toFixed(0);\n var tLeft = offset.left.toFixed(0);\n var tTop = offset.top.toFixed(0);\n if (oLeft === tLeft && oTop === tTop) {\n return;\n }\n }\n if (option.useCssRight || option.useCssBottom) {\n setLeftTop(elem, offset, option);\n } else if (option.useCssTransform && getTransformName() in document.body.style) {\n setTransform$1(elem, offset);\n } else {\n setLeftTop(elem, offset, option);\n }\n}\nfunction each(arr, fn) {\n for (var i = 0; i < arr.length; i++) {\n fn(arr[i]);\n }\n}\nfunction isBorderBoxFn(elem) {\n return getComputedStyleX(elem, 'boxSizing') === 'border-box';\n}\nvar BOX_MODELS = ['margin', 'border', 'padding'];\nvar CONTENT_INDEX = -1;\nvar PADDING_INDEX = 2;\nvar BORDER_INDEX = 1;\nvar MARGIN_INDEX = 0;\nfunction swap(elem, options, callback) {\n var old = {};\n var style = elem.style;\n var name;\n\n // Remember the old values, and insert the new ones\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n old[name] = style[name];\n style[name] = options[name];\n }\n }\n callback.call(elem);\n\n // Revert the old values\n for (name in options) {\n if (options.hasOwnProperty(name)) {\n style[name] = old[name];\n }\n }\n}\nfunction getPBMWidth(elem, props, which) {\n var value = 0;\n var prop;\n var j;\n var i;\n for (j = 0; j < props.length; j++) {\n prop = props[j];\n if (prop) {\n for (i = 0; i < which.length; i++) {\n var cssProp = void 0;\n if (prop === 'border') {\n cssProp = \"\".concat(prop).concat(which[i], \"Width\");\n } else {\n cssProp = prop + which[i];\n }\n value += parseFloat(getComputedStyleX(elem, cssProp)) || 0;\n }\n }\n }\n return value;\n}\nvar domUtils = {\n getParent: function getParent(element) {\n var parent = element;\n do {\n if (parent.nodeType === 11 && parent.host) {\n parent = parent.host;\n } else {\n parent = parent.parentNode;\n }\n } while (parent && parent.nodeType !== 1 && parent.nodeType !== 9);\n return parent;\n }\n};\neach(['Width', 'Height'], function (name) {\n domUtils[\"doc\".concat(name)] = function (refWin) {\n var d = refWin.document;\n return Math.max(\n // firefox chrome documentElement.scrollHeight< body.scrollHeight\n // ie standard mode : documentElement.scrollHeight> body.scrollHeight\n d.documentElement[\"scroll\".concat(name)],\n // quirks : documentElement.scrollHeight 最大等于可视窗口多一点?\n d.body[\"scroll\".concat(name)], domUtils[\"viewport\".concat(name)](d));\n };\n domUtils[\"viewport\".concat(name)] = function (win) {\n // pc browser includes scrollbar in window.innerWidth\n var prop = \"client\".concat(name);\n var doc = win.document;\n var body = doc.body;\n var documentElement = doc.documentElement;\n var documentElementProp = documentElement[prop];\n // 标准模式取 documentElement\n // backcompat 取 body\n return doc.compatMode === 'CSS1Compat' && documentElementProp || body && body[prop] || documentElementProp;\n };\n});\n\n/*\n 得到元素的大小信息\n @param elem\n @param name\n @param {String} [extra] 'padding' : (css width) + padding\n 'border' : (css width) + padding + border\n 'margin' : (css width) + padding + border + margin\n */\nfunction getWH(elem, name, ex) {\n var extra = ex;\n if (isWindow(elem)) {\n return name === 'width' ? domUtils.viewportWidth(elem) : domUtils.viewportHeight(elem);\n } else if (elem.nodeType === 9) {\n return name === 'width' ? domUtils.docWidth(elem) : domUtils.docHeight(elem);\n }\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n var borderBoxValue = name === 'width' ? Math.floor(elem.getBoundingClientRect().width) : Math.floor(elem.getBoundingClientRect().height);\n var isBorderBox = isBorderBoxFn(elem);\n var cssBoxValue = 0;\n if (borderBoxValue === null || borderBoxValue === undefined || borderBoxValue <= 0) {\n borderBoxValue = undefined;\n // Fall back to computed then un computed css if necessary\n cssBoxValue = getComputedStyleX(elem, name);\n if (cssBoxValue === null || cssBoxValue === undefined || Number(cssBoxValue) < 0) {\n cssBoxValue = elem.style[name] || 0;\n }\n // Normalize '', auto, and prepare for extra\n cssBoxValue = Math.floor(parseFloat(cssBoxValue)) || 0;\n }\n if (extra === undefined) {\n extra = isBorderBox ? BORDER_INDEX : CONTENT_INDEX;\n }\n var borderBoxValueOrIsBorderBox = borderBoxValue !== undefined || isBorderBox;\n var val = borderBoxValue || cssBoxValue;\n if (extra === CONTENT_INDEX) {\n if (borderBoxValueOrIsBorderBox) {\n return val - getPBMWidth(elem, ['border', 'padding'], which);\n }\n return cssBoxValue;\n } else if (borderBoxValueOrIsBorderBox) {\n if (extra === BORDER_INDEX) {\n return val;\n }\n return val + (extra === PADDING_INDEX ? -getPBMWidth(elem, ['border'], which) : getPBMWidth(elem, ['margin'], which));\n }\n return cssBoxValue + getPBMWidth(elem, BOX_MODELS.slice(extra), which);\n}\nvar cssShow = {\n position: 'absolute',\n visibility: 'hidden',\n display: 'block'\n};\n\n// fix #119 : https://github.com/kissyteam/kissy/issues/119\nfunction getWHIgnoreDisplay() {\n for (var _len = arguments.length, args = new Array(_len), _key2 = 0; _key2 < _len; _key2++) {\n args[_key2] = arguments[_key2];\n }\n var val;\n var elem = args[0];\n // in case elem is window\n // elem.offsetWidth === undefined\n if (elem.offsetWidth !== 0) {\n val = getWH.apply(undefined, args);\n } else {\n swap(elem, cssShow, function () {\n val = getWH.apply(undefined, args);\n });\n }\n return val;\n}\neach(['width', 'height'], function (name) {\n var first = name.charAt(0).toUpperCase() + name.slice(1);\n domUtils[\"outer\".concat(first)] = function (el, includeMargin) {\n return el && getWHIgnoreDisplay(el, name, includeMargin ? MARGIN_INDEX : BORDER_INDEX);\n };\n var which = name === 'width' ? ['Left', 'Right'] : ['Top', 'Bottom'];\n domUtils[name] = function (elem, v) {\n var val = v;\n if (val !== undefined) {\n if (elem) {\n var isBorderBox = isBorderBoxFn(elem);\n if (isBorderBox) {\n val += getPBMWidth(elem, ['padding', 'border'], which);\n }\n return css(elem, name, val);\n }\n return undefined;\n }\n return elem && getWHIgnoreDisplay(elem, name, CONTENT_INDEX);\n };\n});\nfunction mix(to, from) {\n for (var i in from) {\n if (from.hasOwnProperty(i)) {\n to[i] = from[i];\n }\n }\n return to;\n}\nvar utils = {\n getWindow: function getWindow(node) {\n if (node && node.document && node.setTimeout) {\n return node;\n }\n var doc = node.ownerDocument || node;\n return doc.defaultView || doc.parentWindow;\n },\n getDocument: getDocument,\n offset: function offset(el, value, option) {\n if (typeof value !== 'undefined') {\n setOffset(el, value, option || {});\n } else {\n return getOffset(el);\n }\n },\n isWindow: isWindow,\n each: each,\n css: css,\n clone: function clone(obj) {\n var i;\n var ret = {};\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret[i] = obj[i];\n }\n }\n var overflow = obj.overflow;\n if (overflow) {\n for (i in obj) {\n if (obj.hasOwnProperty(i)) {\n ret.overflow[i] = obj.overflow[i];\n }\n }\n }\n return ret;\n },\n mix: mix,\n getWindowScrollLeft: function getWindowScrollLeft(w) {\n return getScrollLeft(w);\n },\n getWindowScrollTop: function getWindowScrollTop(w) {\n return getScrollTop(w);\n },\n merge: function merge() {\n var ret = {};\n for (var i = 0; i < arguments.length; i++) {\n utils.mix(ret, i < 0 || arguments.length <= i ? undefined : arguments[i]);\n }\n return ret;\n },\n viewportWidth: 0,\n viewportHeight: 0\n};\nmix(utils, domUtils);\n\n/**\n * 得到会导致元素显示不全的祖先元素\n */\nvar getParent = utils.getParent;\nfunction getOffsetParent(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return null;\n }\n // ie 这个也不是完全可行\n /*\n <div style=\"width: 50px;height: 100px;overflow: hidden\">\n <div style=\"width: 50px;height: 100px;position: relative;\" id=\"d6\">\n 元素 6 高 100px 宽 50px<br/>\n </div>\n </div>\n */\n // element.offsetParent does the right thing in ie7 and below. Return parent with layout!\n // In other browsers it only includes elements with position absolute, relative or\n // fixed, not elements with overflow set to auto or scroll.\n // if (UA.ie && ieMode < 8) {\n // return element.offsetParent;\n // }\n // 统一的 offsetParent 方法\n var doc = utils.getDocument(element);\n var body = doc.body;\n var parent;\n var positionStyle = utils.css(element, 'position');\n var skipStatic = positionStyle === 'fixed' || positionStyle === 'absolute';\n if (!skipStatic) {\n return element.nodeName.toLowerCase() === 'html' ? null : getParent(element);\n }\n for (parent = getParent(element); parent && parent !== body && parent.nodeType !== 9; parent = getParent(parent)) {\n positionStyle = utils.css(parent, 'position');\n if (positionStyle !== 'static') {\n return parent;\n }\n }\n return null;\n}\n\nvar getParent$1 = utils.getParent;\nfunction isAncestorFixed(element) {\n if (utils.isWindow(element) || element.nodeType === 9) {\n return false;\n }\n var doc = utils.getDocument(element);\n var body = doc.body;\n var parent = null;\n for (parent = getParent$1(element);\n // 修复元素位于 document.documentElement 下导致崩溃问题\n parent && parent !== body && parent !== doc; parent = getParent$1(parent)) {\n var positionStyle = utils.css(parent, 'position');\n if (positionStyle === 'fixed') {\n return true;\n }\n }\n return false;\n}\n\n/**\n * 获得元素的显示部分的区域\n */\nfunction getVisibleRectForElement(element, alwaysByViewport) {\n var visibleRect = {\n left: 0,\n right: Infinity,\n top: 0,\n bottom: Infinity\n };\n var el = getOffsetParent(element);\n var doc = utils.getDocument(element);\n var win = doc.defaultView || doc.parentWindow;\n var body = doc.body;\n var documentElement = doc.documentElement;\n\n // Determine the size of the visible rect by climbing the dom accounting for\n // all scrollable containers.\n while (el) {\n // clientWidth is zero for inline block elements in ie.\n if ((navigator.userAgent.indexOf('MSIE') === -1 || el.clientWidth !== 0) &&\n // body may have overflow set on it, yet we still get the entire\n // viewport. In some browsers, el.offsetParent may be\n // document.documentElement, so check for that too.\n el !== body && el !== documentElement && utils.css(el, 'overflow') !== 'visible') {\n var pos = utils.offset(el);\n // add border\n pos.left += el.clientLeft;\n pos.top += el.clientTop;\n visibleRect.top = Math.max(visibleRect.top, pos.top);\n visibleRect.right = Math.min(visibleRect.right,\n // consider area without scrollBar\n pos.left + el.clientWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, pos.top + el.clientHeight);\n visibleRect.left = Math.max(visibleRect.left, pos.left);\n } else if (el === body || el === documentElement) {\n break;\n }\n el = getOffsetParent(el);\n }\n\n // Set element position to fixed\n // make sure absolute element itself don't affect it's visible area\n // https://github.com/ant-design/ant-design/issues/7601\n var originalPosition = null;\n if (!utils.isWindow(element) && element.nodeType !== 9) {\n originalPosition = element.style.position;\n var position = utils.css(element, 'position');\n if (position === 'absolute') {\n element.style.position = 'fixed';\n }\n }\n var scrollX = utils.getWindowScrollLeft(win);\n var scrollY = utils.getWindowScrollTop(win);\n var viewportWidth = utils.viewportWidth(win);\n var viewportHeight = utils.viewportHeight(win);\n var documentWidth = documentElement.scrollWidth;\n var documentHeight = documentElement.scrollHeight;\n\n // scrollXXX on html is sync with body which means overflow: hidden on body gets wrong scrollXXX.\n // We should cut this ourself.\n var bodyStyle = window.getComputedStyle(body);\n if (bodyStyle.overflowX === 'hidden') {\n documentWidth = win.innerWidth;\n }\n if (bodyStyle.overflowY === 'hidden') {\n documentHeight = win.innerHeight;\n }\n\n // Reset element position after calculate the visible area\n if (element.style) {\n element.style.position = originalPosition;\n }\n if (alwaysByViewport || isAncestorFixed(element)) {\n // Clip by viewport's size.\n visibleRect.left = Math.max(visibleRect.left, scrollX);\n visibleRect.top = Math.max(visibleRect.top, scrollY);\n visibleRect.right = Math.min(visibleRect.right, scrollX + viewportWidth);\n visibleRect.bottom = Math.min(visibleRect.bottom, scrollY + viewportHeight);\n } else {\n // Clip by document's size.\n var maxVisibleWidth = Math.max(documentWidth, scrollX + viewportWidth);\n visibleRect.right = Math.min(visibleRect.right, maxVisibleWidth);\n var maxVisibleHeight = Math.max(documentHeight, scrollY + viewportHeight);\n visibleRect.bottom = Math.min(visibleRect.bottom, maxVisibleHeight);\n }\n return visibleRect.top >= 0 && visibleRect.left >= 0 && visibleRect.bottom > visibleRect.top && visibleRect.right > visibleRect.left ? visibleRect : null;\n}\n\nfunction adjustForViewport(elFuturePos, elRegion, visibleRect, overflow) {\n var pos = utils.clone(elFuturePos);\n var size = {\n width: elRegion.width,\n height: elRegion.height\n };\n if (overflow.adjustX && pos.left < visibleRect.left) {\n pos.left = visibleRect.left;\n }\n\n // Left edge inside and right edge outside viewport, try to resize it.\n if (overflow.resizeWidth && pos.left >= visibleRect.left && pos.left + size.width > visibleRect.right) {\n size.width -= pos.left + size.width - visibleRect.right;\n }\n\n // Right edge outside viewport, try to move it.\n if (overflow.adjustX && pos.left + size.width > visibleRect.right) {\n // 保证左边界和可视区域左边界对齐\n pos.left = Math.max(visibleRect.right - size.width, visibleRect.left);\n }\n\n // Top edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top < visibleRect.top) {\n pos.top = visibleRect.top;\n }\n\n // Top edge inside and bottom edge outside viewport, try to resize it.\n if (overflow.resizeHeight && pos.top >= visibleRect.top && pos.top + size.height > visibleRect.bottom) {\n size.height -= pos.top + size.height - visibleRect.bottom;\n }\n\n // Bottom edge outside viewport, try to move it.\n if (overflow.adjustY && pos.top + size.height > visibleRect.bottom) {\n // 保证上边界和可视区域上边界对齐\n pos.top = Math.max(visibleRect.bottom - size.height, visibleRect.top);\n }\n return utils.mix(pos, size);\n}\n\nfunction getRegion(node) {\n var offset;\n var w;\n var h;\n if (!utils.isWindow(node) && node.nodeType !== 9) {\n offset = utils.offset(node);\n w = utils.outerWidth(node);\n h = utils.outerHeight(node);\n } else {\n var win = utils.getWindow(node);\n offset = {\n left: utils.getWindowScrollLeft(win),\n top: utils.getWindowScrollTop(win)\n };\n w = utils.viewportWidth(win);\n h = utils.viewportHeight(win);\n }\n offset.width = w;\n offset.height = h;\n return offset;\n}\n\n/**\n * 获取 node 上的 align 对齐点 相对于页面的坐标\n */\n\nfunction getAlignOffset(region, align) {\n var V = align.charAt(0);\n var H = align.charAt(1);\n var w = region.width;\n var h = region.height;\n var x = region.left;\n var y = region.top;\n if (V === 'c') {\n y += h / 2;\n } else if (V === 'b') {\n y += h;\n }\n if (H === 'c') {\n x += w / 2;\n } else if (H === 'r') {\n x += w;\n }\n return {\n left: x,\n top: y\n };\n}\n\nfunction getElFuturePos(elRegion, refNodeRegion, points, offset, targetOffset) {\n var p1 = getAlignOffset(refNodeRegion, points[1]);\n var p2 = getAlignOffset(elRegion, points[0]);\n var diff = [p2.left - p1.left, p2.top - p1.top];\n return {\n left: Math.round(elRegion.left - diff[0] + offset[0] - targetOffset[0]),\n top: Math.round(elRegion.top - diff[1] + offset[1] - targetOffset[1])\n };\n}\n\n/**\n * align dom node flexibly\n * @author yiminghe@gmail.com\n */\n\n// http://yiminghe.iteye.com/blog/1124720\n\nfunction isFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left < visibleRect.left || elFuturePos.left + elRegion.width > visibleRect.right;\n}\nfunction isFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top < visibleRect.top || elFuturePos.top + elRegion.height > visibleRect.bottom;\n}\nfunction isCompleteFailX(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.left > visibleRect.right || elFuturePos.left + elRegion.width < visibleRect.left;\n}\nfunction isCompleteFailY(elFuturePos, elRegion, visibleRect) {\n return elFuturePos.top > visibleRect.bottom || elFuturePos.top + elRegion.height < visibleRect.top;\n}\nfunction flip(points, reg, map) {\n var ret = [];\n utils.each(points, function (p) {\n ret.push(p.replace(reg, function (m) {\n return map[m];\n }));\n });\n return ret;\n}\nfunction flipOffset(offset, index) {\n offset[index] = -offset[index];\n return offset;\n}\nfunction convertOffset(str, offsetLen) {\n var n;\n if (/%$/.test(str)) {\n n = parseInt(str.substring(0, str.length - 1), 10) / 100 * offsetLen;\n } else {\n n = parseInt(str, 10);\n }\n return n || 0;\n}\nfunction normalizeOffset(offset, el) {\n offset[0] = convertOffset(offset[0], el.width);\n offset[1] = convertOffset(offset[1], el.height);\n}\n\n/**\n * @param el\n * @param tgtRegion 参照节点所占的区域: { left, top, width, height }\n * @param align\n */\nfunction doAlign(el, tgtRegion, align, isTgtRegionVisible) {\n var points = align.points;\n var offset = align.offset || [0, 0];\n var targetOffset = align.targetOffset || [0, 0];\n var overflow = align.overflow;\n var source = align.source || el;\n offset = [].concat(offset);\n targetOffset = [].concat(targetOffset);\n overflow = overflow || {};\n var newOverflowCfg = {};\n var fail = 0;\n var alwaysByViewport = !!(overflow && overflow.alwaysByViewport);\n // 当前节点可以被放置的显示区域\n var visibleRect = getVisibleRectForElement(source, alwaysByViewport);\n // 当前节点所占的区域, left/top/width/height\n var elRegion = getRegion(source);\n // 将 offset 转换成数值,支持百分比\n normalizeOffset(offset, elRegion);\n normalizeOffset(targetOffset, tgtRegion);\n // 当前节点将要被放置的位置\n var elFuturePos = getElFuturePos(elRegion, tgtRegion, points, offset, targetOffset);\n // 当前节点将要所处的区域\n var newElRegion = utils.merge(elRegion, elFuturePos);\n\n // 如果可视区域不能完全放置当前节点时允许调整\n if (visibleRect && (overflow.adjustX || overflow.adjustY) && isTgtRegionVisible) {\n if (overflow.adjustX) {\n // 如果横向不能放下\n if (isFailX(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var newPoints = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l'\n });\n // 偏移量也反下\n var newOffset = flipOffset(offset, 0);\n var newTargetOffset = flipOffset(targetOffset, 0);\n var newElFuturePos = getElFuturePos(elRegion, tgtRegion, newPoints, newOffset, newTargetOffset);\n if (!isCompleteFailX(newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = newPoints;\n offset = newOffset;\n targetOffset = newTargetOffset;\n }\n }\n }\n if (overflow.adjustY) {\n // 如果纵向不能放下\n if (isFailY(elFuturePos, elRegion, visibleRect)) {\n // 对齐位置反下\n var _newPoints = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't'\n });\n // 偏移量也反下\n var _newOffset = flipOffset(offset, 1);\n var _newTargetOffset = flipOffset(targetOffset, 1);\n var _newElFuturePos = getElFuturePos(elRegion, tgtRegion, _newPoints, _newOffset, _newTargetOffset);\n if (!isCompleteFailY(_newElFuturePos, elRegion, visibleRect)) {\n fail = 1;\n points = _newPoints;\n offset = _newOffset;\n targetOffset = _newTargetOffset;\n }\n }\n }\n\n // 如果失败,重新计算当前节点将要被放置的位置\n if (fail) {\n elFuturePos = getElFuturePos(elRegion, tgtRegion, points, offset, targetOffset);\n utils.mix(newElRegion, elFuturePos);\n }\n var isStillFailX = isFailX(elFuturePos, elRegion, visibleRect);\n var isStillFailY = isFailY(elFuturePos, elRegion, visibleRect);\n // 检查反下后的位置是否可以放下了,如果仍然放不下:\n // 1. 复原修改过的定位参数\n if (isStillFailX || isStillFailY) {\n var _newPoints2 = points;\n\n // 重置对应部分的翻转逻辑\n if (isStillFailX) {\n _newPoints2 = flip(points, /[lr]/gi, {\n l: 'r',\n r: 'l'\n });\n }\n if (isStillFailY) {\n _newPoints2 = flip(points, /[tb]/gi, {\n t: 'b',\n b: 't'\n });\n }\n points = _newPoints2;\n offset = align.offset || [0, 0];\n targetOffset = align.targetOffset || [0, 0];\n }\n // 2. 只有指定了可以调整当前方向才调整\n newOverflowCfg.adjustX = overflow.adjustX && isStillFailX;\n newOverflowCfg.adjustY = overflow.adjustY && isStillFailY;\n\n // 确实要调整,甚至可能会调整高度宽度\n if (newOverflowCfg.adjustX || newOverflowCfg.adjustY) {\n newElRegion = adjustForViewport(elFuturePos, elRegion, visibleRect, newOverflowCfg);\n }\n }\n\n // need judge to in case set fixed with in css on height auto element\n if (newElRegion.width !== elRegion.width) {\n utils.css(source, 'width', utils.width(source) + newElRegion.width - elRegion.width);\n }\n if (newElRegion.height !== elRegion.height) {\n utils.css(source, 'height', utils.height(source) + newElRegion.height - elRegion.height);\n }\n\n // https://github.com/kissyteam/kissy/issues/190\n // 相对于屏幕位置没变,而 left/top 变了\n // 例如 <div 'relative'><el absolute></div>\n utils.offset(source, {\n left: newElRegion.left,\n top: newElRegion.top\n }, {\n useCssRight: align.useCssRight,\n useCssBottom: align.useCssBottom,\n useCssTransform: align.useCssTransform,\n ignoreShake: align.ignoreShake\n });\n return {\n points: points,\n offset: offset,\n targetOffset: targetOffset,\n overflow: newOverflowCfg\n };\n}\n/**\n * 2012-04-26 yiminghe@gmail.com\n * - 优化智能对齐算法\n * - 慎用 resizeXX\n *\n * 2011-07-13 yiminghe@gmail.com note:\n * - 增加智能对齐,以及大小调整选项\n **/\n\nfunction isOutOfVisibleRect(target, alwaysByViewport) {\n var visibleRect = getVisibleRectForElement(target, alwaysByViewport);\n var targetRegion = getRegion(target);\n return !visibleRect || targetRegion.left + targetRegion.width <= visibleRect.left || targetRegion.top + targetRegion.height <= visibleRect.top || targetRegion.left >= visibleRect.right || targetRegion.top >= visibleRect.bottom;\n}\nfunction alignElement(el, refNode, align) {\n var target = align.target || refNode;\n var refNodeRegion = getRegion(target);\n var isTargetNotOutOfVisible = !isOutOfVisibleRect(target, align.overflow && align.overflow.alwaysByViewport);\n return doAlign(el, refNodeRegion, align, isTargetNotOutOfVisible);\n}\nalignElement.__getOffsetParent = getOffsetParent;\nalignElement.__getVisibleRectForElement = getVisibleRectForElement;\n\n/**\n * `tgtPoint`: { pageX, pageY } or { clientX, clientY }.\n * If client position provided, will internal convert to page position.\n */\n\nfunction alignPoint(el, tgtPoint, align) {\n var pageX;\n var pageY;\n var doc = utils.getDocument(el);\n var win = doc.defaultView || doc.parentWindow;\n var scrollX = utils.getWindowScrollLeft(win);\n var scrollY = utils.getWindowScrollTop(win);\n var viewportWidth = utils.viewportWidth(win);\n var viewportHeight = utils.viewportHeight(win);\n if ('pageX' in tgtPoint) {\n pageX = tgtPoint.pageX;\n } else {\n pageX = scrollX + tgtPoint.clientX;\n }\n if ('pageY' in tgtPoint) {\n pageY = tgtPoint.pageY;\n } else {\n pageY = scrollY + tgtPoint.clientY;\n }\n var tgtRegion = {\n left: pageX,\n top: pageY,\n width: 0,\n height: 0\n };\n var pointInView = pageX >= 0 && pageX <= scrollX + viewportWidth && pageY >= 0 && pageY <= scrollY + viewportHeight;\n\n // Provide default target point\n var points = [align.points[0], 'cc'];\n return doAlign(el, tgtRegion, _objectSpread2(_objectSpread2({}, align), {}, {\n points: points\n }), pointInView);\n}\n\nexport default alignElement;\nexport { alignElement, alignPoint };\n//# sourceMappingURL=index.js.map\n","import { useRef, useEffect, forwardRef, useImperativeHandle } from 'react';\nimport ReactDOM from 'react-dom';\nimport canUseDom from \"./Dom/canUseDom\";\nvar Portal = /*#__PURE__*/forwardRef(function (props, ref) {\n var didUpdate = props.didUpdate,\n getContainer = props.getContainer,\n children = props.children;\n var parentRef = useRef();\n var containerRef = useRef();\n\n // Ref return nothing, only for wrapper check exist\n useImperativeHandle(ref, function () {\n return {};\n });\n\n // Create container in client side with sync to avoid useEffect not get ref\n var initRef = useRef(false);\n if (!initRef.current && canUseDom()) {\n containerRef.current = getContainer();\n parentRef.current = containerRef.current.parentNode;\n initRef.current = true;\n }\n\n // [Legacy] Used by `rc-trigger`\n useEffect(function () {\n didUpdate === null || didUpdate === void 0 ? void 0 : didUpdate(props);\n });\n useEffect(function () {\n // Restore container to original place\n // React 18 StrictMode will unmount first and mount back for effect test:\n // https://reactjs.org/blog/2022/03/29/react-v18.html#new-strict-mode-behaviors\n if (containerRef.current.parentNode === null && parentRef.current !== null) {\n parentRef.current.appendChild(containerRef.current);\n }\n return function () {\n var _containerRef$current, _containerRef$current2;\n // [Legacy] This should not be handle by Portal but parent PortalWrapper instead.\n // Since some component use `Portal` directly, we have to keep the logic here.\n (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : (_containerRef$current2 = _containerRef$current.parentNode) === null || _containerRef$current2 === void 0 ? void 0 : _containerRef$current2.removeChild(containerRef.current);\n };\n }, []);\n return containerRef.current ? /*#__PURE__*/ReactDOM.createPortal(children, containerRef.current) : null;\n});\nexport default Portal;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n\nfunction isPointsEq(a1, a2, isAlignPoint) {\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n\n return a1[0] === a2[0] && a1[1] === a2[1];\n}\n\nexport function getAlignFromPlacement(builtinPlacements, placementStr, align) {\n var baseAlign = builtinPlacements[placementStr] || {};\n return _objectSpread(_objectSpread({}, baseAlign), align);\n}\nexport function getAlignPopupClassName(builtinPlacements, prefixCls, align, isAlignPoint) {\n var points = align.points;\n var placements = Object.keys(builtinPlacements);\n\n for (var i = 0; i < placements.length; i += 1) {\n var placement = placements[i];\n\n if (isPointsEq(builtinPlacements[placement].points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n\n return '';\n}","export function getMotion(_ref) {\n var prefixCls = _ref.prefixCls,\n motion = _ref.motion,\n animation = _ref.animation,\n transitionName = _ref.transitionName;\n\n if (motion) {\n return motion;\n }\n\n if (animation) {\n return {\n motionName: \"\".concat(prefixCls, \"-\").concat(animation)\n };\n }\n\n if (transitionName) {\n return {\n motionName: transitionName\n };\n }\n\n return null;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport { getMotion } from \"../utils/legacyUtil\";\nexport default function Mask(props) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n mask = props.mask,\n maskMotion = props.maskMotion,\n maskAnimation = props.maskAnimation,\n maskTransitionName = props.maskTransitionName;\n\n if (!mask) {\n return null;\n }\n\n var motion = {};\n\n if (maskMotion || maskTransitionName || maskAnimation) {\n motion = _objectSpread({\n motionAppear: true\n }, getMotion({\n motion: maskMotion,\n prefixCls: prefixCls,\n transitionName: maskTransitionName,\n animation: maskAnimation\n }));\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({}, motion, {\n visible: visible,\n removeOnLeave: true\n }), function (_ref) {\n var className = _ref.className;\n return /*#__PURE__*/React.createElement(\"div\", {\n style: {\n zIndex: zIndex\n },\n className: classNames(\"\".concat(prefixCls, \"-mask\"), className)\n });\n });\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport ResizeObserver from 'resize-observer-polyfill';\nimport contains from \"rc-util/es/Dom/contains\";\nexport function isSamePoint(prev, next) {\n if (prev === next) return true;\n if (!prev || !next) return false;\n\n if ('pageX' in next && 'pageY' in next) {\n return prev.pageX === next.pageX && prev.pageY === next.pageY;\n }\n\n if ('clientX' in next && 'clientY' in next) {\n return prev.clientX === next.clientX && prev.clientY === next.clientY;\n }\n\n return false;\n}\nexport function restoreFocus(activeElement, container) {\n // Focus back if is in the container\n if (activeElement !== document.activeElement && contains(container, activeElement) && typeof activeElement.focus === 'function') {\n activeElement.focus();\n }\n}\nexport function monitorResize(element, callback) {\n var prevWidth = null;\n var prevHeight = null;\n\n function onResize(_ref) {\n var _ref2 = _slicedToArray(_ref, 1),\n target = _ref2[0].target;\n\n if (!document.documentElement.contains(target)) return;\n\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\n\n if (prevWidth !== fixedWidth || prevHeight !== fixedHeight) {\n // https://webkit.org/blog/9997/resizeobserver-in-webkit/\n Promise.resolve().then(function () {\n callback({\n width: fixedWidth,\n height: fixedHeight\n });\n });\n }\n\n prevWidth = fixedWidth;\n prevHeight = fixedHeight;\n }\n\n var resizeObserver = new ResizeObserver(onResize);\n\n if (element) {\n resizeObserver.observe(element);\n }\n\n return function () {\n resizeObserver.disconnect();\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/**\n * Removed props:\n * - childrenProps\n */\nimport { alignElement, alignPoint } from 'dom-align';\nimport isEqual from \"rc-util/es/isEqual\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport React from 'react';\nimport useBuffer from \"./hooks/useBuffer\";\nimport { isSamePoint, monitorResize, restoreFocus } from \"./util\";\n\nfunction getElement(func) {\n if (typeof func !== 'function') return null;\n return func();\n}\n\nfunction getPoint(point) {\n if (_typeof(point) !== 'object' || !point) return null;\n return point;\n}\n\nvar Align = function Align(_ref, ref) {\n var children = _ref.children,\n disabled = _ref.disabled,\n target = _ref.target,\n align = _ref.align,\n onAlign = _ref.onAlign,\n monitorWindowResize = _ref.monitorWindowResize,\n _ref$monitorBufferTim = _ref.monitorBufferTime,\n monitorBufferTime = _ref$monitorBufferTim === void 0 ? 0 : _ref$monitorBufferTim;\n var cacheRef = React.useRef({});\n /** Popup node ref */\n\n var nodeRef = React.useRef();\n var childNode = React.Children.only(children); // ===================== Align ======================\n // We save the props here to avoid closure makes props ood\n\n var forceAlignPropsRef = React.useRef({});\n forceAlignPropsRef.current.disabled = disabled;\n forceAlignPropsRef.current.target = target;\n forceAlignPropsRef.current.align = align;\n forceAlignPropsRef.current.onAlign = onAlign;\n\n var _useBuffer = useBuffer(function () {\n var _forceAlignPropsRef$c = forceAlignPropsRef.current,\n latestDisabled = _forceAlignPropsRef$c.disabled,\n latestTarget = _forceAlignPropsRef$c.target,\n latestAlign = _forceAlignPropsRef$c.align,\n latestOnAlign = _forceAlignPropsRef$c.onAlign;\n var source = nodeRef.current;\n\n if (!latestDisabled && latestTarget && source) {\n var _result;\n\n var _element = getElement(latestTarget);\n\n var _point = getPoint(latestTarget);\n\n cacheRef.current.element = _element;\n cacheRef.current.point = _point;\n cacheRef.current.align = latestAlign; // IE lose focus after element realign\n // We should record activeElement and restore later\n\n var _document = document,\n activeElement = _document.activeElement; // We only align when element is visible\n\n if (_element && isVisible(_element)) {\n _result = alignElement(source, _element, latestAlign);\n } else if (_point) {\n _result = alignPoint(source, _point, latestAlign);\n }\n\n restoreFocus(activeElement, source);\n\n if (latestOnAlign && _result) {\n latestOnAlign(source, _result);\n }\n\n return true;\n }\n\n return false;\n }, monitorBufferTime),\n _useBuffer2 = _slicedToArray(_useBuffer, 2),\n _forceAlign = _useBuffer2[0],\n cancelForceAlign = _useBuffer2[1]; // ===================== Effect =====================\n // Handle props change\n\n\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n element = _React$useState2[0],\n setElement = _React$useState2[1];\n\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n point = _React$useState4[0],\n setPoint = _React$useState4[1];\n\n useLayoutEffect(function () {\n setElement(getElement(target));\n setPoint(getPoint(target));\n });\n React.useEffect(function () {\n if (cacheRef.current.element !== element || !isSamePoint(cacheRef.current.point, point) || !isEqual(cacheRef.current.align, align)) {\n _forceAlign();\n }\n }); // Watch popup element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(nodeRef.current, _forceAlign);\n return cancelFn;\n }, [nodeRef.current]); // Watch target element resize\n\n React.useEffect(function () {\n var cancelFn = monitorResize(element, _forceAlign);\n return cancelFn;\n }, [element]); // Listen for disabled change\n\n React.useEffect(function () {\n if (!disabled) {\n _forceAlign();\n } else {\n cancelForceAlign();\n }\n }, [disabled]); // Listen for window resize\n\n React.useEffect(function () {\n if (monitorWindowResize) {\n var cancelFn = addEventListener(window, 'resize', _forceAlign);\n return cancelFn.remove;\n }\n }, [monitorWindowResize]); // Clear all if unmount\n\n React.useEffect(function () {\n return function () {\n cancelForceAlign();\n };\n }, []); // ====================== Ref =======================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {\n return _forceAlign(true);\n }\n };\n }); // ===================== Render =====================\n\n if ( /*#__PURE__*/React.isValidElement(childNode)) {\n childNode = /*#__PURE__*/React.cloneElement(childNode, {\n ref: composeRef(childNode.ref, nodeRef)\n });\n }\n\n return childNode;\n};\n\nvar RcAlign = /*#__PURE__*/React.forwardRef(Align);\nRcAlign.displayName = 'Align';\nexport default RcAlign;","import React from 'react';\nexport default (function (callback, buffer) {\n var calledRef = React.useRef(false);\n var timeoutRef = React.useRef(null);\n\n function cancelTrigger() {\n window.clearTimeout(timeoutRef.current);\n }\n\n function trigger(force) {\n cancelTrigger();\n\n if (!calledRef.current || force === true) {\n if (callback(force) === false) {\n // Not delay since callback cancelled self\n return;\n }\n\n calledRef.current = true;\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n }, buffer);\n } else {\n timeoutRef.current = window.setTimeout(function () {\n calledRef.current = false;\n trigger();\n }, buffer);\n }\n }\n\n return [trigger, function () {\n calledRef.current = false;\n cancelTrigger();\n }];\n});","import _regeneratorRuntime from \"@babel/runtime/helpers/esm/regeneratorRuntime\";\nimport _asyncToGenerator from \"@babel/runtime/helpers/esm/asyncToGenerator\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useEffect, useRef } from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useState from \"rc-util/es/hooks/useState\";\n/**\n * Popup should follow the steps for each component work correctly:\n * measure - check for the current stretch size\n * align - let component align the position\n * aligned - re-align again in case additional className changed the size\n * afterAlign - choice next step is trigger motion or finished\n * beforeMotion - should reset motion to invisible so that CSSMotion can do normal motion\n * motion - play the motion\n * stable - everything is done\n */\n\nvar StatusQueue = ['measure', 'alignPre', 'align', null, 'motion'];\nexport default (function (visible, doMeasure) {\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n status = _useState2[0],\n setInternalStatus = _useState2[1];\n\n var rafRef = useRef();\n\n function setStatus(nextStatus) {\n setInternalStatus(nextStatus, true);\n }\n\n function cancelRaf() {\n raf.cancel(rafRef.current);\n }\n\n function goNextStatus(callback) {\n cancelRaf();\n rafRef.current = raf(function () {\n // Only align should be manually trigger\n setStatus(function (prev) {\n switch (status) {\n case 'align':\n return 'motion';\n\n case 'motion':\n return 'stable';\n\n default:\n }\n\n return prev;\n });\n callback === null || callback === void 0 ? void 0 : callback();\n });\n } // Init status\n\n\n useEffect(function () {\n setStatus('measure');\n }, [visible]); // Go next status\n\n useEffect(function () {\n switch (status) {\n case 'measure':\n doMeasure();\n break;\n\n default:\n }\n\n if (status) {\n rafRef.current = raf( /*#__PURE__*/_asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {\n var index, nextStatus;\n return _regeneratorRuntime().wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n index = StatusQueue.indexOf(status);\n nextStatus = StatusQueue[index + 1];\n\n if (nextStatus && index !== -1) {\n setStatus(nextStatus);\n }\n\n case 3:\n case \"end\":\n return _context.stop();\n }\n }\n }, _callee);\n })));\n }\n }, [status]);\n useEffect(function () {\n return function () {\n cancelRaf();\n };\n }, []);\n return [status, goNextStatus];\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport Align from 'rc-align';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nimport useVisibleStatus from \"./useVisibleStatus\";\nimport { getMotion } from \"../utils/legacyUtil\";\nimport useStretchStyle from \"./useStretchStyle\";\nvar PopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var visible = props.visible,\n prefixCls = props.prefixCls,\n className = props.className,\n style = props.style,\n children = props.children,\n zIndex = props.zIndex,\n stretch = props.stretch,\n destroyPopupOnHide = props.destroyPopupOnHide,\n forceRender = props.forceRender,\n align = props.align,\n point = props.point,\n getRootDomNode = props.getRootDomNode,\n getClassNameFromAlign = props.getClassNameFromAlign,\n onAlign = props.onAlign,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onMouseDown = props.onMouseDown,\n onTouchStart = props.onTouchStart,\n onClick = props.onClick;\n var alignRef = useRef();\n var elementRef = useRef();\n\n var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n alignedClassName = _useState2[0],\n setAlignedClassName = _useState2[1]; // ======================= Measure ========================\n\n\n var _useStretchStyle = useStretchStyle(stretch),\n _useStretchStyle2 = _slicedToArray(_useStretchStyle, 2),\n stretchStyle = _useStretchStyle2[0],\n measureStretchStyle = _useStretchStyle2[1];\n\n function doMeasure() {\n if (stretch) {\n measureStretchStyle(getRootDomNode());\n }\n } // ======================== Status ========================\n\n\n var _useVisibleStatus = useVisibleStatus(visible, doMeasure),\n _useVisibleStatus2 = _slicedToArray(_useVisibleStatus, 2),\n status = _useVisibleStatus2[0],\n goNextStatus = _useVisibleStatus2[1]; // ======================== Aligns ========================\n\n /**\n * `alignedClassName` may modify `source` size,\n * which means one time align may not move to the correct position at once.\n *\n * We will reset `alignTimes` for each status switch to `alignPre`\n * and let `rc-align` to align for multiple times to ensure get final stable place.\n * Currently we mark `alignTimes < 2` repeat align, it will increase if user report for align issue.\n * \n * Update:\n * In React 18. `rc-align` effect of align may faster than ref called trigger `forceAlign`.\n * We adjust this to `alignTimes < 2`.\n * We need refactor `rc-align` to support mark of `forceAlign` call if this still happen.\n */\n\n\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n alignTimes = _useState4[0],\n setAlignTimes = _useState4[1];\n\n var prepareResolveRef = useRef();\n useLayoutEffect(function () {\n if (status === 'alignPre') {\n setAlignTimes(0);\n }\n }, [status]); // `target` on `rc-align` can accept as a function to get the bind element or a point.\n // ref: https://www.npmjs.com/package/rc-align\n\n function getAlignTarget() {\n if (point) {\n return point;\n }\n\n return getRootDomNode;\n }\n\n function forceAlign() {\n var _alignRef$current;\n\n (_alignRef$current = alignRef.current) === null || _alignRef$current === void 0 ? void 0 : _alignRef$current.forceAlign();\n }\n\n function onInternalAlign(popupDomNode, matchAlign) {\n var nextAlignedClassName = getClassNameFromAlign(matchAlign);\n\n if (alignedClassName !== nextAlignedClassName) {\n setAlignedClassName(nextAlignedClassName);\n } // We will retry multi times to make sure that the element has been align in the right position.\n\n\n setAlignTimes(function (val) {\n return val + 1;\n });\n\n if (status === 'align') {\n onAlign === null || onAlign === void 0 ? void 0 : onAlign(popupDomNode, matchAlign);\n }\n } // Delay to go to next status\n\n\n useLayoutEffect(function () {\n if (status === 'align') {\n // Repeat until not more align needed\n if (alignTimes < 3) {\n forceAlign();\n } else {\n goNextStatus(function () {\n var _prepareResolveRef$cu;\n\n (_prepareResolveRef$cu = prepareResolveRef.current) === null || _prepareResolveRef$cu === void 0 ? void 0 : _prepareResolveRef$cu.call(prepareResolveRef);\n });\n }\n }\n }, [alignTimes]); // ======================== Motion ========================\n\n var motion = _objectSpread({}, getMotion(props));\n\n ['onAppearEnd', 'onEnterEnd', 'onLeaveEnd'].forEach(function (eventName) {\n var originHandler = motion[eventName];\n\n motion[eventName] = function (element, event) {\n goNextStatus();\n return originHandler === null || originHandler === void 0 ? void 0 : originHandler(element, event);\n };\n });\n\n function onShowPrepare() {\n return new Promise(function (resolve) {\n prepareResolveRef.current = resolve;\n });\n } // Go to stable directly when motion not provided\n\n\n React.useEffect(function () {\n if (!motion.motionName && status === 'motion') {\n goNextStatus();\n }\n }, [motion.motionName, status]); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: forceAlign,\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread(_objectSpread({}, stretchStyle), {}, {\n zIndex: zIndex,\n opacity: status === 'motion' || status === 'stable' || !visible ? undefined : 0,\n // Cannot interact with disappearing elements\n // https://github.com/ant-design/ant-design/issues/35051#issuecomment-1101340714\n pointerEvents: !visible && status !== 'stable' ? 'none' : undefined\n }, style); // Align status\n\n\n var alignDisabled = true;\n\n if (align !== null && align !== void 0 && align.points && (status === 'align' || status === 'stable')) {\n alignDisabled = false;\n }\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }, motion, {\n onAppearPrepare: onShowPrepare,\n onEnterPrepare: onShowPrepare,\n removeOnLeave: destroyPopupOnHide,\n forceRender: forceRender\n }), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, className, alignedClassName, motionClassName);\n return /*#__PURE__*/React.createElement(Align, {\n target: getAlignTarget(),\n key: \"popup\",\n ref: alignRef,\n monitorWindowResize: true,\n disabled: alignDisabled,\n align: align,\n onAlign: onInternalAlign\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseDownCapture: onMouseDown,\n onTouchStartCapture: onTouchStart,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode));\n });\n});\nPopupInner.displayName = 'PopupInner';\nexport default PopupInner;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default (function (stretch) {\n var _React$useState = React.useState({\n width: 0,\n height: 0\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n targetSize = _React$useState2[0],\n setTargetSize = _React$useState2[1];\n\n function measureStretch(element) {\n var tgtWidth = element.offsetWidth,\n tgtHeight = element.offsetHeight;\n\n var _element$getBoundingC = element.getBoundingClientRect(),\n width = _element$getBoundingC.width,\n height = _element$getBoundingC.height; // Rect is more accurate than offset, use if near\n\n\n if (Math.abs(tgtWidth - width) < 1 && Math.abs(tgtHeight - height) < 1) {\n tgtWidth = width;\n tgtHeight = height;\n }\n\n setTargetSize({\n width: tgtWidth,\n height: tgtHeight\n });\n } // Merge stretch style\n\n\n var style = React.useMemo(function () {\n var sizeStyle = {};\n\n if (stretch) {\n var width = targetSize.width,\n height = targetSize.height; // Stretch with target\n\n if (stretch.indexOf('height') !== -1 && height) {\n sizeStyle.height = height;\n } else if (stretch.indexOf('minHeight') !== -1 && height) {\n sizeStyle.minHeight = height;\n }\n\n if (stretch.indexOf('width') !== -1 && width) {\n sizeStyle.width = width;\n } else if (stretch.indexOf('minWidth') !== -1 && width) {\n sizeStyle.minWidth = width;\n }\n }\n\n return sizeStyle;\n }, [stretch, targetSize]);\n return [style, measureStretch];\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport classNames from 'classnames';\nvar MobilePopupInner = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n visible = props.visible,\n zIndex = props.zIndex,\n children = props.children,\n _props$mobile = props.mobile;\n _props$mobile = _props$mobile === void 0 ? {} : _props$mobile;\n var popupClassName = _props$mobile.popupClassName,\n popupStyle = _props$mobile.popupStyle,\n _props$mobile$popupMo = _props$mobile.popupMotion,\n popupMotion = _props$mobile$popupMo === void 0 ? {} : _props$mobile$popupMo,\n popupRender = _props$mobile.popupRender,\n onClick = props.onClick;\n var elementRef = React.useRef(); // ========================= Refs =========================\n\n React.useImperativeHandle(ref, function () {\n return {\n forceAlign: function forceAlign() {},\n getElement: function getElement() {\n return elementRef.current;\n }\n };\n }); // ======================== Render ========================\n\n var mergedStyle = _objectSpread({\n zIndex: zIndex\n }, popupStyle);\n\n var childNode = children; // Wrapper when multiple children\n\n if (React.Children.count(children) > 1) {\n childNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, children);\n } // Mobile support additional render\n\n\n if (popupRender) {\n childNode = popupRender(childNode);\n }\n\n return /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: visible,\n ref: elementRef,\n removeOnLeave: true\n }, popupMotion), function (_ref, motionRef) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n var mergedClassName = classNames(prefixCls, popupClassName, motionClassName);\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: motionRef,\n className: mergedClassName,\n onClick: onClick,\n style: _objectSpread(_objectSpread({}, motionStyle), mergedStyle)\n }, childNode);\n });\n});\nMobilePopupInner.displayName = 'MobilePopupInner';\nexport default MobilePopupInner;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"visible\", \"mobile\"];\nimport * as React from 'react';\nimport { useState, useEffect } from 'react';\nimport isMobile from \"rc-util/es/isMobile\";\nimport Mask from \"./Mask\";\nimport PopupInner from \"./PopupInner\";\nimport MobilePopupInner from \"./MobilePopupInner\";\nvar Popup = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var visible = _ref.visible,\n mobile = _ref.mobile,\n props = _objectWithoutProperties(_ref, _excluded);\n\n var _useState = useState(visible),\n _useState2 = _slicedToArray(_useState, 2),\n innerVisible = _useState2[0],\n serInnerVisible = _useState2[1];\n\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n inMobile = _useState4[0],\n setInMobile = _useState4[1];\n\n var cloneProps = _objectSpread(_objectSpread({}, props), {}, {\n visible: innerVisible\n }); // We check mobile in visible changed here.\n // And this also delay set `innerVisible` to avoid popup component render flash\n\n\n useEffect(function () {\n serInnerVisible(visible);\n\n if (visible && mobile) {\n setInMobile(isMobile());\n }\n }, [visible, mobile]);\n var popupNode = inMobile ? /*#__PURE__*/React.createElement(MobilePopupInner, _extends({}, cloneProps, {\n mobile: mobile,\n ref: ref\n })) : /*#__PURE__*/React.createElement(PopupInner, _extends({}, cloneProps, {\n ref: ref\n })); // We can use fragment directly but this may failed some selector usage. Keep as origin logic\n\n return /*#__PURE__*/React.createElement(\"div\", null, /*#__PURE__*/React.createElement(Mask, cloneProps), popupNode);\n});\nPopup.displayName = 'Popup';\nexport default Popup;","import * as React from 'react';\nvar TriggerContext = /*#__PURE__*/React.createContext(null);\nexport default TriggerContext;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport ReactDOM from 'react-dom';\nimport raf from \"rc-util/es/raf\";\nimport contains from \"rc-util/es/Dom/contains\";\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport addEventListener from \"rc-util/es/Dom/addEventListener\";\nimport Portal from \"rc-util/es/Portal\";\nimport classNames from 'classnames';\nimport { getAlignFromPlacement, getAlignPopupClassName } from \"./utils/alignUtil\";\nimport Popup from \"./Popup\";\nimport TriggerContext from \"./context\";\n\nfunction noop() {}\n\nfunction returnEmptyString() {\n return '';\n}\n\nfunction returnDocument(element) {\n if (element) {\n return element.ownerDocument;\n }\n\n return window.document;\n}\n\nvar ALL_HANDLERS = ['onClick', 'onMouseDown', 'onTouchStart', 'onMouseEnter', 'onMouseLeave', 'onFocus', 'onBlur', 'onContextMenu'];\n\n/**\n * Internal usage. Do not use in your code since this will be removed.\n */\nexport function generateTrigger(PortalComponent) {\n var Trigger = /*#__PURE__*/function (_React$Component) {\n _inherits(Trigger, _React$Component);\n\n var _super = _createSuper(Trigger);\n\n // ensure `getContainer` will be called only once\n function Trigger(props) {\n var _this;\n\n _classCallCheck(this, Trigger);\n\n _this = _super.call(this, props);\n\n _defineProperty(_assertThisInitialized(_this), \"popupRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"triggerRef\", /*#__PURE__*/React.createRef());\n\n _defineProperty(_assertThisInitialized(_this), \"portalContainer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"attachId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"clickOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"touchOutsideHandler\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler1\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler2\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"mouseDownTimeout\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"focusTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preClickTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"preTouchTime\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"delayTimer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"hasPopupMouseDown\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseEnter\", function (e) {\n var mouseEnterDelay = _this.props.mouseEnterDelay;\n\n _this.fireEvents('onMouseEnter', e);\n\n _this.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseMove\", function (e) {\n _this.fireEvents('onMouseMove', e);\n\n _this.setPoint(e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseLeave\", function (e) {\n _this.fireEvents('onMouseLeave', e);\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseEnter\", function () {\n _this.clearDelayTimer();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseLeave\", function (e) {\n var _this$popupRef$curren;\n\n // https://github.com/react-component/trigger/pull/13\n // react bug?\n if (e.relatedTarget && !e.relatedTarget.setTimeout && contains((_this$popupRef$curren = _this.popupRef.current) === null || _this$popupRef$curren === void 0 ? void 0 : _this$popupRef$curren.getElement(), e.relatedTarget)) {\n return;\n }\n\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onFocus\", function (e) {\n _this.fireEvents('onFocus', e); // incase focusin and focusout\n\n\n _this.clearDelayTimer();\n\n if (_this.isFocusToShow()) {\n _this.focusTime = Date.now();\n\n _this.delaySetPopupVisible(true, _this.props.focusDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onMouseDown\", function (e) {\n _this.fireEvents('onMouseDown', e);\n\n _this.preClickTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onTouchStart\", function (e) {\n _this.fireEvents('onTouchStart', e);\n\n _this.preTouchTime = Date.now();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onBlur\", function (e) {\n _this.fireEvents('onBlur', e);\n\n _this.clearDelayTimer();\n\n if (_this.isBlurToHide()) {\n _this.delaySetPopupVisible(false, _this.props.blurDelay);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenu\", function (e) {\n e.preventDefault();\n\n _this.fireEvents('onContextMenu', e);\n\n _this.setPopupVisible(true, e);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onContextMenuClose\", function () {\n if (_this.isContextMenuToShow()) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n _this.fireEvents('onClick', event); // focus will trigger click\n\n\n if (_this.focusTime) {\n var preTime;\n\n if (_this.preClickTime && _this.preTouchTime) {\n preTime = Math.min(_this.preClickTime, _this.preTouchTime);\n } else if (_this.preClickTime) {\n preTime = _this.preClickTime;\n } else if (_this.preTouchTime) {\n preTime = _this.preTouchTime;\n }\n\n if (Math.abs(preTime - _this.focusTime) < 20) {\n return;\n }\n\n _this.focusTime = 0;\n }\n\n _this.preClickTime = 0;\n _this.preTouchTime = 0; // Only prevent default when all the action is click.\n // https://github.com/ant-design/ant-design/issues/17043\n // https://github.com/ant-design/ant-design/issues/17291\n\n if (_this.isClickToShow() && (_this.isClickToHide() || _this.isBlurToHide()) && event && event.preventDefault) {\n event.preventDefault();\n }\n\n var nextVisible = !_this.state.popupVisible;\n\n if (_this.isClickToHide() && !nextVisible || nextVisible && _this.isClickToShow()) {\n _this.setPopupVisible(!_this.state.popupVisible, event);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseDown\", function () {\n _this.hasPopupMouseDown = true;\n clearTimeout(_this.mouseDownTimeout);\n _this.mouseDownTimeout = window.setTimeout(function () {\n _this.hasPopupMouseDown = false;\n }, 0);\n\n if (_this.context) {\n var _this$context;\n\n (_this$context = _this.context).onPopupMouseDown.apply(_this$context, arguments);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDocumentClick\", function (event) {\n if (_this.props.mask && !_this.props.maskClosable) {\n return;\n }\n\n var target = event.target;\n\n var root = _this.getRootDomNode();\n\n var popupNode = _this.getPopupDomNode();\n\n if ( // mousedown on the target should also close popup when action is contextMenu.\n // https://github.com/ant-design/ant-design/issues/29853\n (!contains(root, target) || _this.isContextMenuOnly()) && !contains(popupNode, target) && !_this.hasPopupMouseDown) {\n _this.close();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getRootDomNode\", function () {\n var getTriggerDOMNode = _this.props.getTriggerDOMNode;\n\n if (getTriggerDOMNode) {\n return getTriggerDOMNode(_this.triggerRef.current);\n }\n\n try {\n var domNode = findDOMNode(_this.triggerRef.current);\n\n if (domNode) {\n return domNode;\n }\n } catch (err) {// Do nothing\n }\n\n return ReactDOM.findDOMNode(_assertThisInitialized(_this));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getPopupClassNameFromAlign\", function (align) {\n var className = [];\n var _this$props = _this.props,\n popupPlacement = _this$props.popupPlacement,\n builtinPlacements = _this$props.builtinPlacements,\n prefixCls = _this$props.prefixCls,\n alignPoint = _this$props.alignPoint,\n getPopupClassNameFromAlign = _this$props.getPopupClassNameFromAlign;\n\n if (popupPlacement && builtinPlacements) {\n className.push(getAlignPopupClassName(builtinPlacements, prefixCls, align, alignPoint));\n }\n\n if (getPopupClassNameFromAlign) {\n className.push(getPopupClassNameFromAlign(align));\n }\n\n return className.join(' ');\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getComponent\", function () {\n var _this$props2 = _this.props,\n prefixCls = _this$props2.prefixCls,\n destroyPopupOnHide = _this$props2.destroyPopupOnHide,\n popupClassName = _this$props2.popupClassName,\n onPopupAlign = _this$props2.onPopupAlign,\n popupMotion = _this$props2.popupMotion,\n popupAnimation = _this$props2.popupAnimation,\n popupTransitionName = _this$props2.popupTransitionName,\n popupStyle = _this$props2.popupStyle,\n mask = _this$props2.mask,\n maskAnimation = _this$props2.maskAnimation,\n maskTransitionName = _this$props2.maskTransitionName,\n maskMotion = _this$props2.maskMotion,\n zIndex = _this$props2.zIndex,\n popup = _this$props2.popup,\n stretch = _this$props2.stretch,\n alignPoint = _this$props2.alignPoint,\n mobile = _this$props2.mobile,\n forceRender = _this$props2.forceRender,\n onPopupClick = _this$props2.onPopupClick;\n var _this$state = _this.state,\n popupVisible = _this$state.popupVisible,\n point = _this$state.point;\n\n var align = _this.getPopupAlign();\n\n var mouseProps = {};\n\n if (_this.isMouseEnterToShow()) {\n mouseProps.onMouseEnter = _this.onPopupMouseEnter;\n }\n\n if (_this.isMouseLeaveToHide()) {\n mouseProps.onMouseLeave = _this.onPopupMouseLeave;\n }\n\n mouseProps.onMouseDown = _this.onPopupMouseDown;\n mouseProps.onTouchStart = _this.onPopupMouseDown;\n return /*#__PURE__*/React.createElement(Popup, _extends({\n prefixCls: prefixCls,\n destroyPopupOnHide: destroyPopupOnHide,\n visible: popupVisible,\n point: alignPoint && point,\n className: popupClassName,\n align: align,\n onAlign: onPopupAlign,\n animation: popupAnimation,\n getClassNameFromAlign: _this.getPopupClassNameFromAlign\n }, mouseProps, {\n stretch: stretch,\n getRootDomNode: _this.getRootDomNode,\n style: popupStyle,\n mask: mask,\n zIndex: zIndex,\n transitionName: popupTransitionName,\n maskAnimation: maskAnimation,\n maskTransitionName: maskTransitionName,\n maskMotion: maskMotion,\n ref: _this.popupRef,\n motion: popupMotion,\n mobile: mobile,\n forceRender: forceRender,\n onClick: onPopupClick\n }), typeof popup === 'function' ? popup() : popup);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"attachParent\", function (popupContainer) {\n raf.cancel(_this.attachId);\n var _this$props3 = _this.props,\n getPopupContainer = _this$props3.getPopupContainer,\n getDocument = _this$props3.getDocument;\n\n var domNode = _this.getRootDomNode();\n\n var mountNode;\n\n if (!getPopupContainer) {\n mountNode = getDocument(_this.getRootDomNode()).body;\n } else if (domNode || getPopupContainer.length === 0) {\n // Compatible for legacy getPopupContainer with domNode argument.\n // If no need `domNode` argument, will call directly.\n // https://codesandbox.io/s/eloquent-mclean-ss93m?file=/src/App.js\n mountNode = getPopupContainer(domNode);\n }\n\n if (mountNode) {\n mountNode.appendChild(popupContainer);\n } else {\n // Retry after frame render in case parent not ready\n _this.attachId = raf(function () {\n _this.attachParent(popupContainer);\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getContainer\", function () {\n if (!_this.portalContainer) {\n // In React.StrictMode component will call render multiple time in first mount.\n // When you want to refactor with FC, useRef will also init multiple time and\n // point to different useRef instance which will create multiple element\n // (This multiple render will not trigger effect so you can not clean up this\n // in effect). But this is safe with class component since it always point to same class instance.\n var getDocument = _this.props.getDocument;\n var popupContainer = getDocument(_this.getRootDomNode()).createElement('div'); // Make sure default popup container will never cause scrollbar appearing\n // https://github.com/react-component/trigger/issues/41\n\n popupContainer.style.position = 'absolute';\n popupContainer.style.top = '0';\n popupContainer.style.left = '0';\n popupContainer.style.width = '100%';\n _this.portalContainer = popupContainer;\n }\n\n _this.attachParent(_this.portalContainer);\n\n return _this.portalContainer;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setPoint\", function (point) {\n var alignPoint = _this.props.alignPoint;\n if (!alignPoint || !point) return;\n\n _this.setState({\n point: {\n pageX: point.pageX,\n pageY: point.pageY\n }\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handlePortalUpdate\", function () {\n if (_this.state.prevPopupVisible !== _this.state.popupVisible) {\n _this.props.afterPopupVisibleChange(_this.state.popupVisible);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"triggerContextValue\", {\n onPopupMouseDown: _this.onPopupMouseDown\n });\n\n var _popupVisible;\n\n if ('popupVisible' in props) {\n _popupVisible = !!props.popupVisible;\n } else {\n _popupVisible = !!props.defaultPopupVisible;\n }\n\n _this.state = {\n prevPopupVisible: _popupVisible,\n popupVisible: _popupVisible\n };\n ALL_HANDLERS.forEach(function (h) {\n _this[\"fire\".concat(h)] = function (e) {\n _this.fireEvents(h, e);\n };\n });\n return _this;\n }\n\n _createClass(Trigger, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.componentDidUpdate();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n var props = this.props;\n var state = this.state; // We must listen to `mousedown` or `touchstart`, edge case:\n // https://github.com/ant-design/ant-design/issues/5804\n // https://github.com/react-component/calendar/issues/250\n // https://github.com/react-component/trigger/issues/50\n\n if (state.popupVisible) {\n var currentDocument;\n\n if (!this.clickOutsideHandler && (this.isClickToHide() || this.isContextMenuToShow())) {\n currentDocument = props.getDocument(this.getRootDomNode());\n this.clickOutsideHandler = addEventListener(currentDocument, 'mousedown', this.onDocumentClick);\n } // always hide on mobile\n\n\n if (!this.touchOutsideHandler) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.touchOutsideHandler = addEventListener(currentDocument, 'touchstart', this.onDocumentClick);\n } // close popup when trigger type contains 'onContextMenu' and document is scrolling.\n\n\n if (!this.contextMenuOutsideHandler1 && this.isContextMenuToShow()) {\n currentDocument = currentDocument || props.getDocument(this.getRootDomNode());\n this.contextMenuOutsideHandler1 = addEventListener(currentDocument, 'scroll', this.onContextMenuClose);\n } // close popup when trigger type contains 'onContextMenu' and window is blur.\n\n\n if (!this.contextMenuOutsideHandler2 && this.isContextMenuToShow()) {\n this.contextMenuOutsideHandler2 = addEventListener(window, 'blur', this.onContextMenuClose);\n }\n\n return;\n }\n\n this.clearOutsideHandler();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.clearDelayTimer();\n this.clearOutsideHandler();\n clearTimeout(this.mouseDownTimeout);\n raf.cancel(this.attachId);\n }\n }, {\n key: \"getPopupDomNode\",\n value: function getPopupDomNode() {\n var _this$popupRef$curren2;\n\n // for test\n return ((_this$popupRef$curren2 = this.popupRef.current) === null || _this$popupRef$curren2 === void 0 ? void 0 : _this$popupRef$curren2.getElement()) || null;\n }\n }, {\n key: \"getPopupAlign\",\n value: function getPopupAlign() {\n var props = this.props;\n var popupPlacement = props.popupPlacement,\n popupAlign = props.popupAlign,\n builtinPlacements = props.builtinPlacements;\n\n if (popupPlacement && builtinPlacements) {\n return getAlignFromPlacement(builtinPlacements, popupPlacement, popupAlign);\n }\n\n return popupAlign;\n }\n }, {\n key: \"setPopupVisible\",\n value:\n /**\n * @param popupVisible Show or not the popup element\n * @param event SyntheticEvent, used for `pointAlign`\n */\n function setPopupVisible(popupVisible, event) {\n var alignPoint = this.props.alignPoint;\n var prevPopupVisible = this.state.popupVisible;\n this.clearDelayTimer();\n\n if (prevPopupVisible !== popupVisible) {\n if (!('popupVisible' in this.props)) {\n this.setState({\n popupVisible: popupVisible,\n prevPopupVisible: prevPopupVisible\n });\n }\n\n this.props.onPopupVisibleChange(popupVisible);\n } // Always record the point position since mouseEnterDelay will delay the show\n\n\n if (alignPoint && event && popupVisible) {\n this.setPoint(event);\n }\n }\n }, {\n key: \"delaySetPopupVisible\",\n value: function delaySetPopupVisible(visible, delayS, event) {\n var _this2 = this;\n\n var delay = delayS * 1000;\n this.clearDelayTimer();\n\n if (delay) {\n var point = event ? {\n pageX: event.pageX,\n pageY: event.pageY\n } : null;\n this.delayTimer = window.setTimeout(function () {\n _this2.setPopupVisible(visible, point);\n\n _this2.clearDelayTimer();\n }, delay);\n } else {\n this.setPopupVisible(visible, event);\n }\n }\n }, {\n key: \"clearDelayTimer\",\n value: function clearDelayTimer() {\n if (this.delayTimer) {\n clearTimeout(this.delayTimer);\n this.delayTimer = null;\n }\n }\n }, {\n key: \"clearOutsideHandler\",\n value: function clearOutsideHandler() {\n if (this.clickOutsideHandler) {\n this.clickOutsideHandler.remove();\n this.clickOutsideHandler = null;\n }\n\n if (this.contextMenuOutsideHandler1) {\n this.contextMenuOutsideHandler1.remove();\n this.contextMenuOutsideHandler1 = null;\n }\n\n if (this.contextMenuOutsideHandler2) {\n this.contextMenuOutsideHandler2.remove();\n this.contextMenuOutsideHandler2 = null;\n }\n\n if (this.touchOutsideHandler) {\n this.touchOutsideHandler.remove();\n this.touchOutsideHandler = null;\n }\n }\n }, {\n key: \"createTwoChains\",\n value: function createTwoChains(event) {\n var childPros = this.props.children.props;\n var props = this.props;\n\n if (childPros[event] && props[event]) {\n return this[\"fire\".concat(event)];\n }\n\n return childPros[event] || props[event];\n }\n }, {\n key: \"isClickToShow\",\n value: function isClickToShow() {\n var _this$props4 = this.props,\n action = _this$props4.action,\n showAction = _this$props4.showAction;\n return action.indexOf('click') !== -1 || showAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isContextMenuOnly\",\n value: function isContextMenuOnly() {\n var action = this.props.action;\n return action === 'contextMenu' || action.length === 1 && action[0] === 'contextMenu';\n }\n }, {\n key: \"isContextMenuToShow\",\n value: function isContextMenuToShow() {\n var _this$props5 = this.props,\n action = _this$props5.action,\n showAction = _this$props5.showAction;\n return action.indexOf('contextMenu') !== -1 || showAction.indexOf('contextMenu') !== -1;\n }\n }, {\n key: \"isClickToHide\",\n value: function isClickToHide() {\n var _this$props6 = this.props,\n action = _this$props6.action,\n hideAction = _this$props6.hideAction;\n return action.indexOf('click') !== -1 || hideAction.indexOf('click') !== -1;\n }\n }, {\n key: \"isMouseEnterToShow\",\n value: function isMouseEnterToShow() {\n var _this$props7 = this.props,\n action = _this$props7.action,\n showAction = _this$props7.showAction;\n return action.indexOf('hover') !== -1 || showAction.indexOf('mouseEnter') !== -1;\n }\n }, {\n key: \"isMouseLeaveToHide\",\n value: function isMouseLeaveToHide() {\n var _this$props8 = this.props,\n action = _this$props8.action,\n hideAction = _this$props8.hideAction;\n return action.indexOf('hover') !== -1 || hideAction.indexOf('mouseLeave') !== -1;\n }\n }, {\n key: \"isFocusToShow\",\n value: function isFocusToShow() {\n var _this$props9 = this.props,\n action = _this$props9.action,\n showAction = _this$props9.showAction;\n return action.indexOf('focus') !== -1 || showAction.indexOf('focus') !== -1;\n }\n }, {\n key: \"isBlurToHide\",\n value: function isBlurToHide() {\n var _this$props10 = this.props,\n action = _this$props10.action,\n hideAction = _this$props10.hideAction;\n return action.indexOf('focus') !== -1 || hideAction.indexOf('blur') !== -1;\n }\n }, {\n key: \"forcePopupAlign\",\n value: function forcePopupAlign() {\n if (this.state.popupVisible) {\n var _this$popupRef$curren3;\n\n (_this$popupRef$curren3 = this.popupRef.current) === null || _this$popupRef$curren3 === void 0 ? void 0 : _this$popupRef$curren3.forceAlign();\n }\n }\n }, {\n key: \"fireEvents\",\n value: function fireEvents(type, e) {\n var childCallback = this.props.children.props[type];\n\n if (childCallback) {\n childCallback(e);\n }\n\n var callback = this.props[type];\n\n if (callback) {\n callback(e);\n }\n }\n }, {\n key: \"close\",\n value: function close() {\n this.setPopupVisible(false);\n }\n }, {\n key: \"render\",\n value: function render() {\n var popupVisible = this.state.popupVisible;\n var _this$props11 = this.props,\n children = _this$props11.children,\n forceRender = _this$props11.forceRender,\n alignPoint = _this$props11.alignPoint,\n className = _this$props11.className,\n autoDestroy = _this$props11.autoDestroy;\n var child = React.Children.only(children);\n var newChildProps = {\n key: 'trigger'\n }; // ============================== Visible Handlers ==============================\n // >>> ContextMenu\n\n if (this.isContextMenuToShow()) {\n newChildProps.onContextMenu = this.onContextMenu;\n } else {\n newChildProps.onContextMenu = this.createTwoChains('onContextMenu');\n } // >>> Click\n\n\n if (this.isClickToHide() || this.isClickToShow()) {\n newChildProps.onClick = this.onClick;\n newChildProps.onMouseDown = this.onMouseDown;\n newChildProps.onTouchStart = this.onTouchStart;\n } else {\n newChildProps.onClick = this.createTwoChains('onClick');\n newChildProps.onMouseDown = this.createTwoChains('onMouseDown');\n newChildProps.onTouchStart = this.createTwoChains('onTouchStart');\n } // >>> Hover(enter)\n\n\n if (this.isMouseEnterToShow()) {\n newChildProps.onMouseEnter = this.onMouseEnter; // Point align\n\n if (alignPoint) {\n newChildProps.onMouseMove = this.onMouseMove;\n }\n } else {\n newChildProps.onMouseEnter = this.createTwoChains('onMouseEnter');\n } // >>> Hover(leave)\n\n\n if (this.isMouseLeaveToHide()) {\n newChildProps.onMouseLeave = this.onMouseLeave;\n } else {\n newChildProps.onMouseLeave = this.createTwoChains('onMouseLeave');\n } // >>> Focus\n\n\n if (this.isFocusToShow() || this.isBlurToHide()) {\n newChildProps.onFocus = this.onFocus;\n newChildProps.onBlur = this.onBlur;\n } else {\n newChildProps.onFocus = this.createTwoChains('onFocus');\n newChildProps.onBlur = this.createTwoChains('onBlur');\n } // =================================== Render ===================================\n\n\n var childrenClassName = classNames(child && child.props && child.props.className, className);\n\n if (childrenClassName) {\n newChildProps.className = childrenClassName;\n }\n\n var cloneProps = _objectSpread({}, newChildProps);\n\n if (supportRef(child)) {\n cloneProps.ref = composeRef(this.triggerRef, child.ref);\n }\n\n var trigger = /*#__PURE__*/React.cloneElement(child, cloneProps);\n var portal; // prevent unmounting after it's rendered\n\n if (popupVisible || this.popupRef.current || forceRender) {\n portal = /*#__PURE__*/React.createElement(PortalComponent, {\n key: \"portal\",\n getContainer: this.getContainer,\n didUpdate: this.handlePortalUpdate\n }, this.getComponent());\n }\n\n if (!popupVisible && autoDestroy) {\n portal = null;\n }\n\n return /*#__PURE__*/React.createElement(TriggerContext.Provider, {\n value: this.triggerContextValue\n }, trigger, portal);\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(_ref, prevState) {\n var popupVisible = _ref.popupVisible;\n var newState = {};\n\n if (popupVisible !== undefined && prevState.popupVisible !== popupVisible) {\n newState.popupVisible = popupVisible;\n newState.prevPopupVisible = prevState.popupVisible;\n }\n\n return newState;\n }\n }]);\n\n return Trigger;\n }(React.Component);\n\n _defineProperty(Trigger, \"contextType\", TriggerContext);\n\n _defineProperty(Trigger, \"defaultProps\", {\n prefixCls: 'rc-trigger-popup',\n getPopupClassNameFromAlign: returnEmptyString,\n getDocument: returnDocument,\n onPopupVisibleChange: noop,\n afterPopupVisibleChange: noop,\n onPopupAlign: noop,\n popupClassName: '',\n mouseEnterDelay: 0,\n mouseLeaveDelay: 0.1,\n focusDelay: 0,\n blurDelay: 0.15,\n popupStyle: {},\n destroyPopupOnHide: false,\n popupAlign: {},\n defaultPopupVisible: false,\n mask: false,\n maskClosable: true,\n action: [],\n showAction: [],\n hideAction: [],\n autoDestroy: false\n });\n\n return Trigger;\n}\nexport default generateTrigger(Portal);","var autoAdjustOverflow = {\n adjustX: 1,\n adjustY: 1\n};\nvar targetOffset = [0, 0];\nvar placements = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n topCenter: {\n points: ['bc', 'tc'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n topRight: {\n points: ['br', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [0, -4],\n targetOffset: targetOffset\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n bottomCenter: {\n points: ['tc', 'bc'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n },\n bottomRight: {\n points: ['tr', 'br'],\n overflow: autoAdjustOverflow,\n offset: [0, 4],\n targetOffset: targetOffset\n }\n};\nexport default placements;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport isVisible from \"./isVisible\";\nfunction focusable(node) {\n var includePositive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n if (isVisible(node)) {\n var nodeName = node.nodeName.toLowerCase();\n var isFocusableElement =\n // Focusable element\n ['input', 'select', 'textarea', 'button'].includes(nodeName) ||\n // Editable element\n node.isContentEditable ||\n // Anchor with href element\n nodeName === 'a' && !!node.getAttribute('href');\n\n // Get tabIndex\n var tabIndexAttr = node.getAttribute('tabindex');\n var tabIndexNum = Number(tabIndexAttr);\n\n // Parse as number if validate\n var tabIndex = null;\n if (tabIndexAttr && !Number.isNaN(tabIndexNum)) {\n tabIndex = tabIndexNum;\n } else if (isFocusableElement && tabIndex === null) {\n tabIndex = 0;\n }\n\n // Block focusable if disabled\n if (isFocusableElement && node.disabled) {\n tabIndex = null;\n }\n return tabIndex !== null && (tabIndex >= 0 || includePositive && tabIndex < 0);\n }\n return false;\n}\nexport function getFocusNodeList(node) {\n var includePositive = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var res = _toConsumableArray(node.querySelectorAll('*')).filter(function (child) {\n return focusable(child, includePositive);\n });\n if (focusable(node, includePositive)) {\n res.unshift(node);\n }\n return res;\n}\nvar lastFocusElement = null;\n\n/** @deprecated Do not use since this may failed when used in async */\nexport function saveLastFocusNode() {\n lastFocusElement = document.activeElement;\n}\n\n/** @deprecated Do not use since this may failed when used in async */\nexport function clearLastFocusNode() {\n lastFocusElement = null;\n}\n\n/** @deprecated Do not use since this may failed when used in async */\nexport function backLastFocusNode() {\n if (lastFocusElement) {\n try {\n // 元素可能已经被移动了\n lastFocusElement.focus();\n\n /* eslint-disable no-empty */\n } catch (e) {\n // empty\n }\n /* eslint-enable no-empty */\n }\n}\n\nexport function limitTabRange(node, e) {\n if (e.keyCode === 9) {\n var tabNodeList = getFocusNodeList(node);\n var lastTabNode = tabNodeList[e.shiftKey ? 0 : tabNodeList.length - 1];\n var leavingTab = lastTabNode === document.activeElement || node === document.activeElement;\n if (leavingTab) {\n var target = tabNodeList[e.shiftKey ? tabNodeList.length - 1 : 0];\n target.focus();\n e.preventDefault();\n }\n }\n}","import * as React from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport raf from \"rc-util/es/raf\";\nimport { getFocusNodeList } from \"rc-util/es/Dom/focus\";\nvar ESC = KeyCode.ESC,\n TAB = KeyCode.TAB;\nexport default function useAccessibility(_ref) {\n var visible = _ref.visible,\n setTriggerVisible = _ref.setTriggerVisible,\n triggerRef = _ref.triggerRef,\n onVisibleChange = _ref.onVisibleChange,\n autoFocus = _ref.autoFocus;\n var focusMenuRef = React.useRef(false);\n\n var handleCloseMenuAndReturnFocus = function handleCloseMenuAndReturnFocus() {\n if (visible && triggerRef.current) {\n var _triggerRef$current, _triggerRef$current$t, _triggerRef$current$t2, _triggerRef$current$t3;\n\n (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : (_triggerRef$current$t = _triggerRef$current.triggerRef) === null || _triggerRef$current$t === void 0 ? void 0 : (_triggerRef$current$t2 = _triggerRef$current$t.current) === null || _triggerRef$current$t2 === void 0 ? void 0 : (_triggerRef$current$t3 = _triggerRef$current$t2.focus) === null || _triggerRef$current$t3 === void 0 ? void 0 : _triggerRef$current$t3.call(_triggerRef$current$t2);\n setTriggerVisible(false);\n\n if (typeof onVisibleChange === 'function') {\n onVisibleChange(false);\n }\n }\n };\n\n var focusMenu = function focusMenu() {\n var _triggerRef$current2, _triggerRef$current2$, _triggerRef$current2$2, _triggerRef$current2$3;\n\n var elements = getFocusNodeList((_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : (_triggerRef$current2$ = _triggerRef$current2.popupRef) === null || _triggerRef$current2$ === void 0 ? void 0 : (_triggerRef$current2$2 = _triggerRef$current2$.current) === null || _triggerRef$current2$2 === void 0 ? void 0 : (_triggerRef$current2$3 = _triggerRef$current2$2.getElement) === null || _triggerRef$current2$3 === void 0 ? void 0 : _triggerRef$current2$3.call(_triggerRef$current2$2));\n var firstElement = elements[0];\n\n if (firstElement === null || firstElement === void 0 ? void 0 : firstElement.focus) {\n firstElement.focus();\n focusMenuRef.current = true;\n return true;\n }\n\n return false;\n };\n\n var handleKeyDown = function handleKeyDown(event) {\n switch (event.keyCode) {\n case ESC:\n handleCloseMenuAndReturnFocus();\n break;\n\n case TAB:\n {\n var focusResult = false;\n\n if (!focusMenuRef.current) {\n focusResult = focusMenu();\n }\n\n if (focusResult) {\n event.preventDefault();\n } else {\n handleCloseMenuAndReturnFocus();\n }\n\n break;\n }\n }\n };\n\n React.useEffect(function () {\n if (visible) {\n window.addEventListener('keydown', handleKeyDown);\n\n if (autoFocus) {\n // FIXME: hack with raf\n raf(focusMenu, 3);\n }\n\n return function () {\n window.removeEventListener('keydown', handleKeyDown);\n focusMenuRef.current = false;\n };\n }\n\n return function () {\n focusMenuRef.current = false;\n };\n }, [visible]); // eslint-disable-line react-hooks/exhaustive-deps\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"arrow\", \"prefixCls\", \"transitionName\", \"animation\", \"align\", \"placement\", \"placements\", \"getPopupContainer\", \"showAction\", \"hideAction\", \"overlayClassName\", \"overlayStyle\", \"visible\", \"trigger\", \"autoFocus\"];\nimport * as React from 'react';\nimport Trigger from 'rc-trigger';\nimport classNames from 'classnames';\nimport Placements from './placements';\nimport useAccessibility from './hooks/useAccessibility';\n\nfunction Dropdown(props, ref) {\n var _props$arrow = props.arrow,\n arrow = _props$arrow === void 0 ? false : _props$arrow,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-dropdown' : _props$prefixCls,\n transitionName = props.transitionName,\n animation = props.animation,\n align = props.align,\n _props$placement = props.placement,\n placement = _props$placement === void 0 ? 'bottomLeft' : _props$placement,\n _props$placements = props.placements,\n placements = _props$placements === void 0 ? Placements : _props$placements,\n getPopupContainer = props.getPopupContainer,\n showAction = props.showAction,\n hideAction = props.hideAction,\n overlayClassName = props.overlayClassName,\n overlayStyle = props.overlayStyle,\n visible = props.visible,\n _props$trigger = props.trigger,\n trigger = _props$trigger === void 0 ? ['hover'] : _props$trigger,\n autoFocus = props.autoFocus,\n otherProps = _objectWithoutProperties(props, _excluded);\n\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n triggerVisible = _React$useState2[0],\n setTriggerVisible = _React$useState2[1];\n\n var mergedVisible = 'visible' in props ? visible : triggerVisible;\n var triggerRef = React.useRef(null);\n React.useImperativeHandle(ref, function () {\n return triggerRef.current;\n });\n useAccessibility({\n visible: mergedVisible,\n setTriggerVisible: setTriggerVisible,\n triggerRef: triggerRef,\n onVisibleChange: props.onVisibleChange,\n autoFocus: autoFocus\n });\n\n var getOverlayElement = function getOverlayElement() {\n var overlay = props.overlay;\n var overlayElement;\n\n if (typeof overlay === 'function') {\n overlayElement = overlay();\n } else {\n overlayElement = overlay;\n }\n\n return overlayElement;\n };\n\n var onClick = function onClick(e) {\n var onOverlayClick = props.onOverlayClick;\n setTriggerVisible(false);\n\n if (onOverlayClick) {\n onOverlayClick(e);\n }\n };\n\n var onVisibleChange = function onVisibleChange(newVisible) {\n var onVisibleChangeProp = props.onVisibleChange;\n setTriggerVisible(newVisible);\n\n if (typeof onVisibleChangeProp === 'function') {\n onVisibleChangeProp(newVisible);\n }\n };\n\n var getMenuElement = function getMenuElement() {\n var overlayElement = getOverlayElement();\n return /*#__PURE__*/React.createElement(React.Fragment, null, arrow && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-arrow\")\n }), overlayElement);\n };\n\n var getMenuElementOrLambda = function getMenuElementOrLambda() {\n var overlay = props.overlay;\n\n if (typeof overlay === 'function') {\n return getMenuElement;\n }\n\n return getMenuElement();\n };\n\n var getMinOverlayWidthMatchTrigger = function getMinOverlayWidthMatchTrigger() {\n var minOverlayWidthMatchTrigger = props.minOverlayWidthMatchTrigger,\n alignPoint = props.alignPoint;\n\n if ('minOverlayWidthMatchTrigger' in props) {\n return minOverlayWidthMatchTrigger;\n }\n\n return !alignPoint;\n };\n\n var getOpenClassName = function getOpenClassName() {\n var openClassName = props.openClassName;\n\n if (openClassName !== undefined) {\n return openClassName;\n }\n\n return \"\".concat(prefixCls, \"-open\");\n };\n\n var renderChildren = function renderChildren() {\n var children = props.children;\n var childrenProps = children.props ? children.props : {};\n var childClassName = classNames(childrenProps.className, getOpenClassName());\n return mergedVisible && children ? /*#__PURE__*/React.cloneElement(children, {\n className: childClassName\n }) : children;\n };\n\n var triggerHideAction = hideAction;\n\n if (!triggerHideAction && trigger.indexOf('contextMenu') !== -1) {\n triggerHideAction = ['click'];\n }\n\n return /*#__PURE__*/React.createElement(Trigger, _objectSpread(_objectSpread({\n builtinPlacements: placements\n }, otherProps), {}, {\n prefixCls: prefixCls,\n ref: triggerRef,\n popupClassName: classNames(overlayClassName, _defineProperty({}, \"\".concat(prefixCls, \"-show-arrow\"), arrow)),\n popupStyle: overlayStyle,\n action: trigger,\n showAction: showAction,\n hideAction: triggerHideAction || [],\n popupPlacement: placement,\n popupAlign: align,\n popupTransitionName: transitionName,\n popupAnimation: animation,\n popupVisible: mergedVisible,\n stretch: getMinOverlayWidthMatchTrigger() ? 'minWidth' : '',\n popup: getMenuElementOrLambda(),\n onPopupVisibleChange: onVisibleChange,\n onPopupClick: onClick,\n getPopupContainer: getPopupContainer\n }), renderChildren());\n}\n\nexport default /*#__PURE__*/React.forwardRef(Dropdown);","import * as React from 'react';\nexport var IdContext = /*#__PURE__*/React.createContext(null);\nexport function getMenuId(uuid, eventKey) {\n if (uuid === undefined) {\n return null;\n }\n return \"\".concat(uuid, \"-\").concat(eventKey);\n}\n\n/**\n * Get `data-menu-id`\n */\nexport function useMenuId(eventKey) {\n var id = React.useContext(IdContext);\n return getMenuId(id, eventKey);\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nvar _excluded = [\"children\", \"locked\"];\nimport * as React from 'react';\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport isEqual from \"rc-util/es/isEqual\";\nexport var MenuContext = /*#__PURE__*/React.createContext(null);\nfunction mergeProps(origin, target) {\n var clone = _objectSpread({}, origin);\n Object.keys(target).forEach(function (key) {\n var value = target[key];\n if (value !== undefined) {\n clone[key] = value;\n }\n });\n return clone;\n}\nexport default function InheritableContextProvider(_ref) {\n var children = _ref.children,\n locked = _ref.locked,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var context = React.useContext(MenuContext);\n var inheritableContext = useMemo(function () {\n return mergeProps(context, restProps);\n }, [context, restProps], function (prev, next) {\n return !locked && (prev[0] !== next[0] || !isEqual(prev[1], next[1], true));\n });\n return /*#__PURE__*/React.createElement(MenuContext.Provider, {\n value: inheritableContext\n }, children);\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport * as React from 'react';\nvar EmptyList = [];\n\n// ========================= Path Register =========================\n\nexport var PathRegisterContext = /*#__PURE__*/React.createContext(null);\nexport function useMeasure() {\n return React.useContext(PathRegisterContext);\n}\n\n// ========================= Path Tracker ==========================\nexport var PathTrackerContext = /*#__PURE__*/React.createContext(EmptyList);\nexport function useFullPath(eventKey) {\n var parentKeyPath = React.useContext(PathTrackerContext);\n return React.useMemo(function () {\n return eventKey !== undefined ? [].concat(_toConsumableArray(parentKeyPath), [eventKey]) : parentKeyPath;\n }, [parentKeyPath, eventKey]);\n}\n\n// =========================== Path User ===========================\n\nexport var PathUserContext = /*#__PURE__*/React.createContext(null);","import * as React from 'react';\nvar PrivateContext = /*#__PURE__*/React.createContext({});\nexport default PrivateContext;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport raf from \"rc-util/es/raf\";\nimport { getFocusNodeList } from \"rc-util/es/Dom/focus\";\nimport { getMenuId } from \"../context/IdContext\";\n\n// destruct to reduce minify size\nvar LEFT = KeyCode.LEFT,\n RIGHT = KeyCode.RIGHT,\n UP = KeyCode.UP,\n DOWN = KeyCode.DOWN,\n ENTER = KeyCode.ENTER,\n ESC = KeyCode.ESC,\n HOME = KeyCode.HOME,\n END = KeyCode.END;\nvar ArrowKeys = [UP, DOWN, LEFT, RIGHT];\nfunction getOffset(mode, isRootLevel, isRtl, which) {\n var _inline, _horizontal, _vertical, _offsets;\n var prev = 'prev';\n var next = 'next';\n var children = 'children';\n var parent = 'parent';\n\n // Inline enter is special that we use unique operation\n if (mode === 'inline' && which === ENTER) {\n return {\n inlineTrigger: true\n };\n }\n var inline = (_inline = {}, _defineProperty(_inline, UP, prev), _defineProperty(_inline, DOWN, next), _inline);\n var horizontal = (_horizontal = {}, _defineProperty(_horizontal, LEFT, isRtl ? next : prev), _defineProperty(_horizontal, RIGHT, isRtl ? prev : next), _defineProperty(_horizontal, DOWN, children), _defineProperty(_horizontal, ENTER, children), _horizontal);\n var vertical = (_vertical = {}, _defineProperty(_vertical, UP, prev), _defineProperty(_vertical, DOWN, next), _defineProperty(_vertical, ENTER, children), _defineProperty(_vertical, ESC, parent), _defineProperty(_vertical, LEFT, isRtl ? children : parent), _defineProperty(_vertical, RIGHT, isRtl ? parent : children), _vertical);\n var offsets = {\n inline: inline,\n horizontal: horizontal,\n vertical: vertical,\n inlineSub: inline,\n horizontalSub: vertical,\n verticalSub: vertical\n };\n var type = (_offsets = offsets[\"\".concat(mode).concat(isRootLevel ? '' : 'Sub')]) === null || _offsets === void 0 ? void 0 : _offsets[which];\n switch (type) {\n case prev:\n return {\n offset: -1,\n sibling: true\n };\n case next:\n return {\n offset: 1,\n sibling: true\n };\n case parent:\n return {\n offset: -1,\n sibling: false\n };\n case children:\n return {\n offset: 1,\n sibling: false\n };\n default:\n return null;\n }\n}\nfunction findContainerUL(element) {\n var current = element;\n while (current) {\n if (current.getAttribute('data-menu-list')) {\n return current;\n }\n current = current.parentElement;\n }\n\n // Normally should not reach this line\n /* istanbul ignore next */\n return null;\n}\n\n/**\n * Find focused element within element set provided\n */\nfunction getFocusElement(activeElement, elements) {\n var current = activeElement || document.activeElement;\n while (current) {\n if (elements.has(current)) {\n return current;\n }\n current = current.parentElement;\n }\n return null;\n}\n\n/**\n * Get focusable elements from the element set under provided container\n */\nfunction getFocusableElements(container, elements) {\n var list = getFocusNodeList(container, true);\n return list.filter(function (ele) {\n return elements.has(ele);\n });\n}\nfunction getNextFocusElement(parentQueryContainer, elements, focusMenuElement) {\n var offset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n // Key on the menu item will not get validate parent container\n if (!parentQueryContainer) {\n return null;\n }\n\n // List current level menu item elements\n var sameLevelFocusableMenuElementList = getFocusableElements(parentQueryContainer, elements);\n\n // Find next focus index\n var count = sameLevelFocusableMenuElementList.length;\n var focusIndex = sameLevelFocusableMenuElementList.findIndex(function (ele) {\n return focusMenuElement === ele;\n });\n if (offset < 0) {\n if (focusIndex === -1) {\n focusIndex = count - 1;\n } else {\n focusIndex -= 1;\n }\n } else if (offset > 0) {\n focusIndex += 1;\n }\n focusIndex = (focusIndex + count) % count;\n\n // Focus menu item\n return sameLevelFocusableMenuElementList[focusIndex];\n}\nexport default function useAccessibility(mode, activeKey, isRtl, id, containerRef, getKeys, getKeyPath, triggerActiveKey, triggerAccessibilityOpen, originOnKeyDown) {\n var rafRef = React.useRef();\n var activeRef = React.useRef();\n activeRef.current = activeKey;\n var cleanRaf = function cleanRaf() {\n raf.cancel(rafRef.current);\n };\n React.useEffect(function () {\n return function () {\n cleanRaf();\n };\n }, []);\n return function (e) {\n var which = e.which;\n if ([].concat(ArrowKeys, [ENTER, ESC, HOME, END]).includes(which)) {\n // Convert key to elements\n var elements;\n var key2element;\n var element2key;\n\n // >>> Wrap as function since we use raf for some case\n var refreshElements = function refreshElements() {\n elements = new Set();\n key2element = new Map();\n element2key = new Map();\n var keys = getKeys();\n keys.forEach(function (key) {\n var element = document.querySelector(\"[data-menu-id='\".concat(getMenuId(id, key), \"']\"));\n if (element) {\n elements.add(element);\n element2key.set(element, key);\n key2element.set(key, element);\n }\n });\n return elements;\n };\n refreshElements();\n\n // First we should find current focused MenuItem/SubMenu element\n var activeElement = key2element.get(activeKey);\n var focusMenuElement = getFocusElement(activeElement, elements);\n var focusMenuKey = element2key.get(focusMenuElement);\n var offsetObj = getOffset(mode, getKeyPath(focusMenuKey, true).length === 1, isRtl, which);\n\n // Some mode do not have fully arrow operation like inline\n if (!offsetObj && which !== HOME && which !== END) {\n return;\n }\n\n // Arrow prevent default to avoid page scroll\n if (ArrowKeys.includes(which) || [HOME, END].includes(which)) {\n e.preventDefault();\n }\n var tryFocus = function tryFocus(menuElement) {\n if (menuElement) {\n var focusTargetElement = menuElement;\n\n // Focus to link instead of menu item if possible\n var link = menuElement.querySelector('a');\n if (link !== null && link !== void 0 && link.getAttribute('href')) {\n focusTargetElement = link;\n }\n var targetKey = element2key.get(menuElement);\n triggerActiveKey(targetKey);\n\n /**\n * Do not `useEffect` here since `tryFocus` may trigger async\n * which makes React sync update the `activeKey`\n * that force render before `useRef` set the next activeKey\n */\n cleanRaf();\n rafRef.current = raf(function () {\n if (activeRef.current === targetKey) {\n focusTargetElement.focus();\n }\n });\n }\n };\n if ([HOME, END].includes(which) || offsetObj.sibling || !focusMenuElement) {\n // ========================== Sibling ==========================\n // Find walkable focus menu element container\n var parentQueryContainer;\n if (!focusMenuElement || mode === 'inline') {\n parentQueryContainer = containerRef.current;\n } else {\n parentQueryContainer = findContainerUL(focusMenuElement);\n }\n\n // Get next focus element\n var targetElement;\n var focusableElements = getFocusableElements(parentQueryContainer, elements);\n if (which === HOME) {\n targetElement = focusableElements[0];\n } else if (which === END) {\n targetElement = focusableElements[focusableElements.length - 1];\n } else {\n targetElement = getNextFocusElement(parentQueryContainer, elements, focusMenuElement, offsetObj.offset);\n }\n // Focus menu item\n tryFocus(targetElement);\n\n // ======================= InlineTrigger =======================\n } else if (offsetObj.inlineTrigger) {\n // Inline trigger no need switch to sub menu item\n triggerAccessibilityOpen(focusMenuKey);\n // =========================== Level ===========================\n } else if (offsetObj.offset > 0) {\n triggerAccessibilityOpen(focusMenuKey, true);\n cleanRaf();\n rafRef.current = raf(function () {\n // Async should resync elements\n refreshElements();\n var controlId = focusMenuElement.getAttribute('aria-controls');\n var subQueryContainer = document.getElementById(controlId);\n\n // Get sub focusable menu item\n var targetElement = getNextFocusElement(subQueryContainer, elements);\n\n // Focus menu item\n tryFocus(targetElement);\n }, 5);\n } else if (offsetObj.offset < 0) {\n var keyPath = getKeyPath(focusMenuKey, true);\n var parentKey = keyPath[keyPath.length - 2];\n var parentMenuElement = key2element.get(parentKey);\n\n // Focus menu item\n triggerAccessibilityOpen(parentKey, false);\n tryFocus(parentMenuElement);\n }\n }\n\n // Pass origin key down event\n originOnKeyDown === null || originOnKeyDown === void 0 ? void 0 : originOnKeyDown(e);\n };\n}","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useCallback } from 'react';\nimport warning from \"rc-util/es/warning\";\nimport { nextSlice } from \"../utils/timeUtil\";\nvar PATH_SPLIT = '__RC_UTIL_PATH_SPLIT__';\nvar getPathStr = function getPathStr(keyPath) {\n return keyPath.join(PATH_SPLIT);\n};\nvar getPathKeys = function getPathKeys(keyPathStr) {\n return keyPathStr.split(PATH_SPLIT);\n};\nexport var OVERFLOW_KEY = 'rc-menu-more';\nexport default function useKeyRecords() {\n var _React$useState = React.useState({}),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n internalForceUpdate = _React$useState2[1];\n var key2pathRef = useRef(new Map());\n var path2keyRef = useRef(new Map());\n var _React$useState3 = React.useState([]),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n overflowKeys = _React$useState4[0],\n setOverflowKeys = _React$useState4[1];\n var updateRef = useRef(0);\n var destroyRef = useRef(false);\n var forceUpdate = function forceUpdate() {\n if (!destroyRef.current) {\n internalForceUpdate({});\n }\n };\n var registerPath = useCallback(function (key, keyPath) {\n // Warning for invalidate or duplicated `key`\n if (process.env.NODE_ENV !== 'production') {\n warning(!key2pathRef.current.has(key), \"Duplicated key '\".concat(key, \"' used in Menu by path [\").concat(keyPath.join(' > '), \"]\"));\n }\n\n // Fill map\n var connectedPath = getPathStr(keyPath);\n path2keyRef.current.set(connectedPath, key);\n key2pathRef.current.set(key, connectedPath);\n updateRef.current += 1;\n var id = updateRef.current;\n nextSlice(function () {\n if (id === updateRef.current) {\n forceUpdate();\n }\n });\n }, []);\n var unregisterPath = useCallback(function (key, keyPath) {\n var connectedPath = getPathStr(keyPath);\n path2keyRef.current.delete(connectedPath);\n key2pathRef.current.delete(key);\n }, []);\n var refreshOverflowKeys = useCallback(function (keys) {\n setOverflowKeys(keys);\n }, []);\n var getKeyPath = useCallback(function (eventKey, includeOverflow) {\n var fullPath = key2pathRef.current.get(eventKey) || '';\n var keys = getPathKeys(fullPath);\n if (includeOverflow && overflowKeys.includes(keys[0])) {\n keys.unshift(OVERFLOW_KEY);\n }\n return keys;\n }, [overflowKeys]);\n var isSubPathKey = useCallback(function (pathKeys, eventKey) {\n return pathKeys.some(function (pathKey) {\n var pathKeyList = getKeyPath(pathKey, true);\n return pathKeyList.includes(eventKey);\n });\n }, [getKeyPath]);\n var getKeys = function getKeys() {\n var keys = _toConsumableArray(key2pathRef.current.keys());\n if (overflowKeys.length) {\n keys.push(OVERFLOW_KEY);\n }\n return keys;\n };\n\n /**\n * Find current key related child path keys\n */\n var getSubPathKeys = useCallback(function (key) {\n var connectedPath = \"\".concat(key2pathRef.current.get(key)).concat(PATH_SPLIT);\n var pathKeys = new Set();\n _toConsumableArray(path2keyRef.current.keys()).forEach(function (pathKey) {\n if (pathKey.startsWith(connectedPath)) {\n pathKeys.add(path2keyRef.current.get(pathKey));\n }\n });\n return pathKeys;\n }, []);\n React.useEffect(function () {\n return function () {\n destroyRef.current = true;\n };\n }, []);\n return {\n // Register\n registerPath: registerPath,\n unregisterPath: unregisterPath,\n refreshOverflowKeys: refreshOverflowKeys,\n // Util\n isSubPathKey: isSubPathKey,\n getKeyPath: getKeyPath,\n getKeys: getKeys,\n getSubPathKeys: getSubPathKeys\n };\n}","export function nextSlice(callback) {\n /* istanbul ignore next */\n Promise.resolve().then(callback);\n}","import * as React from 'react';\n\n/**\n * Cache callback function that always return same ref instead.\n * This is used for context optimization.\n */\nexport default function useMemoCallback(func) {\n var funRef = React.useRef(func);\n funRef.current = func;\n var callback = React.useCallback(function () {\n var _funRef$current;\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return (_funRef$current = funRef.current) === null || _funRef$current === void 0 ? void 0 : _funRef$current.call.apply(_funRef$current, [funRef].concat(args));\n }, []);\n return func ? callback : undefined;\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nvar uniquePrefix = Math.random().toFixed(5).toString().slice(2);\nvar internalId = 0;\nexport default function useUUID(id) {\n var _useMergedState = useMergedState(id, {\n value: id\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n uuid = _useMergedState2[0],\n setUUID = _useMergedState2[1];\n React.useEffect(function () {\n internalId += 1;\n var newId = process.env.NODE_ENV === 'test' ? 'test' : \"\".concat(uniquePrefix, \"-\").concat(internalId);\n setUUID(\"rc-menu-uuid-\".concat(newId));\n }, []);\n return uuid;\n}","import * as React from 'react';\nimport { MenuContext } from \"../context/MenuContext\";\nexport default function useActive(eventKey, disabled, onMouseEnter, onMouseLeave) {\n var _React$useContext = React.useContext(MenuContext),\n activeKey = _React$useContext.activeKey,\n onActive = _React$useContext.onActive,\n onInactive = _React$useContext.onInactive;\n var ret = {\n active: activeKey === eventKey\n };\n\n // Skip when disabled\n if (!disabled) {\n ret.onMouseEnter = function (domEvent) {\n onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter({\n key: eventKey,\n domEvent: domEvent\n });\n onActive(eventKey);\n };\n ret.onMouseLeave = function (domEvent) {\n onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave({\n key: eventKey,\n domEvent: domEvent\n });\n onInactive(eventKey);\n };\n }\n return ret;\n}","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"item\"];\nimport warning from \"rc-util/es/warning\";\n\n/**\n * `onClick` event return `info.item` which point to react node directly.\n * We should warning this since it will not work on FC.\n */\nexport function warnItemProp(_ref) {\n var item = _ref.item,\n restInfo = _objectWithoutProperties(_ref, _excluded);\n Object.defineProperty(restInfo, 'item', {\n get: function get() {\n warning(false, '`info.item` is deprecated since we will move to function component that not provides React Node instance in future.');\n return item;\n }\n });\n return restInfo;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nexport default function Icon(_ref) {\n var icon = _ref.icon,\n props = _ref.props,\n children = _ref.children;\n var iconNode;\n if (typeof icon === 'function') {\n iconNode = /*#__PURE__*/React.createElement(icon, _objectSpread({}, props));\n } else {\n // Compatible for origin definition\n iconNode = icon;\n }\n return iconNode || children || null;\n}","import * as React from 'react';\nimport { MenuContext } from \"../context/MenuContext\";\nexport default function useDirectionStyle(level) {\n var _React$useContext = React.useContext(MenuContext),\n mode = _React$useContext.mode,\n rtl = _React$useContext.rtl,\n inlineIndent = _React$useContext.inlineIndent;\n if (mode !== 'inline') {\n return null;\n }\n var len = level;\n return rtl ? {\n paddingRight: len * inlineIndent\n } : {\n paddingLeft: len * inlineIndent\n };\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nvar _excluded = [\"title\", \"attribute\", \"elementRef\"],\n _excluded2 = [\"style\", \"className\", \"eventKey\", \"warnKey\", \"disabled\", \"itemIcon\", \"children\", \"role\", \"onMouseEnter\", \"onMouseLeave\", \"onClick\", \"onKeyDown\", \"onFocus\"],\n _excluded3 = [\"active\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport warning from \"rc-util/es/warning\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport omit from \"rc-util/es/omit\";\nimport { MenuContext } from \"./context/MenuContext\";\nimport useActive from \"./hooks/useActive\";\nimport { warnItemProp } from \"./utils/warnUtil\";\nimport Icon from \"./Icon\";\nimport useDirectionStyle from \"./hooks/useDirectionStyle\";\nimport { useFullPath, useMeasure } from \"./context/PathContext\";\nimport { useMenuId } from \"./context/IdContext\";\nimport PrivateContext from \"./context/PrivateContext\";\n// Since Menu event provide the `info.item` which point to the MenuItem node instance.\n// We have to use class component here.\n// This should be removed from doc & api in future.\nvar LegacyMenuItem = /*#__PURE__*/function (_React$Component) {\n _inherits(LegacyMenuItem, _React$Component);\n var _super = _createSuper(LegacyMenuItem);\n function LegacyMenuItem() {\n _classCallCheck(this, LegacyMenuItem);\n return _super.apply(this, arguments);\n }\n _createClass(LegacyMenuItem, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n title = _this$props.title,\n attribute = _this$props.attribute,\n elementRef = _this$props.elementRef,\n restProps = _objectWithoutProperties(_this$props, _excluded);\n var passedProps = omit(restProps, ['eventKey']);\n warning(!attribute, '`attribute` of Menu.Item is deprecated. Please pass attribute directly.');\n return /*#__PURE__*/React.createElement(Overflow.Item, _extends({}, attribute, {\n title: typeof title === 'string' ? title : undefined\n }, passedProps, {\n ref: elementRef\n }));\n }\n }]);\n return LegacyMenuItem;\n}(React.Component);\n/**\n * Real Menu Item component\n */\nvar InternalMenuItem = function InternalMenuItem(props) {\n var _classNames;\n var style = props.style,\n className = props.className,\n eventKey = props.eventKey,\n warnKey = props.warnKey,\n disabled = props.disabled,\n itemIcon = props.itemIcon,\n children = props.children,\n role = props.role,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onClick = props.onClick,\n onKeyDown = props.onKeyDown,\n onFocus = props.onFocus,\n restProps = _objectWithoutProperties(props, _excluded2);\n var domDataId = useMenuId(eventKey);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n onItemClick = _React$useContext.onItemClick,\n contextDisabled = _React$useContext.disabled,\n overflowDisabled = _React$useContext.overflowDisabled,\n contextItemIcon = _React$useContext.itemIcon,\n selectedKeys = _React$useContext.selectedKeys,\n onActive = _React$useContext.onActive;\n var _React$useContext2 = React.useContext(PrivateContext),\n _internalRenderMenuItem = _React$useContext2._internalRenderMenuItem;\n var itemCls = \"\".concat(prefixCls, \"-item\");\n var legacyMenuItemRef = React.useRef();\n var elementRef = React.useRef();\n var mergedDisabled = contextDisabled || disabled;\n var connectedKeys = useFullPath(eventKey);\n\n // ================================ Warn ================================\n if (process.env.NODE_ENV !== 'production' && warnKey) {\n warning(false, 'MenuItem should not leave undefined `key`.');\n }\n\n // ============================= Info =============================\n var getEventInfo = function getEventInfo(e) {\n return {\n key: eventKey,\n // Note: For legacy code is reversed which not like other antd component\n keyPath: _toConsumableArray(connectedKeys).reverse(),\n item: legacyMenuItemRef.current,\n domEvent: e\n };\n };\n\n // ============================= Icon =============================\n var mergedItemIcon = itemIcon || contextItemIcon;\n\n // ============================ Active ============================\n var _useActive = useActive(eventKey, mergedDisabled, onMouseEnter, onMouseLeave),\n active = _useActive.active,\n activeProps = _objectWithoutProperties(_useActive, _excluded3);\n\n // ============================ Select ============================\n var selected = selectedKeys.includes(eventKey);\n\n // ======================== DirectionStyle ========================\n var directionStyle = useDirectionStyle(connectedKeys.length);\n\n // ============================ Events ============================\n var onInternalClick = function onInternalClick(e) {\n if (mergedDisabled) {\n return;\n }\n var info = getEventInfo(e);\n onClick === null || onClick === void 0 ? void 0 : onClick(warnItemProp(info));\n onItemClick(info);\n };\n var onInternalKeyDown = function onInternalKeyDown(e) {\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n if (e.which === KeyCode.ENTER) {\n var info = getEventInfo(e);\n\n // Legacy. Key will also trigger click event\n onClick === null || onClick === void 0 ? void 0 : onClick(warnItemProp(info));\n onItemClick(info);\n }\n };\n\n /**\n * Used for accessibility. Helper will focus element without key board.\n * We should manually trigger an active\n */\n var onInternalFocus = function onInternalFocus(e) {\n onActive(eventKey);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n\n // ============================ Render ============================\n var optionRoleProps = {};\n if (props.role === 'option') {\n optionRoleProps['aria-selected'] = selected;\n }\n var renderNode = /*#__PURE__*/React.createElement(LegacyMenuItem, _extends({\n ref: legacyMenuItemRef,\n elementRef: elementRef,\n role: role === null ? 'none' : role || 'menuitem',\n tabIndex: disabled ? null : -1,\n \"data-menu-id\": overflowDisabled && domDataId ? null : domDataId\n }, restProps, activeProps, optionRoleProps, {\n component: \"li\",\n \"aria-disabled\": disabled,\n style: _objectSpread(_objectSpread({}, directionStyle), style),\n className: classNames(itemCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(itemCls, \"-active\"), active), _defineProperty(_classNames, \"\".concat(itemCls, \"-selected\"), selected), _defineProperty(_classNames, \"\".concat(itemCls, \"-disabled\"), mergedDisabled), _classNames), className),\n onClick: onInternalClick,\n onKeyDown: onInternalKeyDown,\n onFocus: onInternalFocus\n }), children, /*#__PURE__*/React.createElement(Icon, {\n props: _objectSpread(_objectSpread({}, props), {}, {\n isSelected: selected\n }),\n icon: mergedItemIcon\n }));\n if (_internalRenderMenuItem) {\n renderNode = _internalRenderMenuItem(renderNode, props, {\n selected: selected\n });\n }\n return renderNode;\n};\nfunction MenuItem(props) {\n var eventKey = props.eventKey;\n\n // ==================== Record KeyPath ====================\n var measure = useMeasure();\n var connectedKeyPath = useFullPath(eventKey);\n\n // eslint-disable-next-line consistent-return\n React.useEffect(function () {\n if (measure) {\n measure.registerPath(eventKey, connectedKeyPath);\n return function () {\n measure.unregisterPath(eventKey, connectedKeyPath);\n };\n }\n }, [connectedKeyPath]);\n if (measure) {\n return null;\n }\n\n // ======================== Render ========================\n return /*#__PURE__*/React.createElement(InternalMenuItem, props);\n}\nexport default MenuItem;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"children\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { MenuContext } from \"../context/MenuContext\";\nvar InternalSubMenuList = function InternalSubMenuList(_ref, ref) {\n var className = _ref.className,\n children = _ref.children,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n mode = _React$useContext.mode,\n rtl = _React$useContext.rtl;\n return /*#__PURE__*/React.createElement(\"ul\", _extends({\n className: classNames(prefixCls, rtl && \"\".concat(prefixCls, \"-rtl\"), \"\".concat(prefixCls, \"-sub\"), \"\".concat(prefixCls, \"-\").concat(mode === 'inline' ? 'inline' : 'vertical'), className),\n role: \"menu\"\n }, restProps, {\n \"data-menu-list\": true,\n ref: ref\n }), children);\n};\nvar SubMenuList = /*#__PURE__*/React.forwardRef(InternalSubMenuList);\nSubMenuList.displayName = 'SubMenuList';\nexport default SubMenuList;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar _excluded = [\"label\", \"children\", \"key\", \"type\"];\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport { Divider, MenuItem, MenuItemGroup, SubMenu } from '..';\nexport function parseChildren(children, keyPath) {\n return toArray(children).map(function (child, index) {\n if ( /*#__PURE__*/React.isValidElement(child)) {\n var _eventKey, _child$props;\n var key = child.key;\n var eventKey = (_eventKey = (_child$props = child.props) === null || _child$props === void 0 ? void 0 : _child$props.eventKey) !== null && _eventKey !== void 0 ? _eventKey : key;\n var emptyKey = eventKey === null || eventKey === undefined;\n if (emptyKey) {\n eventKey = \"tmp_key-\".concat([].concat(_toConsumableArray(keyPath), [index]).join('-'));\n }\n var cloneProps = {\n key: eventKey,\n eventKey: eventKey\n };\n if (process.env.NODE_ENV !== 'production' && emptyKey) {\n cloneProps.warnKey = true;\n }\n return /*#__PURE__*/React.cloneElement(child, cloneProps);\n }\n return child;\n });\n}\nfunction convertItemsToNodes(list) {\n return (list || []).map(function (opt, index) {\n if (opt && _typeof(opt) === 'object') {\n var _ref = opt,\n label = _ref.label,\n children = _ref.children,\n key = _ref.key,\n type = _ref.type,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var mergedKey = key !== null && key !== void 0 ? key : \"tmp-\".concat(index);\n\n // MenuItemGroup & SubMenuItem\n if (children || type === 'group') {\n if (type === 'group') {\n // Group\n return /*#__PURE__*/React.createElement(MenuItemGroup, _extends({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n\n // Sub Menu\n return /*#__PURE__*/React.createElement(SubMenu, _extends({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n\n // MenuItem & Divider\n if (type === 'divider') {\n return /*#__PURE__*/React.createElement(Divider, _extends({\n key: mergedKey\n }, restProps));\n }\n return /*#__PURE__*/React.createElement(MenuItem, _extends({\n key: mergedKey\n }, restProps), label);\n }\n return null;\n }).filter(function (opt) {\n return opt;\n });\n}\nexport function parseItems(children, items, keyPath) {\n var childNodes = children;\n if (items) {\n childNodes = convertItemsToNodes(items);\n }\n return parseChildren(childNodes, keyPath);\n}","var autoAdjustOverflow = {\n adjustX: 1,\n adjustY: 1\n};\nexport var placements = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [0, -7]\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [0, 7]\n },\n leftTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0]\n },\n rightTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [4, 0]\n }\n};\nexport var placementsRtl = {\n topLeft: {\n points: ['bl', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [0, -7]\n },\n bottomLeft: {\n points: ['tl', 'bl'],\n overflow: autoAdjustOverflow,\n offset: [0, 7]\n },\n rightTop: {\n points: ['tr', 'tl'],\n overflow: autoAdjustOverflow,\n offset: [-4, 0]\n },\n leftTop: {\n points: ['tl', 'tr'],\n overflow: autoAdjustOverflow,\n offset: [4, 0]\n }\n};\nexport default placements;","export function getMotion(mode, motion, defaultMotions) {\n if (motion) {\n return motion;\n }\n if (defaultMotions) {\n return defaultMotions[mode] || defaultMotions.other;\n }\n return undefined;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport Trigger from 'rc-trigger';\nimport classNames from 'classnames';\nimport raf from \"rc-util/es/raf\";\nimport { MenuContext } from \"../context/MenuContext\";\nimport { placements, placementsRtl } from \"../placements\";\nimport { getMotion } from \"../utils/motionUtil\";\nvar popupPlacementMap = {\n horizontal: 'bottomLeft',\n vertical: 'rightTop',\n 'vertical-left': 'rightTop',\n 'vertical-right': 'leftTop'\n};\nexport default function PopupTrigger(_ref) {\n var prefixCls = _ref.prefixCls,\n visible = _ref.visible,\n children = _ref.children,\n popup = _ref.popup,\n popupClassName = _ref.popupClassName,\n popupOffset = _ref.popupOffset,\n disabled = _ref.disabled,\n mode = _ref.mode,\n onVisibleChange = _ref.onVisibleChange;\n var _React$useContext = React.useContext(MenuContext),\n getPopupContainer = _React$useContext.getPopupContainer,\n rtl = _React$useContext.rtl,\n subMenuOpenDelay = _React$useContext.subMenuOpenDelay,\n subMenuCloseDelay = _React$useContext.subMenuCloseDelay,\n builtinPlacements = _React$useContext.builtinPlacements,\n triggerSubMenuAction = _React$useContext.triggerSubMenuAction,\n forceSubMenuRender = _React$useContext.forceSubMenuRender,\n rootClassName = _React$useContext.rootClassName,\n motion = _React$useContext.motion,\n defaultMotions = _React$useContext.defaultMotions;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerVisible = _React$useState2[0],\n setInnerVisible = _React$useState2[1];\n var placement = rtl ? _objectSpread(_objectSpread({}, placementsRtl), builtinPlacements) : _objectSpread(_objectSpread({}, placements), builtinPlacements);\n var popupPlacement = popupPlacementMap[mode];\n var targetMotion = getMotion(mode, motion, defaultMotions);\n var targetMotionRef = React.useRef(targetMotion);\n if (mode !== 'inline') {\n /**\n * PopupTrigger is only used for vertical and horizontal types.\n * When collapsed is unfolded, the inline animation will destroy the vertical animation.\n */\n targetMotionRef.current = targetMotion;\n }\n var mergedMotion = _objectSpread(_objectSpread({}, targetMotionRef.current), {}, {\n leavedClassName: \"\".concat(prefixCls, \"-hidden\"),\n removeOnLeave: false,\n motionAppear: true\n });\n\n // Delay to change visible\n var visibleRef = React.useRef();\n React.useEffect(function () {\n visibleRef.current = raf(function () {\n setInnerVisible(visible);\n });\n return function () {\n raf.cancel(visibleRef.current);\n };\n }, [visible]);\n return /*#__PURE__*/React.createElement(Trigger, {\n prefixCls: prefixCls,\n popupClassName: classNames(\"\".concat(prefixCls, \"-popup\"), _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), rtl), popupClassName, rootClassName),\n stretch: mode === 'horizontal' ? 'minWidth' : null,\n getPopupContainer: getPopupContainer,\n builtinPlacements: placement,\n popupPlacement: popupPlacement,\n popupVisible: innerVisible,\n popup: popup,\n popupAlign: popupOffset && {\n offset: popupOffset\n },\n action: disabled ? [] : [triggerSubMenuAction],\n mouseEnterDelay: subMenuOpenDelay,\n mouseLeaveDelay: subMenuCloseDelay,\n onPopupVisibleChange: onVisibleChange,\n forceRender: forceSubMenuRender,\n popupMotion: mergedMotion\n }, children);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport CSSMotion from 'rc-motion';\nimport { getMotion } from \"../utils/motionUtil\";\nimport MenuContextProvider, { MenuContext } from \"../context/MenuContext\";\nimport SubMenuList from \"./SubMenuList\";\nexport default function InlineSubMenuList(_ref) {\n var id = _ref.id,\n open = _ref.open,\n keyPath = _ref.keyPath,\n children = _ref.children;\n var fixedMode = 'inline';\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n forceSubMenuRender = _React$useContext.forceSubMenuRender,\n motion = _React$useContext.motion,\n defaultMotions = _React$useContext.defaultMotions,\n mode = _React$useContext.mode;\n\n // Always use latest mode check\n var sameModeRef = React.useRef(false);\n sameModeRef.current = mode === fixedMode;\n\n // We record `destroy` mark here since when mode change from `inline` to others.\n // The inline list should remove when motion end.\n var _React$useState = React.useState(!sameModeRef.current),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n destroy = _React$useState2[0],\n setDestroy = _React$useState2[1];\n var mergedOpen = sameModeRef.current ? open : false;\n\n // ================================= Effect =================================\n // Reset destroy state when mode change back\n React.useEffect(function () {\n if (sameModeRef.current) {\n setDestroy(false);\n }\n }, [mode]);\n\n // ================================= Render =================================\n var mergedMotion = _objectSpread({}, getMotion(fixedMode, motion, defaultMotions));\n\n // No need appear since nest inlineCollapse changed\n if (keyPath.length > 1) {\n mergedMotion.motionAppear = false;\n }\n\n // Hide inline list when mode changed and motion end\n var originOnVisibleChanged = mergedMotion.onVisibleChanged;\n mergedMotion.onVisibleChanged = function (newVisible) {\n if (!sameModeRef.current && !newVisible) {\n setDestroy(true);\n }\n return originOnVisibleChanged === null || originOnVisibleChanged === void 0 ? void 0 : originOnVisibleChanged(newVisible);\n };\n if (destroy) {\n return null;\n }\n return /*#__PURE__*/React.createElement(MenuContextProvider, {\n mode: fixedMode,\n locked: !sameModeRef.current\n }, /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: mergedOpen\n }, mergedMotion, {\n forceRender: forceSubMenuRender,\n removeOnLeave: false,\n leavedClassName: \"\".concat(prefixCls, \"-hidden\")\n }), function (_ref2) {\n var motionClassName = _ref2.className,\n motionStyle = _ref2.style;\n return /*#__PURE__*/React.createElement(SubMenuList, {\n id: id,\n className: motionClassName,\n style: motionStyle\n }, children);\n }));\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"style\", \"className\", \"title\", \"eventKey\", \"warnKey\", \"disabled\", \"internalPopupClose\", \"children\", \"itemIcon\", \"expandIcon\", \"popupClassName\", \"popupOffset\", \"onClick\", \"onMouseEnter\", \"onMouseLeave\", \"onTitleClick\", \"onTitleMouseEnter\", \"onTitleMouseLeave\"],\n _excluded2 = [\"active\"];\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport warning from \"rc-util/es/warning\";\nimport SubMenuList from \"./SubMenuList\";\nimport { parseChildren } from \"../utils/nodeUtil\";\nimport MenuContextProvider, { MenuContext } from \"../context/MenuContext\";\nimport useMemoCallback from \"../hooks/useMemoCallback\";\nimport PopupTrigger from \"./PopupTrigger\";\nimport Icon from \"../Icon\";\nimport useActive from \"../hooks/useActive\";\nimport { warnItemProp } from \"../utils/warnUtil\";\nimport useDirectionStyle from \"../hooks/useDirectionStyle\";\nimport InlineSubMenuList from \"./InlineSubMenuList\";\nimport { PathTrackerContext, PathUserContext, useFullPath, useMeasure } from \"../context/PathContext\";\nimport { useMenuId } from \"../context/IdContext\";\nimport PrivateContext from \"../context/PrivateContext\";\nvar InternalSubMenu = function InternalSubMenu(props) {\n var _classNames;\n var style = props.style,\n className = props.className,\n title = props.title,\n eventKey = props.eventKey,\n warnKey = props.warnKey,\n disabled = props.disabled,\n internalPopupClose = props.internalPopupClose,\n children = props.children,\n itemIcon = props.itemIcon,\n expandIcon = props.expandIcon,\n popupClassName = props.popupClassName,\n popupOffset = props.popupOffset,\n onClick = props.onClick,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onTitleClick = props.onTitleClick,\n onTitleMouseEnter = props.onTitleMouseEnter,\n onTitleMouseLeave = props.onTitleMouseLeave,\n restProps = _objectWithoutProperties(props, _excluded);\n var domDataId = useMenuId(eventKey);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls,\n mode = _React$useContext.mode,\n openKeys = _React$useContext.openKeys,\n contextDisabled = _React$useContext.disabled,\n overflowDisabled = _React$useContext.overflowDisabled,\n activeKey = _React$useContext.activeKey,\n selectedKeys = _React$useContext.selectedKeys,\n contextItemIcon = _React$useContext.itemIcon,\n contextExpandIcon = _React$useContext.expandIcon,\n onItemClick = _React$useContext.onItemClick,\n onOpenChange = _React$useContext.onOpenChange,\n onActive = _React$useContext.onActive;\n var _React$useContext2 = React.useContext(PrivateContext),\n _internalRenderSubMenuItem = _React$useContext2._internalRenderSubMenuItem;\n var _React$useContext3 = React.useContext(PathUserContext),\n isSubPathKey = _React$useContext3.isSubPathKey;\n var connectedPath = useFullPath();\n var subMenuPrefixCls = \"\".concat(prefixCls, \"-submenu\");\n var mergedDisabled = contextDisabled || disabled;\n var elementRef = React.useRef();\n var popupRef = React.useRef();\n\n // ================================ Warn ================================\n if (process.env.NODE_ENV !== 'production' && warnKey) {\n warning(false, 'SubMenu should not leave undefined `key`.');\n }\n\n // ================================ Icon ================================\n var mergedItemIcon = itemIcon || contextItemIcon;\n var mergedExpandIcon = expandIcon || contextExpandIcon;\n\n // ================================ Open ================================\n var originOpen = openKeys.includes(eventKey);\n var open = !overflowDisabled && originOpen;\n\n // =============================== Select ===============================\n var childrenSelected = isSubPathKey(selectedKeys, eventKey);\n\n // =============================== Active ===============================\n var _useActive = useActive(eventKey, mergedDisabled, onTitleMouseEnter, onTitleMouseLeave),\n active = _useActive.active,\n activeProps = _objectWithoutProperties(_useActive, _excluded2);\n\n // Fallback of active check to avoid hover on menu title or disabled item\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n childrenActive = _React$useState2[0],\n setChildrenActive = _React$useState2[1];\n var triggerChildrenActive = function triggerChildrenActive(newActive) {\n if (!mergedDisabled) {\n setChildrenActive(newActive);\n }\n };\n var onInternalMouseEnter = function onInternalMouseEnter(domEvent) {\n triggerChildrenActive(true);\n onMouseEnter === null || onMouseEnter === void 0 ? void 0 : onMouseEnter({\n key: eventKey,\n domEvent: domEvent\n });\n };\n var onInternalMouseLeave = function onInternalMouseLeave(domEvent) {\n triggerChildrenActive(false);\n onMouseLeave === null || onMouseLeave === void 0 ? void 0 : onMouseLeave({\n key: eventKey,\n domEvent: domEvent\n });\n };\n var mergedActive = React.useMemo(function () {\n if (active) {\n return active;\n }\n if (mode !== 'inline') {\n return childrenActive || isSubPathKey([activeKey], eventKey);\n }\n return false;\n }, [mode, active, activeKey, childrenActive, eventKey, isSubPathKey]);\n\n // ========================== DirectionStyle ==========================\n var directionStyle = useDirectionStyle(connectedPath.length);\n\n // =============================== Events ===============================\n // >>>> Title click\n var onInternalTitleClick = function onInternalTitleClick(e) {\n // Skip if disabled\n if (mergedDisabled) {\n return;\n }\n onTitleClick === null || onTitleClick === void 0 ? void 0 : onTitleClick({\n key: eventKey,\n domEvent: e\n });\n\n // Trigger open by click when mode is `inline`\n if (mode === 'inline') {\n onOpenChange(eventKey, !originOpen);\n }\n };\n\n // >>>> Context for children click\n var onMergedItemClick = useMemoCallback(function (info) {\n onClick === null || onClick === void 0 ? void 0 : onClick(warnItemProp(info));\n onItemClick(info);\n });\n\n // >>>>> Visible change\n var onPopupVisibleChange = function onPopupVisibleChange(newVisible) {\n if (mode !== 'inline') {\n onOpenChange(eventKey, newVisible);\n }\n };\n\n /**\n * Used for accessibility. Helper will focus element without key board.\n * We should manually trigger an active\n */\n var onInternalFocus = function onInternalFocus() {\n onActive(eventKey);\n };\n\n // =============================== Render ===============================\n var popupId = domDataId && \"\".concat(domDataId, \"-popup\");\n\n // >>>>> Title\n var titleNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n role: \"menuitem\",\n style: directionStyle,\n className: \"\".concat(subMenuPrefixCls, \"-title\"),\n tabIndex: mergedDisabled ? null : -1,\n ref: elementRef,\n title: typeof title === 'string' ? title : null,\n \"data-menu-id\": overflowDisabled && domDataId ? null : domDataId,\n \"aria-expanded\": open,\n \"aria-haspopup\": true,\n \"aria-controls\": popupId,\n \"aria-disabled\": mergedDisabled,\n onClick: onInternalTitleClick,\n onFocus: onInternalFocus\n }, activeProps), title, /*#__PURE__*/React.createElement(Icon, {\n icon: mode !== 'horizontal' ? mergedExpandIcon : null,\n props: _objectSpread(_objectSpread({}, props), {}, {\n isOpen: open,\n // [Legacy] Not sure why need this mark\n isSubMenu: true\n })\n }, /*#__PURE__*/React.createElement(\"i\", {\n className: \"\".concat(subMenuPrefixCls, \"-arrow\")\n })));\n\n // Cache mode if it change to `inline` which do not have popup motion\n var triggerModeRef = React.useRef(mode);\n if (mode !== 'inline' && connectedPath.length > 1) {\n triggerModeRef.current = 'vertical';\n } else {\n triggerModeRef.current = mode;\n }\n if (!overflowDisabled) {\n var triggerMode = triggerModeRef.current;\n\n // Still wrap with Trigger here since we need avoid react re-mount dom node\n // Which makes motion failed\n titleNode = /*#__PURE__*/React.createElement(PopupTrigger, {\n mode: triggerMode,\n prefixCls: subMenuPrefixCls,\n visible: !internalPopupClose && open && mode !== 'inline',\n popupClassName: popupClassName,\n popupOffset: popupOffset,\n popup: /*#__PURE__*/React.createElement(MenuContextProvider\n // Special handle of horizontal mode\n , {\n mode: triggerMode === 'horizontal' ? 'vertical' : triggerMode\n }, /*#__PURE__*/React.createElement(SubMenuList, {\n id: popupId,\n ref: popupRef\n }, children)),\n disabled: mergedDisabled,\n onVisibleChange: onPopupVisibleChange\n }, titleNode);\n }\n\n // >>>>> List node\n var listNode = /*#__PURE__*/React.createElement(Overflow.Item, _extends({\n role: \"none\"\n }, restProps, {\n component: \"li\",\n style: style,\n className: classNames(subMenuPrefixCls, \"\".concat(subMenuPrefixCls, \"-\").concat(mode), className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-open\"), open), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-active\"), mergedActive), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-selected\"), childrenSelected), _defineProperty(_classNames, \"\".concat(subMenuPrefixCls, \"-disabled\"), mergedDisabled), _classNames)),\n onMouseEnter: onInternalMouseEnter,\n onMouseLeave: onInternalMouseLeave\n }), titleNode, !overflowDisabled && /*#__PURE__*/React.createElement(InlineSubMenuList, {\n id: popupId,\n open: open,\n keyPath: connectedPath\n }, children));\n if (_internalRenderSubMenuItem) {\n listNode = _internalRenderSubMenuItem(listNode, props, {\n selected: childrenSelected,\n active: mergedActive,\n open: open,\n disabled: mergedDisabled\n });\n }\n\n // >>>>> Render\n return /*#__PURE__*/React.createElement(MenuContextProvider, {\n onItemClick: onMergedItemClick,\n mode: mode === 'horizontal' ? 'vertical' : mode,\n itemIcon: mergedItemIcon,\n expandIcon: mergedExpandIcon\n }, listNode);\n};\nexport default function SubMenu(props) {\n var eventKey = props.eventKey,\n children = props.children;\n var connectedKeyPath = useFullPath(eventKey);\n var childList = parseChildren(children, connectedKeyPath);\n\n // ==================== Record KeyPath ====================\n var measure = useMeasure();\n\n // eslint-disable-next-line consistent-return\n React.useEffect(function () {\n if (measure) {\n measure.registerPath(eventKey, connectedKeyPath);\n return function () {\n measure.unregisterPath(eventKey, connectedKeyPath);\n };\n }\n }, [connectedKeyPath]);\n var renderNode;\n\n // ======================== Render ========================\n if (measure) {\n renderNode = childList;\n } else {\n renderNode = /*#__PURE__*/React.createElement(InternalSubMenu, props, childList);\n }\n return /*#__PURE__*/React.createElement(PathTrackerContext.Provider, {\n value: connectedKeyPath\n }, renderNode);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"rootClassName\", \"style\", \"className\", \"tabIndex\", \"items\", \"children\", \"direction\", \"id\", \"mode\", \"inlineCollapsed\", \"disabled\", \"disabledOverflow\", \"subMenuOpenDelay\", \"subMenuCloseDelay\", \"forceSubMenuRender\", \"defaultOpenKeys\", \"openKeys\", \"activeKey\", \"defaultActiveFirst\", \"selectable\", \"multiple\", \"defaultSelectedKeys\", \"selectedKeys\", \"onSelect\", \"onDeselect\", \"inlineIndent\", \"motion\", \"defaultMotions\", \"triggerSubMenuAction\", \"builtinPlacements\", \"itemIcon\", \"expandIcon\", \"overflowedIndicator\", \"overflowedIndicatorPopupClassName\", \"getPopupContainer\", \"onClick\", \"onOpenChange\", \"onKeyDown\", \"openAnimation\", \"openTransitionName\", \"_internalRenderMenuItem\", \"_internalRenderSubMenuItem\"];\nimport classNames from 'classnames';\nimport Overflow from 'rc-overflow';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { useImperativeHandle } from 'react';\nimport { flushSync } from 'react-dom';\nimport isEqual from \"rc-util/es/isEqual\";\nimport { getMenuId, IdContext } from \"./context/IdContext\";\nimport MenuContextProvider from \"./context/MenuContext\";\nimport { PathRegisterContext, PathUserContext } from \"./context/PathContext\";\nimport PrivateContext from \"./context/PrivateContext\";\nimport useAccessibility from \"./hooks/useAccessibility\";\nimport useKeyRecords, { OVERFLOW_KEY } from \"./hooks/useKeyRecords\";\nimport useMemoCallback from \"./hooks/useMemoCallback\";\nimport useUUID from \"./hooks/useUUID\";\nimport MenuItem from \"./MenuItem\";\nimport SubMenu from \"./SubMenu\";\nimport { parseItems } from \"./utils/nodeUtil\";\nimport { warnItemProp } from \"./utils/warnUtil\";\n\n/**\n * Menu modify after refactor:\n * ## Add\n * - disabled\n *\n * ## Remove\n * - openTransitionName\n * - openAnimation\n * - onDestroy\n * - siderCollapsed: Seems antd do not use this prop (Need test in antd)\n * - collapsedWidth: Seems this logic should be handle by antd Layout.Sider\n */\n\n// optimize for render\nvar EMPTY_LIST = [];\nvar Menu = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _childList$, _classNames;\n var _ref = props,\n _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-menu' : _ref$prefixCls,\n rootClassName = _ref.rootClassName,\n style = _ref.style,\n className = _ref.className,\n _ref$tabIndex = _ref.tabIndex,\n tabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,\n items = _ref.items,\n children = _ref.children,\n direction = _ref.direction,\n id = _ref.id,\n _ref$mode = _ref.mode,\n mode = _ref$mode === void 0 ? 'vertical' : _ref$mode,\n inlineCollapsed = _ref.inlineCollapsed,\n disabled = _ref.disabled,\n disabledOverflow = _ref.disabledOverflow,\n _ref$subMenuOpenDelay = _ref.subMenuOpenDelay,\n subMenuOpenDelay = _ref$subMenuOpenDelay === void 0 ? 0.1 : _ref$subMenuOpenDelay,\n _ref$subMenuCloseDela = _ref.subMenuCloseDelay,\n subMenuCloseDelay = _ref$subMenuCloseDela === void 0 ? 0.1 : _ref$subMenuCloseDela,\n forceSubMenuRender = _ref.forceSubMenuRender,\n defaultOpenKeys = _ref.defaultOpenKeys,\n openKeys = _ref.openKeys,\n activeKey = _ref.activeKey,\n defaultActiveFirst = _ref.defaultActiveFirst,\n _ref$selectable = _ref.selectable,\n selectable = _ref$selectable === void 0 ? true : _ref$selectable,\n _ref$multiple = _ref.multiple,\n multiple = _ref$multiple === void 0 ? false : _ref$multiple,\n defaultSelectedKeys = _ref.defaultSelectedKeys,\n selectedKeys = _ref.selectedKeys,\n onSelect = _ref.onSelect,\n onDeselect = _ref.onDeselect,\n _ref$inlineIndent = _ref.inlineIndent,\n inlineIndent = _ref$inlineIndent === void 0 ? 24 : _ref$inlineIndent,\n motion = _ref.motion,\n defaultMotions = _ref.defaultMotions,\n _ref$triggerSubMenuAc = _ref.triggerSubMenuAction,\n triggerSubMenuAction = _ref$triggerSubMenuAc === void 0 ? 'hover' : _ref$triggerSubMenuAc,\n builtinPlacements = _ref.builtinPlacements,\n itemIcon = _ref.itemIcon,\n expandIcon = _ref.expandIcon,\n _ref$overflowedIndica = _ref.overflowedIndicator,\n overflowedIndicator = _ref$overflowedIndica === void 0 ? '...' : _ref$overflowedIndica,\n overflowedIndicatorPopupClassName = _ref.overflowedIndicatorPopupClassName,\n getPopupContainer = _ref.getPopupContainer,\n onClick = _ref.onClick,\n onOpenChange = _ref.onOpenChange,\n onKeyDown = _ref.onKeyDown,\n openAnimation = _ref.openAnimation,\n openTransitionName = _ref.openTransitionName,\n _internalRenderMenuItem = _ref._internalRenderMenuItem,\n _internalRenderSubMenuItem = _ref._internalRenderSubMenuItem,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var childList = React.useMemo(function () {\n return parseItems(children, items, EMPTY_LIST);\n }, [children, items]);\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n mounted = _React$useState2[0],\n setMounted = _React$useState2[1];\n var containerRef = React.useRef();\n var uuid = useUUID(id);\n var isRtl = direction === 'rtl';\n\n // ========================= Warn =========================\n if (process.env.NODE_ENV !== 'production') {\n warning(!openAnimation && !openTransitionName, '`openAnimation` and `openTransitionName` is removed. Please use `motion` or `defaultMotion` instead.');\n }\n\n // ========================= Open =========================\n var _useMergedState = useMergedState(defaultOpenKeys, {\n value: openKeys,\n postState: function postState(keys) {\n return keys || EMPTY_LIST;\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedOpenKeys = _useMergedState2[0],\n setMergedOpenKeys = _useMergedState2[1];\n\n // React 18 will merge mouse event which means we open key will not sync\n // ref: https://github.com/ant-design/ant-design/issues/38818\n var triggerOpenKeys = function triggerOpenKeys(keys) {\n var forceFlush = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n function doUpdate() {\n setMergedOpenKeys(keys);\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(keys);\n }\n if (forceFlush) {\n flushSync(doUpdate);\n } else {\n doUpdate();\n }\n };\n\n // >>>>> Cache & Reset open keys when inlineCollapsed changed\n var _React$useState3 = React.useState(mergedOpenKeys),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n inlineCacheOpenKeys = _React$useState4[0],\n setInlineCacheOpenKeys = _React$useState4[1];\n var mountRef = React.useRef(false);\n\n // ========================= Mode =========================\n var _React$useMemo = React.useMemo(function () {\n if ((mode === 'inline' || mode === 'vertical') && inlineCollapsed) {\n return ['vertical', inlineCollapsed];\n }\n return [mode, false];\n }, [mode, inlineCollapsed]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n mergedMode = _React$useMemo2[0],\n mergedInlineCollapsed = _React$useMemo2[1];\n var isInlineMode = mergedMode === 'inline';\n var _React$useState5 = React.useState(mergedMode),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n internalMode = _React$useState6[0],\n setInternalMode = _React$useState6[1];\n var _React$useState7 = React.useState(mergedInlineCollapsed),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n internalInlineCollapsed = _React$useState8[0],\n setInternalInlineCollapsed = _React$useState8[1];\n React.useEffect(function () {\n setInternalMode(mergedMode);\n setInternalInlineCollapsed(mergedInlineCollapsed);\n if (!mountRef.current) {\n return;\n }\n // Synchronously update MergedOpenKeys\n if (isInlineMode) {\n setMergedOpenKeys(inlineCacheOpenKeys);\n } else {\n // Trigger open event in case its in control\n triggerOpenKeys(EMPTY_LIST);\n }\n }, [mergedMode, mergedInlineCollapsed]);\n\n // ====================== Responsive ======================\n var _React$useState9 = React.useState(0),\n _React$useState10 = _slicedToArray(_React$useState9, 2),\n lastVisibleIndex = _React$useState10[0],\n setLastVisibleIndex = _React$useState10[1];\n var allVisible = lastVisibleIndex >= childList.length - 1 || internalMode !== 'horizontal' || disabledOverflow;\n\n // Cache\n React.useEffect(function () {\n if (isInlineMode) {\n setInlineCacheOpenKeys(mergedOpenKeys);\n }\n }, [mergedOpenKeys]);\n React.useEffect(function () {\n mountRef.current = true;\n return function () {\n mountRef.current = false;\n };\n }, []);\n\n // ========================= Path =========================\n var _useKeyRecords = useKeyRecords(),\n registerPath = _useKeyRecords.registerPath,\n unregisterPath = _useKeyRecords.unregisterPath,\n refreshOverflowKeys = _useKeyRecords.refreshOverflowKeys,\n isSubPathKey = _useKeyRecords.isSubPathKey,\n getKeyPath = _useKeyRecords.getKeyPath,\n getKeys = _useKeyRecords.getKeys,\n getSubPathKeys = _useKeyRecords.getSubPathKeys;\n var registerPathContext = React.useMemo(function () {\n return {\n registerPath: registerPath,\n unregisterPath: unregisterPath\n };\n }, [registerPath, unregisterPath]);\n var pathUserContext = React.useMemo(function () {\n return {\n isSubPathKey: isSubPathKey\n };\n }, [isSubPathKey]);\n React.useEffect(function () {\n refreshOverflowKeys(allVisible ? EMPTY_LIST : childList.slice(lastVisibleIndex + 1).map(function (child) {\n return child.key;\n }));\n }, [lastVisibleIndex, allVisible]);\n\n // ======================== Active ========================\n var _useMergedState3 = useMergedState(activeKey || defaultActiveFirst && ((_childList$ = childList[0]) === null || _childList$ === void 0 ? void 0 : _childList$.key), {\n value: activeKey\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n mergedActiveKey = _useMergedState4[0],\n setMergedActiveKey = _useMergedState4[1];\n var onActive = useMemoCallback(function (key) {\n setMergedActiveKey(key);\n });\n var onInactive = useMemoCallback(function () {\n setMergedActiveKey(undefined);\n });\n useImperativeHandle(ref, function () {\n return {\n list: containerRef.current,\n focus: function focus(options) {\n var _childList$find;\n var shouldFocusKey = mergedActiveKey !== null && mergedActiveKey !== void 0 ? mergedActiveKey : (_childList$find = childList.find(function (node) {\n return !node.props.disabled;\n })) === null || _childList$find === void 0 ? void 0 : _childList$find.key;\n if (shouldFocusKey) {\n var _containerRef$current, _containerRef$current2, _containerRef$current3;\n (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : (_containerRef$current2 = _containerRef$current.querySelector(\"li[data-menu-id='\".concat(getMenuId(uuid, shouldFocusKey), \"']\"))) === null || _containerRef$current2 === void 0 ? void 0 : (_containerRef$current3 = _containerRef$current2.focus) === null || _containerRef$current3 === void 0 ? void 0 : _containerRef$current3.call(_containerRef$current2, options);\n }\n }\n };\n });\n\n // ======================== Select ========================\n // >>>>> Select keys\n var _useMergedState5 = useMergedState(defaultSelectedKeys || [], {\n value: selectedKeys,\n // Legacy convert key to array\n postState: function postState(keys) {\n if (Array.isArray(keys)) {\n return keys;\n }\n if (keys === null || keys === undefined) {\n return EMPTY_LIST;\n }\n return [keys];\n }\n }),\n _useMergedState6 = _slicedToArray(_useMergedState5, 2),\n mergedSelectKeys = _useMergedState6[0],\n setMergedSelectKeys = _useMergedState6[1];\n\n // >>>>> Trigger select\n var triggerSelection = function triggerSelection(info) {\n if (selectable) {\n // Insert or Remove\n var targetKey = info.key;\n var exist = mergedSelectKeys.includes(targetKey);\n var newSelectKeys;\n if (multiple) {\n if (exist) {\n newSelectKeys = mergedSelectKeys.filter(function (key) {\n return key !== targetKey;\n });\n } else {\n newSelectKeys = [].concat(_toConsumableArray(mergedSelectKeys), [targetKey]);\n }\n } else {\n newSelectKeys = [targetKey];\n }\n setMergedSelectKeys(newSelectKeys);\n\n // Trigger event\n var selectInfo = _objectSpread(_objectSpread({}, info), {}, {\n selectedKeys: newSelectKeys\n });\n if (exist) {\n onDeselect === null || onDeselect === void 0 ? void 0 : onDeselect(selectInfo);\n } else {\n onSelect === null || onSelect === void 0 ? void 0 : onSelect(selectInfo);\n }\n }\n\n // Whatever selectable, always close it\n if (!multiple && mergedOpenKeys.length && internalMode !== 'inline') {\n triggerOpenKeys(EMPTY_LIST);\n }\n };\n\n // ========================= Open =========================\n /**\n * Click for item. SubMenu do not have selection status\n */\n var onInternalClick = useMemoCallback(function (info) {\n onClick === null || onClick === void 0 ? void 0 : onClick(warnItemProp(info));\n triggerSelection(info);\n });\n var onInternalOpenChange = useMemoCallback(function (key, open) {\n var newOpenKeys = mergedOpenKeys.filter(function (k) {\n return k !== key;\n });\n if (open) {\n newOpenKeys.push(key);\n } else if (internalMode !== 'inline') {\n // We need find all related popup to close\n var subPathKeys = getSubPathKeys(key);\n newOpenKeys = newOpenKeys.filter(function (k) {\n return !subPathKeys.has(k);\n });\n }\n if (!isEqual(mergedOpenKeys, newOpenKeys, true)) {\n triggerOpenKeys(newOpenKeys, true);\n }\n });\n var getInternalPopupContainer = useMemoCallback(getPopupContainer);\n\n // ==================== Accessibility =====================\n var triggerAccessibilityOpen = function triggerAccessibilityOpen(key, open) {\n var nextOpen = open !== null && open !== void 0 ? open : !mergedOpenKeys.includes(key);\n onInternalOpenChange(key, nextOpen);\n };\n var onInternalKeyDown = useAccessibility(internalMode, mergedActiveKey, isRtl, uuid, containerRef, getKeys, getKeyPath, setMergedActiveKey, triggerAccessibilityOpen, onKeyDown);\n\n // ======================== Effect ========================\n React.useEffect(function () {\n setMounted(true);\n }, []);\n\n // ======================= Context ========================\n var privateContext = React.useMemo(function () {\n return {\n _internalRenderMenuItem: _internalRenderMenuItem,\n _internalRenderSubMenuItem: _internalRenderSubMenuItem\n };\n }, [_internalRenderMenuItem, _internalRenderSubMenuItem]);\n\n // ======================== Render ========================\n\n // >>>>> Children\n var wrappedChildList = internalMode !== 'horizontal' || disabledOverflow ? childList :\n // Need wrap for overflow dropdown that do not response for open\n childList.map(function (child, index) {\n return (\n /*#__PURE__*/\n // Always wrap provider to avoid sub node re-mount\n React.createElement(MenuContextProvider, {\n key: child.key,\n overflowDisabled: index > lastVisibleIndex\n }, child)\n );\n });\n\n // >>>>> Container\n var container = /*#__PURE__*/React.createElement(Overflow, _extends({\n id: id,\n ref: containerRef,\n prefixCls: \"\".concat(prefixCls, \"-overflow\"),\n component: \"ul\",\n itemComponent: MenuItem,\n className: classNames(prefixCls, \"\".concat(prefixCls, \"-root\"), \"\".concat(prefixCls, \"-\").concat(internalMode), className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-inline-collapsed\"), internalInlineCollapsed), _defineProperty(_classNames, \"\".concat(prefixCls, \"-rtl\"), isRtl), _classNames), rootClassName),\n dir: direction,\n style: style,\n role: \"menu\",\n tabIndex: tabIndex,\n data: wrappedChildList,\n renderRawItem: function renderRawItem(node) {\n return node;\n },\n renderRawRest: function renderRawRest(omitItems) {\n // We use origin list since wrapped list use context to prevent open\n var len = omitItems.length;\n var originOmitItems = len ? childList.slice(-len) : null;\n return /*#__PURE__*/React.createElement(SubMenu, {\n eventKey: OVERFLOW_KEY,\n title: overflowedIndicator,\n disabled: allVisible,\n internalPopupClose: len === 0,\n popupClassName: overflowedIndicatorPopupClassName\n }, originOmitItems);\n },\n maxCount: internalMode !== 'horizontal' || disabledOverflow ? Overflow.INVALIDATE : Overflow.RESPONSIVE,\n ssr: \"full\",\n \"data-menu-list\": true,\n onVisibleChange: function onVisibleChange(newLastIndex) {\n setLastVisibleIndex(newLastIndex);\n },\n onKeyDown: onInternalKeyDown\n }, restProps));\n\n // >>>>> Render\n return /*#__PURE__*/React.createElement(PrivateContext.Provider, {\n value: privateContext\n }, /*#__PURE__*/React.createElement(IdContext.Provider, {\n value: uuid\n }, /*#__PURE__*/React.createElement(MenuContextProvider, {\n prefixCls: prefixCls,\n rootClassName: rootClassName,\n mode: internalMode,\n openKeys: mergedOpenKeys,\n rtl: isRtl\n // Disabled\n ,\n disabled: disabled\n // Motion\n ,\n motion: mounted ? motion : null,\n defaultMotions: mounted ? defaultMotions : null\n // Active\n ,\n activeKey: mergedActiveKey,\n onActive: onActive,\n onInactive: onInactive\n // Selection\n ,\n selectedKeys: mergedSelectKeys\n // Level\n ,\n inlineIndent: inlineIndent\n // Popup\n ,\n subMenuOpenDelay: subMenuOpenDelay,\n subMenuCloseDelay: subMenuCloseDelay,\n forceSubMenuRender: forceSubMenuRender,\n builtinPlacements: builtinPlacements,\n triggerSubMenuAction: triggerSubMenuAction,\n getPopupContainer: getInternalPopupContainer\n // Icon\n ,\n itemIcon: itemIcon,\n expandIcon: expandIcon\n // Events\n ,\n onItemClick: onInternalClick,\n onOpenChange: onInternalOpenChange\n }, /*#__PURE__*/React.createElement(PathUserContext.Provider, {\n value: pathUserContext\n }, container), /*#__PURE__*/React.createElement(\"div\", {\n style: {\n display: 'none'\n },\n \"aria-hidden\": true\n }, /*#__PURE__*/React.createElement(PathRegisterContext.Provider, {\n value: registerPathContext\n }, childList)))));\n});\nexport default Menu;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"className\", \"title\", \"eventKey\", \"children\"],\n _excluded2 = [\"children\"];\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { MenuContext } from \"./context/MenuContext\";\nimport { useFullPath, useMeasure } from \"./context/PathContext\";\nimport { parseChildren } from \"./utils/nodeUtil\";\nvar InternalMenuItemGroup = function InternalMenuItemGroup(_ref) {\n var className = _ref.className,\n title = _ref.title,\n eventKey = _ref.eventKey,\n children = _ref.children,\n restProps = _objectWithoutProperties(_ref, _excluded);\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls;\n var groupPrefixCls = \"\".concat(prefixCls, \"-item-group\");\n return /*#__PURE__*/React.createElement(\"li\", _extends({\n role: \"presentation\"\n }, restProps, {\n onClick: function onClick(e) {\n return e.stopPropagation();\n },\n className: classNames(groupPrefixCls, className)\n }), /*#__PURE__*/React.createElement(\"div\", {\n role: \"presentation\",\n className: \"\".concat(groupPrefixCls, \"-title\"),\n title: typeof title === 'string' ? title : undefined\n }, title), /*#__PURE__*/React.createElement(\"ul\", {\n role: \"group\",\n className: \"\".concat(groupPrefixCls, \"-list\")\n }, children));\n};\nexport default function MenuItemGroup(_ref2) {\n var children = _ref2.children,\n props = _objectWithoutProperties(_ref2, _excluded2);\n var connectedKeyPath = useFullPath(props.eventKey);\n var childList = parseChildren(children, connectedKeyPath);\n var measure = useMeasure();\n if (measure) {\n return childList;\n }\n return /*#__PURE__*/React.createElement(InternalMenuItemGroup, omit(props, ['warnKey']), childList);\n}","import * as React from 'react';\nimport classNames from 'classnames';\nimport { MenuContext } from \"./context/MenuContext\";\nimport { useMeasure } from \"./context/PathContext\";\nexport default function Divider(_ref) {\n var className = _ref.className,\n style = _ref.style;\n var _React$useContext = React.useContext(MenuContext),\n prefixCls = _React$useContext.prefixCls;\n var measure = useMeasure();\n if (measure) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"li\", {\n className: classNames(\"\".concat(prefixCls, \"-item-divider\"), className),\n style: style\n });\n}","import Menu from \"./Menu\";\nimport MenuItem from \"./MenuItem\";\nimport SubMenu from \"./SubMenu\";\nimport MenuItemGroup from \"./MenuItemGroup\";\nimport { useFullPath } from \"./context/PathContext\";\nimport Divider from \"./Divider\";\nexport { SubMenu, MenuItem as Item, MenuItem, MenuItemGroup, MenuItemGroup as ItemGroup, Divider, /** @private Only used for antd internal. Do not use in your production. */\nuseFullPath };\nvar ExportMenu = Menu;\nExportMenu.Item = MenuItem;\nExportMenu.SubMenu = SubMenu;\nExportMenu.ItemGroup = MenuItemGroup;\nExportMenu.Divider = Divider;\nexport default ExportMenu;","// This icon file is generated automatically.\nvar EllipsisOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M176 511a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0zm280 0a56 56 0 10112 0 56 56 0 10-112 0z\" } }] }, \"name\": \"ellipsis\", \"theme\": \"outlined\" };\nexport default EllipsisOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport EllipsisOutlinedSvg from \"@ant-design/icons-svg/es/asn/EllipsisOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar EllipsisOutlined = function EllipsisOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: EllipsisOutlinedSvg\n }));\n};\nEllipsisOutlined.displayName = 'EllipsisOutlined';\nexport default /*#__PURE__*/React.forwardRef(EllipsisOutlined);","const getHorizontalStyle = token => {\n const {\n componentCls,\n motionDurationSlow,\n menuHorizontalHeight,\n colorSplit,\n lineWidth,\n lineType,\n menuItemPaddingInline\n } = token;\n return {\n [`${componentCls}-horizontal`]: {\n lineHeight: `${menuHorizontalHeight}px`,\n border: 0,\n borderBottom: `${lineWidth}px ${lineType} ${colorSplit}`,\n boxShadow: 'none',\n '&::after': {\n display: 'block',\n clear: 'both',\n height: 0,\n content: '\"\\\\20\"'\n },\n // ======================= Item =======================\n [`${componentCls}-item, ${componentCls}-submenu`]: {\n position: 'relative',\n display: 'inline-block',\n verticalAlign: 'bottom',\n paddingInline: menuItemPaddingInline\n },\n [`> ${componentCls}-item:hover,\n > ${componentCls}-item-active,\n > ${componentCls}-submenu ${componentCls}-submenu-title:hover`]: {\n backgroundColor: 'transparent'\n },\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n transition: [`border-color ${motionDurationSlow}`, `background ${motionDurationSlow}`].join(',')\n },\n // ===================== Sub Menu =====================\n [`${componentCls}-submenu-arrow`]: {\n display: 'none'\n }\n }\n };\n};\nexport default getHorizontalStyle;","const getRTLStyle = _ref => {\n let {\n componentCls,\n menuArrowOffset\n } = _ref;\n return {\n [`${componentCls}-rtl`]: {\n direction: 'rtl'\n },\n [`${componentCls}-submenu-rtl`]: {\n transformOrigin: '100% 0'\n },\n // Vertical Arrow\n [`${componentCls}-rtl${componentCls}-vertical,\n ${componentCls}-submenu-rtl ${componentCls}-vertical`]: {\n [`${componentCls}-submenu-arrow`]: {\n '&::before': {\n transform: `rotate(-45deg) translateY(-${menuArrowOffset})`\n },\n '&::after': {\n transform: `rotate(45deg) translateY(${menuArrowOffset})`\n }\n }\n }\n };\n};\nexport default getRTLStyle;","import { genFocusOutline } from '../../style';\nconst accessibilityFocus = token => Object.assign({}, genFocusOutline(token));\nconst getThemeStyle = (token, themeSuffix) => {\n const {\n componentCls,\n colorItemText,\n colorItemTextSelected,\n colorGroupTitle,\n colorItemBg,\n colorSubItemBg,\n colorItemBgSelected,\n colorActiveBarHeight,\n colorActiveBarWidth,\n colorActiveBarBorderSize,\n motionDurationSlow,\n motionEaseInOut,\n motionEaseOut,\n menuItemPaddingInline,\n motionDurationMid,\n colorItemTextHover,\n lineType,\n colorSplit,\n // Disabled\n colorItemTextDisabled,\n // Danger\n colorDangerItemText,\n colorDangerItemTextHover,\n colorDangerItemTextSelected,\n colorDangerItemBgActive,\n colorDangerItemBgSelected,\n colorItemBgHover,\n menuSubMenuBg,\n // Horizontal\n colorItemTextSelectedHorizontal,\n colorItemBgSelectedHorizontal\n } = token;\n return {\n [`${componentCls}-${themeSuffix}`]: {\n color: colorItemText,\n background: colorItemBg,\n [`&${componentCls}-root:focus-visible`]: Object.assign({}, accessibilityFocus(token)),\n // ======================== Item ========================\n [`${componentCls}-item-group-title`]: {\n color: colorGroupTitle\n },\n [`${componentCls}-submenu-selected`]: {\n [`> ${componentCls}-submenu-title`]: {\n color: colorItemTextSelected\n }\n },\n // Disabled\n [`${componentCls}-item-disabled, ${componentCls}-submenu-disabled`]: {\n color: `${colorItemTextDisabled} !important`\n },\n // Hover\n [`${componentCls}-item:hover, ${componentCls}-submenu-title:hover`]: {\n [`&:not(${componentCls}-item-selected):not(${componentCls}-submenu-selected)`]: {\n color: colorItemTextHover\n }\n },\n [`&:not(${componentCls}-horizontal)`]: {\n [`${componentCls}-item:not(${componentCls}-item-selected)`]: {\n '&:hover': {\n backgroundColor: colorItemBgHover\n },\n '&:active': {\n backgroundColor: colorItemBgSelected\n }\n },\n [`${componentCls}-submenu-title`]: {\n '&:hover': {\n backgroundColor: colorItemBgHover\n },\n '&:active': {\n backgroundColor: colorItemBgSelected\n }\n }\n },\n // Danger - only Item has\n [`${componentCls}-item-danger`]: {\n color: colorDangerItemText,\n [`&${componentCls}-item:hover`]: {\n [`&:not(${componentCls}-item-selected):not(${componentCls}-submenu-selected)`]: {\n color: colorDangerItemTextHover\n }\n },\n [`&${componentCls}-item:active`]: {\n background: colorDangerItemBgActive\n }\n },\n [`${componentCls}-item a`]: {\n '&, &:hover': {\n color: 'inherit'\n }\n },\n [`${componentCls}-item-selected`]: {\n color: colorItemTextSelected,\n // Danger\n [`&${componentCls}-item-danger`]: {\n color: colorDangerItemTextSelected\n },\n [`a, a:hover`]: {\n color: 'inherit'\n }\n },\n [`& ${componentCls}-item-selected`]: {\n backgroundColor: colorItemBgSelected,\n // Danger\n [`&${componentCls}-item-danger`]: {\n backgroundColor: colorDangerItemBgSelected\n }\n },\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n [`&:not(${componentCls}-item-disabled):focus-visible`]: Object.assign({}, accessibilityFocus(token))\n },\n [`&${componentCls}-submenu > ${componentCls}`]: {\n backgroundColor: menuSubMenuBg\n },\n [`&${componentCls}-popup > ${componentCls}`]: {\n backgroundColor: colorItemBg\n },\n // ====================== Horizontal ======================\n [`&${componentCls}-horizontal`]: Object.assign(Object.assign({}, themeSuffix === 'dark' ? {\n borderBottom: 0\n } : {}), {\n [`> ${componentCls}-item, > ${componentCls}-submenu`]: {\n top: colorActiveBarBorderSize,\n marginTop: -colorActiveBarBorderSize,\n marginBottom: 0,\n borderRadius: 0,\n '&::after': {\n position: 'absolute',\n insetInline: menuItemPaddingInline,\n bottom: 0,\n borderBottom: `${colorActiveBarHeight}px solid transparent`,\n transition: `border-color ${motionDurationSlow} ${motionEaseInOut}`,\n content: '\"\"'\n },\n [`&:hover, &-active, &-open`]: {\n '&::after': {\n borderBottomWidth: colorActiveBarHeight,\n borderBottomColor: colorItemTextSelectedHorizontal\n }\n },\n [`&-selected`]: {\n color: colorItemTextSelectedHorizontal,\n backgroundColor: colorItemBgSelectedHorizontal,\n '&::after': {\n borderBottomWidth: colorActiveBarHeight,\n borderBottomColor: colorItemTextSelectedHorizontal\n }\n }\n }\n }),\n // ================== Inline & Vertical ===================\n //\n [`&${componentCls}-root`]: {\n [`&${componentCls}-inline, &${componentCls}-vertical`]: {\n borderInlineEnd: `${colorActiveBarBorderSize}px ${lineType} ${colorSplit}`\n }\n },\n // ======================== Inline ========================\n [`&${componentCls}-inline`]: {\n // Sub\n [`${componentCls}-sub${componentCls}-inline`]: {\n background: colorSubItemBg\n },\n // Item\n [`${componentCls}-item, ${componentCls}-submenu-title`]: colorActiveBarBorderSize && colorActiveBarWidth ? {\n width: `calc(100% + ${colorActiveBarBorderSize}px)`\n } : {},\n [`${componentCls}-item`]: {\n position: 'relative',\n '&::after': {\n position: 'absolute',\n insetBlock: 0,\n insetInlineEnd: 0,\n borderInlineEnd: `${colorActiveBarWidth}px solid ${colorItemTextSelected}`,\n transform: 'scaleY(0.0001)',\n opacity: 0,\n transition: [`transform ${motionDurationMid} ${motionEaseOut}`, `opacity ${motionDurationMid} ${motionEaseOut}`].join(','),\n content: '\"\"'\n },\n // Danger\n [`&${componentCls}-item-danger`]: {\n '&::after': {\n borderInlineEndColor: colorDangerItemTextSelected\n }\n }\n },\n [`${componentCls}-selected, ${componentCls}-item-selected`]: {\n '&::after': {\n transform: 'scaleY(1)',\n opacity: 1,\n transition: [`transform ${motionDurationMid} ${motionEaseInOut}`, `opacity ${motionDurationMid} ${motionEaseInOut}`].join(',')\n }\n }\n }\n }\n };\n};\nexport default getThemeStyle;","import { textEllipsis } from '../../style';\nconst getVerticalInlineStyle = token => {\n const {\n componentCls,\n menuItemHeight,\n itemMarginInline,\n padding,\n menuArrowSize,\n marginXS,\n marginXXS\n } = token;\n const paddingWithArrow = padding + menuArrowSize + marginXS;\n return {\n [`${componentCls}-item`]: {\n position: 'relative'\n },\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n height: menuItemHeight,\n lineHeight: `${menuItemHeight}px`,\n paddingInline: padding,\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n marginInline: itemMarginInline,\n marginBlock: marginXXS,\n width: `calc(100% - ${itemMarginInline * 2}px)`\n },\n // disable margin collapsed\n [`${componentCls}-submenu`]: {\n paddingBottom: 0.02\n },\n [`> ${componentCls}-item,\n > ${componentCls}-submenu > ${componentCls}-submenu-title`]: {\n height: menuItemHeight,\n lineHeight: `${menuItemHeight}px`\n },\n [`${componentCls}-item-group-list ${componentCls}-submenu-title,\n ${componentCls}-submenu-title`]: {\n paddingInlineEnd: paddingWithArrow\n }\n };\n};\nconst getVerticalStyle = token => {\n const {\n componentCls,\n iconCls,\n menuItemHeight,\n colorTextLightSolid,\n dropdownWidth,\n controlHeightLG,\n motionDurationMid,\n motionEaseOut,\n paddingXL,\n fontSizeSM,\n fontSizeLG,\n motionDurationSlow,\n paddingXS,\n boxShadowSecondary\n } = token;\n const inlineItemStyle = {\n height: menuItemHeight,\n lineHeight: `${menuItemHeight}px`,\n listStylePosition: 'inside',\n listStyleType: 'disc'\n };\n return [{\n [componentCls]: {\n [`&-inline, &-vertical`]: Object.assign({\n [`&${componentCls}-root`]: {\n boxShadow: 'none'\n }\n }, getVerticalInlineStyle(token))\n },\n [`${componentCls}-submenu-popup`]: {\n [`${componentCls}-vertical`]: Object.assign(Object.assign({}, getVerticalInlineStyle(token)), {\n boxShadow: boxShadowSecondary\n })\n }\n },\n // Vertical only\n {\n [`${componentCls}-submenu-popup ${componentCls}-vertical${componentCls}-sub`]: {\n minWidth: dropdownWidth,\n maxHeight: `calc(100vh - ${controlHeightLG * 2.5}px)`,\n padding: '0',\n overflow: 'hidden',\n borderInlineEnd: 0,\n // https://github.com/ant-design/ant-design/issues/22244\n // https://github.com/ant-design/ant-design/issues/26812\n \"&:not([class*='-active'])\": {\n overflowX: 'hidden',\n overflowY: 'auto'\n }\n }\n },\n // Inline Only\n {\n [`${componentCls}-inline`]: {\n width: '100%',\n // Motion enhance for first level\n [`&${componentCls}-root`]: {\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n display: 'flex',\n alignItems: 'center',\n transition: [`border-color ${motionDurationSlow}`, `background ${motionDurationSlow}`, `padding ${motionDurationMid} ${motionEaseOut}`].join(','),\n [`> ${componentCls}-title-content`]: {\n flex: 'auto',\n minWidth: 0,\n overflow: 'hidden',\n textOverflow: 'ellipsis'\n },\n '> *': {\n flex: 'none'\n }\n }\n },\n // >>>>> Sub\n [`${componentCls}-sub${componentCls}-inline`]: {\n padding: 0,\n border: 0,\n borderRadius: 0,\n boxShadow: 'none',\n [`& > ${componentCls}-submenu > ${componentCls}-submenu-title`]: inlineItemStyle,\n [`& ${componentCls}-item-group-title`]: {\n paddingInlineStart: paddingXL\n }\n },\n // >>>>> Item\n [`${componentCls}-item`]: inlineItemStyle\n }\n },\n // Inline Collapse Only\n {\n [`${componentCls}-inline-collapsed`]: {\n width: menuItemHeight * 2,\n [`&${componentCls}-root`]: {\n [`${componentCls}-item, ${componentCls}-submenu ${componentCls}-submenu-title`]: {\n [`> ${componentCls}-inline-collapsed-noicon`]: {\n fontSize: fontSizeLG,\n textAlign: 'center'\n }\n }\n },\n [`> ${componentCls}-item,\n > ${componentCls}-item-group > ${componentCls}-item-group-list > ${componentCls}-item,\n > ${componentCls}-item-group > ${componentCls}-item-group-list > ${componentCls}-submenu > ${componentCls}-submenu-title,\n > ${componentCls}-submenu > ${componentCls}-submenu-title`]: {\n insetInlineStart: 0,\n paddingInline: `calc(50% - ${fontSizeSM}px)`,\n textOverflow: 'clip',\n [`\n ${componentCls}-submenu-arrow,\n ${componentCls}-submenu-expand-icon\n `]: {\n opacity: 0\n },\n [`${componentCls}-item-icon, ${iconCls}`]: {\n margin: 0,\n fontSize: fontSizeLG,\n lineHeight: `${menuItemHeight}px`,\n '+ span': {\n display: 'inline-block',\n opacity: 0\n }\n }\n },\n [`${componentCls}-item-icon, ${iconCls}`]: {\n display: 'inline-block'\n },\n '&-tooltip': {\n pointerEvents: 'none',\n [`${componentCls}-item-icon, ${iconCls}`]: {\n display: 'none'\n },\n 'a, a:hover': {\n color: colorTextLightSolid\n }\n },\n [`${componentCls}-item-group-title`]: Object.assign(Object.assign({}, textEllipsis), {\n paddingInline: paddingXS\n })\n }\n }];\n};\nexport default getVerticalStyle;","import { TinyColor } from '@ctrl/tinycolor';\nimport { genCollapseMotion, initSlideMotion, initZoomMotion } from '../../style/motion';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport getHorizontalStyle from './horizontal';\nimport getRTLStyle from './rtl';\nimport getThemeStyle from './theme';\nimport getVerticalStyle from './vertical';\nimport { clearFix, resetComponent, resetIcon } from '../../style';\nconst genMenuItemStyle = token => {\n const {\n componentCls,\n fontSize,\n motionDurationSlow,\n motionDurationMid,\n motionEaseInOut,\n motionEaseOut,\n iconCls,\n controlHeightSM\n } = token;\n return {\n // >>>>> Item\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n position: 'relative',\n display: 'block',\n margin: 0,\n whiteSpace: 'nowrap',\n cursor: 'pointer',\n transition: [`border-color ${motionDurationSlow}`, `background ${motionDurationSlow}`, `padding ${motionDurationSlow} ${motionEaseInOut}`].join(','),\n [`${componentCls}-item-icon, ${iconCls}`]: {\n minWidth: fontSize,\n fontSize,\n transition: [`font-size ${motionDurationMid} ${motionEaseOut}`, `margin ${motionDurationSlow} ${motionEaseInOut}`, `color ${motionDurationSlow}`].join(','),\n '+ span': {\n marginInlineStart: controlHeightSM - fontSize,\n opacity: 1,\n transition: [`opacity ${motionDurationSlow} ${motionEaseInOut}`, `margin ${motionDurationSlow}`, `color ${motionDurationSlow}`].join(',')\n }\n },\n [`${componentCls}-item-icon`]: Object.assign({}, resetIcon()),\n [`&${componentCls}-item-only-child`]: {\n [`> ${iconCls}, > ${componentCls}-item-icon`]: {\n marginInlineEnd: 0\n }\n }\n },\n // Disabled state sets text to gray and nukes hover/tab effects\n [`${componentCls}-item-disabled, ${componentCls}-submenu-disabled`]: {\n background: 'none !important',\n cursor: 'not-allowed',\n '&::after': {\n borderColor: 'transparent !important'\n },\n a: {\n color: 'inherit !important'\n },\n [`> ${componentCls}-submenu-title`]: {\n color: 'inherit !important',\n cursor: 'not-allowed'\n }\n }\n };\n};\nconst genSubMenuArrowStyle = token => {\n const {\n componentCls,\n motionDurationSlow,\n motionEaseInOut,\n borderRadius,\n menuArrowSize,\n menuArrowOffset\n } = token;\n return {\n [`${componentCls}-submenu`]: {\n [`&-expand-icon, &-arrow`]: {\n position: 'absolute',\n top: '50%',\n insetInlineEnd: token.margin,\n width: menuArrowSize,\n color: 'currentcolor',\n transform: 'translateY(-50%)',\n transition: `transform ${motionDurationSlow} ${motionEaseInOut}, opacity ${motionDurationSlow}`\n },\n '&-arrow': {\n // →\n '&::before, &::after': {\n position: 'absolute',\n width: menuArrowSize * 0.6,\n height: menuArrowSize * 0.15,\n backgroundColor: 'currentcolor',\n borderRadius,\n transition: [`background ${motionDurationSlow} ${motionEaseInOut}`, `transform ${motionDurationSlow} ${motionEaseInOut}`, `top ${motionDurationSlow} ${motionEaseInOut}`, `color ${motionDurationSlow} ${motionEaseInOut}`].join(','),\n content: '\"\"'\n },\n '&::before': {\n transform: `rotate(45deg) translateY(-${menuArrowOffset})`\n },\n '&::after': {\n transform: `rotate(-45deg) translateY(${menuArrowOffset})`\n }\n }\n }\n };\n};\n// =============================== Base ===============================\nconst getBaseStyle = token => {\n const {\n antCls,\n componentCls,\n fontSize,\n motionDurationSlow,\n motionDurationMid,\n motionEaseInOut,\n lineHeight,\n paddingXS,\n padding,\n colorSplit,\n lineWidth,\n zIndexPopup,\n borderRadiusLG,\n radiusSubMenuItem,\n menuArrowSize,\n menuArrowOffset,\n lineType,\n menuPanelMaskInset\n } = token;\n return [\n // Misc\n {\n '': {\n [`${componentCls}`]: Object.assign(Object.assign({}, clearFix()), {\n // Hidden\n [`&-hidden`]: {\n display: 'none'\n }\n })\n },\n [`${componentCls}-submenu-hidden`]: {\n display: 'none'\n }\n }, {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), clearFix()), {\n marginBottom: 0,\n paddingInlineStart: 0,\n // Override default ul/ol\n fontSize,\n lineHeight: 0,\n listStyle: 'none',\n outline: 'none',\n transition: [`background ${motionDurationSlow}`,\n // Magic cubic here but smooth transition\n `width ${motionDurationSlow} cubic-bezier(0.2, 0, 0, 1) 0s`].join(','),\n [`ul, ol`]: {\n margin: 0,\n padding: 0,\n listStyle: 'none'\n },\n // Overflow ellipsis\n [`&-overflow`]: {\n display: 'flex',\n [`${componentCls}-item`]: {\n flex: 'none'\n }\n },\n [`${componentCls}-item, ${componentCls}-submenu, ${componentCls}-submenu-title`]: {\n borderRadius: token.radiusItem\n },\n [`${componentCls}-item-group-title`]: {\n padding: `${paddingXS}px ${padding}px`,\n fontSize,\n lineHeight,\n transition: `all ${motionDurationSlow}`\n },\n [`&-horizontal ${componentCls}-submenu`]: {\n transition: [`border-color ${motionDurationSlow} ${motionEaseInOut}`, `background ${motionDurationSlow} ${motionEaseInOut}`].join(',')\n },\n [`${componentCls}-submenu, ${componentCls}-submenu-inline`]: {\n transition: [`border-color ${motionDurationSlow} ${motionEaseInOut}`, `background ${motionDurationSlow} ${motionEaseInOut}`, `padding ${motionDurationMid} ${motionEaseInOut}`].join(',')\n },\n [`${componentCls}-submenu ${componentCls}-sub`]: {\n cursor: 'initial',\n transition: [`background ${motionDurationSlow} ${motionEaseInOut}`, `padding ${motionDurationSlow} ${motionEaseInOut}`].join(',')\n },\n [`${componentCls}-title-content`]: {\n transition: `color ${motionDurationSlow}`\n },\n [`${componentCls}-item a`]: {\n '&::before': {\n position: 'absolute',\n inset: 0,\n backgroundColor: 'transparent',\n content: '\"\"'\n }\n },\n // Removed a Badge related style seems it's safe\n // https://github.com/ant-design/ant-design/issues/19809\n // >>>>> Divider\n [`${componentCls}-item-divider`]: {\n overflow: 'hidden',\n lineHeight: 0,\n borderColor: colorSplit,\n borderStyle: lineType,\n borderWidth: 0,\n borderTopWidth: lineWidth,\n marginBlock: lineWidth,\n padding: 0,\n '&-dashed': {\n borderStyle: 'dashed'\n }\n }\n }), genMenuItemStyle(token)), {\n [`${componentCls}-item-group`]: {\n [`${componentCls}-item-group-list`]: {\n margin: 0,\n padding: 0,\n [`${componentCls}-item, ${componentCls}-submenu-title`]: {\n paddingInline: `${fontSize * 2}px ${padding}px`\n }\n }\n },\n // ======================= Sub Menu =======================\n '&-submenu': {\n '&-popup': {\n position: 'absolute',\n zIndex: zIndexPopup,\n background: 'transparent',\n borderRadius: borderRadiusLG,\n boxShadow: 'none',\n transformOrigin: '0 0',\n // https://github.com/ant-design/ant-design/issues/13955\n '&::before': {\n position: 'absolute',\n inset: `${menuPanelMaskInset}px 0 0`,\n zIndex: -1,\n width: '100%',\n height: '100%',\n opacity: 0,\n content: '\"\"'\n }\n },\n // https://github.com/ant-design/ant-design/issues/13955\n '&-placement-rightTop::before': {\n top: 0,\n insetInlineStart: menuPanelMaskInset\n },\n [`> ${componentCls}`]: Object.assign(Object.assign(Object.assign({\n borderRadius: borderRadiusLG\n }, genMenuItemStyle(token)), genSubMenuArrowStyle(token)), {\n [`${componentCls}-item, ${componentCls}-submenu > ${componentCls}-submenu-title`]: {\n borderRadius: radiusSubMenuItem\n },\n [`${componentCls}-submenu-title::after`]: {\n transition: `transform ${motionDurationSlow} ${motionEaseInOut}`\n }\n })\n }\n }), genSubMenuArrowStyle(token)), {\n [`&-inline-collapsed ${componentCls}-submenu-arrow,\n &-inline ${componentCls}-submenu-arrow`]: {\n // ↓\n '&::before': {\n transform: `rotate(-45deg) translateX(${menuArrowOffset})`\n },\n '&::after': {\n transform: `rotate(45deg) translateX(-${menuArrowOffset})`\n }\n },\n [`${componentCls}-submenu-open${componentCls}-submenu-inline > ${componentCls}-submenu-title > ${componentCls}-submenu-arrow`]: {\n // ↑\n transform: `translateY(-${menuArrowSize * 0.2}px)`,\n '&::after': {\n transform: `rotate(-45deg) translateX(-${menuArrowOffset})`\n },\n '&::before': {\n transform: `rotate(45deg) translateX(${menuArrowOffset})`\n }\n }\n })\n },\n // Integration with header element so menu items have the same height\n {\n [`${antCls}-layout-header`]: {\n [componentCls]: {\n lineHeight: 'inherit'\n }\n }\n }];\n};\n// ============================== Export ==============================\nexport default ((prefixCls, injectStyle) => {\n const useOriginHook = genComponentStyleHook('Menu', (token, _ref) => {\n let {\n overrideComponentToken\n } = _ref;\n // Dropdown will handle menu style self. We do not need to handle this.\n if (injectStyle === false) {\n return [];\n }\n const {\n colorBgElevated,\n colorPrimary,\n colorError,\n colorErrorHover,\n colorTextLightSolid\n } = token;\n const {\n controlHeightLG,\n fontSize\n } = token;\n const menuArrowSize = fontSize / 7 * 5;\n // Menu Token\n const menuToken = mergeToken(token, {\n menuItemHeight: controlHeightLG,\n menuItemPaddingInline: token.margin,\n menuArrowSize,\n menuHorizontalHeight: controlHeightLG * 1.15,\n menuArrowOffset: `${menuArrowSize * 0.25}px`,\n menuPanelMaskInset: -7,\n menuSubMenuBg: colorBgElevated\n });\n const colorTextDark = new TinyColor(colorTextLightSolid).setAlpha(0.65).toRgbString();\n const menuDarkToken = mergeToken(menuToken, {\n colorItemText: colorTextDark,\n colorItemTextHover: colorTextLightSolid,\n colorGroupTitle: colorTextDark,\n colorItemTextSelected: colorTextLightSolid,\n colorItemBg: '#001529',\n colorSubItemBg: '#000c17',\n colorItemBgActive: 'transparent',\n colorItemBgSelected: colorPrimary,\n colorActiveBarWidth: 0,\n colorActiveBarHeight: 0,\n colorActiveBarBorderSize: 0,\n // Disabled\n colorItemTextDisabled: new TinyColor(colorTextLightSolid).setAlpha(0.25).toRgbString(),\n // Danger\n colorDangerItemText: colorError,\n colorDangerItemTextHover: colorErrorHover,\n colorDangerItemTextSelected: colorTextLightSolid,\n colorDangerItemBgActive: colorError,\n colorDangerItemBgSelected: colorError,\n menuSubMenuBg: '#001529',\n // Horizontal\n colorItemTextSelectedHorizontal: colorTextLightSolid,\n colorItemBgSelectedHorizontal: colorPrimary\n }, Object.assign({}, overrideComponentToken));\n return [\n // Basic\n getBaseStyle(menuToken),\n // Horizontal\n getHorizontalStyle(menuToken),\n // Vertical\n getVerticalStyle(menuToken),\n // Theme\n getThemeStyle(menuToken, 'light'), getThemeStyle(menuDarkToken, 'dark'),\n // RTL\n getRTLStyle(menuToken),\n // Motion\n genCollapseMotion(menuToken), initSlideMotion(menuToken, 'slide-up'), initSlideMotion(menuToken, 'slide-down'), initZoomMotion(menuToken, 'zoom-big')];\n }, token => {\n const {\n colorPrimary,\n colorError,\n colorTextDisabled,\n colorErrorBg,\n colorText,\n colorTextDescription,\n colorBgContainer,\n colorFillAlter,\n colorFillContent,\n lineWidth,\n lineWidthBold,\n controlItemBgActive,\n colorBgTextHover\n } = token;\n return {\n dropdownWidth: 160,\n zIndexPopup: token.zIndexPopupBase + 50,\n radiusItem: token.borderRadiusLG,\n radiusSubMenuItem: token.borderRadiusSM,\n colorItemText: colorText,\n colorItemTextHover: colorText,\n colorItemTextHoverHorizontal: colorPrimary,\n colorGroupTitle: colorTextDescription,\n colorItemTextSelected: colorPrimary,\n colorItemTextSelectedHorizontal: colorPrimary,\n colorItemBg: colorBgContainer,\n colorItemBgHover: colorBgTextHover,\n colorItemBgActive: colorFillContent,\n colorSubItemBg: colorFillAlter,\n colorItemBgSelected: controlItemBgActive,\n colorItemBgSelectedHorizontal: 'transparent',\n colorActiveBarWidth: 0,\n colorActiveBarHeight: lineWidthBold,\n colorActiveBarBorderSize: lineWidth,\n // Disabled\n colorItemTextDisabled: colorTextDisabled,\n // Danger\n colorDangerItemText: colorError,\n colorDangerItemTextHover: colorError,\n colorDangerItemTextSelected: colorError,\n colorDangerItemBgActive: colorErrorBg,\n colorDangerItemBgSelected: colorErrorBg,\n itemMarginInline: token.marginXXS\n };\n });\n return useOriginHook(prefixCls);\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\n/** @internal Only used for Dropdown component. Do not use this in your production. */\nconst OverrideContext = /*#__PURE__*/React.createContext(null);\n/** @internal Only used for Dropdown component. Do not use this in your production. */\nexport const OverrideProvider = props => {\n const {\n children\n } = props,\n restProps = __rest(props, [\"children\"]);\n const override = React.useContext(OverrideContext);\n const context = React.useMemo(() => Object.assign(Object.assign({}, override), restProps), [override, restProps.prefixCls,\n // restProps.expandIcon, Not mark as deps since this is a ReactNode\n restProps.mode, restProps.selectable\n // restProps.validator, Not mark as deps since this is a function\n ]);\n\n return /*#__PURE__*/React.createElement(OverrideContext.Provider, {\n value: context\n }, children);\n};\nexport default OverrideContext;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport { Divider } from 'rc-menu';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nconst MenuDivider = props => {\n const {\n prefixCls: customizePrefixCls,\n className,\n dashed\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"dashed\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('menu', customizePrefixCls);\n const classString = classNames({\n [`${prefixCls}-item-divider-dashed`]: !!dashed\n }, className);\n return /*#__PURE__*/React.createElement(Divider, Object.assign({\n className: classString\n }, restProps));\n};\nexport default MenuDivider;","// This icon file is generated automatically.\nvar BarsOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"0 0 1024 1024\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z\" } }] }, \"name\": \"bars\", \"theme\": \"outlined\" };\nexport default BarsOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport BarsOutlinedSvg from \"@ant-design/icons-svg/es/asn/BarsOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar BarsOutlined = function BarsOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: BarsOutlinedSvg\n }));\n};\nBarsOutlined.displayName = 'BarsOutlined';\nexport default /*#__PURE__*/React.forwardRef(BarsOutlined);","// This icon file is generated automatically.\nvar LeftOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z\" } }] }, \"name\": \"left\", \"theme\": \"outlined\" };\nexport default LeftOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport LeftOutlinedSvg from \"@ant-design/icons-svg/es/asn/LeftOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar LeftOutlined = function LeftOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: LeftOutlinedSvg\n }));\n};\nLeftOutlined.displayName = 'LeftOutlined';\nexport default /*#__PURE__*/React.forwardRef(LeftOutlined);","const isNumeric = value => !isNaN(parseFloat(value)) && isFinite(value);\nexport default isNumeric;","const genLayoutLightStyle = token => {\n const {\n componentCls,\n colorBgContainer,\n colorBgBody,\n colorText\n } = token;\n return {\n [`${componentCls}-sider-light`]: {\n background: colorBgContainer,\n [`${componentCls}-sider-trigger`]: {\n color: colorText,\n background: colorBgContainer\n },\n [`${componentCls}-sider-zero-width-trigger`]: {\n color: colorText,\n background: colorBgContainer,\n border: `1px solid ${colorBgBody}`,\n borderInlineStart: 0\n }\n }\n };\n};\nexport default genLayoutLightStyle;","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport genLayoutLightStyle from './light';\nconst genLayoutStyle = token => {\n const {\n antCls,\n // .ant\n componentCls,\n // .ant-layout\n colorText,\n colorTextLightSolid,\n colorBgHeader,\n colorBgBody,\n colorBgTrigger,\n layoutHeaderHeight,\n layoutHeaderPaddingInline,\n layoutHeaderColor,\n layoutFooterPadding,\n layoutTriggerHeight,\n layoutZeroTriggerSize,\n motionDurationMid,\n motionDurationSlow,\n fontSize,\n borderRadius\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({\n display: 'flex',\n flex: 'auto',\n flexDirection: 'column',\n /* fix firefox can't set height smaller than content on flex item */\n minHeight: 0,\n background: colorBgBody,\n '&, *': {\n boxSizing: 'border-box'\n },\n [`&${componentCls}-has-sider`]: {\n flexDirection: 'row',\n [`> ${componentCls}, > ${componentCls}-content`]: {\n // https://segmentfault.com/a/1190000019498300\n width: 0\n }\n },\n [`${componentCls}-header, &${componentCls}-footer`]: {\n flex: '0 0 auto'\n },\n [`${componentCls}-sider`]: {\n position: 'relative',\n // fix firefox can't set width smaller than content on flex item\n minWidth: 0,\n background: colorBgHeader,\n transition: `all ${motionDurationMid}`,\n '&-children': {\n height: '100%',\n // Hack for fixing margin collapse bug\n // https://github.com/ant-design/ant-design/issues/7967\n // solution from https://stackoverflow.com/a/33132624/3040605\n marginTop: -0.1,\n paddingTop: 0.1,\n [`${antCls}-menu${antCls}-menu-inline-collapsed`]: {\n width: 'auto'\n }\n },\n '&-has-trigger': {\n paddingBottom: layoutTriggerHeight\n },\n '&-right': {\n order: 1\n },\n '&-trigger': {\n position: 'fixed',\n bottom: 0,\n zIndex: 1,\n height: layoutTriggerHeight,\n color: colorTextLightSolid,\n lineHeight: `${layoutTriggerHeight}px`,\n textAlign: 'center',\n background: colorBgTrigger,\n cursor: 'pointer',\n transition: `all ${motionDurationMid}`\n },\n '&-zero-width': {\n '> *': {\n overflow: 'hidden'\n },\n '&-trigger': {\n position: 'absolute',\n top: layoutHeaderHeight,\n insetInlineEnd: -layoutZeroTriggerSize,\n zIndex: 1,\n width: layoutZeroTriggerSize,\n height: layoutZeroTriggerSize,\n color: colorTextLightSolid,\n fontSize: token.fontSizeXL,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n background: colorBgHeader,\n borderStartStartRadius: 0,\n borderStartEndRadius: borderRadius,\n borderEndEndRadius: borderRadius,\n borderEndStartRadius: 0,\n cursor: 'pointer',\n transition: `background ${motionDurationSlow} ease`,\n '&::after': {\n position: 'absolute',\n inset: 0,\n background: 'transparent',\n transition: `all ${motionDurationSlow}`,\n content: '\"\"'\n },\n '&:hover::after': {\n // FIXME: Hardcode, but seems no need to create a token for this\n background: `rgba(255, 255, 255, 0.2)`\n },\n '&-right': {\n insetInlineStart: -layoutZeroTriggerSize,\n borderStartStartRadius: borderRadius,\n borderStartEndRadius: 0,\n borderEndEndRadius: 0,\n borderEndStartRadius: borderRadius\n }\n }\n }\n }\n }, genLayoutLightStyle(token)), {\n // RTL\n '&-rtl': {\n direction: 'rtl'\n }\n }),\n // ==================== Header ====================\n [`${componentCls}-header`]: {\n height: layoutHeaderHeight,\n paddingInline: layoutHeaderPaddingInline,\n color: layoutHeaderColor,\n lineHeight: `${layoutHeaderHeight}px`,\n background: colorBgHeader,\n // Other components/menu/style/index.less line:686\n // Integration with header element so menu items have the same height\n [`${antCls}-menu`]: {\n lineHeight: 'inherit'\n }\n },\n // ==================== Footer ====================\n [`${componentCls}-footer`]: {\n padding: layoutFooterPadding,\n color: colorText,\n fontSize,\n background: colorBgBody\n },\n // =================== Content ====================\n [`${componentCls}-content`]: {\n flex: 'auto',\n // fix firefox can't set height smaller than content on flex item\n minHeight: 0\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Layout', token => {\n const {\n colorText,\n controlHeightSM,\n controlHeight,\n controlHeightLG,\n marginXXS\n } = token;\n const layoutHeaderPaddingInline = controlHeightLG * 1.25;\n const layoutToken = mergeToken(token, {\n // Layout\n layoutHeaderHeight: controlHeight * 2,\n layoutHeaderPaddingInline,\n layoutHeaderColor: colorText,\n layoutFooterPadding: `${controlHeightSM}px ${layoutHeaderPaddingInline}px`,\n layoutTriggerHeight: controlHeightLG + marginXXS * 2,\n layoutZeroTriggerSize: controlHeightLG\n });\n return [genLayoutStyle(layoutToken)];\n}, token => {\n const {\n colorBgLayout\n } = token;\n return {\n colorBgHeader: '#001529',\n colorBgBody: colorBgLayout,\n colorBgTrigger: '#002140'\n };\n});","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nexport const LayoutContext = /*#__PURE__*/React.createContext({\n siderHook: {\n addSider: () => null,\n removeSider: () => null\n }\n});\nfunction generator(_ref) {\n let {\n suffixCls,\n tagName,\n displayName\n } = _ref;\n return BasicComponent => {\n const Adapter = /*#__PURE__*/React.forwardRef((props, ref) => /*#__PURE__*/React.createElement(BasicComponent, Object.assign({\n ref: ref,\n suffixCls: suffixCls,\n tagName: tagName\n }, props)));\n if (process.env.NODE_ENV !== 'production') {\n Adapter.displayName = displayName;\n }\n return Adapter;\n };\n}\nconst Basic = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n prefixCls: customizePrefixCls,\n suffixCls,\n className,\n tagName: TagName\n } = props,\n others = __rest(props, [\"prefixCls\", \"suffixCls\", \"className\", \"tagName\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('layout', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const prefixWithSuffixCls = suffixCls ? `${prefixCls}-${suffixCls}` : prefixCls;\n return wrapSSR( /*#__PURE__*/React.createElement(TagName, Object.assign({\n className: classNames(customizePrefixCls || prefixWithSuffixCls, className, hashId),\n ref: ref\n }, others)));\n});\nconst BasicLayout = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n direction\n } = React.useContext(ConfigContext);\n const [siders, setSiders] = React.useState([]);\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n children,\n hasSider,\n tagName: Tag\n } = props,\n others = __rest(props, [\"prefixCls\", \"className\", \"rootClassName\", \"children\", \"hasSider\", \"tagName\"]);\n const passedProps = omit(others, ['suffixCls']);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('layout', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const classString = classNames(prefixCls, {\n [`${prefixCls}-has-sider`]: typeof hasSider === 'boolean' ? hasSider : siders.length > 0,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName, hashId);\n const contextValue = React.useMemo(() => ({\n siderHook: {\n addSider: id => {\n setSiders(prev => [].concat(_toConsumableArray(prev), [id]));\n },\n removeSider: id => {\n setSiders(prev => prev.filter(currentId => currentId !== id));\n }\n }\n }), []);\n return wrapSSR( /*#__PURE__*/React.createElement(LayoutContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(Tag, Object.assign({\n ref: ref,\n className: classString\n }, passedProps), children)));\n});\nconst Layout = generator({\n tagName: 'section',\n displayName: 'Layout'\n})(BasicLayout);\nconst Header = generator({\n suffixCls: 'header',\n tagName: 'header',\n displayName: 'Header'\n})(Basic);\nconst Footer = generator({\n suffixCls: 'footer',\n tagName: 'footer',\n displayName: 'Footer'\n})(Basic);\nconst Content = generator({\n suffixCls: 'content',\n tagName: 'main',\n displayName: 'Content'\n})(Basic);\nexport { Header, Footer, Content };\nexport default Layout;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport BarsOutlined from \"@ant-design/icons/es/icons/BarsOutlined\";\nimport LeftOutlined from \"@ant-design/icons/es/icons/LeftOutlined\";\nimport RightOutlined from \"@ant-design/icons/es/icons/RightOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { useContext, useEffect, useRef, useState } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport isNumeric from '../_util/isNumeric';\nimport { LayoutContext } from './layout';\nconst dimensionMaxMap = {\n xs: '479.98px',\n sm: '575.98px',\n md: '767.98px',\n lg: '991.98px',\n xl: '1199.98px',\n xxl: '1599.98px'\n};\nexport const SiderContext = /*#__PURE__*/React.createContext({});\nconst generateId = (() => {\n let i = 0;\n return function () {\n let prefix = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n i += 1;\n return `${prefix}${i}`;\n };\n})();\nconst Sider = /*#__PURE__*/React.forwardRef((_a, ref) => {\n var {\n prefixCls: customizePrefixCls,\n className,\n trigger,\n children,\n defaultCollapsed = false,\n theme = 'dark',\n style = {},\n collapsible = false,\n reverseArrow = false,\n width = 200,\n collapsedWidth = 80,\n zeroWidthTriggerStyle,\n breakpoint,\n onCollapse,\n onBreakpoint\n } = _a,\n props = __rest(_a, [\"prefixCls\", \"className\", \"trigger\", \"children\", \"defaultCollapsed\", \"theme\", \"style\", \"collapsible\", \"reverseArrow\", \"width\", \"collapsedWidth\", \"zeroWidthTriggerStyle\", \"breakpoint\", \"onCollapse\", \"onBreakpoint\"]);\n const {\n siderHook\n } = useContext(LayoutContext);\n const [collapsed, setCollapsed] = useState('collapsed' in props ? props.collapsed : defaultCollapsed);\n const [below, setBelow] = useState(false);\n useEffect(() => {\n if ('collapsed' in props) {\n setCollapsed(props.collapsed);\n }\n }, [props.collapsed]);\n const handleSetCollapsed = (value, type) => {\n if (!('collapsed' in props)) {\n setCollapsed(value);\n }\n onCollapse === null || onCollapse === void 0 ? void 0 : onCollapse(value, type);\n };\n // ========================= Responsive =========================\n const responsiveHandlerRef = useRef();\n responsiveHandlerRef.current = mql => {\n setBelow(mql.matches);\n onBreakpoint === null || onBreakpoint === void 0 ? void 0 : onBreakpoint(mql.matches);\n if (collapsed !== mql.matches) {\n handleSetCollapsed(mql.matches, 'responsive');\n }\n };\n useEffect(() => {\n function responsiveHandler(mql) {\n return responsiveHandlerRef.current(mql);\n }\n let mql;\n if (typeof window !== 'undefined') {\n const {\n matchMedia\n } = window;\n if (matchMedia && breakpoint && breakpoint in dimensionMaxMap) {\n mql = matchMedia(`(max-width: ${dimensionMaxMap[breakpoint]})`);\n try {\n mql.addEventListener('change', responsiveHandler);\n } catch (error) {\n mql.addListener(responsiveHandler);\n }\n responsiveHandler(mql);\n }\n }\n return () => {\n try {\n mql === null || mql === void 0 ? void 0 : mql.removeEventListener('change', responsiveHandler);\n } catch (error) {\n mql === null || mql === void 0 ? void 0 : mql.removeListener(responsiveHandler);\n }\n };\n }, [breakpoint]); // in order to accept dynamic 'breakpoint' property, we need to add 'breakpoint' into dependency array.\n useEffect(() => {\n const uniqueId = generateId('ant-sider-');\n siderHook.addSider(uniqueId);\n return () => siderHook.removeSider(uniqueId);\n }, []);\n const toggle = () => {\n handleSetCollapsed(!collapsed, 'clickTrigger');\n };\n const {\n getPrefixCls\n } = useContext(ConfigContext);\n const renderSider = () => {\n const prefixCls = getPrefixCls('layout-sider', customizePrefixCls);\n const divProps = omit(props, ['collapsed']);\n const rawWidth = collapsed ? collapsedWidth : width;\n // use \"px\" as fallback unit for width\n const siderWidth = isNumeric(rawWidth) ? `${rawWidth}px` : String(rawWidth);\n // special trigger when collapsedWidth == 0\n const zeroWidthTrigger = parseFloat(String(collapsedWidth || 0)) === 0 ? /*#__PURE__*/React.createElement(\"span\", {\n onClick: toggle,\n className: classNames(`${prefixCls}-zero-width-trigger`, `${prefixCls}-zero-width-trigger-${reverseArrow ? 'right' : 'left'}`),\n style: zeroWidthTriggerStyle\n }, trigger || /*#__PURE__*/React.createElement(BarsOutlined, null)) : null;\n const iconObj = {\n expanded: reverseArrow ? /*#__PURE__*/React.createElement(RightOutlined, null) : /*#__PURE__*/React.createElement(LeftOutlined, null),\n collapsed: reverseArrow ? /*#__PURE__*/React.createElement(LeftOutlined, null) : /*#__PURE__*/React.createElement(RightOutlined, null)\n };\n const status = collapsed ? 'collapsed' : 'expanded';\n const defaultTrigger = iconObj[status];\n const triggerDom = trigger !== null ? zeroWidthTrigger || /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-trigger`,\n onClick: toggle,\n style: {\n width: siderWidth\n }\n }, trigger || defaultTrigger) : null;\n const divStyle = Object.assign(Object.assign({}, style), {\n flex: `0 0 ${siderWidth}`,\n maxWidth: siderWidth,\n minWidth: siderWidth,\n width: siderWidth\n });\n const siderCls = classNames(prefixCls, `${prefixCls}-${theme}`, {\n [`${prefixCls}-collapsed`]: !!collapsed,\n [`${prefixCls}-has-trigger`]: collapsible && trigger !== null && !zeroWidthTrigger,\n [`${prefixCls}-below`]: !!below,\n [`${prefixCls}-zero-width`]: parseFloat(siderWidth) === 0\n }, className);\n return /*#__PURE__*/React.createElement(\"aside\", Object.assign({\n className: siderCls\n }, divProps, {\n style: divStyle,\n ref: ref\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-children`\n }, children), collapsible || below && zeroWidthTrigger ? triggerDom : null);\n };\n const contextValue = React.useMemo(() => ({\n siderCollapsed: collapsed\n }), [collapsed]);\n return /*#__PURE__*/React.createElement(SiderContext.Provider, {\n value: contextValue\n }, renderSider());\n});\nif (process.env.NODE_ENV !== 'production') {\n Sider.displayName = 'Sider';\n}\nexport default Sider;","import { createContext } from 'react';\nconst MenuContext = /*#__PURE__*/createContext({\n prefixCls: '',\n firstLevel: true,\n inlineCollapsed: false\n});\nexport default MenuContext;","import classNames from 'classnames';\nimport { Item } from 'rc-menu';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { SiderContext } from '../layout/Sider';\nimport Tooltip from '../tooltip';\nimport { cloneElement, isValidElement } from '../_util/reactNode';\nimport MenuContext from './MenuContext';\nconst MenuItem = props => {\n var _a;\n const {\n className,\n children,\n icon,\n title,\n danger\n } = props;\n const {\n prefixCls,\n firstLevel,\n direction,\n disableMenuItemTitleTooltip,\n inlineCollapsed: isInlineCollapsed\n } = React.useContext(MenuContext);\n const renderItemChildren = inlineCollapsed => {\n const wrapNode = /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-title-content`\n }, children);\n // inline-collapsed.md demo 依赖 span 来隐藏文字,有 icon 属性,则内部包裹一个 span\n // ref: https://github.com/ant-design/ant-design/pull/23456\n if (!icon || isValidElement(children) && children.type === 'span') {\n if (children && inlineCollapsed && firstLevel && typeof children === 'string') {\n return /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-inline-collapsed-noicon`\n }, children.charAt(0));\n }\n }\n return wrapNode;\n };\n const {\n siderCollapsed\n } = React.useContext(SiderContext);\n let tooltipTitle = title;\n if (typeof title === 'undefined') {\n tooltipTitle = firstLevel ? children : '';\n } else if (title === false) {\n tooltipTitle = '';\n }\n const tooltipProps = {\n title: tooltipTitle\n };\n if (!siderCollapsed && !isInlineCollapsed) {\n tooltipProps.title = null;\n // Reset `open` to fix control mode tooltip display not correct\n // ref: https://github.com/ant-design/ant-design/issues/16742\n tooltipProps.open = false;\n }\n const childrenLength = toArray(children).length;\n let returnNode = /*#__PURE__*/React.createElement(Item, Object.assign({}, omit(props, ['title', 'icon', 'danger']), {\n className: classNames({\n [`${prefixCls}-item-danger`]: danger,\n [`${prefixCls}-item-only-child`]: (icon ? childrenLength + 1 : childrenLength) === 1\n }, className),\n title: typeof title === 'string' ? title : undefined\n }), cloneElement(icon, {\n className: classNames(isValidElement(icon) ? (_a = icon.props) === null || _a === void 0 ? void 0 : _a.className : '', `${prefixCls}-item-icon`)\n }), renderItemChildren(isInlineCollapsed));\n if (!disableMenuItemTitleTooltip) {\n returnNode = /*#__PURE__*/React.createElement(Tooltip, Object.assign({}, tooltipProps, {\n placement: direction === 'rtl' ? 'left' : 'right',\n overlayClassName: `${prefixCls}-inline-collapsed-tooltip`\n }), returnNode);\n }\n return returnNode;\n};\nexport default MenuItem;","import classNames from 'classnames';\nimport { SubMenu as RcSubMenu, useFullPath } from 'rc-menu';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { cloneElement, isValidElement } from '../_util/reactNode';\nimport MenuContext from './MenuContext';\nconst SubMenu = props => {\n var _a;\n const {\n popupClassName,\n icon,\n title,\n theme: customTheme\n } = props;\n const context = React.useContext(MenuContext);\n const {\n prefixCls,\n inlineCollapsed,\n theme: contextTheme,\n mode\n } = context;\n const parentPath = useFullPath();\n let titleNode;\n if (!icon) {\n titleNode = inlineCollapsed && !parentPath.length && title && typeof title === 'string' ? /*#__PURE__*/React.createElement(\"div\", {\n className: `${prefixCls}-inline-collapsed-noicon`\n }, title.charAt(0)) : /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-title-content`\n }, title);\n } else {\n // inline-collapsed.md demo 依赖 span 来隐藏文字,有 icon 属性,则内部包裹一个 span\n // ref: https://github.com/ant-design/ant-design/pull/23456\n const titleIsSpan = isValidElement(title) && title.type === 'span';\n titleNode = /*#__PURE__*/React.createElement(React.Fragment, null, cloneElement(icon, {\n className: classNames(isValidElement(icon) ? (_a = icon.props) === null || _a === void 0 ? void 0 : _a.className : '', `${prefixCls}-item-icon`)\n }), titleIsSpan ? title : /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-title-content`\n }, title));\n }\n const contextValue = React.useMemo(() => Object.assign(Object.assign({}, context), {\n firstLevel: false\n }), [context]);\n const popupOffset = mode === 'horizontal' ? [0, 8] : [10, 0];\n return /*#__PURE__*/React.createElement(MenuContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(RcSubMenu, Object.assign({\n popupOffset: popupOffset\n }, omit(props, ['icon']), {\n title: titleNode,\n popupClassName: classNames(prefixCls, popupClassName, `${prefixCls}-${customTheme || contextTheme}`)\n })));\n};\nexport default SubMenu;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { ItemGroup } from 'rc-menu';\nimport * as React from 'react';\nimport MenuDivider from '../MenuDivider';\nimport MenuItem from '../MenuItem';\nimport SubMenu from '../SubMenu';\nfunction convertItemsToNodes(list) {\n return (list || []).map((opt, index) => {\n if (opt && typeof opt === 'object') {\n const _a = opt,\n {\n label,\n children,\n key,\n type\n } = _a,\n restProps = __rest(_a, [\"label\", \"children\", \"key\", \"type\"]);\n const mergedKey = key !== null && key !== void 0 ? key : `tmp-${index}`;\n // MenuItemGroup & SubMenuItem\n if (children || type === 'group') {\n if (type === 'group') {\n // Group\n return /*#__PURE__*/React.createElement(ItemGroup, Object.assign({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n // Sub Menu\n return /*#__PURE__*/React.createElement(SubMenu, Object.assign({\n key: mergedKey\n }, restProps, {\n title: label\n }), convertItemsToNodes(children));\n }\n // MenuItem & Divider\n if (type === 'divider') {\n return /*#__PURE__*/React.createElement(MenuDivider, Object.assign({\n key: mergedKey\n }, restProps));\n }\n return /*#__PURE__*/React.createElement(MenuItem, Object.assign({\n key: mergedKey\n }, restProps), label);\n }\n return null;\n }).filter(opt => opt);\n}\n// FIXME: Move logic here in v5\n/**\n * We simply convert `items` to ReactNode for reuse origin component logic. But we need move all the\n * logic from component into this hooks when in v5\n */\nexport default function useItems(items) {\n return React.useMemo(() => {\n if (!items) {\n return items;\n }\n return convertItemsToNodes(items);\n }, [items]);\n}","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport RcMenu from 'rc-menu';\nimport * as React from 'react';\nimport { forwardRef } from 'react';\nimport omit from \"rc-util/es/omit\";\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport classNames from 'classnames';\nimport EllipsisOutlined from \"@ant-design/icons/es/icons/EllipsisOutlined\";\nimport warning from '../_util/warning';\nimport initCollapseMotion from '../_util/motion';\nimport { cloneElement } from '../_util/reactNode';\nimport { ConfigContext } from '../config-provider';\nimport useStyle from './style';\nimport OverrideContext from './OverrideContext';\nimport useItems from './hooks/useItems';\nimport MenuContext from './MenuContext';\nconst InternalMenu = /*#__PURE__*/forwardRef((props, ref) => {\n var _a, _b;\n const override = React.useContext(OverrideContext);\n const overrideObj = override || {};\n const {\n getPrefixCls,\n getPopupContainer,\n direction\n } = React.useContext(ConfigContext);\n const rootPrefixCls = getPrefixCls();\n const {\n prefixCls: customizePrefixCls,\n className,\n theme = 'light',\n expandIcon,\n _internalDisableMenuItemTitleTooltip,\n inlineCollapsed,\n siderCollapsed,\n items,\n children,\n rootClassName,\n mode,\n selectable,\n onClick\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"theme\", \"expandIcon\", \"_internalDisableMenuItemTitleTooltip\", \"inlineCollapsed\", \"siderCollapsed\", \"items\", \"children\", \"rootClassName\", \"mode\", \"selectable\", \"onClick\"]);\n const passedProps = omit(restProps, ['collapsedWidth']);\n // ========================= Items ===========================\n const mergedChildren = useItems(items) || children;\n // ======================== Warning ==========================\n process.env.NODE_ENV !== \"production\" ? warning(!('inlineCollapsed' in props && mode !== 'inline'), 'Menu', '`inlineCollapsed` should only be used when `mode` is inline.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!(props.siderCollapsed !== undefined && 'inlineCollapsed' in props), 'Menu', '`inlineCollapsed` not control Menu under Sider. Should set `collapsed` on Sider instead.') : void 0;\n process.env.NODE_ENV !== \"production\" ? warning('items' in props && !children, 'Menu', '`children` will be removed in next major version. Please use `items` instead.') : void 0;\n (_a = overrideObj.validator) === null || _a === void 0 ? void 0 : _a.call(overrideObj, {\n mode\n });\n // ========================== Click ==========================\n // Tell dropdown that item clicked\n const onItemClick = useEvent(function () {\n var _a;\n onClick === null || onClick === void 0 ? void 0 : onClick.apply(void 0, arguments);\n (_a = overrideObj.onClick) === null || _a === void 0 ? void 0 : _a.call(overrideObj);\n });\n // ========================== Mode ===========================\n const mergedMode = overrideObj.mode || mode;\n // ======================= Selectable ========================\n const mergedSelectable = selectable !== null && selectable !== void 0 ? selectable : overrideObj.selectable;\n // ======================== Collapsed ========================\n // Inline Collapsed\n const mergedInlineCollapsed = React.useMemo(() => {\n if (siderCollapsed !== undefined) {\n return siderCollapsed;\n }\n return inlineCollapsed;\n }, [inlineCollapsed, siderCollapsed]);\n const defaultMotions = {\n horizontal: {\n motionName: `${rootPrefixCls}-slide-up`\n },\n inline: initCollapseMotion(rootPrefixCls),\n other: {\n motionName: `${rootPrefixCls}-zoom-big`\n }\n };\n const prefixCls = getPrefixCls('menu', customizePrefixCls || overrideObj.prefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls, !override);\n const menuClassName = classNames(`${prefixCls}-${theme}`, className);\n // ====================== Expand Icon ========================\n let mergedExpandIcon;\n if (typeof expandIcon === 'function') {\n mergedExpandIcon = expandIcon;\n } else {\n const beClone = expandIcon || overrideObj.expandIcon;\n mergedExpandIcon = cloneElement(beClone, {\n className: classNames(`${prefixCls}-submenu-expand-icon`, (_b = beClone === null || beClone === void 0 ? void 0 : beClone.props) === null || _b === void 0 ? void 0 : _b.className)\n });\n }\n // ======================== Context ==========================\n const contextValue = React.useMemo(() => ({\n prefixCls,\n inlineCollapsed: mergedInlineCollapsed || false,\n direction,\n firstLevel: true,\n theme,\n mode: mergedMode,\n disableMenuItemTitleTooltip: _internalDisableMenuItemTitleTooltip\n }), [prefixCls, mergedInlineCollapsed, direction, _internalDisableMenuItemTitleTooltip, theme]);\n // ========================= Render ==========================\n return wrapSSR( /*#__PURE__*/React.createElement(OverrideContext.Provider, {\n value: null\n }, /*#__PURE__*/React.createElement(MenuContext.Provider, {\n value: contextValue\n }, /*#__PURE__*/React.createElement(RcMenu, Object.assign({\n getPopupContainer: getPopupContainer,\n overflowedIndicator: /*#__PURE__*/React.createElement(EllipsisOutlined, null),\n overflowedIndicatorPopupClassName: `${prefixCls}-${theme}`,\n mode: mergedMode,\n selectable: mergedSelectable,\n onClick: onItemClick\n }, passedProps, {\n inlineCollapsed: mergedInlineCollapsed,\n className: menuClassName,\n prefixCls: prefixCls,\n direction: direction,\n defaultMotions: defaultMotions,\n expandIcon: mergedExpandIcon,\n ref: ref,\n rootClassName: classNames(rootClassName, hashId)\n }), mergedChildren))));\n});\nexport default InternalMenu;","import { ItemGroup } from 'rc-menu';\nimport * as React from 'react';\nimport { forwardRef, useImperativeHandle, useRef } from 'react';\nimport InternalMenu from './menu';\nimport { SiderContext } from '../layout/Sider';\nimport MenuDivider from './MenuDivider';\nimport Item from './MenuItem';\nimport SubMenu from './SubMenu';\nconst Menu = /*#__PURE__*/forwardRef((props, ref) => {\n const menuRef = useRef(null);\n const context = React.useContext(SiderContext);\n useImperativeHandle(ref, () => ({\n menu: menuRef.current,\n focus: options => {\n var _a;\n (_a = menuRef.current) === null || _a === void 0 ? void 0 : _a.focus(options);\n }\n }));\n return /*#__PURE__*/React.createElement(InternalMenu, Object.assign({\n ref: menuRef\n }, props, context));\n});\nMenu.Item = Item;\nMenu.SubMenu = SubMenu;\nMenu.Divider = MenuDivider;\nMenu.ItemGroup = ItemGroup;\nif (process.env.NODE_ENV !== 'production') {\n Menu.displayName = 'Menu';\n}\nexport default Menu;","import * as React from 'react';\nimport { detectFlexGapSupported } from '../styleChecker';\nexport default (() => {\n const [flexible, setFlexible] = React.useState(false);\n React.useEffect(() => {\n setFlexible(detectFlexGapSupported());\n }, []);\n return flexible;\n});","import * as React from 'react';\nimport { SpaceContext } from '.';\nexport default function Item(_ref) {\n let {\n className,\n direction,\n index,\n marginDirection,\n children,\n split,\n wrap\n } = _ref;\n const {\n horizontalSize,\n verticalSize,\n latestIndex,\n supportFlexGap\n } = React.useContext(SpaceContext);\n let style = {};\n if (!supportFlexGap) {\n if (direction === 'vertical') {\n if (index < latestIndex) {\n style = {\n marginBottom: horizontalSize / (split ? 2 : 1)\n };\n }\n } else {\n style = Object.assign(Object.assign({}, index < latestIndex && {\n [marginDirection]: horizontalSize / (split ? 2 : 1)\n }), wrap && {\n paddingBottom: verticalSize\n });\n }\n }\n if (children === null || children === undefined) {\n return null;\n }\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n className: className,\n style: style\n }, children), index < latestIndex && split && /*#__PURE__*/React.createElement(\"span\", {\n className: `${className}-split`,\n style: style\n }, split));\n}","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useFlexGapSupport from '../_util/hooks/useFlexGapSupport';\nimport Compact from './Compact';\nimport Item from './Item';\nimport useStyle from './style';\nexport const SpaceContext = /*#__PURE__*/React.createContext({\n latestIndex: 0,\n horizontalSize: 0,\n verticalSize: 0,\n supportFlexGap: false\n});\nconst spaceSize = {\n small: 8,\n middle: 16,\n large: 24\n};\nfunction getNumberSize(size) {\n return typeof size === 'string' ? spaceSize[size] : size || 0;\n}\nconst Space = props => {\n const {\n getPrefixCls,\n space,\n direction: directionConfig\n } = React.useContext(ConfigContext);\n const {\n size = (space === null || space === void 0 ? void 0 : space.size) || 'small',\n align,\n className,\n rootClassName,\n children,\n direction = 'horizontal',\n prefixCls: customizePrefixCls,\n split,\n style,\n wrap = false\n } = props,\n otherProps = __rest(props, [\"size\", \"align\", \"className\", \"rootClassName\", \"children\", \"direction\", \"prefixCls\", \"split\", \"style\", \"wrap\"]);\n const supportFlexGap = useFlexGapSupport();\n const [horizontalSize, verticalSize] = React.useMemo(() => (Array.isArray(size) ? size : [size, size]).map(item => getNumberSize(item)), [size]);\n const childNodes = toArray(children, {\n keepEmpty: true\n });\n const mergedAlign = align === undefined && direction === 'horizontal' ? 'center' : align;\n const prefixCls = getPrefixCls('space', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const cn = classNames(prefixCls, hashId, `${prefixCls}-${direction}`, {\n [`${prefixCls}-rtl`]: directionConfig === 'rtl',\n [`${prefixCls}-align-${mergedAlign}`]: mergedAlign\n }, className, rootClassName);\n const itemClassName = `${prefixCls}-item`;\n const marginDirection = directionConfig === 'rtl' ? 'marginLeft' : 'marginRight';\n // Calculate latest one\n let latestIndex = 0;\n const nodes = childNodes.map((child, i) => {\n if (child !== null && child !== undefined) {\n latestIndex = i;\n }\n const key = child && child.key || `${itemClassName}-${i}`;\n return /*#__PURE__*/React.createElement(Item, {\n className: itemClassName,\n key: key,\n direction: direction,\n index: i,\n marginDirection: marginDirection,\n split: split,\n wrap: wrap\n }, child);\n });\n const spaceContext = React.useMemo(() => ({\n horizontalSize,\n verticalSize,\n latestIndex,\n supportFlexGap\n }), [horizontalSize, verticalSize, latestIndex, supportFlexGap]);\n // =========================== Render ===========================\n if (childNodes.length === 0) {\n return null;\n }\n const gapStyle = {};\n if (wrap) {\n gapStyle.flexWrap = 'wrap';\n // Patch for gap not support\n if (!supportFlexGap) {\n gapStyle.marginBottom = -verticalSize;\n }\n }\n if (supportFlexGap) {\n gapStyle.columnGap = horizontalSize;\n gapStyle.rowGap = verticalSize;\n }\n return wrapSSR( /*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: cn,\n style: Object.assign(Object.assign({}, gapStyle), style)\n }, otherProps), /*#__PURE__*/React.createElement(SpaceContext.Provider, {\n value: spaceContext\n }, nodes)));\n};\nif (process.env.NODE_ENV !== 'production') {\n Space.displayName = 'Space';\n}\nconst CompoundedSpace = Space;\nCompoundedSpace.Compact = Compact;\nexport default CompoundedSpace;","const genButtonStyle = token => {\n const {\n componentCls,\n antCls,\n paddingXS,\n opacityLoading\n } = token;\n return {\n [`${componentCls}-button`]: {\n whiteSpace: 'nowrap',\n [`&${antCls}-btn-group > ${antCls}-btn`]: {\n [`&-loading, &-loading + ${antCls}-btn`]: {\n cursor: 'default',\n pointerEvents: 'none',\n opacity: opacityLoading\n },\n [`&:last-child:not(:first-child):not(${antCls}-btn-icon-only)`]: {\n paddingInline: paddingXS\n }\n }\n }\n };\n};\nexport default genButtonStyle;","const genStatusStyle = token => {\n const {\n componentCls,\n menuCls,\n colorError,\n colorTextLightSolid\n } = token;\n const itemCls = `${menuCls}-item`;\n return {\n [`${componentCls}, ${componentCls}-menu-submenu`]: {\n [`${menuCls} ${itemCls}`]: {\n [`&${itemCls}-danger:not(${itemCls}-disabled)`]: {\n color: colorError,\n '&:hover': {\n color: colorTextLightSolid,\n backgroundColor: colorError\n }\n }\n }\n }\n };\n};\nexport default genStatusStyle;","import { genFocusStyle, resetComponent } from '../../style';\nimport { initMoveMotion, initSlideMotion, initZoomMotion, slideDownIn, slideDownOut, slideUpIn, slideUpOut } from '../../style/motion';\nimport getArrowStyle, { getArrowOffset } from '../../style/placementArrow';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport genButtonStyle from './button';\nimport genStatusStyle from './status';\n// =============================== Base ===============================\nconst genBaseStyle = token => {\n const {\n componentCls,\n menuCls,\n zIndexPopup,\n dropdownArrowDistance,\n sizePopupArrow,\n antCls,\n iconCls,\n motionDurationMid,\n dropdownPaddingVertical,\n fontSize,\n dropdownEdgeChildPadding,\n colorTextDisabled,\n fontSizeIcon,\n controlPaddingHorizontal,\n colorBgElevated\n } = token;\n return [{\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'absolute',\n top: -9999,\n left: {\n _skip_check_: true,\n value: -9999\n },\n zIndex: zIndexPopup,\n display: 'block',\n // A placeholder out of dropdown visible range to avoid close when user moving\n '&::before': {\n position: 'absolute',\n insetBlock: -dropdownArrowDistance + sizePopupArrow / 2,\n // insetInlineStart: -7, // FIXME: Seems not work for hidden element\n zIndex: -9999,\n opacity: 0.0001,\n content: '\"\"'\n },\n [`${componentCls}-wrap`]: {\n position: 'relative',\n [`${antCls}-btn > ${iconCls}-down`]: {\n fontSize: fontSizeIcon\n },\n [`${iconCls}-down::before`]: {\n transition: `transform ${motionDurationMid}`\n }\n },\n [`${componentCls}-wrap-open`]: {\n [`${iconCls}-down::before`]: {\n transform: `rotate(180deg)`\n }\n },\n [`\n &-hidden,\n &-menu-hidden,\n &-menu-submenu-hidden\n `]: {\n display: 'none'\n },\n // =============================================================\n // == Motion ==\n // =============================================================\n // When position is not enough for dropdown, the placement will revert.\n // We will handle this with revert motion name.\n [`&${antCls}-slide-down-enter${antCls}-slide-down-enter-active${componentCls}-placement-bottomLeft,\n &${antCls}-slide-down-appear${antCls}-slide-down-appear-active${componentCls}-placement-bottomLeft,\n &${antCls}-slide-down-enter${antCls}-slide-down-enter-active${componentCls}-placement-bottom,\n &${antCls}-slide-down-appear${antCls}-slide-down-appear-active${componentCls}-placement-bottom,\n &${antCls}-slide-down-enter${antCls}-slide-down-enter-active${componentCls}-placement-bottomRight,\n &${antCls}-slide-down-appear${antCls}-slide-down-appear-active${componentCls}-placement-bottomRight`]: {\n animationName: slideUpIn\n },\n [`&${antCls}-slide-up-enter${antCls}-slide-up-enter-active${componentCls}-placement-topLeft,\n &${antCls}-slide-up-appear${antCls}-slide-up-appear-active${componentCls}-placement-topLeft,\n &${antCls}-slide-up-enter${antCls}-slide-up-enter-active${componentCls}-placement-top,\n &${antCls}-slide-up-appear${antCls}-slide-up-appear-active${componentCls}-placement-top,\n &${antCls}-slide-up-enter${antCls}-slide-up-enter-active${componentCls}-placement-topRight,\n &${antCls}-slide-up-appear${antCls}-slide-up-appear-active${componentCls}-placement-topRight`]: {\n animationName: slideDownIn\n },\n [`&${antCls}-slide-down-leave${antCls}-slide-down-leave-active${componentCls}-placement-bottomLeft,\n &${antCls}-slide-down-leave${antCls}-slide-down-leave-active${componentCls}-placement-bottom,\n &${antCls}-slide-down-leave${antCls}-slide-down-leave-active${componentCls}-placement-bottomRight`]: {\n animationName: slideUpOut\n },\n [`&${antCls}-slide-up-leave${antCls}-slide-up-leave-active${componentCls}-placement-topLeft,\n &${antCls}-slide-up-leave${antCls}-slide-up-leave-active${componentCls}-placement-top,\n &${antCls}-slide-up-leave${antCls}-slide-up-leave-active${componentCls}-placement-topRight`]: {\n animationName: slideDownOut\n }\n })\n },\n // =============================================================\n // == Arrow style ==\n // =============================================================\n getArrowStyle(token, {\n colorBg: colorBgElevated,\n limitVerticalRadius: true,\n arrowPlacement: {\n top: true,\n bottom: true\n }\n }), {\n // =============================================================\n // == Menu ==\n // =============================================================\n [`${componentCls} ${menuCls}`]: {\n position: 'relative',\n margin: 0\n },\n [`${menuCls}-submenu-popup`]: {\n position: 'absolute',\n zIndex: zIndexPopup,\n background: 'transparent',\n boxShadow: 'none',\n transformOrigin: '0 0',\n 'ul, li': {\n listStyle: 'none',\n margin: 0\n }\n },\n [`${componentCls}, ${componentCls}-menu-submenu`]: {\n [menuCls]: Object.assign(Object.assign({\n padding: dropdownEdgeChildPadding,\n listStyleType: 'none',\n backgroundColor: colorBgElevated,\n backgroundClip: 'padding-box',\n borderRadius: token.borderRadiusLG,\n outline: 'none',\n boxShadow: token.boxShadowSecondary\n }, genFocusStyle(token)), {\n [`${menuCls}-item-group-title`]: {\n padding: `${dropdownPaddingVertical}px ${controlPaddingHorizontal}px`,\n color: token.colorTextDescription,\n transition: `all ${motionDurationMid}`\n },\n // ======================= Item Content =======================\n [`${menuCls}-item`]: {\n position: 'relative',\n display: 'flex',\n alignItems: 'center'\n },\n [`${menuCls}-item-icon`]: {\n minWidth: fontSize,\n marginInlineEnd: token.marginXS,\n fontSize: token.fontSizeSM\n },\n [`${menuCls}-title-content`]: {\n flex: 'auto',\n '> a': {\n color: 'inherit',\n transition: `all ${motionDurationMid}`,\n '&:hover': {\n color: 'inherit'\n },\n '&::after': {\n position: 'absolute',\n inset: 0,\n content: '\"\"'\n }\n }\n },\n // =========================== Item ===========================\n [`${menuCls}-item, ${menuCls}-submenu-title`]: Object.assign(Object.assign({\n clear: 'both',\n margin: 0,\n padding: `${dropdownPaddingVertical}px ${controlPaddingHorizontal}px`,\n color: token.colorText,\n fontWeight: 'normal',\n fontSize,\n lineHeight: token.lineHeight,\n cursor: 'pointer',\n transition: `all ${motionDurationMid}`,\n borderRadius: token.borderRadiusSM,\n [`&:hover, &-active`]: {\n backgroundColor: token.controlItemBgHover\n }\n }, genFocusStyle(token)), {\n '&-selected': {\n color: token.colorPrimary,\n backgroundColor: token.controlItemBgActive,\n '&:hover, &-active': {\n backgroundColor: token.controlItemBgActiveHover\n }\n },\n '&-disabled': {\n color: colorTextDisabled,\n cursor: 'not-allowed',\n '&:hover': {\n color: colorTextDisabled,\n backgroundColor: colorBgElevated,\n cursor: 'not-allowed'\n },\n a: {\n pointerEvents: 'none'\n }\n },\n '&-divider': {\n height: 1,\n margin: `${token.marginXXS}px 0`,\n overflow: 'hidden',\n lineHeight: 0,\n backgroundColor: token.colorSplit\n },\n [`${componentCls}-menu-submenu-expand-icon`]: {\n position: 'absolute',\n insetInlineEnd: token.paddingXS,\n [`${componentCls}-menu-submenu-arrow-icon`]: {\n marginInlineEnd: '0 !important',\n color: token.colorTextDescription,\n fontSize: fontSizeIcon,\n fontStyle: 'normal'\n }\n }\n }),\n [`${menuCls}-item-group-list`]: {\n margin: `0 ${token.marginXS}px`,\n padding: 0,\n listStyle: 'none'\n },\n [`${menuCls}-submenu-title`]: {\n paddingInlineEnd: controlPaddingHorizontal + token.fontSizeSM\n },\n [`${menuCls}-submenu-vertical`]: {\n position: 'relative'\n },\n [`${menuCls}-submenu${menuCls}-submenu-disabled ${componentCls}-menu-submenu-title`]: {\n [`&, ${componentCls}-menu-submenu-arrow-icon`]: {\n color: colorTextDisabled,\n backgroundColor: colorBgElevated,\n cursor: 'not-allowed'\n }\n },\n // https://github.com/ant-design/ant-design/issues/19264\n [`${menuCls}-submenu-selected ${componentCls}-menu-submenu-title`]: {\n color: token.colorPrimary\n }\n })\n }\n },\n // Follow code may reuse in other components\n [initSlideMotion(token, 'slide-up'), initSlideMotion(token, 'slide-down'), initMoveMotion(token, 'move-up'), initMoveMotion(token, 'move-down'), initZoomMotion(token, 'zoom-big')]];\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Dropdown', (token, _ref) => {\n let {\n rootPrefixCls\n } = _ref;\n const {\n marginXXS,\n sizePopupArrow,\n controlHeight,\n fontSize,\n lineHeight,\n paddingXXS,\n componentCls,\n borderRadiusLG\n } = token;\n const dropdownPaddingVertical = (controlHeight - fontSize * lineHeight) / 2;\n const {\n dropdownArrowOffset\n } = getArrowOffset({\n contentRadius: borderRadiusLG\n });\n const dropdownToken = mergeToken(token, {\n menuCls: `${componentCls}-menu`,\n rootPrefixCls,\n dropdownArrowDistance: sizePopupArrow / 2 + marginXXS,\n dropdownArrowOffset,\n dropdownPaddingVertical,\n dropdownEdgeChildPadding: paddingXXS\n });\n return [genBaseStyle(dropdownToken), genButtonStyle(dropdownToken), genStatusStyle(dropdownToken)];\n}, token => ({\n zIndexPopup: token.zIndexPopupBase + 50\n}));","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport EllipsisOutlined from \"@ant-design/icons/es/icons/EllipsisOutlined\";\nimport Button from '../button';\nimport { ConfigContext } from '../config-provider';\nimport Space from '../space';\nimport { useCompactItemContext } from '../space/Compact';\nimport Dropdown from './dropdown';\nimport useStyle from './style';\nconst DropdownButton = props => {\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n type = 'default',\n danger,\n disabled,\n loading,\n onClick,\n htmlType,\n children,\n className,\n menu,\n arrow,\n autoFocus,\n overlay,\n trigger,\n align,\n open,\n onOpenChange,\n placement,\n getPopupContainer,\n href,\n icon = /*#__PURE__*/React.createElement(EllipsisOutlined, null),\n title,\n buttonsRender = buttons => buttons,\n mouseEnterDelay,\n mouseLeaveDelay,\n overlayClassName,\n overlayStyle,\n destroyPopupOnHide,\n dropdownRender\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"type\", \"danger\", \"disabled\", \"loading\", \"onClick\", \"htmlType\", \"children\", \"className\", \"menu\", \"arrow\", \"autoFocus\", \"overlay\", \"trigger\", \"align\", \"open\", \"onOpenChange\", \"placement\", \"getPopupContainer\", \"href\", \"icon\", \"title\", \"buttonsRender\", \"mouseEnterDelay\", \"mouseLeaveDelay\", \"overlayClassName\", \"overlayStyle\", \"destroyPopupOnHide\", \"dropdownRender\"]);\n const prefixCls = getPrefixCls('dropdown', customizePrefixCls);\n const buttonPrefixCls = `${prefixCls}-button`;\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const dropdownProps = {\n menu,\n arrow,\n autoFocus,\n align,\n disabled,\n trigger: disabled ? [] : trigger,\n onOpenChange,\n getPopupContainer: getPopupContainer || getContextPopupContainer,\n mouseEnterDelay,\n mouseLeaveDelay,\n overlayClassName,\n overlayStyle,\n destroyPopupOnHide,\n dropdownRender\n };\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n const classes = classNames(buttonPrefixCls, compactItemClassnames, className, hashId);\n if ('overlay' in props) {\n dropdownProps.overlay = overlay;\n }\n if ('open' in props) {\n dropdownProps.open = open;\n }\n if ('placement' in props) {\n dropdownProps.placement = placement;\n } else {\n dropdownProps.placement = direction === 'rtl' ? 'bottomLeft' : 'bottomRight';\n }\n const leftButton = /*#__PURE__*/React.createElement(Button, {\n type: type,\n danger: danger,\n disabled: disabled,\n loading: loading,\n onClick: onClick,\n htmlType: htmlType,\n href: href,\n title: title\n }, children);\n const rightButton = /*#__PURE__*/React.createElement(Button, {\n type: type,\n danger: danger,\n icon: icon\n });\n const [leftButtonToRender, rightButtonToRender] = buttonsRender([leftButton, rightButton]);\n return wrapSSR( /*#__PURE__*/React.createElement(Space.Compact, Object.assign({\n className: classes,\n size: compactSize,\n block: true\n }, restProps), leftButtonToRender, /*#__PURE__*/React.createElement(Dropdown, Object.assign({}, dropdownProps), rightButtonToRender)));\n};\nDropdownButton.__ANT_BUTTON = true;\nexport default DropdownButton;","import RightOutlined from \"@ant-design/icons/es/icons/RightOutlined\";\nimport classNames from 'classnames';\nimport RcDropdown from 'rc-dropdown';\nimport useEvent from \"rc-util/es/hooks/useEvent\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport Menu from '../menu';\nimport { OverrideProvider } from '../menu/OverrideContext';\nimport { NoCompactStyle } from '../space/Compact';\nimport getPlacements from '../_util/placements';\nimport genPurePanel from '../_util/PurePanel';\nimport { cloneElement } from '../_util/reactNode';\nimport warning from '../_util/warning';\nimport DropdownButton from './dropdown-button';\nimport useStyle from './style';\nimport theme from '../theme';\nconst Placements = ['topLeft', 'topCenter', 'topRight', 'bottomLeft', 'bottomCenter', 'bottomRight', 'top', 'bottom'];\nconst Dropdown = props => {\n const {\n getPopupContainer: getContextPopupContainer,\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n // Warning for deprecated usage\n if (process.env.NODE_ENV !== 'production') {\n [['visible', 'open'], ['onVisibleChange', 'onOpenChange']].forEach(_ref => {\n let [deprecatedName, newName] = _ref;\n process.env.NODE_ENV !== \"production\" ? warning(!(deprecatedName in props), 'Dropdown', `\\`${deprecatedName}\\` is deprecated which will be removed in next major version, please use \\`${newName}\\` instead.`) : void 0;\n });\n process.env.NODE_ENV !== \"production\" ? warning(!('overlay' in props), 'Dropdown', '`overlay` is deprecated. Please use `menu` instead.') : void 0;\n }\n const getTransitionName = () => {\n const rootPrefixCls = getPrefixCls();\n const {\n placement = '',\n transitionName\n } = props;\n if (transitionName !== undefined) {\n return transitionName;\n }\n if (placement.includes('top')) {\n return `${rootPrefixCls}-slide-down`;\n }\n return `${rootPrefixCls}-slide-up`;\n };\n const getPlacement = () => {\n const {\n placement\n } = props;\n if (!placement) {\n return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n }\n if (placement.includes('Center')) {\n const newPlacement = placement.slice(0, placement.indexOf('Center'));\n process.env.NODE_ENV !== \"production\" ? warning(!placement.includes('Center'), 'Dropdown', `You are using '${placement}' placement in Dropdown, which is deprecated. Try to use '${newPlacement}' instead.`) : void 0;\n return newPlacement;\n }\n return placement;\n };\n const {\n menu,\n arrow,\n prefixCls: customizePrefixCls,\n children,\n trigger,\n disabled,\n dropdownRender,\n getPopupContainer,\n overlayClassName,\n rootClassName,\n open,\n onOpenChange,\n // Deprecated\n visible,\n onVisibleChange,\n mouseEnterDelay = 0.15,\n mouseLeaveDelay = 0.1,\n autoAdjustOverflow = true\n } = props;\n if (process.env.NODE_ENV !== 'production') {\n [['visible', 'open'], ['onVisibleChange', 'onOpenChange']].forEach(_ref2 => {\n let [deprecatedName, newName] = _ref2;\n process.env.NODE_ENV !== \"production\" ? warning(!(deprecatedName in props), 'Dropdown', `\\`${deprecatedName}\\` is deprecated, please use \\`${newName}\\` instead.`) : void 0;\n });\n }\n const prefixCls = getPrefixCls('dropdown', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const {\n token\n } = theme.useToken();\n const child = React.Children.only(children);\n const dropdownTrigger = cloneElement(child, {\n className: classNames(`${prefixCls}-trigger`, {\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, child.props.className),\n disabled\n });\n const triggerActions = disabled ? [] : trigger;\n let alignPoint;\n if (triggerActions && triggerActions.includes('contextMenu')) {\n alignPoint = true;\n }\n // =========================== Open ============================\n const [mergedOpen, setOpen] = useMergedState(false, {\n value: open !== null && open !== void 0 ? open : visible\n });\n const onInnerOpenChange = useEvent(nextOpen => {\n onOpenChange === null || onOpenChange === void 0 ? void 0 : onOpenChange(nextOpen);\n onVisibleChange === null || onVisibleChange === void 0 ? void 0 : onVisibleChange(nextOpen);\n setOpen(nextOpen);\n });\n // =========================== Overlay ============================\n const overlayClassNameCustomized = classNames(overlayClassName, rootClassName, hashId, {\n [`${prefixCls}-rtl`]: direction === 'rtl'\n });\n const builtinPlacements = getPlacements({\n arrowPointAtCenter: typeof arrow === 'object' && arrow.pointAtCenter,\n autoAdjustOverflow,\n offset: token.marginXXS,\n arrowWidth: arrow ? token.sizePopupArrow : 0,\n borderRadius: token.borderRadius\n });\n const onMenuClick = React.useCallback(() => {\n setOpen(false);\n }, []);\n const renderOverlay = () => {\n // rc-dropdown already can process the function of overlay, but we have check logic here.\n // So we need render the element to check and pass back to rc-dropdown.\n const {\n overlay\n } = props;\n let overlayNode;\n if (menu === null || menu === void 0 ? void 0 : menu.items) {\n overlayNode = /*#__PURE__*/React.createElement(Menu, Object.assign({}, menu));\n } else if (typeof overlay === 'function') {\n overlayNode = overlay();\n } else {\n overlayNode = overlay;\n }\n if (dropdownRender) {\n overlayNode = dropdownRender(overlayNode);\n }\n overlayNode = React.Children.only(typeof overlayNode === 'string' ? /*#__PURE__*/React.createElement(\"span\", null, overlayNode) : overlayNode);\n return /*#__PURE__*/React.createElement(OverrideProvider, {\n prefixCls: `${prefixCls}-menu`,\n expandIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-menu-submenu-arrow`\n }, /*#__PURE__*/React.createElement(RightOutlined, {\n className: `${prefixCls}-menu-submenu-arrow-icon`\n })),\n mode: \"vertical\",\n selectable: false,\n onClick: onMenuClick,\n validator: _ref3 => {\n let {\n mode\n } = _ref3;\n // Warning if use other mode\n process.env.NODE_ENV !== \"production\" ? warning(!mode || mode === 'vertical', 'Dropdown', `mode=\"${mode}\" is not supported for Dropdown's Menu.`) : void 0;\n }\n }, /*#__PURE__*/React.createElement(NoCompactStyle, null, overlayNode));\n };\n // ============================ Render ============================\n return wrapSSR( /*#__PURE__*/React.createElement(RcDropdown, Object.assign({\n alignPoint: alignPoint\n }, omit(props, ['rootClassName']), {\n mouseEnterDelay: mouseEnterDelay,\n mouseLeaveDelay: mouseLeaveDelay,\n visible: mergedOpen,\n builtinPlacements: builtinPlacements,\n arrow: !!arrow,\n overlayClassName: overlayClassNameCustomized,\n prefixCls: prefixCls,\n getPopupContainer: getPopupContainer || getContextPopupContainer,\n transitionName: getTransitionName(),\n trigger: triggerActions,\n overlay: renderOverlay,\n placement: getPlacement(),\n onVisibleChange: onInnerOpenChange\n }), dropdownTrigger));\n};\nDropdown.Button = DropdownButton;\n// We don't care debug panel\nconst PurePanel = genPurePanel(Dropdown, 'dropdown', prefixCls => prefixCls);\n/* istanbul ignore next */\nconst WrapPurePanel = props => /*#__PURE__*/React.createElement(PurePanel, Object.assign({}, props), /*#__PURE__*/React.createElement(\"span\", null));\nDropdown._InternalPanelDoNotUseOrYouWillBeFired = WrapPurePanel;\nif (process.env.NODE_ENV !== 'production') {\n Dropdown.displayName = 'Dropdown';\n}\nexport default Dropdown;","import useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport * as React from 'react';\nimport ConfigProvider, { ConfigContext } from '../config-provider';\n/* istanbul ignore next */\nexport default function genPurePanel(Component, defaultPrefixCls, getDropdownCls) {\n return function PurePanel(props) {\n const {\n prefixCls: customizePrefixCls,\n style\n } = props;\n const holderRef = React.useRef(null);\n const [popupHeight, setPopupHeight] = React.useState(0);\n const [popupWidth, setPopupWidth] = React.useState(0);\n const [open, setOpen] = useMergedState(false, {\n value: props.open\n });\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls(defaultPrefixCls || 'select', customizePrefixCls);\n React.useEffect(() => {\n // We do not care about ssr\n setOpen(true);\n if (typeof ResizeObserver !== 'undefined') {\n const resizeObserver = new ResizeObserver(entries => {\n const element = entries[0].target;\n setPopupHeight(element.offsetHeight + 8);\n setPopupWidth(element.offsetWidth);\n });\n const interval = setInterval(() => {\n var _a;\n const dropdownCls = getDropdownCls ? `.${getDropdownCls(prefixCls)}` : `.${prefixCls}-dropdown`;\n const popup = (_a = holderRef.current) === null || _a === void 0 ? void 0 : _a.querySelector(dropdownCls);\n if (popup) {\n clearInterval(interval);\n resizeObserver.observe(popup);\n }\n }, 10);\n return () => {\n clearInterval(interval);\n resizeObserver.disconnect();\n };\n }\n }, []);\n return /*#__PURE__*/React.createElement(ConfigProvider, {\n theme: {\n token: {\n motionDurationFast: '0.01s',\n motionDurationMid: '0.01s',\n motionDurationSlow: '0.01s'\n }\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: holderRef,\n style: {\n paddingBottom: popupHeight,\n position: 'relative',\n width: 'fit-content',\n minWidth: popupWidth\n }\n }, /*#__PURE__*/React.createElement(Component, Object.assign({}, props, {\n style: Object.assign(Object.assign({}, style), {\n margin: 0\n }),\n open: open,\n visible: open,\n getPopupContainer: () => holderRef.current\n }))));\n };\n}","import * as React from 'react';\nconst RadioGroupContext = /*#__PURE__*/React.createContext(null);\nexport const RadioGroupContextProvider = RadioGroupContext.Provider;\nexport default RadioGroupContext;\nexport const RadioOptionTypeContext = /*#__PURE__*/React.createContext(null);\nexport const RadioOptionTypeContextProvider = RadioOptionTypeContext.Provider;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\n// eslint-disable-next-line import/no-extraneous-dependencies\nimport React, { Component } from 'react';\nimport classNames from 'classnames';\n\nvar Checkbox = /*#__PURE__*/function (_Component) {\n _inherits(Checkbox, _Component);\n\n var _super = _createSuper(Checkbox);\n\n function Checkbox(props) {\n var _this;\n\n _classCallCheck(this, Checkbox);\n\n _this = _super.call(this, props);\n\n _this.handleChange = function (e) {\n var _this$props = _this.props,\n disabled = _this$props.disabled,\n onChange = _this$props.onChange;\n\n if (disabled) {\n return;\n }\n\n if (!('checked' in _this.props)) {\n _this.setState({\n checked: e.target.checked\n });\n }\n\n if (onChange) {\n onChange({\n target: _objectSpread(_objectSpread({}, _this.props), {}, {\n checked: e.target.checked\n }),\n stopPropagation: function stopPropagation() {\n e.stopPropagation();\n },\n preventDefault: function preventDefault() {\n e.preventDefault();\n },\n nativeEvent: e.nativeEvent\n });\n }\n };\n\n _this.saveInput = function (node) {\n _this.input = node;\n };\n\n var checked = 'checked' in props ? props.checked : props.defaultChecked;\n _this.state = {\n checked: checked\n };\n return _this;\n }\n\n _createClass(Checkbox, [{\n key: \"focus\",\n value: function focus() {\n this.input.focus();\n }\n }, {\n key: \"blur\",\n value: function blur() {\n this.input.blur();\n }\n }, {\n key: \"render\",\n value: function render() {\n var _classNames;\n\n var _this$props2 = this.props,\n prefixCls = _this$props2.prefixCls,\n className = _this$props2.className,\n style = _this$props2.style,\n name = _this$props2.name,\n id = _this$props2.id,\n type = _this$props2.type,\n disabled = _this$props2.disabled,\n readOnly = _this$props2.readOnly,\n tabIndex = _this$props2.tabIndex,\n onClick = _this$props2.onClick,\n onFocus = _this$props2.onFocus,\n onBlur = _this$props2.onBlur,\n onKeyDown = _this$props2.onKeyDown,\n onKeyPress = _this$props2.onKeyPress,\n onKeyUp = _this$props2.onKeyUp,\n autoFocus = _this$props2.autoFocus,\n value = _this$props2.value,\n required = _this$props2.required,\n others = _objectWithoutProperties(_this$props2, [\"prefixCls\", \"className\", \"style\", \"name\", \"id\", \"type\", \"disabled\", \"readOnly\", \"tabIndex\", \"onClick\", \"onFocus\", \"onBlur\", \"onKeyDown\", \"onKeyPress\", \"onKeyUp\", \"autoFocus\", \"value\", \"required\"]);\n\n var globalProps = Object.keys(others).reduce(function (prev, key) {\n if (key.substr(0, 5) === 'aria-' || key.substr(0, 5) === 'data-' || key === 'role') {\n // eslint-disable-next-line no-param-reassign\n prev[key] = others[key];\n }\n\n return prev;\n }, {});\n var checked = this.state.checked;\n var classString = classNames(prefixCls, className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-checked\"), checked), _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), disabled), _classNames));\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classString,\n style: style\n }, /*#__PURE__*/React.createElement(\"input\", _extends({\n name: name,\n id: id,\n type: type,\n required: required,\n readOnly: readOnly,\n disabled: disabled,\n tabIndex: tabIndex,\n className: \"\".concat(prefixCls, \"-input\"),\n checked: !!checked,\n onClick: onClick,\n onFocus: onFocus,\n onBlur: onBlur,\n onKeyUp: onKeyUp,\n onKeyDown: onKeyDown,\n onKeyPress: onKeyPress,\n onChange: this.handleChange,\n autoFocus: autoFocus,\n ref: this.saveInput,\n value: value\n }, globalProps)), /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-inner\")\n }));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(props, state) {\n if ('checked' in props) {\n return _objectSpread(_objectSpread({}, state), {}, {\n checked: props.checked\n });\n }\n\n return null;\n }\n }]);\n\n return Checkbox;\n}(Component);\n\nCheckbox.defaultProps = {\n prefixCls: 'rc-checkbox',\n className: '',\n style: {},\n type: 'checkbox',\n defaultChecked: false,\n onFocus: function onFocus() {},\n onBlur: function onBlur() {},\n onChange: function onChange() {},\n onKeyDown: function onKeyDown() {},\n onKeyPress: function onKeyPress() {},\n onKeyUp: function onKeyUp() {}\n};\nexport default Checkbox;","import { Keyframes } from '@ant-design/cssinjs';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport { genFocusOutline, resetComponent } from '../../style';\n// ============================== Styles ==============================\nconst antRadioEffect = new Keyframes('antRadioEffect', {\n '0%': {\n transform: 'scale(1)',\n opacity: 0.5\n },\n '100%': {\n transform: 'scale(1.6)',\n opacity: 0\n }\n});\n// styles from RadioGroup only\nconst getGroupRadioStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n const groupPrefixCls = `${componentCls}-group`;\n return {\n [groupPrefixCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n display: 'inline-block',\n fontSize: 0,\n // RTL\n [`&${groupPrefixCls}-rtl`]: {\n direction: 'rtl'\n },\n [`${antCls}-badge ${antCls}-badge-count`]: {\n zIndex: 1\n },\n [`> ${antCls}-badge:not(:first-child) > ${antCls}-button-wrapper`]: {\n borderInlineStart: 'none'\n }\n })\n };\n};\n// Styles from radio-wrapper\nconst getRadioBasicStyle = token => {\n const {\n componentCls,\n radioWrapperMarginRight,\n radioCheckedColor,\n radioSize,\n motionDurationSlow,\n motionDurationMid,\n motionEaseInOut,\n motionEaseInOutCirc,\n radioButtonBg,\n colorBorder,\n lineWidth,\n radioDotSize,\n colorBgContainerDisabled,\n colorTextDisabled,\n paddingXS,\n radioDotDisabledColor,\n lineType,\n radioDotDisabledSize,\n wireframe,\n colorWhite\n } = token;\n const radioInnerPrefixCls = `${componentCls}-inner`;\n return {\n [`${componentCls}-wrapper`]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n display: 'inline-flex',\n alignItems: 'baseline',\n marginInlineStart: 0,\n marginInlineEnd: radioWrapperMarginRight,\n cursor: 'pointer',\n // RTL\n [`&${componentCls}-wrapper-rtl`]: {\n direction: 'rtl'\n },\n '&-disabled': {\n cursor: 'not-allowed',\n color: token.colorTextDisabled\n },\n '&::after': {\n display: 'inline-block',\n width: 0,\n overflow: 'hidden',\n content: '\"\\\\a0\"'\n },\n // hashId 在 wrapper 上,只能铺平\n [`${componentCls}-checked::after`]: {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineStart: 0,\n width: '100%',\n height: '100%',\n border: `${lineWidth}px ${lineType} ${radioCheckedColor}`,\n borderRadius: '50%',\n visibility: 'hidden',\n animationName: antRadioEffect,\n animationDuration: motionDurationSlow,\n animationTimingFunction: motionEaseInOut,\n animationFillMode: 'both',\n content: '\"\"'\n },\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n position: 'relative',\n display: 'inline-block',\n outline: 'none',\n cursor: 'pointer',\n alignSelf: 'center'\n }),\n [`${componentCls}-wrapper:hover &,\n &:hover ${radioInnerPrefixCls}`]: {\n borderColor: radioCheckedColor\n },\n [`${componentCls}-input:focus-visible + ${radioInnerPrefixCls}`]: Object.assign({}, genFocusOutline(token)),\n [`${componentCls}:hover::after, ${componentCls}-wrapper:hover &::after`]: {\n visibility: 'visible'\n },\n [`${componentCls}-inner`]: {\n '&::after': {\n boxSizing: 'border-box',\n position: 'absolute',\n insetBlockStart: '50%',\n insetInlineStart: '50%',\n display: 'block',\n width: radioSize,\n height: radioSize,\n marginBlockStart: radioSize / -2,\n marginInlineStart: radioSize / -2,\n backgroundColor: wireframe ? radioCheckedColor : colorWhite,\n borderBlockStart: 0,\n borderInlineStart: 0,\n borderRadius: radioSize,\n transform: 'scale(0)',\n opacity: 0,\n transition: `all ${motionDurationSlow} ${motionEaseInOutCirc}`,\n content: '\"\"'\n },\n boxSizing: 'border-box',\n position: 'relative',\n insetBlockStart: 0,\n insetInlineStart: 0,\n display: 'block',\n width: radioSize,\n height: radioSize,\n backgroundColor: radioButtonBg,\n borderColor: colorBorder,\n borderStyle: 'solid',\n borderWidth: lineWidth,\n borderRadius: '50%',\n transition: `all ${motionDurationMid}`\n },\n [`${componentCls}-input`]: {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineEnd: 0,\n insetBlockEnd: 0,\n insetInlineStart: 0,\n zIndex: 1,\n cursor: 'pointer',\n opacity: 0\n },\n // 选中状态\n [`${componentCls}-checked`]: {\n [radioInnerPrefixCls]: {\n borderColor: radioCheckedColor,\n backgroundColor: wireframe ? radioButtonBg : radioCheckedColor,\n '&::after': {\n transform: `scale(${radioDotSize / radioSize})`,\n opacity: 1,\n transition: `all ${motionDurationSlow} ${motionEaseInOutCirc}`\n }\n }\n },\n [`${componentCls}-disabled`]: {\n cursor: 'not-allowed',\n [radioInnerPrefixCls]: {\n backgroundColor: colorBgContainerDisabled,\n borderColor: colorBorder,\n cursor: 'not-allowed',\n '&::after': {\n backgroundColor: radioDotDisabledColor\n }\n },\n [`${componentCls}-input`]: {\n cursor: 'not-allowed'\n },\n [`${componentCls}-disabled + span`]: {\n color: colorTextDisabled,\n cursor: 'not-allowed'\n },\n [`&${componentCls}-checked`]: {\n [radioInnerPrefixCls]: {\n '&::after': {\n transform: `scale(${radioDotDisabledSize / radioSize})`\n }\n }\n }\n },\n [`span${componentCls} + *`]: {\n paddingInlineStart: paddingXS,\n paddingInlineEnd: paddingXS\n }\n })\n };\n};\n// Styles from radio-button\nconst getRadioButtonStyle = token => {\n const {\n radioButtonColor,\n controlHeight,\n componentCls,\n lineWidth,\n lineType,\n colorBorder,\n motionDurationSlow,\n motionDurationMid,\n radioButtonPaddingHorizontal,\n fontSize,\n radioButtonBg,\n fontSizeLG,\n controlHeightLG,\n controlHeightSM,\n paddingXS,\n borderRadius,\n borderRadiusSM,\n borderRadiusLG,\n radioCheckedColor,\n radioButtonCheckedBg,\n radioButtonHoverColor,\n radioButtonActiveColor,\n radioSolidCheckedColor,\n colorTextDisabled,\n colorBgContainerDisabled,\n radioDisabledButtonCheckedColor,\n radioDisabledButtonCheckedBg\n } = token;\n return {\n [`${componentCls}-button-wrapper`]: {\n position: 'relative',\n display: 'inline-block',\n height: controlHeight,\n margin: 0,\n paddingInline: radioButtonPaddingHorizontal,\n paddingBlock: 0,\n color: radioButtonColor,\n fontSize,\n lineHeight: `${controlHeight - lineWidth * 2}px`,\n background: radioButtonBg,\n border: `${lineWidth}px ${lineType} ${colorBorder}`,\n // strange align fix for chrome but works\n // https://gw.alipayobjects.com/zos/rmsportal/VFTfKXJuogBAXcvfAUWJ.gif\n borderBlockStartWidth: lineWidth + 0.02,\n borderInlineStartWidth: 0,\n borderInlineEndWidth: lineWidth,\n cursor: 'pointer',\n transition: [`color ${motionDurationMid}`, `background ${motionDurationMid}`, `border-color ${motionDurationMid}`, `box-shadow ${motionDurationMid}`].join(','),\n a: {\n color: radioButtonColor\n },\n [`> ${componentCls}-button`]: {\n position: 'absolute',\n insetBlockStart: 0,\n insetInlineStart: 0,\n zIndex: -1,\n width: '100%',\n height: '100%'\n },\n '&:not(:first-child)': {\n '&::before': {\n position: 'absolute',\n insetBlockStart: -lineWidth,\n insetInlineStart: -lineWidth,\n display: 'block',\n boxSizing: 'content-box',\n width: 1,\n height: '100%',\n paddingBlock: lineWidth,\n paddingInline: 0,\n backgroundColor: colorBorder,\n transition: `background-color ${motionDurationSlow}`,\n content: '\"\"'\n }\n },\n '&:first-child': {\n borderInlineStart: `${lineWidth}px ${lineType} ${colorBorder}`,\n borderStartStartRadius: borderRadius,\n borderEndStartRadius: borderRadius\n },\n '&:last-child': {\n borderStartEndRadius: borderRadius,\n borderEndEndRadius: borderRadius\n },\n '&:first-child:last-child': {\n borderRadius\n },\n [`${componentCls}-group-large &`]: {\n height: controlHeightLG,\n fontSize: fontSizeLG,\n lineHeight: `${controlHeightLG - lineWidth * 2}px`,\n '&:first-child': {\n borderStartStartRadius: borderRadiusLG,\n borderEndStartRadius: borderRadiusLG\n },\n '&:last-child': {\n borderStartEndRadius: borderRadiusLG,\n borderEndEndRadius: borderRadiusLG\n }\n },\n [`${componentCls}-group-small &`]: {\n height: controlHeightSM,\n paddingInline: paddingXS - lineWidth,\n paddingBlock: 0,\n lineHeight: `${controlHeightSM - lineWidth * 2}px`,\n '&:first-child': {\n borderStartStartRadius: borderRadiusSM,\n borderEndStartRadius: borderRadiusSM\n },\n '&:last-child': {\n borderStartEndRadius: borderRadiusSM,\n borderEndEndRadius: borderRadiusSM\n }\n },\n '&:hover': {\n position: 'relative',\n color: radioCheckedColor\n },\n '&:has(:focus-visible)': Object.assign({}, genFocusOutline(token)),\n [`${componentCls}-inner, input[type='checkbox'], input[type='radio']`]: {\n width: 0,\n height: 0,\n opacity: 0,\n pointerEvents: 'none'\n },\n [`&-checked:not(${componentCls}-button-wrapper-disabled)`]: {\n zIndex: 1,\n color: radioCheckedColor,\n background: radioButtonCheckedBg,\n borderColor: radioCheckedColor,\n '&::before': {\n backgroundColor: radioCheckedColor\n },\n '&:first-child': {\n borderColor: radioCheckedColor\n },\n '&:hover': {\n color: radioButtonHoverColor,\n borderColor: radioButtonHoverColor,\n '&::before': {\n backgroundColor: radioButtonHoverColor\n }\n },\n '&:active': {\n color: radioButtonActiveColor,\n borderColor: radioButtonActiveColor,\n '&::before': {\n backgroundColor: radioButtonActiveColor\n }\n }\n },\n [`${componentCls}-group-solid &-checked:not(${componentCls}-button-wrapper-disabled)`]: {\n color: radioSolidCheckedColor,\n background: radioCheckedColor,\n borderColor: radioCheckedColor,\n '&:hover': {\n color: radioSolidCheckedColor,\n background: radioButtonHoverColor,\n borderColor: radioButtonHoverColor\n },\n '&:active': {\n color: radioSolidCheckedColor,\n background: radioButtonActiveColor,\n borderColor: radioButtonActiveColor\n }\n },\n '&-disabled': {\n color: colorTextDisabled,\n backgroundColor: colorBgContainerDisabled,\n borderColor: colorBorder,\n cursor: 'not-allowed',\n '&:first-child, &:hover': {\n color: colorTextDisabled,\n backgroundColor: colorBgContainerDisabled,\n borderColor: colorBorder\n }\n },\n [`&-disabled${componentCls}-button-wrapper-checked`]: {\n color: radioDisabledButtonCheckedColor,\n backgroundColor: radioDisabledButtonCheckedBg,\n borderColor: colorBorder,\n boxShadow: 'none'\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Radio', token => {\n const {\n padding,\n lineWidth,\n controlItemBgActiveDisabled,\n colorTextDisabled,\n colorBgContainer,\n fontSizeLG,\n controlOutline,\n colorPrimaryHover,\n colorPrimaryActive,\n colorText,\n colorPrimary,\n marginXS,\n controlOutlineWidth,\n colorTextLightSolid,\n wireframe\n } = token;\n // Radio\n const radioFocusShadow = `0 0 0 ${controlOutlineWidth}px ${controlOutline}`;\n const radioButtonFocusShadow = radioFocusShadow;\n const radioSize = fontSizeLG;\n const dotPadding = 4; // Fixed value\n const radioDotDisabledSize = radioSize - dotPadding * 2;\n const radioDotSize = wireframe ? radioDotDisabledSize : radioSize - (dotPadding + lineWidth) * 2;\n const radioCheckedColor = colorPrimary;\n // Radio buttons\n const radioButtonColor = colorText;\n const radioButtonHoverColor = colorPrimaryHover;\n const radioButtonActiveColor = colorPrimaryActive;\n const radioButtonPaddingHorizontal = padding - lineWidth;\n const radioDisabledButtonCheckedColor = colorTextDisabled;\n const radioWrapperMarginRight = marginXS;\n const radioToken = mergeToken(token, {\n radioFocusShadow,\n radioButtonFocusShadow,\n radioSize,\n radioDotSize,\n radioDotDisabledSize,\n radioCheckedColor,\n radioDotDisabledColor: colorTextDisabled,\n radioSolidCheckedColor: colorTextLightSolid,\n radioButtonBg: colorBgContainer,\n radioButtonCheckedBg: colorBgContainer,\n radioButtonColor,\n radioButtonHoverColor,\n radioButtonActiveColor,\n radioButtonPaddingHorizontal,\n radioDisabledButtonCheckedBg: controlItemBgActiveDisabled,\n radioDisabledButtonCheckedColor,\n radioWrapperMarginRight\n });\n return [getGroupRadioStyle(radioToken), getRadioBasicStyle(radioToken), getRadioButtonStyle(radioToken)];\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport RcCheckbox from 'rc-checkbox';\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport { FormItemInputContext } from '../form/context';\nimport warning from '../_util/warning';\nimport RadioGroupContext, { RadioOptionTypeContext } from './context';\nimport useStyle from './style';\nconst InternalRadio = (props, ref) => {\n var _a, _b;\n const groupContext = React.useContext(RadioGroupContext);\n const radioOptionTypeContext = React.useContext(RadioOptionTypeContext);\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const innerRef = React.useRef();\n const mergedRef = composeRef(ref, innerRef);\n const {\n isFormItemInput\n } = React.useContext(FormItemInputContext);\n process.env.NODE_ENV !== \"production\" ? warning(!('optionType' in props), 'Radio', '`optionType` is only support in Radio.Group.') : void 0;\n const onChange = e => {\n var _a, _b;\n (_a = props.onChange) === null || _a === void 0 ? void 0 : _a.call(props, e);\n (_b = groupContext === null || groupContext === void 0 ? void 0 : groupContext.onChange) === null || _b === void 0 ? void 0 : _b.call(groupContext, e);\n };\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n children,\n style\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"className\", \"rootClassName\", \"children\", \"style\"]);\n const radioPrefixCls = getPrefixCls('radio', customizePrefixCls);\n const prefixCls = ((groupContext === null || groupContext === void 0 ? void 0 : groupContext.optionType) || radioOptionTypeContext) === 'button' ? `${radioPrefixCls}-button` : radioPrefixCls;\n // Style\n const [wrapSSR, hashId] = useStyle(radioPrefixCls);\n const radioProps = Object.assign({}, restProps);\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n if (groupContext) {\n radioProps.name = groupContext.name;\n radioProps.onChange = onChange;\n radioProps.checked = props.value === groupContext.value;\n radioProps.disabled = (_a = radioProps.disabled) !== null && _a !== void 0 ? _a : groupContext.disabled;\n }\n radioProps.disabled = (_b = radioProps.disabled) !== null && _b !== void 0 ? _b : disabled;\n const wrapperClassString = classNames(`${prefixCls}-wrapper`, {\n [`${prefixCls}-wrapper-checked`]: radioProps.checked,\n [`${prefixCls}-wrapper-disabled`]: radioProps.disabled,\n [`${prefixCls}-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-wrapper-in-form-item`]: isFormItemInput\n }, className, rootClassName, hashId);\n return wrapSSR(\n /*#__PURE__*/\n // eslint-disable-next-line jsx-a11y/label-has-associated-control\n React.createElement(\"label\", {\n className: wrapperClassString,\n style: style,\n onMouseEnter: props.onMouseEnter,\n onMouseLeave: props.onMouseLeave\n }, /*#__PURE__*/React.createElement(RcCheckbox, Object.assign({}, radioProps, {\n type: \"radio\",\n prefixCls: prefixCls,\n ref: mergedRef\n })), children !== undefined ? /*#__PURE__*/React.createElement(\"span\", null, children) : null));\n};\nconst Radio = /*#__PURE__*/React.forwardRef(InternalRadio);\nif (process.env.NODE_ENV !== 'production') {\n Radio.displayName = 'Radio';\n}\nexport default Radio;","import classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport SizeContext from '../config-provider/SizeContext';\nimport getDataOrAriaProps from '../_util/getDataOrAriaProps';\nimport { RadioGroupContextProvider } from './context';\nimport Radio from './radio';\nimport useStyle from './style';\nconst RadioGroup = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const size = React.useContext(SizeContext);\n const [value, setValue] = useMergedState(props.defaultValue, {\n value: props.value\n });\n const onRadioChange = ev => {\n const lastValue = value;\n const val = ev.target.value;\n if (!('value' in props)) {\n setValue(val);\n }\n const {\n onChange\n } = props;\n if (onChange && val !== lastValue) {\n onChange(ev);\n }\n };\n const {\n prefixCls: customizePrefixCls,\n className,\n rootClassName,\n options,\n buttonStyle = 'outline',\n disabled,\n children,\n size: customizeSize,\n style,\n id,\n onMouseEnter,\n onMouseLeave,\n onFocus,\n onBlur\n } = props;\n const prefixCls = getPrefixCls('radio', customizePrefixCls);\n const groupPrefixCls = `${prefixCls}-group`;\n // Style\n const [wrapSSR, hashId] = useStyle(prefixCls);\n let childrenToRender = children;\n // 如果存在 options, 优先使用\n if (options && options.length > 0) {\n childrenToRender = options.map(option => {\n if (typeof option === 'string' || typeof option === 'number') {\n // 此处类型自动推导为 string\n return /*#__PURE__*/React.createElement(Radio, {\n key: option.toString(),\n prefixCls: prefixCls,\n disabled: disabled,\n value: option,\n checked: value === option\n }, option);\n }\n // 此处类型自动推导为 { label: string value: string }\n return /*#__PURE__*/React.createElement(Radio, {\n key: `radio-group-value-options-${option.value}`,\n prefixCls: prefixCls,\n disabled: option.disabled || disabled,\n value: option.value,\n checked: value === option.value,\n style: option.style\n }, option.label);\n });\n }\n const mergedSize = customizeSize || size;\n const classString = classNames(groupPrefixCls, `${groupPrefixCls}-${buttonStyle}`, {\n [`${groupPrefixCls}-${mergedSize}`]: mergedSize,\n [`${groupPrefixCls}-rtl`]: direction === 'rtl'\n }, className, rootClassName, hashId);\n return wrapSSR( /*#__PURE__*/React.createElement(\"div\", Object.assign({}, getDataOrAriaProps(props), {\n className: classString,\n style: style,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onFocus: onFocus,\n onBlur: onBlur,\n id: id,\n ref: ref\n }), /*#__PURE__*/React.createElement(RadioGroupContextProvider, {\n value: {\n onChange: onRadioChange,\n value,\n disabled: props.disabled,\n name: props.name,\n optionType: props.optionType\n }\n }, childrenToRender)));\n});\nexport default /*#__PURE__*/React.memo(RadioGroup);","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { RadioOptionTypeContextProvider } from './context';\nimport Radio from './radio';\nconst RadioButton = (props, ref) => {\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls\n } = props,\n radioProps = __rest(props, [\"prefixCls\"]);\n const prefixCls = getPrefixCls('radio', customizePrefixCls);\n return /*#__PURE__*/React.createElement(RadioOptionTypeContextProvider, {\n value: \"button\"\n }, /*#__PURE__*/React.createElement(Radio, Object.assign({\n prefixCls: prefixCls\n }, radioProps, {\n type: \"radio\",\n ref: ref\n })));\n};\nexport default /*#__PURE__*/React.forwardRef(RadioButton);","import Group from './group';\nimport InternalRadio from './radio';\nimport Button from './radioButton';\nexport { Button, Group };\nconst Radio = InternalRadio;\nRadio.Button = Button;\nRadio.Group = Group;\nRadio.__ANT_RADIO = true;\nexport default Radio;","import { clearFix, resetComponent } from '../../style';\nimport { genCompactItemStyle } from '../../style/compact-item';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nexport const genPlaceholderStyle = color => ({\n // Firefox\n '&::-moz-placeholder': {\n opacity: 1\n },\n '&::placeholder': {\n color,\n userSelect: 'none' // https://github.com/ant-design/ant-design/pull/32639\n },\n\n '&:placeholder-shown': {\n textOverflow: 'ellipsis'\n }\n});\nexport const genHoverStyle = token => ({\n borderColor: token.inputBorderHoverColor,\n borderInlineEndWidth: token.lineWidth\n});\nexport const genActiveStyle = token => ({\n borderColor: token.inputBorderHoverColor,\n boxShadow: `0 0 0 ${token.controlOutlineWidth}px ${token.controlOutline}`,\n borderInlineEndWidth: token.lineWidth,\n outline: 0\n});\nexport const genDisabledStyle = token => ({\n color: token.colorTextDisabled,\n backgroundColor: token.colorBgContainerDisabled,\n borderColor: token.colorBorder,\n boxShadow: 'none',\n cursor: 'not-allowed',\n opacity: 1,\n '&:hover': Object.assign({}, genHoverStyle(mergeToken(token, {\n inputBorderHoverColor: token.colorBorder\n })))\n});\nconst genInputLargeStyle = token => {\n const {\n inputPaddingVerticalLG,\n fontSizeLG,\n lineHeightLG,\n borderRadiusLG,\n inputPaddingHorizontalLG\n } = token;\n return {\n padding: `${inputPaddingVerticalLG}px ${inputPaddingHorizontalLG}px`,\n fontSize: fontSizeLG,\n lineHeight: lineHeightLG,\n borderRadius: borderRadiusLG\n };\n};\nexport const genInputSmallStyle = token => ({\n padding: `${token.inputPaddingVerticalSM}px ${token.controlPaddingHorizontalSM - 1}px`,\n borderRadius: token.borderRadiusSM\n});\nexport const genStatusStyle = (token, parentCls) => {\n const {\n componentCls,\n colorError,\n colorWarning,\n colorErrorOutline,\n colorWarningOutline,\n colorErrorBorderHover,\n colorWarningBorderHover\n } = token;\n return {\n [`&-status-error:not(${parentCls}-disabled):not(${parentCls}-borderless)${parentCls}`]: {\n borderColor: colorError,\n '&:hover': {\n borderColor: colorErrorBorderHover\n },\n '&:focus, &-focused': Object.assign({}, genActiveStyle(mergeToken(token, {\n inputBorderActiveColor: colorError,\n inputBorderHoverColor: colorError,\n controlOutline: colorErrorOutline\n }))),\n [`${componentCls}-prefix, ${componentCls}-suffix`]: {\n color: colorError\n }\n },\n [`&-status-warning:not(${parentCls}-disabled):not(${parentCls}-borderless)${parentCls}`]: {\n borderColor: colorWarning,\n '&:hover': {\n borderColor: colorWarningBorderHover\n },\n '&:focus, &-focused': Object.assign({}, genActiveStyle(mergeToken(token, {\n inputBorderActiveColor: colorWarning,\n inputBorderHoverColor: colorWarning,\n controlOutline: colorWarningOutline\n }))),\n [`${componentCls}-prefix, ${componentCls}-suffix`]: {\n color: colorWarning\n }\n }\n };\n};\nexport const genBasicInputStyle = token => Object.assign(Object.assign({\n position: 'relative',\n display: 'inline-block',\n width: '100%',\n minWidth: 0,\n padding: `${token.inputPaddingVertical}px ${token.inputPaddingHorizontal}px`,\n color: token.colorText,\n fontSize: token.fontSize,\n lineHeight: token.lineHeight,\n backgroundColor: token.colorBgContainer,\n backgroundImage: 'none',\n borderWidth: token.lineWidth,\n borderStyle: token.lineType,\n borderColor: token.colorBorder,\n borderRadius: token.borderRadius,\n transition: `all ${token.motionDurationMid}`\n}, genPlaceholderStyle(token.colorTextPlaceholder)), {\n '&:hover': Object.assign({}, genHoverStyle(token)),\n '&:focus, &-focused': Object.assign({}, genActiveStyle(token)),\n '&-disabled, &[disabled]': Object.assign({}, genDisabledStyle(token)),\n '&-borderless': {\n '&, &:hover, &:focus, &-focused, &-disabled, &[disabled]': {\n backgroundColor: 'transparent',\n border: 'none',\n boxShadow: 'none'\n }\n },\n // Reset height for `textarea`s\n 'textarea&': {\n maxWidth: '100%',\n height: 'auto',\n minHeight: token.controlHeight,\n lineHeight: token.lineHeight,\n verticalAlign: 'bottom',\n transition: `all ${token.motionDurationSlow}, height 0s`,\n resize: 'vertical'\n },\n // Size\n '&-lg': Object.assign({}, genInputLargeStyle(token)),\n '&-sm': Object.assign({}, genInputSmallStyle(token)),\n // RTL\n '&-rtl': {\n direction: 'rtl'\n },\n '&-textarea-rtl': {\n direction: 'rtl'\n }\n});\nexport const genInputGroupStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n return {\n position: 'relative',\n display: 'table',\n width: '100%',\n borderCollapse: 'separate',\n borderSpacing: 0,\n // Undo padding and float of grid classes\n [`&[class*='col-']`]: {\n paddingInlineEnd: token.paddingXS,\n '&:last-child': {\n paddingInlineEnd: 0\n }\n },\n // Sizing options\n [`&-lg ${componentCls}, &-lg > ${componentCls}-group-addon`]: Object.assign({}, genInputLargeStyle(token)),\n [`&-sm ${componentCls}, &-sm > ${componentCls}-group-addon`]: Object.assign({}, genInputSmallStyle(token)),\n // Fix https://github.com/ant-design/ant-design/issues/5754\n [`&-lg ${antCls}-select-single ${antCls}-select-selector`]: {\n height: token.controlHeightLG\n },\n [`&-sm ${antCls}-select-single ${antCls}-select-selector`]: {\n height: token.controlHeightSM\n },\n [`> ${componentCls}`]: {\n display: 'table-cell',\n '&:not(:first-child):not(:last-child)': {\n borderRadius: 0\n }\n },\n [`${componentCls}-group`]: {\n [`&-addon, &-wrap`]: {\n display: 'table-cell',\n width: 1,\n whiteSpace: 'nowrap',\n verticalAlign: 'middle',\n '&:not(:first-child):not(:last-child)': {\n borderRadius: 0\n }\n },\n '&-wrap > *': {\n display: 'block !important'\n },\n '&-addon': {\n position: 'relative',\n padding: `0 ${token.inputPaddingHorizontal}px`,\n color: token.colorText,\n fontWeight: 'normal',\n fontSize: token.fontSize,\n textAlign: 'center',\n backgroundColor: token.colorFillAlter,\n border: `${token.lineWidth}px ${token.lineType} ${token.colorBorder}`,\n borderRadius: token.borderRadius,\n transition: `all ${token.motionDurationSlow}`,\n lineHeight: 1,\n // Reset Select's style in addon\n [`${antCls}-select`]: {\n margin: `-${token.inputPaddingVertical + 1}px -${token.inputPaddingHorizontal}px`,\n [`&${antCls}-select-single:not(${antCls}-select-customize-input)`]: {\n [`${antCls}-select-selector`]: {\n backgroundColor: 'inherit',\n border: `${token.lineWidth}px ${token.lineType} transparent`,\n boxShadow: 'none'\n }\n },\n '&-open, &-focused': {\n [`${antCls}-select-selector`]: {\n color: token.colorPrimary\n }\n }\n },\n // https://github.com/ant-design/ant-design/issues/31333\n [`${antCls}-cascader-picker`]: {\n margin: `-9px -${token.inputPaddingHorizontal}px`,\n backgroundColor: 'transparent',\n [`${antCls}-cascader-input`]: {\n textAlign: 'start',\n border: 0,\n boxShadow: 'none'\n }\n }\n },\n '&-addon:first-child': {\n borderInlineEnd: 0\n },\n '&-addon:last-child': {\n borderInlineStart: 0\n }\n },\n [`${componentCls}`]: {\n width: '100%',\n marginBottom: 0,\n textAlign: 'inherit',\n '&:focus': {\n zIndex: 1,\n borderInlineEndWidth: 1\n },\n '&:hover': {\n zIndex: 1,\n borderInlineEndWidth: 1,\n [`${componentCls}-search-with-button &`]: {\n zIndex: 0\n }\n }\n },\n // Reset rounded corners\n [`> ${componentCls}:first-child, ${componentCls}-group-addon:first-child`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0,\n // Reset Select's style in addon\n [`${antCls}-select ${antCls}-select-selector`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0\n }\n },\n [`> ${componentCls}-affix-wrapper`]: {\n [`&:not(:first-child) ${componentCls}`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n },\n [`&:not(:last-child) ${componentCls}`]: {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0\n }\n },\n [`> ${componentCls}:last-child, ${componentCls}-group-addon:last-child`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0,\n // Reset Select's style in addon\n [`${antCls}-select ${antCls}-select-selector`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n }\n },\n [`${componentCls}-affix-wrapper`]: {\n '&:not(:last-child)': {\n borderStartEndRadius: 0,\n borderEndEndRadius: 0,\n [`${componentCls}-search &`]: {\n borderStartStartRadius: token.borderRadius,\n borderEndStartRadius: token.borderRadius\n }\n },\n [`&:not(:first-child), ${componentCls}-search &:not(:first-child)`]: {\n borderStartStartRadius: 0,\n borderEndStartRadius: 0\n }\n },\n [`&${componentCls}-group-compact`]: Object.assign(Object.assign({\n display: 'block'\n }, clearFix()), {\n [`${componentCls}-group-addon, ${componentCls}-group-wrap, > ${componentCls}`]: {\n '&:not(:first-child):not(:last-child)': {\n borderInlineEndWidth: token.lineWidth,\n '&:hover': {\n zIndex: 1\n },\n '&:focus': {\n zIndex: 1\n }\n }\n },\n '& > *': {\n display: 'inline-block',\n float: 'none',\n verticalAlign: 'top',\n borderRadius: 0\n },\n [`& > ${componentCls}-affix-wrapper`]: {\n display: 'inline-flex'\n },\n [`& > ${antCls}-picker-range`]: {\n display: 'inline-flex'\n },\n '& > *:not(:last-child)': {\n marginInlineEnd: -token.lineWidth,\n borderInlineEndWidth: token.lineWidth\n },\n // Undo float for .ant-input-group .ant-input\n [`${componentCls}`]: {\n float: 'none'\n },\n // reset border for Select, DatePicker, AutoComplete, Cascader, Mention, TimePicker, Input\n [`& > ${antCls}-select > ${antCls}-select-selector,\n & > ${antCls}-select-auto-complete ${componentCls},\n & > ${antCls}-cascader-picker ${componentCls},\n & > ${componentCls}-group-wrapper ${componentCls}`]: {\n borderInlineEndWidth: token.lineWidth,\n borderRadius: 0,\n '&:hover': {\n zIndex: 1\n },\n '&:focus': {\n zIndex: 1\n }\n },\n [`& > ${antCls}-select-focused`]: {\n zIndex: 1\n },\n // update z-index for arrow icon\n [`& > ${antCls}-select > ${antCls}-select-arrow`]: {\n zIndex: 1 // https://github.com/ant-design/ant-design/issues/20371\n },\n [`& > *:first-child,\n & > ${antCls}-select:first-child > ${antCls}-select-selector,\n & > ${antCls}-select-auto-complete:first-child ${componentCls},\n & > ${antCls}-cascader-picker:first-child ${componentCls}`]: {\n borderStartStartRadius: token.borderRadius,\n borderEndStartRadius: token.borderRadius\n },\n [`& > *:last-child,\n & > ${antCls}-select:last-child > ${antCls}-select-selector,\n & > ${antCls}-cascader-picker:last-child ${componentCls},\n & > ${antCls}-cascader-picker-focused:last-child ${componentCls}`]: {\n borderInlineEndWidth: token.lineWidth,\n borderStartEndRadius: token.borderRadius,\n borderEndEndRadius: token.borderRadius\n },\n // https://github.com/ant-design/ant-design/issues/12493\n [`& > ${antCls}-select-auto-complete ${componentCls}`]: {\n verticalAlign: 'top'\n },\n [`${componentCls}-group-wrapper + ${componentCls}-group-wrapper`]: {\n marginInlineStart: -token.lineWidth,\n [`${componentCls}-affix-wrapper`]: {\n borderRadius: 0\n }\n },\n [`${componentCls}-group-wrapper:not(:last-child)`]: {\n [`&${componentCls}-search > ${componentCls}-group`]: {\n [`& > ${componentCls}-group-addon > ${componentCls}-search-button`]: {\n borderRadius: 0\n },\n [`& > ${componentCls}`]: {\n borderStartStartRadius: token.borderRadius,\n borderStartEndRadius: 0,\n borderEndEndRadius: 0,\n borderEndStartRadius: token.borderRadius\n }\n }\n }\n })\n };\n};\nconst genInputStyle = token => {\n const {\n componentCls,\n controlHeightSM,\n lineWidth\n } = token;\n const FIXED_CHROME_COLOR_HEIGHT = 16;\n const colorSmallPadding = (controlHeightSM - lineWidth * 2 - FIXED_CHROME_COLOR_HEIGHT) / 2;\n return {\n [componentCls]: Object.assign(Object.assign(Object.assign(Object.assign({}, resetComponent(token)), genBasicInputStyle(token)), genStatusStyle(token, componentCls)), {\n '&[type=\"color\"]': {\n height: token.controlHeight,\n [`&${componentCls}-lg`]: {\n height: token.controlHeightLG\n },\n [`&${componentCls}-sm`]: {\n height: controlHeightSM,\n paddingTop: colorSmallPadding,\n paddingBottom: colorSmallPadding\n }\n },\n '&[type=\"search\"]::-webkit-search-cancel-button, &[type=\"search\"]::-webkit-search-decoration': {\n '-webkit-appearance': 'none'\n }\n })\n };\n};\nconst genAllowClearStyle = token => {\n const {\n componentCls\n } = token;\n return {\n // ========================= Input =========================\n [`${componentCls}-clear-icon`]: {\n margin: 0,\n color: token.colorTextQuaternary,\n fontSize: token.fontSizeIcon,\n verticalAlign: -1,\n // https://github.com/ant-design/ant-design/pull/18151\n // https://codesandbox.io/s/wizardly-sun-u10br\n cursor: 'pointer',\n transition: `color ${token.motionDurationSlow}`,\n '&:hover': {\n color: token.colorTextTertiary\n },\n '&:active': {\n color: token.colorText\n },\n '&-hidden': {\n visibility: 'hidden'\n },\n '&-has-suffix': {\n margin: `0 ${token.inputAffixPadding}px`\n }\n }\n };\n};\nconst genAffixStyle = token => {\n const {\n componentCls,\n inputAffixPadding,\n colorTextDescription,\n motionDurationSlow,\n colorIcon,\n colorIconHover,\n iconCls\n } = token;\n return {\n [`${componentCls}-affix-wrapper`]: Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({}, genBasicInputStyle(token)), {\n display: 'inline-flex',\n [`&:not(${componentCls}-affix-wrapper-disabled):hover`]: Object.assign(Object.assign({}, genHoverStyle(token)), {\n zIndex: 1,\n [`${componentCls}-search-with-button &`]: {\n zIndex: 0\n }\n }),\n '&-focused, &:focus': {\n zIndex: 1\n },\n '&-disabled': {\n [`${componentCls}[disabled]`]: {\n background: 'transparent'\n }\n },\n [`> input${componentCls}`]: {\n padding: 0,\n fontSize: 'inherit',\n border: 'none',\n borderRadius: 0,\n outline: 'none',\n '&:focus': {\n boxShadow: 'none !important'\n }\n },\n '&::before': {\n width: 0,\n visibility: 'hidden',\n content: '\"\\\\a0\"'\n },\n [`${componentCls}`]: {\n '&-prefix, &-suffix': {\n display: 'flex',\n flex: 'none',\n alignItems: 'center',\n '> *:not(:last-child)': {\n marginInlineEnd: token.paddingXS\n }\n },\n '&-show-count-suffix': {\n color: colorTextDescription\n },\n '&-show-count-has-suffix': {\n marginInlineEnd: token.paddingXXS\n },\n '&-prefix': {\n marginInlineEnd: inputAffixPadding\n },\n '&-suffix': {\n marginInlineStart: inputAffixPadding\n }\n }\n }), genAllowClearStyle(token)), {\n // password\n [`${iconCls}${componentCls}-password-icon`]: {\n color: colorIcon,\n cursor: 'pointer',\n transition: `all ${motionDurationSlow}`,\n '&:hover': {\n color: colorIconHover\n }\n }\n }), genStatusStyle(token, `${componentCls}-affix-wrapper`))\n };\n};\nconst genGroupStyle = token => {\n const {\n componentCls,\n colorError,\n colorWarning,\n borderRadiusLG,\n borderRadiusSM\n } = token;\n return {\n [`${componentCls}-group`]: Object.assign(Object.assign(Object.assign({}, resetComponent(token)), genInputGroupStyle(token)), {\n '&-rtl': {\n direction: 'rtl'\n },\n '&-wrapper': {\n display: 'inline-block',\n width: '100%',\n textAlign: 'start',\n verticalAlign: 'top',\n '&-rtl': {\n direction: 'rtl'\n },\n // Size\n '&-lg': {\n [`${componentCls}-group-addon`]: {\n borderRadius: borderRadiusLG\n }\n },\n '&-sm': {\n [`${componentCls}-group-addon`]: {\n borderRadius: borderRadiusSM\n }\n },\n // Status\n '&-status-error': {\n [`${componentCls}-group-addon`]: {\n color: colorError,\n borderColor: colorError\n }\n },\n '&-status-warning': {\n [`${componentCls}-group-addon`]: {\n color: colorWarning,\n borderColor: colorWarning\n }\n },\n '&-disabled': {\n [`${componentCls}-group-addon`]: Object.assign({}, genDisabledStyle(token))\n }\n }\n })\n };\n};\nconst genSearchInputStyle = token => {\n const {\n componentCls,\n antCls\n } = token;\n const searchPrefixCls = `${componentCls}-search`;\n return {\n [searchPrefixCls]: {\n [`${componentCls}`]: {\n '&:hover, &:focus': {\n borderColor: token.colorPrimaryHover,\n [`+ ${componentCls}-group-addon ${searchPrefixCls}-button:not(${antCls}-btn-primary)`]: {\n borderInlineStartColor: token.colorPrimaryHover\n }\n }\n },\n [`${componentCls}-affix-wrapper`]: {\n borderRadius: 0\n },\n // fix slight height diff in Firefox:\n // https://ant.design/components/auto-complete-cn/#components-auto-complete-demo-certain-category\n [`${componentCls}-lg`]: {\n lineHeight: token.lineHeightLG - 0.0002\n },\n [`> ${componentCls}-group`]: {\n [`> ${componentCls}-group-addon:last-child`]: {\n insetInlineStart: -1,\n padding: 0,\n border: 0,\n [`${searchPrefixCls}-button`]: {\n paddingTop: 0,\n paddingBottom: 0,\n borderStartStartRadius: 0,\n borderStartEndRadius: token.borderRadius,\n borderEndEndRadius: token.borderRadius,\n borderEndStartRadius: 0\n },\n [`${searchPrefixCls}-button:not(${antCls}-btn-primary)`]: {\n color: token.colorTextDescription,\n '&:hover': {\n color: token.colorPrimaryHover\n },\n '&:active': {\n color: token.colorPrimaryActive\n },\n [`&${antCls}-btn-loading::before`]: {\n insetInlineStart: 0,\n insetInlineEnd: 0,\n insetBlockStart: 0,\n insetBlockEnd: 0\n }\n }\n }\n },\n [`${searchPrefixCls}-button`]: {\n height: token.controlHeight,\n '&:hover, &:focus': {\n zIndex: 1\n }\n },\n [`&-large ${searchPrefixCls}-button`]: {\n height: token.controlHeightLG\n },\n [`&-small ${searchPrefixCls}-button`]: {\n height: token.controlHeightSM\n },\n '&-rtl': {\n direction: 'rtl'\n },\n // ===================== Compact Item Customized Styles =====================\n [`&${componentCls}-compact-item`]: {\n [`&:not(${componentCls}-compact-last-item)`]: {\n [`${componentCls}-group-addon`]: {\n [`${componentCls}-search-button`]: {\n marginInlineEnd: -token.lineWidth,\n borderRadius: 0\n }\n }\n },\n [`&:not(${componentCls}-compact-first-item)`]: {\n [`${componentCls},${componentCls}-affix-wrapper`]: {\n borderRadius: 0\n }\n },\n [`> ${componentCls}-group-addon ${componentCls}-search-button,\n > ${componentCls},\n ${componentCls}-affix-wrapper`]: {\n '&:hover,&:focus,&:active': {\n zIndex: 2\n }\n },\n [`> ${componentCls}-affix-wrapper-focused`]: {\n zIndex: 2\n }\n }\n }\n };\n};\nexport function initInputToken(token) {\n // @ts-ignore\n return mergeToken(token, {\n inputAffixPadding: token.paddingXXS,\n inputPaddingVertical: Math.max(Math.round((token.controlHeight - token.fontSize * token.lineHeight) / 2 * 10) / 10 - token.lineWidth, 3),\n inputPaddingVerticalLG: Math.ceil((token.controlHeightLG - token.fontSizeLG * token.lineHeightLG) / 2 * 10) / 10 - token.lineWidth,\n inputPaddingVerticalSM: Math.max(Math.round((token.controlHeightSM - token.fontSize * token.lineHeight) / 2 * 10) / 10 - token.lineWidth, 0),\n inputPaddingHorizontal: token.paddingSM - token.lineWidth,\n inputPaddingHorizontalSM: token.paddingXS - token.lineWidth,\n inputPaddingHorizontalLG: token.controlPaddingHorizontal - token.lineWidth,\n inputBorderHoverColor: token.colorPrimaryHover,\n inputBorderActiveColor: token.colorPrimaryHover\n });\n}\nconst genTextAreaStyle = token => {\n const {\n componentCls,\n paddingLG\n } = token;\n const textareaPrefixCls = `${componentCls}-textarea`;\n return {\n [textareaPrefixCls]: {\n position: 'relative',\n '&-show-count': {\n // https://github.com/ant-design/ant-design/issues/33049\n [`> ${componentCls}`]: {\n height: '100%'\n },\n [`${componentCls}-data-count`]: {\n color: token.colorTextDescription,\n whiteSpace: 'nowrap',\n pointerEvents: 'none',\n float: 'right',\n marginBottom: -token.fontSize * token.lineHeight\n },\n '&-rtl': {\n [`${componentCls}-data-count`]: {\n float: 'left'\n }\n }\n },\n [`&-affix-wrapper${textareaPrefixCls}-has-feedback`]: {\n [`${componentCls}`]: {\n paddingInlineEnd: paddingLG\n }\n },\n [`&-affix-wrapper${componentCls}-affix-wrapper`]: {\n padding: 0,\n [`> textarea${componentCls}`]: {\n fontSize: 'inherit',\n border: 'none',\n outline: 'none',\n '&:focus': {\n boxShadow: 'none !important'\n }\n },\n [`${componentCls}-suffix`]: {\n margin: 0,\n '> *:not(:last-child)': {\n marginInline: 0\n },\n // Clear Icon\n [`${componentCls}-clear-icon`]: {\n position: 'absolute',\n insetInlineEnd: token.paddingXS,\n insetBlockStart: token.paddingXS\n },\n // Feedback Icon\n [`${textareaPrefixCls}-suffix`]: {\n position: 'absolute',\n top: 0,\n insetInlineEnd: token.inputPaddingHorizontal,\n bottom: 0,\n zIndex: 1,\n display: 'inline-flex',\n alignItems: 'center',\n margin: 'auto',\n pointerEvents: 'none'\n }\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Input', token => {\n const inputToken = initInputToken(token);\n return [genInputStyle(inputToken), genTextAreaStyle(inputToken), genAffixStyle(inputToken), genGroupStyle(inputToken), genSearchInputStyle(inputToken),\n // =====================================================\n // == Space Compact ==\n // =====================================================\n genCompactItemStyle(inputToken)];\n});","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport { resetComponent } from '../../style';\n// ============================== Shared ==============================\nconst genSharedDividerStyle = token => {\n const {\n componentCls,\n sizePaddingEdgeHorizontal,\n colorSplit,\n lineWidth\n } = token;\n return {\n [componentCls]: Object.assign(Object.assign({}, resetComponent(token)), {\n borderBlockStart: `${lineWidth}px solid ${colorSplit}`,\n // vertical\n '&-vertical': {\n position: 'relative',\n top: '-0.06em',\n display: 'inline-block',\n height: '0.9em',\n margin: `0 ${token.dividerVerticalGutterMargin}px`,\n verticalAlign: 'middle',\n borderTop: 0,\n borderInlineStart: `${lineWidth}px solid ${colorSplit}`\n },\n '&-horizontal': {\n display: 'flex',\n clear: 'both',\n width: '100%',\n minWidth: '100%',\n margin: `${token.dividerHorizontalGutterMargin}px 0`\n },\n [`&-horizontal${componentCls}-with-text`]: {\n display: 'flex',\n alignItems: 'center',\n margin: `${token.dividerHorizontalWithTextGutterMargin}px 0`,\n color: token.colorTextHeading,\n fontWeight: 500,\n fontSize: token.fontSizeLG,\n whiteSpace: 'nowrap',\n textAlign: 'center',\n borderBlockStart: `0 ${colorSplit}`,\n '&::before, &::after': {\n position: 'relative',\n width: '50%',\n borderBlockStart: `${lineWidth}px solid transparent`,\n // Chrome not accept `inherit` in `border-top`\n borderBlockStartColor: 'inherit',\n borderBlockEnd: 0,\n transform: 'translateY(50%)',\n content: \"''\"\n }\n },\n [`&-horizontal${componentCls}-with-text-left`]: {\n '&::before': {\n width: '5%'\n },\n '&::after': {\n width: '95%'\n }\n },\n [`&-horizontal${componentCls}-with-text-right`]: {\n '&::before': {\n width: '95%'\n },\n '&::after': {\n width: '5%'\n }\n },\n [`${componentCls}-inner-text`]: {\n display: 'inline-block',\n padding: '0 1em'\n },\n '&-dashed': {\n background: 'none',\n borderColor: colorSplit,\n borderStyle: 'dashed',\n borderWidth: `${lineWidth}px 0 0`\n },\n [`&-horizontal${componentCls}-with-text${componentCls}-dashed`]: {\n '&::before, &::after': {\n borderStyle: 'dashed none none'\n }\n },\n [`&-vertical${componentCls}-dashed`]: {\n borderInlineStart: lineWidth,\n borderInlineEnd: 0,\n borderBlockStart: 0,\n borderBlockEnd: 0\n },\n [`&-plain${componentCls}-with-text`]: {\n color: token.colorText,\n fontWeight: 'normal',\n fontSize: token.fontSize\n },\n [`&-horizontal${componentCls}-with-text-left${componentCls}-no-default-orientation-margin-left`]: {\n '&::before': {\n width: 0\n },\n '&::after': {\n width: '100%'\n },\n [`${componentCls}-inner-text`]: {\n paddingInlineStart: sizePaddingEdgeHorizontal\n }\n },\n [`&-horizontal${componentCls}-with-text-right${componentCls}-no-default-orientation-margin-right`]: {\n '&::before': {\n width: '100%'\n },\n '&::after': {\n width: 0\n },\n [`${componentCls}-inner-text`]: {\n paddingInlineEnd: sizePaddingEdgeHorizontal\n }\n }\n })\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Divider', token => {\n const dividerToken = mergeToken(token, {\n dividerVerticalGutterMargin: token.marginXS,\n dividerHorizontalWithTextGutterMargin: token.margin,\n dividerHorizontalGutterMargin: token.marginLG\n });\n return [genSharedDividerStyle(dividerToken)];\n}, {\n sizePaddingEdgeHorizontal: 0\n});","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport warning from '../_util/warning';\nimport useStyle from './style';\nconst Divider = props => {\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n type = 'horizontal',\n orientation = 'center',\n orientationMargin,\n className,\n rootClassName,\n children,\n dashed,\n plain\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"type\", \"orientation\", \"orientationMargin\", \"className\", \"rootClassName\", \"children\", \"dashed\", \"plain\"]);\n const prefixCls = getPrefixCls('divider', customizePrefixCls);\n const [wrapSSR, hashId] = useStyle(prefixCls);\n const orientationPrefix = orientation.length > 0 ? `-${orientation}` : orientation;\n const hasChildren = !!children;\n const hasCustomMarginLeft = orientation === 'left' && orientationMargin != null;\n const hasCustomMarginRight = orientation === 'right' && orientationMargin != null;\n const classString = classNames(prefixCls, hashId, `${prefixCls}-${type}`, {\n [`${prefixCls}-with-text`]: hasChildren,\n [`${prefixCls}-with-text${orientationPrefix}`]: hasChildren,\n [`${prefixCls}-dashed`]: !!dashed,\n [`${prefixCls}-plain`]: !!plain,\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-no-default-orientation-margin-left`]: hasCustomMarginLeft,\n [`${prefixCls}-no-default-orientation-margin-right`]: hasCustomMarginRight\n }, className, rootClassName);\n const innerStyle = Object.assign(Object.assign({}, hasCustomMarginLeft && {\n marginLeft: orientationMargin\n }), hasCustomMarginRight && {\n marginRight: orientationMargin\n });\n // Warning children not work in vertical mode\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(!children || type !== 'vertical', 'Divider', '`children` not working in `vertical` mode.') : void 0;\n }\n return wrapSSR( /*#__PURE__*/React.createElement(\"div\", Object.assign({\n className: classString\n }, restProps, {\n role: \"separator\"\n }), children && type !== 'vertical' && /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-inner-text`,\n style: innerStyle\n }, children)));\n};\nif (process.env.NODE_ENV !== 'production') {\n Divider.displayName = 'Divider';\n}\nexport default Divider;","// This icon file is generated automatically.\nvar EyeOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z\" } }] }, \"name\": \"eye\", \"theme\": \"outlined\" };\nexport default EyeOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport EyeOutlinedSvg from \"@ant-design/icons-svg/es/asn/EyeOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar EyeOutlined = function EyeOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: EyeOutlinedSvg\n }));\n};\nEyeOutlined.displayName = 'EyeOutlined';\nexport default /*#__PURE__*/React.forwardRef(EyeOutlined);","import classNames from 'classnames';\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { FormItemInputContext } from '../form/context';\nimport warning from '../_util/warning';\nimport useStyle from './style';\nconst Group = props => {\n const {\n getPrefixCls,\n direction\n } = useContext(ConfigContext);\n const {\n prefixCls: customizePrefixCls,\n className = ''\n } = props;\n const prefixCls = getPrefixCls('input-group', customizePrefixCls);\n const inputPrefixCls = getPrefixCls('input');\n const [wrapSSR, hashId] = useStyle(inputPrefixCls);\n const cls = classNames(prefixCls, {\n [`${prefixCls}-lg`]: props.size === 'large',\n [`${prefixCls}-sm`]: props.size === 'small',\n [`${prefixCls}-compact`]: props.compact,\n [`${prefixCls}-rtl`]: direction === 'rtl'\n }, hashId, className);\n const formItemContext = useContext(FormItemInputContext);\n const groupFormItemContext = useMemo(() => Object.assign(Object.assign({}, formItemContext), {\n isFormItemInput: false\n }), [formItemContext]);\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(false, 'Input.Group', `'Input.Group' is deprecated. Please use 'Space.Compact' instead.`) : void 0;\n }\n return wrapSSR( /*#__PURE__*/React.createElement(\"span\", {\n className: cls,\n style: props.style,\n onMouseEnter: props.onMouseEnter,\n onMouseLeave: props.onMouseLeave,\n onFocus: props.onFocus,\n onBlur: props.onBlur\n }, /*#__PURE__*/React.createElement(FormItemInputContext.Provider, {\n value: groupFormItemContext\n }, props.children)));\n};\nexport default Group;","export function hasAddon(props) {\n return !!(props.addonBefore || props.addonAfter);\n}\nexport function hasPrefixSuffix(props) {\n return !!(props.prefix || props.suffix || props.allowClear);\n}\nexport function resolveOnChange(target, e, onChange, targetValue) {\n if (!onChange) {\n return;\n }\n\n var event = e;\n\n if (e.type === 'click') {\n // Clone a new target for event.\n // Avoid the following usage, the setQuery method gets the original value.\n //\n // const [query, setQuery] = React.useState('');\n // <Input\n // allowClear\n // value={query}\n // onChange={(e)=> {\n // setQuery((prevStatus) => e.target.value);\n // }}\n // />\n var currentTarget = target.cloneNode(true); // click clear icon\n\n event = Object.create(e, {\n target: {\n value: currentTarget\n },\n currentTarget: {\n value: currentTarget\n }\n });\n currentTarget.value = '';\n onChange(event);\n return;\n } // Trigger by composition event, this means we need force change the input value\n\n\n if (targetValue !== undefined) {\n event = Object.create(e, {\n target: {\n value: target\n },\n currentTarget: {\n value: target\n }\n });\n target.value = targetValue;\n onChange(event);\n return;\n }\n\n onChange(event);\n}\nexport function triggerFocus(element, option) {\n if (!element) return;\n element.focus(option); // Selection content\n\n var _ref = option || {},\n cursor = _ref.cursor;\n\n if (cursor) {\n var len = element.value.length;\n\n switch (cursor) {\n case 'start':\n element.setSelectionRange(0, 0);\n break;\n\n case 'end':\n element.setSelectionRange(len, len);\n break;\n\n default:\n element.setSelectionRange(0, len);\n }\n }\n}\nexport function fixControlledValue(value) {\n if (typeof value === 'undefined' || value === null) {\n return '';\n }\n\n return String(value);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport React, { cloneElement, useRef } from 'react';\nimport classNames from 'classnames';\nimport { hasAddon, hasPrefixSuffix } from \"./utils/commonUtils\";\n\nvar BaseInput = function BaseInput(props) {\n var _inputElement$props;\n\n var inputElement = props.inputElement,\n prefixCls = props.prefixCls,\n prefix = props.prefix,\n suffix = props.suffix,\n addonBefore = props.addonBefore,\n addonAfter = props.addonAfter,\n className = props.className,\n style = props.style,\n affixWrapperClassName = props.affixWrapperClassName,\n groupClassName = props.groupClassName,\n wrapperClassName = props.wrapperClassName,\n disabled = props.disabled,\n readOnly = props.readOnly,\n focused = props.focused,\n triggerFocus = props.triggerFocus,\n allowClear = props.allowClear,\n value = props.value,\n handleReset = props.handleReset,\n hidden = props.hidden,\n inputStyle = props.inputStyle,\n classes = props.classes;\n var containerRef = useRef(null);\n\n var onInputClick = function onInputClick(e) {\n var _containerRef$current;\n\n if ((_containerRef$current = containerRef.current) !== null && _containerRef$current !== void 0 && _containerRef$current.contains(e.target)) {\n triggerFocus === null || triggerFocus === void 0 ? void 0 : triggerFocus();\n }\n }; // ================== Clear Icon ================== //\n\n\n var getClearIcon = function getClearIcon() {\n var _classNames;\n\n if (!allowClear) {\n return null;\n }\n\n var needClear = !disabled && !readOnly && value;\n var clearIconCls = \"\".concat(prefixCls, \"-clear-icon\");\n var iconNode = _typeof(allowClear) === 'object' && allowClear !== null && allowClear !== void 0 && allowClear.clearIcon ? allowClear.clearIcon : '✖';\n return /*#__PURE__*/React.createElement(\"span\", {\n onClick: handleReset // Do not trigger onBlur when clear input\n // https://github.com/ant-design/ant-design/issues/31200\n ,\n onMouseDown: function onMouseDown(e) {\n return e.preventDefault();\n },\n className: classNames(clearIconCls, (_classNames = {}, _defineProperty(_classNames, \"\".concat(clearIconCls, \"-hidden\"), !needClear), _defineProperty(_classNames, \"\".concat(clearIconCls, \"-has-suffix\"), !!suffix), _classNames)),\n role: \"button\",\n tabIndex: -1\n }, iconNode);\n };\n\n var element = /*#__PURE__*/cloneElement(inputElement, {\n value: value,\n hidden: hidden,\n style: _objectSpread(_objectSpread({}, (_inputElement$props = inputElement.props) === null || _inputElement$props === void 0 ? void 0 : _inputElement$props.style), inputStyle)\n }); // ================== Prefix & Suffix ================== //\n\n if (hasPrefixSuffix(props)) {\n var _classNames2;\n\n var affixWrapperPrefixCls = \"\".concat(prefixCls, \"-affix-wrapper\");\n var affixWrapperCls = classNames(affixWrapperPrefixCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(affixWrapperPrefixCls, \"-disabled\"), disabled), _defineProperty(_classNames2, \"\".concat(affixWrapperPrefixCls, \"-focused\"), focused), _defineProperty(_classNames2, \"\".concat(affixWrapperPrefixCls, \"-readonly\"), readOnly), _defineProperty(_classNames2, \"\".concat(affixWrapperPrefixCls, \"-input-with-clear-btn\"), suffix && allowClear && value), _classNames2), !hasAddon(props) && className, affixWrapperClassName, classes === null || classes === void 0 ? void 0 : classes.affixWrapper);\n var suffixNode = (suffix || allowClear) && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-suffix\")\n }, getClearIcon(), suffix);\n element = /*#__PURE__*/React.createElement(\"span\", {\n className: affixWrapperCls,\n style: style,\n hidden: !hasAddon(props) && hidden,\n onClick: onInputClick,\n ref: containerRef\n }, prefix && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-prefix\")\n }, prefix), /*#__PURE__*/cloneElement(inputElement, {\n style: inputStyle !== null && inputStyle !== void 0 ? inputStyle : null,\n value: value,\n hidden: null\n }), suffixNode);\n } // ================== Addon ================== //\n\n\n if (hasAddon(props)) {\n var wrapperCls = \"\".concat(prefixCls, \"-group\");\n var addonCls = \"\".concat(wrapperCls, \"-addon\");\n var mergedWrapperClassName = classNames(\"\".concat(prefixCls, \"-wrapper\"), wrapperCls, wrapperClassName, classes === null || classes === void 0 ? void 0 : classes.wrapper);\n var mergedGroupClassName = classNames(\"\".concat(prefixCls, \"-group-wrapper\"), className, groupClassName, classes === null || classes === void 0 ? void 0 : classes.group); // Need another wrapper for changing display:table to display:inline-block\n // and put style prop in wrapper\n\n return /*#__PURE__*/React.createElement(\"span\", {\n className: mergedGroupClassName,\n style: style,\n hidden: hidden\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: mergedWrapperClassName\n }, addonBefore && /*#__PURE__*/React.createElement(\"span\", {\n className: addonCls\n }, addonBefore), /*#__PURE__*/cloneElement(element, {\n style: inputStyle !== null && inputStyle !== void 0 ? inputStyle : null,\n hidden: null\n }), addonAfter && /*#__PURE__*/React.createElement(\"span\", {\n className: addonCls\n }, addonAfter)));\n }\n\n return element;\n};\n\nexport default BaseInput;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"autoComplete\", \"onChange\", \"onFocus\", \"onBlur\", \"onPressEnter\", \"onKeyDown\", \"prefixCls\", \"disabled\", \"htmlSize\", \"className\", \"maxLength\", \"suffix\", \"showCount\", \"type\", \"inputClassName\", \"classes\"];\nimport React, { useRef, useState, forwardRef, useImperativeHandle, useEffect } from 'react';\nimport BaseInput from \"./BaseInput\";\nimport omit from \"rc-util/es/omit\";\nimport { fixControlledValue, hasAddon, hasPrefixSuffix, resolveOnChange, triggerFocus } from \"./utils/commonUtils\";\nimport classNames from 'classnames';\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nvar Input = /*#__PURE__*/forwardRef(function (props, ref) {\n var autoComplete = props.autoComplete,\n onChange = props.onChange,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onPressEnter = props.onPressEnter,\n onKeyDown = props.onKeyDown,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-input' : _props$prefixCls,\n disabled = props.disabled,\n htmlSize = props.htmlSize,\n className = props.className,\n maxLength = props.maxLength,\n suffix = props.suffix,\n showCount = props.showCount,\n _props$type = props.type,\n type = _props$type === void 0 ? 'text' : _props$type,\n inputClassName = props.inputClassName,\n classes = props.classes,\n rest = _objectWithoutProperties(props, _excluded);\n\n var _useMergedState = useMergedState(props.defaultValue, {\n value: props.value\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n value = _useMergedState2[0],\n setValue = _useMergedState2[1];\n\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n focused = _useState2[0],\n setFocused = _useState2[1];\n\n var inputRef = useRef(null);\n\n var focus = function focus(option) {\n if (inputRef.current) {\n triggerFocus(inputRef.current, option);\n }\n };\n\n useImperativeHandle(ref, function () {\n return {\n focus: focus,\n blur: function blur() {\n var _inputRef$current;\n\n (_inputRef$current = inputRef.current) === null || _inputRef$current === void 0 ? void 0 : _inputRef$current.blur();\n },\n setSelectionRange: function setSelectionRange(start, end, direction) {\n var _inputRef$current2;\n\n (_inputRef$current2 = inputRef.current) === null || _inputRef$current2 === void 0 ? void 0 : _inputRef$current2.setSelectionRange(start, end, direction);\n },\n select: function select() {\n var _inputRef$current3;\n\n (_inputRef$current3 = inputRef.current) === null || _inputRef$current3 === void 0 ? void 0 : _inputRef$current3.select();\n },\n input: inputRef.current\n };\n });\n useEffect(function () {\n setFocused(function (prev) {\n return prev && disabled ? false : prev;\n });\n }, [disabled]);\n\n var handleChange = function handleChange(e) {\n if (props.value === undefined) {\n setValue(e.target.value);\n }\n\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange);\n }\n };\n\n var handleKeyDown = function handleKeyDown(e) {\n if (onPressEnter && e.key === 'Enter') {\n onPressEnter(e);\n }\n\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n };\n\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n\n var handleBlur = function handleBlur(e) {\n setFocused(false);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n\n var handleReset = function handleReset(e) {\n setValue('');\n focus();\n\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange);\n }\n };\n\n var getInputElement = function getInputElement() {\n // Fix https://fb.me/react-unknown-prop\n var otherProps = omit(props, ['prefixCls', 'onPressEnter', 'addonBefore', 'addonAfter', 'prefix', 'suffix', 'allowClear', // Input elements must be either controlled or uncontrolled,\n // specify either the value prop, or the defaultValue prop, but not both.\n 'defaultValue', 'showCount', 'affixWrapperClassName', 'groupClassName', 'inputClassName', 'classes', 'wrapperClassName', 'htmlSize']);\n return /*#__PURE__*/React.createElement(\"input\", _extends({\n autoComplete: autoComplete\n }, otherProps, {\n onChange: handleChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onKeyDown: handleKeyDown,\n className: classNames(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled), inputClassName, classes === null || classes === void 0 ? void 0 : classes.input, !hasAddon(props) && !hasPrefixSuffix(props) && className),\n ref: inputRef,\n size: htmlSize,\n type: type\n }));\n };\n\n var getSuffix = function getSuffix() {\n // Max length value\n var hasMaxLength = Number(maxLength) > 0;\n\n if (suffix || showCount) {\n var val = fixControlledValue(value);\n\n var valueLength = _toConsumableArray(val).length;\n\n var dataCount = _typeof(showCount) === 'object' ? showCount.formatter({\n value: val,\n count: valueLength,\n maxLength: maxLength\n }) : \"\".concat(valueLength).concat(hasMaxLength ? \" / \".concat(maxLength) : '');\n return /*#__PURE__*/React.createElement(React.Fragment, null, !!showCount && /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(prefixCls, \"-show-count-suffix\"), _defineProperty({}, \"\".concat(prefixCls, \"-show-count-has-suffix\"), !!suffix))\n }, dataCount), suffix);\n }\n\n return null;\n };\n\n return /*#__PURE__*/React.createElement(BaseInput, _extends({}, rest, {\n prefixCls: prefixCls,\n className: className,\n inputElement: getInputElement(),\n handleReset: handleReset,\n value: fixControlledValue(value),\n focused: focused,\n triggerFocus: focus,\n suffix: getSuffix(),\n disabled: disabled,\n classes: classes\n }));\n});\nexport default Input;","import { useEffect, useRef } from 'react';\nexport default function useRemovePasswordTimeout(inputRef, triggerOnMount) {\n const removePasswordTimeoutRef = useRef([]);\n const removePasswordTimeout = () => {\n removePasswordTimeoutRef.current.push(setTimeout(() => {\n var _a, _b, _c, _d;\n if (((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input) && ((_b = inputRef.current) === null || _b === void 0 ? void 0 : _b.input.getAttribute('type')) === 'password' && ((_c = inputRef.current) === null || _c === void 0 ? void 0 : _c.input.hasAttribute('value'))) {\n (_d = inputRef.current) === null || _d === void 0 ? void 0 : _d.input.removeAttribute('value');\n }\n }));\n };\n useEffect(() => {\n if (triggerOnMount) {\n removePasswordTimeout();\n }\n return () => removePasswordTimeoutRef.current.forEach(timer => {\n if (timer) {\n clearTimeout(timer);\n }\n });\n }, []);\n return removePasswordTimeout;\n}","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport classNames from 'classnames';\nimport RcInput from 'rc-input';\nimport { composeRef } from \"rc-util/es/ref\";\nimport React, { forwardRef, useContext, useEffect, useRef } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport SizeContext from '../config-provider/SizeContext';\nimport { FormItemInputContext, NoFormStyle } from '../form/context';\nimport { NoCompactStyle, useCompactItemContext } from '../space/Compact';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport warning from '../_util/warning';\nimport useRemovePasswordTimeout from './hooks/useRemovePasswordTimeout';\nimport { hasPrefixSuffix } from './utils';\n// CSSINJS\nimport useStyle from './style';\nexport function triggerFocus(element, option) {\n if (!element) {\n return;\n }\n element.focus(option);\n // Selection content\n const {\n cursor\n } = option || {};\n if (cursor) {\n const len = element.value.length;\n switch (cursor) {\n case 'start':\n element.setSelectionRange(0, 0);\n break;\n case 'end':\n element.setSelectionRange(len, len);\n break;\n default:\n element.setSelectionRange(0, len);\n break;\n }\n }\n}\nconst Input = /*#__PURE__*/forwardRef((props, ref) => {\n const {\n prefixCls: customizePrefixCls,\n bordered = true,\n status: customStatus,\n size: customSize,\n disabled: customDisabled,\n onBlur,\n onFocus,\n suffix,\n allowClear,\n addonAfter,\n addonBefore,\n className,\n rootClassName,\n onChange\n } = props,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"status\", \"size\", \"disabled\", \"onBlur\", \"onFocus\", \"suffix\", \"allowClear\", \"addonAfter\", \"addonBefore\", \"className\", \"rootClassName\", \"onChange\"]);\n const {\n getPrefixCls,\n direction,\n input\n } = React.useContext(ConfigContext);\n const prefixCls = getPrefixCls('input', customizePrefixCls);\n const inputRef = useRef(null);\n // Style\n const [wrapSSR, hashId] = useStyle(prefixCls);\n // ===================== Compact Item =====================\n const {\n compactSize,\n compactItemClassnames\n } = useCompactItemContext(prefixCls, direction);\n // ===================== Size =====================\n const size = React.useContext(SizeContext);\n const mergedSize = compactSize || customSize || size;\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n feedbackIcon\n } = useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Focus warning =====================\n const inputHasPrefixSuffix = hasPrefixSuffix(props) || !!hasFeedback;\n const prevHasPrefixSuffix = useRef(inputHasPrefixSuffix);\n useEffect(() => {\n var _a;\n if (inputHasPrefixSuffix && !prevHasPrefixSuffix.current) {\n process.env.NODE_ENV !== \"production\" ? warning(document.activeElement === ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input), 'Input', `When Input is focused, dynamic add or remove prefix / suffix will make it lose focus caused by dom structure change. Read more: https://ant.design/components/input/#FAQ`) : void 0;\n }\n prevHasPrefixSuffix.current = inputHasPrefixSuffix;\n }, [inputHasPrefixSuffix]);\n // ===================== Remove Password value =====================\n const removePasswordTimeout = useRemovePasswordTimeout(inputRef, true);\n const handleBlur = e => {\n removePasswordTimeout();\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n const handleFocus = e => {\n removePasswordTimeout();\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n const handleChange = e => {\n removePasswordTimeout();\n onChange === null || onChange === void 0 ? void 0 : onChange(e);\n };\n const suffixNode = (hasFeedback || suffix) && /*#__PURE__*/React.createElement(React.Fragment, null, suffix, hasFeedback && feedbackIcon);\n // Allow clear\n let mergedAllowClear;\n if (typeof allowClear === 'object' && (allowClear === null || allowClear === void 0 ? void 0 : allowClear.clearIcon)) {\n mergedAllowClear = allowClear;\n } else if (allowClear) {\n mergedAllowClear = {\n clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null)\n };\n }\n return wrapSSR( /*#__PURE__*/React.createElement(RcInput, Object.assign({\n ref: composeRef(ref, inputRef),\n prefixCls: prefixCls,\n autoComplete: input === null || input === void 0 ? void 0 : input.autoComplete\n }, rest, {\n disabled: mergedDisabled,\n onBlur: handleBlur,\n onFocus: handleFocus,\n suffix: suffixNode,\n allowClear: mergedAllowClear,\n className: classNames(className, rootClassName, compactItemClassnames),\n onChange: handleChange,\n addonAfter: addonAfter && /*#__PURE__*/React.createElement(NoCompactStyle, null, /*#__PURE__*/React.createElement(NoFormStyle, {\n override: true,\n status: true\n }, addonAfter)),\n addonBefore: addonBefore && /*#__PURE__*/React.createElement(NoCompactStyle, null, /*#__PURE__*/React.createElement(NoFormStyle, {\n override: true,\n status: true\n }, addonBefore)),\n classes: {\n input: classNames({\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large',\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-borderless`]: !bordered\n }, !inputHasPrefixSuffix && getStatusClassNames(prefixCls, mergedStatus), hashId),\n affixWrapper: classNames({\n [`${prefixCls}-affix-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-affix-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-affix-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-affix-wrapper-borderless`]: !bordered\n }, getStatusClassNames(`${prefixCls}-affix-wrapper`, mergedStatus, hasFeedback), hashId),\n wrapper: classNames({\n [`${prefixCls}-group-rtl`]: direction === 'rtl'\n }, hashId),\n group: classNames({\n [`${prefixCls}-group-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-group-wrapper-lg`]: mergedSize === 'large',\n [`${prefixCls}-group-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-group-wrapper-disabled`]: mergedDisabled\n }, getStatusClassNames(`${prefixCls}-group-wrapper`, mergedStatus, hasFeedback), hashId)\n }\n })));\n});\nexport default Input;","// eslint-disable-next-line import/prefer-default-export\nexport function hasPrefixSuffix(props) {\n return !!(props.prefix || props.suffix || props.allowClear);\n}","// This icon file is generated automatically.\nvar EyeInvisibleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z\" } }] }, \"name\": \"eye-invisible\", \"theme\": \"outlined\" };\nexport default EyeInvisibleOutlined;\n","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport * as React from 'react';\nimport EyeInvisibleOutlinedSvg from \"@ant-design/icons-svg/es/asn/EyeInvisibleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar EyeInvisibleOutlined = function EyeInvisibleOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: EyeInvisibleOutlinedSvg\n }));\n};\nEyeInvisibleOutlined.displayName = 'EyeInvisibleOutlined';\nexport default /*#__PURE__*/React.forwardRef(EyeInvisibleOutlined);","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport EyeInvisibleOutlined from \"@ant-design/icons/es/icons/EyeInvisibleOutlined\";\nimport EyeOutlined from \"@ant-design/icons/es/icons/EyeOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useRemovePasswordTimeout from './hooks/useRemovePasswordTimeout';\nimport Input from './Input';\nconst defaultIconRender = visible => visible ? /*#__PURE__*/React.createElement(EyeOutlined, null) : /*#__PURE__*/React.createElement(EyeInvisibleOutlined, null);\nconst ActionMap = {\n click: 'onClick',\n hover: 'onMouseOver'\n};\nconst Password = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n visibilityToggle = true\n } = props;\n const visibilityControlled = typeof visibilityToggle === 'object' && visibilityToggle.visible !== undefined;\n const [visible, setVisible] = useState(() => visibilityControlled ? visibilityToggle.visible : false);\n const inputRef = useRef(null);\n React.useEffect(() => {\n if (visibilityControlled) {\n setVisible(visibilityToggle.visible);\n }\n }, [visibilityControlled, visibilityToggle]);\n // Remove Password value\n const removePasswordTimeout = useRemovePasswordTimeout(inputRef);\n const onVisibleChange = () => {\n const {\n disabled\n } = props;\n if (disabled) {\n return;\n }\n if (visible) {\n removePasswordTimeout();\n }\n setVisible(prevState => {\n var _a;\n const newState = !prevState;\n if (typeof visibilityToggle === 'object') {\n (_a = visibilityToggle.onVisibleChange) === null || _a === void 0 ? void 0 : _a.call(visibilityToggle, newState);\n }\n return newState;\n });\n };\n const getIcon = prefixCls => {\n const {\n action = 'click',\n iconRender = defaultIconRender\n } = props;\n const iconTrigger = ActionMap[action] || '';\n const icon = iconRender(visible);\n const iconProps = {\n [iconTrigger]: onVisibleChange,\n className: `${prefixCls}-icon`,\n key: 'passwordIcon',\n onMouseDown: e => {\n // Prevent focused state lost\n // https://github.com/ant-design/ant-design/issues/15173\n e.preventDefault();\n },\n onMouseUp: e => {\n // Prevent caret position change\n // https://github.com/ant-design/ant-design/issues/23524\n e.preventDefault();\n }\n };\n return /*#__PURE__*/React.cloneElement( /*#__PURE__*/React.isValidElement(icon) ? icon : /*#__PURE__*/React.createElement(\"span\", null, icon), iconProps);\n };\n const {\n className,\n prefixCls: customizePrefixCls,\n inputPrefixCls: customizeInputPrefixCls,\n size\n } = props,\n restProps = __rest(props, [\"className\", \"prefixCls\", \"inputPrefixCls\", \"size\"]);\n const {\n getPrefixCls\n } = React.useContext(ConfigContext);\n const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n const prefixCls = getPrefixCls('input-password', customizePrefixCls);\n const suffixIcon = visibilityToggle && getIcon(prefixCls);\n const inputClassName = classNames(prefixCls, className, {\n [`${prefixCls}-${size}`]: !!size\n });\n const omittedProps = Object.assign(Object.assign({}, omit(restProps, ['suffix', 'iconRender', 'visibilityToggle'])), {\n type: visible ? 'text' : 'password',\n className: inputClassName,\n prefixCls: inputPrefixCls,\n suffix: suffixIcon\n });\n if (size) {\n omittedProps.size = size;\n }\n return /*#__PURE__*/React.createElement(Input, Object.assign({\n ref: composeRef(ref, inputRef)\n }, omittedProps));\n});\nif (process.env.NODE_ENV !== 'production') {\n Password.displayName = 'Password';\n}\nexport default Password;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport SearchOutlined from \"@ant-design/icons/es/icons/SearchOutlined\";\nimport classNames from 'classnames';\nimport { composeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport Button from '../button';\nimport { ConfigContext } from '../config-provider';\nimport SizeContext from '../config-provider/SizeContext';\nimport { useCompactItemContext } from '../space/Compact';\nimport { cloneElement } from '../_util/reactNode';\nimport Input from './Input';\nconst Search = /*#__PURE__*/React.forwardRef((props, ref) => {\n const {\n prefixCls: customizePrefixCls,\n inputPrefixCls: customizeInputPrefixCls,\n className,\n size: customizeSize,\n suffix,\n enterButton = false,\n addonAfter,\n loading,\n disabled,\n onSearch: customOnSearch,\n onChange: customOnChange,\n onCompositionStart,\n onCompositionEnd\n } = props,\n restProps = __rest(props, [\"prefixCls\", \"inputPrefixCls\", \"className\", \"size\", \"suffix\", \"enterButton\", \"addonAfter\", \"loading\", \"disabled\", \"onSearch\", \"onChange\", \"onCompositionStart\", \"onCompositionEnd\"]);\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n const contextSize = React.useContext(SizeContext);\n const composedRef = React.useRef(false);\n const prefixCls = getPrefixCls('input-search', customizePrefixCls);\n const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n const {\n compactSize\n } = useCompactItemContext(prefixCls, direction);\n const size = compactSize || customizeSize || contextSize;\n const inputRef = React.useRef(null);\n const onChange = e => {\n if (e && e.target && e.type === 'click' && customOnSearch) {\n customOnSearch(e.target.value, e);\n }\n if (customOnChange) {\n customOnChange(e);\n }\n };\n const onMouseDown = e => {\n var _a;\n if (document.activeElement === ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input)) {\n e.preventDefault();\n }\n };\n const onSearch = e => {\n var _a, _b;\n if (customOnSearch) {\n customOnSearch((_b = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input) === null || _b === void 0 ? void 0 : _b.value, e);\n }\n };\n const onPressEnter = e => {\n if (composedRef.current || loading) {\n return;\n }\n onSearch(e);\n };\n const searchIcon = typeof enterButton === 'boolean' ? /*#__PURE__*/React.createElement(SearchOutlined, null) : null;\n const btnClassName = `${prefixCls}-button`;\n let button;\n const enterButtonAsElement = enterButton || {};\n const isAntdButton = enterButtonAsElement.type && enterButtonAsElement.type.__ANT_BUTTON === true;\n if (isAntdButton || enterButtonAsElement.type === 'button') {\n button = cloneElement(enterButtonAsElement, Object.assign({\n onMouseDown,\n onClick: e => {\n var _a, _b;\n (_b = (_a = enterButtonAsElement === null || enterButtonAsElement === void 0 ? void 0 : enterButtonAsElement.props) === null || _a === void 0 ? void 0 : _a.onClick) === null || _b === void 0 ? void 0 : _b.call(_a, e);\n onSearch(e);\n },\n key: 'enterButton'\n }, isAntdButton ? {\n className: btnClassName,\n size\n } : {}));\n } else {\n button = /*#__PURE__*/React.createElement(Button, {\n className: btnClassName,\n type: enterButton ? 'primary' : undefined,\n size: size,\n disabled: disabled,\n key: \"enterButton\",\n onMouseDown: onMouseDown,\n onClick: onSearch,\n loading: loading,\n icon: searchIcon\n }, enterButton);\n }\n if (addonAfter) {\n button = [button, cloneElement(addonAfter, {\n key: 'addonAfter'\n })];\n }\n const cls = classNames(prefixCls, {\n [`${prefixCls}-rtl`]: direction === 'rtl',\n [`${prefixCls}-${size}`]: !!size,\n [`${prefixCls}-with-button`]: !!enterButton\n }, className);\n const handleOnCompositionStart = e => {\n composedRef.current = true;\n onCompositionStart === null || onCompositionStart === void 0 ? void 0 : onCompositionStart(e);\n };\n const handleOnCompositionEnd = e => {\n composedRef.current = false;\n onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e);\n };\n return /*#__PURE__*/React.createElement(Input, Object.assign({\n ref: composeRef(inputRef, ref),\n onPressEnter: onPressEnter\n }, restProps, {\n size: size,\n onCompositionStart: handleOnCompositionStart,\n onCompositionEnd: handleOnCompositionEnd,\n prefixCls: inputPrefixCls,\n addonAfter: button,\n suffix: suffix,\n onChange: onChange,\n className: cls,\n disabled: disabled\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n Search.displayName = 'Search';\n}\nexport default Search;","// Thanks to https://github.com/andreypopp/react-textarea-autosize/\n\n/**\n * calculateNodeHeight(uiTextNode, useCache = false)\n */\nvar HIDDEN_TEXTAREA_STYLE = \"\\n min-height:0 !important;\\n max-height:none !important;\\n height:0 !important;\\n visibility:hidden !important;\\n overflow:hidden !important;\\n position:absolute !important;\\n z-index:-1000 !important;\\n top:0 !important;\\n right:0 !important;\\n pointer-events: none !important;\\n\";\nvar SIZING_STYLE = ['letter-spacing', 'line-height', 'padding-top', 'padding-bottom', 'font-family', 'font-weight', 'font-size', 'font-variant', 'text-rendering', 'text-transform', 'width', 'text-indent', 'padding-left', 'padding-right', 'border-width', 'box-sizing', 'word-break', 'white-space'];\nvar computedStyleCache = {};\nvar hiddenTextarea;\nexport function calculateNodeStyling(node) {\n var useCache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var nodeRef = node.getAttribute('id') || node.getAttribute('data-reactid') || node.getAttribute('name');\n\n if (useCache && computedStyleCache[nodeRef]) {\n return computedStyleCache[nodeRef];\n }\n\n var style = window.getComputedStyle(node);\n var boxSizing = style.getPropertyValue('box-sizing') || style.getPropertyValue('-moz-box-sizing') || style.getPropertyValue('-webkit-box-sizing');\n var paddingSize = parseFloat(style.getPropertyValue('padding-bottom')) + parseFloat(style.getPropertyValue('padding-top'));\n var borderSize = parseFloat(style.getPropertyValue('border-bottom-width')) + parseFloat(style.getPropertyValue('border-top-width'));\n var sizingStyle = SIZING_STYLE.map(function (name) {\n return \"\".concat(name, \":\").concat(style.getPropertyValue(name));\n }).join(';');\n var nodeInfo = {\n sizingStyle: sizingStyle,\n paddingSize: paddingSize,\n borderSize: borderSize,\n boxSizing: boxSizing\n };\n\n if (useCache && nodeRef) {\n computedStyleCache[nodeRef] = nodeInfo;\n }\n\n return nodeInfo;\n}\nexport default function calculateAutoSizeStyle(uiTextNode) {\n var useCache = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var minRows = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var maxRows = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n if (!hiddenTextarea) {\n hiddenTextarea = document.createElement('textarea');\n hiddenTextarea.setAttribute('tab-index', '-1');\n hiddenTextarea.setAttribute('aria-hidden', 'true');\n document.body.appendChild(hiddenTextarea);\n } // Fix wrap=\"off\" issue\n // https://github.com/ant-design/ant-design/issues/6577\n\n\n if (uiTextNode.getAttribute('wrap')) {\n hiddenTextarea.setAttribute('wrap', uiTextNode.getAttribute('wrap'));\n } else {\n hiddenTextarea.removeAttribute('wrap');\n } // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n\n\n var _calculateNodeStyling = calculateNodeStyling(uiTextNode, useCache),\n paddingSize = _calculateNodeStyling.paddingSize,\n borderSize = _calculateNodeStyling.borderSize,\n boxSizing = _calculateNodeStyling.boxSizing,\n sizingStyle = _calculateNodeStyling.sizingStyle; // Need to have the overflow attribute to hide the scrollbar otherwise\n // text-lines will not calculated properly as the shadow will technically be\n // narrower for content\n\n\n hiddenTextarea.setAttribute('style', \"\".concat(sizingStyle, \";\").concat(HIDDEN_TEXTAREA_STYLE));\n hiddenTextarea.value = uiTextNode.value || uiTextNode.placeholder || '';\n var minHeight = undefined;\n var maxHeight = undefined;\n var overflowY;\n var height = hiddenTextarea.scrollHeight;\n\n if (boxSizing === 'border-box') {\n // border-box: add border, since height = content + padding + border\n height += borderSize;\n } else if (boxSizing === 'content-box') {\n // remove padding, since height = content\n height -= paddingSize;\n }\n\n if (minRows !== null || maxRows !== null) {\n // measure height of a textarea with a single row\n hiddenTextarea.value = ' ';\n var singleRowHeight = hiddenTextarea.scrollHeight - paddingSize;\n\n if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n\n height = Math.max(minHeight, height);\n }\n\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n\n overflowY = height > maxHeight ? '' : 'hidden';\n height = Math.min(maxHeight, height);\n }\n }\n\n var style = {\n height: height,\n overflowY: overflowY,\n resize: 'none'\n };\n\n if (minHeight) {\n style.minHeight = minHeight;\n }\n\n if (maxHeight) {\n style.maxHeight = maxHeight;\n }\n\n return style;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"onPressEnter\", \"defaultValue\", \"value\", \"autoSize\", \"onResize\", \"className\", \"style\", \"disabled\", \"onChange\", \"onInternalAutoSize\"];\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nimport calculateAutoSizeStyle from \"./calculateNodeHeight\";\nvar RESIZE_START = 0;\nvar RESIZE_MEASURING = 1;\nvar RESIZE_STABLE = 2;\nvar ResizableTextArea = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _ref = props,\n prefixCls = _ref.prefixCls,\n onPressEnter = _ref.onPressEnter,\n defaultValue = _ref.defaultValue,\n value = _ref.value,\n autoSize = _ref.autoSize,\n onResize = _ref.onResize,\n className = _ref.className,\n style = _ref.style,\n disabled = _ref.disabled,\n onChange = _ref.onChange,\n onInternalAutoSize = _ref.onInternalAutoSize,\n restProps = _objectWithoutProperties(_ref, _excluded); // =============================== Value ================================\n\n\n var _useMergedState = useMergedState(defaultValue, {\n value: value,\n postState: function postState(val) {\n return val !== null && val !== void 0 ? val : '';\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedValue = _useMergedState2[0],\n setMergedValue = _useMergedState2[1];\n\n var onInternalChange = function onInternalChange(event) {\n setMergedValue(event.target.value);\n onChange === null || onChange === void 0 ? void 0 : onChange(event);\n }; // ================================ Ref =================================\n\n\n var textareaRef = React.useRef();\n React.useImperativeHandle(ref, function () {\n return {\n textArea: textareaRef.current\n };\n }); // ============================== AutoSize ==============================\n\n var _React$useMemo = React.useMemo(function () {\n if (autoSize && _typeof(autoSize) === 'object') {\n return [autoSize.minRows, autoSize.maxRows];\n }\n\n return [];\n }, [autoSize]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n minRows = _React$useMemo2[0],\n maxRows = _React$useMemo2[1];\n\n var needAutoSize = !!autoSize; // =============================== Scroll ===============================\n // https://github.com/ant-design/ant-design/issues/21870\n\n var fixFirefoxAutoScroll = function fixFirefoxAutoScroll() {\n try {\n // FF has bug with jump of scroll to top. We force back here.\n if (document.activeElement === textareaRef.current) {\n var _textareaRef$current = textareaRef.current,\n selectionStart = _textareaRef$current.selectionStart,\n selectionEnd = _textareaRef$current.selectionEnd,\n scrollTop = _textareaRef$current.scrollTop; // Fix Safari bug which not rollback when break line\n // This makes Chinese IME can't input. Do not fix this\n // const { value: tmpValue } = textareaRef.current;\n // textareaRef.current.value = '';\n // textareaRef.current.value = tmpValue;\n\n textareaRef.current.setSelectionRange(selectionStart, selectionEnd);\n textareaRef.current.scrollTop = scrollTop;\n }\n } catch (e) {// Fix error in Chrome:\n // Failed to read the 'selectionStart' property from 'HTMLInputElement'\n // http://stackoverflow.com/q/21177489/3040605\n }\n }; // =============================== Resize ===============================\n\n\n var _React$useState = React.useState(RESIZE_STABLE),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n resizeState = _React$useState2[0],\n setResizeState = _React$useState2[1];\n\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n autoSizeStyle = _React$useState4[0],\n setAutoSizeStyle = _React$useState4[1];\n\n var startResize = function startResize() {\n setResizeState(RESIZE_START);\n\n if (process.env.NODE_ENV === 'test') {\n onInternalAutoSize === null || onInternalAutoSize === void 0 ? void 0 : onInternalAutoSize();\n }\n }; // Change to trigger resize measure\n\n\n useLayoutEffect(function () {\n if (needAutoSize) {\n startResize();\n }\n }, [value, minRows, maxRows, needAutoSize]);\n useLayoutEffect(function () {\n if (resizeState === RESIZE_START) {\n setResizeState(RESIZE_MEASURING);\n } else if (resizeState === RESIZE_MEASURING) {\n var textareaStyles = calculateAutoSizeStyle(textareaRef.current, false, minRows, maxRows); // Safari has bug that text will keep break line on text cut when it's prev is break line.\n // ZombieJ: This not often happen. So we just skip it.\n // const { selectionStart, selectionEnd, scrollTop } = textareaRef.current;\n // const { value: tmpValue } = textareaRef.current;\n // textareaRef.current.value = '';\n // textareaRef.current.value = tmpValue;\n // if (document.activeElement === textareaRef.current) {\n // textareaRef.current.scrollTop = scrollTop;\n // textareaRef.current.setSelectionRange(selectionStart, selectionEnd);\n // }\n\n setResizeState(RESIZE_STABLE);\n setAutoSizeStyle(textareaStyles);\n } else {\n fixFirefoxAutoScroll();\n }\n }, [resizeState]); // We lock resize trigger by raf to avoid Safari warning\n\n var resizeRafRef = React.useRef();\n\n var cleanRaf = function cleanRaf() {\n raf.cancel(resizeRafRef.current);\n };\n\n var onInternalResize = function onInternalResize(size) {\n if (resizeState === RESIZE_STABLE) {\n onResize === null || onResize === void 0 ? void 0 : onResize(size);\n\n if (autoSize) {\n cleanRaf();\n resizeRafRef.current = raf(function () {\n startResize();\n });\n }\n }\n };\n\n React.useEffect(function () {\n return cleanRaf;\n }, []); // =============================== Render ===============================\n\n var mergedAutoSizeStyle = needAutoSize ? autoSizeStyle : null;\n\n var mergedStyle = _objectSpread(_objectSpread({}, style), mergedAutoSizeStyle);\n\n if (resizeState === RESIZE_START || resizeState === RESIZE_MEASURING) {\n mergedStyle.overflowY = 'hidden';\n mergedStyle.overflowX = 'hidden';\n }\n\n return /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onInternalResize,\n disabled: !(autoSize || onResize)\n }, /*#__PURE__*/React.createElement(\"textarea\", _extends({}, restProps, {\n ref: textareaRef,\n style: mergedStyle,\n className: classNames(prefixCls, className, _defineProperty({}, \"\".concat(prefixCls, \"-disabled\"), disabled)),\n disabled: disabled,\n value: mergedValue,\n onChange: onInternalChange\n })));\n});\nexport default ResizableTextArea;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nvar _excluded = [\"defaultValue\", \"value\", \"onFocus\", \"onBlur\", \"onChange\", \"allowClear\", \"maxLength\", \"onCompositionStart\", \"onCompositionEnd\", \"suffix\", \"prefixCls\", \"classes\", \"showCount\", \"className\", \"style\", \"disabled\"];\nimport classNames from 'classnames';\nimport { BaseInput } from 'rc-input';\nimport { fixControlledValue, resolveOnChange } from \"rc-input/es/utils/commonUtils\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport React, { useEffect, useImperativeHandle, useRef } from 'react';\nimport ResizableTextArea from \"./ResizableTextArea\";\n\nfunction fixEmojiLength(value, maxLength) {\n return _toConsumableArray(value || '').slice(0, maxLength).join('');\n}\n\nfunction setTriggerValue(isCursorInEnd, preValue, triggerValue, maxLength) {\n var newTriggerValue = triggerValue;\n\n if (isCursorInEnd) {\n // 光标在尾部,直接截断\n newTriggerValue = fixEmojiLength(triggerValue, maxLength);\n } else if (_toConsumableArray(preValue || '').length < triggerValue.length && _toConsumableArray(triggerValue || '').length > maxLength) {\n // 光标在中间,如果最后的值超过最大值,则采用原先的值\n newTriggerValue = preValue;\n }\n\n return newTriggerValue;\n}\n\nvar TextArea = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var defaultValue = _ref.defaultValue,\n customValue = _ref.value,\n onFocus = _ref.onFocus,\n onBlur = _ref.onBlur,\n onChange = _ref.onChange,\n allowClear = _ref.allowClear,\n maxLength = _ref.maxLength,\n onCompositionStart = _ref.onCompositionStart,\n onCompositionEnd = _ref.onCompositionEnd,\n suffix = _ref.suffix,\n _ref$prefixCls = _ref.prefixCls,\n prefixCls = _ref$prefixCls === void 0 ? 'rc-textarea' : _ref$prefixCls,\n classes = _ref.classes,\n showCount = _ref.showCount,\n className = _ref.className,\n style = _ref.style,\n disabled = _ref.disabled,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var _useMergedState = useMergedState(defaultValue, {\n value: customValue,\n defaultValue: defaultValue\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n value = _useMergedState2[0],\n setValue = _useMergedState2[1];\n\n var resizableTextAreaRef = useRef(null);\n\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n focused = _React$useState2[0],\n setFocused = _React$useState2[1];\n\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n compositing = _React$useState4[0],\n setCompositing = _React$useState4[1];\n\n var oldCompositionValueRef = React.useRef();\n var oldSelectionStartRef = React.useRef(0);\n\n var focus = function focus() {\n resizableTextAreaRef.current.textArea.focus();\n };\n\n useImperativeHandle(ref, function () {\n return {\n resizableTextArea: resizableTextAreaRef.current,\n focus: focus,\n blur: function blur() {\n resizableTextAreaRef.current.textArea.blur();\n }\n };\n });\n useEffect(function () {\n setFocused(function (prev) {\n return !disabled && prev;\n });\n }, [disabled]); // =========================== Value Update ===========================\n // Max length value\n\n var hasMaxLength = Number(maxLength) > 0;\n\n var onInternalCompositionStart = function onInternalCompositionStart(e) {\n setCompositing(true); // 拼音输入前保存一份旧值\n\n oldCompositionValueRef.current = value; // 保存旧的光标位置\n\n oldSelectionStartRef.current = e.currentTarget.selectionStart;\n onCompositionStart === null || onCompositionStart === void 0 ? void 0 : onCompositionStart(e);\n };\n\n var onInternalCompositionEnd = function onInternalCompositionEnd(e) {\n setCompositing(false);\n var triggerValue = e.currentTarget.value;\n\n if (hasMaxLength) {\n var _oldCompositionValueR;\n\n var isCursorInEnd = oldSelectionStartRef.current >= maxLength + 1 || oldSelectionStartRef.current === ((_oldCompositionValueR = oldCompositionValueRef.current) === null || _oldCompositionValueR === void 0 ? void 0 : _oldCompositionValueR.length);\n triggerValue = setTriggerValue(isCursorInEnd, oldCompositionValueRef.current, triggerValue, maxLength);\n } // Patch composition onChange when value changed\n\n\n if (triggerValue !== value) {\n setValue(triggerValue);\n resolveOnChange(e.currentTarget, e, onChange, triggerValue);\n }\n\n onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e);\n };\n\n var handleChange = function handleChange(e) {\n var triggerValue = e.target.value;\n\n if (!compositing && hasMaxLength) {\n // 1. 复制粘贴超过maxlength的情况 2.未超过maxlength的情况\n var isCursorInEnd = e.target.selectionStart >= maxLength + 1 || e.target.selectionStart === triggerValue.length || !e.target.selectionStart;\n triggerValue = setTriggerValue(isCursorInEnd, value, triggerValue, maxLength);\n }\n\n setValue(triggerValue);\n resolveOnChange(e.currentTarget, e, onChange, triggerValue);\n };\n\n var handleKeyDown = function handleKeyDown(e) {\n var onPressEnter = rest.onPressEnter,\n onKeyDown = rest.onKeyDown;\n\n if (e.key === 'Enter' && onPressEnter) {\n onPressEnter(e);\n }\n\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n };\n\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n\n var handleBlur = function handleBlur(e) {\n setFocused(false);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n }; // ============================== Reset ===============================\n\n\n var handleReset = function handleReset(e) {\n setValue('');\n focus();\n resolveOnChange(resizableTextAreaRef.current.textArea, e, onChange);\n };\n\n var val = fixControlledValue(value);\n\n if (!compositing && hasMaxLength && (customValue === null || customValue === undefined)) {\n // fix #27612 将value转为数组进行截取,解决 '😂'.length === 2 等emoji表情导致的截取乱码的问题\n val = fixEmojiLength(val, maxLength);\n }\n\n var textarea = /*#__PURE__*/React.createElement(BaseInput, {\n value: val,\n allowClear: allowClear,\n handleReset: handleReset,\n suffix: suffix,\n prefixCls: prefixCls,\n classes: {\n affixWrapper: classes === null || classes === void 0 ? void 0 : classes.affixWrapper\n },\n disabled: disabled,\n focused: focused,\n style: style,\n inputStyle: {\n resize: style === null || style === void 0 ? void 0 : style.resize\n },\n inputElement: /*#__PURE__*/React.createElement(ResizableTextArea, _extends({}, rest, {\n onKeyDown: handleKeyDown,\n onChange: handleChange,\n onFocus: handleFocus,\n onBlur: handleBlur,\n onCompositionStart: onInternalCompositionStart,\n onCompositionEnd: onInternalCompositionEnd,\n className: classNames(showCount ? '' : className, classes === null || classes === void 0 ? void 0 : classes.textarea),\n style: !showCount && style,\n disabled: disabled,\n prefixCls: prefixCls,\n ref: resizableTextAreaRef\n }))\n });\n\n if (showCount) {\n var valueLength = _toConsumableArray(val).length;\n\n var dataCount;\n\n if (_typeof(showCount) === 'object') {\n dataCount = showCount.formatter({\n value: val,\n count: valueLength,\n maxLength: maxLength\n });\n } else {\n dataCount = \"\".concat(valueLength).concat(hasMaxLength ? \" / \".concat(maxLength) : '');\n }\n\n return /*#__PURE__*/React.createElement(\"div\", {\n hidden: rest.hidden,\n className: classNames(\"\".concat(prefixCls, \"-show-count\"), className, classes === null || classes === void 0 ? void 0 : classes.countWrapper),\n style: style,\n \"data-count\": dataCount\n }, textarea, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-data-count\")\n }, dataCount));\n }\n\n return textarea;\n});\nexport default TextArea;","var __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { forwardRef } from 'react';\nimport * as React from 'react';\nimport RcTextArea from 'rc-textarea';\nimport classNames from 'classnames';\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport { FormItemInputContext } from '../form/context';\nimport useStyle from './style';\nimport SizeContext from '../config-provider/SizeContext';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { triggerFocus } from './Input';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport { ConfigContext } from '../config-provider';\nconst TextArea = /*#__PURE__*/forwardRef((_a, ref) => {\n var {\n prefixCls: customizePrefixCls,\n bordered = true,\n size: customizeSize,\n disabled: customDisabled,\n status: customStatus,\n allowClear\n } = _a,\n rest = __rest(_a, [\"prefixCls\", \"bordered\", \"size\", \"disabled\", \"status\", \"allowClear\"]);\n const {\n getPrefixCls,\n direction\n } = React.useContext(ConfigContext);\n // ===================== Size =====================\n const size = React.useContext(SizeContext);\n const mergedSize = customizeSize || size;\n // ===================== Disabled =====================\n const disabled = React.useContext(DisabledContext);\n const mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== Status =====================\n const {\n status: contextStatus,\n hasFeedback,\n feedbackIcon\n } = React.useContext(FormItemInputContext);\n const mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Ref =====================\n const innerRef = React.useRef(null);\n React.useImperativeHandle(ref, () => {\n var _a;\n return {\n resizableTextArea: (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.resizableTextArea,\n focus: option => {\n var _a, _b;\n triggerFocus((_b = (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.resizableTextArea) === null || _b === void 0 ? void 0 : _b.textArea, option);\n },\n blur: () => {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n }\n };\n });\n const prefixCls = getPrefixCls('input', customizePrefixCls);\n // Allow clear\n let mergedAllowClear;\n if (typeof allowClear === 'object' && (allowClear === null || allowClear === void 0 ? void 0 : allowClear.clearIcon)) {\n mergedAllowClear = allowClear;\n } else if (allowClear) {\n mergedAllowClear = {\n clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null)\n };\n }\n // ===================== Style =====================\n const [wrapSSR, hashId] = useStyle(prefixCls);\n return wrapSSR( /*#__PURE__*/React.createElement(RcTextArea, Object.assign({}, rest, {\n disabled: mergedDisabled,\n allowClear: mergedAllowClear,\n classes: {\n affixWrapper: classNames(`${prefixCls}-textarea-affix-wrapper`, {\n [`${prefixCls}-affix-wrapper-rtl`]: direction === 'rtl',\n [`${prefixCls}-affix-wrapper-borderless`]: !bordered,\n [`${prefixCls}-affix-wrapper-sm`]: mergedSize === 'small',\n [`${prefixCls}-affix-wrapper-lg`]: mergedSize === 'large'\n }, getStatusClassNames(`${prefixCls}-affix-wrapper`, mergedStatus), hashId),\n countWrapper: classNames(`${prefixCls}-textarea`, `${prefixCls}-textarea-show-count`, {\n [`${prefixCls}-textarea-show-count-rtl`]: direction === 'rtl'\n }, hashId),\n textarea: classNames({\n [`${prefixCls}-borderless`]: !bordered,\n [`${prefixCls}-sm`]: mergedSize === 'small',\n [`${prefixCls}-lg`]: mergedSize === 'large'\n }, getStatusClassNames(prefixCls, mergedStatus), hashId)\n },\n prefixCls: prefixCls,\n suffix: hasFeedback && /*#__PURE__*/React.createElement(\"span\", {\n className: `${prefixCls}-textarea-suffix`\n }, feedbackIcon),\n ref: innerRef\n })));\n});\nexport default TextArea;","import Group from './Group';\nimport InternalInput from './Input';\nimport Password from './Password';\nimport Search from './Search';\nimport TextArea from './TextArea';\nconst Input = InternalInput;\nif (process.env.NODE_ENV !== 'production') {\n Input.displayName = 'Input';\n}\nInput.Group = Group;\nInput.Search = Search;\nInput.TextArea = TextArea;\nInput.Password = Password;\nexport default Input;","import confirm, { modalGlobalConfig, withConfirm, withError, withInfo, withSuccess, withWarn } from './confirm';\nimport destroyFns from './destroyFns';\nimport OriginModal from './Modal';\nimport PurePanel from './PurePanel';\nimport useModal from './useModal';\nfunction modalWarn(props) {\n return confirm(withWarn(props));\n}\nconst Modal = OriginModal;\nModal.useModal = useModal;\nModal.info = function infoFn(props) {\n return confirm(withInfo(props));\n};\nModal.success = function successFn(props) {\n return confirm(withSuccess(props));\n};\nModal.error = function errorFn(props) {\n return confirm(withError(props));\n};\nModal.warning = modalWarn;\nModal.warn = modalWarn;\nModal.confirm = function confirmFn(props) {\n return confirm(withConfirm(props));\n};\nModal.destroyAll = function destroyAllFn() {\n while (destroyFns.length) {\n const close = destroyFns.pop();\n if (close) {\n close();\n }\n }\n};\nModal.config = modalGlobalConfig;\nModal._InternalPanelDoNotUseOrYouWillBeFired = PurePanel;\nif (process.env.NODE_ENV !== 'production') {\n Modal.displayName = 'Modal';\n}\nexport default Modal;",null,"/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport default memoize;\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport weakMemoize from '@emotion/weak-memoize';\nimport memoize from '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = element.parent === children[0]; // in nested rules comments become children of the \"auto-inserted\" rule\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? children[0].children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar isBrowser = typeof document !== 'undefined';\nvar getServerStylisCache = isBrowser ? undefined : weakMemoize(function () {\n return memoize(function () {\n var cache = {};\n return function (name) {\n return cache[name];\n };\n });\n});\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (isBrowser && key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n if (isBrowser) {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n if (isBrowser) {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n } else {\n var _finalizingPlugins = [stringify];\n\n var _serializer = middleware(omnipresentPlugins.concat(stylisPlugins, _finalizingPlugins));\n\n var _stylis = function _stylis(styles) {\n return serialize(compile(styles), _serializer);\n }; // $FlowFixMe\n\n\n var serverStylisCache = getServerStylisCache(stylisPlugins)(key);\n\n var getRules = function getRules(selector, serialized) {\n var name = serialized.name;\n\n if (serverStylisCache[name] === undefined) {\n serverStylisCache[name] = _stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n }\n\n return serverStylisCache[name];\n };\n\n _insert = function _insert(selector, serialized, sheet, shouldCache) {\n var name = serialized.name;\n var rules = getRules(selector, serialized);\n\n if (cache.compat === undefined) {\n // in regular mode, we don't set the styles on the inserted cache\n // since we don't need to and that would be wasting memory\n // we return them so that they are rendered in a style tag\n if (shouldCache) {\n cache.inserted[name] = true;\n }\n\n if ( // using === development instead of !== production\n // because if people do ssr in tests, the source maps showing up would be annoying\n process.env.NODE_ENV === 'development' && serialized.map !== undefined) {\n return rules + serialized.map;\n }\n\n return rules;\n } else {\n // in compat mode, we put the styles on the inserted cache so\n // that emotion-server can pull out the styles\n // except when we don't want to cache it which was in Global but now\n // is nowhere but we don't want to do a major right now\n // and just in case we're going to leave the case here\n // it's also not affecting client side bundle size\n // so it's really not a big deal\n if (shouldCache) {\n cache.inserted[name] = rules;\n } else {\n return rules;\n }\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport default createCache;\n","var weakMemoize = function weakMemoize(func) {\n // $FlowFixMe flow doesn't include all non-primitive types as allowed for weakmaps\n var cache = new WeakMap();\n return function (arg) {\n if (cache.has(arg)) {\n // $FlowFixMe\n return cache.get(arg);\n }\n\n var ret = func(arg);\n cache.set(arg, ret);\n return ret;\n };\n};\n\nexport default weakMemoize;\n","'use strict';\n\nvar reactIs = require('react-is');\n\n/**\n * Copyright 2015, Yahoo! Inc.\n * Copyrights licensed under the New BSD License. See the accompanying LICENSE file for terms.\n */\nvar REACT_STATICS = {\n childContextTypes: true,\n contextType: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDefaultProps: true,\n getDerivedStateFromError: true,\n getDerivedStateFromProps: true,\n mixins: true,\n propTypes: true,\n type: true\n};\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\nvar FORWARD_REF_STATICS = {\n '$$typeof': true,\n render: true,\n defaultProps: true,\n displayName: true,\n propTypes: true\n};\nvar MEMO_STATICS = {\n '$$typeof': true,\n compare: true,\n defaultProps: true,\n displayName: true,\n propTypes: true,\n type: true\n};\nvar TYPE_STATICS = {};\nTYPE_STATICS[reactIs.ForwardRef] = FORWARD_REF_STATICS;\nTYPE_STATICS[reactIs.Memo] = MEMO_STATICS;\n\nfunction getStatics(component) {\n // React v16.11 and below\n if (reactIs.isMemo(component)) {\n return MEMO_STATICS;\n } // React v16.12 and above\n\n\n return TYPE_STATICS[component['$$typeof']] || REACT_STATICS;\n}\n\nvar defineProperty = Object.defineProperty;\nvar getOwnPropertyNames = Object.getOwnPropertyNames;\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\nvar getPrototypeOf = Object.getPrototypeOf;\nvar objectPrototype = Object.prototype;\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n if (objectPrototype) {\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n }\n\n var keys = getOwnPropertyNames(sourceComponent);\n\n if (getOwnPropertySymbols) {\n keys = keys.concat(getOwnPropertySymbols(sourceComponent));\n }\n\n var targetStatics = getStatics(targetComponent);\n var sourceStatics = getStatics(sourceComponent);\n\n for (var i = 0; i < keys.length; ++i) {\n var key = keys[i];\n\n if (!KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) && !(targetStatics && targetStatics[key])) {\n var descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n try {\n // Avoid failures from read-only properties\n defineProperty(targetComponent, key, descriptor);\n } catch (e) {}\n }\n }\n }\n\n return targetComponent;\n}\n\nmodule.exports = hoistNonReactStatics;\n","var isBrowser = typeof document !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false && cache.compat !== undefined) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var stylesForSSR = '';\n var current = serialized;\n\n do {\n var maybeStyles = cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n if (!isBrowser && maybeStyles !== undefined) {\n stylesForSSR += maybeStyles;\n }\n\n current = current.next;\n } while (current !== undefined);\n\n if (!isBrowser && stylesForSSR.length !== 0) {\n return stylesForSSR;\n }\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","var unitlessKeys = {\n animationIterationCount: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport default unitlessKeys;\n","import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = /* #__PURE__ */memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n var contentValuePattern = /(var|attr|counters?|url|element|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n var contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n throw new Error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar noComponentSelectorMessage = 'Component selectors can only be used in conjunction with ' + '@emotion/babel-plugin, the swc Emotion plugin, or another Emotion-aware ' + 'compiler transform.';\n\nfunction handleInterpolation(mergedProps, registered, interpolation) {\n if (interpolation == null) {\n return '';\n }\n\n if (interpolation.__emotion_styles !== undefined) {\n if (process.env.NODE_ENV !== 'production' && interpolation.toString() === 'NO_COMPONENT_SELECTOR') {\n throw new Error(noComponentSelectorMessage);\n }\n\n return interpolation;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n };\n return interpolation.name;\n }\n\n if (interpolation.styles !== undefined) {\n var next = interpolation.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = interpolation.styles + \";\";\n\n if (process.env.NODE_ENV !== 'production' && interpolation.map !== undefined) {\n styles += interpolation.map;\n }\n\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result);\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (match, p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error('`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' + 'Instead of doing this:\\n\\n' + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + '\\n\\nYou should wrap it with `css` like this:\\n\\n' + (\"css`\" + replaced + \"`\"));\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n if (registered == null) {\n return interpolation;\n }\n\n var cached = registered[interpolation];\n return cached !== undefined ? cached : interpolation;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i]) + \";\";\n }\n } else {\n for (var _key in obj) {\n var value = obj[_key];\n\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += _key + \"{\" + registered[value] + \"}\";\n } else if (isProcessableValue(value)) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value) + \";\";\n }\n } else {\n if (_key === 'NO_COMPONENT_SELECTOR' && process.env.NODE_ENV !== 'production') {\n throw new Error(noComponentSelectorMessage);\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value);\n\n switch (_key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(_key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (process.env.NODE_ENV !== 'production' && _key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += _key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*(;|$)/g;\nvar sourceMapPattern;\n\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//g;\n} // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\n\nvar cursor;\nvar serializeStyles = function serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings);\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i]);\n\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[i];\n }\n }\n\n var sourceMap;\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, function (match) {\n sourceMap = match;\n return '';\n });\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + // $FlowFixMe we know it's not null\n match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name: name,\n styles: styles,\n map: sourceMap,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n }\n\n return {\n name: name,\n styles: styles,\n next: cursor\n };\n};\n\nexport { serializeStyles };\n","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport default murmur2;\n","import * as React from 'react';\nimport { useLayoutEffect } from 'react';\n\nvar isBrowser = typeof document !== 'undefined';\n\nvar syncFallback = function syncFallback(create) {\n return create();\n};\n\nvar useInsertionEffect = React['useInsertion' + 'Effect'] ? React['useInsertion' + 'Effect'] : false;\nvar useInsertionEffectAlwaysWithSyncFallback = !isBrowser ? syncFallback : useInsertionEffect || syncFallback;\nvar useInsertionEffectWithLayoutFallback = useInsertionEffect || useLayoutEffect;\n\nexport { useInsertionEffectAlwaysWithSyncFallback, useInsertionEffectWithLayoutFallback };\n","import { createContext, useContext, forwardRef, createElement, Fragment } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = typeof document !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = useContext(ThemeContext);\n return /*#__PURE__*/createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n var rules = useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n if (!isBrowser && rules !== undefined) {\n var _ref2;\n\n var serializedNames = serialized.name;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n next = next.next;\n }\n\n return /*#__PURE__*/createElement(\"style\", (_ref2 = {}, _ref2[\"data-emotion\"] = cache.key + \" \" + serializedNames, _ref2.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref2.nonce = cache.sheet.nonce, _ref2));\n }\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/createElement(Fragment, null, /*#__PURE__*/createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nexport { CacheProvider as C, Emotion as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { createElement, useContext, useRef, Fragment } from 'react';\nimport '@emotion/cache';\nimport { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-3838ba9e.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-3838ba9e.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport 'hoist-non-react-statics';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.10.6\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": \"./macro.js\"\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.js\",\n\t\t\"macro.d.ts\",\n\t\t\"macro.js.flow\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.10.6\",\n\t\t\"@emotion/cache\": \"^11.10.5\",\n\t\t\"@emotion/serialize\": \"^1.1.1\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.0\",\n\t\t\"@emotion/utils\": \"^1.2.0\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.0\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.10.6\",\n\t\t\"@emotion/css-prettifier\": \"1.1.1\",\n\t\t\"@emotion/server\": \"11.10.0\",\n\t\t\"@emotion/styled\": \"11.10.6\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": \"./macro.js\"\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other <Global/>s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from <ClassNames/> component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n var rules = useInsertionEffectAlwaysWithSyncFallback(function () {\n var rules = '';\n\n for (var i = 0; i < serializedArr.length; i++) {\n var res = insertStyles(cache, serializedArr[i], false);\n\n if (!isBrowser$1 && res !== undefined) {\n rules += res;\n }\n }\n\n if (!isBrowser$1) {\n return rules;\n }\n });\n\n if (!isBrowser$1 && rules.length !== 0) {\n var _ref2;\n\n return /*#__PURE__*/createElement(\"style\", (_ref2 = {}, _ref2[\"data-emotion\"] = cache.key + \" \" + serializedArr.map(function (serialized) {\n return serialized.name;\n }).join(' '), _ref2.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref2.nonce = cache.sheet.nonce, _ref2));\n }\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/createElement(Fragment, null, /*#__PURE__*/createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = typeof document !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n",null,null,"/******************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\r\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\r\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\r\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\r\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\r\n var _, done = false;\r\n for (var i = decorators.length - 1; i >= 0; i--) {\r\n var context = {};\r\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\r\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\r\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\r\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\r\n if (kind === \"accessor\") {\r\n if (result === void 0) continue;\r\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\r\n if (_ = accept(result.get)) descriptor.get = _;\r\n if (_ = accept(result.set)) descriptor.set = _;\r\n if (_ = accept(result.init)) initializers.push(_);\r\n }\r\n else if (_ = accept(result)) {\r\n if (kind === \"field\") initializers.push(_);\r\n else descriptor[key] = _;\r\n }\r\n }\r\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\r\n done = true;\r\n};\r\n\r\nexport function __runInitializers(thisArg, initializers, value) {\r\n var useValue = arguments.length > 2;\r\n for (var i = 0; i < initializers.length; i++) {\r\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\r\n }\r\n return useValue ? value : void 0;\r\n};\r\n\r\nexport function __propKey(x) {\r\n return typeof x === \"symbol\" ? x : \"\".concat(x);\r\n};\r\n\r\nexport function __setFunctionName(f, name, prefix) {\r\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\r\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\r\n};\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n var desc = Object.getOwnPropertyDescriptor(m, k);\r\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\r\n desc = { enumerable: true, get: function() { return m[k]; } };\r\n }\r\n Object.defineProperty(o, k2, desc);\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || Array.prototype.slice.call(from));\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n\r\nexport function __classPrivateFieldIn(state, receiver) {\r\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\r\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\r\n}\r\n"],"names":["_classCallCheck","instance","Constructor","TypeError","_typeof","obj","Symbol","iterator","constructor","prototype","_toPropertyKey","arg","key","input","hint","prim","toPrimitive","undefined","res","call","String","Number","_defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","toPropertyKey","_createClass","protoProps","staticProps","_setPrototypeOf","o","p","setPrototypeOf","bind","__proto__","_inherits","subClass","superClass","create","value","_getPrototypeOf","getPrototypeOf","_assertThisInitialized","self","ReferenceError","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","isNativeReflectConstruct","result","Super","NewTarget","this","arguments","apply","assertThisInitialized","possibleConstructorReturn","hasOwn","hasOwnProperty","classNames","classes","argType","push","Array","isArray","inner","toString","includes","join","module","exports","default","window","_extends","assign","source","toArray","children","option","ret","React","Children","forEach","child","keepEmpty","concat","isFragment","process","env","NODE_ENV","b","for","c","d","f","g","h","k","l","m","n","q","r","t","v","w","x","y","z","a","u","$$typeof","type","A","reactIs_production_min","AsyncMode","ConcurrentMode","ContextProvider","Element","ForwardRef","Fragment","Memo","Portal","Profiler","StrictMode","Suspense","isAsyncMode","isConcurrentMode","isContextConsumer","isContextProvider","isElement","isForwardRef","isLazy","isMemo","isProfiler","isStrictMode","isSuspense","isValidElementType","typeOf","require$$0","hasSymbol","REACT_ELEMENT_TYPE","REACT_PORTAL_TYPE","REACT_FRAGMENT_TYPE","REACT_STRICT_MODE_TYPE","REACT_PROFILER_TYPE","REACT_PROVIDER_TYPE","REACT_CONTEXT_TYPE","REACT_ASYNC_MODE_TYPE","REACT_CONCURRENT_MODE_TYPE","REACT_FORWARD_REF_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_MEMO_TYPE","REACT_LAZY_TYPE","REACT_BLOCK_TYPE","REACT_FUNDAMENTAL_TYPE","REACT_RESPONDER_TYPE","REACT_SCOPE_TYPE","object","$$typeofType","ContextConsumer","Lazy","hasWarnedAboutDeprecatedIsAsyncMode","reactIs_development","console","isPortal","warned","warning","valid","message","error","warningOnce","method","_defineProperty","ownKeys","enumerableOnly","keys","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","_objectSpread2","getOwnPropertyDescriptors","defineProperties","useMemo","getValue","condition","shouldUpdate","cacheRef","useRef","current","fillRef","ref","node","composeRef","_len","refs","_key","refList","useComposeRef","_len2","_key2","prev","next","every","supportRef","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","render","isDOM","HTMLElement","SVGElement","findDOMNode","Component","ReactDOM","MapShim","Map","getIndex","arr","some","entry","index","class_1","__entries__","get","set","delete","entries","splice","has","clear","callback","ctx","_i","_a","isBrowser","document","global$1","global","Math","Function","requestAnimationFrame$1","requestAnimationFrame","setTimeout","Date","now","transitionKeys","mutationObserverSupported","MutationObserver","ResizeObserverController","connected_","mutationEventsAdded_","mutationsObserver_","observers_","onTransitionEnd_","refresh","delay","leadingCall","trailingCall","lastCallTime","resolvePending","proxy","timeoutCallback","timeStamp","throttle","addObserver","observer","indexOf","connect_","removeObserver","observers","disconnect_","updateObservers_","activeObservers","gatherActive","hasActive","broadcastActive","addEventListener","observe","attributes","childList","characterData","subtree","removeEventListener","disconnect","_b","propertyName","getInstance","instance_","defineConfigurable","getWindowOf","ownerDocument","defaultView","emptyRect","createRectInit","toFloat","parseFloat","getBordersSize","styles","positions","reduce","size","position","getHTMLElementContentRect","clientWidth","clientHeight","getComputedStyle","paddings","positions_1","getPaddings","horizPad","left","right","vertPad","top","bottom","width","height","boxSizing","round","documentElement","isDocumentElement","vertScrollbar","horizScrollbar","abs","isSVGGraphicsElement","SVGGraphicsElement","getBBox","getContentRect","bbox","getSVGContentRect","ResizeObservation","broadcastWidth","broadcastHeight","contentRect_","isActive","rect","broadcastRect","ResizeObserverEntry","rectInit","contentRect","Constr","DOMRectReadOnly","createReadOnlyRect","ResizeObserverSPI","controller","callbackCtx","activeObservations_","observations_","callback_","controller_","callbackCtx_","observations","unobserve","clearActive","_this","observation","map","WeakMap","ResizeObserver","elementListeners","onResize","entities","entity","_elementListeners$get","listener","resizeObserver","DomWrapper","_React$Component","_super","CollectionContext","createContext","SingleObserver","disabled","elementRef","wrapperRef","onCollectionResize","useContext","isRenderProps","mergedChildren","sizeRef","offsetWidth","offsetHeight","canRef","isValidElement","originRef","mergedRef","getDom","useImperativeHandle","propsRef","onInternalResize","useCallback","_propsRef$current","data","_target$getBoundingCl","getBoundingClientRect","fixedWidth","floor","fixedHeight","mergedOffsetWidth","mergedOffsetHeight","sizeInfo","_objectSpread","Promise","resolve","then","useEffect","element","currentElement","Set","add","createElement","cloneElement","RefSingleObserver","forwardRef","displayName","childNodes","RefResizeObserver","omit","fields","clone","_arrayLikeToArray","len","arr2","_iterableToArray","iter","from","_unsupportedIterableToArray","minLen","arrayLikeToArray","slice","name","test","_toConsumableArray","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","murmur2","str","charCodeAt","_objectWithoutProperties","excluded","sourceKeys","objectWithoutPropertiesLoose","sourceSymbolKeys","propertyIsEnumerable","isEqual","obj1","obj2","shallow","refSet","deepEqual","level","circular","newLevel","Collection","_ref","onBatchResize","resizeIdRef","resizeInfosRef","currentId","Provider","Entity","cache","valueFn","path","nextValue","_excluded","ATTR_TOKEN","ATTR_MARK","ATTR_DEV_CACHE_PATH","CSS_IN_JS_INSTANCE","CSS_IN_JS_INSTANCE_ID","random","createCache","head","body","querySelectorAll","firstChild","style","insertBefore","styleHash","_style$parentNode","hash","getAttribute","parentNode","removeChild","CacheEntity","StyleContext","hashPriority","defaultCache","StyleProvider","restProps","parentContext","context","mergedContext","_arrayWithHoles","_nonIterableRest","_slicedToArray","arrayWithHoles","_s","_e","_x","_r","_arr","_n","_d","done","err","iterableToArrayLimit","nonIterableRest","webpackHMR","useHMR","hot","win","webpackHotUpdate","originWebpackHotUpdate","useClientCache","prefix","keyPath","cacheFn","onCacheRemove","globalCache","fullPath","HMRUpdate","update","prevCache","_ref2","_ref2$","times","tmpCache","_ref4","_ref4$","canUseDom","contains","root","APPEND_ORDER","MARK_KEY","containerCache","getMark","mark","startsWith","getContainer","attachTo","querySelector","findStyles","container","tagName","injectCSS","css","csp","prepend","styleNode","setAttribute","getOrder","nonce","innerHTML","existStyle","nextSibling","appendChild","findExistNode","find","removeCSS","existNode","updateCSS","cachedRealContainer","placeholderStyle","syncRealContainer","_option$csp","_option$csp2","_option$csp3","newNode","flattenToken","token","layerKey","replace","layerWidth","canLayer","supportLayer","styleStr","handleElement","_ele$parentNode","_ele","zIndex","support","supportSelector","ele","className","EMPTY_OVERRIDE","hashPrefix","tokenKeys","cleanTokenStyle","tokenKey","tokenKeyList","cleanableKeyList","removeStyleTags","useCacheToken","theme","tokens","_option$salt","salt","_option$override","override","formatToken","mergedToken","tokenStr","overrideTokenStr","cachedToken","useGlobalCache","id","mergedDerivativeToken","getDerivativeToken","token2key","_tokenKey","recordCleanToken","hashId","_hashId","unitlessKeys","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","msGridRow","msGridRowSpan","msGridColumn","msGridColumnSpan","fontWeight","lineHeight","opacity","order","orphans","tabSize","widows","zoom","WebkitLineClamp","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","MS","MOZ","WEBKIT","COMMENT","RULESET","DECLARATION","IMPORT","KEYFRAMES","fromCharCode","trim","pattern","replacement","indexof","search","charat","substr","begin","end","strlen","sizeof","append","array","line","column","character","characters","parent","return","copy","peek","caret","alloc","dealloc","delimit","delimiter","whitespace","escaping","count","commenter","identifier","compile","parse","rule","rules","rulesets","pseudo","points","declarations","offset","atrule","property","previous","variable","scanning","ampersand","reference","comment","declaration","ruleset","post","j","serialize","output","stringify","middleware","collection","lintWarning","info","parentSelectors","devWarning","linter","charAt","isClientSide","SKIP_CHECK","normalizeStyle","parseStyle","interpolation","config","injectHash","layer","_config$transformers","transformers","_config$linters","linters","effectStyle","parseKeyframes","keyframes","animationName","getName","_parsedStr","flattenStyleList","flattenList","list","fullList","item","originStyle","_keyframe","mergedStyle","trans","_trans$visit","visit","isCompoundCSSProperty","_value","actualValue","contentQuotesLinter","hashedAnimationLinter","styleName","match","toLowerCase","formatValue","unitless","subInjectHash","mergedKey","nextRoot","hashClassName","hashSelector","split","_firstPath$match","firstPath","htmlElement","injectSelectorHash","_parseStyle4","_parsedStr2","childEffectStyle","layerCells","layerName","Empty","useStyleRegister","styleFn","_React$useContext","autoClear","mock","ssrInline","isMergedClientSide","_useGlobalCache","styleObj","_parseStyle6","parsedStyle","styleId","uniqueHash","effectKey","fromHMR","_useGlobalCache2","cachedStyleStr","cachedTokenKey","cachedStyleId","dangerouslySetInnerHTML","__html","Keyframe","ThemeCache","cacheCallTimes","derivativeOption","_cache2","_cache3","updateCallTimes","derivative","_cache","_cache$map","_this$internalGet","internalGet","MAX_CACHE_SIZE","MAX_CACHE_OFFSET","_this$keys$reduce","callTimes","targetKey","cacheValue","currentCache","derivatives","_cache$value","deleteByPath","sameDerivativeOption","uuid","Theme","cacheThemes","createTheme","derivativeArr","noSplit","notSplit","Context$1","HOOK_MARK","warningFunc","Context","getFieldValue","getFieldsValue","getFieldError","getFieldWarning","getFieldsError","isFieldsTouched","isFieldTouched","isFieldValidating","isFieldsValidating","resetFields","setFields","setFieldValue","setFieldsValue","validateFields","submit","getInternalHooks","dispatch","initEntityValue","registerField","useSubscribe","setInitialValues","destroyForm","setCallbacks","registerWatch","getFields","setValidateMessages","setPreserve","getInitialValue","_regeneratorRuntime","Op","desc","$Symbol","iteratorSymbol","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","define","wrap","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","makeInvokeMethod","tryCatch","fn","ContinueSentinel","GeneratorFunction","GeneratorFunctionPrototype","IteratorPrototype","getProto","NativeIteratorPrototype","values","Gp","defineIteratorMethods","_invoke","AsyncIterator","PromiseImpl","invoke","reject","record","__await","unwrapped","previousPromise","callInvokeWithMethodAndArg","state","Error","doneResult","delegate","delegateResult","maybeInvokeDelegate","sent","_sent","dispatchException","abrupt","methodName","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iterable","iteratorMethod","isNaN","isGeneratorFunction","genFun","ctor","awrap","async","val","reverse","pop","skipTempReset","stop","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","complete","finish","catch","thrown","delegateYield","asyncGeneratorStep","gen","_next","_throw","_asyncToGenerator","args","_construct","Parent","Class","_isNativeReflectConstruct","_wrapNativeSuper","Wrapper","formatRegExp","convertFieldsError","errors","field","format","template","JSON","_","isEmptyValue","isNativeStringType","asyncSerialArray","func","arrLength","original","warn","ASYNC_VALIDATOR_NO_WARNING","AsyncValidationError","_Error","asyncMap","objArr","first","_pending","flattenArr","flattenObjArr","firstFields","objArrKeys","objArrLength","total","results","pending","asyncParallelArray","complementError","oe","fieldValue","fullFields","fullField","deepMerge","s","urlReg","required$1","options","required","messages","pattern$2","types","integer","number","parseInt","float","regexp","RegExp","date","getTime","getMonth","getYear","email","url","word","includeBoundaries","v4","v6seg","v6","v46Exact","v4exact","v6exact","ip","exact","ipv4","ipv6","getUrlRegex","hex","ENUM$1","ruleType","range","min","max","num","enum","lastIndex","mismatch","validators","string","boolean","dateObject","any","newMessages","invalid","cloned","Schema","_messages","_proto","validate","source_","oc","_this2","messages$1","series","transform","validator","getValidationMethod","getType","errorFields","doIt","deep","defaultField","addFullField","schema","cb","errorList","suppressWarning","filledErrors","fieldsSchema","paredFieldsSchema","fieldSchema","fieldSchemaList","errs","finalErrors","asyncValidator","suppressValidatorError","_errors","messageIndex","register","typeTemplate","defaultValidateMessages","internalSet","paths","removeIfUndefined","_paths","restPath","cloneDeep","cloneArrayDeep","cloneObjectDeep","getNamePath","store","namePath","setValue","newStore","cloneByNamePathList","namePathList","containsNamePath","matchNamePath","isObject","internalSetValues","prevValue","recursive","setValues","restValues","changedNamePath","nameUnit","defaultGetValueFromEvent","valuePropName","event","move","moveIndex","toIndex","diff","AsyncValidator","RawAsyncValidator","replaceMessage","kv","CODE_LOGIC_ERROR","validateRule","_x2","_x3","_x4","_x5","_validateRule","_callee2","messageVariables","cloneRule","originValidator","subRuleField","subResults","fillVariableResult","_context2","ruleIndex","validateMessages","t0","mergedMessage","all","subValue","validateRules","validateFirst","summaryPromise","filledRules","currentRule","originValidatorFunc","hasPromise","promise","sort","w1","warningOnly","i1","w2","i2","_ref3","_callee","_context","_x6","_x7","rulePromises","_x9","_finishOnFirstFailed","finishOnFirstFailed","_x8","_finishOnAllFailed","finishOnAllFailed","_callee3","_context3","errorsList","_ref5","_callee4","_context4","ruleError","EMPTY_ERRORS","requireUpdate","Field","resetCount","cancelRegisterFunc","mounted","touched","dirty","validatePromise","prevValidating","warnings","cancelRegister","_this$props","preserve","isListField","_this$props2","_fieldContext$prefixN","fieldContext","prefixName","getRules","_this$props3","_this$props3$rules","setState","triggerMetaEvent","destroy","onMetaChange","getMeta","onStoreChange","prevStore","_this$props4","_this$props4$dependen","dependencies","onReset","curValue","namePathMatch","reRender","validating","dependency","relatedFields","currentValue","rootPromise","_this$props5","_this$props5$validate","triggerName","filteredRules","validateTrigger","ruleErrors","_ruleErrors$forEach","nextErrors","nextWarnings","_ref3$errors","isFieldDirty","initialValue","getErrors","getWarnings","isList","isPreserve","validated","getOnlyChild","meta","getControlled","isFunction","toChildrenArray","childProps","_this$props6","trigger","getValueFromEvent","normalize","getValueProps","mergedValidateTrigger","mergedGetValueProps","originTriggerFunc","control","newValue","originTrigger","_this$props7","forceUpdate","returnChildNode","_this$getOnlyChild","WrapperField","FieldContext","contextType","defaultProps","ListContext","SPLIT","cell","NameMap","kvs","updater","cells","_cell$match2","unit","json","FormStore","forceRootUpdate","formHooked","subscribable","fieldEntities","initialValues","callbacks","lastValidatePromise","getForm","_init","prevWithoutPreserves","init","_this$prevWithoutPres","nextStore","updateStore","getFieldEntities","isMergedPreserve","initValue","watchList","notifyWatch","timeoutId","warningUnhooked","getFieldsMap","pure","getFieldEntitiesForNamePathList","nameList","INVALIDATE_NAME_PATH","filterFunc","filteredNameList","_entity$isListField","arg0","arg1","isAllFieldsTouched","shortNamePath","fieldNamePath","isNamePathListTouched","namePathListEntities","testField","resetWithFieldInitialValue","records","requiredFieldEntities","_requiredFieldEntitie","originValue","skipExist","notifyObservers","fieldData","fieldPreserve","mergedPreserve","subNamePath","defaultValue","_prevStore","triggerDependenciesUpdate","action","updateValue","_namePath","mergedInfo","childrenFields","getDependencyChildrenFields","onValuesChange","triggerOnFieldsChange","rootNamePath","dependencies2fields","dependencyNamePath","fillChildren","filedErrors","onFieldsChange","fieldName","provideNameList","promiseList","mergedErrors","mergedWarnings","_ref6","hasError","allPromiseFinish","resultNamePathList","_ref7","returnPromise","outOfDate","onFinish","onFinishFailed","useForm","form","formRef","useState","formStore","FormContext","triggerFormChange","triggerFormFinish","registerForm","unregisterForm","FormProvider","onFormChange","onFormFinish","formContext","formsRef","changedFields","forms","newForms","Form","_ref$component","component","_ref$validateTrigger","_onFieldsChange","_onFinish","formInstance","_formInstance$getInte","rest","childrenNode","mountRef","childrenRenderProps","prevFieldsRef","targetKeys","sourceValue","targetValue","isSimilar","formContextValue","wrapperNode","onSubmit","preventDefault","stopPropagation","_restProps$onReset","useWatchWarning","fullyStr","RefForm","FieldForm","List","keyManager","parentPrefixName","listContext","getKey","pathName","_ref3$value","onChange","getNewValue","operations","remove","indexSet","keysIndex","valueIndex","to","_move","listValue","__","useWatch","_args$","_useState2","valueStr","valueStrRef","isValidForm","namePathRef","nextValueStr","rcWarning","warning$2","TimePicker","placeholder","rangePlaceholder","locale","lang","yearPlaceholder","quarterPlaceholder","monthPlaceholder","weekPlaceholder","rangeYearPlaceholder","rangeQuarterPlaceholder","rangeMonthPlaceholder","rangeWeekPlaceholder","today","backToToday","ok","month","year","timeSelect","dateSelect","weekSelect","monthSelect","yearSelect","decadeSelect","yearFormat","dateFormat","dayFormat","dateTimeFormat","monthBeforeYear","previousMonth","nextMonth","previousYear","nextYear","previousDecade","nextDecade","previousCentury","nextCentury","timePickerLocale","TimePickerLocale","defaultLocale","Pagination","items_per_page","jump_to","jump_to_confirm","page","prev_page","next_page","prev_5","next_5","prev_3","next_3","page_size","DatePicker","Calendar","Table","filterTitle","filterConfirm","filterReset","filterEmptyText","filterCheckall","filterSearchPlaceholder","emptyText","selectAll","selectInvert","selectNone","selectionAll","sortTitle","expand","collapse","triggerDesc","triggerAsc","cancelSort","Tour","Next","Previous","Finish","Modal","okText","cancelText","justOkText","Popconfirm","Transfer","titles","searchPlaceholder","itemUnit","itemsUnit","selectCurrent","removeCurrent","removeAll","Upload","uploading","removeFile","uploadError","previewFile","downloadFile","description","Icon","icon","Text","edit","copied","PageHeader","back","optional","Image","preview","QRCode","expired","runtimeLocale","changeConfirmLocale","newLocale","getConfirmLocale","LocaleContext$1","ANT_MARK","LocaleProvider","_ANT_MARK__","getMemoizedContextValue","exist","LocaleContext","LocaleProvider$1","version$1","PresetColors","bound01","isOnePointZero","isPercent","isPercentage","clamp01","boundAlpha","convertToPercentage","pad2","rgbToHsl","hue2rgb","rgbToHsv","rgbToHex","allow3Char","convertHexToDecimal","parseIntFromHex","names","aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkgrey","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkslategrey","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dimgrey","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","goldenrod","gold","gray","green","greenyellow","grey","honeydew","hotpink","indianred","indigo","ivory","khaki","lavenderblush","lavender","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightgrey","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightslategrey","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","slategrey","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen","inputToRGB","color","rgb","named","matchers","exec","rgba","hsl","hsla","hsv","hsva","hex8","hex6","hex4","hex3","stringInputToObject","isValidCSSUnit","mod","hsvToRgb","hslToRgb","CSS_UNIT","PERMISSIVE_MATCH3","PERMISSIVE_MATCH4","TinyColor","opts","numberInputToObject","originalInput","roundA","gradientType","isValid","isDark","getBrightness","isLight","toRgb","getLuminance","RsRGB","GsRGB","BsRGB","pow","getAlpha","setAlpha","alpha","isMonochrome","toHsl","toHsv","toHsvString","toHslString","toHex","toHexString","toHex8","allow4Char","rgbaToHex","toHex8String","toHexShortString","allowShortChar","toRgbString","toPercentageRgb","fmt","toPercentageRgbString","rnd","toName","formatSet","formattedString","hasAlpha","toNumber","lighten","amount","brighten","darken","tint","mix","shade","desaturate","saturate","greyscale","spin","hue","rgb1","rgb2","analogous","slices","part","complement","monochromatic","modification","splitcomplement","onBackground","background","fg","bg","triad","polyad","tetrad","increment","equals","hueStep","saturationStep","saturationStep2","brightnessStep1","brightnessStep2","lightColorCount","darkColorCount","darkColorMap","getHue","light","getSaturation","saturation","toFixed","generate","patterns","pColor","colorString","_hsv","_colorString","backgroundColor","presetPrimaryColors","volcano","geekblue","presetPalettes","presetDarkPalettes","primary","genControlHeight$1","controlHeight","controlHeightSM","controlHeightXS","controlHeightLG","defaultPresetColors","seedToken","colorPrimary","colorSuccess","colorWarning","colorError","colorInfo","colorTextBase","colorBgBase","fontFamily","fontFamilyCode","fontSize","lineWidth","lineType","motionUnit","motionBase","motionEaseOutCirc","motionEaseInOutCirc","motionEaseOut","motionEaseInOut","motionEaseOutBack","motionEaseInBack","motionEaseInQuint","motionEaseOutQuint","borderRadius","sizeUnit","sizeStep","sizePopupArrow","zIndexBase","zIndexPopupBase","opacityImage","wireframe","genColorMapToken","seed","generateColorPalettes","generateNeutralColorPalettes","colorSuccessBase","colorWarningBase","colorErrorBase","colorInfoBase","colorPrimaryBase","primaryColors","successColors","warningColors","errorColors","infoColors","neutralColors","colorPrimaryBg","colorPrimaryBgHover","colorPrimaryBorder","colorPrimaryBorderHover","colorPrimaryHover","colorPrimaryActive","colorPrimaryTextHover","colorPrimaryText","colorPrimaryTextActive","colorSuccessBg","colorSuccessBgHover","colorSuccessBorder","colorSuccessBorderHover","colorSuccessHover","colorSuccessActive","colorSuccessTextHover","colorSuccessText","colorSuccessTextActive","colorErrorBg","colorErrorBgHover","colorErrorBorder","colorErrorBorderHover","colorErrorHover","colorErrorActive","colorErrorTextHover","colorErrorText","colorErrorTextActive","colorWarningBg","colorWarningBgHover","colorWarningBorder","colorWarningBorderHover","colorWarningHover","colorWarningActive","colorWarningTextHover","colorWarningText","colorWarningTextActive","colorInfoBg","colorInfoBgHover","colorInfoBorder","colorInfoBorderHover","colorInfoHover","colorInfoActive","colorInfoTextHover","colorInfoText","colorInfoTextActive","colorBgMask","colorWhite","genRadius$1","radiusBase","radiusLG","radiusSM","radiusXS","radiusOuter","borderRadiusXS","borderRadiusSM","borderRadiusLG","borderRadiusOuter","getAlphaColor","baseColor","getSolidColor","brightness","colors","bgBaseColor","textBaseColor","colorText","colorTextSecondary","colorTextTertiary","colorTextQuaternary","colorFill","colorFillSecondary","colorFillTertiary","colorFillQuaternary","colorBgLayout","colorBgContainer","colorBgElevated","colorBgSpotlight","colorBorder","colorBorderSecondary","genFontMapToken$1","fontSizePairs","base","fontSizes","fill","baseSize","intSize","ceil","genFontSizes","pair","lineHeights","fontSizeSM","fontSizeLG","fontSizeXL","fontSizeHeading1","fontSizeHeading2","fontSizeHeading3","fontSizeHeading4","fontSizeHeading5","lineHeightLG","lineHeightSM","lineHeightHeading1","lineHeightHeading2","lineHeightHeading3","lineHeightHeading4","lineHeightHeading5","colorPalettes","colorKey","cur","genFontMapToken","sizeXXL","sizeXL","sizeLG","sizeMD","sizeMS","sizeSM","sizeXS","sizeXXS","genSizeMapToken","genControlHeight","motionDurationFast","motionDurationMid","motionDurationSlow","lineWidthBold","genRadius","genCommonMapToken","isStableColor","frontColor","fR","fG","fB","originAlpha","bR","bG","bB","fA","__rest","derivativeToken","restToken","overrideTokens","screenXL","screenXXL","colorLink","colorLinkHover","colorLinkActive","colorFillContent","colorFillContentHover","colorFillAlter","colorBgContainerDisabled","colorBorderBg","colorSplit","colorTextPlaceholder","colorTextDisabled","colorTextHeading","colorTextLabel","colorTextDescription","colorTextLightSolid","colorHighlight","colorBgTextHover","colorBgTextActive","colorIcon","colorIconHover","colorErrorOutline","colorWarningOutline","fontSizeIcon","lineWidthFocus","controlOutlineWidth","controlInteractiveSize","controlItemBgHover","controlItemBgActive","controlItemBgActiveHover","controlItemBgActiveDisabled","controlTmpOutline","controlOutline","fontWeightStrong","opacityLoading","linkDecoration","linkHoverDecoration","linkFocusDecoration","controlPaddingHorizontal","controlPaddingHorizontalSM","paddingXXS","paddingXS","paddingSM","padding","paddingMD","paddingLG","paddingXL","paddingContentHorizontalLG","paddingContentVerticalLG","paddingContentHorizontal","paddingContentVertical","paddingContentHorizontalSM","paddingContentVerticalSM","marginXXS","marginXS","marginSM","margin","marginMD","marginLG","marginXL","marginXXL","boxShadow","boxShadowSecondary","boxShadowTertiary","screenXS","screenXSMin","screenXSMax","screenSM","screenSMMin","screenSMMax","screenMD","screenMDMin","screenMDMax","screenLG","screenLGMin","screenLGMax","screenXLMin","screenXLMax","screenXXLMin","boxShadowPopoverArrow","boxShadowCard","boxShadowDrawerRight","boxShadowDrawerLeft","boxShadowDrawerUp","boxShadowDrawerDown","boxShadowTabsOverflowLeft","boxShadowTabsOverflowRight","boxShadowTabsOverflowTop","boxShadowTabsOverflowBottom","genPresetColor","genCss","lightColor","lightBorderColor","darkColor","textColor","roundedArrow","innerRadius","outerRadius","bgColor","unitWidth","ay","bx","sqrt","by","cx","cy","dx","dy","ex","ey","fx","fy","shadowWidth","pointerEvents","overflow","insetInlineStart","clipPath","content","insetInline","_skip_check_","textEllipsis","whiteSpace","textOverflow","resetComponent","listStyle","genLinkStyle","textDecoration","outline","cursor","transition","genCommonStyle","componentPrefixCls","rootPrefixSelector","genFocusOutline","outlineOffset","genFocusStyle","defaultIconPrefixCls","ConfigContext","getPrefixCls","suffixCls","customizePrefixCls","iconPrefixCls","genComponentStyleHook","getDefaultToken","prefixCls","useToken","rootPrefixCls","proxyToken","flush","noop","enableStatistic","prop","recording","componentName","componentToken","statisticToken","defaultComponentToken","mergedComponentToken","mergeToken","componentCls","iconCls","antCls","styleInterpolation","overrideComponentToken","CSSINJS_STATISTIC","merge","objs","defaultTheme","defaultDerivative","defaultConfig","defaultSeedToken","hashed","DesignTokenContext","rootDesignToken","components","version","mergedTheme","dynamicStyleMark","registerTheme","globalPrefixCls","variables","formatColor","fillColor","colorVal","primaryColor","primaryActiveColor","successColor","warningColor","errorColor","infoColor","getStyle","DisabledContext","DisabledContextProvider","originDisabled","DisabledContext$1","SizeContext","SizeContextProvider","originSize","SizeContext$1","useStyle$d","display","alignItems","fontStyle","textAlign","textTransform","verticalAlign","textRendering","svg","existThemeConfig","warnContext","PASSED_PROPS","globalIconPrefixCls","getGlobalPrefixCls","getGlobalIconPrefixCls","globalConfig","getIconPrefixCls","getRootPrefixCls","ProviderChildren","customCsp","autoInsertSpaceInButton","componentSize","direction","space","virtual","dropdownMatchSelectWidth","legacyLocale","customIconPrefixCls","componentDisabled","mergedPrefixCls","shouldWrapSSR","wrapSSR","useStyle","parentTheme","themeConfig","parentThemeConfig","inherit","mergedComponents","prevTheme","useTheme","baseConfig","propName","propValue","memoedConfig","prevConfig","currentConfig","prevKeys","currentKeys","memoIconContextValue","childNode","_c","RcFormProvider","IconContext","memoTheme","algorithm","themeObj","ConfigProvider","antLocale","useConfig","AntdConfigProvider","raf","caf","clearTimeout","cancelAnimationFrame","rafUUID","rafIds","cleanup","wrapperRaf","callRef","leftTimes","realId","addEventListenerWrap","eventType","unstable_batchedUpdates","cancel","CheckCircleFilledSvg","tag","attrs","viewBox","focusable","isIconDefinition","normalizeAttrs","acc","class","rootProps","getSecondaryColor","generateColor","normalizeTwoToneColors","twoToneColor","twoToneColorPalette","secondaryColor","calculated","IconBase","onClick","_useContext","mergedStyleStr","useInsertStyles","getTwoToneColors","setTwoToneColors","ReactIcon","setTwoToneColor","_normalizeTwoToneColo2","_classNames","rotate","tabIndex","_React$useContext$pre","rootClassName","classString","iconTabIndex","svgStyle","msTransform","role","getTwoToneColor","AntdIcon","CheckCircleFilled","CheckCircleFilled$1","CloseCircleFilledSvg","CloseCircleFilled","CloseCircleFilled$1","CloseOutlinedSvg","CloseOutlined","CloseOutlined$1","ExclamationCircleFilledSvg","ExclamationCircleFilled","ExclamationCircleFilled$1","InfoCircleFilledSvg","InfoCircleFilled","InfoCircleFilled$1","makePrefixMap","styleProp","eventName","prefixes","vendorPrefixes","domSupport","animationend","transitionend","animation","getVendorPrefixes","canUseDOM","_document$createEleme","prefixedEventNames","getVendorPrefixedEventName","prefixMap","stylePropList","internalAnimationEndName","internalTransitionEndName","supportTransition","animationEndName","transitionEndName","getTransitionName","transitionName","transitionType","toUpperCase","STATUS_NONE","STATUS_APPEAR","STATUS_ENTER","STATUS_LEAVE","STEP_NONE","STEP_PREPARE","STEP_START","STEP_ACTIVE","STEP_ACTIVATED","useSafeState","destroyRef","_React$useState2","ignoreDestroy","useIsomorphicLayoutEffect","useLayoutEffect","STEP_QUEUE","SkipStep","DoStep","step","useStepQueue","status","setStep","_useNextFrame","nextFrameRef","cancelNextFrame","nextFrame","nextFrameId","isCanceled","useNextFrame","_useNextFrame2","nextStep","doNext","useDomMotionEvents","cacheElementRef","callbackRef","onInternalMotionEnd","removeMotionEvents","CSSMotion","transitionSupport","isSupportTransition","motionName","_props$visible","visible","_props$removeOnLeave","removeOnLeave","forceRender","leavedClassName","eventProps","supportMotion","nodeRef","wrapperNodeRef","_useStatus","getElement","_ref$motionEnter","motionEnter","_ref$motionAppear","motionAppear","_ref$motionLeave","motionLeave","motionDeadline","motionLeaveImmediately","onAppearPrepare","onEnterPrepare","onLeavePrepare","onAppearStart","onEnterStart","onLeaveStart","onAppearActive","onEnterActive","onLeaveActive","onAppearEnd","onEnterEnd","onLeaveEnd","onVisibleChanged","asyncVisible","setAsyncVisible","_useState4","setStatus","_useState6","setStyle","mountedRef","deadlineRef","getDomElement","activeRef","deadline","canEnd","currentActive","patchMotionEvents","eventHandlers","_useStepQueue2","newStep","onPrepare","_eventHandlers$step","startStep","active","nextStatus","isMounted","firstMountChangeRef","useStatus","_useStatus2","statusStep","statusStyle","mergedVisible","renderedRef","motionChildren","setNodeRef","mergedProps","statusSuffix","genCSSMotion","STATUS_ADD","STATUS_KEEP","STATUS_REMOVE","STATUS_REMOVED","wrapKeyToObject","keyObj","parseKeys","_excluded2","MOTION_PROP_NAMES","getDataOrAriaProps","OriginCSSMotion","CSSMotionList","keyEntities","removeKey","nextKeyEntities","_onVisibleChanged","onAllRemoved","motionProps","changedVisible","parsedKeyObjects","mixedKeyEntities","currentIndex","currentLen","prevKeyObjects","currentKeyObjects","hit","currentKeyObj","matchKey","diffKeys","prevEntity","genCSSMotionList","replaceElement","ErrorBoundary$1","ErrorBoundary","componentStack","errorMessage","errorDescription","Alert","overflowX","genAlertTypeStyle","borderColor","iconColor","alertCls","border","genBaseStyle","duration","alertIconSizeLG","alertPaddingHorizontal","wordWrap","minWidth","marginInlineEnd","maxHeight","marginBottom","paddingTop","paddingBottom","paddingInline","paddingBlock","genTypeStyle","genActionStyle","marginInlineStart","genAlertStyle","useStyle$b","alertToken","iconMapFilled","success","IconNode","iconType","CloseIcon","isClosable","closeText","closeIcon","handleClose","banner","onMouseEnter","onMouseLeave","afterClose","showIcon","closable","closed","setClosed","onClose","isShowIcon","dataOrAriaProps","motionClassName","motionStyle","Alert$1","useEvent","fnRef","memoFn","_fnRef$current","KeyCode","MAC_ENTER","BACKSPACE","TAB","NUM_CENTER","ENTER","SHIFT","CTRL","ALT","PAUSE","CAPS_LOCK","ESC","SPACE","PAGE_UP","PAGE_DOWN","END","HOME","LEFT","UP","RIGHT","DOWN","PRINT_SCREEN","INSERT","DELETE","ZERO","ONE","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","QUESTION_MARK","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","META","WIN_KEY_RIGHT","CONTEXT_MENU","NUM_ZERO","NUM_ONE","NUM_TWO","NUM_THREE","NUM_FOUR","NUM_FIVE","NUM_SIX","NUM_SEVEN","NUM_EIGHT","NUM_NINE","NUM_MULTIPLY","NUM_PLUS","NUM_MINUS","NUM_PERIOD","NUM_DIVISION","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","NUMLOCK","SEMICOLON","DASH","EQUALS","COMMA","PERIOD","SLASH","APOSTROPHE","SINGLE_QUOTE","OPEN_SQUARE_BRACKET","BACKSLASH","CLOSE_SQUARE_BRACKET","WIN_KEY","MAC_FF_META","WIN_IME","isTextModifyingKeyEvent","keyCode","altKey","ctrlKey","metaKey","isCharacterKey","navigator","userAgent","LoadingOutlinedSvg","LoadingOutlined","LoadingOutlined$1","createRoot","fullClone","reactRender","unmountComponentAtNode","toggleWarning","skip","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","usingClientEntryPoint","MARK","modernRender","legacyRender","modernUnmount","_modernUnmount","_container$MARK","unmount","legacyUnmount","_unmount","useLocale$1","fullLocale","getLocale","defaultLocaleData","localeFromContext","localeCode","genSpaceCompactStyle$1","flexDirection","genSpaceStyle","useStyle$a","genSpaceCompactStyle","SpaceCompactItemContext","useCompactItemContext","compactItemContext","compactItemClassnames","compactDirection","isFirstItem","isLastItem","separator","compactSize","NoCompactStyle","CompactItem","otherProps","Compact$1","directionConfig","block","clx","nodes","isVisible","offsetParent","_getBBox","_element$getBoundingC","_width","_height","genWaveStyle","useStyle$9","isValidWaveColor","isNotGrey","validateNum","WaveEffect","divRef","setWaveColor","setBorderRadius","setLeft","setTop","setWidth","setHeight","enabled","setEnabled","waveStyle","radius","syncPos","nodeStyle","borderTopColor","getTargetWaveColor","isStatic","borderLeftWidth","borderTopWidth","offsetLeft","offsetTop","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","holder","parentElement","useWave","showWaveEffect","Wave","containerRef","showWave","nodeType","Wave$1","GroupSizeContext","Group$3","others","sizeCls","rxTwoCNChar","isTwoCNChar","isUnBorderedButtonType","spaceChildren","needInserted","isPrevChildPure","isCurrentChildPure","lastChild","splitCNCharsBySpace","getCollapsedWidth","getRealWidth","scrollWidth","LoadingIcon$1","loading","existIcon","genButtonBorderStyle","buttonTypeCls","borderInlineEndColor","borderInlineStartColor","genGroupStyle$2","borderStartEndRadius","borderEndEndRadius","borderStartStartRadius","borderEndStartRadius","compactItemBorder","parentCls","focusElCls","focus","borderElCls","childCombinator","hoverEffects","compactItemBorderRadius","genCompactItemStyle","compactCls","compactItemVerticalBorder","genCompactItemVerticalStyle","genSharedButtonStyle","backgroundImage","userSelect","touchAction","genHoverActiveButtonStyle","hoverStyle","activeStyle","genCircleButtonStyle","paddingInlineStart","paddingInlineEnd","genRoundButtonStyle","genDisabledStyle","genGhostButtonStyle","btnCls","textColorDisabled","borderColorDisabled","genSolidDisabledButtonStyle","genSolidButtonStyle","genPureDisabledButtonStyle","genDefaultButtonStyle","genPrimaryButtonStyle","genDashedButtonStyle","borderStyle","genLinkButtonStyle","genTextButtonStyle","genDisabledButtonStyle","genTypeButtonStyle","genSizeButtonStyle","sizePrefixCls","buttonPaddingHorizontal","iconOnlyCls","genSizeBaseButtonStyle","genSizeSmallButtonStyle","smallToken","genSizeLargeButtonStyle","largeToken","genBlockButtonStyle","useStyle$8","buttonToken","colorOutlineDefault","genGroupStyle","convertLegacyProps","danger","InternalButton","shape","customizeSize","customDisabled","ghost","htmlType","mergedDisabled","groupSize","loadingOrDelay","getLoadingConfig","innerLoading","setLoading","hasTwoCNChar","setHasTwoCNChar","buttonRef","createRef","isNeedInserted","delayTimer","buttonText","textContent","handleClick","autoInsertSpace","sizeFullname","large","small","middle","linkButtonRestProps","hrefAndDisabled","href","iconNode","LoadingIcon","kids","buttonNode","Button","Group","__ANT_BUTTON","Button$2","isThenable","thing","ActionButton$1","buttonProps","close","autoFocus","emitEvent","quitOnNullishReturnValue","actionFn","clickedRef","onInternalClose","returnValueOfOnOk","handlePromiseOnOk","getCollapsedHeight","getRealHeight","scrollHeight","getCurrentHeight","skipOpacityTransition","initCollapseMotion","motion","cached","OrderContext","useLayoutUpdateEffect","deps","firstMountRef","EMPTY_LIST","UNIQUE_ID","useScrollLocker","lock","mergedLock","scrollbarSize","fresh","outer","outerStyle","visibility","widthContained","widthScroll","getScrollBarSize","isOverflow","innerHeight","innerWidth","inline","getPortalContainer","open","autoLock","debug","_props$autoDestroy","autoDestroy","shouldRender","setShouldRender","mergedRender","_React$useState4","innerContainer","setInnerContainer","customizeContainer","_useDom","defaultEle","appendedRef","queueCreate","queue","setQueue","mergedQueueCreate","appendFn","origin","_ele$parentElement","useDom","_useDom2","defaultContainer","mergedContainer","childRef","nextInline","renderInline","reffedChildren","createPortal","useId","innerId","setInnerId","useOriginId","reactNativeId","nextId","propList","ariaPrefix","dataPrefix","Mask","maskProps","getMotionName","getScroll","MemoChildren","memo","sentinelStyle","Panel","title","ariaId","footer","bodyStyle","bodyProps","modalRender","onMouseDown","onMouseUp","holderRef","sentinelStartRef","sentinelEndRef","_sentinelStartRef$cur","changeActive","activeElement","footerNode","headerNode","closer","contentStyle","Content","destroyOnClose","mousePosition","dialogRef","transformOrigin","setTransformOrigin","el","pos","doc","elementOffset","parentWindow","motionRef","Dialog","_props$prefixCls","_props$keyboard","keyboard","_props$focusTriggerAf","focusTriggerAfterClose","wrapStyle","wrapClassName","wrapProps","_props$closable","_props$mask","mask","maskTransitionName","maskAnimation","_props$maskClosable","maskClosable","maskStyle","lastOutSideActiveElementRef","contentRef","animatedVisible","setAnimatedVisible","contentClickRef","contentTimeoutRef","onWrapperClick","mergedConfig","ariaOnly","aria","attr","pickAttrs","onKeyDown","shiftKey","newVisible","_contentRef$current","preventScroll","DialogWrap","_props$destroyOnClose","_afterClose","FormItemInputContext","NoFormStyle","formItemInputContext","newFormItemInputContext","newContext","isFormItemInput","hasFeedback","feedbackIcon","canUseDocElement","flexGapSupported","initMotionCommon","animationDuration","animationFillMode","initMotionCommonLeave","initMotion","motionCls","inKeyframes","outKeyframes","sameLevelPrefix","animationPlayState","fadeIn","Keyframes","fadeOut","initFadeMotion","sameLevel","animationTimingFunction","moveDownIn","moveDownOut","moveLeftIn","moveLeftOut","moveRightIn","moveRightOut","moveMotion","initMoveMotion","slideUpIn","slideUpOut","slideDownIn","slideDownOut","slideLeftIn","slideLeftOut","slideRightIn","slideRightOut","slideMotion","initSlideMotion","zoomIn","zoomOut","zoomBigIn","zoomBigOut","zoomUpIn","zoomUpOut","zoomMotion","initZoomMotion","genCollapseMotion$1","box","insetInlineEnd","genModalMaskStyle","WebkitOverflowScrolling","genModalStyle","inset","maxWidth","modalHeadingColor","modalHeaderTitleFontSize","modalHeaderTitleLineHeight","modalContentBg","backgroundClip","modalHeaderCloseSize","modalCloseBtnSize","modalCloseColor","modalConfirmIconSize","modalIconHoverColor","modalHeaderBg","modalFooterBg","marginTop","genModalConfirmStyle","confirmComponentCls","flexWrap","marginBlockStart","flexBasis","genRTLStyle","genWireframeStyle","modalHeaderPadding","borderBottom","modalHeaderBorderWidth","modalHeaderBorderStyle","modalHeaderBorderColorSplit","modalBodyPadding","modalFooterPaddingVertical","modalFooterPaddingHorizontal","borderTop","modalFooterBorderWidth","modalFooterBorderStyle","modalFooterBorderColorSplit","useStyle$7","headerPaddingVertical","headerFontSize","headerLineHeight","modalToken","modalConfirmTitleFontSize","renderCloseIcon","Footer","okType","confirmLoading","onOk","onCancel","okButtonProps","cancelButtonProps","useLocale","PurePanel$3","confirmPrefixCls","additionalProps","ConfirmContent","getClickPosition","pageX","pageY","OriginModal","getPopupContainer","getContextPopupContainer","handleCancel","centered","wrapClassNameExtended","dialogFooter","okCancel","staticLocale","mergedIcon","mergedOkCancel","autoFocusButton","mergedLocale","cancelButton","ActionButton","ConfirmDialog","triggerCancel","destroyFns$1","defaultRootPrefixCls","confirm","createDocumentFragment","param","destroyFns","reactUnmount","configUpdate","withWarn","withInfo","withSuccess","withError","withConfirm","HookModal","setOpen","innerConfig","setInnerConfig","newConfig","originConfig","contextLocale","HookModal$1","ElementsHolder","_props","elements","patchElement","setElements","originElements","usePatchElement","hasValue","useMergedState","defaultStateValue","postState","innerValue","setInnerValue","mergedValue","postMergedValue","onChangeFn","setPrevValue","isMobile","agent","vendor","opera","UNDEFINED","InternalItem","invalidate","renderItem","responsive","responsiveDisabled","registerSize","itemKey","_props$component","mergedHidden","internalRegisterSize","overflowStyle","overflowY","overflowProps","itemNode","Item","useBatcher","updateFuncRef","MessageChannel","channel","port1","onmessage","port2","postMessage","channelUpdate","useEffectState","notifyEffectUpdate","stateValue","setStateValue","_excluded3","InternalRawItem","OverflowContext","_restProps","contextClassName","restContext","RawItem","RESPONSIVE","INVALIDATE","defaultRenderRest","omittedItems","Overflow","_props$data","renderRawItem","_props$itemWidth","itemWidth","ssr","maxCount","renderRest","renderRawRest","suffix","itemComponent","onVisibleChange","fullySSR","_useEffectState2","containerWidth","setContainerWidth","mergedContainerWidth","_useEffectState4","itemWidths","setItemWidths","_useEffectState6","prevRestWidth","setPrevRestWidth","_useEffectState8","restWidth","setRestWidth","_useEffectState10","suffixWidth","setSuffixWidth","suffixFixedStart","setSuffixFixedStart","displayCount","setDisplayCount","mergedDisplayCount","MAX_SAFE_INTEGER","restReady","setRestReady","itemPrefixCls","mergedRestWidth","isResponsive","shouldResponsive","showRest","mergedData","items","mergedRenderItem","updateDisplayCount","suffixFixedStartVal","notReady","getItemWidth","totalWidth","currentItemWidth","displayRest","suffixStyle","restNode","itemSharedProps","internalRenderItemNode","restContextProps","mergedRenderRest","overflowNode","ForwardOverflow","TriggerContext","isPointsEq","a1","a2","getMotion","getWin","collectScroller","scrollerList","scrollStyle","_getWin$getComputedSt","toNum","splitPoints","getAlignPoint","topBottom","leftRight","reversePoints","reverseMap","point","Arrow","align","_props$arrowX","arrowX","_props$arrowY","arrowY","arrowRef","alignStyle","autoArrow","popupPoints","targetPoints","popupTB","popupLR","targetTB","targetLR","Popup","popup","keepDom","arrow","maskMotion","portal","ready","offsetX","offsetY","onAlign","stretch","targetWidth","targetHeight","isNodeVisible","getPopupContainerNeedParams","show","setShow","offsetStyle","miscStyle","minHeight","resizeObserverRef","nextVisible","_motion$onVisibleChan","cls","TriggerWrapper","getTriggerDOMNode","canUseRef","setRef","generateTrigger","PortalComponent","Trigger","_props$action","showAction","hideAction","popupVisible","defaultPopupVisible","onPopupVisibleChange","afterPopupVisibleChange","mouseEnterDelay","_props$mouseLeaveDela","mouseLeaveDelay","focusDelay","blurDelay","destroyPopupOnHide","popupClassName","popupStyle","popupPlacement","_props$builtinPlaceme","builtinPlacements","popupAlign","getPopupClassNameFromAlign","alignPoint","onPopupClick","onPopupAlign","popupMotion","popupTransitionName","popupAnimation","mergedAutoDestroy","mobile","setMobile","subPopupElements","registerSubPopup","subPopupEle","popupEle","setPopupEle","setPopupRef","_React$useState6","targetEle","setTargetEle","setTargetRef","only","originChildProps","cloneProps","inPopupOrChild","_childDOM$getRootNode","_popupEle$getRootNode","childDOM","getRootNode","host","mergePopupMotion","mergeMaskMotion","_React$useState8","internalOpen","setInternalOpen","mergedOpen","setMergedOpen","nextOpen","openRef","internalTriggerOpen","delayRef","clearDelay","triggerOpen","_React$useState10","inMotion","setInMotion","_React$useState12","motionPrepareResolve","setMotionPrepareResolve","_React$useState14","mousePos","setMousePos","setMousePosByEvent","clientX","clientY","_useAlign","placement","scaleX","scaleY","offsetInfo","setOffsetInfo","alignCountRef","targetRect","popupElement","originLeft","originTop","placementInfo","popupRect","_win$getComputedStyle","_doc$documentElement","scrollTop","scrollLeft","popupHeight","popupWidth","visibleArea","htmlRegion","HTMLBodyElement","eleRect","eleOutHeight","eleInnerHeight","eleOutWidth","eleScrollWidth","eleScrollHeight","eleRight","eleBottom","_scaleX","_scaleY","targetOffset","popupOffsetX","_ref2$2","popupOffsetY","targetOffsetX","_ref4$2","targetOffsetY","popupPoint","targetAlignPoint","popupAlignPoint","nextAlignInfo","nextOffsetX","nextOffsetY","getIntersectionVisibleArea","visibleX","visibleY","originIntersectionVisibleArea","targetAlignPointTL","popupAlignPointTL","targetAlignPointBR","popupAlignPointBR","adjustX","adjustY","shiftX","shiftY","supportAdjust","nextPopupY","nextPopupBottom","needAdjustY","sameTB","tmpNextOffsetY","_tmpNextOffsetY","nextPopupX","nextPopupRight","needAdjustX","sameLR","tmpNextOffsetX","_tmpNextOffsetX","numShiftX","numShiftY","popupLeft","popupRight","popupTop","popupBottom","targetLeft","targetRight","targetTop","targetBottom","nextArrowX","nextArrowY","resetReady","ori","useAlign","_useAlign2","alignInfo","triggerAlign","targetScrollList","popupScrollList","mergedList","notifyScroll","scroller","passive","alignedClassName","baseClassName","isAlignPoint","placements","_builtinPlacements$pl","getAlignPopupClassName","forceAlign","_React$useState16","setTargetWidth","_React$useState18","setTargetHeight","_useAction","mergedShowAction","mergedHideAction","showActionSet","hideActionSet","useAction","_useAction2","showActions","hideActions","wrapperAction","preEvent","_originChildProps$eve","clickToShow","clickToHide","_originChildProps$onC","onWindowClick","targetRoot","inShadow","popupRoot","onPopupMouseEnter","onPopupMouseLeave","hoverToShow","hoverToHide","onMouseMove","_originChildProps$onM","onContextMenu","_originChildProps$onC2","_len3","_key3","mergedChildrenProps","passedProps","_mergedChildrenProps$","_len4","_key4","triggerNode","getStatusClassNames","getMergedStatus","contextStatus","customStatus","SearchOutlinedSvg","SearchOutlined","SearchOutlined$1","autoAdjustOverflowTopBottom","autoAdjustOverflowLeftRight","topLeft","leftTop","topRight","rightTop","bottomRight","rightBottom","bottomLeft","leftBottom","overlayInnerStyle","Tooltip","overlayClassName","_props$trigger","_props$mouseEnterDela","overlayStyle","afterVisibleChange","_props$placement","_props$align","_props$destroyTooltip","destroyTooltipOnHide","defaultVisible","getTooltipContainer","arrowContent","overlay","_props$showArrow","showArrow","triggerRef","extraProps","Tooltip$3","darkAlgorithm","mapToken","mergedMapToken","defaultAlgorithm","compactAlgorithm","compactSizeStep","genCompactSizeMapToken","defaultSeed","useInternalToken","MAX_VERTICAL_CONTENT_RADIUS","getArrowOffset","maxVerticalContentRadius","contentRadius","limitVerticalRadius","dropdownArrowOffset","dropdownArrowOffsetVertical","isInject","code","getArrowStyle","colorBg","arrowDistance","arrowPlacement","PlacementAlignMap","ArrowCenterPlacementAlignMap","DisableAutoArrowList","getPlacements","arrowWidth","autoAdjustOverflow","arrowPointAtCenter","halfArrowWidth","placementMap","arrowOffset","baseOverflow","mergedOverflow","getOverflowOptions","genTooltipStyle","tooltipMaxWidth","tooltipColor","tooltipBg","tooltipBorderRadius","zIndexPopup","tooltipRadiusOuter","useStyle$6","injectStyle","useOriginHook","colorBgDefault","TooltipToken","inverseColors","parseColor","isInternalColor","isPresetColor","arrowStyle","getDisabledCompatibleChildren","elementType","__ANT_SWITCH","__ANT_RADIO","picked","omitted","splitObject","spanStyle","openClassName","afterOpenChange","mergedShowArrow","tooltipRef","forcePopupAlign","deprecatedName","newName","defaultOpen","isNoTitle","getTooltipPlacements","mergedArrowPointAtCenter","pointAtCenter","injectFromPopover","tempOpen","childCls","formattedOverlayInnerStyle","arrowContentStyle","customOverlayClassName","RcTooltip","getOverlay","vis","onOpenChange","domNode","_InternalPanelDoNotUseOrYouWillBeFired","Tooltip$1","RightOutlinedSvg","RightOutlined","vendorPrefix","RightOutlined$1","didUpdate","parentRef","initRef","_containerRef$current","_containerRef$current2","jsCssMap","Webkit","Moz","ms","getVendorPrefix","getTransformName","setTransitionProperty","transitionProperty","setTransform","getComputedStyleX","matrix2d","matrix3d","forceRelayout","elem","originalStyle","getScrollLeft","getScrollTop","getOffset","docElem","clientLeft","clientTop","getClientPosition","isWindow","getDocument","_RE_NUM_NO_PX","RE_POS","CURRENT_STYLE","RUNTIME_STYLE","getOffsetDirection","dir","useCssRight","useCssBottom","oppositeOffsetDirection","setLeftTop","presetH","presetV","horizontalProperty","verticalProperty","oppositeHorizontalProperty","oppositeVerticalProperty","originalTransition","originalOffset","getTransitionProperty","old","preset","off","_dir","_off","setTransform$1","originalXY","getPropertyValue","matrix","getTransformXY","resultXY","xy","match2d","setTransformXY","each","isBorderBoxFn","cs","computedStyle","rsLeft","pixelLeft","BOX_MODELS","CONTENT_INDEX","PADDING_INDEX","BORDER_INDEX","getPBMWidth","which","cssProp","domUtils","getParent","getWH","extra","viewportWidth","viewportHeight","docWidth","docHeight","borderBoxValue","isBorderBox","cssBoxValue","borderBoxValueOrIsBorderBox","refWin","documentElementProp","compatMode","cssShow","getWHIgnoreDisplay","swap","includeMargin","utils","getWindow","ignoreShake","oriOffset","oLeft","oTop","tLeft","tTop","useCssTransform","setOffset","getWindowScrollLeft","getWindowScrollTop","getOffsetParent","positionStyle","nodeName","getParent$1","getVisibleRectForElement","alwaysByViewport","visibleRect","Infinity","originalPosition","scrollX","scrollY","documentWidth","documentHeight","isAncestorFixed","maxVisibleWidth","maxVisibleHeight","getRegion","outerWidth","outerHeight","getAlignOffset","region","getElFuturePos","elRegion","refNodeRegion","p1","p2","isFailX","elFuturePos","isFailY","flip","reg","flipOffset","convertOffset","offsetLen","substring","normalizeOffset","doAlign","tgtRegion","isTgtRegionVisible","newOverflowCfg","fail","newElRegion","newPoints","newOffset","newTargetOffset","isCompleteFailX","_newPoints","_newOffset","_newTargetOffset","isCompleteFailY","isStillFailX","isStillFailY","_newPoints2","resizeWidth","resizeHeight","adjustForViewport","alignElement","refNode","isTargetNotOutOfVisible","targetRegion","isOutOfVisibleRect","__getOffsetParent","__getVisibleRectForElement","monitorResize","prevWidth","prevHeight","getPoint","Align","monitorWindowResize","_ref$monitorBufferTim","monitorBufferTime","forceAlignPropsRef","_useBuffer","buffer","calledRef","timeoutRef","cancelTrigger","force","useBuffer","_forceAlignPropsRef$c","latestDisabled","latestTarget","latestAlign","latestOnAlign","_result","_element","_point","tgtPoint","pointInView","restoreFocus","_useBuffer2","_forceAlign","cancelForceAlign","setElement","setPoint","isSamePoint","RcAlign","StatusQueue","PopupInner","getRootDomNode","getClassNameFromAlign","onTouchStart","alignRef","setAlignedClassName","_useStretchStyle","targetSize","setTargetSize","sizeStyle","tgtWidth","tgtHeight","useStretchStyle","_useStretchStyle2","stretchStyle","measureStretchStyle","_useVisibleStatus","doMeasure","setInternalStatus","rafRef","cancelRaf","useVisibleStatus","_useVisibleStatus2","goNextStatus","alignTimes","setAlignTimes","prepareResolveRef","_alignRef$current","onInternalAlign","popupDomNode","matchAlign","nextAlignedClassName","_prepareResolveRef$cu","onShowPrepare","originHandler","alignDisabled","mergedClassName","onMouseDownCapture","onTouchStartCapture","MobilePopupInner","_props$mobile","_props$mobile$popupMo","popupRender","innerVisible","serInnerVisible","inMobile","setInMobile","popupNode","returnEmptyString","returnDocument","ALL_HANDLERS","_popupVisible","fireEvents","delaySetPopupVisible","clearDelayTimer","_this$popupRef$curren","relatedTarget","popupRef","isFocusToShow","focusTime","preClickTime","preTouchTime","isBlurToHide","setPopupVisible","isContextMenuToShow","preTime","isClickToShow","isClickToHide","_this$context","hasPopupMouseDown","mouseDownTimeout","onPopupMouseDown","getPopupDomNode","isContextMenuOnly","_this$state","getPopupAlign","mouseProps","isMouseEnterToShow","isMouseLeaveToHide","popupContainer","attachId","mountNode","attachParent","portalContainer","prevPopupVisible","componentDidUpdate","currentDocument","clickOutsideHandler","onDocumentClick","touchOutsideHandler","contextMenuOutsideHandler1","onContextMenuClose","contextMenuOutsideHandler2","clearOutsideHandler","_this$popupRef$curren2","placementStr","getAlignFromPlacement","delayS","childPros","_this$props8","_this$props9","_this$props10","_this$popupRef$curren3","childCallback","_this$props11","newChildProps","createTwoChains","onFocus","onBlur","childrenClassName","handlePortalUpdate","getComponent","triggerContextValue","prevState","newState","topCenter","bottomCenter","includePositive","isFocusableElement","isContentEditable","tabIndexAttr","tabIndexNum","getFocusNodeList","unshift","Dropdown","_props$arrow","_props$placements","Placements","triggerVisible","setTriggerVisible","focusMenuRef","handleCloseMenuAndReturnFocus","_triggerRef$current","_triggerRef$current$t","_triggerRef$current$t2","_triggerRef$current$t3","focusMenu","_triggerRef$current2","_triggerRef$current2$","_triggerRef$current2$2","_triggerRef$current2$3","firstElement","handleKeyDown","focusResult","useAccessibility","childrenProps","childClassName","getMenuElement","overlayElement","triggerHideAction","minOverlayWidthMatchTrigger","getMinOverlayWidthMatchTrigger","onVisibleChangeProp","onOverlayClick","Dropdown$3","IdContext","getMenuId","eventKey","useMenuId","MenuContext","InheritableContextProvider","locked","inheritableContext","EmptyList","PathRegisterContext","useMeasure","PathTrackerContext","useFullPath","parentKeyPath","PathUserContext","PrivateContext","ArrowKeys","getFocusableElements","getNextFocusElement","parentQueryContainer","focusMenuElement","sameLevelFocusableMenuElementList","focusIndex","findIndex","mode","activeKey","isRtl","getKeys","getKeyPath","triggerActiveKey","triggerAccessibilityOpen","originOnKeyDown","cleanRaf","key2element","element2key","refreshElements","getFocusElement","focusMenuKey","offsetObj","isRootLevel","_inline","_horizontal","_vertical","_offsets","inlineTrigger","horizontal","vertical","inlineSub","horizontalSub","verticalSub","sibling","tryFocus","menuElement","focusTargetElement","link","targetElement","focusableElements","findContainerUL","controlId","getElementById","parentKey","parentMenuElement","PATH_SPLIT","getPathStr","OVERFLOW_KEY","useKeyRecords","internalForceUpdate","key2pathRef","path2keyRef","overflowKeys","setOverflowKeys","updateRef","registerPath","connectedPath","unregisterPath","refreshOverflowKeys","includeOverflow","isSubPathKey","pathKeys","pathKey","getSubPathKeys","useMemoCallback","funRef","_funRef$current","uniquePrefix","internalId","useActive","onActive","onInactive","domEvent","warnItemProp","restInfo","useDirectionStyle","rtl","inlineIndent","paddingRight","paddingLeft","LegacyMenuItem","attribute","InternalMenuItem","warnKey","itemIcon","domDataId","onItemClick","contextDisabled","overflowDisabled","contextItemIcon","selectedKeys","_internalRenderMenuItem","itemCls","legacyMenuItemRef","connectedKeys","getEventInfo","mergedItemIcon","_useActive","activeProps","selected","directionStyle","optionRoleProps","renderNode","isSelected","MenuItem","measure","connectedKeyPath","InternalSubMenuList","SubMenuList","parseChildren","_eventKey","_child$props","emptyKey","convertItemsToNodes","opt","label","MenuItemGroup","SubMenu","Divider","parseItems","placementsRtl","defaultMotions","other","popupPlacementMap","PopupTrigger","popupOffset","subMenuOpenDelay","subMenuCloseDelay","triggerSubMenuAction","forceSubMenuRender","setInnerVisible","targetMotion","targetMotionRef","mergedMotion","visibleRef","InlineSubMenuList","fixedMode","sameModeRef","setDestroy","originOnVisibleChanged","MenuContextProvider","InternalSubMenu","internalPopupClose","expandIcon","onTitleClick","onTitleMouseEnter","onTitleMouseLeave","openKeys","contextExpandIcon","_internalRenderSubMenuItem","subMenuPrefixCls","mergedExpandIcon","originOpen","childrenSelected","childrenActive","setChildrenActive","triggerChildrenActive","newActive","mergedActive","onMergedItemClick","popupId","titleNode","isOpen","isSubMenu","triggerModeRef","triggerMode","listNode","Menu","_childList$","_ref$prefixCls","_ref$tabIndex","_ref$mode","inlineCollapsed","disabledOverflow","_ref$subMenuOpenDelay","_ref$subMenuCloseDela","defaultOpenKeys","defaultActiveFirst","_ref$selectable","selectable","_ref$multiple","multiple","defaultSelectedKeys","onSelect","onDeselect","_ref$inlineIndent","_ref$triggerSubMenuAc","_ref$overflowedIndica","overflowedIndicator","overflowedIndicatorPopupClassName","openAnimation","openTransitionName","setMounted","_useMergedState2","setUUID","newId","useUUID","mergedOpenKeys","setMergedOpenKeys","triggerOpenKeys","doUpdate","flushSync","inlineCacheOpenKeys","setInlineCacheOpenKeys","_React$useMemo2","mergedMode","mergedInlineCollapsed","isInlineMode","internalMode","setInternalMode","internalInlineCollapsed","setInternalInlineCollapsed","lastVisibleIndex","setLastVisibleIndex","allVisible","_useKeyRecords","registerPathContext","pathUserContext","_useMergedState4","mergedActiveKey","setMergedActiveKey","_childList$find","_containerRef$current3","shouldFocusKey","_useMergedState6","mergedSelectKeys","setMergedSelectKeys","onInternalClick","newSelectKeys","selectInfo","triggerSelection","onInternalOpenChange","newOpenKeys","subPathKeys","getInternalPopupContainer","onInternalKeyDown","privateContext","wrappedChildList","omitItems","originOmitItems","newLastIndex","InternalMenuItemGroup","groupPrefixCls","ExportMenu","ItemGroup","EllipsisOutlinedSvg","EllipsisOutlined","EllipsisOutlined$1","getHorizontalStyle$1","menuHorizontalHeight","menuItemPaddingInline","getRTLStyle$1","menuArrowOffset","accessibilityFocus","getThemeStyle$1","themeSuffix","colorItemText","colorItemTextSelected","colorGroupTitle","colorItemBg","colorSubItemBg","colorItemBgSelected","colorActiveBarHeight","colorActiveBarWidth","colorActiveBarBorderSize","colorItemTextHover","colorItemTextDisabled","colorDangerItemText","colorDangerItemTextHover","colorDangerItemTextSelected","colorDangerItemBgActive","colorDangerItemBgSelected","colorItemBgHover","menuSubMenuBg","colorItemTextSelectedHorizontal","colorItemBgSelectedHorizontal","borderBottomWidth","borderBottomColor","borderInlineEnd","insetBlock","getVerticalInlineStyle","menuItemHeight","itemMarginInline","menuArrowSize","marginInline","marginBlock","getVerticalStyle$1","dropdownWidth","inlineItemStyle","listStylePosition","listStyleType","genMenuItemStyle","genSubMenuArrowStyle","getBaseStyle","radiusSubMenuItem","menuPanelMaskInset","radiusItem","borderWidth","OverrideContext","OverrideProvider","MenuDivider$1","dashed","BarsOutlinedSvg","BarsOutlined","BarsOutlined$1","LeftOutlinedSvg","LeftOutlined","LeftOutlined$1","isNumeric$1","isFinite","genLayoutLightStyle$1","colorBgBody","borderInlineStart","genLayoutStyle","colorBgHeader","colorBgTrigger","layoutHeaderHeight","layoutHeaderPaddingInline","layoutHeaderColor","layoutFooterPadding","layoutTriggerHeight","layoutZeroTriggerSize","justifyContent","genLayoutLightStyle","useStyle$4","layoutToken","LayoutContext","siderHook","addSider","removeSider","BasicComponent","Adapter","Basic","TagName","prefixWithSuffixCls","BasicLayout","siders","setSiders","hasSider","Tag","contextValue","dimensionMaxMap","xs","sm","md","lg","xl","xxl","SiderContext","generateId","Sider","defaultCollapsed","collapsible","reverseArrow","collapsedWidth","zeroWidthTriggerStyle","breakpoint","onCollapse","onBreakpoint","collapsed","setCollapsed","below","setBelow","handleSetCollapsed","responsiveHandlerRef","mql","matches","responsiveHandler","matchMedia","addListener","removeListener","uniqueId","toggle","siderCollapsed","divProps","rawWidth","siderWidth","isNumeric","zeroWidthTrigger","defaultTrigger","expanded","triggerDom","divStyle","siderCls","renderSider","MenuContext$1","firstLevel","Item$1","disableMenuItemTitleTooltip","isInlineCollapsed","tooltipTitle","tooltipProps","childrenLength","returnNode","wrapNode","renderItemChildren","SubMenu$1","customTheme","contextTheme","parentPath","titleIsSpan","RcSubMenu","MenuDivider","useItems","InternalMenu","overrideObj","_internalDisableMenuItemTitleTooltip","mergedSelectable","menuToken","colorTextDark","menuDarkToken","colorItemBgActive","getHorizontalStyle","getVerticalStyle","getThemeStyle","getRTLStyle","genCollapseMotion","colorItemTextHoverHorizontal","menuClassName","beClone","RcMenu","InternalMenu$1","menuRef","menu","Menu$1","useFlexGapSupport","flexible","setFlexible","rowGap","detectFlexGapSupported","marginDirection","horizontalSize","verticalSize","latestIndex","supportFlexGap","SpaceContext","spaceSize","Space","getNumberSize","mergedAlign","cn","itemClassName","spaceContext","gapStyle","columnGap","CompoundedSpace","Compact","Space$1","genButtonStyle$1","genStatusStyle$2","menuCls","dropdownArrowDistance","dropdownPaddingVertical","dropdownEdgeChildPadding","useStyle$3","dropdownToken","genButtonStyle","genStatusStyle","DropdownButton","buttonsRender","buttons","dropdownRender","buttonPrefixCls","dropdownProps","leftButton","rightButton","leftButtonToRender","rightButtonToRender","dropdownTrigger","triggerActions","onInnerOpenChange","overlayClassNameCustomized","onMenuClick","RcDropdown","overlayNode","newPlacement","getPlacement","PurePanel","defaultPrefixCls","getDropdownCls","setPopupHeight","setPopupWidth","interval","setInterval","dropdownCls","clearInterval","genPurePanel","Dropdown$1","RadioGroupContext","RadioGroupContextProvider","RadioOptionTypeContext","RadioOptionTypeContextProvider","Checkbox","_Component","handleChange","checked","nativeEvent","saveInput","defaultChecked","blur","readOnly","onKeyPress","onKeyUp","globalProps","antRadioEffect","getGroupRadioStyle","getRadioBasicStyle","radioWrapperMarginRight","radioCheckedColor","radioSize","radioButtonBg","radioDotSize","radioDotDisabledColor","radioDotDisabledSize","radioInnerPrefixCls","insetBlockStart","alignSelf","borderBlockStart","insetBlockEnd","getRadioButtonStyle","radioButtonColor","radioButtonPaddingHorizontal","radioButtonCheckedBg","radioButtonHoverColor","radioButtonActiveColor","radioSolidCheckedColor","radioDisabledButtonCheckedColor","radioDisabledButtonCheckedBg","borderBlockStartWidth","borderInlineStartWidth","borderInlineEndWidth","useStyle$2","radioFocusShadow","dotPadding","radioToken","radioButtonFocusShadow","InternalRadio","groupContext","radioOptionTypeContext","radioPrefixCls","optionType","radioProps","wrapperClassString","RcCheckbox","Radio","InternalRadio$1","RadioGroup","buttonStyle","childrenToRender","mergedSize","ev","lastValue","Group$2","RadioButton","Radio$1","genHoverStyle","inputBorderHoverColor","genActiveStyle","genInputLargeStyle","inputPaddingVerticalLG","inputPaddingHorizontalLG","genInputSmallStyle","inputPaddingVerticalSM","inputBorderActiveColor","genBasicInputStyle","inputPaddingVertical","inputPaddingHorizontal","resize","genInputGroupStyle","borderCollapse","borderSpacing","genInputStyle","colorSmallPadding","genAllowClearStyle","inputAffixPadding","genAffixStyle","genSearchInputStyle","searchPrefixCls","genTextAreaStyle","textareaPrefixCls","useStyle$1","inputToken","inputPaddingHorizontalSM","initInputToken","genSharedDividerStyle","sizePaddingEdgeHorizontal","dividerVerticalGutterMargin","dividerHorizontalGutterMargin","dividerHorizontalWithTextGutterMargin","borderBlockStartColor","borderBlockEnd","dividerToken","orientation","orientationMargin","plain","orientationPrefix","hasChildren","hasCustomMarginLeft","hasCustomMarginRight","innerStyle","marginLeft","marginRight","Divider$1","EyeOutlinedSvg","EyeOutlined","EyeOutlined$1","Group$1","inputPrefixCls","compact","formItemContext","groupFormItemContext","hasAddon","addonBefore","addonAfter","hasPrefixSuffix","allowClear","resolveOnChange","currentTarget","cloneNode","fixControlledValue","BaseInput","_inputElement$props","inputElement","affixWrapperClassName","groupClassName","wrapperClassName","focused","triggerFocus","handleReset","hidden","inputStyle","_classNames2","affixWrapperPrefixCls","affixWrapperCls","affixWrapper","suffixNode","needClear","clearIconCls","clearIcon","getClearIcon","wrapperCls","addonCls","mergedWrapperClassName","wrapper","mergedGroupClassName","group","Input","autoComplete","onPressEnter","htmlSize","maxLength","showCount","_props$type","inputClassName","setFocused","inputRef","setSelectionRange","_inputRef$current","start","_inputRef$current2","select","_inputRef$current3","handleFocus","handleBlur","hasMaxLength","valueLength","dataCount","formatter","getSuffix","useRemovePasswordTimeout","triggerOnMount","removePasswordTimeoutRef","removePasswordTimeout","hasAttribute","removeAttribute","timer","bordered","customSize","mergedStatus","inputHasPrefixSuffix","prevHasPrefixSuffix","mergedAllowClear","RcInput","InternalInput","EyeInvisibleOutlinedSvg","EyeInvisibleOutlined","EyeInvisibleOutlined$1","defaultIconRender","ActionMap","click","hover","Password","visibilityToggle","visibilityControlled","setVisible","customizeInputPrefixCls","suffixIcon","iconRender","iconTrigger","iconProps","getIcon","omittedProps","Password$1","Search","enterButton","onSearch","customOnSearch","customOnChange","onCompositionStart","onCompositionEnd","contextSize","composedRef","searchIcon","btnClassName","button","enterButtonAsElement","isAntdButton","hiddenTextarea","Search$1","SIZING_STYLE","computedStyleCache","calculateAutoSizeStyle","uiTextNode","useCache","minRows","maxRows","_calculateNodeStyling","paddingSize","borderSize","nodeInfo","sizingStyle","calculateNodeStyling","singleRowHeight","ResizableTextArea","autoSize","onInternalAutoSize","setMergedValue","textareaRef","textArea","needAutoSize","resizeState","setResizeState","autoSizeStyle","setAutoSizeStyle","startResize","textareaStyles","_textareaRef$current","selectionStart","selectionEnd","fixFirefoxAutoScroll","resizeRafRef","mergedAutoSizeStyle","fixEmojiLength","setTriggerValue","isCursorInEnd","preValue","triggerValue","newTriggerValue","TextArea","customValue","resizableTextAreaRef","compositing","setCompositing","oldCompositionValueRef","oldSelectionStartRef","resizableTextArea","textarea","_oldCompositionValueR","countWrapper","innerRef","RcTextArea","TextArea$1","Input$1","modalWarn","useModal","actionQueue","setActionQueue","getConfirmFunc","withFunc","modalRef","closeFunc","modal","destroyAction","updateAction","destroyAll","Modal$1","THEME","blue1","blue2","blue3","blue4","blue5","blue6","blue7","blue8","blue9","blue10","red2","red3","red6","red7","bw0","bw2","bw3","bw4","bw5","bw6","bw7","bw8","bw9","StyleSheet","_insertTag","before","tags","insertionPoint","isSpeedy","speedy","ctr","hydrate","insert","createTextNode","createStyleElement","isImportRule","_alreadyInsertedOrderInsensitiveRule","sheet","styleSheets","ownerNode","sheetForTag","insertRule","cssRules","memoize","identifierWithPointTracking","parsed","toRules","fixedElements","compat","isImplicitRule","parentRules","removeLabel","isIgnoringComment","nullifyElement","incorrectImportAlarm","isPrependedWithRegularRules","getServerStylisCache","defaultStylisPlugins","combine","ssrStyles","stylisPlugins","_insert","inserted","nodesToHydrate","attrib","omnipresentPlugins","unsafePseudoClasses","commentContainer","unsafePseudoClass","createUnsafeSelectorsAlarm","currentSheet","finalizingPlugins","serializer","selector","serialized","shouldCache","_finalizingPlugins","_serializer","serverStylisCache","registered","reactIs","TYPE_STATICS","propTypes","compare","getRegisteredStyles","registeredStyles","rawClassName","registerStyles","isStringTag","insertStyles","stylesForSSR","maybeStyles","ILLEGAL_ESCAPE_SEQUENCE_ERROR","UNDEFINED_AS_OBJECT_KEY_ERROR","hyphenateRegex","animationRegex","isCustomProperty","isProcessableValue","processStyleName","processStyleValue","contentValuePattern","contentValues","oldProcessStyleValue","msPattern","hyphenPattern","hyphenatedCache","processed","_char","noComponentSelectorMessage","handleInterpolation","__emotion_styles","anim","interpolated","createStringFromObject","previousCursor","matched","replaced","fakeVarName","sourceMapPattern","labelPattern","serializeStyles","stringMode","sourceMap","strings","raw","identifierName","hashString","syncFallback","useInsertionEffect","useInsertionEffectAlwaysWithSyncFallback","useInsertionEffectWithLayoutFallback","EmotionCacheContext","withEmotionCache","ThemeContext","typePropName","labelPropName","Insertion","serializedNames","Emotion","WrappedComponent","labelFromStack","newProps","warnedAboutCssPropForGlobal","Global","isBrowser$1","serializedStyles","sheetRef","rehydrating","sheetRefCurrent","nextElementSibling","classnames","toAdd","serializedArr","ClassNames","hasRendered","isTestEnv","jest","vi","globalContext","globalThis","globalKey","GlobalStyle","_jsx","jsx","_f","_g","_h","_j","restOfProps","_jsxs"],"mappings":"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","x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,375,376,377,378,379,380,381,382,383,384,385,386,389]}
|