{"version":3,"sources":["webpack:///./node_modules/lodash/isSymbol.js","webpack:///./node_modules/lodash/_unicodeToArray.js","webpack:///./node_modules/lodash/_createCaseFirst.js","webpack:///./src/images/calendar.svg","webpack:///./src/images/lacasadequilmes/tourCompleto/Frame22.png","webpack:///./src/styles/quilmesTourStyles/reservaStep2.module.css","webpack:///./node_modules/lodash/_basePropertyOf.js","webpack:///./node_modules/lodash/capitalize.js","webpack:///./node_modules/lodash/words.js","webpack:///./node_modules/rc-motion/es/context.js","webpack:///./node_modules/rc-motion/es/DomWrapper.js","webpack:///./node_modules/rc-motion/es/interface.js","webpack:///./node_modules/rc-motion/es/util/motion.js","webpack:///./node_modules/rc-motion/es/hooks/useDomMotionEvents.js","webpack:///./node_modules/rc-motion/es/hooks/useIsomorphicLayoutEffect.js","webpack:///./node_modules/rc-motion/es/hooks/useStepQueue.js","webpack:///./node_modules/rc-motion/es/hooks/useNextFrame.js","webpack:///./node_modules/rc-motion/es/hooks/useStatus.js","webpack:///./node_modules/rc-util/es/hooks/useSyncState.js","webpack:///./node_modules/rc-motion/es/CSSMotion.js","webpack:///./node_modules/rc-motion/es/util/diff.js","webpack:///./node_modules/rc-motion/es/CSSMotionList.js","webpack:///./node_modules/rc-motion/es/index.js","webpack:///./node_modules/decode-uri-component/index.js","webpack:///./node_modules/split-on-first/index.js","webpack:///./src/components/Loader/loader.module.css","webpack:///./node_modules/lodash/_unicodeWords.js","webpack:///./src/images/logos/arrowQuilmesTour.svg","webpack:///./node_modules/lodash/_getRawTag.js","webpack:///./src/styles/quilmesTourStyles/tourMobile.module.css","webpack:///./src/components/sideMenu.js","webpack:///./node_modules/lodash/_stringToArray.js","webpack:///./node_modules/lodash/isObjectLike.js","webpack:///./src/styles/quilmesTourStyles/reservaStep1.module.css","webpack:///./node_modules/shallowequal/index.js","webpack:///./src/styles/quilmesTourStyles/tourCompleto.module.css","webpack:///./src/images/logos/whiteArrow.svg","webpack:///./node_modules/lodash/_objectToString.js","webpack:///./node_modules/lodash/_baseSlice.js","webpack:///./node_modules/lodash/_root.js","webpack:///./src/styles/quilmesTourStyles/preguntasFrecuentes.module.css","webpack:///./src/videos/1022_Teaser_Full_Online.mp4","webpack:///./node_modules/lodash/_baseGetTag.js","webpack:///./src/styles/quilmesTourStyles/compartiExp.module.css","webpack:///./src/images/lacasadequilmes/tourCompleto/Frame23.png","webpack:///./src/styles/footer.module.css","webpack:///./src/images/calendar-gray.svg","webpack:///./node_modules/lodash/deburr.js","webpack:///./src/styles/quilmesTourStyles/headerQuilmesTour.module.css","webpack:///./src/styles/quilmesTourStyles/tourMobileDescription.module.css","webpack:///./node_modules/lodash/_freeGlobal.js","webpack:///./node_modules/rc-util/es/hooks/useMemo.js","webpack:///./node_modules/lodash/isArray.js","webpack:///./node_modules/strict-uri-encode/index.js","webpack:///./node_modules/lodash/_arrayReduce.js","webpack:///./node_modules/lodash/_asciiToArray.js","webpack:///./node_modules/rc-util/es/ref.js","webpack:///./node_modules/filter-obj/index.js","webpack:///./node_modules/query-string/index.js","webpack:///./node_modules/lodash/_asciiWords.js","webpack:///./node_modules/lodash/toString.js","webpack:///./node_modules/lodash/_arrayMap.js","webpack:///./src/images/logos/Vector.svg","webpack:///./node_modules/lodash/_hasUnicodeWord.js","webpack:///./node_modules/lodash/upperFirst.js","webpack:///./src/styles/quilmesTourStyles/couponBox.module.css","webpack:///./node_modules/rc-util/es/index.js","webpack:///./node_modules/rc-util/es/Dom/findDOMNode.js","webpack:///./src/images/logos/360.svg","webpack:///./node_modules/lodash/_Symbol.js","webpack:///./src/styles/quilmesTourStyles/lele.module.css","webpack:///./src/images/logos/LCDQ_blanco.png","webpack:///./src/styles/quilmesTourStyles/reservaStep3.module.css","webpack:///./node_modules/lodash/_deburrLetter.js","webpack:///./node_modules/lodash/_hasUnicode.js","webpack:///./node_modules/lodash/_createCompounder.js","webpack:///./src/styles/quilmesTourStyles/comoLlegar.module.css","webpack:///./node_modules/lodash/camelCase.js","webpack:///./src/styles/quilmesTourStyles/home.module.css","webpack:///./node_modules/rc-util/es/raf.js","webpack:///./node_modules/lodash/_castSlice.js","webpack:///./src/components/lacasadequilmes/layoutTour.module.css","webpack:///./node_modules/rc-util/es/isMobile.js","webpack:///./node_modules/rc-util/es/KeyCode.js","webpack:///./node_modules/rc-select/es/hooks/useBaseProps.js","webpack:///./node_modules/rc-select/es/hooks/useLock.js","webpack:///./node_modules/rc-util/es/pickAttrs.js","webpack:///./node_modules/rc-resize-observer/es/Collection.js","webpack:///./node_modules/rc-resize-observer/es/utils/observerUtil.js","webpack:///./node_modules/rc-resize-observer/es/SingleObserver/DomWrapper.js","webpack:///./node_modules/rc-resize-observer/es/SingleObserver/index.js","webpack:///./node_modules/rc-resize-observer/es/index.js","webpack:///./node_modules/rc-overflow/es/Item.js","webpack:///./node_modules/rc-overflow/es/hooks/useEffectState.js","webpack:///./node_modules/rc-overflow/es/hooks/channelUpdate.js","webpack:///./node_modules/rc-overflow/es/context.js","webpack:///./node_modules/rc-overflow/es/RawItem.js","webpack:///./node_modules/rc-overflow/es/Overflow.js","webpack:///./node_modules/rc-overflow/es/index.js","webpack:///./node_modules/rc-select/es/TransBtn.js","webpack:///./node_modules/rc-select/es/Selector/Input.js","webpack:///./node_modules/rc-select/es/utils/commonUtil.js","webpack:///./node_modules/rc-select/es/Selector/MultipleSelector.js","webpack:///./node_modules/rc-select/es/hooks/useLayoutEffect.js","webpack:///./node_modules/rc-select/es/Selector/SingleSelector.js","webpack:///./node_modules/rc-select/es/Selector/index.js","webpack:///./node_modules/rc-select/es/utils/keyUtil.js","webpack:///./node_modules/rc-util/es/Dom/contains.js","webpack:///./node_modules/rc-util/es/Dom/addEventListener.js","webpack:///./node_modules/rc-util/es/Portal.js","webpack:///./node_modules/rc-trigger/es/utils/alignUtil.js","webpack:///./node_modules/dom-align/dist-web/index.js","webpack:///./node_modules/rc-trigger/es/utils/legacyUtil.js","webpack:///./node_modules/rc-trigger/es/Popup/Mask.js","webpack:///./node_modules/rc-util/es/Dom/isVisible.js","webpack:///./node_modules/rc-align/es/util.js","webpack:///./node_modules/rc-align/es/Align.js","webpack:///./node_modules/rc-align/es/hooks/useBuffer.js","webpack:///./node_modules/rc-align/es/index.js","webpack:///./node_modules/rc-trigger/es/Popup/useVisibleStatus.js","webpack:///./node_modules/rc-trigger/es/Popup/PopupInner.js","webpack:///./node_modules/rc-trigger/es/Popup/useStretchStyle.js","webpack:///./node_modules/rc-trigger/es/Popup/MobilePopupInner.js","webpack:///./node_modules/rc-trigger/es/Popup/index.js","webpack:///./node_modules/rc-trigger/es/context.js","webpack:///./node_modules/rc-trigger/es/index.js","webpack:///./node_modules/rc-select/es/SelectTrigger.js","webpack:///./node_modules/rc-select/es/utils/valueUtil.js","webpack:///./node_modules/rc-select/es/BaseSelect.js","webpack:///./node_modules/rc-select/es/hooks/useDelayReset.js","webpack:///./node_modules/rc-select/es/hooks/useSelectTriggerControl.js","webpack:///./node_modules/rc-select/es/hooks/useFilterOptions.js","webpack:///./node_modules/rc-select/es/hooks/useId.js","webpack:///./node_modules/rc-select/es/utils/legacyUtil.js","webpack:///./node_modules/rc-select/es/hooks/useRefFunc.js","webpack:///./node_modules/rc-select/es/OptGroup.js","webpack:///./node_modules/rc-select/es/Option.js","webpack:///./node_modules/rc-virtual-list/es/Filler.js","webpack:///./node_modules/rc-virtual-list/es/Item.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useDiffItem.js","webpack:///./node_modules/rc-virtual-list/es/utils/algorithmUtil.js","webpack:///./node_modules/rc-virtual-list/es/utils/isFirefox.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useOriginScroll.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useFrameWheel.js","webpack:///./node_modules/rc-virtual-list/es/utils/CacheMap.js","webpack:///./node_modules/rc-virtual-list/es/ScrollBar.js","webpack:///./node_modules/rc-virtual-list/es/utils/scrollbarUtil.js","webpack:///./node_modules/rc-virtual-list/es/List.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useHeights.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useMobileTouchMove.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useScrollTo.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useGetSize.js","webpack:///./node_modules/rc-virtual-list/es/hooks/useChildren.js","webpack:///./node_modules/rc-virtual-list/es/index.js","webpack:///./node_modules/rc-select/es/SelectContext.js","webpack:///./node_modules/rc-select/es/OptionList.js","webpack:///./node_modules/rc-select/es/utils/platformUtil.js","webpack:///./node_modules/rc-select/es/utils/warningPropsUtil.js","webpack:///./node_modules/rc-select/es/Select.js","webpack:///./node_modules/rc-select/es/hooks/useOptions.js","webpack:///./node_modules/rc-select/es/hooks/useCache.js","webpack:///./node_modules/rc-select/es/index.js","webpack:///./node_modules/antd/es/locale-provider/context.js","webpack:///./node_modules/rc-picker/es/locale/en_US.js","webpack:///./node_modules/antd/es/time-picker/locale/en_US.js","webpack:///./node_modules/antd/es/date-picker/locale/en_US.js","webpack:///./node_modules/antd/es/locale/default.js","webpack:///./node_modules/antd/es/locale-provider/default.js","webpack:///./node_modules/rc-pagination/es/locale/en_US.js","webpack:///./node_modules/antd/es/calendar/locale/en_US.js","webpack:///./node_modules/antd/es/locale-provider/LocaleReceiver.js","webpack:///./node_modules/antd/es/empty/empty.js","webpack:///./node_modules/antd/es/empty/simple.js","webpack:///./node_modules/antd/es/empty/index.js","webpack:///./node_modules/antd/es/config-provider/defaultRenderEmpty.js","webpack:///./node_modules/antd/es/config-provider/SizeContext.js","webpack:///./node_modules/antd/es/_util/type.js","webpack:///./node_modules/antd/es/_util/motion.js","webpack:///./node_modules/antd/es/_util/statusUtils.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/CheckOutlined.js","webpack:///./node_modules/@ant-design/icons/es/components/Context.js","webpack:///./node_modules/@ctrl/tinycolor/dist/module/util.js","webpack:///./node_modules/@ctrl/tinycolor/dist/module/conversion.js","webpack:///./node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","webpack:///./node_modules/@ctrl/tinycolor/dist/module/format-input.js","webpack:///./node_modules/@ant-design/colors/dist/index.esm.js","webpack:///./node_modules/rc-util/es/Dom/dynamicCSS.js","webpack:///./node_modules/@ant-design/icons/es/utils.js","webpack:///./node_modules/@ant-design/icons/es/components/IconBase.js","webpack:///./node_modules/@ant-design/icons/es/components/twoTonePrimaryColor.js","webpack:///./node_modules/@ant-design/icons/es/components/AntdIcon.js","webpack:///./node_modules/@ant-design/icons/es/icons/CheckOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js","webpack:///./node_modules/@ant-design/icons/es/icons/CloseCircleFilled.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/CloseOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/DownOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/DownOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/LoadingOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/SearchOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/SearchOutlined.js","webpack:///./node_modules/antd/es/space/Compact.js","webpack:///./node_modules/antd/es/select/index.js","webpack:///./node_modules/antd/es/select/utils/iconUtil.js","webpack:///./src/components/lacasadequilmes/home.js","webpack:///./node_modules/antd/es/_util/styleChecker.js","webpack:///./node_modules/antd/es/space/Item.js","webpack:///./node_modules/antd/es/space/index.js","webpack:///./node_modules/antd/es/_util/hooks/useFlexGapSupport.js","webpack:///./node_modules/rc-picker/es/generate/moment.js","webpack:///./node_modules/antd/es/_util/reactNode.js","webpack:///./node_modules/antd/es/_util/wave.js","webpack:///./node_modules/antd/es/_util/raf.js","webpack:///./node_modules/antd/es/button/button-group.js","webpack:///./node_modules/antd/es/button/LoadingIcon.js","webpack:///./node_modules/antd/es/button/button.js","webpack:///./node_modules/antd/es/button/index.js","webpack:///./node_modules/antd/es/_util/colors.js","webpack:///./node_modules/antd/es/tag/CheckableTag.js","webpack:///./node_modules/antd/es/tag/index.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/CalendarOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/CalendarOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/ClockCircleOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/ClockCircleOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/SwapRightOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/SwapRightOutlined.js","webpack:///./node_modules/rc-picker/es/PanelContext.js","webpack:///./node_modules/rc-picker/es/panels/Header.js","webpack:///./node_modules/rc-picker/es/panels/DecadePanel/DecadeHeader.js","webpack:///./node_modules/rc-picker/es/utils/timeUtil.js","webpack:///./node_modules/rc-picker/es/panels/PanelBody.js","webpack:///./node_modules/rc-picker/es/panels/DecadePanel/DecadeBody.js","webpack:///./node_modules/rc-picker/es/utils/uiUtil.js","webpack:///./node_modules/rc-picker/es/panels/DecadePanel/index.js","webpack:///./node_modules/rc-picker/es/utils/dateUtil.js","webpack:///./node_modules/rc-picker/es/panels/TimePanel/TimeHeader.js","webpack:///./node_modules/rc-picker/es/utils/miscUtil.js","webpack:///./node_modules/rc-picker/es/panels/TimePanel/TimeUnitColumn.js","webpack:///./node_modules/rc-picker/es/panels/TimePanel/TimeBody.js","webpack:///./node_modules/rc-picker/es/hooks/useTimeSelection.js","webpack:///./node_modules/rc-picker/es/panels/TimePanel/index.js","webpack:///./node_modules/rc-picker/es/RangeContext.js","webpack:///./node_modules/rc-picker/es/hooks/useCellClassName.js","webpack:///./node_modules/rc-picker/es/panels/DatePanel/DateBody.js","webpack:///./node_modules/rc-picker/es/panels/DatePanel/DateHeader.js","webpack:///./node_modules/rc-picker/es/panels/DatePanel/index.js","webpack:///./node_modules/rc-picker/es/panels/DatetimePanel/index.js","webpack:///./node_modules/rc-picker/es/panels/WeekPanel/index.js","webpack:///./node_modules/rc-picker/es/panels/MonthPanel/MonthHeader.js","webpack:///./node_modules/rc-picker/es/panels/MonthPanel/MonthBody.js","webpack:///./node_modules/rc-picker/es/panels/MonthPanel/index.js","webpack:///./node_modules/rc-picker/es/panels/QuarterPanel/QuarterHeader.js","webpack:///./node_modules/rc-picker/es/panels/QuarterPanel/QuarterBody.js","webpack:///./node_modules/rc-picker/es/panels/QuarterPanel/index.js","webpack:///./node_modules/rc-picker/es/panels/YearPanel/YearHeader.js","webpack:///./node_modules/rc-picker/es/panels/YearPanel/YearBody.js","webpack:///./node_modules/rc-picker/es/panels/YearPanel/index.js","webpack:///./node_modules/rc-picker/es/utils/getExtraFooter.js","webpack:///./node_modules/rc-picker/es/utils/getRanges.js","webpack:///./node_modules/rc-picker/es/PickerPanel.js","webpack:///./node_modules/rc-picker/es/PickerTrigger.js","webpack:///./node_modules/rc-picker/es/hooks/usePickerInput.js","webpack:///./node_modules/rc-picker/es/hooks/useTextValueMapping.js","webpack:///./node_modules/rc-picker/es/hooks/useValueTexts.js","webpack:///./node_modules/rc-picker/es/hooks/useHoverValue.js","webpack:///./node_modules/rc-picker/es/Picker.js","webpack:///./node_modules/rc-picker/es/hooks/useRangeViewDates.js","webpack:///./node_modules/rc-picker/es/RangePicker.js","webpack:///./node_modules/rc-picker/es/hooks/useRangeDisabled.js","webpack:///./node_modules/rc-picker/es/index.js","webpack:///./node_modules/antd/es/date-picker/util.js","webpack:///./node_modules/antd/es/date-picker/generatePicker/generateRangePicker.js","webpack:///./node_modules/antd/es/date-picker/generatePicker/generateSinglePicker.js","webpack:///./node_modules/antd/es/date-picker/generatePicker/index.js","webpack:///./node_modules/antd/es/date-picker/PickerButton.js","webpack:///./node_modules/antd/es/date-picker/PickerTag.js","webpack:///./node_modules/antd/es/date-picker/index.js","webpack:///./src/components/lacasadequilmes/comoLlegar.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/RightOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/RightOutlined.js","webpack:///./node_modules/rc-collapse/es/PanelContent.js","webpack:///./node_modules/rc-collapse/es/Panel.js","webpack:///./node_modules/rc-collapse/es/Collapse.js","webpack:///./node_modules/rc-collapse/es/index.js","webpack:///./node_modules/antd/es/collapse/Collapse.js","webpack:///./node_modules/antd/es/collapse/CollapsePanel.js","webpack:///./node_modules/antd/es/collapse/index.js","webpack:///./src/components/lacasadequilmes/preguntasFrecuentes.js","webpack:///./src/components/lacasadequilmes/index.js","webpack:///./src/components/lacasadequilmes/reservaSelects.js","webpack:///./src/components/lacasadequilmes/reservaSteps2.js","webpack:///./node_modules/antd/es/input/Group.js","webpack:///./node_modules/rc-input/es/utils/commonUtils.js","webpack:///./node_modules/rc-input/es/BaseInput.js","webpack:///./node_modules/rc-input/es/Input.js","webpack:///./node_modules/rc-input/es/index.js","webpack:///./node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js","webpack:///./node_modules/antd/es/input/Input.js","webpack:///./node_modules/antd/es/input/utils.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js","webpack:///./node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js","webpack:///./node_modules/@ant-design/icons/es/icons/EyeOutlined.js","webpack:///./node_modules/antd/es/input/Password.js","webpack:///./node_modules/antd/es/input/Search.js","webpack:///./node_modules/rc-textarea/es/calculateNodeHeight.js","webpack:///./node_modules/rc-textarea/es/ResizableTextArea.js","webpack:///./node_modules/rc-textarea/es/index.js","webpack:///./node_modules/antd/es/input/ClearableLabeledInput.js","webpack:///./node_modules/antd/es/input/TextArea.js","webpack:///./node_modules/antd/es/input/index.js","webpack:///./src/components/lacasadequilmes/completaTusDatos.js","webpack:///./src/components/lacasadequilmes/reservaStep3.js","webpack:///./src/components/lacasadequilmes/headerQuilmesTour.js","webpack:///./src/components/lacasadequilmes/footerQuilmesTour.js","webpack:///./src/components/lacasadequilmes/layoutQuilmesTour.js","webpack:///./src/pages/lacasadequilmes.js","webpack:///./utils/images.js","webpack:///./node_modules/lodash/_baseToString.js"],"names":["baseGetTag","isObjectLike","module","exports","value","rsAstral","rsCombo","rsFitz","rsNonAstral","rsRegional","rsSurrPair","reOptMod","rsSeq","join","rsSymbol","reUnicode","RegExp","string","match","castSlice","hasUnicode","stringToArray","toString","methodName","strSymbols","undefined","chr","charAt","trailing","slice","object","key","upperFirst","toLowerCase","asciiWords","hasUnicodeWord","unicodeWords","pattern","guard","Context","_React$Component","DomWrapper","_super","this","apply","arguments","props","children","makePrefixMap","styleProp","eventName","prefixes","concat","domSupport","win","vendorPrefixes","window","animationend","transitionend","animation","transition","_document$createEleme","document","createElement","style","prefixedEventNames","getVendorPrefixedEventName","prefixMap","stylePropList","Object","keys","len","length","i","prototype","hasOwnProperty","call","internalAnimationEndName","internalTransitionEndName","supportTransition","animationEndName","transitionEndName","getTransitionName","transitionName","transitionType","replace","toUpperCase","canUseDom","FULL_STEP_QUEUE","SIMPLE_STEP_QUEUE","isActive","step","_useState","useState","_useState2","setStep","_useNextFrame","nextFrameRef","cancelNextFrame","raf","cancel","current","nextFrame","callback","delay","nextFrameId","isCanceled","useNextFrame","_useNextFrame2","STEP_QUEUE","prepareOnly","index","indexOf","nextStep","result","info","doNext","Promise","resolve","then","status","useStatus","supportMotion","visible","getElement","_ref","defaultValue","_React$useReducer","forceUpdate","currentValueRef","_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","_useSyncState","x","useEvent","updater","_useSyncState2","getStatus","setStatus","_useState3","_useState4","setStyle","currentStatus","mountedRef","deadlineRef","getDomElement","activeRef","updateMotionEndStatus","onInternalMotionEnd","event","element","deadline","target","canEnd","currentActive","_useDomMotionEvents","cacheElementRef","removeMotionEvents","removeEventListener","addEventListener","useDomMotionEvents","patchMotionEvents","getEventHandlers","targetStatus","eventHandlers","_useStepQueue","useStepQueue","newStep","onPrepare","_eventHandlers$step","clearTimeout","setTimeout","_useStepQueue2","startStep","active","nextStatus","isMounted","nextEventHandlers","firstMountChangeRef","mergedStyle","config","transitionSupport","CSSMotion","ref","_props$visible","_props$removeOnLeave","removeOnLeave","forceRender","motionName","leavedClassName","eventProps","contextMotion","isSupportTransition","motion","nodeRef","wrapperNodeRef","_useStatus","HTMLElement","findDOMNode","e","_useStatus2","statusStep","statusStyle","mergedVisible","renderedRef","motionChildren","setNodeRef","node","mergedProps","className","display","statusSuffix","motionCls","displayName","wrapKeyToObject","keyObj","String","parseKeys","map","diffKeys","prevKeys","currentKeys","list","currentIndex","currentLen","prevKeyObjects","currentKeyObjects","forEach","hit","currentKeyObj","obj","push","duplicatedKeys","filter","matchKey","_ref2","_excluded2","MOTION_PROP_NAMES","CSSMotionList","_this","_len","args","Array","_key","keyEntities","removeKey","nextKeyEntities","state","entity","setState","_this2","_this$props","component","_onVisibleChanged","onAllRemoved","restProps","Component","motionProps","prop","changedVisible","_ref3","_ref4","parsedKeyObjects","prevEntity","find","_ref5","singleMatcher","multiMatcher","decodeComponents","components","split","decodeURIComponent","err","left","right","decode","input","tokens","encodedURI","TypeError","replaceMap","exec","entries","customDecodeURIComponent","separator","separatorIndex","rsBreakRange","rsMathOpRange","rsBreak","rsDigits","rsDingbat","rsLower","rsMisc","rsUpper","rsMiscLower","rsMiscUpper","rsModifier","rsEmoji","reUnicodeWord","Symbol","objectProto","nativeObjectToString","symToStringTag","toStringTag","isOwn","tag","unmasked","menuData","title","path","icon","link","SideMenu","setActiveMenu","activeMenu","React","styles","container","containerActive","logoContainer","alt","logoQ","src","AiOutlineClose","onClick","close","options","item","href","rel","dataLayer","event_category","event_action","event_label","interaction","component_name","element_text","flechaSelected","FlechaSelected","logo360","Link","to","location","origin","socialIcons","logoFb","logoTw","logoIg","logoYou","asciiToArray","unicodeToArray","objA","objB","compare","compareContext","ret","keysA","keysB","bHasOwnProperty","bind","idx","valueA","valueB","array","start","end","freeGlobal","freeSelf","self","root","Function","getRawTag","objectToString","deburrLetter","reLatin","reComboMark","global","useMemo","getValue","condition","shouldUpdate","cacheRef","isArray","str","encodeURIComponent","charCodeAt","iteratee","accumulator","initAccum","fillRef","composeRef","refs","refList","Boolean","useComposeRef","_len2","_key2","prev","next","every","supportRef","nodeOrComponent","_type$prototype","_nodeOrComponent$prot","type","render","$$typeof","isReactElement","Number","predicate","isArr","val","strictUriEncode","decodeComponent","splitOnFirst","filterObject","encodeFragmentIdentifier","validateArrayFormatSeparator","encode","strict","removeHash","hashStart","extract","queryStart","parseValue","parseNumbers","isNaN","trim","parseBooleans","parse","query","assign","sort","arrayFormat","arrayFormatSeparator","formatter","includes","isEncodedArray","newValue","test","arrayValue","parserForArrayFormat","create","param","k","reduce","keysSorter","a","b","stringify","shouldFilter","skipNull","skipEmptyString","keyValueSep","encoderForArrayFormat","objectCopy","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryFromUrl","parsedQueryFromUrl","queryString","getHash","pick","exclude","exclusionFilter","reAsciiWord","baseToString","reHasUnicodeWord","createCaseFirst","isDOM","SVGElement","_ReactDOM$findDOMNode","domNode","nativeElement","getDOM","basePropertyOf","reHasUnicode","arrayReduce","deburr","words","reApos","capitalize","camelCase","createCompounder","word","caf","num","requestAnimationFrame","handle","cancelAnimationFrame","rafUUID","rafIds","Map","cleanup","id","delete","wrapperRaf","times","callRef","leftTimes","realId","set","get","baseSlice","navigator","agent","userAgent","vendor","opera","substr","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","A","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","BaseSelectContext","useLock","duration","lockRef","timeoutRef","doLock","locked","propList","prefix","pickAttrs","mergedConfig","ariaOnly","aria","data","attr","attrs","CollectionContext","elementListeners","entities","_elementListeners$get","listener","SingleObserver","disabled","elementRef","wrapperRef","onCollectionResize","isRenderProps","mergedChildren","sizeRef","width","height","offsetWidth","offsetHeight","canRef","originRef","mergedRef","getDom","_elementRef$current","propsRef","onInternalResize","_propsRef$current","onResize","_target$getBoundingCl","getBoundingClientRect","fixedWidth","Math","floor","fixedHeight","size","mergedOffsetWidth","round","mergedOffsetHeight","sizeInfo","currentElement","has","Set","observe","add","unobserve","ResizeObserver","toArray","child","RefResizeObserver","Collection","onBatchResize","resizeIdRef","resizeInfosRef","currentId","Provider","_excluded","InternalItem","prefixCls","invalidate","renderItem","responsive","responsiveDisabled","registerSize","itemKey","order","_props$component","mergedHidden","internalRegisterSize","overflowStyle","childNode","opacity","overflowY","pointerEvents","position","overflowProps","itemNode","useBatcher","updateFuncRef","MessageChannel","channel","port1","onmessage","port2","postMessage","channelUpdate","fn","useEffectState","notifyEffectUpdate","_React$useState","_React$useState2","stateValue","setStateValue","nextValue","OverflowContext","createContext","_excluded3","context","_restProps","contextClassName","restContext","RawItem","defaultRenderRest","omittedItems","Overflow","_props$prefixCls","_props$data","renderRawItem","_props$itemWidth","itemWidth","ssr","maxCount","renderRest","renderRawRest","suffix","itemComponent","onVisibleChange","fullySSR","_useEffectState","_useEffectState2","containerWidth","setContainerWidth","mergedContainerWidth","_useEffectState3","_useEffectState4","itemWidths","setItemWidths","_useEffectState5","_useEffectState6","prevRestWidth","setPrevRestWidth","_useEffectState7","_useEffectState8","restWidth","setRestWidth","_useEffectState9","_useEffectState10","suffixWidth","setSuffixWidth","suffixFixedStart","setSuffixFixedStart","displayCount","setDisplayCount","mergedDisplayCount","MAX_SAFE_INTEGER","_useState5","_useState6","restReady","setRestReady","itemPrefixCls","mergedRestWidth","max","isResponsive","shouldResponsive","showRest","mergedData","items","min","getKey","mergedRenderItem","updateDisplayCount","count","suffixFixedStartVal","notReady","clone","getItemWidth","useLayoutEffect","totalWidth","lastIndex","currentItemWidth","displayRest","suffixStyle","top","restNode","itemSharedProps","internalRenderItemNode","restContextProps","_","mergedRenderRest","overflowNode","clientWidth","ForwardOverflow","Item","RESPONSIVE","INVALIDATE","customizeIcon","customizeIconProps","_onMouseDown","onMouseDown","preventDefault","userSelect","WebkitUserSelect","unselectable","cls","_inputNode2","_inputNode2$props","inputElement","tabIndex","autoFocus","autoComplete","editable","activeDescendantId","maxLength","_onKeyDown","onKeyDown","_onChange","onChange","onPaste","_onCompositionStart","onCompositionStart","_onCompositionEnd","onCompositionEnd","open","inputNode","_inputNode","originProps","onOriginKeyDown","onOriginChange","onOriginMouseDown","onOriginCompositionStart","onOriginCompositionEnd","warning","role","readOnly","RefInput","isBrowserClient","documentElement","isTitleType","getTitle","label","_value$key","onPreventMouseDown","stopPropagation","effect","deps","values","searchValue","autoClearSearchValue","inputRef","placeholder","mode","showSearch","removeIcon","maxTagCount","maxTagTextLength","_props$maxTagPlacehol","maxTagPlaceholder","omittedValues","tagRender","onToggleOpen","onRemove","onInputChange","onInputPaste","onInputKeyDown","onInputMouseDown","onInputCompositionStart","onInputCompositionEnd","measureRef","inputWidth","setInputWidth","focused","setFocused","selectionPrefixCls","inputValue","inputEditable","defaultRenderSelector","content","itemDisabled","closable","onClose","scrollWidth","onFocus","onBlur","selectionNode","valueItem","displayLabel","strLabel","customizeRenderSelector","activeValue","inputChanged","setInputChanged","combobox","hasTextInput","visibility","hiddenStyle","renderPlaceholder","compositionStatusRef","tokenWithEnter","onSearch","onSearchSubmit","domRef","focus","blur","_useLock","_useLock2","getInputMouseDown","setInputMouseDown","pastedTextRef","triggerOnSearch","sharedProps","currentKeyCode","which","replacedText","clipboardData","getData","selectNode","MultipleSelector","body","msTouchAction","inputMouseDown","ForwardSelector","contains","n","parentNode","addEventListenerWrap","eventType","cb","option","unstable_batchedUpdates","remove","didUpdate","getContainer","parentRef","containerRef","initRef","appendChild","_containerRef$current","removeChild","createPortal","isPointsEq","a1","a2","isAlignPoint","vendorPrefix","getMotion","Mask","zIndex","mask","maskMotion","maskAnimation","maskTransitionName","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","sym","getOwnPropertyDescriptor","enumerable","source","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_typeof","iterator","constructor","configurable","writable","jsCssMap","Webkit","Moz","ms","getVendorPrefix","getTransformName","setTransitionProperty","name","transitionProperty","setTransform","transform","getComputedStyleX","matrix2d","matrix3d","forceRelayout","elem","originalStyle","el","v","getScroll","w","method","d","getScrollLeft","getScrollTop","getOffset","pos","box","y","doc","ownerDocument","docElem","clientLeft","clientTop","getClientPosition","defaultView","parentWindow","isWindow","nodeType","_RE_NUM_NO_PX","RE_POS","getOffsetDirection","dir","useCssRight","useCssBottom","oppositeOffsetDirection","setLeftTop","offset","presetH","presetV","horizontalProperty","verticalProperty","oppositeHorizontalProperty","oppositeVerticalProperty","originalTransition","originalOffset","old","preset","off","_dir","_off","setTransform$1","originalXY","getComputedStyle","getPropertyValue","matrix","parseFloat","getTransformXY","resultXY","xy","arr","match2d","setTransformXY","each","isBorderBoxFn","cs","computedStyle","rsLeft","pixelLeft","BOX_MODELS","swap","getPBMWidth","j","cssProp","domUtils","getParent","parent","host","getWH","ex","extra","viewportWidth","viewportHeight","docWidth","docHeight","borderBoxValue","isBorderBox","cssBoxValue","borderBoxValueOrIsBorderBox","refWin","documentElementProp","compatMode","cssShow","getWHIgnoreDisplay","mix","from","first","includeMargin","utils","getWindow","getDocument","ignoreShake","oriOffset","oLeft","toFixed","oTop","tLeft","tTop","useCssTransform","setOffset","css","overflow","getWindowScrollLeft","getWindowScrollTop","merge","getOffsetParent","positionStyle","nodeName","getParent$1","getVisibleRectForElement","alwaysByViewport","visibleRect","Infinity","bottom","clientHeight","originalPosition","scrollX","scrollY","documentWidth","documentHeight","scrollHeight","bodyStyle","overflowX","innerWidth","innerHeight","isAncestorFixed","maxVisibleWidth","maxVisibleHeight","getRegion","h","outerWidth","outerHeight","getAlignOffset","region","align","getElFuturePos","elRegion","refNodeRegion","points","targetOffset","p1","p2","diff","isFailX","elFuturePos","isFailY","flip","reg","p","m","flipOffset","convertOffset","offsetLen","parseInt","substring","normalizeOffset","doAlign","tgtRegion","isTgtRegionVisible","newOverflowCfg","fail","newElRegion","adjustX","adjustY","newPoints","l","r","newOffset","newTargetOffset","isCompleteFailX","_newPoints","t","_newOffset","_newTargetOffset","isCompleteFailY","isStillFailX","isStillFailY","_newPoints2","resizeWidth","resizeHeight","adjustForViewport","alignElement","refNode","targetRegion","isOutOfVisibleRect","__getOffsetParent","__getVisibleRectForElement","Element","offsetParent","getBBox","_getBBox","_element$getBoundingC","_width","_height","monitorResize","prevWidth","prevHeight","resizeObserver","disconnect","func","getPoint","point","onAlign","monitorWindowResize","_ref$monitorBufferTim","monitorBufferTime","useRef","Children","only","forceAlignPropsRef","_useBuffer","calledRef","cancelTrigger","trigger","force","buffer","useBuffer","_forceAlignPropsRef$c","latestDisabled","latestTarget","latestAlign","latestOnAlign","_result","_element","_point","activeElement","isVisible","tgtPoint","pageX","pageY","clientX","clientY","pointInView","restoreFocus","_useBuffer2","_forceAlign","cancelForceAlign","setElement","_React$useState3","_React$useState4","setPoint","useEffect","isEqual","useImperativeHandle","forceAlign","isValidElement","cloneElement","RcAlign","forwardRef","StatusQueue","PopupInner","stretch","destroyPopupOnHide","getRootDomNode","getClassNameFromAlign","onMouseEnter","onMouseLeave","onTouchStart","alignRef","alignedClassName","setAlignedClassName","_useStretchStyle","targetSize","setTargetSize","sizeStyle","minHeight","minWidth","tgtWidth","tgtHeight","abs","useStretchStyle","_useStretchStyle2","stretchStyle","measureStretchStyle","_useVisibleStatus","setInternalStatus","rafRef","cancelRaf","doMeasure","mark","_callee","wrap","_context","stop","useVisibleStatus","_useVisibleStatus2","goNextStatus","alignTimes","setAlignTimes","prepareResolveRef","_alignRef$current","onInternalAlign","popupDomNode","matchAlign","nextAlignedClassName","_prepareResolveRef$cu","onShowPrepare","originHandler","alignDisabled","motionRef","motionClassName","motionStyle","mergedClassName","onMouseDownCapture","onTouchStartCapture","MobilePopupInner","_props$mobile","mobile","popupClassName","popupStyle","_props$mobile$popupMo","popupMotion","popupRender","Popup","innerVisible","serInnerVisible","inMobile","setInMobile","cloneProps","isMobile","popupNode","noop","returnEmptyString","returnDocument","ALL_HANDLERS","PortalComponent","Trigger","_popupVisible","mouseEnterDelay","fireEvents","delaySetPopupVisible","mouseLeaveDelay","clearDelayTimer","_this$popupRef$curren","relatedTarget","popupRef","isFocusToShow","focusTime","Date","now","focusDelay","preClickTime","preTouchTime","isBlurToHide","blurDelay","setPopupVisible","isContextMenuToShow","preTime","isClickToShow","isClickToHide","nextVisible","popupVisible","_this$context","hasPopupMouseDown","mouseDownTimeout","onPopupMouseDown","maskClosable","getPopupDomNode","isContextMenuOnly","getTriggerDOMNode","triggerRef","popupPlacement","builtinPlacements","alignPoint","getPopupClassNameFromAlign","placements","placement","getAlignPopupClassName","_this$props2","onPopupAlign","popupAnimation","popupTransitionName","popup","onPopupClick","_this$state","getPopupAlign","mouseProps","isMouseEnterToShow","onPopupMouseEnter","isMouseLeaveToHide","onPopupMouseLeave","popupContainer","attachId","mountNode","_this$props3","getPopupContainer","attachParent","portalContainer","prevPopupVisible","afterPopupVisibleChange","defaultPopupVisible","componentDidUpdate","currentDocument","clickOutsideHandler","onDocumentClick","touchOutsideHandler","contextMenuOutsideHandler1","onContextMenuClose","contextMenuOutsideHandler2","clearOutsideHandler","_this$popupRef$curren2","popupAlign","placementStr","baseAlign","getAlignFromPlacement","onPopupVisibleChange","delayS","delayTimer","childPros","_this$props4","action","showAction","_this$props5","_this$props6","hideAction","_this$props7","_this$props8","_this$props9","_this$props10","_this$popupRef$curren3","childCallback","_this$props11","autoDestroy","newChildProps","onContextMenu","createTwoChains","onMouseMove","childrenClassName","portal","handlePortalUpdate","getComponent","triggerContextValue","prevState","newState","popupElement","dropdownStyle","dropdownClassName","_props$direction","direction","dropdownMatchSelectWidth","dropdownRender","dropdownAlign","empty","dropdownPrefixCls","builtInPlacements","bottomLeft","bottomRight","topLeft","topRight","getBuiltInPlacements","mergedTransitionName","getPopupElement","RefSelectTrigger","fillFieldNames","fieldNames","childrenAsData","injectPropsWithOption","newOption","DEFAULT_OMIT_PROPS","_customizeRawInputEle","_classNames2","omitDomProps","displayValues","onDisplayValuesChange","emptyOptions","_props$notFoundConten","notFoundContent","onClear","loading","getInputElement","getRawInputElement","defaultOpen","onDropdownVisibleChange","onActiveValueChange","onSearchSplit","tokenSeparators","allowClear","showArrow","inputIcon","clearIcon","OptionList","_props$showAction","onKeyUp","multiple","mergedShowSearch","domProps","propName","setMobile","selectorDomRef","selectorRef","listRef","_useDelayReset","timeout","bool","setBool","delayRef","cancelLatest","delaySetBool","useDelayReset","_useDelayReset2","mockFocused","setMockFocused","cancelSetMockFocused","_selectorRef$current","_selectorRef$current2","scrollTo","arg","_listRef$current","mergedSearchValue","_displayValues$","customizeInputElement","customizeRawInputElement","customizeRawInputRef","_useMergedState","useMergedState","_useMergedState2","innerOpen","setInnerOpen","mergedOpen","emptyListContent","triggerOpen","newOpen","nextOpen","some","tokenSeparator","onInternalSearch","searchText","fromTyping","isCompositing","newSearchText","patchLabels","text","separate","token","restTokens","prevList","unitStr","unit","getSeparatedContent","getClearLock","setClearLock","focusRef","activeTimeoutIds","timeoutId","splice","onTriggerVisibleChange","_React$useState5","newWidth","ceil","elements","customizedTrigger","onGlobalMouseDown","shadowRoot","composed","composedPath","useSelectTriggerControl","_triggerRef$current2","arrowNode","clearNode","baseSelectContext","toggleOpen","mergedShowArrow","_selectorRef$current4","renderNode","optionList","selectorNode","newValues","_triggerRef$current","_selectorRef$current3","_len3","restArgs","_key3","_listRef$current2","clearLock","cloneDisplayValues","removedDisplayValue","rest","_listRef$current3","search","uuid","useId","innerId","setInnerId","retId","convertNodeToOption","_ref$props","convertChildrenToData","nodes","optionOnly","isSelectOptGroup","_ref2$props","useRefFunc","funcRef","OptGroup","Option","isSelectOption","Filler","offsetY","offsetX","onInnerResize","innerProps","rtl","outerStyle","innerStyle","flexDirection","setRef","refFunc","useDiffItem","onDiff","prevData","setPrevData","diffItem","setDiffItem","originList","targetList","shortList","longList","originLen","targetLen","notExistKey","__EMPTY_ITEM__","getItemKey","diffIndex","shortKey","findListDiffIndex","lockTimeoutRef","lockScroll","scrollPingRef","isScrollAtTop","isScrollAtBottom","isScrollAtLeft","isScrollAtRight","isHorizontal","delta","smoothOffset","originScroll","useFrameWheel","inVirtual","horizontalScroll","onWheelDelta","offsetRef","wheelValueRef","isMouseScrollRef","useOriginScroll","wheelDirectionRef","wheelDirectionCleanRef","deltaX","deltaY","shiftKey","mergedDeltaX","mergedDeltaY","absX","absY","patchMultiple","onWheelY","onWheelX","detail","CacheMap","maps","getPageXY","horizontal","touches","scrollOffset","scrollRange","onStartMove","onStopMove","onScroll","spinSize","containerSize","propsThumbStyle","thumbStyle","dragging","setDragging","pageXY","setPageXY","_React$useState6","startTop","setStartTop","isLTR","scrollbarRef","thumbRef","_React$useState7","_React$useState8","setVisible","visibleTimeoutRef","delayHidden","enableScrollRange","enableOffsetRange","stateRef","onThumbMouseDown","onScrollbarTouchStart","scrollbarEle","thumbEle","passive","enableScrollRangeRef","enableOffsetRangeRef","moveRafId","_stateRef$current","stateDragging","statePageY","stateStartTop","rect","scale","newTop","tmpEnableScrollRange","tmpEnableOffsetRange","ptg","newScrollTop","onMouseUp","scrollbarPrefixCls","containerStyle","background","borderRadius","cursor","getSpinSize","baseSize","EMPTY_DATA","ScrollStyle","overflowAnchor","RawList","itemHeight","_props$fullHeight","fullHeight","virtual","onVirtualScroll","extraRender","_useHeights","onItemAdd","onItemRemove","updatedMark","setUpdatedMark","instanceRef","heightsRef","collectRafRef","collectHeight","sync","doCollect","htmlElement","c","instance","useHeights","_useHeights2","setInstanceRef","heights","heightUpdatedMark","useVirtual","containerHeight","total","curr","isRTL","componentRef","fillerInnerRef","offsetTop","setOffsetTop","offsetLeft","setOffsetLeft","scrollMoving","setScrollMoving","onScrollbarStartMove","onScrollbarStopMove","sharedConfig","syncScrollTop","alignedTop","maxScrollHeightRef","keepInRange","scrollTop","rangeRef","diffItemRef","_useDiffItem","_React$useMemo","_fillerInnerRef$curre","startIndex","startOffset","endIndex","itemTop","dataLen","_item","cacheHeight","currentItemBottom","fillerOffset","setSize","verticalScrollBarRef","horizontalScrollBarRef","horizontalScrollBarSpinSize","verticalScrollBarSpinSize","maxScrollHeight","getVirtualScrollInfo","lastVirtualScrollInfoRef","triggerScroll","params","nextInfo","onScrollBar","newScrollOffset","keepInHorizontalRange","nextOffsetLeft","tmpOffsetLeft","offsetXY","fromHorizontal","_useFrameWheel","_useFrameWheel2","onRawWheel","onFireFoxScroll","cleanUpEvents","touchedRef","touchXRef","touchYRef","intervalRef","onTouchMove","currentX","currentY","_isHorizontal","clearInterval","setInterval","onTouchEnd","useMobileTouchMove","onMozMousePixelScroll","componentEle","newOffsetLeft","delayHideScrollBar","_verticalScrollBarRef","_horizontalScrollBarR","_scrollTo","triggerFlash","scrollRef","syncState","setSyncState","ori","targetAlign","originAlign","needCollectHeight","newTargetAlign","targetTop","mergedAlign","stackTop","itemBottom","maxLen","leftHeight","_i","_cacheHeight","lastTop","findIndex","_arg$offset","useScrollTo","getScrollInfo","renderList","getSize","_React$useMemo2","key2Index","bottomList","startKey","endKey","_heights$get","useGetSize","extraContent","listChildren","renderFunc","ele","useChildren","componentStyle","containerProps","currentTarget","verticalScrollBar","verticalScrollBarThumb","horizontalScrollBar","horizontalScrollBarThumb","List","_useBaseProps","onPopupScroll","_React$useContext","flattenOptions","onActiveValue","defaultActiveFirstOption","onSelect","menuItemSelectedIcon","rawValues","listHeight","listItemHeight","memoFlattenOptions","onListMouseDown","scrollIntoView","getEnabledActiveIndex","_memoFlattenOptions$c","group","activeIndex","setActiveIndex","setActive","fromKeyboard","flattenItem","isSelected","onSelectValue","selected","appVersion","nextActiveIndex","omitFieldNameList","getLabel","itemData","mergedLabel","itemIndex","_classNames","groupOption","_data$title","groupTitle","otherProps","passedProps","omit","optionPrefixCls","optionClassName","iconVisible","optionTitle","RefOptionList","OMIT_DOM_PROPS","TypedSelect","backfill","_props$autoClearSearc","onDeselect","_props$dropdownMatchS","filterOption","filterSort","optionFilterProp","optionLabelProp","_props$listHeight","_props$listItemHeight","labelInValue","mergedId","mergedFilterOption","mergedFieldNames","JSON","postState","setSearchValue","parsedOptions","mergedOptions","valueOptions","labelOptions","setLabelOptions","labelOptionsMap","dig","isChildren","useOptions","convert2LabelValues","draftValues","rawValue","rawLabel","rawKey","rawDisabled","rawTitle","_val$value","isRawValue","_option$key","_useMergedState3","_useMergedState4","internalValue","setInternalValue","_useCache","_cacheRef$current","prevValueCache","prevOptionCache","patchedValues","labeledValues","_prevValueCache$get","valueCache","optionCache","useCache","_values$","_useCache2","mergedValues","getMixedOption","firstValue","_item$label","_mergedValues$","strValue","hasValue","createTagOption","filteredOptions","fieldOptions","fieldLabel","fieldValue","customizeFilter","upperSearch","filterFunc","wrapOption","opt","subOptions","subItem","useFilterOptions","cloneOptions","existOptions","filledSearchOptions","orderedFilteredOptions","displayOptions","flattenList","_fillFieldNames","isGroupOption","grpLabel","triggerChange","newVal","_mergedValues$index","returnValues","returnOptions","setActiveValue","accessibilityIndex","setAccessibilityIndex","mergedDefaultActiveFirstOption","_ref2$source","triggerSelect","getSelectEnt","_option$key2","_getSelectEnt","_getSelectEnt2","wrappedValue","_option","_getSelectEnt3","_getSelectEnt4","_wrappedValue","_option2","onInternalSelect","cloneValues","mergedSelect","selectContext","realVirtual","nextValues","formatted","newRawValues","patchValues","newRawValue","locale","today","backToToday","ok","clear","month","year","timeSelect","dateSelect","weekSelect","monthSelect","yearSelect","decadeSelect","yearFormat","dateFormat","dayFormat","dateTimeFormat","monthBeforeYear","previousMonth","nextMonth","previousYear","nextYear","previousDecade","nextDecade","previousCentury","nextCentury","rangePlaceholder","lang","yearPlaceholder","quarterPlaceholder","monthPlaceholder","weekPlaceholder","rangeYearPlaceholder","rangeQuarterPlaceholder","rangeMonthPlaceholder","rangeWeekPlaceholder","timePickerLocale","typeTemplate","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","TimePicker","Calendar","Table","filterTitle","filterConfirm","filterReset","filterEmptyText","filterCheckall","filterSearchPlaceholder","emptyText","selectAll","selectInvert","selectNone","selectionAll","sortTitle","expand","collapse","triggerDesc","triggerAsc","cancelSort","Modal","okText","cancelText","justOkText","Popconfirm","Transfer","titles","searchPlaceholder","itemUnit","itemsUnit","selectCurrent","removeCurrent","removeAll","Upload","uploading","removeFile","uploadError","previewFile","downloadFile","Empty","description","Icon","Text","edit","copy","copied","PageHeader","back","Form","optional","defaultValidateMessages","required","whitespace","date","format","invalid","types","number","integer","regexp","email","hex","range","mismatch","Image","preview","_props$componentName","componentName","defaultLocale","antLocale","_a","localeFromContext","localeCode","exist","getPrefixCls","viewBox","xmlns","fill","fillRule","cx","cy","rx","ry","__rest","s","propertyIsEnumerable","defaultEmptyImg","simpleEmptyImg","customizePrefixCls","_a$image","image","imageStyle","contextLocale","des","imageNode","PRESENTED_IMAGE_DEFAULT","PRESENTED_IMAGE_SIMPLE","SizeContext","tuple","getCollapsedHeight","getRealHeight","skipOpacityTransition","propertyName","collapseMotion","getTransitionDirection","rootPrefixCls","getStatusClassNames","hasFeedback","getMergedStatus","contextStatus","customStatus","bound01","isOnePointZero","isPercent","isPercentage","convertToPercentage","pad2","hue2rgb","q","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","g","rgb","named","matchers","rgba","hsl","hsla","hsv","hsva","hex8","hex6","hex4","hex3","stringInputToObject","isValidCSSUnit","f","mod","hsvToRgb","hslToRgb","boundAlpha","CSS_UNIT","PERMISSIVE_MATCH3","PERMISSIVE_MATCH4","darkColorMap","toHsv","rgbToHsv","toHex","allow3Char","startsWith","rgbToHex","rgb1","rgb2","amount","getHue","light","hue","getSaturation","saturation","generate","opts","patterns","pColor","colorString","_hsv","_colorString","theme","backgroundColor","presetPrimaryColors","volcano","geekblue","presetPalettes","presetDarkPalettes","primary","containerCache","getMark","attachTo","querySelector","getOrder","prepend","findStyles","tagName","injectCSS","csp","_option$priority","priority","mergedOrder","isPrependQueue","styleNode","setAttribute","nonce","innerHTML","firstChild","existStyle","getAttribute","nodePriority","insertBefore","nextSibling","findExistNode","syncRealContainer","cachedRealContainer","placeholderStyle","updateCSS","originOption","existNode","_option$csp","_option$csp2","_option$csp3","newNode","isIconDefinition","normalizeAttrs","acc","class","getSecondaryColor","primaryColor","normalizeTwoToneColors","twoToneColor","iconStyles","twoToneColorPalette","secondaryColor","calculated","valid","message","colors","styleStr","_useContext","rootProps","getTwoToneColors","setTwoToneColors","setTwoToneColor","_normalizeTwoToneColo","_normalizeTwoToneColo2","spin","rotate","_React$useContext$pre","rootClassName","classString","iconTabIndex","svgStyle","msTransform","getTwoToneColor","AntdIcon","SpaceCompactItemContext","compactItemContext","compactItemClassnames","compactDirection","isFirstItem","isLastItem","compactSize","directionConfig","_props$size","block","clx","childNodes","mergedNotFound","_a$bordered","bordered","_a$listHeight","_a$listItemHeight","customizeSize","customDisabled","getContextPopupContainer","renderEmpty","_useCompactItemContex","isMultiple","isFormItemInput","feedbackIcon","mergedStatus","_getIcons","suffixIcon","mergedClearIcon","getSuffixIconNode","arrowIcon","mergedSuffixIcon","iconCls","itemIcon","getIcons","selectProps","rcSelectRtlDropdownClassName","mergedSize","DisabledContext","mergedDisabled","SECRET_COMBOBOX_MODE_DO_NOT_USE","_Select","HomeTour","images","setPersonas","personas","fecha","tour","tourOptions","dateOptionsOfCurrentTour","onDateChange","onTourChange","availability","counterUp","counterDown","useMediaQuery","setIsActive","disabledButton","setDisabledButton","Fragment","BackgroundImage","fluid","childImageSharp","top1","beerContainer","textContainer","home130text","mainContainer","flexGapSupported","detectFlexGapSupported","flex","rowGap","marginDirection","SpaceContext","horizontalSize","verticalSize","latestIndex","supportFlexGap","marginBottom","paddingBottom","spaceSize","small","middle","large","CompoundedSpace","flexible","setFlexible","space","_props$wrap","getNumberSize","keepEmpty","cn","itemClassName","spaceContext","gapStyle","flexWrap","columnGap","Compact","getNow","getFixedDate","getEndDate","endOf","getWeekDay","weekday","localeData","firstDayOfWeek","getYear","getMonth","getDate","getHour","hour","getMinute","minute","getSecond","second","addYear","addMonth","addDate","setYear","setMonth","setDate","setHour","setMinute","setSecond","isAfter","date1","date2","isValidate","isValid","getWeekFirstDay","getWeekFirstDate","getWeek","week","getShortWeekDays","weekdaysMin","getShortMonths","monthsShort","_format","formats","fallbackFormatList","formatText","matchFormat","matchText","_date","replacement","replaceElement","styleForPseudo","ids","delayFrames","myId","restFrames","internalCallback","_callSuper","o","Reflect","construct","isHidden","hidden","getValidateContainer","nodeRoot","Document","Node","ELEMENT_NODE","isNotGrey","pid","Wave","animationStart","destroyed","waveColor","_b","insertExtraNode","extraNode","attributeName","getAttributeName","borderColor","getRootNode","nodeBody","onTransitionStart","onTransitionEnd","resetEffect","animationName","bindAnimationEvent","clickWaveTimeoutId","animationStartId","renderWave","contextType","GroupSizeContext","others","sizeCls","classes","getCollapsedWidth","getRealWidth","existIcon","rxTwoCNChar","isTwoCNChar","isUnBorderedButtonType","insertSpace","needInserted","isFragment","_props$loading","_props$type","danger","_props$shape","shape","_props$ghost","ghost","_props$block","_props$htmlType","htmlType","groupSize","innerLoading","setLoading","hasTwoCNChar","setHasTwoCNChar","autoInsertSpaceInButton","buttonRef","isNeedInserted","loadingOrDelay","buttonText","textContent","handleClick","autoInsertSpace","sizeFullname","iconType","linkButtonRestProps","iconNode","kids","isPrevChildPure","childList","isCurrentChildPure","lastChild","spaceChildren","buttonNode","Group","__ANT_BUTTON","PresetStatusColorTypes","PresetColorTypes","checked","PresetColorRegex","PresetStatusColorRegex","closeIcon","_a$closable","isPresetColor","tagStyle","presetColor","tagClassName","handleCloseClick","defaultPrevented","isNeedWave","tagProps","tagNode","Tag","CheckableTag","HIDDEN_STYLE","_ref$prevIcon","prevIcon","_ref$nextIcon","nextIcon","_ref$superPrevIcon","superPrevIcon","_ref$superNextIcon","superNextIcon","onSuperPrev","onSuperNext","onPrev","onNext","hideNextBtn","hidePrevBtn","generateConfig","viewDate","onPrevDecades","onNextDecades","hideHeader","headerPrefixCls","yearNumber","startYear","DECADE_DISTANCE_COUNT","endYear","nextTime","setDateTime","defaultDate","newDate","getLastDay","endDate","lastDay","monthShow","PanelBody","disabledDate","picker","rowNum","colNum","prefixColumn","rowClassName","baseDate","getCellClassName","getCellText","getCellNode","getCellDate","titleCell","headerCells","onDateMouseEnter","onDateMouseLeave","cellPrefixCls","rows","row","rowStartDate","_loop","_objectSpread2","currentDate","getCellDateDisabled","cellDate","DECADE_UNIT_DIFF_DES","DECADE_UNIT_DIFF","decadeYearNumber","startDecadeYear","endDecadeYear","baseDecadeYear","DECADE_COL_COUNT","startDecadeNumber","endDecadeNumber","scrollIds","perTick","createKeyDownHandler","onLeftRight","onCtrlLeftRight","onUpDown","onPageUpDown","onEnter","getDefaultFormat","showTime","use12Hours","mergedFormat","getInputSize","defaultSize","clickCallbacks","PickerModeMap","quarter","time","elementsContains","onViewDateChange","operationRef","onPanelChange","panelPrefixCls","onDecadesChange","isNullEqual","value1","value2","isSameYear","year1","year2","equal","getQuarter","isSameQuarter","quarter1","quarter2","isSameMonth","month1","month2","isSameDate","isSameWeek","time1","time2","isSameTime","isInRange","startDate","getClosingViewDate","formatValue","formatList","getDisabledFromRange","currentMode","startMonth","leftPad","getDataOrAriaProps","retProps","updateValues","units","hideDisabledOptions","ulRef","liRefs","li","tryOrNextFrame","_scrollRef$current","shouldUnitsUpdate","prevUnits","nextUnits","generateUnits","disabledUnits","integerStep","isPM","activeColumnIndex","showHour","showMinute","showSecond","_props$hourStep","hourStep","_props$minuteStep","minuteStep","_props$secondStep","secondStep","disabledHours","disabledMinutes","disabledSeconds","disabledTime","columns","contentPrefixCls","columnPrefixCls","originHour","disabledConfig","mergedDisabledHours","mergedDisabledMinutes","mergedDisabledSeconds","rawHours","memorizedRawHours","_React$useMemo3","AMPMDisabled","hourValue","_React$useMemo4","AMDisabled","PMDisabled","hours","hourMeta","hourLabel","minutes","seconds","setTime","isNewPM","newHour","newMinute","newSecond","mergedHour","mergedMinute","mergedSecond","newDisabledMinutes","availableMinute","newDisabledSeconds","availableSecond","useTimeSelection","addColumnNode","columnValue","onColumnSelect","column","valueIndex","unitLen","nextUnit","PMIndex","_props$format","_props$use12Hours","bodyOperationRef","setActiveColumnIndex","columnsCount","useCellClassName","rangedValue","hoverRangedValue","isInView","isSameCell","offsetCell","prevDate","nextDate","rangeStart","rangeEnd","hoverStart","hoverEnd","isRangeHovered","isRangeStart","isRangeEnd","isHoverStart","isHoverEnd","isHoverEdgeStart","isHoverEdgeEnd","rowCount","dateRender","weekFirstDay","monthStartDate","startDateWeekDay","alignStartDate","getWeekStartDate","weekDaysLocale","shortWeekDays","onNextMonth","onPrevMonth","onNextYear","onPrevYear","onYearClick","onMonthClick","monthsLocale","shortMonths","yearNode","monthNode","monthFormat","monthYearNodes","_props$panelName","panelName","keyboardConfig","_onSelect","onYearChange","onMonthChange","ACTIVE_PANEL","activePanel","setActivePanel","dateOperationRef","timeOperationRef","timeProps","nextActivePanel","selectedDate","disabledTimes","rowPrefixCls","monthCellRender","baseMonth","baseQuarter","quarterFormat","onPrevDecade","onNextDecade","onDecadeClick","YEAR_DECADE_COUNT","yearPrefixCls","baseYear","YEAR_COL_COUNT","currentYearNumber","sourceMode","onDecadeChange","getExtraFooter","renderExtraFooter","getRanges","presetNode","okNode","_ref$rangeList","rangeList","_ref$components","needConfirmButton","onNow","onOk","okDisabled","showNow","rangeItem","Button","button","CALENDAR_PANEL_MODE","pickerValue","defaultPickerValue","_props$picker","_props$tabIndex","showToday","onPickerValueChange","_onOk","isHourStepValid","isMinuteStepValid","isSecondStepValid","panelContext","panelDivRef","panelRef","onContextSelect","hideRanges","defaultOpenValue","inRange","panelPosition","mergedValue","setInnerValue","defaultDateObject","setInnerViewDate","setViewDate","getInternalNextMode","nextMode","getNextMode","_useMergedState5","_useMergedState6","mergedMode","setInnerMode","panelNode","setSourceMode","forceTriggerSelect","onInternalKeyDown","selectable","operationFnc","isDateMode","isSelectable","extraFooter","rangesNode","todayNode","pickerProps","newMode","viewValue","lowerBoundTime","lowerBoundHour","lowerBoundMinute","getLowerBoundTime","adjustedNow","todayCls","BUILT_IN_PLACEMENTS","usePickerInput","isClickOutside","forwardKeyDown","blurToCancel","onSubmit","onCancel","_onFocus","_onBlur","currentFocusedKey","_ref$key","typing","setTyping","delayBlurTimer","preventBlurRef","valueChangedRef","preventDefaultRef","inputProps","_e$composedPath","getTargetFromEvent","clickedOutside","queueFunc","useTextValueMapping","valueTexts","onTextChange","setInnerText","valueTextsRef","resetText","valText","useValueTexts","firstValueText","fullValueTexts","formatStr","useHoverValue","valueText","internalSetValue","setValue","immediately","_useValueTexts","firstText","onLeave","InnerPicker","inputReadOnly","pickerRef","panelRender","onOpenChange","_props$autoComplete","inputRender","inputDivRef","selectedValue","setSelectedValue","postOpen","triggerInnerOpen","_useValueTexts2","_useTextValueMapping","newText","inputDate","_useTextValueMapping2","triggerTextChange","_usePickerInput","_usePickerInput2","_usePickerInput2$","_useHoverValue","_useHoverValue2","hoverValue","panelProps","suffixNode","panel","mergedInputProps","Picker","getStartEndDistance","startNext","getDistance","compareFunc","decade1","decade2","isSameDecade","useRangeViewDates","defaultDates","defaultViewDates","setDefaultViewDates","viewDates","setInternalViewDates","getRangeViewDate","newViewDates","anotherIndex","reorderValues","canValueTrigger","allowEmpty","InnerRangePicker","_classNames3","_classNames4","_props$separator","_disabledTime","ranges","onCalendarChange","activePickerIndex","openRecordsRef","startInputDivRef","endInputDivRef","separatorRef","startInputRef","endInputRef","arrowRef","mergedActivePickerIndex","setMergedActivePickerIndex","_useRangeViewDates","_useRangeViewDates2","getViewDate","postValues","_useMergedState7","_useMergedState8","mergedModes","setInnerModes","triggerModesChange","modes","_useRangeDisabled","disabledStart","disabledEnd","weekFirstDate","monthNumber","quarterNumber","useRangeDisabled","_useRangeDisabled2","disabledStartDate","disabledEndDate","_useMergedState9","_useMergedState10","startOpen","endOpen","popupMinWidth","setPopupMinWidth","_triggerOpen","openRecords","triggerOpenAndFocus","sourceIndex","startValue","endValue","startStr","endStr","canStartValueTrigger","canEndValueTrigger","nextOpenIndex","sharedTextHooksProps","startValueTexts","firstStartValueText","_useValueTexts3","_useValueTexts4","endValueTexts","firstEndValueText","_onTextChange","startText","triggerStartTextChange","resetStartText","_useTextValueMapping3","_useTextValueMapping4","endText","triggerEndTextChange","resetEndText","rangeHoverValue","setRangeHoverValue","setHoverRangedValue","startHoverValue","onStartEnter","onStartLeave","_useHoverValue3","_useHoverValue4","endHoverValue","onEndEnter","onEndLeave","getSharedInputHookProps","startInputProps","startFocused","startTyping","_usePickerInput3","_usePickerInput4","endInputProps","_usePickerInput4$","endFocused","endTyping","renderPanel","panelHoverRangedValue","panelShowTime","timeDefaultValues","panelDateRender","arrowLeft","panelLeft","arrowMarginLeft","arrowPositionStyle","rangePanel","panels","nextViewDate","showDoublePanel","leftPanel","newViewDate","rightPanel","mergedNodes","marginLeft","renderPanels","inputSharedProps","activeBarLeft","activeBarWidth","activeBarPositionStyle","RangePicker","getPlaceholder","customizePlaceholder","getRangePlaceholder","transPlacement2DropdownAlign","Components","getTimeProps","firstFormat","showTimeObj","_generateSinglePicker","getPicker","customizeGetPopupContainer","_props$bordered","innerRef","additionalProps","additionalOverrideProps","mergedPicker","formItemContext","WeekPicker","MonthPicker","YearPicker","QuarterPicker","customGetPopupContainer","generateRangePicker","MergedDatePicker","ComoLlegar","PanelContent","_classnames","rendered","setRendered","CollapsePanel","onItemClick","panelKey","handleKeyPress","renderIcon","expandIcon","collapsible","renderTitle","header","nextProps","headerClass","destroyInactivePanel","accordion","openMotion","collapsibleHeader","collapsibleIcon","itemCls","headerProps","onKeyPress","ifExtraExist","defaultProps","getActiveKeysArray","activeKey","currentActiveKey","activeKeyType","Collapse","_props","onClickItem","setActiveKey","getNewChild","rootDestroyInactivePanel","_child$props","childCollapsible","mergeCollapsible","getItems","_activeKey","defaultActiveKey","nextState","collapseClassName","Panel","_props$className","_props$expandIconPosi","expandIconPosition","mergedExpandIconPosition","_props$showArrow","collapsePanelClassName","_Collapse","QuilmesTourIndex","setFecha","setTour","dateOptions","questions","comollego","precauciones","imgsHome","ReservaSteps","compact","groupFormItemContext","hasAddon","addonBefore","addonAfter","hasPrefixSuffix","resolveOnChange","targetValue","cloneNode","fixControlledValue","affixWrapperClassName","groupClassName","wrapperClassName","triggerFocus","handleReset","affixWrapperPrefixCls","affixWrapperCls","needClear","clearIconCls","getClearIcon","wrapperCls","addonCls","mergedWrapperClassName","mergedGroupClassName","onPressEnter","htmlSize","showCount","inputClassName","setSelectionRange","_inputRef$current","_inputRef$current2","select","_inputRef$current3","handleChange","handleKeyDown","handleFocus","handleBlur","hasMaxLength","valueLength","dataCount","getSuffix","useRemovePasswordTimeout","triggerOnMount","removePasswordTimeoutRef","removePasswordTimeout","_c","_d","hasAttribute","removeAttribute","timer","customSize","useContext","inputHasPrefixSuffix","prevHasPrefixSuffix","mergedAllowClear","override","ActionMap","click","hover","_props$visibilityTogg","visibilityToggle","visibilityControlled","renderPassword","customizeInputPrefixCls","inputPrefixCls","_props$action","_props$iconRender","iconRender","iconTrigger","iconProps","getIcon","omittedProps","hiddenTextarea","_props$enterButton","enterButton","customOnSearch","customOnChange","contextSize","composedRef","searchIcon","btnClassName","enterButtonAsElement","isAntdButton","HIDDEN_TEXTAREA_STYLE","SIZING_STYLE","computedStyleCache","calculateNodeStyling","boxSizing","paddingSize","borderSize","sizingStyle","nodeInfo","autoSize","onInternalAutoSize","setMergedValue","textareaRef","textArea","minRows","maxRows","needAutoSize","resizeState","setResizeState","autoSizeStyle","setAutoSizeStyle","startResize","textareaStyles","uiTextNode","_calculateNodeStyling","maxHeight","singleRowHeight","resize","calculateAutoSizeStyle","_textareaRef$current","selectionStart","selectionEnd","fixFirefoxAutoScroll","resizeRafRef","cleanRaf","mergedAutoSizeStyle","TextArea","resizableTextArea","saveTextArea","ClearableInputType","ClearableLabeledInput","statusContext","renderClearIcon","Consumer","inputType","renderTextAreaWithClearIcon","fixEmojiLength","setTriggerValue","isCursorInEnd","preValue","triggerValue","newTriggerValue","_a$showCount","_React$useContext2","clearableInputRef","compositing","setCompositing","oldCompositionValueRef","oldSelectionStartRef","handleSetValue","textareaNode","Search","Password","Reserva3","HeaderTour","reserva","tourDescription","tourHeaderMobile","tourHeader","tourHeaderContent","tourHeaderContentHome","logoTourMobile","logoTour","logoReserva","menuHeader","menuIcon","logoMenu","scroll","Scroll","Footer","_bases$politica","_bases$bases","_bases$tyc","bases","footer_container","scrollToTop","footer_menu","footerOptions","politica","fileUrl","textDecoration","_bases$politica2","_bases$bases2","tyc","_bases$tyc2","pHidden","socialContainer","facebook","social","LayoutTour","pathname","LaCasaDeQuilmes","setImages","setQuestions","setPrecauciones","setComollego","setBases","setTourOptions","setDateOptions","setDateOptionsOfCurrentTour","setAvailability","selectedTime","setSelectedTime","dataFaq","allFaq","dataComollego","allComollego","dataPrecauciones","allPrecauciones","dataBases","allBases","idTour","brand","Zone","country","city","campaign","cms","language","login","pageName","pageType","SiteType","product","sku","userUid","url_campaign","Step_number","local","localStorage","getItem","sessionStorage","navigate","newPath","Images","edges","img","cleanImagesArray","api","fetch","headers","async","response","json","console","error","newArray","preventDateRefresh","SEO","Router","basepath","exact","dateString","availableDates","availabilityArray","disponibilidad","maximumAvailability","_toConsumableArray","idFecha","arrayMap","isSymbol","symbolProto","symbolToString"],"mappings":"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","file":"component---src-pages-lacasadequilmes-js-47619258e99a64903d87.js","sourcesContent":["var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nmodule.exports = isSymbol;\n","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsVarRange = '\\\\ufe0e\\\\ufe0f';\n\n/** Used to compose unicode capture groups. */\nvar rsAstral = '[' + rsAstralRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsSymbol = '(?:' + [rsNonAstral + rsCombo + '?', rsCombo, rsRegional, rsSurrPair, rsAstral].join('|') + ')';\n\n/** Used to match [string symbols](https://mathiasbynens.be/notes/javascript-unicode). */\nvar reUnicode = RegExp(rsFitz + '(?=' + rsFitz + ')|' + rsSymbol + rsSeq, 'g');\n\n/**\n * Converts a Unicode `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction unicodeToArray(string) {\n return string.match(reUnicode) || [];\n}\n\nmodule.exports = unicodeToArray;\n","var castSlice = require('./_castSlice'),\n hasUnicode = require('./_hasUnicode'),\n stringToArray = require('./_stringToArray'),\n toString = require('./toString');\n\n/**\n * Creates a function like `_.lowerFirst`.\n *\n * @private\n * @param {string} methodName The name of the `String` case method to use.\n * @returns {Function} Returns the new case function.\n */\nfunction createCaseFirst(methodName) {\n return function(string) {\n string = toString(string);\n\n var strSymbols = hasUnicode(string)\n ? stringToArray(string)\n : undefined;\n\n var chr = strSymbols\n ? strSymbols[0]\n : string.charAt(0);\n\n var trailing = strSymbols\n ? castSlice(strSymbols, 1).join('')\n : string.slice(1);\n\n return chr[methodName]() + trailing;\n };\n}\n\nmodule.exports = createCaseFirst;\n","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjMiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMyAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuODYzMjggMjAuODI5MkgxOS4wNTA4QzIxLjM5NDUgMjAuODI5MiAyMi41NzgxIDE5LjY0NTYgMjIuNTc4MSAxNy4zMjUzVjMuODAxODhDMjIuNTc4MSAxLjQ5MzI5IDIxLjM5NDUgMC4zMDk2OTIgMTkuMDUwOCAwLjMwOTY5MkgzLjg2MzI4QzEuNTE5NTMgMC4zMDk2OTIgMC4zMjQyMTkgMS40ODE1NyAwLjMyNDIxOSAzLjgwMTg4VjE3LjMyNTNDMC4zMjQyMTkgMTkuNjQ1NiAxLjUxOTUzIDIwLjgyOTIgMy44NjMyOCAyMC44MjkyWk0zLjc1NzgxIDE4Ljg5NTZDMi43ODUxNiAxOC44OTU2IDIuMjU3ODEgMTguMzkxNyAyLjI1NzgxIDE3LjM3MjJWNy4wMTI4MkMyLjI1NzgxIDYuMDA1IDIuNzg1MTYgNS40ODkzOCAzLjc1NzgxIDUuNDg5MzhIMTkuMTQ0NUMyMC4xMDU1IDUuNDg5MzggMjAuNjU2MiA2LjAwNSAyMC42NTYyIDcuMDEyODJWMTcuMzcyMkMyMC42NTYyIDE4LjM5MTcgMjAuMTA1NSAxOC44OTU2IDE5LjE0NDUgMTguODk1NkgzLjc1NzgxWk05LjMwMDc4IDkuNDI2ODhIOS45NDUzMUMxMC4zNDM4IDkuNDI2ODggMTAuNDcyNyA5LjMwOTY5IDEwLjQ3MjcgOC45MTEyNVY4LjI2NjcyQzEwLjQ3MjcgNy44OCAxMC4zNDM4IDcuNzUxMSA5Ljk0NTMxIDcuNzUxMUg5LjMwMDc4QzguOTAyMzQgNy43NTExIDguNzczNDQgNy44OCA4Ljc3MzQ0IDguMjY2NzJWOC45MTEyNUM4Ljc3MzQ0IDkuMzA5NjkgOC45MDIzNCA5LjQyNjg4IDkuMzAwNzggOS40MjY4OFpNMTIuOTU3IDkuNDI2ODhIMTMuNjEzM0MxNCA5LjQyNjg4IDE0LjEyODkgOS4zMDk2OSAxNC4xMjg5IDguOTExMjVWOC4yNjY3MkMxNC4xMjg5IDcuODggMTQgNy43NTExIDEzLjYxMzMgNy43NTExSDEyLjk1N0MxMi41NzAzIDcuNzUxMSAxMi40NDE0IDcuODggMTIuNDQxNCA4LjI2NjcyVjguOTExMjVDMTIuNDQxNCA5LjMwOTY5IDEyLjU3MDMgOS40MjY4OCAxMi45NTcgOS40MjY4OFpNMTYuNjI1IDkuNDI2ODhIMTcuMjY5NUMxNy42NjggOS40MjY4OCAxNy43OTY5IDkuMzA5NjkgMTcuNzk2OSA4LjkxMTI1VjguMjY2NzJDMTcuNzk2OSA3Ljg4IDE3LjY2OCA3Ljc1MTEgMTcuMjY5NSA3Ljc1MTFIMTYuNjI1QzE2LjIyNjYgNy43NTExIDE2LjA5NzcgNy44OCAxNi4wOTc3IDguMjY2NzJWOC45MTEyNUMxNi4wOTc3IDkuMzA5NjkgMTYuMjI2NiA5LjQyNjg4IDE2LjYyNSA5LjQyNjg4Wk01LjYzMjgxIDEzLjAyNDVINi4yODkwNkM2LjY3NTc4IDEzLjAyNDUgNi44MDQ2OSAxMi45MDczIDYuODA0NjkgMTIuNTIwNlYxMS44NjQ0QzYuODA0NjkgMTEuNDc3NyA2LjY3NTc4IDExLjM2MDUgNi4yODkwNiAxMS4zNjA1SDUuNjMyODFDNS4yNDYwOSAxMS4zNjA1IDUuMTE3MTkgMTEuNDc3NyA1LjExNzE5IDExLjg2NDRWMTIuNTIwNkM1LjExNzE5IDEyLjkwNzMgNS4yNDYwOSAxMy4wMjQ1IDUuNjMyODEgMTMuMDI0NVpNOS4zMDA3OCAxMy4wMjQ1SDkuOTQ1MzFDMTAuMzQzOCAxMy4wMjQ1IDEwLjQ3MjcgMTIuOTA3MyAxMC40NzI3IDEyLjUyMDZWMTEuODY0NEMxMC40NzI3IDExLjQ3NzcgMTAuMzQzOCAxMS4zNjA1IDkuOTQ1MzEgMTEuMzYwNUg5LjMwMDc4QzguOTAyMzQgMTEuMzYwNSA4Ljc3MzQ0IDExLjQ3NzcgOC43NzM0NCAxMS44NjQ0VjEyLjUyMDZDOC43NzM0NCAxMi45MDczIDguOTAyMzQgMTMuMDI0NSA5LjMwMDc4IDEzLjAyNDVaTTEyLjk1NyAxMy4wMjQ1SDEzLjYxMzNDMTQgMTMuMDI0NSAxNC4xMjg5IDEyLjkwNzMgMTQuMTI4OSAxMi41MjA2VjExLjg2NDRDMTQuMTI4OSAxMS40Nzc3IDE0IDExLjM2MDUgMTMuNjEzMyAxMS4zNjA1SDEyLjk1N0MxMi41NzAzIDExLjM2MDUgMTIuNDQxNCAxMS40Nzc3IDEyLjQ0MTQgMTEuODY0NFYxMi41MjA2QzEyLjQ0MTQgMTIuOTA3MyAxMi41NzAzIDEzLjAyNDUgMTIuOTU3IDEzLjAyNDVaTTE2LjYyNSAxMy4wMjQ1SDE3LjI2OTVDMTcuNjY4IDEzLjAyNDUgMTcuNzk2OSAxMi45MDczIDE3Ljc5NjkgMTIuNTIwNlYxMS44NjQ0QzE3Ljc5NjkgMTEuNDc3NyAxNy42NjggMTEuMzYwNSAxNy4yNjk1IDExLjM2MDVIMTYuNjI1QzE2LjIyNjYgMTEuMzYwNSAxNi4wOTc3IDExLjQ3NzcgMTYuMDk3NyAxMS44NjQ0VjEyLjUyMDZDMTYuMDk3NyAxMi45MDczIDE2LjIyNjYgMTMuMDI0NSAxNi42MjUgMTMuMDI0NVpNNS42MzI4MSAxNi42MzM5SDYuMjg5MDZDNi42NzU3OCAxNi42MzM5IDYuODA0NjkgMTYuNTE2NyA2LjgwNDY5IDE2LjEzVjE1LjQ3MzhDNi44MDQ2OSAxNS4wODcgNi42NzU3OCAxNC45Njk4IDYuMjg5MDYgMTQuOTY5OEg1LjYzMjgxQzUuMjQ2MDkgMTQuOTY5OCA1LjExNzE5IDE1LjA4NyA1LjExNzE5IDE1LjQ3MzhWMTYuMTNDNS4xMTcxOSAxNi41MTY3IDUuMjQ2MDkgMTYuNjMzOSA1LjYzMjgxIDE2LjYzMzlaTTkuMzAwNzggMTYuNjMzOUg5Ljk0NTMxQzEwLjM0MzggMTYuNjMzOSAxMC40NzI3IDE2LjUxNjcgMTAuNDcyNyAxNi4xM1YxNS40NzM4QzEwLjQ3MjcgMTUuMDg3IDEwLjM0MzggMTQuOTY5OCA5Ljk0NTMxIDE0Ljk2OThIOS4zMDA3OEM4LjkwMjM0IDE0Ljk2OTggOC43NzM0NCAxNS4wODcgOC43NzM0NCAxNS40NzM4VjE2LjEzQzguNzczNDQgMTYuNTE2NyA4LjkwMjM0IDE2LjYzMzkgOS4zMDA3OCAxNi42MzM5Wk0xMi45NTcgMTYuNjMzOUgxMy42MTMzQzE0IDE2LjYzMzkgMTQuMTI4OSAxNi41MTY3IDE0LjEyODkgMTYuMTNWMTUuNDczOEMxNC4xMjg5IDE1LjA4NyAxNCAxNC45Njk4IDEzLjYxMzMgMTQuOTY5OEgxMi45NTdDMTIuNTcwMyAxNC45Njk4IDEyLjQ0MTQgMTUuMDg3IDEyLjQ0MTQgMTUuNDczOFYxNi4xM0MxMi40NDE0IDE2LjUxNjcgMTIuNTcwMyAxNi42MzM5IDEyLjk1NyAxNi42MzM5WiIgZmlsbD0iIzBGOTFENyIvPgo8L3N2Zz4KCg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB8AAAAeCAYAAADU8sWcAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIhSURBVHgBxVe9S2sxFD/3o6/vtfAqqAiCOioIToqTgouI6KIgLk4iCG4ugjj7sbgpuLiIIoIuDoqjgqCCg3+BboIOClKR2ySeE++t9yO1TWtvf5AmOcm5v+TkJD0HIAQhhKFq+/tUh8fCctV4GP6JVEwslif/SYfUfhgXoTbVHAujYhiGHLd9SomBpe0eBrw+YZmmlNBUy5arYSwHFrapzsNya+a22bfMcj/NICflWYchKTxfrs5c42blAjxyIvtze/+4xzhvgSohlUzsYzWN5d0jJUiT48qKnlMlsEzDdDkNP3m4HQv8hALigaEir6rJVajFziPk3l2sCbn/YSiKtalB6GprgjIhwuRaWNg5g5Hudlgc64dKULbDLR+ew2v2Qy4gk0rqqCq9XRsbp1ewe3EH+/MT0NqQKVWtMrP78fD0ArNbx7A4rm2B37lq/5G0Lv1PHkMJyJvdVgl1MDfUC5l0EibXD0pViZi9rF3TlSNVcj4NRHaudc/JueiMN09v4O7hETQhwuRaGO3pgJWjC+lsZSCyc63ndePkCipA5MxjedcxdPJixQB5LMDYLeBXsUcvhchr+n9efXzF68pHJie4qOoiOBde4hBIGqjj9HW2Djem/tp2EtMGiwcW4mBJyB/8CDO/PRbnOQ6FxUEZzZFjriz75rDmVPoZm/msw5+XeTF1MScs9hoWSqeoTzsXeOM4lIpCyaMqkVQlioUSy0+BedCRf7k+IgAAAABJRU5ErkJggg==\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"reservaStep2-module--mainContainer--2Vw9k\",\"headerContainer\":\"reservaStep2-module--headerContainer--a2AKL\",\"reservaContainer\":\"reservaStep2-module--reservaContainer--361DW\",\"titleContainer\":\"reservaStep2-module--titleContainer--1tCQX\",\"title\":\"reservaStep2-module--title--3R-OR\",\"stepsContainer\":\"reservaStep2-module--stepsContainer--paS6l\",\"step\":\"reservaStep2-module--step--2UpgX\",\"step2\":\"reservaStep2-module--step2--2my81\",\"stepNumb\":\"reservaStep2-module--stepNumb--29GsH\",\"stepText\":\"reservaStep2-module--stepText--3Envx\",\"stepText2\":\"reservaStep2-module--stepText2--2ee4r\",\"blueBar\":\"reservaStep2-module--blueBar--30BGC\",\"blueBar1\":\"reservaStep2-module--blueBar1--3dfog\",\"greyBar1\":\"reservaStep2-module--greyBar1--1CDGR\",\"selectsContainer\":\"reservaStep2-module--selectsContainer--1xIjM\",\"selectTitleContainer\":\"reservaStep2-module--selectTitleContainer--3IxM7\",\"selectTitle\":\"reservaStep2-module--selectTitle--8iQpu\",\"select\":\"reservaStep2-module--select--3-_g9\",\"personasSelect\":\"reservaStep2-module--personasSelect--GOtLG\",\"pText\":\"reservaStep2-module--pText--1c4ih\",\"verDispContainer\":\"reservaStep2-module--verDispContainer--3egeo\",\"dispText\":\"reservaStep2-module--dispText--3XJle\",\"cleanContainer\":\"reservaStep2-module--cleanContainer--2uZEP\",\"cleanText\":\"reservaStep2-module--cleanText--2Wq3u\",\"completaTusDatos\":\"reservaStep2-module--completaTusDatos--23Vqa\",\"completaTusDatosContainer\":\"reservaStep2-module--completaTusDatosContainer--2aBHN\",\"datosTitleContainer\":\"reservaStep2-module--datosTitleContainer--2Sajg\",\"datosTitle\":\"reservaStep2-module--datosTitle--16ivL\",\"collapseNameText\":\"reservaStep2-module--collapseNameText--1FqIw\",\"horarioTitleContainer\":\"reservaStep2-module--horarioTitleContainer--o9jsW\",\"selectHourContainer\":\"reservaStep2-module--selectHourContainer--1oMKw\",\"cardPickerContainer\":\"reservaStep2-module--cardPickerContainer--3-hje\",\"cardPickerChecked\":\"reservaStep2-module--cardPickerChecked--38K4Q\",\"cardinfo1\":\"reservaStep2-module--cardinfo1--3xOf4\",\"cardinfo2\":\"reservaStep2-module--cardinfo2--Bywp4\",\"cardinfo3\":\"reservaStep2-module--cardinfo3--4RyIu\",\"cardinfo4\":\"reservaStep2-module--cardinfo4--4dW_U\",\"cardinfo5\":\"reservaStep2-module--cardinfo5--1Lxot\",\"tourName\":\"reservaStep2-module--tourName--22o0m\",\"subTitle\":\"reservaStep2-module--subTitle--j2ocz\",\"cardTitle\":\"reservaStep2-module--cardTitle--27Zor\",\"buttonContainer\":\"reservaStep2-module--buttonContainer--15bMJ\",\"buttonReserva\":\"reservaStep2-module--buttonReserva--1gm51\",\"buttonReservaDeshabilitado\":\"reservaStep2-module--buttonReservaDeshabilitado--22JAL\",\"buttonText\":\"reservaStep2-module--buttonText--39HAL\",\"checkContainer\":\"reservaStep2-module--checkContainer--2yV8s\",\"checkmark\":\"reservaStep2-module--checkmark--1iAsi\",\"error\":\"reservaStep2-module--error--18OBp\",\"none\":\"reservaStep2-module--none--SiOK_\",\"buttonReservaVolver\":\"reservaStep2-module--buttonReservaVolver--31Pz_\",\"tourDisponibilidadContainer\":\"reservaStep2-module--tourDisponibilidadContainer--1tHtZ\",\"tourNameContainer\":\"reservaStep2-module--tourNameContainer--3JCCC\",\"tourTitleContainer\":\"reservaStep2-module--tourTitleContainer--3XETr\",\"dispTitle\":\"reservaStep2-module--dispTitle--jW0Vi\",\"hourTitle\":\"reservaStep2-module--hourTitle--3gbzU\",\"tourTitle\":\"reservaStep2-module--tourTitle--3-1st\",\"nameContainer\":\"reservaStep2-module--nameContainer--3_Mt7\",\"nameTitle\":\"reservaStep2-module--nameTitle--128Lp\",\"placesTitle\":\"reservaStep2-module--placesTitle--4vZDi\",\"hoursTitle\":\"reservaStep2-module--hoursTitle--EBK4i\",\"disponibilidadPlacesContainer\":\"reservaStep2-module--disponibilidadPlacesContainer--O3yEM\",\"fechaHorariosContainer\":\"reservaStep2-module--fechaHorariosContainer--1jMof\"};","/**\n * The base implementation of `_.propertyOf` without support for deep paths.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Function} Returns the new accessor function.\n */\nfunction basePropertyOf(object) {\n return function(key) {\n return object == null ? undefined : object[key];\n };\n}\n\nmodule.exports = basePropertyOf;\n","var toString = require('./toString'),\n upperFirst = require('./upperFirst');\n\n/**\n * Converts the first character of `string` to upper case and the remaining\n * to lower case.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to capitalize.\n * @returns {string} Returns the capitalized string.\n * @example\n *\n * _.capitalize('FRED');\n * // => 'Fred'\n */\nfunction capitalize(string) {\n return upperFirst(toString(string).toLowerCase());\n}\n\nmodule.exports = capitalize;\n","var asciiWords = require('./_asciiWords'),\n hasUnicodeWord = require('./_hasUnicodeWord'),\n toString = require('./toString'),\n unicodeWords = require('./_unicodeWords');\n\n/**\n * Splits `string` into an array of its words.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to inspect.\n * @param {RegExp|string} [pattern] The pattern to match words.\n * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.\n * @returns {Array} Returns the words of `string`.\n * @example\n *\n * _.words('fred, barney, & pebbles');\n * // => ['fred', 'barney', 'pebbles']\n *\n * _.words('fred, barney, & pebbles', /[^, ]+/g);\n * // => ['fred', 'barney', '&', 'pebbles']\n */\nfunction words(string, pattern, guard) {\n string = toString(string);\n pattern = guard ? undefined : pattern;\n\n if (pattern === undefined) {\n return hasUnicodeWord(string) ? unicodeWords(string) : asciiWords(string);\n }\n return string.match(pattern) || [];\n}\n\nmodule.exports = words;\n","import _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\"];\nimport * as React from 'react';\nexport var Context = /*#__PURE__*/React.createContext({});\nexport default function MotionProvider(_ref) {\n var children = _ref.children,\n props = _objectWithoutProperties(_ref, _excluded);\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: props\n }, children);\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';\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 default DomWrapper;","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';\n/**\n * Used for disabled motion case.\n * Prepare stage will still work but start & active will be skipped.\n */\nexport var STEP_PREPARED = 'prepared';","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport canUseDOM from \"rc-util/es/Dom/canUseDom\";\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}\nexport function getVendorPrefixes(domSupport, win) {\n var prefixes = {\n animationend: makePrefixMap('Animation', 'AnimationEnd'),\n transitionend: makePrefixMap('Transition', 'TransitionEnd')\n };\n if (domSupport) {\n if (!('AnimationEvent' in win)) {\n delete prefixes.animationend.animation;\n }\n if (!('TransitionEvent' in win)) {\n delete prefixes.transitionend.transition;\n }\n }\n return prefixes;\n}\nvar vendorPrefixes = getVendorPrefixes(canUseDOM(), typeof window !== 'undefined' ? window : {});\nvar style = {};\nif (canUseDOM()) {\n var _document$createEleme = document.createElement('div');\n style = _document$createEleme.style;\n}\nvar prefixedEventNames = {};\nexport function getVendorPrefixedEventName(eventName) {\n if (prefixedEventNames[eventName]) {\n return prefixedEventNames[eventName];\n }\n var prefixMap = vendorPrefixes[eventName];\n if (prefixMap) {\n var stylePropList = Object.keys(prefixMap);\n var len = stylePropList.length;\n for (var i = 0; i < len; i += 1) {\n var styleProp = stylePropList[i];\n if (Object.prototype.hasOwnProperty.call(prefixMap, styleProp) && styleProp in style) {\n prefixedEventNames[eventName] = prefixMap[styleProp];\n return prefixedEventNames[eventName];\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 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 return \"\".concat(transitionName, \"-\").concat(transitionType);\n}","import * as React from 'react';\nimport { useRef } from 'react';\nimport { animationEndName, transitionEndName } from \"../util/motion\";\nexport default (function (onInternalMotionEnd) {\n var cacheElementRef = useRef();\n\n // Remove events\n function removeMotionEvents(element) {\n if (element) {\n element.removeEventListener(transitionEndName, onInternalMotionEnd);\n element.removeEventListener(animationEndName, onInternalMotionEnd);\n }\n }\n\n // Patch events\n function patchMotionEvents(element) {\n if (cacheElementRef.current && cacheElementRef.current !== element) {\n removeMotionEvents(cacheElementRef.current);\n }\n if (element && element !== cacheElementRef.current) {\n element.addEventListener(transitionEndName, onInternalMotionEnd);\n element.addEventListener(animationEndName, onInternalMotionEnd);\n\n // Save as cache in case dom removed trigger by `motionDeadline`\n cacheElementRef.current = element;\n }\n }\n\n // Clean up when removed\n React.useEffect(function () {\n return function () {\n removeMotionEvents(cacheElementRef.current);\n };\n }, []);\n return [patchMotionEvents, removeMotionEvents];\n});","import canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { useEffect, useLayoutEffect } from 'react';\n\n// It's safe to use `useLayoutEffect` but the warning is annoying\nvar useIsomorphicLayoutEffect = canUseDom() ? useLayoutEffect : useEffect;\nexport default useIsomorphicLayoutEffect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useState from \"rc-util/es/hooks/useState\";\nimport * as React from 'react';\nimport { STEP_ACTIVATED, STEP_ACTIVE, STEP_NONE, STEP_PREPARE, STEP_PREPARED, STEP_START } from \"../interface\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nimport useNextFrame from \"./useNextFrame\";\nvar FULL_STEP_QUEUE = [STEP_PREPARE, STEP_START, STEP_ACTIVE, STEP_ACTIVATED];\nvar SIMPLE_STEP_QUEUE = [STEP_PREPARE, STEP_PREPARED];\n\n/** Skip current step */\nexport var SkipStep = false;\n/** Current step should be update in */\nexport var DoStep = true;\nexport function isActive(step) {\n return step === STEP_ACTIVE || step === STEP_ACTIVATED;\n}\nexport default (function (status, prepareOnly, callback) {\n var _useState = useState(STEP_NONE),\n _useState2 = _slicedToArray(_useState, 2),\n step = _useState2[0],\n setStep = _useState2[1];\n var _useNextFrame = useNextFrame(),\n _useNextFrame2 = _slicedToArray(_useNextFrame, 2),\n nextFrame = _useNextFrame2[0],\n cancelNextFrame = _useNextFrame2[1];\n function startQueue() {\n setStep(STEP_PREPARE, true);\n }\n var STEP_QUEUE = prepareOnly ? SIMPLE_STEP_QUEUE : FULL_STEP_QUEUE;\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 if (result === SkipStep) {\n // Skip when no needed\n setStep(nextStep, true);\n } else if (nextStep) {\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 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 raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nexport default (function () {\n var nextFrameRef = React.useRef(null);\n function cancelNextFrame() {\n raf.cancel(nextFrameRef.current);\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 React.useEffect(function () {\n return function () {\n cancelNextFrame();\n };\n }, []);\n return [nextFrame, cancelNextFrame];\n});","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 { useEvent } from 'rc-util';\nimport useState from \"rc-util/es/hooks/useState\";\nimport useSyncState from \"rc-util/es/hooks/useSyncState\";\nimport * as React from 'react';\nimport { useEffect, useRef } from 'react';\nimport { STATUS_APPEAR, STATUS_ENTER, STATUS_LEAVE, STATUS_NONE, STEP_ACTIVE, STEP_PREPARE, STEP_PREPARED, STEP_START } from \"../interface\";\nimport useDomMotionEvents from \"./useDomMotionEvents\";\nimport useIsomorphicLayoutEffect from \"./useIsomorphicLayoutEffect\";\nimport useStepQueue, { DoStep, isActive, SkipStep } from \"./useStepQueue\";\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 // 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 var _useSyncState = useSyncState(STATUS_NONE),\n _useSyncState2 = _slicedToArray(_useSyncState, 2),\n getStatus = _useSyncState2[0],\n setStatus = _useSyncState2[1];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n style = _useState4[0],\n setStyle = _useState4[1];\n var currentStatus = getStatus();\n var mountedRef = useRef(false);\n var deadlineRef = useRef(null);\n\n // =========================== Dom Node ===========================\n function getDomElement() {\n return getElement();\n }\n\n // ========================== Motion End ==========================\n var activeRef = useRef(false);\n\n /**\n * Clean up status & style\n */\n function updateMotionEndStatus() {\n setStatus(STATUS_NONE);\n setStyle(null, true);\n }\n var onInternalMotionEnd = useEvent(function (event) {\n var status = getStatus();\n // Do nothing since not in any transition status.\n // This may happen when `motionDeadline` trigger.\n if (status === STATUS_NONE) {\n return;\n }\n var element = getDomElement();\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 var currentActive = activeRef.current;\n var canEnd;\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 }\n\n // Only update status when `canEnd` and not destroyed\n if (currentActive && canEnd !== false) {\n updateMotionEndStatus();\n }\n });\n var _useDomMotionEvents = useDomMotionEvents(onInternalMotionEnd),\n _useDomMotionEvents2 = _slicedToArray(_useDomMotionEvents, 1),\n patchMotionEvents = _useDomMotionEvents2[0];\n\n // ============================= Step =============================\n var getEventHandlers = function getEventHandlers(targetStatus) {\n switch (targetStatus) {\n case STATUS_APPEAR:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onAppearPrepare), STEP_START, onAppearStart), STEP_ACTIVE, onAppearActive);\n case STATUS_ENTER:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onEnterPrepare), STEP_START, onEnterStart), STEP_ACTIVE, onEnterActive);\n case STATUS_LEAVE:\n return _defineProperty(_defineProperty(_defineProperty({}, STEP_PREPARE, onLeavePrepare), STEP_START, onLeaveStart), STEP_ACTIVE, onLeaveActive);\n default:\n return {};\n }\n };\n var eventHandlers = React.useMemo(function () {\n return getEventHandlers(currentStatus);\n }, [currentStatus]);\n var _useStepQueue = useStepQueue(currentStatus, !supportMotion, function (newStep) {\n // Only prepare step can be skip\n if (newStep === STEP_PREPARE) {\n var onPrepare = eventHandlers[STEP_PREPARE];\n if (!onPrepare) {\n return SkipStep;\n }\n return onPrepare(getDomElement());\n }\n\n // Rest step is sync update\n if (step in eventHandlers) {\n var _eventHandlers$step;\n setStyle(((_eventHandlers$step = eventHandlers[step]) === null || _eventHandlers$step === void 0 ? void 0 : _eventHandlers$step.call(eventHandlers, getDomElement(), null)) || null);\n }\n if (step === STEP_ACTIVE && currentStatus !== STATUS_NONE) {\n // Patch events when motion needed\n patchMotionEvents(getDomElement());\n if (motionDeadline > 0) {\n clearTimeout(deadlineRef.current);\n deadlineRef.current = setTimeout(function () {\n onInternalMotionEnd({\n deadline: true\n });\n }, motionDeadline);\n }\n }\n if (step === STEP_PREPARED) {\n updateMotionEndStatus();\n }\n return DoStep;\n }),\n _useStepQueue2 = _slicedToArray(_useStepQueue, 2),\n startStep = _useStepQueue2[0],\n step = _useStepQueue2[1];\n var active = isActive(step);\n activeRef.current = active;\n\n // ============================ Status ============================\n // Update with new status\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;\n\n // Appear\n if (!isMounted && visible && motionAppear) {\n nextStatus = STATUS_APPEAR;\n }\n\n // Enter\n if (isMounted && visible && motionEnter) {\n nextStatus = STATUS_ENTER;\n }\n\n // Leave\n if (isMounted && !visible && motionLeave || !isMounted && motionLeaveImmediately && !visible && motionLeave) {\n nextStatus = STATUS_LEAVE;\n }\n var nextEventHandlers = getEventHandlers(nextStatus);\n\n // Update to next status\n if (nextStatus && (supportMotion || nextEventHandlers[STEP_PREPARE])) {\n setStatus(nextStatus);\n startStep();\n } else {\n // Set back in case no motion but prev status has prepare step\n setStatus(STATUS_NONE);\n }\n }, [visible]);\n\n // ============================ Effect ============================\n // Reset when motion changed\n useEffect(function () {\n if (\n // Cancel appear\n currentStatus === STATUS_APPEAR && !motionAppear ||\n // Cancel enter\n currentStatus === STATUS_ENTER && !motionEnter ||\n // Cancel leave\n currentStatus === 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 }, []);\n\n // Trigger `onVisibleChanged`\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 if (asyncVisible !== undefined && currentStatus === STATUS_NONE) {\n // Skip first render is invisible since it's nothing changed\n if (firstMountChangeRef.current || asyncVisible) {\n onVisibleChanged === null || onVisibleChanged === void 0 || onVisibleChanged(asyncVisible);\n }\n firstMountChangeRef.current = true;\n }\n }, [asyncVisible, currentStatus]);\n\n // ============================ Styles ============================\n var mergedStyle = style;\n if (eventHandlers[STEP_PREPARE] && step === STEP_START) {\n mergedStyle = _objectSpread({\n transition: 'none'\n }, mergedStyle);\n }\n return [currentStatus, step, mergedStyle, asyncVisible !== null && asyncVisible !== void 0 ? asyncVisible : visible];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport useEvent from \"./useEvent\";\n/**\n * Same as React.useState but will always get latest state.\n * This is useful when React merge multiple state updates into one.\n * e.g. onTransitionEnd trigger multiple event at once will be merged state update in React.\n */\nexport default function useSyncState(defaultValue) {\n var _React$useReducer = React.useReducer(function (x) {\n return x + 1;\n }, 0),\n _React$useReducer2 = _slicedToArray(_React$useReducer, 2),\n forceUpdate = _React$useReducer2[1];\n var currentValueRef = React.useRef(defaultValue);\n var getValue = useEvent(function () {\n return currentValueRef.current;\n });\n var setValue = useEvent(function (updater) {\n currentValueRef.current = typeof updater === 'function' ? updater(currentValueRef.current) : updater;\n forceUpdate();\n });\n return [getValue, setValue];\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 _typeof from \"@babel/runtime/helpers/esm/typeof\";\n/* eslint-disable react/default-props-match-prop-types, react/no-multi-comp, react/prop-types */\nimport classNames from 'classnames';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { fillRef, supportRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport { Context } from \"./context\";\nimport DomWrapper from \"./DomWrapper\";\nimport useStatus from \"./hooks/useStatus\";\nimport { isActive } from \"./hooks/useStepQueue\";\nimport { STATUS_NONE, STEP_PREPARE, STEP_START } from \"./interface\";\nimport { getTransitionName, supportTransition } from \"./util/motion\";\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 if (_typeof(config) === 'object') {\n transitionSupport = config.transitionSupport;\n }\n function isSupportTransition(props, contextMotion) {\n return !!(props.motionName && transitionSupport && contextMotion !== false);\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 _React$useContext = React.useContext(Context),\n contextMotion = _React$useContext.motion;\n var supportMotion = isSupportTransition(props, contextMotion);\n\n // Ref to the react node, it may be a HTMLElement\n var nodeRef = useRef();\n // Ref to the dom wrapper in case ref can not pass to HTMLElement\n var wrapperNodeRef = useRef();\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 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];\n\n // Record whether content has rendered\n // Will return null for un-rendered even when `removeOnLeave={false}`\n var renderedRef = React.useRef(mergedVisible);\n if (mergedVisible) {\n renderedRef.current = true;\n }\n\n // ====================== Refs ======================\n var setNodeRef = React.useCallback(function (node) {\n nodeRef.current = node;\n fillRef(ref, node);\n }, [ref]);\n\n // ===================== Render =====================\n var motionChildren;\n var mergedProps = _objectSpread(_objectSpread({}, eventProps), {}, {\n visible: visible\n });\n if (!children) {\n // No children\n motionChildren = null;\n } else if (status === STATUS_NONE) {\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 // In motion\n var statusSuffix;\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 var motionCls = getTransitionName(motionName, \"\".concat(status, \"-\").concat(statusSuffix));\n motionChildren = children(_objectSpread(_objectSpread({}, mergedProps), {}, {\n className: classNames(getTransitionName(motionName, status), _defineProperty(_defineProperty({}, motionCls, motionCls && statusSuffix), motionName, typeof motionName === 'string')),\n style: statusStyle\n }), setNodeRef);\n }\n\n // Auto inject ref if child node not have `ref` props\n if ( /*#__PURE__*/React.isValidElement(motionChildren) && supportRef(motionChildren)) {\n var _ref = motionChildren,\n originNodeRef = _ref.ref;\n if (!originNodeRef) {\n motionChildren = /*#__PURE__*/React.cloneElement(motionChildren, {\n ref: setNodeRef\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 _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 if (key && _typeof(key) === 'object' && 'key' in key) {\n keyObj = key;\n } else {\n keyObj = {\n key: key\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);\n\n // Check prev keys to insert or keep\n prevKeyObjects.forEach(function (keyObj) {\n var hit = false;\n for (var i = currentIndex; i < currentLen; i += 1) {\n var currentKeyObj = currentKeyObjects[i];\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 list.push(_objectSpread(_objectSpread({}, currentKeyObj), {}, {\n status: STATUS_KEEP\n }));\n currentIndex += 1;\n hit = true;\n break;\n }\n }\n\n // If not hit, it means key is removed\n if (!hit) {\n list.push(_objectSpread(_objectSpread({}, keyObj), {}, {\n status: STATUS_REMOVE\n }));\n }\n });\n\n // Add rest to the list\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 /**\n * Merge same key when it remove and add again:\n * [1 - add, 2 - keep, 1 - remove] -> [1 - keep, 2 - keep]\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 });\n\n // Update `STATUS_ADD` to `STATUS_KEEP`\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/* eslint react/prop-types: 0 */\nimport * as React from 'react';\nimport OriginCSSMotion from \"./CSSMotion\";\nimport { diffKeys, parseKeys, STATUS_ADD, STATUS_KEEP, STATUS_REMOVE, STATUS_REMOVED } from \"./util/diff\";\nimport { supportTransition } from \"./util/motion\";\nvar MOTION_PROP_NAMES = ['eventProps', 'visible', 'children', 'motionName', 'motionAppear', 'motionEnter', 'motionLeave', 'motionLeaveImmediately', 'motionDeadline', 'removeOnLeave', 'leavedClassName', 'onAppearPrepare', 'onAppearStart', 'onAppearActive', 'onAppearEnd', 'onEnterStart', 'onEnterActive', 'onEnterEnd', 'onLeaveStart', 'onLeaveActive', 'onLeaveEnd'];\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 var CSSMotionList = /*#__PURE__*/function (_React$Component) {\n _inherits(CSSMotionList, _React$Component);\n var _super = _createSuper(CSSMotionList);\n function CSSMotionList() {\n var _this;\n _classCallCheck(this, CSSMotionList);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n keyEntities: []\n });\n // ZombieJ: Return the count of rest keys. It's safe to refactor if need more info.\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 _this.setState({\n keyEntities: nextKeyEntities\n });\n return nextKeyEntities.filter(function (_ref) {\n var status = _ref.status;\n return status !== STATUS_REMOVED;\n }).length;\n });\n return _this;\n }\n _createClass(CSSMotionList, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n var keyEntities = this.state.keyEntities;\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 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, index) {\n var status = _ref2.status,\n eventProps = _objectWithoutProperties(_ref2, _excluded2);\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 || _onVisibleChanged(changedVisible, {\n key: eventProps.key\n });\n if (!changedVisible) {\n var restKeysCount = _this2.removeKey(eventProps.key);\n if (restKeysCount === 0 && onAllRemoved) {\n onAllRemoved();\n }\n }\n }\n }), function (props, ref) {\n return children(_objectSpread(_objectSpread({}, props), {}, {\n index: index\n }), ref);\n });\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 });\n\n // Remove if already mark as removed\n if (prevEntity && prevEntity.status === STATUS_REMOVED && entity.status === STATUS_REMOVE) {\n return false;\n }\n return true;\n })\n };\n }\n }]);\n return CSSMotionList;\n }(React.Component);\n _defineProperty(CSSMotionList, \"defaultProps\", {\n component: 'div'\n });\n return CSSMotionList;\n}\nexport default genCSSMotionList(supportTransition);","import CSSMotion from \"./CSSMotion\";\nimport CSSMotionList from \"./CSSMotionList\";\nexport { default as Provider } from \"./context\";\nexport { CSSMotionList };\nexport default CSSMotion;","'use strict';\n\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp('(' + token + ')|([^%]+?)', 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\nfunction decodeComponents(components, split) {\n try {\n // Try to decode the entire string first\n return [decodeURIComponent(components.join(''))];\n } catch (err) {\n // Do nothing\n }\n if (components.length === 1) {\n return components;\n }\n split = split || 1;\n\n // Split the array in 2 parts\n var left = components.slice(0, split);\n var right = components.slice(split);\n return Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\nfunction decode(input) {\n try {\n return decodeURIComponent(input);\n } catch (err) {\n var tokens = input.match(singleMatcher) || [];\n for (var i = 1; i < tokens.length; i++) {\n input = decodeComponents(tokens, i).join('');\n tokens = input.match(singleMatcher) || [];\n }\n return input;\n }\n}\nfunction customDecodeURIComponent(input) {\n // Keep track of all the replacements and prefill the map with the `BOM`\n var replaceMap = {\n '%FE%FF': '\\uFFFD\\uFFFD',\n '%FF%FE': '\\uFFFD\\uFFFD'\n };\n var match = multiMatcher.exec(input);\n while (match) {\n try {\n // Decode as big chunks as possible\n replaceMap[match[0]] = decodeURIComponent(match[0]);\n } catch (err) {\n var result = decode(match[0]);\n if (result !== match[0]) {\n replaceMap[match[0]] = result;\n }\n }\n match = multiMatcher.exec(input);\n }\n\n // Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n replaceMap['%C2'] = '\\uFFFD';\n var entries = Object.keys(replaceMap);\n for (var i = 0; i < entries.length; i++) {\n // Replace all decoded components\n var key = entries[i];\n input = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n }\n return input;\n}\nmodule.exports = function (encodedURI) {\n if (typeof encodedURI !== 'string') {\n throw new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n }\n try {\n encodedURI = encodedURI.replace(/\\+/g, ' ');\n\n // Try the built in decoder first\n return decodeURIComponent(encodedURI);\n } catch (err) {\n // Fallback to a more advanced decoder\n return customDecodeURIComponent(encodedURI);\n }\n};","'use strict';\n\nmodule.exports = (string, separator) => {\n if (!(typeof string === 'string' && typeof separator === 'string')) {\n throw new TypeError('Expected the arguments to be of type `string`');\n }\n if (separator === '') {\n return [string];\n }\n const separatorIndex = string.indexOf(separator);\n if (separatorIndex === -1) {\n return [string];\n }\n return [string.slice(0, separatorIndex), string.slice(separatorIndex + separator.length)];\n};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"bigSpinner\":\"loader-module--bigSpinner--1snBs\",\"spinnerAnimation\":\"loader-module--spinner-animation--3aVDM\"};","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsDingbatRange = '\\\\u2700-\\\\u27bf',\n rsLowerRange = 'a-z\\\\xdf-\\\\xf6\\\\xf8-\\\\xff',\n rsMathOpRange = '\\\\xac\\\\xb1\\\\xd7\\\\xf7',\n rsNonCharRange = '\\\\x00-\\\\x2f\\\\x3a-\\\\x40\\\\x5b-\\\\x60\\\\x7b-\\\\xbf',\n rsPunctuationRange = '\\\\u2000-\\\\u206f',\n rsSpaceRange = ' \\\\t\\\\x0b\\\\f\\\\xa0\\\\ufeff\\\\n\\\\r\\\\u2028\\\\u2029\\\\u1680\\\\u180e\\\\u2000\\\\u2001\\\\u2002\\\\u2003\\\\u2004\\\\u2005\\\\u2006\\\\u2007\\\\u2008\\\\u2009\\\\u200a\\\\u202f\\\\u205f\\\\u3000',\n rsUpperRange = 'A-Z\\\\xc0-\\\\xd6\\\\xd8-\\\\xde',\n rsVarRange = '\\\\ufe0e\\\\ufe0f',\n rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\",\n rsBreak = '[' + rsBreakRange + ']',\n rsCombo = '[' + rsComboRange + ']',\n rsDigits = '\\\\d+',\n rsDingbat = '[' + rsDingbatRange + ']',\n rsLower = '[' + rsLowerRange + ']',\n rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',\n rsFitz = '\\\\ud83c[\\\\udffb-\\\\udfff]',\n rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',\n rsNonAstral = '[^' + rsAstralRange + ']',\n rsRegional = '(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}',\n rsSurrPair = '[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]',\n rsUpper = '[' + rsUpperRange + ']',\n rsZWJ = '\\\\u200d';\n\n/** Used to compose unicode regexes. */\nvar rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',\n rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',\n rsOptContrLower = '(?:' + rsApos + '(?:d|ll|m|re|s|t|ve))?',\n rsOptContrUpper = '(?:' + rsApos + '(?:D|LL|M|RE|S|T|VE))?',\n reOptMod = rsModifier + '?',\n rsOptVar = '[' + rsVarRange + ']?',\n rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',\n rsOrdLower = '\\\\d*(?:1st|2nd|3rd|(?![123])\\\\dth)(?=\\\\b|[A-Z_])',\n rsOrdUpper = '\\\\d*(?:1ST|2ND|3RD|(?![123])\\\\dTH)(?=\\\\b|[a-z_])',\n rsSeq = rsOptVar + reOptMod + rsOptJoin,\n rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;\n\n/** Used to match complex or compound words. */\nvar reUnicodeWord = RegExp([\n rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',\n rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',\n rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,\n rsUpper + '+' + rsOptContrUpper,\n rsOrdUpper,\n rsOrdLower,\n rsDigits,\n rsEmoji\n].join('|'), 'g');\n\n/**\n * Splits a Unicode `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction unicodeWords(string) {\n return string.match(reUnicodeWord) || [];\n}\n\nmodule.exports = unicodeWords;\n","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMCAyMSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGNpcmNsZSBjeD0iMTAiIGN5PSIxMC44MTMxIiByPSIxMCIgZmlsbD0id2hpdGUiIGZpbGwtb3BhY2l0eT0iMC4yIi8+CjxwYXRoIG9wYWNpdHk9IjAuNyIgZD0iTTkuNjQ2NDUgMTUuMTY2N0M5Ljg0MTcxIDE1LjM2MTkgMTAuMTU4MyAxNS4zNjE5IDEwLjM1MzYgMTUuMTY2N0wxMy41MzU1IDExLjk4NDdDMTMuNzMwOCAxMS43ODk0IDEzLjczMDggMTEuNDcyOCAxMy41MzU1IDExLjI3NzZDMTMuMzQwMyAxMS4wODIzIDEzLjAyMzcgMTEuMDgyMyAxMi44Mjg0IDExLjI3NzZMMTAgMTQuMTA2TDcuMTcxNTcgMTEuMjc3NkM2Ljk3NjMxIDExLjA4MjMgNi42NTk3MyAxMS4wODIzIDYuNDY0NDcgMTEuMjc3NkM2LjI2OTIgMTEuNDcyOCA2LjI2OTIgMTEuNzg5NCA2LjQ2NDQ3IDExLjk4NDdMOS42NDY0NSAxNS4xNjY3Wk05LjUgNS44MTMxMUw5LjUgMTQuODEzMUwxMC41IDE0LjgxMzFMMTAuNSA1LjgxMzExTDkuNSA1LjgxMzExWiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==\"","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainMobileContainer\":\"tourMobile-module--mainMobileContainer--1KkbG\",\"picturesContainer\":\"tourMobile-module--picturesContainer--3MeJb\",\"selectedPictureBackground\":\"tourMobile-module--selectedPictureBackground--3E2Ag\",\"photosContainer\":\"tourMobile-module--photosContainer--2g5wI\",\"pictureThumbnail\":\"tourMobile-module--pictureThumbnail--1B_4w\",\"secondContainer\":\"tourMobile-module--secondContainer--lcfma\",\"tourDeToures\":\"tourMobile-module--tourDeToures--2JBeT\",\"tourCompleto\":\"tourMobile-module--tourCompleto--3y2nx\",\"description\":\"tourMobile-module--description--3pSMm\",\"description2\":\"tourMobile-module--description2--2ufgX\",\"buttonContainer\":\"tourMobile-module--buttonContainer--1wDlf\",\"button\":\"tourMobile-module--button--1U9Q8\",\"buttonReservarContainer\":\"tourMobile-module--buttonReservarContainer--1ZF80\",\"buttonReserva\":\"tourMobile-module--buttonReserva--2D7yP\",\"infoContainer\":\"tourMobile-module--infoContainer--3LqIH\",\"hoursContainer\":\"tourMobile-module--hoursContainer--3Yjab\",\"peopleContainer\":\"tourMobile-module--peopleContainer--2adJE\",\"priceContainer\":\"tourMobile-module--priceContainer--wmJ3i\",\"hours\":\"tourMobile-module--hours--3lIUw\",\"people\":\"tourMobile-module--people--3_A2g\",\"money\":\"tourMobile-module--money--A8aLv\",\"duration\":\"tourMobile-module--duration--1sT3o\",\"capacity\":\"tourMobile-module--capacity--3cx5E\",\"price\":\"tourMobile-module--price--15gcE\"};","import React from \"react\"\nimport { Link } from \"gatsby\"\nimport styles from \"../styles/sideMenu.module.css\"\nimport FlechaSelected from \"../images/logos/flechaSelected.svg\"\nimport logoQ from \"../images/logos/quilmesLogo.svg\"\nimport logoIg from \"../images/logos/logoIg.svg\"\nimport logoFb from \"../images/logos/logoFb.svg\"\nimport logoTw from \"../images/logos/logoTw.svg\"\nimport logoYou from \"../images/logos/logoYou.svg\"\nimport { AiOutlineClose } from \"react-icons/ai\"\nimport logo360 from \"../images/logos/360.svg\"\n\nconst menuData = [\n {\n title: \"INICIO\",\n path: \"\",\n icon: \"\",\n },\n {\n title: \"NUESTRA HISTORIA\",\n path: \"history\",\n icon: \"\",\n },\n {\n title: \"NUESTRAS VARIEDADES\",\n path: \"#varieties\",\n icon: \"\",\n },\n\n {\n title: \"NUESTROS LUGARES\",\n path: \"places\",\n icon: \"\",\n },\n // {\n // title: \"LA CERVECERÍA\",\n // path: \"#\",\n // icon: \"\",\n // },\n {\n title: \"MERCHANDISING\",\n path: \"#\",\n icon: \"\",\n link: \"https://www.tada.com.ar/catalogo/grupo/quilmes\",\n },\n {\n title: \"BALÓN DE POTRERO\",\n path: \"balondepotrero\",\n icon: \"\",\n // link: \"https://elclubdelhincha.com.ar\"\n },\n {\n title: \"LA CASA DE QUILMES\",\n path: \"lacasadequilmes\",\n icon: \"\",\n },\n\n]\n\n\nfunction SideMenu({ setActiveMenu, activeMenu }) {\n // console.log(\"activeMenu\", activeMenu)\n\n return (\n
\n
\n \"logo\n setActiveMenu(!activeMenu)}\n className={styles.close}\n >\n
\n
\n {menuData.map(item => {\n return item.link ? (\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Menu\",\n event_action: \"Click\",\n event_label: `${item.link}`,\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n \n {item.icon !== \"\" ? (\n \n ) : null}\n {item.title}\n \n ) : (\n {\n setActiveMenu(!activeMenu)\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Menu\",\n event_action: \"Click\",\n event_label: `${window.location.origin + \"/\" + item.path}`,\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n \n {item.icon !== \"\" ? (\n \n ) : null}\n {item.title}\n \n )\n })}\n
\n
\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.facebook.com/quilmescerveza/?ref=bookmarks`,\n interaction: true,\n component_name: \"boton_facebook\",\n element_text: \"Facebook\",\n })\n }}\n >\n \"logo\n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://twitter.com/Quilmes_Cerveza`,\n interaction: true,\n component_name: \"boton_twitter\",\n element_text: \"Twitter\",\n })\n }}\n >\n \"logo\n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.instagram.com/cervezaquilmes/?hl=es-la`,\n interaction: true,\n component_name: \"boton_instagram\",\n element_text: \"Instagram\",\n })\n }}\n >\n \"logo\n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.youtube.com/user/Quilmes120Argentina`,\n interaction: true,\n component_name: \"boton_youtube\",\n element_text: \"Youtube\",\n })\n }}\n >\n \"logo\n \n
\n
\n )\n}\n\nexport default SideMenu\n","var asciiToArray = require('./_asciiToArray'),\n hasUnicode = require('./_hasUnicode'),\n unicodeToArray = require('./_unicodeToArray');\n\n/**\n * Converts `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction stringToArray(string) {\n return hasUnicode(string)\n ? unicodeToArray(string)\n : asciiToArray(string);\n}\n\nmodule.exports = stringToArray;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"reservaStep1-module--mainContainer--1Iz9E\",\"headerContainer\":\"reservaStep1-module--headerContainer--1tOfh\",\"reservaContainer\":\"reservaStep1-module--reservaContainer--2BTV_\",\"titleContainer\":\"reservaStep1-module--titleContainer--1IRXJ\",\"title\":\"reservaStep1-module--title--3eFbq\",\"stepsContainer\":\"reservaStep1-module--stepsContainer--2g5iy\",\"step\":\"reservaStep1-module--step--1_pgk\",\"step2\":\"reservaStep1-module--step2--2Lvlh\",\"stepNumb\":\"reservaStep1-module--stepNumb--Bje_c\",\"stepText\":\"reservaStep1-module--stepText--207_Q\",\"stepText2\":\"reservaStep1-module--stepText2--3kvhB\",\"blueBar\":\"reservaStep1-module--blueBar--3kbpK\",\"greyBar1\":\"reservaStep1-module--greyBar1--DDOgP\",\"greyBar\":\"reservaStep1-module--greyBar--1CCh7\",\"selectsContainer\":\"reservaStep1-module--selectsContainer--aTR5z\",\"selectTitleContainer\":\"reservaStep1-module--selectTitleContainer--XwIH3\",\"selectTitle\":\"reservaStep1-module--selectTitle--1lFW2\",\"select\":\"reservaStep1-module--select--1iAKI\",\"personasSelect\":\"reservaStep1-module--personasSelect--3jODE\",\"pText\":\"reservaStep1-module--pText--siS6t\",\"price\":\"reservaStep1-module--price--3Pn-O\",\"cleanContainer\":\"reservaStep1-module--cleanContainer--36R1y\",\"cleanText\":\"reservaStep1-module--cleanText--1mZEe\",\"horarioContainer\":\"reservaStep1-module--horarioContainer--2FYkO\",\"horarioTitleContainer\":\"reservaStep1-module--horarioTitleContainer--3jfpI\",\"selectHourContainer\":\"reservaStep1-module--selectHourContainer--cMkx5\",\"cardPicker\":\"reservaStep1-module--cardPicker--iLIjK\",\"cardPickerChecked\":\"reservaStep1-module--cardPickerChecked--3iw1L\",\"cardinfo1\":\"reservaStep1-module--cardinfo1--3ky-q\",\"cardinfo2\":\"reservaStep1-module--cardinfo2--2ZKCi\",\"cardinfo3\":\"reservaStep1-module--cardinfo3--3cbwU\",\"cardinfo4\":\"reservaStep1-module--cardinfo4--2B39L\",\"cardinfo5\":\"reservaStep1-module--cardinfo5--wOnwi\",\"tourName\":\"reservaStep1-module--tourName--2w666\",\"subTitle\":\"reservaStep1-module--subTitle--wGMqn\",\"cardTitle\":\"reservaStep1-module--cardTitle--3AQ5i\",\"buttonContainer\":\"reservaStep1-module--buttonContainer--35JSh\",\"buttonReserva\":\"reservaStep1-module--buttonReserva--dlr9c\",\"buttonReservaDeshabilitado\":\"reservaStep1-module--buttonReservaDeshabilitado--tq5Zw\",\"buttonText\":\"reservaStep1-module--buttonText--1UYQl\",\"checkContainer\":\"reservaStep1-module--checkContainer--1luzP\",\"checkmark\":\"reservaStep1-module--checkmark--iuUn2\",\"none\":\"reservaStep1-module--none--1veWM\",\"buttonReservaVolver\":\"reservaStep1-module--buttonReservaVolver--3CxHn\",\"verDispContainer\":\"reservaStep1-module--verDispContainer--3tjjI\",\"tourDisponibilidadContainer\":\"reservaStep1-module--tourDisponibilidadContainer--2WZ4M\",\"tourNameContainer\":\"reservaStep1-module--tourNameContainer--3XSIB\",\"tourTitleContainer\":\"reservaStep1-module--tourTitleContainer--QG_yo\",\"dispTitle\":\"reservaStep1-module--dispTitle--JbOy1\",\"hourTitle\":\"reservaStep1-module--hourTitle--Bu_n-\",\"tourTitle\":\"reservaStep1-module--tourTitle--2kbDa\",\"nameContainer\":\"reservaStep1-module--nameContainer--FMN8Z\",\"nameTitle\":\"reservaStep1-module--nameTitle--I39m7\",\"placesTitle\":\"reservaStep1-module--placesTitle--FvKAB\",\"hoursTitle\":\"reservaStep1-module--hoursTitle--27DUW\",\"disponibilidadPlacesContainer\":\"reservaStep1-module--disponibilidadPlacesContainer--ZJ4rK\",\"fechaHorariosContainer\":\"reservaStep1-module--fechaHorariosContainer--13qWb\"};","//\n\nmodule.exports = function shallowEqual(objA, objB, compare, compareContext) {\n var ret = compare ? compare.call(compareContext, objA, objB) : void 0;\n if (ret !== void 0) {\n return !!ret;\n }\n if (objA === objB) {\n return true;\n }\n if (typeof objA !== \"object\" || !objA || typeof objB !== \"object\" || !objB) {\n return false;\n }\n var keysA = Object.keys(objA);\n var keysB = Object.keys(objB);\n if (keysA.length !== keysB.length) {\n return false;\n }\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(objB);\n\n // Test for A's keys different from B.\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n if (!bHasOwnProperty(key)) {\n return false;\n }\n var valueA = objA[key];\n var valueB = objB[key];\n ret = compare ? compare.call(compareContext, valueA, valueB, key) : void 0;\n if (ret === false || ret === void 0 && valueA !== valueB) {\n return false;\n }\n }\n return true;\n};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"picturesContainer\":\"tourCompleto-module--picturesContainer--3l3JW\",\"mainTitle\":\"tourCompleto-module--mainTitle--1z2Oa\",\"carrouselContainer\":\"tourCompleto-module--carrouselContainer--3gYgi\",\"tourContainer\":\"tourCompleto-module--tourContainer--DqF01\",\"firstTour\":\"tourCompleto-module--firstTour--2tA5i\",\"imgContainer\":\"tourCompleto-module--imgContainer--z4k-F\",\"singleImageContainer\":\"tourCompleto-module--singleImageContainer--3VcJU\",\"imgDesk\":\"tourCompleto-module--imgDesk--1rlIO\",\"orangeBar\":\"tourCompleto-module--orangeBar--3kN6N\",\"invitationContainer\":\"tourCompleto-module--invitationContainer--3rEfI\",\"invitation\":\"tourCompleto-module--invitation--2FrRh\",\"invitationTitle\":\"tourCompleto-module--invitationTitle--2XLvj\",\"invitationSubTitle\":\"tourCompleto-module--invitationSubTitle--9i_EI\",\"blueBar\":\"tourCompleto-module--blueBar--2WXhs\",\"loveBeer\":\"tourCompleto-module--loveBeer--21MqF\",\"tourDescription\":\"tourCompleto-module--tourDescription--XA4zH\",\"tourDescriptionLastLine\":\"tourCompleto-module--tourDescriptionLastLine--FCQTr\",\"cuandoVenisSelectContainer\":\"tourCompleto-module--cuandoVenisSelectContainer--3SiI5\",\"personasSelect\":\"tourCompleto-module--personasSelect--30tri\",\"reserva\":\"tourCompleto-module--reserva--28Go6\",\"reservaDeshabilitada\":\"tourCompleto-module--reservaDeshabilitada--2SE34\",\"botonReserva\":\"tourCompleto-module--botonReserva--2brc5\",\"personasText\":\"tourCompleto-module--personasText--1JJvL\",\"infoContainer\":\"tourCompleto-module--infoContainer--23ZTA\",\"hoursContainer\":\"tourCompleto-module--hoursContainer--1TWRk\",\"peopleContainer\":\"tourCompleto-module--peopleContainer--3obZo\",\"priceContainer\":\"tourCompleto-module--priceContainer--1V57J\",\"hours\":\"tourCompleto-module--hours--2S7-T\",\"people\":\"tourCompleto-module--people--1LGz_\",\"money\":\"tourCompleto-module--money--2aqYo\",\"duration\":\"tourCompleto-module--duration--q5NfS\",\"capacity\":\"tourCompleto-module--capacity--3PykJ\",\"price\":\"tourCompleto-module--price--1N9jz\",\"test\":\"tourCompleto-module--test--2vzrX\",\"mainContainer\":\"tourCompleto-module--mainContainer--13XRL\",\"photosContainer\":\"tourCompleto-module--photosContainer--3MPGM\",\"textContainer\":\"tourCompleto-module--textContainer--3yX1V\",\"secondContainer\":\"tourCompleto-module--secondContainer--ymC2Q\",\"tourDeToures\":\"tourCompleto-module--tourDeToures--2qXVP\",\"tourCompleto\":\"tourCompleto-module--tourCompleto--3NRGO\",\"description\":\"tourCompleto-module--description--3iaYn\",\"description2\":\"tourCompleto-module--description2--3xlJd\",\"buttonContainer\":\"tourCompleto-module--buttonContainer--1M8cH\",\"button\":\"tourCompleto-module--button--3Qrz7\",\"buttonReservarContainer\":\"tourCompleto-module--buttonReservarContainer--3Qu0g\",\"buttonReserva\":\"tourCompleto-module--buttonReserva--9jHE9\"};","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzAiIGhlaWdodD0iMzAiIHZpZXdCb3g9IjAgMCAzMCAzMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgZmlsdGVyPSJ1cmwoI2ZpbHRlcjBfYmQpIj4KPHJlY3Qgd2lkdGg9IjI0LjM4NTgiIGhlaWdodD0iMjQuMzg1OCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMjcuMjkzNSAyNy4yMDQ4KSByb3RhdGUoMTgwKSIgZmlsbD0id2hpdGUiIGZpbGwtb3BhY2l0eT0iMC40Ii8+CjxyZWN0IHdpZHRoPSIyNC4zODU4IiBoZWlnaHQ9IjI0LjM4NTgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDI3LjI5MzUgMjcuMjA0OCkgcm90YXRlKDE4MCkiIGZpbGw9IndoaXRlIi8+CjxwYXRoIGQ9Ik0xNi45MDY3IDE5LjQ3NDhMMTEuODkyOSAxNS41MjgxQzExLjU4NDYgMTUuMjg1NSAxMS41ODI1IDE0LjgxOSAxMS44ODg2IDE0LjU3MzVMMTYuOTA2NyAxMC41NDg5IiBzdHJva2U9IiMwRjkxRDciIHN0cm9rZS13aWR0aD0iMC42MDk2NDYiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L2c+CjxkZWZzPgo8ZmlsdGVyIGlkPSJmaWx0ZXIwX2JkIiB4PSIwLjQ2OTExMiIgeT0iMC4zODAzODYiIHdpZHRoPSIyOS4yNjMiIGhlaWdodD0iMjkuMjYzIiBmaWx0ZXJVbml0cz0idXNlclNwYWNlT25Vc2UiIGNvbG9yLWludGVycG9sYXRpb24tZmlsdGVycz0ic1JHQiI+CjxmZUZsb29kIGZsb29kLW9wYWNpdHk9IjAiIHJlc3VsdD0iQmFja2dyb3VuZEltYWdlRml4Ii8+CjxmZUdhdXNzaWFuQmx1ciBpbj0iQmFja2dyb3VuZEltYWdlIiBzdGREZXZpYXRpb249IjEuMjE5MjkiLz4KPGZlQ29tcG9zaXRlIGluMj0iU291cmNlQWxwaGEiIG9wZXJhdG9yPSJpbiIgcmVzdWx0PSJlZmZlY3QxX2JhY2tncm91bmRCbHVyIi8+CjxmZUNvbG9yTWF0cml4IGluPSJTb3VyY2VBbHBoYSIgdHlwZT0ibWF0cml4IiB2YWx1ZXM9IjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDEyNyAwIiByZXN1bHQ9ImhhcmRBbHBoYSIvPgo8ZmVPZmZzZXQvPgo8ZmVHYXVzc2lhbkJsdXIgc3RkRGV2aWF0aW9uPSIxLjIxOTI5Ii8+CjxmZUNvbG9yTWF0cml4IHR5cGU9Im1hdHJpeCIgdmFsdWVzPSIwIDAgMCAwIDEgMCAwIDAgMCAxIDAgMCAwIDAgMSAwIDAgMCAwLjI1IDAiLz4KPGZlQmxlbmQgbW9kZT0ibm9ybWFsIiBpbjI9ImVmZmVjdDFfYmFja2dyb3VuZEJsdXIiIHJlc3VsdD0iZWZmZWN0Ml9kcm9wU2hhZG93Ii8+CjxmZUJsZW5kIG1vZGU9Im5vcm1hbCIgaW49IlNvdXJjZUdyYXBoaWMiIGluMj0iZWZmZWN0Ml9kcm9wU2hhZG93IiByZXN1bHQ9InNoYXBlIi8+CjwvZmlsdGVyPgo8L2RlZnM+Cjwvc3ZnPgo=\"","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * The base implementation of `_.slice` without an iteratee call guard.\n *\n * @private\n * @param {Array} array The array to slice.\n * @param {number} [start=0] The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the slice of `array`.\n */\nfunction baseSlice(array, start, end) {\n var index = -1,\n length = array.length;\n\n if (start < 0) {\n start = -start > length ? 0 : (length + start);\n }\n end = end > length ? length : end;\n if (end < 0) {\n end += length;\n }\n length = start > end ? 0 : ((end - start) >>> 0);\n start >>>= 0;\n\n var result = Array(length);\n while (++index < length) {\n result[index] = array[index + start];\n }\n return result;\n}\n\nmodule.exports = baseSlice;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"preguntasFrecuentes-module--mainContainer--2I_qD\",\"titleContainer\":\"preguntasFrecuentes-module--titleContainer--3xRBY\",\"title\":\"preguntasFrecuentes-module--title--1SSYV\",\"blueBar\":\"preguntasFrecuentes-module--blueBar--17ES1\",\"collapseContainer\":\"preguntasFrecuentes-module--collapseContainer--1ugBa\",\"answerItalics\":\"preguntasFrecuentes-module--answerItalics--3GtfX\",\"answerLink\":\"preguntasFrecuentes-module--answerLink--3ZyMl\",\"verTodasContainer\":\"preguntasFrecuentes-module--verTodasContainer--30zQi\",\"verTodasText\":\"preguntasFrecuentes-module--verTodasText--398u5\",\"none\":\"preguntasFrecuentes-module--none--3kUFm\"};","module.exports = __webpack_public_path__ + \"static/1022_Teaser_Full_Online-2db8d4c8e9898db4279fe93a13489c53.mp4\";","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"compartiExp-module--mainContainer--35xba\",\"titleContainer\":\"compartiExp-module--titleContainer--3rerW\",\"title\":\"compartiExp-module--title--SVu8O\",\"titleContainer2\":\"compartiExp-module--titleContainer2--3U--v\",\"title2\":\"compartiExp-module--title2--XgTmC\",\"imgContainer\":\"compartiExp-module--imgContainer--2MMn5\",\"img\":\"compartiExp-module--img--15ieW\"};","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAYAAAA7MK6iAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAJLSURBVHgBxVcxaxRBFP5mZvdO78RE0DaCoGCjjcTK2KikUlALQW1sDKSxEcEfYCFiI5GktrAQmxhQsbOLxMZC0E7BIhpCDjTcebdvnJnbvczuTczMwm0+mJ25mXn37ey87808oAApJXO17d+6Lo4V+13jNuxJ3CpsJxtt9p9x6WiTKomuGWMysibUJu8+PdeMG4LH1P9zPU1EELqZ9CBUW9cDiLRO0nay1ScQpUM9EEnZ7vaSU8eOfHxy6/yq7s6IxdVHz49+/rG+CKxjZJD8knq+VV+YeNrFxvc1BUaMxp665jCcGTEEZwzVQOaIE7UPGDEkGd9hOeIqVsw4DRZX6YptZMSyihUrX2ZFYtbtIhhjjTruX5kydSgGnzqOEYSJg2NYmLmIpZWvaG12vGyov8dmSyOUwJnjh3Hj7EnMzL/Cxmbb2y6NZqwU8ez0aUwc2o/b84sIRSqnnI69HGt2etLY3Xv2DmVAlpyyFXtKiZVypAy879X5AOKDuTfL+PR9FQ9vXjDOFQrifDiA+GJp5Yt6gQ/Go0PJOdGQjhGi42+/NnDt8Qvj2denTnjbMUtOpXXcUjJ68PI9xpt7vfddWnsc6FzDmHu9jEDk5UQJr+o8zns1F7Qrp1MlINd5XA22IvTgPK7iIkDkkNNaq9PDiPGn09Yc5kKfZRL6Ber6bt2s10QtErzobDq+xOahLC0F6Hk6+CiLXJ+eY8ZS499/k+4BJtYW7lz+achTYjuF2UlWdlqy3TgccygtUq8YPtgukXMlda6kzZXk/QNIDv3mjbFqUQAAAABJRU5ErkJggg==\"","// extracted by mini-css-extract-plugin\nmodule.exports = {\"footer_container\":\"footer-module--footer_container--baCtE\",\"logoQ\":\"footer-module--logoQ--2h5xJ\",\"footer_menu\":\"footer-module--footer_menu--2BZ2r\",\"footerOptions\":\"footer-module--footer-options--1uFea\",\"socialContainer\":\"footer-module--social-container--18cYf\",\"social\":\"footer-module--social--QNE_v\",\"pHidden\":\"footer-module--p-hidden--2_KHV\",\"facebook\":\"footer-module--facebook--2K2jW\"};","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTUiIHZpZXdCb3g9IjAgMCAxNiAxNSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggb3BhY2l0eT0iMC40NSIgZD0iTTMuMjQyMTkgMTQuNTE1NkgxMy4zNjcyQzE0LjkyOTcgMTQuNTE1NiAxNS43MTg4IDEzLjcyNjYgMTUuNzE4OCAxMi4xNzk3VjMuMTY0MDZDMTUuNzE4OCAxLjYyNSAxNC45Mjk3IDAuODM1OTM4IDEzLjM2NzIgMC44MzU5MzhIMy4yNDIxOUMxLjY3OTY5IDAuODM1OTM4IDAuODgyODEyIDEuNjE3MTkgMC44ODI4MTIgMy4xNjQwNlYxMi4xNzk3QzAuODgyODEyIDEzLjcyNjYgMS42Nzk2OSAxNC41MTU2IDMuMjQyMTkgMTQuNTE1NlpNMy4xNzE4OCAxMy4yMjY2QzIuNTIzNDQgMTMuMjI2NiAyLjE3MTg4IDEyLjg5MDYgMi4xNzE4OCAxMi4yMTA5VjUuMzA0NjlDMi4xNzE4OCA0LjYzMjgxIDIuNTIzNDQgNC4yODkwNiAzLjE3MTg4IDQuMjg5MDZIMTMuNDI5N0MxNC4wNzAzIDQuMjg5MDYgMTQuNDM3NSA0LjYzMjgxIDE0LjQzNzUgNS4zMDQ2OVYxMi4yMTA5QzE0LjQzNzUgMTIuODkwNiAxNC4wNzAzIDEzLjIyNjYgMTMuNDI5NyAxMy4yMjY2SDMuMTcxODhaTTYuODY3MTkgNi45MTQwNkg3LjI5Njg4QzcuNTYyNSA2LjkxNDA2IDcuNjQ4NDQgNi44MzU5NCA3LjY0ODQ0IDYuNTcwMzFWNi4xNDA2MkM3LjY0ODQ0IDUuODgyODEgNy41NjI1IDUuNzk2ODggNy4yOTY4OCA1Ljc5Njg4SDYuODY3MTlDNi42MDE1NiA1Ljc5Njg4IDYuNTE1NjIgNS44ODI4MSA2LjUxNTYyIDYuMTQwNjJWNi41NzAzMUM2LjUxNTYyIDYuODM1OTQgNi42MDE1NiA2LjkxNDA2IDYuODY3MTkgNi45MTQwNlpNOS4zMDQ2OSA2LjkxNDA2SDkuNzQyMTlDMTAgNi45MTQwNiAxMC4wODU5IDYuODM1OTQgMTAuMDg1OSA2LjU3MDMxVjYuMTQwNjJDMTAuMDg1OSA1Ljg4MjgxIDEwIDUuNzk2ODggOS43NDIxOSA1Ljc5Njg4SDkuMzA0NjlDOS4wNDY4OCA1Ljc5Njg4IDguOTYwOTQgNS44ODI4MSA4Ljk2MDk0IDYuMTQwNjJWNi41NzAzMUM4Ljk2MDk0IDYuODM1OTQgOS4wNDY4OCA2LjkxNDA2IDkuMzA0NjkgNi45MTQwNlpNMTEuNzUgNi45MTQwNkgxMi4xNzk3QzEyLjQ0NTMgNi45MTQwNiAxMi41MzEyIDYuODM1OTQgMTIuNTMxMiA2LjU3MDMxVjYuMTQwNjJDMTIuNTMxMiA1Ljg4MjgxIDEyLjQ0NTMgNS43OTY4OCAxMi4xNzk3IDUuNzk2ODhIMTEuNzVDMTEuNDg0NCA1Ljc5Njg4IDExLjM5ODQgNS44ODI4MSAxMS4zOTg0IDYuMTQwNjJWNi41NzAzMUMxMS4zOTg0IDYuODM1OTQgMTEuNDg0NCA2LjkxNDA2IDExLjc1IDYuOTE0MDZaTTQuNDIxODggOS4zMTI1SDQuODU5MzhDNS4xMTcxOSA5LjMxMjUgNS4yMDMxMiA5LjIzNDM4IDUuMjAzMTIgOC45NzY1NlY4LjUzOTA2QzUuMjAzMTIgOC4yODEyNSA1LjExNzE5IDguMjAzMTIgNC44NTkzOCA4LjIwMzEySDQuNDIxODhDNC4xNjQwNiA4LjIwMzEyIDQuMDc4MTIgOC4yODEyNSA0LjA3ODEyIDguNTM5MDZWOC45NzY1NkM0LjA3ODEyIDkuMjM0MzggNC4xNjQwNiA5LjMxMjUgNC40MjE4OCA5LjMxMjVaTTYuODY3MTkgOS4zMTI1SDcuMjk2ODhDNy41NjI1IDkuMzEyNSA3LjY0ODQ0IDkuMjM0MzggNy42NDg0NCA4Ljk3NjU2VjguNTM5MDZDNy42NDg0NCA4LjI4MTI1IDcuNTYyNSA4LjIwMzEyIDcuMjk2ODggOC4yMDMxMkg2Ljg2NzE5QzYuNjAxNTYgOC4yMDMxMiA2LjUxNTYyIDguMjgxMjUgNi41MTU2MiA4LjUzOTA2VjguOTc2NTZDNi41MTU2MiA5LjIzNDM4IDYuNjAxNTYgOS4zMTI1IDYuODY3MTkgOS4zMTI1Wk05LjMwNDY5IDkuMzEyNUg5Ljc0MjE5QzEwIDkuMzEyNSAxMC4wODU5IDkuMjM0MzggMTAuMDg1OSA4Ljk3NjU2VjguNTM5MDZDMTAuMDg1OSA4LjI4MTI1IDEwIDguMjAzMTIgOS43NDIxOSA4LjIwMzEySDkuMzA0NjlDOS4wNDY4OCA4LjIwMzEyIDguOTYwOTQgOC4yODEyNSA4Ljk2MDk0IDguNTM5MDZWOC45NzY1NkM4Ljk2MDk0IDkuMjM0MzggOS4wNDY4OCA5LjMxMjUgOS4zMDQ2OSA5LjMxMjVaTTExLjc1IDkuMzEyNUgxMi4xNzk3QzEyLjQ0NTMgOS4zMTI1IDEyLjUzMTIgOS4yMzQzOCAxMi41MzEyIDguOTc2NTZWOC41MzkwNkMxMi41MzEyIDguMjgxMjUgMTIuNDQ1MyA4LjIwMzEyIDEyLjE3OTcgOC4yMDMxMkgxMS43NUMxMS40ODQ0IDguMjAzMTIgMTEuMzk4NCA4LjI4MTI1IDExLjM5ODQgOC41MzkwNlY4Ljk3NjU2QzExLjM5ODQgOS4yMzQzOCAxMS40ODQ0IDkuMzEyNSAxMS43NSA5LjMxMjVaTTQuNDIxODggMTEuNzE4OEg0Ljg1OTM4QzUuMTE3MTkgMTEuNzE4OCA1LjIwMzEyIDExLjY0MDYgNS4yMDMxMiAxMS4zODI4VjEwLjk0NTNDNS4yMDMxMiAxMC42ODc1IDUuMTE3MTkgMTAuNjA5NCA0Ljg1OTM4IDEwLjYwOTRINC40MjE4OEM0LjE2NDA2IDEwLjYwOTQgNC4wNzgxMiAxMC42ODc1IDQuMDc4MTIgMTAuOTQ1M1YxMS4zODI4QzQuMDc4MTIgMTEuNjQwNiA0LjE2NDA2IDExLjcxODggNC40MjE4OCAxMS43MTg4Wk02Ljg2NzE5IDExLjcxODhINy4yOTY4OEM3LjU2MjUgMTEuNzE4OCA3LjY0ODQ0IDExLjY0MDYgNy42NDg0NCAxMS4zODI4VjEwLjk0NTNDNy42NDg0NCAxMC42ODc1IDcuNTYyNSAxMC42MDk0IDcuMjk2ODggMTAuNjA5NEg2Ljg2NzE5QzYuNjAxNTYgMTAuNjA5NCA2LjUxNTYyIDEwLjY4NzUgNi41MTU2MiAxMC45NDUzVjExLjM4MjhDNi41MTU2MiAxMS42NDA2IDYuNjAxNTYgMTEuNzE4OCA2Ljg2NzE5IDExLjcxODhaTTkuMzA0NjkgMTEuNzE4OEg5Ljc0MjE5QzEwIDExLjcxODggMTAuMDg1OSAxMS42NDA2IDEwLjA4NTkgMTEuMzgyOFYxMC45NDUzQzEwLjA4NTkgMTAuNjg3NSAxMCAxMC42MDk0IDkuNzQyMTkgMTAuNjA5NEg5LjMwNDY5QzkuMDQ2ODggMTAuNjA5NCA4Ljk2MDk0IDEwLjY4NzUgOC45NjA5NCAxMC45NDUzVjExLjM4MjhDOC45NjA5NCAxMS42NDA2IDkuMDQ2ODggMTEuNzE4OCA5LjMwNDY5IDExLjcxODhaIiBmaWxsPSIjMEE0NjZFIi8+Cjwvc3ZnPgo=\"","var deburrLetter = require('./_deburrLetter'),\n toString = require('./toString');\n\n/** Used to match Latin Unicode letters (excluding mathematical operators). */\nvar reLatin = /[\\xc0-\\xd6\\xd8-\\xf6\\xf8-\\xff\\u0100-\\u017f]/g;\n\n/** Used to compose unicode character classes. */\nvar rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange;\n\n/** Used to compose unicode capture groups. */\nvar rsCombo = '[' + rsComboRange + ']';\n\n/**\n * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and\n * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).\n */\nvar reComboMark = RegExp(rsCombo, 'g');\n\n/**\n * Deburrs `string` by converting\n * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)\n * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)\n * letters to basic Latin letters and removing\n * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to deburr.\n * @returns {string} Returns the deburred string.\n * @example\n *\n * _.deburr('déjà vu');\n * // => 'deja vu'\n */\nfunction deburr(string) {\n string = toString(string);\n return string && string.replace(reLatin, deburrLetter).replace(reComboMark, '');\n}\n\nmodule.exports = deburr;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"tourHeader\":\"headerQuilmesTour-module--tourHeader--381Mn\",\"tourHeaderContent\":\"headerQuilmesTour-module--tourHeaderContent--3YVAC\",\"tourHeaderContentHome\":\"headerQuilmesTour-module--tourHeaderContentHome--pFPfQ\",\"tourHeaderMobile\":\"headerQuilmesTour-module--tourHeaderMobile--2CllD\",\"logoTour\":\"headerQuilmesTour-module--logoTour--2e9sr\",\"logoTourMobile\":\"headerQuilmesTour-module--logoTourMobile--4OAv6\",\"logo130\":\"headerQuilmesTour-module--logo130--2YIdn\",\"menuHeader\":\"headerQuilmesTour-module--menu-header--1_qVP\",\"menuIcon\":\"headerQuilmesTour-module--menuIcon--1ATz1\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainMobileContainer\":\"tourMobileDescription-module--mainMobileContainer--ngh62\",\"picturesContainer\":\"tourMobileDescription-module--picturesContainer--1Yydh\",\"goBackArrow\":\"tourMobileDescription-module--goBackArrow--3e0yQ\",\"selectedPictureBackground\":\"tourMobileDescription-module--selectedPictureBackground--2qlDF\",\"photosContainer\":\"tourMobileDescription-module--photosContainer--39TYR\",\"pictureThumbnail\":\"tourMobileDescription-module--pictureThumbnail--2NlvV\",\"secondContainer\":\"tourMobileDescription-module--secondContainer--fHqSy\",\"tourDeToures\":\"tourMobileDescription-module--tourDeToures--1GKRo\",\"tourCompleto\":\"tourMobileDescription-module--tourCompleto--2EqBp\",\"description\":\"tourMobileDescription-module--description--ykx-0\",\"description2\":\"tourMobileDescription-module--description2--35M3A\",\"buttonContainer\":\"tourMobileDescription-module--buttonContainer--2fRAM\",\"button\":\"tourMobileDescription-module--button--1YIu-\",\"buttonReservarContainer\":\"tourMobileDescription-module--buttonReservarContainer--3rWD5\",\"buttonReserva\":\"tourMobileDescription-module--buttonReserva--1caHS\",\"infoContainer\":\"tourMobileDescription-module--infoContainer--26tEF\",\"hoursContainer\":\"tourMobileDescription-module--hoursContainer--BRtp9\",\"peopleContainer\":\"tourMobileDescription-module--peopleContainer--pHOO5\",\"priceContainer\":\"tourMobileDescription-module--priceContainer--3emHI\",\"hours\":\"tourMobileDescription-module--hours--2HgA_\",\"people\":\"tourMobileDescription-module--people--1XeyZ\",\"money\":\"tourMobileDescription-module--money--2I2Ic\",\"duration\":\"tourMobileDescription-module--duration--2Yq2-\",\"capacity\":\"tourMobileDescription-module--capacity--251Zk\",\"price\":\"tourMobileDescription-module--price--1Srbg\"};","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\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}","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","'use strict';\n\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);","/**\n * A specialized version of `_.reduce` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {*} [accumulator] The initial value.\n * @param {boolean} [initAccum] Specify using the first element of `array` as\n * the initial value.\n * @returns {*} Returns the accumulated value.\n */\nfunction arrayReduce(array, iteratee, accumulator, initAccum) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n if (initAccum && length) {\n accumulator = array[++index];\n }\n while (++index < length) {\n accumulator = iteratee(accumulator, array[index], index, array);\n }\n return accumulator;\n}\n\nmodule.exports = arrayReduce;\n","/**\n * Converts an ASCII `string` to an array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the converted array.\n */\nfunction asciiToArray(string) {\n return string.split('');\n}\n\nmodule.exports = asciiToArray;\n","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport { isValidElement, version } from 'react';\nimport { ForwardRef, isFragment, isMemo } from 'react-is';\nimport useMemo from \"./hooks/useMemo\";\nexport var fillRef = 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 var composeRef = 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(Boolean);\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 var useComposeRef = 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 var supportRef = 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) && type.$$typeof !== ForwardRef) {\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) && nodeOrComponent.$$typeof !== ForwardRef) {\n return false;\n }\n return true;\n};\nfunction isReactElement(node) {\n return /*#__PURE__*/isValidElement(node) && !isFragment(node);\n}\nexport var supportNodeRef = function supportNodeRef(node) {\n return isReactElement(node) && supportRef(node);\n};\n\n/**\n * In React 19. `ref` is not a property from node.\n * But a property from `props.ref`.\n * To check if `props.ref` exist or fallback to `ref`.\n */\nexport var getNodeRef = Number(version.split('.')[0]) >= 19 ?\n// >= React 19\nfunction (node) {\n if (isReactElement(node)) {\n return node.props.ref;\n }\n return null;\n} :\n// < React 19\nfunction (node) {\n if (isReactElement(node)) {\n return node.ref;\n }\n return null;\n};","'use strict';\n\nmodule.exports = function (obj, predicate) {\n var ret = {};\n var keys = Object.keys(obj);\n var isArr = Array.isArray(predicate);\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n var val = obj[key];\n if (isArr ? predicate.indexOf(key) !== -1 : predicate(key, val, obj)) {\n ret[key] = val;\n }\n }\n return ret;\n};","'use strict';\n\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\nconst filterObject = require('filter-obj');\nconst isNullOrUndefined = value => value === null || value === undefined;\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\nfunction encoderForArrayFormat(options) {\n switch (options.arrayFormat) {\n case 'index':\n return key => (result, value) => {\n const index = result.length;\n if (value === undefined || options.skipNull && value === null || options.skipEmptyString && value === '') {\n return result;\n }\n if (value === null) {\n return [...result, [encode(key, options), '[', index, ']'].join('')];\n }\n return [...result, [encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')];\n };\n case 'bracket':\n return key => (result, value) => {\n if (value === undefined || options.skipNull && value === null || options.skipEmptyString && value === '') {\n return result;\n }\n if (value === null) {\n return [...result, [encode(key, options), '[]'].join('')];\n }\n return [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n };\n case 'colon-list-separator':\n return key => (result, value) => {\n if (value === undefined || options.skipNull && value === null || options.skipEmptyString && value === '') {\n return result;\n }\n if (value === null) {\n return [...result, [encode(key, options), ':list='].join('')];\n }\n return [...result, [encode(key, options), ':list=', encode(value, options)].join('')];\n };\n case 'comma':\n case 'separator':\n case 'bracket-separator':\n {\n const keyValueSep = options.arrayFormat === 'bracket-separator' ? '[]=' : '=';\n return key => (result, value) => {\n if (value === undefined || options.skipNull && value === null || options.skipEmptyString && value === '') {\n return result;\n }\n\n // Translate null to an empty string so that it doesn't serialize as 'null'\n value = value === null ? '' : value;\n if (result.length === 0) {\n return [[encode(key, options), keyValueSep, encode(value, options)].join('')];\n }\n return [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n };\n }\n default:\n return key => (result, value) => {\n if (value === undefined || options.skipNull && value === null || options.skipEmptyString && value === '') {\n return result;\n }\n if (value === null) {\n return [...result, encode(key, options)];\n }\n return [...result, [encode(key, options), '=', encode(value, options)].join('')];\n };\n }\n}\nfunction parserForArrayFormat(options) {\n let result;\n switch (options.arrayFormat) {\n case 'index':\n return (key, value, accumulator) => {\n result = /\\[(\\d*)\\]$/.exec(key);\n key = key.replace(/\\[\\d*\\]$/, '');\n if (!result) {\n accumulator[key] = value;\n return;\n }\n if (accumulator[key] === undefined) {\n accumulator[key] = {};\n }\n accumulator[key][result[1]] = value;\n };\n case 'bracket':\n return (key, value, accumulator) => {\n result = /(\\[\\])$/.exec(key);\n key = key.replace(/\\[\\]$/, '');\n if (!result) {\n accumulator[key] = value;\n return;\n }\n if (accumulator[key] === undefined) {\n accumulator[key] = [value];\n return;\n }\n accumulator[key] = [].concat(accumulator[key], value);\n };\n case 'colon-list-separator':\n return (key, value, accumulator) => {\n result = /(:list)$/.exec(key);\n key = key.replace(/:list$/, '');\n if (!result) {\n accumulator[key] = value;\n return;\n }\n if (accumulator[key] === undefined) {\n accumulator[key] = [value];\n return;\n }\n accumulator[key] = [].concat(accumulator[key], value);\n };\n case 'comma':\n case 'separator':\n return (key, value, accumulator) => {\n const isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n const isEncodedArray = typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator);\n value = isEncodedArray ? decode(value, options) : value;\n const newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n accumulator[key] = newValue;\n };\n case 'bracket-separator':\n return (key, value, accumulator) => {\n const isArray = /(\\[\\])$/.test(key);\n key = key.replace(/\\[\\]$/, '');\n if (!isArray) {\n accumulator[key] = value ? decode(value, options) : value;\n return;\n }\n const arrayValue = value === null ? [] : value.split(options.arrayFormatSeparator).map(item => decode(item, options));\n if (accumulator[key] === undefined) {\n accumulator[key] = arrayValue;\n return;\n }\n accumulator[key] = [].concat(accumulator[key], arrayValue);\n };\n default:\n return (key, value, accumulator) => {\n if (accumulator[key] === undefined) {\n accumulator[key] = value;\n return;\n }\n accumulator[key] = [].concat(accumulator[key], value);\n };\n }\n}\nfunction validateArrayFormatSeparator(value) {\n if (typeof value !== 'string' || value.length !== 1) {\n throw new TypeError('arrayFormatSeparator must be single character string');\n }\n}\nfunction encode(value, options) {\n if (options.encode) {\n return options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n }\n return value;\n}\nfunction decode(value, options) {\n if (options.decode) {\n return decodeComponent(value);\n }\n return value;\n}\nfunction keysSorter(input) {\n if (Array.isArray(input)) {\n return input.sort();\n }\n if (typeof input === 'object') {\n return keysSorter(Object.keys(input)).sort((a, b) => Number(a) - Number(b)).map(key => input[key]);\n }\n return input;\n}\nfunction removeHash(input) {\n const hashStart = input.indexOf('#');\n if (hashStart !== -1) {\n input = input.slice(0, hashStart);\n }\n return input;\n}\nfunction getHash(url) {\n let hash = '';\n const hashStart = url.indexOf('#');\n if (hashStart !== -1) {\n hash = url.slice(hashStart);\n }\n return hash;\n}\nfunction extract(input) {\n input = removeHash(input);\n const queryStart = input.indexOf('?');\n if (queryStart === -1) {\n return '';\n }\n return input.slice(queryStart + 1);\n}\nfunction parseValue(value, options) {\n if (options.parseNumbers && !Number.isNaN(Number(value)) && typeof value === 'string' && value.trim() !== '') {\n value = Number(value);\n } else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n value = value.toLowerCase() === 'true';\n }\n return value;\n}\nfunction parse(query, options) {\n options = Object.assign({\n decode: true,\n sort: true,\n arrayFormat: 'none',\n arrayFormatSeparator: ',',\n parseNumbers: false,\n parseBooleans: false\n }, options);\n validateArrayFormatSeparator(options.arrayFormatSeparator);\n const formatter = parserForArrayFormat(options);\n\n // Create an object with no prototype\n const ret = Object.create(null);\n if (typeof query !== 'string') {\n return ret;\n }\n query = query.trim().replace(/^[?#&]/, '');\n if (!query) {\n return ret;\n }\n for (const param of query.split('&')) {\n if (param === '') {\n continue;\n }\n let [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n // Missing `=` should be `null`:\n // http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n value = value === undefined ? null : ['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options);\n formatter(decode(key, options), value, ret);\n }\n for (const key of Object.keys(ret)) {\n const value = ret[key];\n if (typeof value === 'object' && value !== null) {\n for (const k of Object.keys(value)) {\n value[k] = parseValue(value[k], options);\n }\n } else {\n ret[key] = parseValue(value, options);\n }\n }\n if (options.sort === false) {\n return ret;\n }\n return (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n const value = ret[key];\n if (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n // Sort object keys, not values\n result[key] = keysSorter(value);\n } else {\n result[key] = value;\n }\n return result;\n }, Object.create(null));\n}\nexports.extract = extract;\nexports.parse = parse;\nexports.stringify = (object, options) => {\n if (!object) {\n return '';\n }\n options = Object.assign({\n encode: true,\n strict: true,\n arrayFormat: 'none',\n arrayFormatSeparator: ','\n }, options);\n validateArrayFormatSeparator(options.arrayFormatSeparator);\n const shouldFilter = key => options.skipNull && isNullOrUndefined(object[key]) || options.skipEmptyString && object[key] === '';\n const formatter = encoderForArrayFormat(options);\n const objectCopy = {};\n for (const key of Object.keys(object)) {\n if (!shouldFilter(key)) {\n objectCopy[key] = object[key];\n }\n }\n const keys = Object.keys(objectCopy);\n if (options.sort !== false) {\n keys.sort(options.sort);\n }\n return keys.map(key => {\n const value = object[key];\n if (value === undefined) {\n return '';\n }\n if (value === null) {\n return encode(key, options);\n }\n if (Array.isArray(value)) {\n if (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n return encode(key, options) + '[]';\n }\n return value.reduce(formatter(key), []).join('&');\n }\n return encode(key, options) + '=' + encode(value, options);\n }).filter(x => x.length > 0).join('&');\n};\nexports.parseUrl = (url, options) => {\n options = Object.assign({\n decode: true\n }, options);\n const [url_, hash] = splitOnFirst(url, '#');\n return Object.assign({\n url: url_.split('?')[0] || '',\n query: parse(extract(url), options)\n }, options && options.parseFragmentIdentifier && hash ? {\n fragmentIdentifier: decode(hash, options)\n } : {});\n};\nexports.stringifyUrl = (object, options) => {\n options = Object.assign({\n encode: true,\n strict: true,\n [encodeFragmentIdentifier]: true\n }, options);\n const url = removeHash(object.url).split('?')[0] || '';\n const queryFromUrl = exports.extract(object.url);\n const parsedQueryFromUrl = exports.parse(queryFromUrl, {\n sort: false\n });\n const query = Object.assign(parsedQueryFromUrl, object.query);\n let queryString = exports.stringify(query, options);\n if (queryString) {\n queryString = `?${queryString}`;\n }\n let hash = getHash(object.url);\n if (object.fragmentIdentifier) {\n hash = `#${options[encodeFragmentIdentifier] ? encode(object.fragmentIdentifier, options) : object.fragmentIdentifier}`;\n }\n return `${url}${queryString}${hash}`;\n};\nexports.pick = (input, filter, options) => {\n options = Object.assign({\n parseFragmentIdentifier: true,\n [encodeFragmentIdentifier]: false\n }, options);\n const {\n url,\n query,\n fragmentIdentifier\n } = exports.parseUrl(input, options);\n return exports.stringifyUrl({\n url,\n query: filterObject(query, filter),\n fragmentIdentifier\n }, options);\n};\nexports.exclude = (input, filter, options) => {\n const exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n return exports.pick(input, exclusionFilter, options);\n};","/** Used to match words composed of alphanumeric characters. */\nvar reAsciiWord = /[^\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\x7f]+/g;\n\n/**\n * Splits an ASCII `string` into an array of its words.\n *\n * @private\n * @param {string} The string to inspect.\n * @returns {Array} Returns the words of `string`.\n */\nfunction asciiWords(string) {\n return string.match(reAsciiWord) || [];\n}\n\nmodule.exports = asciiWords;\n","var baseToString = require('./_baseToString');\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nmodule.exports = toString;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nmodule.exports = arrayMap;\n","module.exports = \"data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzkiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA3OSA0MCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMzLjUzMDggNS44NjY1QzMzLjQ2MTggNC42MzY5NiAzNC4zNDc4IDMuNDQ1NDkgMzUuNTAyMiAzLjIwNTY3QzM2LjY0OSAyLjk2NTg2IDM3LjY0NjIgMy43NjUyNSAzNy43MTUyIDQuOTkwOThDMzcuNzg0MiA2LjIyMDUyIDM2LjkwNTkgNy40MDgxOSAzNS43NTE1IDcuNjQ4QzM0LjU5NzEgNy44ODc4MiAzMy42MDM3IDcuMDkyMjQgMzMuNTMwOCA1Ljg2NjVaTTkuNzIwOTMgMzMuNzY1MkMxMS4wOTc4IDMzLjkzNjUgMTMuMTYxMyAzNC4yMTgyIDE0LjY0NTUgMzIuNDI1M0MxNC40MTE2IDM1Ljc0ODUgMTIuNDMyNSAzOC4wMzYzIDkuMzY4MDggMzcuOTQ4N0M2LjI5NTk2IDM3Ljg1NzQgNC40MjQzMSAzNy45NDExIDMuMTM5NDYgMzkuNjIzNkwyLjg2NzE1IDM5Ljk5NjdDMy4xMzU2MyAzNi44NjM4IDQuMDU2MTEgMzQuODg4MiA2LjYwNjYzIDM0LjExOTNDNC4zMzYwOSAzMy42OTI5IC0xLjQ3MDY0IDI5LjkyNDQgMC42NTc5ODcgMTguNTI3M0MyLjAyMzM3IDExLjIxNDggNS44OTMyNSA3LjA4NDYyIDkuMTcyNDggNS44NDc0N0M4LjA4MzI0IDYuOTkzMjYgNy41MDc5MyA3Ljc5NjQ2IDYuMzg4MDEgOS45NDcyQzIuOTI4NTIgMTYuNTk3NCAzLjMwNDM4IDI4LjY2NDQgOC43MzUyNSAyNy43NTQ2QzE0LjE3NzYgMjYuODQ0OCAxNi42NjI5IDE4LjE1NDMgMTUuOTM0MiAxMi4wMzMyQzE1LjIwNTUgNS44MzIyNCAxMS4yMzU5IDguMjIyODEgMTAuMzk2IDExLjE1MDFDMTEuNTI3NCA5Ljc2NDQ5IDE0LjYwNzIgMTAuODYwOCAxMy44MTcxIDE2Ljk0QzEyLjc0MzIgMjUuMTk2NSA1LjgyODA1IDI2LjE5MDEgNi40NjA4OCAxNy41Mzc2QzcuMTEyODkgOS43OTg3NSAxMC41MDMzIDYuNDk0NiAxMy4wMjMyIDUuNzUyMzFDMTUuNjk2NCA0Ljk5NDc5IDIxLjUwMzIgOC4zNzUwNyAxOC45NjggMjEuMzY3MUMxNy41Nzk2IDI3LjE2NDYgMTUuMTQ4IDMyLjE1MTIgOS43MjA5MyAzMy43NjUyWk05LjgyODMzIDE0LjMyMUM5Ljg3MDUxIDE1LjE2MjMgMTAuMzI2OSAxNS42NjQ4IDEwLjg2MzkgMTUuNDQ0QzExLjM5MzIgMTUuMjE5NCAxMS44MDM1IDE0LjM1MTUgMTEuNzY1MiAxMy41MTAyQzExLjczMDcgMTIuNjU3NSAxMS4yNzA0IDEyLjE0NzQgMTAuNzI5NiAxMi4zNzU4QzEwLjE5MjcgMTIuNjExOCA5Ljc4OTk3IDEzLjQ3NTkgOS44MjgzMyAxNC4zMjFaTTcyLjUwOTYgMTkuMTI1QzcwLjYzNzkgMTkuNDQwOSA2OS43MTc0IDE4LjU0MjYgNjkuMjYxIDE3LjQ5OTVDNjguNTUxNSAxOC40NDc0IDY3LjkxMSAxOS4xOTM1IDY3LjQwNDcgMTkuNTk3VjE5LjYwMDhDNjUuNzk3NyAyMC44MTg5IDYzLjc5OTUgMjEuMDM1OSA2Mi44Njc1IDIwLjQ3MjVDNjAuNDMyIDE4Ljk5OTQgNjAuODE5NCAxNC42Mjk0IDYwLjgxOTQgMTQuNjI5NEM2MC44MTk0IDE0LjYyOTQgNTkuMDQzNiAxOS4yNzcyIDU3LjQyMTMgMjEuMzYzM0M1NS41MjI4IDIzLjgyNjIgNTMuOTU3OSAyMi40MjkxIDU0LjMzIDIwLjEzMzdDNTQuODcwOCAxNi43ODc3IDU2LjA5NDIgOC43MTAwNSA1Ni4wOTQyIDguNzEwMDVDNTYuMzg1NyA3LjAxNjEgNTUuNjE0OCA3LjAzMTMzIDU0Ljk0NzUgOC4yNTcwNkM1NC4zMyA5LjM5MTQ0IDU0LjE0NTkgOS44MTc3OCA1My44NTgyIDExLjQxMjhMNTIuMTI0NiAyMy4wMzQ0TDQ4LjQ4NDkgMjMuODAzM0w1MC42MDIgOS40Mjk1QzUwLjgwOTEgOC4yNTMyNiA1MC4wMDc1IDguMzA2NTUgNDkuMjgyNiA5LjQwMjg2QzQ4LjcxMTIgMTAuMjU5MyA0OC40NTA0IDExLjU4NDEgNDguNDUwNCAxMS41ODQxQzQ4LjQ1MDQgMTEuNTg0MSA0Ni42ODk5IDIzLjg2OCA0Ni41OTQxIDI0LjE5OTJMNDIuOTE2IDI0Ljk3NThMNDQuMTEyNiAxNi45MDU3QzQzLjEzODQgMTkuNzk4NyA0MS43MzA4IDIyLjgxNzQgNDAuMjUwNCAyNC44NzNDMzguNjM5NSAyNy4xMjI3IDM2Ljk1MiAyNi40MjYxIDM3LjE2NjggMjQuNTExM0wzNy45MTg1IDE4LjQxNjlDMzcuMzYyNCAyMC4xNDkgMzUuNDE0IDI0LjM1OTEgMzMuOTAyOSAyNi4zNzI4QzMyLjI5MiAyOC41MzQ5IDMwLjg0NjEgMjcuNTQ1MiAzMS4wMjI1IDI1Ljc1NjFMMzEuODcwMSAxOS41NDc1QzMwLjM1NTIgMjMuMjcwNCAyOC45ODk4IDI1Ljk4MDcgMjcuODEyMyAyNy42ODk5QzI2LjQ0MzEgMjkuNjg0NSAyNC42OTggMjguOTQ5OSAyNC45MTI4IDI2Ljk4NTdMMjUuMzM4NSAyMi45MjRDMjQuODI4NCAyNC40Njk1IDIzLjE2MzkgMjcuNDg0MyAyMi4zMzE2IDI4LjcwNjJDMjEuMDMxNCAzMC42MTM0IDE4Ljg1NjggMzAuOTA2NSAxOS40MjA2IDI3LjE3MjJMMjEuNjI1OSAxMS45MDc2TDI1LjI2MTggMTEuMTQyNUMyNS4xMjc2IDExLjY5ODMgMjMuNjc0IDIyLjI2OTIgMjMuNDYzIDIzLjQ1MzFDMjMuMjU1OSAyNC42Mjk0IDIzLjkzODYgMjQuMjYzOSAyNC4zNDUyIDIzLjYxNjhDMjQuMzQ1MiAyMy42MTY4IDI1LjMwNzggMjIuMDE4IDI1Ljk1NiAxOS4xNzQ1TDI3LjE1NjUgMTAuNzQyOEwzMC43OTYyIDkuOTczODVDMzAuNzU3OSAxMC4wOTk1IDI5LjU0NTkgMTkuMzgzOCAyOS4xNDMyIDIxLjYwMzFDMjguNzU5NiAyMy43MjM0IDI5LjcwNyAyMy4xMTA1IDMwLjI1MTYgMjIuMDI5NEMzMC44NDIyIDIwLjg1NyAzMS43MjQ0IDE4LjEzOTEgMzIuMTkyMyAxNi42MDVDMzIuNjYwMiAxNS4wNjcxIDMzLjMzNTIgOS40NDA5MiAzMy4zMzUyIDkuNDQwOTJMMzYuOTcxMSA4LjY3NTc5QzM2LjcyOTUgMTAuNDY4NyAzNS4yOTUxIDIwLjUyOTYgMzUuMjk1MSAyMC41MzcyQzM1LjAxOSAyMi4wOTQxIDM1LjY4MjUgMjEuOTQ1NyAzNi4yMzg2IDIwLjk5NzhDMzcuNzM4MiAxOC4xOTYyIDM4LjUyODMgMTQuNDU0MiAzOC43NTQ2IDEzLjM1NDFDMzguOTgwOSAxMi4yNTc4IDQwLjM4NDYgMi4wNTYwNyA0MC4zODQ2IDIuMDU2MDdMNDMuOTQzOCAxLjMwOTk4QzQzLjc5MDQgMi4xNzQwOCA0MS40MzkzIDE4LjgzNTcgNDEuNDM5MyAxOC44MzU3QzQxLjA3ODggMjEuMjU2NyA0Mi4xNzU3IDIwLjQxMTYgNDIuNzU4NyAxOC45Mzg1QzQzLjA2MTcgMTguMTY5NSA0NC4zOTY0IDE0LjUzNDIgNDQuNTAzOCAxNC4yMzM1TDQ1LjYwODQgNi44NTI0Mkw0OS4xNTk5IDYuMTAyNTJMNDguNjY1MiA5LjI2OTYzQzQ4LjY2NTIgOS4yNjk2MyA0OS41MDg5IDcuNzYyMiA1MC41NTIxIDYuNTgyMTVDNTIuMzUwOSA0LjU0NTYxIDU0LjA2NTMgNC4xOTU0IDU0LjIzNzkgNi43MTUzOEM1NC4yMzc5IDYuNzE1MzggNTQuMjk5MyA3LjkyMjA4IDU0LjI0MTggOC4yMzQyMkM1NC4yNDE4IDguMjM0MjIgNTUuMDE2NSA2LjgwNjc0IDU1LjY4IDUuOTczMDlDNTguMTE5MyAyLjY3NjU1IDYwLjMxMzEgMy4yOTcwMyA2MC4wNjc3IDYuMTg2MjZDNjAuMDY3NyA2LjE4NjI2IDU4LjcyMTUgMTUuMDY3MSA1OC42NDA5IDE1LjY1MzNDNTguNDkxMyAxNi43MTE2IDU4Ljk0NzcgMTcuMjMzMSA1OS40NjkzIDE2LjM2MTRDNTkuNDY5MyAxNi4zNjE0IDYwLjQ5MzQgMTQuNTI2NiA2MC43NjE5IDEzLjAyNjhDNjEuNTE3NCA4LjU0NjM3IDYzLjIzMTggMi42NTc1MiA2Ny41NzM1IDEuODM1MjlDNzEuOTE1MSAxLjAxMzA2IDcxLjYzODkgNy4wNzMyIDcwLjk0MDkgOC45MzQ2NEM3MC4yNjIgMTAuNzQ2NiA2OC45Njk1IDEzLjM5OTggNjQuNzkyOCAxMy43OTk1QzY0Ljc5MjggMTMuNzk5NSA2NC42NzM5IDE0LjYxNDEgNjQuNjczOSAxNC43MDU1QzY0LjY3MzkgMTQuNzA1NSA2NC40MzYxIDE2LjcxNTQgNjQuNTE2NyAxNy40ODQzQzY0LjYwNDkgMTguMjM4IDY1LjMwNjggMjAuMDU3NiA2Ny4xOTM4IDE5LjAwMzJDNjcuNjMxIDE4Ljc1NTcgNjguMjkwNyAxNy45OTA2IDY5LjA1NzcgMTYuOTRDNjguOTIzNSAxNi40NzE4IDY4Ljg2NiAxNi4wMTUgNjguODQzIDE1LjY2MDlDNjguODMxNSAxNS41NzcyIDY4LjgyMzggMTUuNDkzNSA2OC44MiAxNS40MDk3QzY4LjgxNjEgMTUuMjkxNyA2OC44MTk5IDE1LjE3MzcgNjguODMxNSAxNS4wNTU3QzY4LjgzMTUgMTUuMDAyNCA2OC44MzUzIDE0Ljk3MTkgNjguODM1MyAxNC45NzE5TDY4LjgzOTEgMTQuOTc5NkM2OC45NzcyIDEzLjc5MTkgNjkuODgyMyAxMi43MjYgNzEuMDA5OSAxMi40OUM3MS4zNDc1IDEyLjQxNzcgNzEuNjczNSAxMi40MzI5IDcxLjk2ODggMTIuNTE2N0M3Mi42NTUzIDExLjQwMTMgNzMuMzMwMyAxMC4yNjcgNzMuOTMyNSA5LjIzNTM3QzcyLjQ5NDIgNi4yMzk1NSA3Mi44NDMyIDMuNzQyNDEgNzIuODQzMiAzLjc0MjQxQzczLjE4MDggMC40Njg3MTEgNzUuODMxIDAuMDcyODIyNyA3NS44MzEgMC4wNzI4MjI3Qzc1LjgzMSAwLjA3MjgyMjcgNzcuNzE4IC0wLjQ0ODY4NSA3OC4xMDE1IDEuNDQzMjFDNzguMzM1NSAyLjU4OSA3Ny40MDczIDQuMzg1NzMgNzYuNjUxNyA1LjYwNzY1Qzc2LjYzMjYgNS42NDE5MSA3Ni42MDE5IDUuNjk5MDEgNzYuNTU1OSA1Ljc4Mjc2Qzc3LjIyNzEgNy4yNTk3MyA3OC4zOTY4IDEwLjExODUgNzguNTE5NiAxMi4xODE3Qzc4LjY5OTggMTUuMjMwOCA3Ni40ODY4IDE4LjQ0NzQgNzIuNTA5NiAxOS4xMjVaTTY0Ljg4NDkgMTMuMTc5QzY0Ljg3MzQgMTMuMTc5IDY1LjIyMjQgMTMuMTQxIDY1LjgwMTUgMTMuMDIzQzY2LjU2NDggMTIuODY2OSA2Ni45NzUxIDEyLjAxMDQgNjcuMDUxOCAxMS4zMjlDNjcuMDUxOCAxMS4zMjkgNjguMDY4MiA0LjU2NDY0IDY4LjEyNTggMy43MTU3NkM2OC4xMzM0IDMuNTk3NzYgNjguMTI5NiAzLjQ3OTc1IDY4LjExODEgMy4zNjkzNkM2OC4wNzk3IDMuMDExNTQgNjcuODk1NiAyLjY3NjU1IDY3LjU0MjggMi42NDIyOUM2Ny4zNzc5IDIuNjI3MDcgNjcuMjA5MSAyLjY3NjU1IDY3LjA0MDMgMi43NDUwN0M2Ni45MTc2IDIuNzk0NTYgNjYuODEwMiAyLjg2Njg4IDY2LjcxODIgMi45NTQ0NEM2Ni40OTk2IDMuMTU2MTkgNjYuMzU3NyAzLjQ0MTY4IDY2LjI2MTggMy43Mzg2QzY2LjE2OTcgNC4wMTY0OCA2Ni4xMTIyIDQuMjk0MzcgNjYuMDczOCA0LjU3NjA2QzY2LjA3IDQuNTc2MDYgNjUuMjUzMSAxMC4zMTY0IDY0Ljg4NDkgMTMuMTc5Wk03NS42NDMxIDE0LjA2NkM3NS41NTQ4IDEzLjAzODIgNzUuNjQzMSAxMi41OTY2IDc0LjIzMTYgOS44MTAxN0M3My42ODcgMTAuNzMxNCA3My4wODQ5IDExLjcyNDkgNzIuNDYzNSAxMi43MjIyQzczLjAwNDMgMTMuMDYxIDczLjM3MjUgMTMuNjc3NyA3My40MDcgMTQuNDQ2NkM3My40NjQ2IDE1Ljc5NDIgNzIuNDkwNCAxNy4wOTk5IDcxLjIyODYgMTcuMzYyNUM3MC42Mzc5IDE3LjQ4ODEgNzAuMDg1NiAxNy4zNTg3IDY5LjY1OTkgMTcuMDUwNEM3MC4wMzE5IDE3LjgzMDcgNzAuODA2NyAxOC43MTAxIDcyLjM1NjEgMTguNDA5M0M3NC43Mzc5IDE3Ljk0MTEgNzUuNzc3MyAxNS42NTcxIDc1LjY0MzEgMTQuMDY2Wk03Ni4zNDQ5IDUuMDA2MjFDNzYuMzQ0OSA1LjAwNjIxIDc3LjU5MTQgMi41NzM3NyA3Ny4zMzQ0IDEuNTk5MjhDNzcuMDM5MSAwLjQ2MTA5OCA3Ni4wNTM0IDAuOTYzNTczIDc2LjA1MzQgMC45NjM1NzNDNzQuNTQyMyAxLjc4MiA3Ni4xNDU1IDQuODk5NjIgNzYuMTQ1NSA0Ljg5OTYyQzc2LjE3NjIgNC45NTY3MiA3Ni4yMTQ1IDUuMDQwNDcgNzYuMjY0NCA1LjE0MzI1Qzc2LjMxODEgNS4wNTU2OSA3Ni4zNDQ5IDUuMDA2MjEgNzYuMzQ0OSA1LjAwNjIxWiIgZmlsbD0id2hpdGUiLz4KPC9zdmc+Cg==\"","/** Used to detect strings that need a more robust regexp to match words. */\nvar reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;\n\n/**\n * Checks if `string` contains a word composed of Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a word is found, else `false`.\n */\nfunction hasUnicodeWord(string) {\n return reHasUnicodeWord.test(string);\n}\n\nmodule.exports = hasUnicodeWord;\n","var createCaseFirst = require('./_createCaseFirst');\n\n/**\n * Converts the first character of `string` to upper case.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.upperFirst('fred');\n * // => 'Fred'\n *\n * _.upperFirst('FRED');\n * // => 'FRED'\n */\nvar upperFirst = createCaseFirst('toUpperCase');\n\nmodule.exports = upperFirst;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"couponBox-module--mainContainer--LLPNv\",\"smallContainer\":\"couponBox-module--smallContainer--2DNfu\",\"smallContainerResized\":\"couponBox-module--smallContainerResized--2fWme\",\"price\":\"couponBox-module--price--2_LkE\",\"inputLabel\":\"couponBox-module--inputLabel--yNlrW\",\"buttonReserva\":\"couponBox-module--buttonReserva--2hNQk\",\"buttonReservaDeshabilitado\":\"couponBox-module--buttonReservaDeshabilitado--3kUT9\",\"error\":\"couponBox-module--error--3C3kB\",\"discountTitle\":\"couponBox-module--discountTitle--2E8fZ\",\"discountNameAndPercentageAndIcon\":\"couponBox-module--discountNameAndPercentageAndIcon--1pDIi\",\"discountNameAndPercentage\":\"couponBox-module--discountNameAndPercentage--U2N9M\",\"desktopBr\":\"couponBox-module--desktopBr--1EgWd\",\"mobileSecondColumn\":\"couponBox-module--mobileSecondColumn--1IeV5\",\"mobileSecondColumnDiscountApplied\":\"couponBox-module--mobileSecondColumnDiscountApplied--2p2H2\",\"mobileInputAndButtonRow\":\"couponBox-module--mobileInputAndButtonRow--HGtmY\"};","export { default as useEvent } from \"./hooks/useEvent\";\nexport { default as useMergedState } from \"./hooks/useMergedState\";\nexport { supportNodeRef, supportRef, useComposeRef } from \"./ref\";\nexport { default as get } from \"./utils/get\";\nexport { default as set } from \"./utils/set\";\nexport { default as warning } from \"./warning\";","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport 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 * Retrieves a DOM node via a ref, and does not invoke `findDOMNode`.\n */\nexport function getDOM(node) {\n if (node && _typeof(node) === 'object' && isDOM(node.nativeElement)) {\n return node.nativeElement;\n }\n if (isDOM(node)) {\n return node;\n }\n return null;\n}\n\n/**\n * Return if a node is a DOM node. Else will return by `findDOMNode`\n */\nexport default function findDOMNode(node) {\n var domNode = getDOM(node);\n if (domNode) {\n return domNode;\n }\n if (node instanceof React.Component) {\n var _ReactDOM$findDOMNode;\n return (_ReactDOM$findDOMNode = ReactDOM.findDOMNode) === null || _ReactDOM$findDOMNode === void 0 ? void 0 : _ReactDOM$findDOMNode.call(ReactDOM, node);\n }\n return null;\n}","module.exports = \"data:image/svg+xml;base64,PHN2ZyBpZD0iR3J1cG9fMTA3NiIgZGF0YS1uYW1lPSJHcnVwbyAxMDc2IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB3aWR0aD0iMzUuMzI0IiBoZWlnaHQ9IjI2LjIwMSIgdmlld0JveD0iMCAwIDM1LjMyNCAyNi4yMDEiPg0KICA8ZGVmcz4NCiAgICA8Y2xpcFBhdGggaWQ9ImNsaXAtcGF0aCI+DQogICAgICA8cmVjdCBpZD0iUmVjdMOhbmd1bG9fMTczOCIgZGF0YS1uYW1lPSJSZWN0w6FuZ3VsbyAxNzM4IiB3aWR0aD0iMzUuMzI0IiBoZWlnaHQ9IjI2LjIwMSIgZmlsbD0iI2ZmZiIvPg0KICAgIDwvY2xpcFBhdGg+DQogIDwvZGVmcz4NCiAgPGcgaWQ9IkdydXBvXzEwNzYtMiIgZGF0YS1uYW1lPSJHcnVwbyAxMDc2IiBjbGlwLXBhdGg9InVybCgjY2xpcC1wYXRoKSI+DQogICAgPHBhdGggaWQ9IlRyYXphZG9fMTMwNiIgZGF0YS1uYW1lPSJUcmF6YWRvIDEzMDYiIGQ9Ik0zMDguMzM1LDE1Ny4xYTEuMDM1LDEuMDM1LDAsMCwxLS4xMy0yLjA2MSwyMi42LDIyLjYsMCwwLDAsOC4yNDYtMi41YzEuODcyLTEuMDkxLDIuOS0yLjM3MywyLjktMy42MTEsMC0xLjM2NC0xLjIwNi0yLjQ4LTIuMjE5LTMuMTc2YTEuMDM1LDEuMDM1LDAsMSwxLDEuMTczLTEuNzA1YzIuMDM4LDEuNCwzLjExNSwzLjA5LDMuMTE1LDQuODgyLDAsMi4wMzQtMS4zNTksMy45LTMuOTMxLDUuNGEyNC4zMjgsMjQuMzI4LDAsMCwxLTkuMDI2LDIuNzYxLDEuMSwxLjEsMCwwLDEtLjEzMi4wMDgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yODYuMDk5IC0xMzMuOTM5KSIgZmlsbD0iI2ZmZiIvPg0KICAgIDxwYXRoIGlkPSJUcmF6YWRvXzEzMDciIGRhdGEtbmFtZT0iVHJhemFkbyAxMzA3IiBkPSJNMTcuNDEsMTQ5Ljg2NmwtMi43Ni0yLjc2YTEuMDM1LDEuMDM1LDAsMSwwLTEuNDY0LDEuNDYzbC44MDYuODA2YTI0LjkzMywyNC45MzMsMCwwLDEtOC4wNzUtMi4wODVjLTIuNDQ1LTEuMTc2LTMuODQ4LTIuNjc0LTMuODQ4LTQuMTEsMC0xLjIxOCwxLTIuNDg0LDIuODI3LTMuNTY0YTEuMDM1LDEuMDM1LDAsMSwwLTEuMDU1LTEuNzgxQy42NjYsMTM5LjcxOCwwLDE0MS43ODEsMCwxNDMuMTgxYzAsMi4zLDEuNzgzLDQuNDE4LDUuMDIxLDUuOTc1YTI3LjUzOSwyNy41MzksMCwwLDAsOS4zLDIuMzMxbC0xLjEzOSwxLjEzOWExLjAzNSwxLjAzNSwwLDAsMCwxLjQ2NCwxLjQ2NGwyLjc2LTIuNzZhMS4wMzUsMS4wMzUsMCwwLDAsMC0xLjQ2NCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCAtMTI4LjE5MSkiIGZpbGw9IiNmZmYiLz4NCiAgICA8cGF0aCBpZD0iVHJhemFkb18xMzA4IiBkYXRhLW5hbWU9IlRyYXphZG8gMTMwOCIgZD0iTTk3LjgzOCw5Ni44MzF2LS4yNDljMC0uODc4LS41MzgtMS4wNDktMS4yNTktMS4wNDktLjQ0NiwwLS41OS0uMzkzLS41OS0uNzg2cy4xNDQtLjc4Ny41OS0uNzg3Yy41LDAsMS4wMjItLjA2NiwxLjAyMi0xLjEyNywwLS43Ni0uNDMzLS45NDQtLjk3LS45NDQtLjY0MiwwLS45Ny4xNTctLjk3LjY2OSwwLC40NDYtLjIuNzQ3LS45NTcuNzQ3LS45NDQsMC0xLjA2Mi0uMi0xLjA2Mi0uODI2LDAtMS4wMjIuNzM0LTIuMzQ2LDIuOTg5LTIuMzQ2LDEuNjY1LDAsMi45MjMuNiwyLjkyMywyLjM3M2EyLjMsMi4zLDAsMCwxLTEuMDA5LDIuMTUsMS45LDEuOSwwLDAsMSwxLjMzNywxLjkyN3YuMjQ5YzAsMi4xNS0xLjQ4MSwyLjk2My0zLjMxNywyLjk2My0yLjI1NSwwLTMuMTItMS4zNzYtMy4xMi0yLjQ3OCwwLS41OS4yNDktLjc0Ny45Ny0uNzQ3LjgzOSwwLDEuMDQ5LjE4NCwxLjA0OS42ODIsMCwuNjE2LjU3Ny43NiwxLjE2Ny43Ni44OTIsMCwxLjIwNi0uMzI4LDEuMjA2LTEuMTgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC04Ni45OTkgLTgzLjkxNSkiIGZpbGw9IiNmZmYiLz4NCiAgICA8cGF0aCBpZD0iVHJhemFkb18xMzA5IiBkYXRhLW5hbWU9IlRyYXphZG8gMTMwOSIgZD0iTTIxNS4yMSw5Ni41ODJWOTYuN2MwLDIuMjU1LTEuNCwzLjA5NC0zLjIxMiwzLjA5NHMtMy4yMjUtLjgzOS0zLjIyNS0zLjA5NFY5My4yMjdjMC0yLjI1NSwxLjQ1NS0zLjA5NCwzLjM0My0zLjA5NCwyLjIxNSwwLDMuMDk0LDEuMzc2LDMuMDk0LDIuNDY0LDAsLjYyOS0uMy44MjYtLjk1Ny44MjYtLjU2NCwwLTEuMDYyLS4xNDQtMS4wNjItLjc0NywwLS41LS41MjQtLjc2LTEuMTQtLjc2LS43NzMsMC0xLjIzMi40MDYtMS4yMzIsMS4zMTF2MS4xOGEyLjEsMi4xLDAsMCwxLDEuNjM5LS41NzcsMi40NTcsMi40NTcsMCwwLDEsMi43NTMsMi43NTNtLTQuMzkyLjI2MmMwLC45LjQ0NiwxLjMsMS4xOCwxLjNzMS4xNjctLjM5MywxLjE2Ny0xLjN2LS4xMThjMC0uOTU3LS40MzMtMS4zMjQtMS4xOC0xLjMyNGExLjA1MiwxLjA1MiwwLDAsMC0xLjE2NywxLjIwNloiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xOTQuMzY5IC04My45MTUpIiBmaWxsPSIjZmZmIi8+DQogICAgPHBhdGggaWQ9IlRyYXphZG9fMTMxMCIgZGF0YS1uYW1lPSJUcmF6YWRvIDEzMTAiIGQ9Ik0zMjUuMDU1LDk2LjdWOTMuMjI3YzAtMi4yNTUsMS40LTMuMDk0LDMuMjEyLTMuMDk0czMuMjI1LjgzOSwzLjIyNSwzLjA5NFY5Ni43YzAsMi4yNTUtMS40MTYsMy4wOTQtMy4yMjUsMy4wOTRzLTMuMjEyLS44MzktMy4yMTItMy4wOTRtNC4zOTEtMy40NzRjMC0uOS0uNDQ1LTEuMzExLTEuMTgtMS4zMTFzLTEuMTY3LjQwNi0xLjE2NywxLjMxMVY5Ni43YzAsLjkuNDMzLDEuMzExLDEuMTY3LDEuMzExczEuMTgtLjQwNiwxLjE4LTEuMzExWiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTMwMi42MjkgLTgzLjkxNSkiIGZpbGw9IiNmZmYiLz4NCiAgICA8cGF0aCBpZD0iVHJhemFkb18xMzExIiBkYXRhLW5hbWU9IlRyYXphZG8gMTMxMSIgZD0iTTQxMi40NTcsNi4yMDlhMy4xLDMuMSwwLDEsMSwzLjEtMy4xLDMuMTA4LDMuMTA4LDAsMCwxLTMuMSwzLjFtMC00LjE0QTEuMDM1LDEuMDM1LDAsMSwwLDQxMy40OTIsMy4xYTEuMDM2LDEuMDM2LDAsMCwwLTEuMDM1LTEuMDM1IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMzgxLjExKSIgZmlsbD0iI2ZmZiIvPg0KICA8L2c+DQo8L3N2Zz4NCg==\"","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"lele-module--mainContainer--eZ1gn\",\"firstContainer\":\"lele-module--firstContainer--1LP_n\",\"infoContainer\":\"lele-module--infoContainer--2g_q1\",\"titleContainer\":\"lele-module--titleContainer--12Dij\",\"leleTitle\":\"lele-module--leleTitle--1uRGr\",\"leleTitle2\":\"lele-module--leleTitle2--25ohf\",\"leleDescriptionContainer\":\"lele-module--leleDescriptionContainer--2PL5k\",\"leleDescription\":\"lele-module--leleDescription--2NyKB\",\"leleDescriptionContainer2\":\"lele-module--leleDescriptionContainer2--2CR4b\",\"leleDescription2\":\"lele-module--leleDescription2--3Z5fc\",\"secondContainer\":\"lele-module--secondContainer--2BZLp\",\"leleImgContainer\":\"lele-module--leleImgContainer--28gTF\",\"foodImg\":\"lele-module--foodImg--37_BO\",\"top1\":\"lele-module--top1--10QWR\",\"orangeBar\":\"lele-module--orangeBar--3jYjL\",\"gradient\":\"lele-module--gradient--3DK5J\",\"leleContainer\":\"lele-module--leleContainer--3AUHk\",\"textContainer\":\"lele-module--textContainer--2dGly\",\"leleText\":\"lele-module--leleText--MIG3k\",\"leleText2\":\"lele-module--leleText2--3bvb2\",\"descriptionContainer\":\"lele-module--descriptionContainer--6dcST\",\"endContainer\":\"lele-module--endContainer--S9W64\",\"prevContainer\":\"lele-module--prevContainer--15Ao6\",\"prevText\":\"lele-module--prevText--1Nows\",\"arrowDownContainer\":\"lele-module--arrowDownContainer--1SybO\",\"arrowDown\":\"lele-module--arrowDown--2mfBU\"};","module.exports = __webpack_public_path__ + \"static/LCDQ_blanco-296a534608e84d591c5910474617f800.png\";","// extracted by mini-css-extract-plugin\nmodule.exports = {\"mainContainer\":\"reservaStep3-module--mainContainer--20W0F\",\"headerContainer\":\"reservaStep3-module--headerContainer--FR9os\",\"pagoExitosoContainer\":\"reservaStep3-module--pagoExitosoContainer--l_dlK\",\"titleContainer\":\"reservaStep3-module--titleContainer--Mq9SK\",\"pagoExitosoText\":\"reservaStep3-module--pagoExitosoText--1Dehp\",\"pagoExitosoSubText\":\"reservaStep3-module--pagoExitosoSubText--23MJf\",\"subTitleContainer\":\"reservaStep3-module--subTitleContainer--15qwc\",\"stepsContainer\":\"reservaStep3-module--stepsContainer--2edse\",\"step\":\"reservaStep3-module--step--12WDC\",\"step2\":\"reservaStep3-module--step2--1Aua5\",\"stepNumb\":\"reservaStep3-module--stepNumb--3MQ9P\",\"stepText\":\"reservaStep3-module--stepText--1EGz-\",\"stepText2\":\"reservaStep3-module--stepText2--2Ccqa\",\"blueBar\":\"reservaStep3-module--blueBar--12Egz\",\"blueBar1\":\"reservaStep3-module--blueBar1--3KQh3\",\"greyBar1\":\"reservaStep3-module--greyBar1--2YopI\",\"greyBar\":\"reservaStep3-module--greyBar--3Ic1N\",\"selectsContainer\":\"reservaStep3-module--selectsContainer--woSdj\",\"selectTitleContainer\":\"reservaStep3-module--selectTitleContainer--2ax-k\",\"selectTitle\":\"reservaStep3-module--selectTitle--3Tg9G\",\"select\":\"reservaStep3-module--select--1HBGc\",\"personasSelect\":\"reservaStep3-module--personasSelect--2wA8K\",\"pText\":\"reservaStep3-module--pText--1bceJ\",\"verDispContainer\":\"reservaStep3-module--verDispContainer--3Di3R\",\"dispText\":\"reservaStep3-module--dispText--Miu5n\",\"cleanContainer\":\"reservaStep3-module--cleanContainer--uRJDB\",\"cleanText\":\"reservaStep3-module--cleanText--IC9dK\",\"completaTusDatosContainer\":\"reservaStep3-module--completaTusDatosContainer--201SO\",\"datosTitleContainer\":\"reservaStep3-module--datosTitleContainer--1nsgy\",\"datosTitle\":\"reservaStep3-module--datosTitle--2af1f\",\"collapseNameText\":\"reservaStep3-module--collapseNameText--2tWpi\",\"horarioTitleContainer\":\"reservaStep3-module--horarioTitleContainer--3Sumt\",\"selectHourContainer\":\"reservaStep3-module--selectHourContainer--tRO6H\",\"cardPickerContainer\":\"reservaStep3-module--cardPickerContainer--2N4oW\",\"cardPicker\":\"reservaStep3-module--cardPicker--1nwWr\",\"cardinfo1\":\"reservaStep3-module--cardinfo1--_OU3c\",\"tourName\":\"reservaStep3-module--tourName--1b6mc\",\"subTitle\":\"reservaStep3-module--subTitle--3Ni4H\",\"cardTitle\":\"reservaStep3-module--cardTitle--2AM_V\",\"buttonContainer\":\"reservaStep3-module--buttonContainer--3dGDD\",\"buttonReserva\":\"reservaStep3-module--buttonReserva--2p9Ul\",\"buttonText\":\"reservaStep3-module--buttonText--wr5Qo\",\"checkContainer\":\"reservaStep3-module--checkContainer--2hNPc\",\"checkmark\":\"reservaStep3-module--checkmark--1Q0cM\"};","var basePropertyOf = require('./_basePropertyOf');\n\n/** Used to map Latin Unicode letters to basic Latin letters. */\nvar deburredLetters = {\n // Latin-1 Supplement block.\n '\\xc0': 'A', '\\xc1': 'A', '\\xc2': 'A', '\\xc3': 'A', '\\xc4': 'A', '\\xc5': 'A',\n '\\xe0': 'a', '\\xe1': 'a', '\\xe2': 'a', '\\xe3': 'a', '\\xe4': 'a', '\\xe5': 'a',\n '\\xc7': 'C', '\\xe7': 'c',\n '\\xd0': 'D', '\\xf0': 'd',\n '\\xc8': 'E', '\\xc9': 'E', '\\xca': 'E', '\\xcb': 'E',\n '\\xe8': 'e', '\\xe9': 'e', '\\xea': 'e', '\\xeb': 'e',\n '\\xcc': 'I', '\\xcd': 'I', '\\xce': 'I', '\\xcf': 'I',\n '\\xec': 'i', '\\xed': 'i', '\\xee': 'i', '\\xef': 'i',\n '\\xd1': 'N', '\\xf1': 'n',\n '\\xd2': 'O', '\\xd3': 'O', '\\xd4': 'O', '\\xd5': 'O', '\\xd6': 'O', '\\xd8': 'O',\n '\\xf2': 'o', '\\xf3': 'o', '\\xf4': 'o', '\\xf5': 'o', '\\xf6': 'o', '\\xf8': 'o',\n '\\xd9': 'U', '\\xda': 'U', '\\xdb': 'U', '\\xdc': 'U',\n '\\xf9': 'u', '\\xfa': 'u', '\\xfb': 'u', '\\xfc': 'u',\n '\\xdd': 'Y', '\\xfd': 'y', '\\xff': 'y',\n '\\xc6': 'Ae', '\\xe6': 'ae',\n '\\xde': 'Th', '\\xfe': 'th',\n '\\xdf': 'ss',\n // Latin Extended-A block.\n '\\u0100': 'A', '\\u0102': 'A', '\\u0104': 'A',\n '\\u0101': 'a', '\\u0103': 'a', '\\u0105': 'a',\n '\\u0106': 'C', '\\u0108': 'C', '\\u010a': 'C', '\\u010c': 'C',\n '\\u0107': 'c', '\\u0109': 'c', '\\u010b': 'c', '\\u010d': 'c',\n '\\u010e': 'D', '\\u0110': 'D', '\\u010f': 'd', '\\u0111': 'd',\n '\\u0112': 'E', '\\u0114': 'E', '\\u0116': 'E', '\\u0118': 'E', '\\u011a': 'E',\n '\\u0113': 'e', '\\u0115': 'e', '\\u0117': 'e', '\\u0119': 'e', '\\u011b': 'e',\n '\\u011c': 'G', '\\u011e': 'G', '\\u0120': 'G', '\\u0122': 'G',\n '\\u011d': 'g', '\\u011f': 'g', '\\u0121': 'g', '\\u0123': 'g',\n '\\u0124': 'H', '\\u0126': 'H', '\\u0125': 'h', '\\u0127': 'h',\n '\\u0128': 'I', '\\u012a': 'I', '\\u012c': 'I', '\\u012e': 'I', '\\u0130': 'I',\n '\\u0129': 'i', '\\u012b': 'i', '\\u012d': 'i', '\\u012f': 'i', '\\u0131': 'i',\n '\\u0134': 'J', '\\u0135': 'j',\n '\\u0136': 'K', '\\u0137': 'k', '\\u0138': 'k',\n '\\u0139': 'L', '\\u013b': 'L', '\\u013d': 'L', '\\u013f': 'L', '\\u0141': 'L',\n '\\u013a': 'l', '\\u013c': 'l', '\\u013e': 'l', '\\u0140': 'l', '\\u0142': 'l',\n '\\u0143': 'N', '\\u0145': 'N', '\\u0147': 'N', '\\u014a': 'N',\n '\\u0144': 'n', '\\u0146': 'n', '\\u0148': 'n', '\\u014b': 'n',\n '\\u014c': 'O', '\\u014e': 'O', '\\u0150': 'O',\n '\\u014d': 'o', '\\u014f': 'o', '\\u0151': 'o',\n '\\u0154': 'R', '\\u0156': 'R', '\\u0158': 'R',\n '\\u0155': 'r', '\\u0157': 'r', '\\u0159': 'r',\n '\\u015a': 'S', '\\u015c': 'S', '\\u015e': 'S', '\\u0160': 'S',\n '\\u015b': 's', '\\u015d': 's', '\\u015f': 's', '\\u0161': 's',\n '\\u0162': 'T', '\\u0164': 'T', '\\u0166': 'T',\n '\\u0163': 't', '\\u0165': 't', '\\u0167': 't',\n '\\u0168': 'U', '\\u016a': 'U', '\\u016c': 'U', '\\u016e': 'U', '\\u0170': 'U', '\\u0172': 'U',\n '\\u0169': 'u', '\\u016b': 'u', '\\u016d': 'u', '\\u016f': 'u', '\\u0171': 'u', '\\u0173': 'u',\n '\\u0174': 'W', '\\u0175': 'w',\n '\\u0176': 'Y', '\\u0177': 'y', '\\u0178': 'Y',\n '\\u0179': 'Z', '\\u017b': 'Z', '\\u017d': 'Z',\n '\\u017a': 'z', '\\u017c': 'z', '\\u017e': 'z',\n '\\u0132': 'IJ', '\\u0133': 'ij',\n '\\u0152': 'Oe', '\\u0153': 'oe',\n '\\u0149': \"'n\", '\\u017f': 's'\n};\n\n/**\n * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A\n * letters to basic Latin letters.\n *\n * @private\n * @param {string} letter The matched letter to deburr.\n * @returns {string} Returns the deburred letter.\n */\nvar deburrLetter = basePropertyOf(deburredLetters);\n\nmodule.exports = deburrLetter;\n","/** Used to compose unicode character classes. */\nvar rsAstralRange = '\\\\ud800-\\\\udfff',\n rsComboMarksRange = '\\\\u0300-\\\\u036f',\n reComboHalfMarksRange = '\\\\ufe20-\\\\ufe2f',\n rsComboSymbolsRange = '\\\\u20d0-\\\\u20ff',\n rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,\n rsVarRange = '\\\\ufe0e\\\\ufe0f';\n\n/** Used to compose unicode capture groups. */\nvar rsZWJ = '\\\\u200d';\n\n/** Used to detect strings with [zero-width joiners or code points from the astral planes](http://eev.ee/blog/2015/09/12/dark-corners-of-unicode/). */\nvar reHasUnicode = RegExp('[' + rsZWJ + rsAstralRange + rsComboRange + rsVarRange + ']');\n\n/**\n * Checks if `string` contains Unicode symbols.\n *\n * @private\n * @param {string} string The string to inspect.\n * @returns {boolean} Returns `true` if a symbol is found, else `false`.\n */\nfunction hasUnicode(string) {\n return reHasUnicode.test(string);\n}\n\nmodule.exports = hasUnicode;\n","var arrayReduce = require('./_arrayReduce'),\n deburr = require('./deburr'),\n words = require('./words');\n\n/** Used to compose unicode capture groups. */\nvar rsApos = \"['\\u2019]\";\n\n/** Used to match apostrophes. */\nvar reApos = RegExp(rsApos, 'g');\n\n/**\n * Creates a function like `_.camelCase`.\n *\n * @private\n * @param {Function} callback The function to combine each word.\n * @returns {Function} Returns the new compounder function.\n */\nfunction createCompounder(callback) {\n return function(string) {\n return arrayReduce(words(deburr(string).replace(reApos, '')), callback, '');\n };\n}\n\nmodule.exports = createCompounder;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"top1\":\"comoLlegar-module--top1--32u2f\",\"rectangle\":\"comoLlegar-module--rectangle--4A-oY\",\"firstContainer\":\"comoLlegar-module--firstContainer--3BKEG\",\"covidContextContainer\":\"comoLlegar-module--covidContextContainer--39_eB\",\"titleCovidContexContainer\":\"comoLlegar-module--titleCovidContexContainer--tcA1e\",\"pointsCovidContexContainer\":\"comoLlegar-module--pointsCovidContexContainer--2BWc-\",\"titleCovidContext\":\"comoLlegar-module--titleCovidContext--DfQwi\",\"pointsCovidContext\":\"comoLlegar-module--pointsCovidContext--2vmAa\",\"comoLlegarContainer\":\"comoLlegar-module--comoLlegarContainer--2pbc1\",\"comoLlegarTitle\":\"comoLlegar-module--comoLlegarTitle--2o35Z\",\"blueBar\":\"comoLlegar-module--blueBar--1j7ey\",\"secondContainer\":\"comoLlegar-module--secondContainer--2IdJg\",\"googleMapsIframe\":\"comoLlegar-module--googleMapsIframe--I5aTw\",\"textSecondContainer\":\"comoLlegar-module--textSecondContainer--1IUzo\",\"textInfoContainer\":\"comoLlegar-module--textInfoContainer--1bQ1p\",\"mediosDeTransporte\":\"comoLlegar-module--mediosDeTransporte--3_EGw\",\"deskDescription\":\"comoLlegar-module--deskDescription--2Kw3V\",\"transportationLink\":\"comoLlegar-module--transportationLink--1HRQg\",\"puntoDeEncuentro\":\"comoLlegar-module--puntoDeEncuentro--2i2rd\",\"buttonContainer\":\"comoLlegar-module--buttonContainer--2gX1g\",\"button\":\"comoLlegar-module--button--1XA4w\",\"cabifyContainer\":\"comoLlegar-module--cabifyContainer--3pRWM\",\"titleContainer\":\"comoLlegar-module--titleContainer--3T8-G\",\"cabify\":\"comoLlegar-module--cabify--2zzyP\",\"descriptionContainer1\":\"comoLlegar-module--descriptionContainer1--FH8gj\",\"description\":\"comoLlegar-module--description--3fodQ\",\"description2\":\"comoLlegar-module--description2--1L3rW\",\"mainContainer\":\"comoLlegar-module--mainContainer--1tUEZ\",\"orangeBar\":\"comoLlegar-module--orangeBar--2Bn3B\",\"textContainer\":\"comoLlegar-module--textContainer--1cVqq\",\"titulo\":\"comoLlegar-module--titulo--2cD_H\",\"textContainer2\":\"comoLlegar-module--textContainer2--3JrMG\",\"titulo2\":\"comoLlegar-module--titulo2--s1N2b\",\"textContainer3\":\"comoLlegar-module--textContainer3--2u9O3\",\"titulo3\":\"comoLlegar-module--titulo3--3FHSp\",\"titulo4\":\"comoLlegar-module--titulo4--3TWDX\",\"descriptionContainer\":\"comoLlegar-module--descriptionContainer--3ZkMT\",\"leleDescription\":\"comoLlegar-module--leleDescription--12iNP\",\"endContainer\":\"comoLlegar-module--endContainer--2Dny_\",\"prevContainer\":\"comoLlegar-module--prevContainer--1qj6u\",\"prevText\":\"comoLlegar-module--prevText--2UjC6\",\"arrowDown\":\"comoLlegar-module--arrowDown--1j6t1\"};","var capitalize = require('./capitalize'),\n createCompounder = require('./_createCompounder');\n\n/**\n * Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category String\n * @param {string} [string=''] The string to convert.\n * @returns {string} Returns the camel cased string.\n * @example\n *\n * _.camelCase('Foo Bar');\n * // => 'fooBar'\n *\n * _.camelCase('--foo-bar--');\n * // => 'fooBar'\n *\n * _.camelCase('__FOO_BAR__');\n * // => 'fooBar'\n */\nvar camelCase = createCompounder(function(result, word, index) {\n word = word.toLowerCase();\n return result + (index ? capitalize(word) : word);\n});\n\nmodule.exports = camelCase;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"top1\":\"home-module--top1--JmRol\",\"backgroundVideo\":\"home-module--backgroundVideo--2rRDX\",\"mainContainer\":\"home-module--mainContainer--aMq3J\",\"textContainer\":\"home-module--textContainer--2NSvb\",\"home130text\":\"home-module--home-130text--3DwAl\",\"invitationMobileContainer\":\"home-module--invitationMobileContainer--18dmg\",\"cuandoVenisContainer\":\"home-module--cuandoVenisContainer--21npX\",\"cuandoVenisTexto\":\"home-module--cuandoVenisTexto--2zOvX\",\"cuandoVenisSelectContainer\":\"home-module--cuandoVenisSelectContainer--1OeQ9\",\"personasSelect\":\"home-module--personasSelect--3e9s2\",\"cuandoVenisTexto2\":\"home-module--cuandoVenisTexto2--8Vw--\",\"pText\":\"home-module--pText--3vqM5\",\"reserva\":\"home-module--reserva--1l7Lw\",\"reservaDeshabilitada\":\"home-module--reservaDeshabilitada--3kaX6\",\"botonReserva\":\"home-module--botonReserva--3Ch6x\",\"beerContainer\":\"home-module--beerContainer--1Aqpr\",\"cuandoVenisTexto3\":\"home-module--cuandoVenisTexto3--3K40D\",\"arrowMain\":\"home-module--arrowMain--2UTu5\",\"arrowImage\":\"home-module--arrowImage--1wWki\",\"circle\":\"home-module--circle--3tRQE\",\"circleFixed\":\"home-module--circleFixed--3yOJn\",\"hidden\":\"home-module--hidden--zSJed\"};","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(id);\n return caf(realId);\n};\nif (process.env.NODE_ENV !== 'production') {\n wrapperRaf.ids = function () {\n return rafIds;\n };\n}\nexport default wrapperRaf;","var baseSlice = require('./_baseSlice');\n\n/**\n * Casts `array` to a slice if it's needed.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {number} start The start position.\n * @param {number} [end=array.length] The end position.\n * @returns {Array} Returns the cast slice.\n */\nfunction castSlice(array, start, end) {\n var length = array.length;\n end = end === undefined ? length : end;\n return (!start && end >= length) ? array : baseSlice(array, start, end);\n}\n\nmodule.exports = castSlice;\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"content\":\"layoutTour-module--content--2M9Si\",\"reserva\":\"layoutTour-module--reserva--VSN5c\",\"none\":\"layoutTour-module--none--3pZLm\"};","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});","/**\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;","/**\n * BaseSelect provide some parsed data into context.\n * You can use this hooks to get them.\n */\n\nimport * as React from 'react';\nexport var BaseSelectContext = /*#__PURE__*/React.createContext(null);\nexport default function useBaseProps() {\n return React.useContext(BaseSelectContext);\n}","import * as React from 'react';\n\n/**\n * Locker return cached mark.\n * If set to `true`, will return `true` in a short time even if set `false`.\n * If set to `false` and then set to `true`, will change to `true`.\n * And after time duration, it will back to `null` automatically.\n */\nexport default function useLock() {\n var duration = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 250;\n var lockRef = React.useRef(null);\n var timeoutRef = React.useRef(null);\n\n // Clean up\n React.useEffect(function () {\n return function () {\n window.clearTimeout(timeoutRef.current);\n };\n }, []);\n function doLock(locked) {\n if (locked || lockRef.current === null) {\n lockRef.current = locked;\n }\n window.clearTimeout(timeoutRef.current);\n timeoutRef.current = window.setTimeout(function () {\n lockRef.current = null;\n }, duration);\n }\n return [function () {\n return lockRef.current;\n }, doLock];\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 * 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 || onBatchResize(resizeInfosRef.current);\n resizeInfosRef.current = [];\n }\n });\n\n // Continue bubbling if parent exist\n onCollectionResize === null || onCollectionResize === void 0 || onCollectionResize(size, element, data);\n }, [onBatchResize, onCollectionResize]);\n return /*#__PURE__*/React.createElement(CollectionContext.Provider, {\n value: onResize\n }, children);\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 || _elementListeners$get.forEach(function (listener) {\n return listener(target);\n });\n });\n}\n\n// Note: ResizeObserver polyfill not support option to measure border-box resize\nvar resizeObserver = new ResizeObserver(onResize);\n\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\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 _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport { supportRef, useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { CollectionContext } from \"../Collection\";\nimport { observe, unobserve } from \"../utils/observerUtil\";\nimport DomWrapper from \"./DomWrapper\";\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\n // =========================== Children ===========================\n var isRenderProps = typeof children === 'function';\n var mergedChildren = isRenderProps ? children(elementRef) : children;\n\n // ============================= Size =============================\n var sizeRef = React.useRef({\n width: -1,\n height: -1,\n offsetWidth: -1,\n offsetHeight: -1\n });\n\n // ============================= Ref ==============================\n var canRef = !isRenderProps && /*#__PURE__*/React.isValidElement(mergedChildren) && supportRef(mergedChildren);\n var originRef = canRef ? mergedChildren.ref : null;\n var mergedRef = useComposeRef(originRef, elementRef);\n var getDom = function getDom() {\n var _elementRef$current;\n return findDOMNode(elementRef.current) || (\n // Support `nativeElement` format\n elementRef.current && _typeof(elementRef.current) === 'object' ? findDOMNode((_elementRef$current = elementRef.current) === null || _elementRef$current === void 0 ? void 0 : _elementRef$current.nativeElement) : null) || findDOMNode(wrapperRef.current);\n };\n React.useImperativeHandle(ref, function () {\n return getDom();\n });\n\n // =========================== Observe ============================\n var propsRef = React.useRef(props);\n propsRef.current = props;\n\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 /**\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\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\n // Let collection know what happened\n onCollectionResize === null || onCollectionResize === 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\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\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 _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 React from 'react';\nexport var OverflowContext = /*#__PURE__*/React.createContext(null);","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 './context';\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';\nimport { OverflowContext } from './context';\nvar RESPONSIVE = 'responsive';\nvar INVALIDATE = 'invalidate';\nexport { OverflowContext } from './context';\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 Overflow from './Overflow';\nexport default Overflow;","import * as React from 'react';\nimport classNames from 'classnames';\nvar TransBtn = function TransBtn(_ref) {\n var className = _ref.className,\n customizeIcon = _ref.customizeIcon,\n customizeIconProps = _ref.customizeIconProps,\n _onMouseDown = _ref.onMouseDown,\n onClick = _ref.onClick,\n children = _ref.children;\n var icon;\n if (typeof customizeIcon === 'function') {\n icon = customizeIcon(customizeIconProps);\n } else {\n icon = customizeIcon;\n }\n return /*#__PURE__*/React.createElement(\"span\", {\n className: className,\n onMouseDown: function onMouseDown(event) {\n event.preventDefault();\n if (_onMouseDown) {\n _onMouseDown(event);\n }\n },\n style: {\n userSelect: 'none',\n WebkitUserSelect: 'none'\n },\n unselectable: \"on\",\n onClick: onClick,\n \"aria-hidden\": true\n }, icon !== undefined ? icon : /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(className.split(/\\s+/).map(function (cls) {\n return \"\".concat(cls, \"-icon\");\n }))\n }, children));\n};\nexport default TransBtn;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport { composeRef } from \"rc-util/es/ref\";\nimport { warning } from \"rc-util/es/warning\";\nvar Input = function Input(_ref, ref) {\n var _inputNode2, _inputNode2$props;\n var prefixCls = _ref.prefixCls,\n id = _ref.id,\n inputElement = _ref.inputElement,\n disabled = _ref.disabled,\n tabIndex = _ref.tabIndex,\n autoFocus = _ref.autoFocus,\n autoComplete = _ref.autoComplete,\n editable = _ref.editable,\n activeDescendantId = _ref.activeDescendantId,\n value = _ref.value,\n maxLength = _ref.maxLength,\n _onKeyDown = _ref.onKeyDown,\n _onMouseDown = _ref.onMouseDown,\n _onChange = _ref.onChange,\n onPaste = _ref.onPaste,\n _onCompositionStart = _ref.onCompositionStart,\n _onCompositionEnd = _ref.onCompositionEnd,\n open = _ref.open,\n attrs = _ref.attrs;\n var inputNode = inputElement || /*#__PURE__*/React.createElement(\"input\", null);\n var _inputNode = inputNode,\n originRef = _inputNode.ref,\n originProps = _inputNode.props;\n var onOriginKeyDown = originProps.onKeyDown,\n onOriginChange = originProps.onChange,\n onOriginMouseDown = originProps.onMouseDown,\n onOriginCompositionStart = originProps.onCompositionStart,\n onOriginCompositionEnd = originProps.onCompositionEnd,\n style = originProps.style;\n warning(!('maxLength' in inputNode.props), \"Passing 'maxLength' to input element directly may not work because input in BaseSelect is controlled.\");\n inputNode = /*#__PURE__*/React.cloneElement(inputNode, _objectSpread(_objectSpread(_objectSpread({\n type: 'search'\n }, originProps), {}, {\n // Override over origin props\n id: id,\n ref: composeRef(ref, originRef),\n disabled: disabled,\n tabIndex: tabIndex,\n autoComplete: autoComplete || 'off',\n autoFocus: autoFocus,\n className: classNames(\"\".concat(prefixCls, \"-selection-search-input\"), (_inputNode2 = inputNode) === null || _inputNode2 === void 0 ? void 0 : (_inputNode2$props = _inputNode2.props) === null || _inputNode2$props === void 0 ? void 0 : _inputNode2$props.className),\n role: 'combobox',\n 'aria-expanded': open,\n 'aria-haspopup': 'listbox',\n 'aria-owns': \"\".concat(id, \"_list\"),\n 'aria-autocomplete': 'list',\n 'aria-controls': \"\".concat(id, \"_list\"),\n 'aria-activedescendant': activeDescendantId\n }, attrs), {}, {\n value: editable ? value : '',\n maxLength: maxLength,\n readOnly: !editable,\n unselectable: !editable ? 'on' : null,\n style: _objectSpread(_objectSpread({}, style), {}, {\n opacity: editable ? null : 0\n }),\n onKeyDown: function onKeyDown(event) {\n _onKeyDown(event);\n if (onOriginKeyDown) {\n onOriginKeyDown(event);\n }\n },\n onMouseDown: function onMouseDown(event) {\n _onMouseDown(event);\n if (onOriginMouseDown) {\n onOriginMouseDown(event);\n }\n },\n onChange: function onChange(event) {\n _onChange(event);\n if (onOriginChange) {\n onOriginChange(event);\n }\n },\n onCompositionStart: function onCompositionStart(event) {\n _onCompositionStart(event);\n if (onOriginCompositionStart) {\n onOriginCompositionStart(event);\n }\n },\n onCompositionEnd: function onCompositionEnd(event) {\n _onCompositionEnd(event);\n if (onOriginCompositionEnd) {\n onOriginCompositionEnd(event);\n }\n },\n onPaste: onPaste\n }));\n return inputNode;\n};\nvar RefInput = /*#__PURE__*/React.forwardRef(Input);\nRefInput.displayName = 'Input';\nexport default RefInput;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nexport function toArray(value) {\n if (Array.isArray(value)) {\n return value;\n }\n return value !== undefined ? [value] : [];\n}\nexport var isClient = typeof window !== 'undefined' && window.document && window.document.documentElement;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && isClient;\nexport function hasValue(value) {\n return value !== undefined && value !== null;\n}\nfunction isTitleType(title) {\n return ['string', 'number'].includes(_typeof(title));\n}\nexport function getTitle(item) {\n var title = undefined;\n if (item) {\n if (isTitleType(item.title)) {\n title = item.title.toString();\n } else if (isTitleType(item.label)) {\n title = item.label.toString();\n }\n }\n return title;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useState } from 'react';\nimport classNames from 'classnames';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Overflow from 'rc-overflow';\nimport TransBtn from \"../TransBtn\";\nimport Input from \"./Input\";\nimport useLayoutEffect from \"../hooks/useLayoutEffect\";\nimport { getTitle } from \"../utils/commonUtil\";\nfunction itemKey(value) {\n var _value$key;\n return (_value$key = value.key) !== null && _value$key !== void 0 ? _value$key : value.value;\n}\nvar onPreventMouseDown = function onPreventMouseDown(event) {\n event.preventDefault();\n event.stopPropagation();\n};\nvar SelectSelector = function SelectSelector(props) {\n var id = props.id,\n prefixCls = props.prefixCls,\n values = props.values,\n open = props.open,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n inputRef = props.inputRef,\n placeholder = props.placeholder,\n disabled = props.disabled,\n mode = props.mode,\n showSearch = props.showSearch,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n tabIndex = props.tabIndex,\n removeIcon = props.removeIcon,\n maxTagCount = props.maxTagCount,\n maxTagTextLength = props.maxTagTextLength,\n _props$maxTagPlacehol = props.maxTagPlaceholder,\n maxTagPlaceholder = _props$maxTagPlacehol === void 0 ? function (omittedValues) {\n return \"+ \".concat(omittedValues.length, \" ...\");\n } : _props$maxTagPlacehol,\n tagRender = props.tagRender,\n onToggleOpen = props.onToggleOpen,\n onRemove = props.onRemove,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd;\n var measureRef = React.useRef(null);\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n inputWidth = _useState2[0],\n setInputWidth = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n focused = _useState4[0],\n setFocused = _useState4[1];\n var selectionPrefixCls = \"\".concat(prefixCls, \"-selection\");\n\n // ===================== Search ======================\n var inputValue = open || mode === \"multiple\" && autoClearSearchValue === false || mode === 'tags' ? searchValue : '';\n var inputEditable = mode === 'tags' || mode === \"multiple\" && autoClearSearchValue === false || showSearch && (open || focused);\n\n // We measure width and set to the input immediately\n useLayoutEffect(function () {\n setInputWidth(measureRef.current.scrollWidth);\n }, [inputValue]);\n\n // ===================== Render ======================\n // >>> Render Selector Node. Includes Item & Rest\n function defaultRenderSelector(item, content, itemDisabled, closable, onClose) {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: classNames(\"\".concat(selectionPrefixCls, \"-item\"), _defineProperty({}, \"\".concat(selectionPrefixCls, \"-item-disabled\"), itemDisabled)),\n title: getTitle(item)\n }, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-item-content\")\n }, content), closable && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(selectionPrefixCls, \"-item-remove\"),\n onMouseDown: onPreventMouseDown,\n onClick: onClose,\n customizeIcon: removeIcon\n }, \"\\xD7\"));\n }\n function customizeRenderSelector(value, content, itemDisabled, closable, onClose) {\n var onMouseDown = function onMouseDown(e) {\n onPreventMouseDown(e);\n onToggleOpen(!open);\n };\n return /*#__PURE__*/React.createElement(\"span\", {\n onMouseDown: onMouseDown\n }, tagRender({\n label: content,\n value: value,\n disabled: itemDisabled,\n closable: closable,\n onClose: onClose\n }));\n }\n function renderItem(valueItem) {\n var itemDisabled = valueItem.disabled,\n label = valueItem.label,\n value = valueItem.value;\n var closable = !disabled && !itemDisabled;\n var displayLabel = label;\n if (typeof maxTagTextLength === 'number') {\n if (typeof label === 'string' || typeof label === 'number') {\n var strLabel = String(displayLabel);\n if (strLabel.length > maxTagTextLength) {\n displayLabel = \"\".concat(strLabel.slice(0, maxTagTextLength), \"...\");\n }\n }\n }\n var onClose = function onClose(event) {\n if (event) event.stopPropagation();\n onRemove(valueItem);\n };\n return typeof tagRender === 'function' ? customizeRenderSelector(value, displayLabel, itemDisabled, closable, onClose) : defaultRenderSelector(valueItem, displayLabel, itemDisabled, closable, onClose);\n }\n function renderRest(omittedValues) {\n var content = typeof maxTagPlaceholder === 'function' ? maxTagPlaceholder(omittedValues) : maxTagPlaceholder;\n return defaultRenderSelector({\n title: content\n }, content, false);\n }\n\n // >>> Input Node\n var inputNode = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(selectionPrefixCls, \"-search\"),\n style: {\n width: inputWidth\n },\n onFocus: function onFocus() {\n setFocused(true);\n },\n onBlur: function onBlur() {\n setFocused(false);\n }\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n open: open,\n prefixCls: prefixCls,\n id: id,\n inputElement: null,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: onInputChange,\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true)\n }), /*#__PURE__*/React.createElement(\"span\", {\n ref: measureRef,\n className: \"\".concat(selectionPrefixCls, \"-search-mirror\"),\n \"aria-hidden\": true\n }, inputValue, \"\\xA0\"));\n\n // >>> Selections\n var selectionNode = /*#__PURE__*/React.createElement(Overflow, {\n prefixCls: \"\".concat(selectionPrefixCls, \"-overflow\"),\n data: values,\n renderItem: renderItem,\n renderRest: renderRest,\n suffix: inputNode,\n itemKey: itemKey,\n maxCount: maxTagCount\n });\n return /*#__PURE__*/React.createElement(React.Fragment, null, selectionNode, !values.length && !inputValue && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(selectionPrefixCls, \"-placeholder\")\n }, placeholder));\n};\nexport default SelectSelector;","/* eslint-disable react-hooks/rules-of-hooks */\nimport * as React from 'react';\nimport { isBrowserClient } from \"../utils/commonUtil\";\n\n/**\n * Wrap `React.useLayoutEffect` which will not throw warning message in test env\n */\nexport default function useLayoutEffect(effect, deps) {\n // Never happen in test env\n if (isBrowserClient) {\n /* istanbul ignore next */\n React.useLayoutEffect(effect, deps);\n } else {\n React.useEffect(effect, deps);\n }\n}\n/* eslint-enable */","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport Input from \"./Input\";\nimport { getTitle } from \"../utils/commonUtil\";\nvar SingleSelector = function SingleSelector(props) {\n var inputElement = props.inputElement,\n prefixCls = props.prefixCls,\n id = props.id,\n inputRef = props.inputRef,\n disabled = props.disabled,\n autoFocus = props.autoFocus,\n autoComplete = props.autoComplete,\n activeDescendantId = props.activeDescendantId,\n mode = props.mode,\n open = props.open,\n values = props.values,\n placeholder = props.placeholder,\n tabIndex = props.tabIndex,\n showSearch = props.showSearch,\n searchValue = props.searchValue,\n activeValue = props.activeValue,\n maxLength = props.maxLength,\n onInputKeyDown = props.onInputKeyDown,\n onInputMouseDown = props.onInputMouseDown,\n onInputChange = props.onInputChange,\n onInputPaste = props.onInputPaste,\n onInputCompositionStart = props.onInputCompositionStart,\n onInputCompositionEnd = props.onInputCompositionEnd;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n inputChanged = _React$useState2[0],\n setInputChanged = _React$useState2[1];\n var combobox = mode === 'combobox';\n var inputEditable = combobox || showSearch;\n var item = values[0];\n var inputValue = searchValue || '';\n if (combobox && activeValue && !inputChanged) {\n inputValue = activeValue;\n }\n React.useEffect(function () {\n if (combobox) {\n setInputChanged(false);\n }\n }, [combobox, activeValue]);\n\n // Not show text when closed expect combobox mode\n var hasTextInput = mode !== 'combobox' && !open && !showSearch ? false : !!inputValue;\n\n // Get title\n var title = getTitle(item);\n var renderPlaceholder = function renderPlaceholder() {\n if (item) {\n return null;\n }\n var hiddenStyle = hasTextInput ? {\n visibility: 'hidden'\n } : undefined;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-placeholder\"),\n style: hiddenStyle\n }, placeholder);\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-search\")\n }, /*#__PURE__*/React.createElement(Input, {\n ref: inputRef,\n prefixCls: prefixCls,\n id: id,\n open: open,\n inputElement: inputElement,\n disabled: disabled,\n autoFocus: autoFocus,\n autoComplete: autoComplete,\n editable: inputEditable,\n activeDescendantId: activeDescendantId,\n value: inputValue,\n onKeyDown: onInputKeyDown,\n onMouseDown: onInputMouseDown,\n onChange: function onChange(e) {\n setInputChanged(true);\n onInputChange(e);\n },\n onPaste: onInputPaste,\n onCompositionStart: onInputCompositionStart,\n onCompositionEnd: onInputCompositionEnd,\n tabIndex: tabIndex,\n attrs: pickAttrs(props, true),\n maxLength: combobox ? maxLength : undefined\n })), !combobox && item ? /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-selection-item\"),\n title: title\n // 当 Select 已经选中选项时,还需 selection 隐藏但留在原地占位\n // https://github.com/ant-design/ant-design/issues/27688\n // https://github.com/ant-design/ant-design/issues/41530\n ,\n\n style: hasTextInput ? {\n visibility: 'hidden'\n } : undefined\n }, item.label) : null, renderPlaceholder());\n};\nexport default SingleSelector;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/**\n * Cursor rule:\n * 1. Only `showSearch` enabled\n * 2. Only `open` is `true`\n * 3. When typing, set `open` to `true` which hit rule of 2\n *\n * Accessibility:\n * - https://www.w3.org/TR/wai-aria-practices/examples/combobox/aria1.1pattern/listbox-combo.html\n */\n\nimport * as React from 'react';\nimport { useRef } from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport MultipleSelector from \"./MultipleSelector\";\nimport SingleSelector from \"./SingleSelector\";\nimport useLock from \"../hooks/useLock\";\nimport { isValidateOpenKey } from \"../utils/keyUtil\";\nvar Selector = function Selector(props, ref) {\n var inputRef = useRef(null);\n var compositionStatusRef = useRef(false);\n var prefixCls = props.prefixCls,\n open = props.open,\n mode = props.mode,\n showSearch = props.showSearch,\n tokenWithEnter = props.tokenWithEnter,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSubmit = props.onSearchSubmit,\n onToggleOpen = props.onToggleOpen,\n onInputKeyDown = props.onInputKeyDown,\n domRef = props.domRef;\n\n // ======================= Ref =======================\n React.useImperativeHandle(ref, function () {\n return {\n focus: function focus() {\n inputRef.current.focus();\n },\n blur: function blur() {\n inputRef.current.blur();\n }\n };\n });\n\n // ====================== Input ======================\n var _useLock = useLock(0),\n _useLock2 = _slicedToArray(_useLock, 2),\n getInputMouseDown = _useLock2[0],\n setInputMouseDown = _useLock2[1];\n var onInternalInputKeyDown = function onInternalInputKeyDown(event) {\n var which = event.which;\n if (which === KeyCode.UP || which === KeyCode.DOWN) {\n event.preventDefault();\n }\n if (onInputKeyDown) {\n onInputKeyDown(event);\n }\n if (which === KeyCode.ENTER && mode === 'tags' && !compositionStatusRef.current && !open) {\n // When menu isn't open, OptionList won't trigger a value change\n // So when enter is pressed, the tag's input value should be emitted here to let selector know\n onSearchSubmit === null || onSearchSubmit === void 0 ? void 0 : onSearchSubmit(event.target.value);\n }\n if (isValidateOpenKey(which)) {\n onToggleOpen(true);\n }\n };\n\n /**\n * We can not use `findDOMNode` sine it will get warning,\n * have to use timer to check if is input element.\n */\n var onInternalInputMouseDown = function onInternalInputMouseDown() {\n setInputMouseDown(true);\n };\n\n // When paste come, ignore next onChange\n var pastedTextRef = useRef(null);\n var triggerOnSearch = function triggerOnSearch(value) {\n if (onSearch(value, true, compositionStatusRef.current) !== false) {\n onToggleOpen(true);\n }\n };\n var onInputCompositionStart = function onInputCompositionStart() {\n compositionStatusRef.current = true;\n };\n var onInputCompositionEnd = function onInputCompositionEnd(e) {\n compositionStatusRef.current = false;\n\n // Trigger search again to support `tokenSeparators` with typewriting\n if (mode !== 'combobox') {\n triggerOnSearch(e.target.value);\n }\n };\n var onInputChange = function onInputChange(event) {\n var value = event.target.value;\n\n // Pasted text should replace back to origin content\n if (tokenWithEnter && pastedTextRef.current && /[\\r\\n]/.test(pastedTextRef.current)) {\n // CRLF will be treated as a single space for input element\n var replacedText = pastedTextRef.current.replace(/[\\r\\n]+$/, '').replace(/\\r\\n/g, ' ').replace(/[\\r\\n]/g, ' ');\n value = value.replace(replacedText, pastedTextRef.current);\n }\n pastedTextRef.current = null;\n triggerOnSearch(value);\n };\n var onInputPaste = function onInputPaste(e) {\n var clipboardData = e.clipboardData;\n var value = clipboardData.getData('text');\n pastedTextRef.current = value;\n };\n var onClick = function onClick(_ref) {\n var target = _ref.target;\n if (target !== inputRef.current) {\n // Should focus input if click the selector\n var isIE = document.body.style.msTouchAction !== undefined;\n if (isIE) {\n setTimeout(function () {\n inputRef.current.focus();\n });\n } else {\n inputRef.current.focus();\n }\n }\n };\n var onMouseDown = function onMouseDown(event) {\n var inputMouseDown = getInputMouseDown();\n\n // when mode is combobox, don't prevent default behavior\n // https://github.com/ant-design/ant-design/issues/37320\n if (event.target !== inputRef.current && !inputMouseDown && mode !== 'combobox') {\n event.preventDefault();\n }\n if (mode !== 'combobox' && (!showSearch || !inputMouseDown) || !open) {\n if (open && autoClearSearchValue !== false) {\n onSearch('', true, false);\n }\n onToggleOpen();\n }\n };\n\n // ================= Inner Selector ==================\n var sharedProps = {\n inputRef: inputRef,\n onInputKeyDown: onInternalInputKeyDown,\n onInputMouseDown: onInternalInputMouseDown,\n onInputChange: onInputChange,\n onInputPaste: onInputPaste,\n onInputCompositionStart: onInputCompositionStart,\n onInputCompositionEnd: onInputCompositionEnd\n };\n var selectNode = mode === 'multiple' || mode === 'tags' ? /*#__PURE__*/React.createElement(MultipleSelector, _extends({}, props, sharedProps)) : /*#__PURE__*/React.createElement(SingleSelector, _extends({}, props, sharedProps));\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: domRef,\n className: \"\".concat(prefixCls, \"-selector\"),\n onClick: onClick,\n onMouseDown: onMouseDown\n }, selectNode);\n};\nvar ForwardSelector = /*#__PURE__*/React.forwardRef(Selector);\nForwardSelector.displayName = 'Selector';\nexport default ForwardSelector;","import KeyCode from \"rc-util/es/KeyCode\";\n\n/** keyCode Judgment function */\nexport function isValidateOpenKey(currentKeyCode) {\n return ![\n // System function button\n KeyCode.ESC, KeyCode.SHIFT, KeyCode.BACKSPACE, KeyCode.TAB, KeyCode.WIN_KEY, KeyCode.ALT, KeyCode.META, KeyCode.WIN_KEY_RIGHT, KeyCode.CTRL, KeyCode.SEMICOLON, KeyCode.EQUALS, KeyCode.CAPS_LOCK, KeyCode.CONTEXT_MENU,\n // F1-F12\n KeyCode.F1, KeyCode.F2, KeyCode.F3, KeyCode.F4, KeyCode.F5, KeyCode.F6, KeyCode.F7, KeyCode.F8, KeyCode.F9, KeyCode.F10, KeyCode.F11, KeyCode.F12].includes(currentKeyCode);\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 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 !== null && target !== void 0 && target.addEventListener) {\n target.addEventListener(eventType, callback, option);\n }\n return {\n remove: function remove() {\n if (target !== null && target !== void 0 && target.removeEventListener) {\n target.removeEventListener(eventType, callback, option);\n }\n }\n };\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 || 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;\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 || (_containerRef$current = _containerRef$current.parentNode) === null || _containerRef$current === void 0 || _containerRef$current.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\";\nfunction isPointsEq(a1, a2, isAlignPoint) {\n if (isAlignPoint) {\n return a1[0] === a2[0];\n }\n return a1[0] === a2[0] && a1[1] === a2[1];\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 for (var i = 0; i < placements.length; i += 1) {\n var placement = placements[i];\n if (isPointsEq(builtinPlacements[placement].points, points, isAlignPoint)) {\n return \"\".concat(prefixCls, \"-placement-\").concat(placement);\n }\n }\n return '';\n}","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}\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}\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
\n
\n 元素 6 高 100px 宽 50px
\n
\n
\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}\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}\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}\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}\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 // 例如
\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}\nexport default alignElement;\nexport { alignElement, alignPoint };","export function getMotion(_ref) {\n var prefixCls = _ref.prefixCls,\n motion = _ref.motion,\n animation = _ref.animation,\n transitionName = _ref.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}","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 if (!mask) {\n return null;\n }\n var motion = {};\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 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}","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 _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 if ('pageX' in next && 'pageY' in next) {\n return prev.pageX === next.pageX && prev.pageY === next.pageY;\n }\n if ('clientX' in next && 'clientY' in next) {\n return prev.clientX === next.clientX && prev.clientY === next.clientY;\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 function onResize(_ref) {\n var _ref2 = _slicedToArray(_ref, 1),\n target = _ref2[0].target;\n if (!document.documentElement.contains(target)) return;\n var _target$getBoundingCl = target.getBoundingClientRect(),\n width = _target$getBoundingCl.width,\n height = _target$getBoundingCl.height;\n var fixedWidth = Math.floor(width);\n var fixedHeight = Math.floor(height);\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 prevWidth = fixedWidth;\n prevHeight = fixedHeight;\n }\n var resizeObserver = new ResizeObserver(onResize);\n if (element) {\n resizeObserver.observe(element);\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\";\nfunction getElement(func) {\n if (typeof func !== 'function') return null;\n return func();\n}\nfunction getPoint(point) {\n if (_typeof(point) !== 'object' || !point) return null;\n return point;\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 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 if (!latestDisabled && latestTarget && source) {\n var _result;\n var _element = getElement(latestTarget);\n var _point = getPoint(latestTarget);\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 restoreFocus(activeElement, source);\n if (latestOnAlign && _result) {\n latestOnAlign(source, _result);\n }\n return true;\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 var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n element = _React$useState2[0],\n setElement = _React$useState2[1];\n var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n point = _React$useState4[0],\n setPoint = _React$useState4[1];\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 return childNode;\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 function cancelTrigger() {\n window.clearTimeout(timeoutRef.current);\n }\n function trigger(force) {\n cancelTrigger();\n if (!calledRef.current || force === true) {\n if (callback(force) === false) {\n // Not delay since callback cancelled self\n return;\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 return [trigger, function () {\n calledRef.current = false;\n cancelTrigger();\n }];\n});","// export this package's api\nimport Align from \"./Align\";\nexport default Align;","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 var rafRef = useRef();\n function setStatus(nextStatus) {\n setInternalStatus(nextStatus, true);\n }\n function cancelRaf() {\n raf.cancel(rafRef.current);\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 case 'motion':\n return 'stable';\n default:\n }\n return prev;\n });\n callback === null || callback === void 0 ? void 0 : callback();\n });\n } // Init status\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 default:\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 if (nextStatus && index !== -1) {\n setStatus(nextStatus);\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 var _useState = useState(),\n _useState2 = _slicedToArray(_useState, 2),\n alignedClassName = _useState2[0],\n setAlignedClassName = _useState2[1]; // ======================= Measure ========================\n\n var _useStretchStyle = useStretchStyle(stretch),\n _useStretchStyle2 = _slicedToArray(_useStretchStyle, 2),\n stretchStyle = _useStretchStyle2[0],\n measureStretchStyle = _useStretchStyle2[1];\n function doMeasure() {\n if (stretch) {\n measureStretchStyle(getRootDomNode());\n }\n } // ======================== Status ========================\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 var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n alignTimes = _useState4[0],\n setAlignTimes = _useState4[1];\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 return getRootDomNode;\n }\n function forceAlign() {\n var _alignRef$current;\n (_alignRef$current = alignRef.current) === null || _alignRef$current === void 0 ? void 0 : _alignRef$current.forceAlign();\n }\n function onInternalAlign(popupDomNode, matchAlign) {\n var nextAlignedClassName = getClassNameFromAlign(matchAlign);\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 setAlignTimes(function (val) {\n return val + 1;\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 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 (_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 ['onAppearEnd', 'onEnterEnd', 'onLeaveEnd'].forEach(function (eventName) {\n var originHandler = motion[eventName];\n motion[eventName] = function (element, event) {\n goNextStatus();\n return originHandler === null || originHandler === void 0 ? void 0 : originHandler(element, event);\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 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 var alignDisabled = true;\n if (align !== null && align !== void 0 && align.points && (status === 'align' || status === 'stable')) {\n alignDisabled = false;\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 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 function measureStretch(element) {\n var tgtWidth = element.offsetWidth,\n tgtHeight = element.offsetHeight;\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 if (Math.abs(tgtWidth - width) < 1 && Math.abs(tgtHeight - height) < 1) {\n tgtWidth = width;\n tgtHeight = height;\n }\n setTargetSize({\n width: tgtWidth,\n height: tgtHeight\n });\n } // Merge stretch style\n\n var style = React.useMemo(function () {\n var sizeStyle = {};\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 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 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 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 if (popupRender) {\n childNode = popupRender(childNode);\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 var _useState = useState(visible),\n _useState2 = _slicedToArray(_useState, 2),\n innerVisible = _useState2[0],\n serInnerVisible = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n inMobile = _useState4[0],\n setInMobile = _useState4[1];\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 useEffect(function () {\n serInnerVisible(visible);\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\";\nfunction noop() {}\nfunction returnEmptyString() {\n return '';\n}\nfunction returnDocument(element) {\n if (element) {\n return element.ownerDocument;\n }\n return window.document;\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 var _super = _createSuper(Trigger);\n\n // ensure `getContainer` will be called only once\n function Trigger(props) {\n var _this;\n _classCallCheck(this, Trigger);\n _this = _super.call(this, props);\n _defineProperty(_assertThisInitialized(_this), \"popupRef\", /*#__PURE__*/React.createRef());\n _defineProperty(_assertThisInitialized(_this), \"triggerRef\", /*#__PURE__*/React.createRef());\n _defineProperty(_assertThisInitialized(_this), \"portalContainer\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"attachId\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"clickOutsideHandler\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"touchOutsideHandler\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler1\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"contextMenuOutsideHandler2\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"mouseDownTimeout\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"focusTime\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"preClickTime\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"preTouchTime\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"delayTimer\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"hasPopupMouseDown\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"onMouseEnter\", function (e) {\n var mouseEnterDelay = _this.props.mouseEnterDelay;\n _this.fireEvents('onMouseEnter', e);\n _this.delaySetPopupVisible(true, mouseEnterDelay, mouseEnterDelay ? null : e);\n });\n _defineProperty(_assertThisInitialized(_this), \"onMouseMove\", function (e) {\n _this.fireEvents('onMouseMove', e);\n _this.setPoint(e);\n });\n _defineProperty(_assertThisInitialized(_this), \"onMouseLeave\", function (e) {\n _this.fireEvents('onMouseLeave', e);\n _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n _defineProperty(_assertThisInitialized(_this), \"onPopupMouseEnter\", function () {\n _this.clearDelayTimer();\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 _this.delaySetPopupVisible(false, _this.props.mouseLeaveDelay);\n });\n _defineProperty(_assertThisInitialized(_this), \"onFocus\", function (e) {\n _this.fireEvents('onFocus', e); // incase focusin and focusout\n\n _this.clearDelayTimer();\n if (_this.isFocusToShow()) {\n _this.focusTime = Date.now();\n _this.delaySetPopupVisible(true, _this.props.focusDelay);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onMouseDown\", function (e) {\n _this.fireEvents('onMouseDown', e);\n _this.preClickTime = Date.now();\n });\n _defineProperty(_assertThisInitialized(_this), \"onTouchStart\", function (e) {\n _this.fireEvents('onTouchStart', e);\n _this.preTouchTime = Date.now();\n });\n _defineProperty(_assertThisInitialized(_this), \"onBlur\", function (e) {\n _this.fireEvents('onBlur', e);\n _this.clearDelayTimer();\n if (_this.isBlurToHide()) {\n _this.delaySetPopupVisible(false, _this.props.blurDelay);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onContextMenu\", function (e) {\n e.preventDefault();\n _this.fireEvents('onContextMenu', e);\n _this.setPopupVisible(true, e);\n });\n _defineProperty(_assertThisInitialized(_this), \"onContextMenuClose\", function () {\n if (_this.isContextMenuToShow()) {\n _this.close();\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onClick\", function (event) {\n _this.fireEvents('onClick', event); // focus will trigger click\n\n if (_this.focusTime) {\n var preTime;\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 if (Math.abs(preTime - _this.focusTime) < 20) {\n return;\n }\n _this.focusTime = 0;\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 var nextVisible = !_this.state.popupVisible;\n if (_this.isClickToHide() && !nextVisible || nextVisible && _this.isClickToShow()) {\n _this.setPopupVisible(!_this.state.popupVisible, event);\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 if (_this.context) {\n var _this$context;\n (_this$context = _this.context).onPopupMouseDown.apply(_this$context, arguments);\n }\n });\n _defineProperty(_assertThisInitialized(_this), \"onDocumentClick\", function (event) {\n if (_this.props.mask && !_this.props.maskClosable) {\n return;\n }\n var target = event.target;\n var root = _this.getRootDomNode();\n var popupNode = _this.getPopupDomNode();\n if (\n // 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 _defineProperty(_assertThisInitialized(_this), \"getRootDomNode\", function () {\n var getTriggerDOMNode = _this.props.getTriggerDOMNode;\n if (getTriggerDOMNode) {\n return getTriggerDOMNode(_this.triggerRef.current);\n }\n try {\n var domNode = findDOMNode(_this.triggerRef.current);\n if (domNode) {\n return domNode;\n }\n } catch (err) {// Do nothing\n }\n return ReactDOM.findDOMNode(_assertThisInitialized(_this));\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 if (popupPlacement && builtinPlacements) {\n className.push(getAlignPopupClassName(builtinPlacements, prefixCls, align, alignPoint));\n }\n if (getPopupClassNameFromAlign) {\n className.push(getPopupClassNameFromAlign(align));\n }\n return className.join(' ');\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 var align = _this.getPopupAlign();\n var mouseProps = {};\n if (_this.isMouseEnterToShow()) {\n mouseProps.onMouseEnter = _this.onPopupMouseEnter;\n }\n if (_this.isMouseLeaveToHide()) {\n mouseProps.onMouseLeave = _this.onPopupMouseLeave;\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 _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 var domNode = _this.getRootDomNode();\n var mountNode;\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 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 _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 _this.attachParent(_this.portalContainer);\n return _this.portalContainer;\n });\n _defineProperty(_assertThisInitialized(_this), \"setPoint\", function (point) {\n var alignPoint = _this.props.alignPoint;\n if (!alignPoint || !point) return;\n _this.setState({\n point: {\n pageX: point.pageX,\n pageY: point.pageY\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 _defineProperty(_assertThisInitialized(_this), \"triggerContextValue\", {\n onPopupMouseDown: _this.onPopupMouseDown\n });\n var _popupVisible;\n if ('popupVisible' in props) {\n _popupVisible = !!props.popupVisible;\n } else {\n _popupVisible = !!props.defaultPopupVisible;\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 _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 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 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 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 if (!this.contextMenuOutsideHandler2 && this.isContextMenuToShow()) {\n this.contextMenuOutsideHandler2 = addEventListener(window, 'blur', this.onContextMenuClose);\n }\n return;\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 if (popupPlacement && builtinPlacements) {\n return getAlignFromPlacement(builtinPlacements, popupPlacement, popupAlign);\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 if (prevPopupVisible !== popupVisible) {\n if (!('popupVisible' in this.props)) {\n this.setState({\n popupVisible: popupVisible,\n prevPopupVisible: prevPopupVisible\n });\n }\n this.props.onPopupVisibleChange(popupVisible);\n } // Always record the point position since mouseEnterDelay will delay the show\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 var delay = delayS * 1000;\n this.clearDelayTimer();\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 _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 if (this.contextMenuOutsideHandler1) {\n this.contextMenuOutsideHandler1.remove();\n this.contextMenuOutsideHandler1 = null;\n }\n if (this.contextMenuOutsideHandler2) {\n this.contextMenuOutsideHandler2.remove();\n this.contextMenuOutsideHandler2 = null;\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 if (childPros[event] && props[event]) {\n return this[\"fire\".concat(event)];\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 (_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 if (childCallback) {\n childCallback(e);\n }\n var callback = this.props[type];\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 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 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 if (this.isMouseLeaveToHide()) {\n newChildProps.onMouseLeave = this.onMouseLeave;\n } else {\n newChildProps.onMouseLeave = this.createTwoChains('onMouseLeave');\n } // >>> Focus\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 var childrenClassName = classNames(child && child.props && child.props.className, className);\n if (childrenClassName) {\n newChildProps.className = childrenClassName;\n }\n var cloneProps = _objectSpread({}, newChildProps);\n if (supportRef(child)) {\n cloneProps.ref = composeRef(this.triggerRef, child.ref);\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 if (!popupVisible && autoDestroy) {\n portal = null;\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 if (popupVisible !== undefined && prevState.popupVisible !== popupVisible) {\n newState.popupVisible = popupVisible;\n newState.prevPopupVisible = prevState.popupVisible;\n }\n return newState;\n }\n }]);\n return Trigger;\n }(React.Component);\n _defineProperty(Trigger, \"contextType\", TriggerContext);\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 return Trigger;\n}\nexport default generateTrigger(Portal);","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 _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"prefixCls\", \"disabled\", \"visible\", \"children\", \"popupElement\", \"containerWidth\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"direction\", \"placement\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"getPopupContainer\", \"empty\", \"getTriggerDOMNode\", \"onPopupVisibleChange\", \"onPopupMouseEnter\"];\nimport * as React from 'react';\nimport Trigger from 'rc-trigger';\nimport classNames from 'classnames';\nvar getBuiltInPlacements = function getBuiltInPlacements(dropdownMatchSelectWidth) {\n // Enable horizontal overflow auto-adjustment when a custom dropdown width is provided\n var adjustX = dropdownMatchSelectWidth === true ? 0 : 1;\n return {\n bottomLeft: {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n }\n },\n bottomRight: {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n }\n },\n topLeft: {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n }\n },\n topRight: {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX: adjustX,\n adjustY: 1\n }\n }\n };\n};\nvar SelectTrigger = function SelectTrigger(props, ref) {\n var prefixCls = props.prefixCls,\n disabled = props.disabled,\n visible = props.visible,\n children = props.children,\n popupElement = props.popupElement,\n containerWidth = props.containerWidth,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'ltr' : _props$direction,\n placement = props.placement,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n getPopupContainer = props.getPopupContainer,\n empty = props.empty,\n getTriggerDOMNode = props.getTriggerDOMNode,\n onPopupVisibleChange = props.onPopupVisibleChange,\n onPopupMouseEnter = props.onPopupMouseEnter,\n restProps = _objectWithoutProperties(props, _excluded);\n var dropdownPrefixCls = \"\".concat(prefixCls, \"-dropdown\");\n var popupNode = popupElement;\n if (dropdownRender) {\n popupNode = dropdownRender(popupElement);\n }\n var builtInPlacements = React.useMemo(function () {\n return getBuiltInPlacements(dropdownMatchSelectWidth);\n }, [dropdownMatchSelectWidth]);\n\n // ===================== Motion ======================\n var mergedTransitionName = animation ? \"\".concat(dropdownPrefixCls, \"-\").concat(animation) : transitionName;\n\n // ======================= Ref =======================\n var popupRef = React.useRef(null);\n React.useImperativeHandle(ref, function () {\n return {\n getPopupElement: function getPopupElement() {\n return popupRef.current;\n }\n };\n });\n var popupStyle = _objectSpread({\n minWidth: containerWidth\n }, dropdownStyle);\n if (typeof dropdownMatchSelectWidth === 'number') {\n popupStyle.width = dropdownMatchSelectWidth;\n } else if (dropdownMatchSelectWidth) {\n popupStyle.width = containerWidth;\n }\n return /*#__PURE__*/React.createElement(Trigger, _extends({}, restProps, {\n showAction: onPopupVisibleChange ? ['click'] : [],\n hideAction: onPopupVisibleChange ? ['click'] : [],\n popupPlacement: placement || (direction === 'rtl' ? 'bottomRight' : 'bottomLeft'),\n builtinPlacements: builtInPlacements,\n prefixCls: dropdownPrefixCls,\n popupTransitionName: mergedTransitionName,\n popup: /*#__PURE__*/React.createElement(\"div\", {\n ref: popupRef,\n onMouseEnter: onPopupMouseEnter\n }, popupNode),\n popupAlign: dropdownAlign,\n popupVisible: visible,\n getPopupContainer: getPopupContainer,\n popupClassName: classNames(dropdownClassName, _defineProperty({}, \"\".concat(dropdownPrefixCls, \"-empty\"), empty)),\n popupStyle: popupStyle,\n getTriggerDOMNode: getTriggerDOMNode,\n onPopupVisibleChange: onPopupVisibleChange\n }), children);\n};\nvar RefSelectTrigger = /*#__PURE__*/React.forwardRef(SelectTrigger);\nRefSelectTrigger.displayName = 'SelectTrigger';\nexport default RefSelectTrigger;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _toArray from \"@babel/runtime/helpers/esm/toArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport warning from \"rc-util/es/warning\";\nfunction getKey(data, index) {\n var key = data.key;\n var value;\n if ('value' in data) {\n value = data.value;\n }\n if (key !== null && key !== undefined) {\n return key;\n }\n if (value !== undefined) {\n return value;\n }\n return \"rc-index-key-\".concat(index);\n}\nexport function fillFieldNames(fieldNames, childrenAsData) {\n var _ref = fieldNames || {},\n label = _ref.label,\n value = _ref.value,\n options = _ref.options;\n return {\n label: label || (childrenAsData ? 'children' : 'label'),\n value: value || 'value',\n options: options || 'options'\n };\n}\n\n/**\n * Flat options into flatten list.\n * We use `optionOnly` here is aim to avoid user use nested option group.\n * Here is simply set `key` to the index if not provided.\n */\nexport function flattenOptions(options) {\n var _ref2 = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n fieldNames = _ref2.fieldNames,\n childrenAsData = _ref2.childrenAsData;\n var flattenList = [];\n var _fillFieldNames = fillFieldNames(fieldNames, false),\n fieldLabel = _fillFieldNames.label,\n fieldValue = _fillFieldNames.value,\n fieldOptions = _fillFieldNames.options;\n function dig(list, isGroupOption) {\n list.forEach(function (data) {\n var label = data[fieldLabel];\n if (isGroupOption || !(fieldOptions in data)) {\n var value = data[fieldValue];\n\n // Option\n flattenList.push({\n key: getKey(data, flattenList.length),\n groupOption: isGroupOption,\n data: data,\n label: label,\n value: value\n });\n } else {\n var grpLabel = label;\n if (grpLabel === undefined && childrenAsData) {\n grpLabel = data.label;\n }\n\n // Option Group\n flattenList.push({\n key: getKey(data, flattenList.length),\n group: true,\n data: data,\n label: grpLabel\n });\n dig(data[fieldOptions], true);\n }\n });\n }\n dig(options, false);\n return flattenList;\n}\n\n/**\n * Inject `props` into `option` for legacy usage\n */\nexport function injectPropsWithOption(option) {\n var newOption = _objectSpread({}, option);\n if (!('props' in newOption)) {\n Object.defineProperty(newOption, 'props', {\n get: function get() {\n warning(false, 'Return type is option instead of Option instance. Please read value directly instead of reading from `props`.');\n return newOption;\n }\n });\n }\n return newOption;\n}\nexport function getSeparatedContent(text, tokens) {\n if (!tokens || !tokens.length) {\n return null;\n }\n var match = false;\n function separate(str, _ref3) {\n var _ref4 = _toArray(_ref3),\n token = _ref4[0],\n restTokens = _ref4.slice(1);\n if (!token) {\n return [str];\n }\n var list = str.split(token);\n match = match || list.length > 1;\n return list.reduce(function (prevList, unitStr) {\n return [].concat(_toConsumableArray(prevList), _toConsumableArray(separate(unitStr, restTokens)));\n }, []).filter(function (unit) {\n return unit;\n });\n }\n var list = separate(text, tokens);\n return match ? list : null;\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"id\", \"prefixCls\", \"className\", \"showSearch\", \"tagRender\", \"direction\", \"omitDomProps\", \"displayValues\", \"onDisplayValuesChange\", \"emptyOptions\", \"notFoundContent\", \"onClear\", \"mode\", \"disabled\", \"loading\", \"getInputElement\", \"getRawInputElement\", \"open\", \"defaultOpen\", \"onDropdownVisibleChange\", \"activeValue\", \"onActiveValueChange\", \"activeDescendantId\", \"searchValue\", \"autoClearSearchValue\", \"onSearch\", \"onSearchSplit\", \"tokenSeparators\", \"allowClear\", \"showArrow\", \"inputIcon\", \"clearIcon\", \"OptionList\", \"animation\", \"transitionName\", \"dropdownStyle\", \"dropdownClassName\", \"dropdownMatchSelectWidth\", \"dropdownRender\", \"dropdownAlign\", \"placement\", \"getPopupContainer\", \"showAction\", \"onFocus\", \"onBlur\", \"onKeyUp\", \"onKeyDown\", \"onMouseDown\"];\nimport classNames from 'classnames';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport isMobile from \"rc-util/es/isMobile\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport { useComposeRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { BaseSelectContext } from \"./hooks/useBaseProps\";\nimport useDelayReset from \"./hooks/useDelayReset\";\nimport useLock from \"./hooks/useLock\";\nimport useSelectTriggerControl from \"./hooks/useSelectTriggerControl\";\nimport Selector from \"./Selector\";\nimport SelectTrigger from \"./SelectTrigger\";\nimport TransBtn from \"./TransBtn\";\nimport { getSeparatedContent } from \"./utils/valueUtil\";\nvar DEFAULT_OMIT_PROPS = ['value', 'onChange', 'removeIcon', 'placeholder', 'autoFocus', 'maxTagCount', 'maxTagTextLength', 'maxTagPlaceholder', 'choiceTransitionName', 'onInputKeyDown', 'onPopupScroll', 'tabIndex'];\nexport function isMultiple(mode) {\n return mode === 'tags' || mode === 'multiple';\n}\nvar BaseSelect = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _customizeRawInputEle, _classNames2;\n var id = props.id,\n prefixCls = props.prefixCls,\n className = props.className,\n showSearch = props.showSearch,\n tagRender = props.tagRender,\n direction = props.direction,\n omitDomProps = props.omitDomProps,\n displayValues = props.displayValues,\n onDisplayValuesChange = props.onDisplayValuesChange,\n emptyOptions = props.emptyOptions,\n _props$notFoundConten = props.notFoundContent,\n notFoundContent = _props$notFoundConten === void 0 ? 'Not Found' : _props$notFoundConten,\n onClear = props.onClear,\n mode = props.mode,\n disabled = props.disabled,\n loading = props.loading,\n getInputElement = props.getInputElement,\n getRawInputElement = props.getRawInputElement,\n open = props.open,\n defaultOpen = props.defaultOpen,\n onDropdownVisibleChange = props.onDropdownVisibleChange,\n activeValue = props.activeValue,\n onActiveValueChange = props.onActiveValueChange,\n activeDescendantId = props.activeDescendantId,\n searchValue = props.searchValue,\n autoClearSearchValue = props.autoClearSearchValue,\n onSearch = props.onSearch,\n onSearchSplit = props.onSearchSplit,\n tokenSeparators = props.tokenSeparators,\n allowClear = props.allowClear,\n showArrow = props.showArrow,\n inputIcon = props.inputIcon,\n clearIcon = props.clearIcon,\n OptionList = props.OptionList,\n animation = props.animation,\n transitionName = props.transitionName,\n dropdownStyle = props.dropdownStyle,\n dropdownClassName = props.dropdownClassName,\n dropdownMatchSelectWidth = props.dropdownMatchSelectWidth,\n dropdownRender = props.dropdownRender,\n dropdownAlign = props.dropdownAlign,\n placement = props.placement,\n getPopupContainer = props.getPopupContainer,\n _props$showAction = props.showAction,\n showAction = _props$showAction === void 0 ? [] : _props$showAction,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onKeyUp = props.onKeyUp,\n onKeyDown = props.onKeyDown,\n onMouseDown = props.onMouseDown,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // ============================== MISC ==============================\n var multiple = isMultiple(mode);\n var mergedShowSearch = (showSearch !== undefined ? showSearch : multiple) || mode === 'combobox';\n var domProps = _objectSpread({}, restProps);\n DEFAULT_OMIT_PROPS.forEach(function (propName) {\n delete domProps[propName];\n });\n omitDomProps === null || omitDomProps === void 0 ? void 0 : omitDomProps.forEach(function (propName) {\n delete domProps[propName];\n });\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 React.useEffect(function () {\n // Only update on the client side\n setMobile(isMobile());\n }, []);\n\n // ============================== Refs ==============================\n var containerRef = React.useRef(null);\n var selectorDomRef = React.useRef(null);\n var triggerRef = React.useRef(null);\n var selectorRef = React.useRef(null);\n var listRef = React.useRef(null);\n\n /** Used for component focused management */\n var _useDelayReset = useDelayReset(),\n _useDelayReset2 = _slicedToArray(_useDelayReset, 3),\n mockFocused = _useDelayReset2[0],\n setMockFocused = _useDelayReset2[1],\n cancelSetMockFocused = _useDelayReset2[2];\n\n // =========================== Imperative ===========================\n React.useImperativeHandle(ref, function () {\n var _selectorRef$current, _selectorRef$current2;\n return {\n focus: (_selectorRef$current = selectorRef.current) === null || _selectorRef$current === void 0 ? void 0 : _selectorRef$current.focus,\n blur: (_selectorRef$current2 = selectorRef.current) === null || _selectorRef$current2 === void 0 ? void 0 : _selectorRef$current2.blur,\n scrollTo: function scrollTo(arg) {\n var _listRef$current;\n return (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(arg);\n }\n };\n });\n\n // ========================== Search Value ==========================\n var mergedSearchValue = React.useMemo(function () {\n var _displayValues$;\n if (mode !== 'combobox') {\n return searchValue;\n }\n var val = (_displayValues$ = displayValues[0]) === null || _displayValues$ === void 0 ? void 0 : _displayValues$.value;\n return typeof val === 'string' || typeof val === 'number' ? String(val) : '';\n }, [searchValue, mode, displayValues]);\n\n // ========================== Custom Input ==========================\n // Only works in `combobox`\n var customizeInputElement = mode === 'combobox' && typeof getInputElement === 'function' && getInputElement() || null;\n\n // Used for customize replacement for `rc-cascader`\n var customizeRawInputElement = typeof getRawInputElement === 'function' && getRawInputElement();\n var customizeRawInputRef = useComposeRef(selectorDomRef, customizeRawInputElement === null || customizeRawInputElement === void 0 ? void 0 : (_customizeRawInputEle = customizeRawInputElement.props) === null || _customizeRawInputEle === void 0 ? void 0 : _customizeRawInputEle.ref);\n\n // ============================== Open ==============================\n var _useMergedState = useMergedState(undefined, {\n defaultValue: defaultOpen,\n value: open\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n innerOpen = _useMergedState2[0],\n setInnerOpen = _useMergedState2[1];\n var mergedOpen = innerOpen;\n\n // Not trigger `open` in `combobox` when `notFoundContent` is empty\n var emptyListContent = !notFoundContent && emptyOptions;\n if (disabled || emptyListContent && mergedOpen && mode === 'combobox') {\n mergedOpen = false;\n }\n var triggerOpen = emptyListContent ? false : mergedOpen;\n var onToggleOpen = React.useCallback(function (newOpen) {\n var nextOpen = newOpen !== undefined ? newOpen : !mergedOpen;\n if (!disabled) {\n setInnerOpen(nextOpen);\n if (mergedOpen !== nextOpen) {\n onDropdownVisibleChange === null || onDropdownVisibleChange === void 0 ? void 0 : onDropdownVisibleChange(nextOpen);\n }\n }\n }, [disabled, mergedOpen, setInnerOpen, onDropdownVisibleChange]);\n\n // ============================= Search =============================\n var tokenWithEnter = React.useMemo(function () {\n return (tokenSeparators || []).some(function (tokenSeparator) {\n return ['\\n', '\\r\\n'].includes(tokenSeparator);\n });\n }, [tokenSeparators]);\n var onInternalSearch = function onInternalSearch(searchText, fromTyping, isCompositing) {\n var ret = true;\n var newSearchText = searchText;\n onActiveValueChange === null || onActiveValueChange === void 0 ? void 0 : onActiveValueChange(null);\n\n // Check if match the `tokenSeparators`\n var patchLabels = isCompositing ? null : getSeparatedContent(searchText, tokenSeparators);\n\n // Ignore combobox since it's not split-able\n if (mode !== 'combobox' && patchLabels) {\n newSearchText = '';\n onSearchSplit === null || onSearchSplit === void 0 ? void 0 : onSearchSplit(patchLabels);\n\n // Should close when paste finish\n onToggleOpen(false);\n\n // Tell Selector that break next actions\n ret = false;\n }\n if (onSearch && mergedSearchValue !== newSearchText) {\n onSearch(newSearchText, {\n source: fromTyping ? 'typing' : 'effect'\n });\n }\n return ret;\n };\n\n // Only triggered when menu is closed & mode is tags\n // If menu is open, OptionList will take charge\n // If mode isn't tags, press enter is not meaningful when you can't see any option\n var onInternalSearchSubmit = function onInternalSearchSubmit(searchText) {\n // prevent empty tags from appearing when you click the Enter button\n if (!searchText || !searchText.trim()) {\n return;\n }\n onSearch(searchText, {\n source: 'submit'\n });\n };\n\n // Close will clean up single mode search text\n React.useEffect(function () {\n if (!mergedOpen && !multiple && mode !== 'combobox') {\n onInternalSearch('', false, false);\n }\n }, [mergedOpen]);\n\n // ============================ Disabled ============================\n // Close dropdown & remove focus state when disabled change\n React.useEffect(function () {\n if (innerOpen && disabled) {\n setInnerOpen(false);\n }\n if (disabled) {\n setMockFocused(false);\n }\n }, [disabled]);\n\n // ============================ Keyboard ============================\n /**\n * We record input value here to check if can press to clean up by backspace\n * - null: Key is not down, this is reset by key up\n * - true: Search text is empty when first time backspace down\n * - false: Search text is not empty when first time backspace down\n */\n var _useLock = useLock(),\n _useLock2 = _slicedToArray(_useLock, 2),\n getClearLock = _useLock2[0],\n setClearLock = _useLock2[1];\n\n // KeyDown\n var onInternalKeyDown = function onInternalKeyDown(event) {\n var clearLock = getClearLock();\n var which = event.which;\n if (which === KeyCode.ENTER) {\n // Do not submit form when type in the input\n if (mode !== 'combobox') {\n event.preventDefault();\n }\n\n // We only manage open state here, close logic should handle by list component\n if (!mergedOpen) {\n onToggleOpen(true);\n }\n }\n setClearLock(!!mergedSearchValue);\n\n // Remove value by `backspace`\n if (which === KeyCode.BACKSPACE && !clearLock && multiple && !mergedSearchValue && displayValues.length) {\n var cloneDisplayValues = _toConsumableArray(displayValues);\n var removedDisplayValue = null;\n for (var i = cloneDisplayValues.length - 1; i >= 0; i -= 1) {\n var current = cloneDisplayValues[i];\n if (!current.disabled) {\n cloneDisplayValues.splice(i, 1);\n removedDisplayValue = current;\n break;\n }\n }\n if (removedDisplayValue) {\n onDisplayValuesChange(cloneDisplayValues, {\n type: 'remove',\n values: [removedDisplayValue]\n });\n }\n }\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 if (mergedOpen && listRef.current) {\n var _listRef$current2;\n (_listRef$current2 = listRef.current).onKeyDown.apply(_listRef$current2, [event].concat(rest));\n }\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown.apply(void 0, [event].concat(rest));\n };\n\n // KeyUp\n var onInternalKeyUp = function onInternalKeyUp(event) {\n for (var _len2 = arguments.length, rest = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n rest[_key2 - 1] = arguments[_key2];\n }\n if (mergedOpen && listRef.current) {\n var _listRef$current3;\n (_listRef$current3 = listRef.current).onKeyUp.apply(_listRef$current3, [event].concat(rest));\n }\n onKeyUp === null || onKeyUp === void 0 ? void 0 : onKeyUp.apply(void 0, [event].concat(rest));\n };\n\n // ============================ Selector ============================\n var onSelectorRemove = function onSelectorRemove(val) {\n var newValues = displayValues.filter(function (i) {\n return i !== val;\n });\n onDisplayValuesChange(newValues, {\n type: 'remove',\n values: [val]\n });\n };\n\n // ========================== Focus / Blur ==========================\n /** Record real focus status */\n var focusRef = React.useRef(false);\n var onContainerFocus = function onContainerFocus() {\n setMockFocused(true);\n if (!disabled) {\n if (onFocus && !focusRef.current) {\n onFocus.apply(void 0, arguments);\n }\n\n // `showAction` should handle `focus` if set\n if (showAction.includes('focus')) {\n onToggleOpen(true);\n }\n }\n focusRef.current = true;\n };\n var onContainerBlur = function onContainerBlur() {\n setMockFocused(false, function () {\n focusRef.current = false;\n onToggleOpen(false);\n });\n if (disabled) {\n return;\n }\n if (mergedSearchValue) {\n // `tags` mode should move `searchValue` into values\n if (mode === 'tags') {\n onSearch(mergedSearchValue, {\n source: 'submit'\n });\n } else if (mode === 'multiple') {\n // `multiple` mode only clean the search value but not trigger event\n onSearch('', {\n source: 'blur'\n });\n }\n }\n if (onBlur) {\n onBlur.apply(void 0, arguments);\n }\n };\n\n // Give focus back of Select\n var activeTimeoutIds = [];\n React.useEffect(function () {\n return function () {\n activeTimeoutIds.forEach(function (timeoutId) {\n return clearTimeout(timeoutId);\n });\n activeTimeoutIds.splice(0, activeTimeoutIds.length);\n };\n }, []);\n var onInternalMouseDown = function onInternalMouseDown(event) {\n var _triggerRef$current;\n var target = event.target;\n var popupElement = (_triggerRef$current = triggerRef.current) === null || _triggerRef$current === void 0 ? void 0 : _triggerRef$current.getPopupElement();\n\n // We should give focus back to selector if clicked item is not focusable\n if (popupElement && popupElement.contains(target)) {\n var timeoutId = setTimeout(function () {\n var index = activeTimeoutIds.indexOf(timeoutId);\n if (index !== -1) {\n activeTimeoutIds.splice(index, 1);\n }\n cancelSetMockFocused();\n if (!mobile && !popupElement.contains(document.activeElement)) {\n var _selectorRef$current3;\n (_selectorRef$current3 = selectorRef.current) === null || _selectorRef$current3 === void 0 ? void 0 : _selectorRef$current3.focus();\n }\n });\n activeTimeoutIds.push(timeoutId);\n }\n for (var _len3 = arguments.length, restArgs = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {\n restArgs[_key3 - 1] = arguments[_key3];\n }\n onMouseDown === null || onMouseDown === void 0 ? void 0 : onMouseDown.apply(void 0, [event].concat(restArgs));\n };\n\n // ============================ Dropdown ============================\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n containerWidth = _React$useState4[0],\n setContainerWidth = _React$useState4[1];\n var _React$useState5 = React.useState({}),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n forceUpdate = _React$useState6[1];\n // We need force update here since popup dom is render async\n function onPopupMouseEnter() {\n forceUpdate({});\n }\n useLayoutEffect(function () {\n if (triggerOpen) {\n var _containerRef$current;\n var newWidth = Math.ceil((_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.offsetWidth);\n if (containerWidth !== newWidth && !Number.isNaN(newWidth)) {\n setContainerWidth(newWidth);\n }\n }\n }, [triggerOpen]);\n\n // Used for raw custom input trigger\n var onTriggerVisibleChange;\n if (customizeRawInputElement) {\n onTriggerVisibleChange = function onTriggerVisibleChange(newOpen) {\n onToggleOpen(newOpen);\n };\n }\n\n // Close when click on non-select element\n useSelectTriggerControl(function () {\n var _triggerRef$current2;\n return [containerRef.current, (_triggerRef$current2 = triggerRef.current) === null || _triggerRef$current2 === void 0 ? void 0 : _triggerRef$current2.getPopupElement()];\n }, triggerOpen, onToggleOpen, !!customizeRawInputElement);\n\n // ============================ Context =============================\n var baseSelectContext = React.useMemo(function () {\n return _objectSpread(_objectSpread({}, props), {}, {\n notFoundContent: notFoundContent,\n open: mergedOpen,\n triggerOpen: triggerOpen,\n id: id,\n showSearch: mergedShowSearch,\n multiple: multiple,\n toggleOpen: onToggleOpen\n });\n }, [props, notFoundContent, triggerOpen, mergedOpen, id, mergedShowSearch, multiple, onToggleOpen]);\n\n // ==================================================================\n // == Render ==\n // ==================================================================\n\n // ============================= Arrow ==============================\n var mergedShowArrow = showArrow !== undefined ? showArrow : loading || !multiple && mode !== 'combobox';\n var arrowNode;\n if (mergedShowArrow) {\n arrowNode = /*#__PURE__*/React.createElement(TransBtn, {\n className: classNames(\"\".concat(prefixCls, \"-arrow\"), _defineProperty({}, \"\".concat(prefixCls, \"-arrow-loading\"), loading)),\n customizeIcon: inputIcon,\n customizeIconProps: {\n loading: loading,\n searchValue: mergedSearchValue,\n open: mergedOpen,\n focused: mockFocused,\n showSearch: mergedShowSearch\n }\n });\n }\n\n // ============================= Clear ==============================\n var clearNode;\n var onClearMouseDown = function onClearMouseDown() {\n var _selectorRef$current4;\n onClear === null || onClear === void 0 ? void 0 : onClear();\n (_selectorRef$current4 = selectorRef.current) === null || _selectorRef$current4 === void 0 ? void 0 : _selectorRef$current4.focus();\n onDisplayValuesChange([], {\n type: 'clear',\n values: displayValues\n });\n onInternalSearch('', false, false);\n };\n if (!disabled && allowClear && (displayValues.length || mergedSearchValue) && !(mode === 'combobox' && mergedSearchValue === '')) {\n clearNode = /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(prefixCls, \"-clear\"),\n onMouseDown: onClearMouseDown,\n customizeIcon: clearIcon\n }, \"\\xD7\");\n }\n\n // =========================== OptionList ===========================\n var optionList = /*#__PURE__*/React.createElement(OptionList, {\n ref: listRef\n });\n\n // ============================= Select =============================\n var mergedClassName = classNames(prefixCls, className, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-focused\"), mockFocused), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-multiple\"), multiple), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-single\"), !multiple), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-allow-clear\"), allowClear), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-show-arrow\"), mergedShowArrow), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-loading\"), loading), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-open\"), mergedOpen), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-customize-input\"), customizeInputElement), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-show-search\"), mergedShowSearch), _classNames2));\n\n // >>> Selector\n var selectorNode = /*#__PURE__*/React.createElement(SelectTrigger, {\n ref: triggerRef,\n disabled: disabled,\n prefixCls: prefixCls,\n visible: triggerOpen,\n popupElement: optionList,\n containerWidth: containerWidth,\n animation: animation,\n transitionName: transitionName,\n dropdownStyle: dropdownStyle,\n dropdownClassName: dropdownClassName,\n direction: direction,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth,\n dropdownRender: dropdownRender,\n dropdownAlign: dropdownAlign,\n placement: placement,\n getPopupContainer: getPopupContainer,\n empty: emptyOptions,\n getTriggerDOMNode: function getTriggerDOMNode() {\n return selectorDomRef.current;\n },\n onPopupVisibleChange: onTriggerVisibleChange,\n onPopupMouseEnter: onPopupMouseEnter\n }, customizeRawInputElement ? /*#__PURE__*/React.cloneElement(customizeRawInputElement, {\n ref: customizeRawInputRef\n }) : /*#__PURE__*/React.createElement(Selector, _extends({}, props, {\n domRef: selectorDomRef,\n prefixCls: prefixCls,\n inputElement: customizeInputElement,\n ref: selectorRef,\n id: id,\n showSearch: mergedShowSearch,\n autoClearSearchValue: autoClearSearchValue,\n mode: mode,\n activeDescendantId: activeDescendantId,\n tagRender: tagRender,\n values: displayValues,\n open: mergedOpen,\n onToggleOpen: onToggleOpen,\n activeValue: activeValue,\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n onSearchSubmit: onInternalSearchSubmit,\n onRemove: onSelectorRemove,\n tokenWithEnter: tokenWithEnter\n })));\n\n // >>> Render\n var renderNode;\n\n // Render raw\n if (customizeRawInputElement) {\n renderNode = selectorNode;\n } else {\n renderNode = /*#__PURE__*/React.createElement(\"div\", _extends({\n className: mergedClassName\n }, domProps, {\n ref: containerRef,\n onMouseDown: onInternalMouseDown,\n onKeyDown: onInternalKeyDown,\n onKeyUp: onInternalKeyUp,\n onFocus: onContainerFocus,\n onBlur: onContainerBlur\n }), mockFocused && !mergedOpen && /*#__PURE__*/React.createElement(\"span\", {\n style: {\n width: 0,\n height: 0,\n position: 'absolute',\n overflow: 'hidden',\n opacity: 0\n },\n \"aria-live\": \"polite\"\n }, \"\".concat(displayValues.map(function (_ref) {\n var label = _ref.label,\n value = _ref.value;\n return ['number', 'string'].includes(_typeof(label)) ? label : value;\n }).join(', '))), selectorNode, arrowNode, clearNode);\n }\n return /*#__PURE__*/React.createElement(BaseSelectContext.Provider, {\n value: baseSelectContext\n }, renderNode);\n});\n\n// Set display name for dev\nif (process.env.NODE_ENV !== 'production') {\n BaseSelect.displayName = 'BaseSelect';\n}\nexport default BaseSelect;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Similar with `useLock`, but this hook will always execute last value.\n * When set to `true`, it will keep `true` for a short time even if `false` is set.\n */\nexport default function useDelayReset() {\n var timeout = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n bool = _React$useState2[0],\n setBool = _React$useState2[1];\n var delayRef = React.useRef(null);\n var cancelLatest = function cancelLatest() {\n window.clearTimeout(delayRef.current);\n };\n React.useEffect(function () {\n return cancelLatest;\n }, []);\n var delaySetBool = function delaySetBool(value, callback) {\n cancelLatest();\n delayRef.current = window.setTimeout(function () {\n setBool(value);\n if (callback) {\n callback();\n }\n }, timeout);\n };\n return [bool, delaySetBool, cancelLatest];\n}","import * as React from 'react';\nexport default function useSelectTriggerControl(elements, open, triggerOpen, customizedTrigger) {\n var propsRef = React.useRef(null);\n propsRef.current = {\n open: open,\n triggerOpen: triggerOpen,\n customizedTrigger: customizedTrigger\n };\n React.useEffect(function () {\n function onGlobalMouseDown(event) {\n var _propsRef$current;\n // If trigger is customized, Trigger will take control of popupVisible\n if ((_propsRef$current = propsRef.current) !== null && _propsRef$current !== void 0 && _propsRef$current.customizedTrigger) {\n return;\n }\n var target = event.target;\n if (target.shadowRoot && event.composed) {\n target = event.composedPath()[0] || target;\n }\n if (propsRef.current.open && elements().filter(function (element) {\n return element;\n }).every(function (element) {\n return !element.contains(target) && element !== target;\n })) {\n // Should trigger close\n propsRef.current.triggerOpen(false);\n }\n }\n window.addEventListener('mousedown', onGlobalMouseDown);\n return function () {\n return window.removeEventListener('mousedown', onGlobalMouseDown);\n };\n }, []);\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport { toArray } from \"../utils/commonUtil\";\nimport { injectPropsWithOption } from \"../utils/valueUtil\";\nfunction includes(test, search) {\n return toArray(test).join('').toUpperCase().includes(search);\n}\nexport default (function (options, fieldNames, searchValue, filterOption, optionFilterProp) {\n return React.useMemo(function () {\n if (!searchValue || filterOption === false) {\n return options;\n }\n var fieldOptions = fieldNames.options,\n fieldLabel = fieldNames.label,\n fieldValue = fieldNames.value;\n var filteredOptions = [];\n var customizeFilter = typeof filterOption === 'function';\n var upperSearch = searchValue.toUpperCase();\n var filterFunc = customizeFilter ? filterOption : function (_, option) {\n // Use provided `optionFilterProp`\n if (optionFilterProp) {\n return includes(option[optionFilterProp], upperSearch);\n }\n\n // Auto select `label` or `value` by option type\n if (option[fieldOptions]) {\n // hack `fieldLabel` since `OptionGroup` children is not `label`\n return includes(option[fieldLabel !== 'children' ? fieldLabel : 'label'], upperSearch);\n }\n return includes(option[fieldValue], upperSearch);\n };\n var wrapOption = customizeFilter ? function (opt) {\n return injectPropsWithOption(opt);\n } : function (opt) {\n return opt;\n };\n options.forEach(function (item) {\n // Group should check child options\n if (item[fieldOptions]) {\n // Check group first\n var matchGroup = filterFunc(searchValue, wrapOption(item));\n if (matchGroup) {\n filteredOptions.push(item);\n } else {\n // Check option\n var subOptions = item[fieldOptions].filter(function (subItem) {\n return filterFunc(searchValue, wrapOption(subItem));\n });\n if (subOptions.length) {\n filteredOptions.push(_objectSpread(_objectSpread({}, item), {}, _defineProperty({}, fieldOptions, subOptions)));\n }\n }\n return;\n }\n if (filterFunc(searchValue, wrapOption(item))) {\n filteredOptions.push(item);\n }\n });\n return filteredOptions;\n }, [options, filterOption, optionFilterProp, searchValue, fieldNames]);\n});","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport canUseDom from \"rc-util/es/Dom/canUseDom\";\nvar uuid = 0;\n\n/** Is client side and not jsdom */\nexport var isBrowserClient = process.env.NODE_ENV !== 'test' && canUseDom();\n\n/** Get unique id for accessibility usage */\nexport function getUUID() {\n var retId;\n\n // Test never reach\n /* istanbul ignore if */\n if (isBrowserClient) {\n retId = uuid;\n uuid += 1;\n } else {\n retId = 'TEST_OR_SSR';\n }\n return retId;\n}\nexport default function useId(id) {\n // Inner id for accessibility usage. Only work in client side\n var _React$useState = React.useState(),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerId = _React$useState2[0],\n setInnerId = _React$useState2[1];\n React.useEffect(function () {\n setInnerId(\"rc_select_\".concat(getUUID()));\n }, []);\n return id || innerId;\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nvar _excluded = [\"children\", \"value\"],\n _excluded2 = [\"children\"];\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nfunction convertNodeToOption(node) {\n var _ref = node,\n key = _ref.key,\n _ref$props = _ref.props,\n children = _ref$props.children,\n value = _ref$props.value,\n restProps = _objectWithoutProperties(_ref$props, _excluded);\n return _objectSpread({\n key: key,\n value: value !== undefined ? value : key,\n children: children\n }, restProps);\n}\nexport function convertChildrenToData(nodes) {\n var optionOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n return toArray(nodes).map(function (node, index) {\n if (! /*#__PURE__*/React.isValidElement(node) || !node.type) {\n return null;\n }\n var _ref2 = node,\n isSelectOptGroup = _ref2.type.isSelectOptGroup,\n key = _ref2.key,\n _ref2$props = _ref2.props,\n children = _ref2$props.children,\n restProps = _objectWithoutProperties(_ref2$props, _excluded2);\n if (optionOnly || !isSelectOptGroup) {\n return convertNodeToOption(node);\n }\n return _objectSpread(_objectSpread({\n key: \"__RC_SELECT_GRP__\".concat(key === null ? index : key, \"__\"),\n label: key\n }, restProps), {}, {\n options: convertChildrenToData(children)\n });\n }).filter(function (data) {\n return data;\n });\n}","import * as React from 'react';\n\n/**\n * Same as `React.useCallback` but always return a memoized function\n * but redirect to real function.\n */\nexport default function useRefFunc(callback) {\n var funcRef = React.useRef();\n funcRef.current = callback;\n var cacheFn = React.useCallback(function () {\n return funcRef.current.apply(funcRef, arguments);\n }, []);\n return cacheFn;\n}","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar OptGroup = function OptGroup() {\n return null;\n};\nOptGroup.isSelectOptGroup = true;\nexport default OptGroup;","/* istanbul ignore file */\n\n/** This is a placeholder, not real render in dom */\nvar Option = function Option() {\n return null;\n};\nOption.isSelectOption = true;\nexport default Option;","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 * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nimport classNames from 'classnames';\n/**\n * Fill component to provided the scroll content real height.\n */\nvar Filler = /*#__PURE__*/React.forwardRef(function (_ref, ref) {\n var height = _ref.height,\n offsetY = _ref.offsetY,\n offsetX = _ref.offsetX,\n children = _ref.children,\n prefixCls = _ref.prefixCls,\n onInnerResize = _ref.onInnerResize,\n innerProps = _ref.innerProps,\n rtl = _ref.rtl,\n extra = _ref.extra;\n var outerStyle = {};\n var innerStyle = {\n display: 'flex',\n flexDirection: 'column'\n };\n if (offsetY !== undefined) {\n // Not set `width` since this will break `sticky: right`\n outerStyle = {\n height: height,\n position: 'relative',\n overflow: 'hidden'\n };\n innerStyle = _objectSpread(_objectSpread({}, innerStyle), {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({\n transform: \"translateY(\".concat(offsetY, \"px)\")\n }, rtl ? 'marginRight' : 'marginLeft', -offsetX), \"position\", 'absolute'), \"left\", 0), \"right\", 0), \"top\", 0));\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n style: outerStyle\n }, /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: function onResize(_ref2) {\n var offsetHeight = _ref2.offsetHeight;\n if (offsetHeight && onInnerResize) {\n onInnerResize();\n }\n }\n }, /*#__PURE__*/React.createElement(\"div\", _extends({\n style: innerStyle,\n className: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-holder-inner\"), prefixCls)),\n ref: ref\n }, innerProps), children, extra)));\n});\nFiller.displayName = 'Filler';\nexport default Filler;","import * as React from 'react';\nexport function Item(_ref) {\n var children = _ref.children,\n setRef = _ref.setRef;\n var refFunc = React.useCallback(function (node) {\n setRef(node);\n }, []);\n return /*#__PURE__*/React.cloneElement(children, {\n ref: refFunc\n });\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { findListDiffIndex } from \"../utils/algorithmUtil\";\nexport default function useDiffItem(data, getKey, onDiff) {\n var _React$useState = React.useState(data),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n prevData = _React$useState2[0],\n setPrevData = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n diffItem = _React$useState4[0],\n setDiffItem = _React$useState4[1];\n React.useEffect(function () {\n var diff = findListDiffIndex(prevData || [], data || [], getKey);\n if ((diff === null || diff === void 0 ? void 0 : diff.index) !== undefined) {\n onDiff === null || onDiff === void 0 || onDiff(diff.index);\n setDiffItem(data[diff.index]);\n }\n setPrevData(data);\n }, [data]);\n return [diffItem];\n}","/**\n * Get index with specific start index one by one. e.g.\n * min: 3, max: 9, start: 6\n *\n * Return index is:\n * [0]: 6\n * [1]: 7\n * [2]: 5\n * [3]: 8\n * [4]: 4\n * [5]: 9\n * [6]: 3\n */\nexport function getIndexByStartLoc(min, max, start, index) {\n var beforeCount = start - min;\n var afterCount = max - start;\n var balanceCount = Math.min(beforeCount, afterCount) * 2;\n\n // Balance\n if (index <= balanceCount) {\n var stepIndex = Math.floor(index / 2);\n if (index % 2) {\n return start + stepIndex + 1;\n }\n return start - stepIndex;\n }\n\n // One is out of range\n if (beforeCount > afterCount) {\n return start - (index - afterCount);\n }\n return start + (index - beforeCount);\n}\n\n/**\n * We assume that 2 list has only 1 item diff and others keeping the order.\n * So we can use dichotomy algorithm to find changed one.\n */\nexport function findListDiffIndex(originList, targetList, getKey) {\n var originLen = originList.length;\n var targetLen = targetList.length;\n var shortList;\n var longList;\n if (originLen === 0 && targetLen === 0) {\n return null;\n }\n if (originLen < targetLen) {\n shortList = originList;\n longList = targetList;\n } else {\n shortList = targetList;\n longList = originList;\n }\n var notExistKey = {\n __EMPTY_ITEM__: true\n };\n function getItemKey(item) {\n if (item !== undefined) {\n return getKey(item);\n }\n return notExistKey;\n }\n\n // Loop to find diff one\n var diffIndex = null;\n var multiple = Math.abs(originLen - targetLen) !== 1;\n for (var i = 0; i < longList.length; i += 1) {\n var shortKey = getItemKey(shortList[i]);\n var longKey = getItemKey(longList[i]);\n if (shortKey !== longKey) {\n diffIndex = i;\n multiple = multiple || shortKey !== getItemKey(longList[i + 1]);\n break;\n }\n }\n return diffIndex === null ? null : {\n index: diffIndex,\n multiple: multiple\n };\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar isFF = (typeof navigator === \"undefined\" ? \"undefined\" : _typeof(navigator)) === 'object' && /Firefox/i.test(navigator.userAgent);\nexport default isFF;","import { useRef } from 'react';\nexport default (function (isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight) {\n // Do lock for a wheel when scrolling\n var lockRef = useRef(false);\n var lockTimeoutRef = useRef(null);\n function lockScroll() {\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = true;\n lockTimeoutRef.current = setTimeout(function () {\n lockRef.current = false;\n }, 50);\n }\n\n // Pass to ref since global add is in closure\n var scrollPingRef = useRef({\n top: isScrollAtTop,\n bottom: isScrollAtBottom,\n left: isScrollAtLeft,\n right: isScrollAtRight\n });\n scrollPingRef.current.top = isScrollAtTop;\n scrollPingRef.current.bottom = isScrollAtBottom;\n scrollPingRef.current.left = isScrollAtLeft;\n scrollPingRef.current.right = isScrollAtRight;\n return function (isHorizontal, delta) {\n var smoothOffset = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n var originScroll = isHorizontal ?\n // Pass origin wheel when on the left\n delta < 0 && scrollPingRef.current.left ||\n // Pass origin wheel when on the right\n delta > 0 && scrollPingRef.current.right // Pass origin wheel when on the top\n : delta < 0 && scrollPingRef.current.top ||\n // Pass origin wheel when on the bottom\n delta > 0 && scrollPingRef.current.bottom;\n if (smoothOffset && originScroll) {\n // No need lock anymore when it's smooth offset from touchMove interval\n clearTimeout(lockTimeoutRef.current);\n lockRef.current = false;\n } else if (!originScroll || lockRef.current) {\n lockScroll();\n }\n return !lockRef.current && originScroll;\n };\n});","import raf from \"rc-util/es/raf\";\nimport { useRef } from 'react';\nimport isFF from \"../utils/isFirefox\";\nimport useOriginScroll from \"./useOriginScroll\";\nexport default function useFrameWheel(inVirtual, isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight, horizontalScroll,\n/***\n * Return `true` when you need to prevent default event\n */\nonWheelDelta) {\n var offsetRef = useRef(0);\n var nextFrameRef = useRef(null);\n\n // Firefox patch\n var wheelValueRef = useRef(null);\n var isMouseScrollRef = useRef(false);\n\n // Scroll status sync\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight);\n function onWheelY(event, deltaY) {\n raf.cancel(nextFrameRef.current);\n offsetRef.current += deltaY;\n wheelValueRef.current = deltaY;\n\n // Do nothing when scroll at the edge, Skip check when is in scroll\n if (originScroll(false, deltaY)) return;\n\n // Proxy of scroll events\n if (!isFF) {\n event.preventDefault();\n }\n nextFrameRef.current = raf(function () {\n // Patch a multiple for Firefox to fix wheel number too small\n // ref: https://github.com/ant-design/ant-design/issues/26372#issuecomment-679460266\n var patchMultiple = isMouseScrollRef.current ? 10 : 1;\n onWheelDelta(offsetRef.current * patchMultiple);\n offsetRef.current = 0;\n });\n }\n function onWheelX(event, deltaX) {\n onWheelDelta(deltaX, true);\n if (!isFF) {\n event.preventDefault();\n }\n }\n\n // Check for which direction does wheel do. `sx` means `shift + wheel`\n var wheelDirectionRef = useRef(null);\n var wheelDirectionCleanRef = useRef(null);\n function onWheel(event) {\n if (!inVirtual) return;\n\n // Wait for 2 frame to clean direction\n raf.cancel(wheelDirectionCleanRef.current);\n wheelDirectionCleanRef.current = raf(function () {\n wheelDirectionRef.current = null;\n }, 2);\n var deltaX = event.deltaX,\n deltaY = event.deltaY,\n shiftKey = event.shiftKey;\n var mergedDeltaX = deltaX;\n var mergedDeltaY = deltaY;\n if (wheelDirectionRef.current === 'sx' || !wheelDirectionRef.current && (shiftKey || false) && deltaY && !deltaX) {\n mergedDeltaX = deltaY;\n mergedDeltaY = 0;\n wheelDirectionRef.current = 'sx';\n }\n var absX = Math.abs(mergedDeltaX);\n var absY = Math.abs(mergedDeltaY);\n if (wheelDirectionRef.current === null) {\n wheelDirectionRef.current = horizontalScroll && absX > absY ? 'x' : 'y';\n }\n if (wheelDirectionRef.current === 'y') {\n onWheelY(event, mergedDeltaY);\n } else {\n onWheelX(event, mergedDeltaX);\n }\n }\n\n // A patch for firefox\n function onFireFoxScroll(event) {\n if (!inVirtual) return;\n isMouseScrollRef.current = event.detail === wheelValueRef.current;\n }\n return [onWheel, onFireFoxScroll];\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\";\n// Firefox has low performance of map.\nvar CacheMap = /*#__PURE__*/function () {\n function CacheMap() {\n _classCallCheck(this, CacheMap);\n _defineProperty(this, \"maps\", void 0);\n // Used for cache key\n // `useMemo` no need to update if `id` not change\n _defineProperty(this, \"id\", 0);\n this.maps = Object.create(null);\n }\n _createClass(CacheMap, [{\n key: \"set\",\n value: function set(key, value) {\n this.maps[key] = value;\n this.id += 1;\n }\n }, {\n key: \"get\",\n value: function get(key) {\n return this.maps[key];\n }\n }]);\n return CacheMap;\n}();\nexport default CacheMap;","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 classNames from 'classnames';\nimport raf from \"rc-util/es/raf\";\nimport * as React from 'react';\nfunction getPageXY(e, horizontal) {\n var obj = 'touches' in e ? e.touches[0] : e;\n return obj[horizontal ? 'pageX' : 'pageY'];\n}\nvar ScrollBar = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var prefixCls = props.prefixCls,\n rtl = props.rtl,\n scrollOffset = props.scrollOffset,\n scrollRange = props.scrollRange,\n onStartMove = props.onStartMove,\n onStopMove = props.onStopMove,\n onScroll = props.onScroll,\n horizontal = props.horizontal,\n spinSize = props.spinSize,\n containerSize = props.containerSize,\n style = props.style,\n propsThumbStyle = props.thumbStyle;\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n dragging = _React$useState2[0],\n setDragging = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n pageXY = _React$useState4[0],\n setPageXY = _React$useState4[1];\n var _React$useState5 = React.useState(null),\n _React$useState6 = _slicedToArray(_React$useState5, 2),\n startTop = _React$useState6[0],\n setStartTop = _React$useState6[1];\n var isLTR = !rtl;\n\n // ========================= Refs =========================\n var scrollbarRef = React.useRef();\n var thumbRef = React.useRef();\n\n // ======================= Visible ========================\n var _React$useState7 = React.useState(false),\n _React$useState8 = _slicedToArray(_React$useState7, 2),\n visible = _React$useState8[0],\n setVisible = _React$useState8[1];\n var visibleTimeoutRef = React.useRef();\n var delayHidden = function delayHidden() {\n clearTimeout(visibleTimeoutRef.current);\n setVisible(true);\n visibleTimeoutRef.current = setTimeout(function () {\n setVisible(false);\n }, 3000);\n };\n\n // ======================== Range =========================\n var enableScrollRange = scrollRange - containerSize || 0;\n var enableOffsetRange = containerSize - spinSize || 0;\n\n // ========================= Top ==========================\n var top = React.useMemo(function () {\n if (scrollOffset === 0 || enableScrollRange === 0) {\n return 0;\n }\n var ptg = scrollOffset / enableScrollRange;\n return ptg * enableOffsetRange;\n }, [scrollOffset, enableScrollRange, enableOffsetRange]);\n\n // ====================== Container =======================\n var onContainerMouseDown = function onContainerMouseDown(e) {\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Thumb =========================\n var stateRef = React.useRef({\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n });\n stateRef.current = {\n top: top,\n dragging: dragging,\n pageY: pageXY,\n startTop: startTop\n };\n var onThumbMouseDown = function onThumbMouseDown(e) {\n setDragging(true);\n setPageXY(getPageXY(e, horizontal));\n setStartTop(stateRef.current.top);\n onStartMove();\n e.stopPropagation();\n e.preventDefault();\n };\n\n // ======================== Effect ========================\n\n // React make event as passive, but we need to preventDefault\n // Add event on dom directly instead.\n // ref: https://github.com/facebook/react/issues/9809\n React.useEffect(function () {\n var onScrollbarTouchStart = function onScrollbarTouchStart(e) {\n e.preventDefault();\n };\n var scrollbarEle = scrollbarRef.current;\n var thumbEle = thumbRef.current;\n scrollbarEle.addEventListener('touchstart', onScrollbarTouchStart, {\n passive: false\n });\n thumbEle.addEventListener('touchstart', onThumbMouseDown, {\n passive: false\n });\n return function () {\n scrollbarEle.removeEventListener('touchstart', onScrollbarTouchStart);\n thumbEle.removeEventListener('touchstart', onThumbMouseDown);\n };\n }, []);\n\n // Pass to effect\n var enableScrollRangeRef = React.useRef();\n enableScrollRangeRef.current = enableScrollRange;\n var enableOffsetRangeRef = React.useRef();\n enableOffsetRangeRef.current = enableOffsetRange;\n React.useEffect(function () {\n if (dragging) {\n var moveRafId;\n var onMouseMove = function onMouseMove(e) {\n var _stateRef$current = stateRef.current,\n stateDragging = _stateRef$current.dragging,\n statePageY = _stateRef$current.pageY,\n stateStartTop = _stateRef$current.startTop;\n raf.cancel(moveRafId);\n var rect = scrollbarRef.current.getBoundingClientRect();\n var scale = containerSize / (horizontal ? rect.width : rect.height);\n if (stateDragging) {\n var offset = (getPageXY(e, horizontal) - statePageY) * scale;\n var newTop = stateStartTop;\n if (!isLTR && horizontal) {\n newTop -= offset;\n } else {\n newTop += offset;\n }\n var tmpEnableScrollRange = enableScrollRangeRef.current;\n var tmpEnableOffsetRange = enableOffsetRangeRef.current;\n var ptg = tmpEnableOffsetRange ? newTop / tmpEnableOffsetRange : 0;\n var newScrollTop = Math.ceil(ptg * tmpEnableScrollRange);\n newScrollTop = Math.max(newScrollTop, 0);\n newScrollTop = Math.min(newScrollTop, tmpEnableScrollRange);\n moveRafId = raf(function () {\n onScroll(newScrollTop, horizontal);\n });\n }\n };\n var onMouseUp = function onMouseUp() {\n setDragging(false);\n onStopMove();\n };\n window.addEventListener('mousemove', onMouseMove, {\n passive: true\n });\n window.addEventListener('touchmove', onMouseMove, {\n passive: true\n });\n window.addEventListener('mouseup', onMouseUp, {\n passive: true\n });\n window.addEventListener('touchend', onMouseUp, {\n passive: true\n });\n return function () {\n window.removeEventListener('mousemove', onMouseMove);\n window.removeEventListener('touchmove', onMouseMove);\n window.removeEventListener('mouseup', onMouseUp);\n window.removeEventListener('touchend', onMouseUp);\n raf.cancel(moveRafId);\n };\n }\n }, [dragging]);\n React.useEffect(function () {\n delayHidden();\n return function () {\n clearTimeout(visibleTimeoutRef.current);\n };\n }, [scrollOffset]);\n\n // ====================== Imperative ======================\n React.useImperativeHandle(ref, function () {\n return {\n delayHidden: delayHidden\n };\n });\n\n // ======================== Render ========================\n var scrollbarPrefixCls = \"\".concat(prefixCls, \"-scrollbar\");\n var containerStyle = {\n position: 'absolute',\n visibility: visible ? null : 'hidden'\n };\n var thumbStyle = {\n position: 'absolute',\n background: 'rgba(0, 0, 0, 0.5)',\n borderRadius: 99,\n cursor: 'pointer',\n userSelect: 'none'\n };\n if (horizontal) {\n // Container\n containerStyle.height = 8;\n containerStyle.left = 0;\n containerStyle.right = 0;\n containerStyle.bottom = 0;\n\n // Thumb\n thumbStyle.height = '100%';\n thumbStyle.width = spinSize;\n if (isLTR) {\n thumbStyle.left = top;\n } else {\n thumbStyle.right = top;\n }\n } else {\n // Container\n containerStyle.width = 8;\n containerStyle.top = 0;\n containerStyle.bottom = 0;\n if (isLTR) {\n containerStyle.right = 0;\n } else {\n containerStyle.left = 0;\n }\n\n // Thumb\n thumbStyle.width = '100%';\n thumbStyle.height = spinSize;\n thumbStyle.top = top;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: scrollbarRef,\n className: classNames(scrollbarPrefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-horizontal\"), horizontal), \"\".concat(scrollbarPrefixCls, \"-vertical\"), !horizontal), \"\".concat(scrollbarPrefixCls, \"-visible\"), visible)),\n style: _objectSpread(_objectSpread({}, containerStyle), style),\n onMouseDown: onContainerMouseDown,\n onMouseMove: delayHidden\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: thumbRef,\n className: classNames(\"\".concat(scrollbarPrefixCls, \"-thumb\"), _defineProperty({}, \"\".concat(scrollbarPrefixCls, \"-thumb-moving\"), dragging)),\n style: _objectSpread(_objectSpread({}, thumbStyle), propsThumbStyle),\n onMouseDown: onThumbMouseDown\n }));\n});\nif (process.env.NODE_ENV !== 'production') {\n ScrollBar.displayName = 'ScrollBar';\n}\nexport default ScrollBar;","var MIN_SIZE = 20;\nexport function getSpinSize() {\n var containerSize = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;\n var scrollRange = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;\n var baseSize = containerSize / scrollRange * containerSize;\n if (isNaN(baseSize)) {\n baseSize = 0;\n }\n baseSize = Math.max(baseSize, MIN_SIZE);\n return Math.floor(baseSize);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\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 = [\"prefixCls\", \"className\", \"height\", \"itemHeight\", \"fullHeight\", \"style\", \"data\", \"children\", \"itemKey\", \"virtual\", \"direction\", \"scrollWidth\", \"component\", \"onScroll\", \"onVirtualScroll\", \"onVisibleChange\", \"innerProps\", \"extraRender\", \"styles\"];\nimport classNames from 'classnames';\nimport ResizeObserver from 'rc-resize-observer';\nimport { useEvent } from 'rc-util';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport * as React from 'react';\nimport { useRef, useState } from 'react';\nimport { flushSync } from 'react-dom';\nimport Filler from \"./Filler\";\nimport useChildren from \"./hooks/useChildren\";\nimport useDiffItem from \"./hooks/useDiffItem\";\nimport useFrameWheel from \"./hooks/useFrameWheel\";\nimport { useGetSize } from \"./hooks/useGetSize\";\nimport useHeights from \"./hooks/useHeights\";\nimport useMobileTouchMove from \"./hooks/useMobileTouchMove\";\nimport useOriginScroll from \"./hooks/useOriginScroll\";\nimport useScrollTo from \"./hooks/useScrollTo\";\nimport ScrollBar from \"./ScrollBar\";\nimport { getSpinSize } from \"./utils/scrollbarUtil\";\nvar EMPTY_DATA = [];\nvar ScrollStyle = {\n overflowY: 'auto',\n overflowAnchor: 'none'\n};\nexport function RawList(props, ref) {\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-virtual-list' : _props$prefixCls,\n className = props.className,\n height = props.height,\n itemHeight = props.itemHeight,\n _props$fullHeight = props.fullHeight,\n fullHeight = _props$fullHeight === void 0 ? true : _props$fullHeight,\n style = props.style,\n data = props.data,\n children = props.children,\n itemKey = props.itemKey,\n virtual = props.virtual,\n direction = props.direction,\n scrollWidth = props.scrollWidth,\n _props$component = props.component,\n Component = _props$component === void 0 ? 'div' : _props$component,\n onScroll = props.onScroll,\n onVirtualScroll = props.onVirtualScroll,\n onVisibleChange = props.onVisibleChange,\n innerProps = props.innerProps,\n extraRender = props.extraRender,\n styles = props.styles,\n restProps = _objectWithoutProperties(props, _excluded);\n\n // =============================== Item Key ===============================\n var getKey = React.useCallback(function (item) {\n if (typeof itemKey === 'function') {\n return itemKey(item);\n }\n return item === null || item === void 0 ? void 0 : item[itemKey];\n }, [itemKey]);\n\n // ================================ Height ================================\n var _useHeights = useHeights(getKey, null, null),\n _useHeights2 = _slicedToArray(_useHeights, 4),\n setInstanceRef = _useHeights2[0],\n collectHeight = _useHeights2[1],\n heights = _useHeights2[2],\n heightUpdatedMark = _useHeights2[3];\n\n // ================================= MISC =================================\n var useVirtual = !!(virtual !== false && height && itemHeight);\n var containerHeight = React.useMemo(function () {\n return Object.values(heights.maps).reduce(function (total, curr) {\n return total + curr;\n }, 0);\n }, [heights.id, heights.maps]);\n var inVirtual = useVirtual && data && (Math.max(itemHeight * data.length, containerHeight) > height || !!scrollWidth);\n var isRTL = direction === 'rtl';\n var mergedClassName = classNames(prefixCls, _defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), isRTL), className);\n var mergedData = data || EMPTY_DATA;\n var componentRef = useRef();\n var fillerInnerRef = useRef();\n var containerRef = useRef();\n\n // =============================== Item Key ===============================\n\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n offsetTop = _useState2[0],\n setOffsetTop = _useState2[1];\n var _useState3 = useState(0),\n _useState4 = _slicedToArray(_useState3, 2),\n offsetLeft = _useState4[0],\n setOffsetLeft = _useState4[1];\n var _useState5 = useState(false),\n _useState6 = _slicedToArray(_useState5, 2),\n scrollMoving = _useState6[0],\n setScrollMoving = _useState6[1];\n var onScrollbarStartMove = function onScrollbarStartMove() {\n setScrollMoving(true);\n };\n var onScrollbarStopMove = function onScrollbarStopMove() {\n setScrollMoving(false);\n };\n var sharedConfig = {\n getKey: getKey\n };\n\n // ================================ Scroll ================================\n function syncScrollTop(newTop) {\n setOffsetTop(function (origin) {\n var value;\n if (typeof newTop === 'function') {\n value = newTop(origin);\n } else {\n value = newTop;\n }\n var alignedTop = keepInRange(value);\n componentRef.current.scrollTop = alignedTop;\n return alignedTop;\n });\n }\n\n // ================================ Legacy ================================\n // Put ref here since the range is generate by follow\n var rangeRef = useRef({\n start: 0,\n end: mergedData.length\n });\n var diffItemRef = useRef();\n var _useDiffItem = useDiffItem(mergedData, getKey),\n _useDiffItem2 = _slicedToArray(_useDiffItem, 1),\n diffItem = _useDiffItem2[0];\n diffItemRef.current = diffItem;\n\n // ========================== Visible Calculation =========================\n var _React$useMemo = React.useMemo(function () {\n if (!useVirtual) {\n return {\n scrollHeight: undefined,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n\n // Always use virtual scroll bar in avoid shaking\n if (!inVirtual) {\n var _fillerInnerRef$curre;\n return {\n scrollHeight: ((_fillerInnerRef$curre = fillerInnerRef.current) === null || _fillerInnerRef$curre === void 0 ? void 0 : _fillerInnerRef$curre.offsetHeight) || 0,\n start: 0,\n end: mergedData.length - 1,\n offset: undefined\n };\n }\n var itemTop = 0;\n var startIndex;\n var startOffset;\n var endIndex;\n var dataLen = mergedData.length;\n for (var i = 0; i < dataLen; i += 1) {\n var _item = mergedData[i];\n var key = getKey(_item);\n var cacheHeight = heights.get(key);\n var currentItemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n\n // Check item top in the range\n if (currentItemBottom >= offsetTop && startIndex === undefined) {\n startIndex = i;\n startOffset = itemTop;\n }\n\n // Check item bottom in the range. We will render additional one item for motion usage\n if (currentItemBottom > offsetTop + height && endIndex === undefined) {\n endIndex = i;\n }\n itemTop = currentItemBottom;\n }\n\n // When scrollTop at the end but data cut to small count will reach this\n if (startIndex === undefined) {\n startIndex = 0;\n startOffset = 0;\n endIndex = Math.ceil(height / itemHeight);\n }\n if (endIndex === undefined) {\n endIndex = mergedData.length - 1;\n }\n\n // Give cache to improve scroll experience\n endIndex = Math.min(endIndex + 1, mergedData.length - 1);\n return {\n scrollHeight: itemTop,\n start: startIndex,\n end: endIndex,\n offset: startOffset\n };\n }, [inVirtual, useVirtual, offsetTop, mergedData, heightUpdatedMark, height]),\n scrollHeight = _React$useMemo.scrollHeight,\n start = _React$useMemo.start,\n end = _React$useMemo.end,\n fillerOffset = _React$useMemo.offset;\n rangeRef.current.start = start;\n rangeRef.current.end = end;\n\n // ================================= Size =================================\n var _React$useState = React.useState({\n width: 0,\n height: height\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n size = _React$useState2[0],\n setSize = _React$useState2[1];\n var onHolderResize = function onHolderResize(sizeInfo) {\n setSize({\n width: sizeInfo.offsetWidth,\n height: sizeInfo.offsetHeight\n });\n };\n\n // Hack on scrollbar to enable flash call\n var verticalScrollBarRef = useRef();\n var horizontalScrollBarRef = useRef();\n var horizontalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.width, scrollWidth);\n }, [size.width, scrollWidth]);\n var verticalScrollBarSpinSize = React.useMemo(function () {\n return getSpinSize(size.height, scrollHeight);\n }, [size.height, scrollHeight]);\n\n // =============================== In Range ===============================\n var maxScrollHeight = scrollHeight - height;\n var maxScrollHeightRef = useRef(maxScrollHeight);\n maxScrollHeightRef.current = maxScrollHeight;\n function keepInRange(newScrollTop) {\n var newTop = newScrollTop;\n if (!Number.isNaN(maxScrollHeightRef.current)) {\n newTop = Math.min(newTop, maxScrollHeightRef.current);\n }\n newTop = Math.max(newTop, 0);\n return newTop;\n }\n var isScrollAtTop = offsetTop <= 0;\n var isScrollAtBottom = offsetTop >= maxScrollHeight;\n var isScrollAtLeft = offsetLeft <= 0;\n var isScrollAtRight = offsetLeft >= scrollWidth;\n var originScroll = useOriginScroll(isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight);\n\n // ================================ Scroll ================================\n var getVirtualScrollInfo = function getVirtualScrollInfo() {\n return {\n x: isRTL ? -offsetLeft : offsetLeft,\n y: offsetTop\n };\n };\n var lastVirtualScrollInfoRef = useRef(getVirtualScrollInfo());\n var triggerScroll = useEvent(function (params) {\n if (onVirtualScroll) {\n var nextInfo = _objectSpread(_objectSpread({}, getVirtualScrollInfo()), params);\n\n // Trigger when offset changed\n if (lastVirtualScrollInfoRef.current.x !== nextInfo.x || lastVirtualScrollInfoRef.current.y !== nextInfo.y) {\n onVirtualScroll(nextInfo);\n lastVirtualScrollInfoRef.current = nextInfo;\n }\n }\n });\n function onScrollBar(newScrollOffset, horizontal) {\n var newOffset = newScrollOffset;\n if (horizontal) {\n flushSync(function () {\n setOffsetLeft(newOffset);\n });\n triggerScroll();\n } else {\n syncScrollTop(newOffset);\n }\n }\n\n // When data size reduce. It may trigger native scroll event back to fit scroll position\n function onFallbackScroll(e) {\n var newScrollTop = e.currentTarget.scrollTop;\n if (newScrollTop !== offsetTop) {\n syncScrollTop(newScrollTop);\n }\n\n // Trigger origin onScroll\n onScroll === null || onScroll === void 0 || onScroll(e);\n triggerScroll();\n }\n var keepInHorizontalRange = function keepInHorizontalRange(nextOffsetLeft) {\n var tmpOffsetLeft = nextOffsetLeft;\n var max = !!scrollWidth ? scrollWidth - size.width : 0;\n tmpOffsetLeft = Math.max(tmpOffsetLeft, 0);\n tmpOffsetLeft = Math.min(tmpOffsetLeft, max);\n return tmpOffsetLeft;\n };\n var onWheelDelta = useEvent(function (offsetXY, fromHorizontal) {\n if (fromHorizontal) {\n // Horizontal scroll no need sync virtual position\n\n flushSync(function () {\n setOffsetLeft(function (left) {\n var nextOffsetLeft = left + (isRTL ? -offsetXY : offsetXY);\n return keepInHorizontalRange(nextOffsetLeft);\n });\n });\n triggerScroll();\n } else {\n syncScrollTop(function (top) {\n var newTop = top + offsetXY;\n return newTop;\n });\n }\n });\n\n // Since this added in global,should use ref to keep update\n var _useFrameWheel = useFrameWheel(useVirtual, isScrollAtTop, isScrollAtBottom, isScrollAtLeft, isScrollAtRight, !!scrollWidth, onWheelDelta),\n _useFrameWheel2 = _slicedToArray(_useFrameWheel, 2),\n onRawWheel = _useFrameWheel2[0],\n onFireFoxScroll = _useFrameWheel2[1];\n\n // Mobile touch move\n useMobileTouchMove(useVirtual, componentRef, function (isHorizontal, delta, smoothOffset) {\n if (originScroll(isHorizontal, delta, smoothOffset)) {\n return false;\n }\n onRawWheel({\n preventDefault: function preventDefault() {},\n deltaX: isHorizontal ? delta : 0,\n deltaY: isHorizontal ? 0 : delta\n });\n return true;\n });\n useLayoutEffect(function () {\n // Firefox only\n function onMozMousePixelScroll(e) {\n if (useVirtual) {\n e.preventDefault();\n }\n }\n var componentEle = componentRef.current;\n componentEle.addEventListener('wheel', onRawWheel, {\n passive: false\n });\n componentEle.addEventListener('DOMMouseScroll', onFireFoxScroll, {\n passive: true\n });\n componentEle.addEventListener('MozMousePixelScroll', onMozMousePixelScroll, {\n passive: false\n });\n return function () {\n componentEle.removeEventListener('wheel', onRawWheel);\n componentEle.removeEventListener('DOMMouseScroll', onFireFoxScroll);\n componentEle.removeEventListener('MozMousePixelScroll', onMozMousePixelScroll);\n };\n }, [useVirtual]);\n\n // Sync scroll left\n useLayoutEffect(function () {\n if (scrollWidth) {\n var newOffsetLeft = keepInHorizontalRange(offsetLeft);\n setOffsetLeft(newOffsetLeft);\n triggerScroll({\n x: newOffsetLeft\n });\n }\n }, [size.width, scrollWidth]);\n\n // ================================= Ref ==================================\n var delayHideScrollBar = function delayHideScrollBar() {\n var _verticalScrollBarRef, _horizontalScrollBarR;\n (_verticalScrollBarRef = verticalScrollBarRef.current) === null || _verticalScrollBarRef === void 0 || _verticalScrollBarRef.delayHidden();\n (_horizontalScrollBarR = horizontalScrollBarRef.current) === null || _horizontalScrollBarR === void 0 || _horizontalScrollBarR.delayHidden();\n };\n var _scrollTo = useScrollTo(componentRef, mergedData, heights, itemHeight, getKey, function () {\n return collectHeight(true);\n }, syncScrollTop, delayHideScrollBar);\n React.useImperativeHandle(ref, function () {\n return {\n nativeElement: containerRef.current,\n getScrollInfo: getVirtualScrollInfo,\n scrollTo: function scrollTo(config) {\n function isPosScroll(arg) {\n return arg && _typeof(arg) === 'object' && ('left' in arg || 'top' in arg);\n }\n if (isPosScroll(config)) {\n // Scroll X\n if (config.left !== undefined) {\n setOffsetLeft(keepInHorizontalRange(config.left));\n }\n\n // Scroll Y\n _scrollTo(config.top);\n } else {\n _scrollTo(config);\n }\n }\n };\n });\n\n // ================================ Effect ================================\n /** We need told outside that some list not rendered */\n useLayoutEffect(function () {\n if (onVisibleChange) {\n var renderList = mergedData.slice(start, end + 1);\n onVisibleChange(renderList, mergedData);\n }\n }, [start, end, mergedData]);\n\n // ================================ Extra =================================\n var getSize = useGetSize(mergedData, getKey, heights, itemHeight);\n var extraContent = extraRender === null || extraRender === void 0 ? void 0 : extraRender({\n start: start,\n end: end,\n virtual: inVirtual,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n rtl: isRTL,\n getSize: getSize\n });\n\n // ================================ Render ================================\n var listChildren = useChildren(mergedData, start, end, scrollWidth, offsetLeft, setInstanceRef, children, sharedConfig);\n var componentStyle = null;\n if (height) {\n componentStyle = _objectSpread(_defineProperty({}, fullHeight ? 'height' : 'maxHeight', height), ScrollStyle);\n if (useVirtual) {\n componentStyle.overflowY = 'hidden';\n if (scrollWidth) {\n componentStyle.overflowX = 'hidden';\n }\n if (scrollMoving) {\n componentStyle.pointerEvents = 'none';\n }\n }\n }\n var containerProps = {};\n if (isRTL) {\n containerProps.dir = 'rtl';\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: containerRef,\n style: _objectSpread(_objectSpread({}, style), {}, {\n position: 'relative'\n }),\n className: mergedClassName\n }, containerProps, restProps), /*#__PURE__*/React.createElement(ResizeObserver, {\n onResize: onHolderResize\n }, /*#__PURE__*/React.createElement(Component, {\n className: \"\".concat(prefixCls, \"-holder\"),\n style: componentStyle,\n ref: componentRef,\n onScroll: onFallbackScroll,\n onMouseEnter: delayHideScrollBar\n }, /*#__PURE__*/React.createElement(Filler, {\n prefixCls: prefixCls,\n height: scrollHeight,\n offsetX: offsetLeft,\n offsetY: fillerOffset,\n scrollWidth: scrollWidth,\n onInnerResize: collectHeight,\n ref: fillerInnerRef,\n innerProps: innerProps,\n rtl: isRTL,\n extra: extraContent\n }, listChildren))), inVirtual && scrollHeight > height && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: verticalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetTop,\n scrollRange: scrollHeight,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: verticalScrollBarSpinSize,\n containerSize: size.height,\n style: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.verticalScrollBarThumb\n }), inVirtual && scrollWidth > size.width && /*#__PURE__*/React.createElement(ScrollBar, {\n ref: horizontalScrollBarRef,\n prefixCls: prefixCls,\n scrollOffset: offsetLeft,\n scrollRange: scrollWidth,\n rtl: isRTL,\n onScroll: onScrollBar,\n onStartMove: onScrollbarStartMove,\n onStopMove: onScrollbarStopMove,\n spinSize: horizontalScrollBarSpinSize,\n containerSize: size.width,\n horizontal: true,\n style: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBar,\n thumbStyle: styles === null || styles === void 0 ? void 0 : styles.horizontalScrollBarThumb\n }));\n}\nvar List = /*#__PURE__*/React.forwardRef(RawList);\nList.displayName = 'List';\nexport default List;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { useRef, useEffect } from 'react';\nimport findDOMNode from \"rc-util/es/Dom/findDOMNode\";\nimport raf from \"rc-util/es/raf\";\nimport CacheMap from \"../utils/CacheMap\";\nexport default function useHeights(getKey, onItemAdd, onItemRemove) {\n var _React$useState = React.useState(0),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n updatedMark = _React$useState2[0],\n setUpdatedMark = _React$useState2[1];\n var instanceRef = useRef(new Map());\n var heightsRef = useRef(new CacheMap());\n var collectRafRef = useRef();\n function cancelRaf() {\n raf.cancel(collectRafRef.current);\n }\n function collectHeight() {\n var sync = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n cancelRaf();\n var doCollect = function doCollect() {\n instanceRef.current.forEach(function (element, key) {\n if (element && element.offsetParent) {\n var htmlElement = findDOMNode(element);\n var offsetHeight = htmlElement.offsetHeight;\n if (heightsRef.current.get(key) !== offsetHeight) {\n heightsRef.current.set(key, htmlElement.offsetHeight);\n }\n }\n });\n\n // Always trigger update mark to tell parent that should re-calculate heights when resized\n setUpdatedMark(function (c) {\n return c + 1;\n });\n };\n if (sync) {\n doCollect();\n } else {\n collectRafRef.current = raf(doCollect);\n }\n }\n function setInstanceRef(item, instance) {\n var key = getKey(item);\n var origin = instanceRef.current.get(key);\n if (instance) {\n instanceRef.current.set(key, instance);\n collectHeight();\n } else {\n instanceRef.current.delete(key);\n }\n\n // Instance changed\n if (!origin !== !instance) {\n if (instance) {\n onItemAdd === null || onItemAdd === void 0 || onItemAdd(item);\n } else {\n onItemRemove === null || onItemRemove === void 0 || onItemRemove(item);\n }\n }\n }\n useEffect(function () {\n return cancelRaf;\n }, []);\n return [setInstanceRef, collectHeight, heightsRef.current, updatedMark];\n}","import useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { useRef } from 'react';\nvar SMOOTH_PTG = 14 / 15;\nexport default function useMobileTouchMove(inVirtual, listRef, callback) {\n var touchedRef = useRef(false);\n var touchXRef = useRef(0);\n var touchYRef = useRef(0);\n var elementRef = useRef(null);\n\n // Smooth scroll\n var intervalRef = useRef(null);\n\n /* eslint-disable prefer-const */\n var cleanUpEvents;\n var onTouchMove = function onTouchMove(e) {\n if (touchedRef.current) {\n var currentX = Math.ceil(e.touches[0].pageX);\n var currentY = Math.ceil(e.touches[0].pageY);\n var offsetX = touchXRef.current - currentX;\n var offsetY = touchYRef.current - currentY;\n var _isHorizontal = Math.abs(offsetX) > Math.abs(offsetY);\n if (_isHorizontal) {\n touchXRef.current = currentX;\n } else {\n touchYRef.current = currentY;\n }\n if (callback(_isHorizontal, _isHorizontal ? offsetX : offsetY)) {\n e.preventDefault();\n }\n // Smooth interval\n clearInterval(intervalRef.current);\n intervalRef.current = setInterval(function () {\n if (_isHorizontal) {\n offsetX *= SMOOTH_PTG;\n } else {\n offsetY *= SMOOTH_PTG;\n }\n var offset = Math.floor(_isHorizontal ? offsetX : offsetY);\n if (!callback(_isHorizontal, offset, true) || Math.abs(offset) <= 0.1) {\n clearInterval(intervalRef.current);\n }\n }, 16);\n }\n };\n var onTouchEnd = function onTouchEnd() {\n touchedRef.current = false;\n cleanUpEvents();\n };\n var onTouchStart = function onTouchStart(e) {\n cleanUpEvents();\n if (e.touches.length === 1 && !touchedRef.current) {\n touchedRef.current = true;\n touchXRef.current = Math.ceil(e.touches[0].pageX);\n touchYRef.current = Math.ceil(e.touches[0].pageY);\n elementRef.current = e.target;\n elementRef.current.addEventListener('touchmove', onTouchMove, {\n passive: false\n });\n elementRef.current.addEventListener('touchend', onTouchEnd, {\n passive: true\n });\n }\n };\n cleanUpEvents = function cleanUpEvents() {\n if (elementRef.current) {\n elementRef.current.removeEventListener('touchmove', onTouchMove);\n elementRef.current.removeEventListener('touchend', onTouchEnd);\n }\n };\n useLayoutEffect(function () {\n if (inVirtual) {\n listRef.current.addEventListener('touchstart', onTouchStart, {\n passive: true\n });\n }\n return function () {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 || _listRef$current.removeEventListener('touchstart', onTouchStart);\n cleanUpEvents();\n clearInterval(intervalRef.current);\n };\n }, [inVirtual]);\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/* eslint-disable no-param-reassign */\nimport * as React from 'react';\nimport raf from \"rc-util/es/raf\";\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport { warning } from 'rc-util';\nvar MAX_TIMES = 10;\nexport default function useScrollTo(containerRef, data, heights, itemHeight, getKey, collectHeight, syncScrollTop, triggerFlash) {\n var scrollRef = React.useRef();\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n syncState = _React$useState2[0],\n setSyncState = _React$useState2[1];\n\n // ========================== Sync Scroll ==========================\n useLayoutEffect(function () {\n if (syncState && syncState.times < MAX_TIMES) {\n // Never reach\n if (!containerRef.current) {\n setSyncState(function (ori) {\n return _objectSpread({}, ori);\n });\n return;\n }\n collectHeight();\n var targetAlign = syncState.targetAlign,\n originAlign = syncState.originAlign,\n index = syncState.index,\n offset = syncState.offset;\n var height = containerRef.current.clientHeight;\n var needCollectHeight = false;\n var newTargetAlign = targetAlign;\n var targetTop = null;\n\n // Go to next frame if height not exist\n if (height) {\n var mergedAlign = targetAlign || originAlign;\n\n // Get top & bottom\n var stackTop = 0;\n var itemTop = 0;\n var itemBottom = 0;\n var maxLen = Math.min(data.length - 1, index);\n for (var i = 0; i <= maxLen; i += 1) {\n var key = getKey(data[i]);\n itemTop = stackTop;\n var cacheHeight = heights.get(key);\n itemBottom = itemTop + (cacheHeight === undefined ? itemHeight : cacheHeight);\n stackTop = itemBottom;\n }\n\n // Check if need sync height (visible range has item not record height)\n var leftHeight = mergedAlign === 'top' ? offset : height - offset;\n for (var _i = maxLen; _i >= 0; _i -= 1) {\n var _key = getKey(data[_i]);\n var _cacheHeight = heights.get(_key);\n if (_cacheHeight === undefined) {\n needCollectHeight = true;\n break;\n }\n leftHeight -= _cacheHeight;\n if (leftHeight <= 0) {\n break;\n }\n }\n\n // Scroll to\n switch (mergedAlign) {\n case 'top':\n targetTop = itemTop - offset;\n break;\n case 'bottom':\n targetTop = itemBottom - height + offset;\n break;\n default:\n {\n var scrollTop = containerRef.current.scrollTop;\n var scrollBottom = scrollTop + height;\n if (itemTop < scrollTop) {\n newTargetAlign = 'top';\n } else if (itemBottom > scrollBottom) {\n newTargetAlign = 'bottom';\n }\n }\n }\n if (targetTop !== null) {\n syncScrollTop(targetTop);\n }\n\n // One more time for sync\n if (targetTop !== syncState.lastTop) {\n needCollectHeight = true;\n }\n }\n\n // Trigger next effect\n if (needCollectHeight) {\n setSyncState(_objectSpread(_objectSpread({}, syncState), {}, {\n times: syncState.times + 1,\n targetAlign: newTargetAlign,\n lastTop: targetTop\n }));\n }\n } else if (process.env.NODE_ENV !== 'production' && (syncState === null || syncState === void 0 ? void 0 : syncState.times) === MAX_TIMES) {\n warning(false, 'Seems `scrollTo` with `rc-virtual-list` reach the max limitation. Please fire issue for us. Thanks.');\n }\n }, [syncState, containerRef.current]);\n\n // =========================== Scroll To ===========================\n return function (arg) {\n // When not argument provided, we think dev may want to show the scrollbar\n if (arg === null || arg === undefined) {\n triggerFlash();\n return;\n }\n\n // Normal scroll logic\n raf.cancel(scrollRef.current);\n if (typeof arg === 'number') {\n syncScrollTop(arg);\n } else if (arg && _typeof(arg) === 'object') {\n var index;\n var align = arg.align;\n if ('index' in arg) {\n index = arg.index;\n } else {\n index = data.findIndex(function (item) {\n return getKey(item) === arg.key;\n });\n }\n var _arg$offset = arg.offset,\n offset = _arg$offset === void 0 ? 0 : _arg$offset;\n setSyncState({\n times: 0,\n index: index,\n offset: offset,\n originAlign: align\n });\n }\n };\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\n\n/**\n * Size info need loop query for the `heights` which will has the perf issue.\n * Let cache result for each render phase.\n */\nexport function useGetSize(mergedData, getKey, heights, itemHeight) {\n var _React$useMemo = React.useMemo(function () {\n return [new Map(), []];\n }, [mergedData, heights.id, itemHeight]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n key2Index = _React$useMemo2[0],\n bottomList = _React$useMemo2[1];\n var getSize = function getSize(startKey) {\n var endKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : startKey;\n // Get from cache first\n var startIndex = key2Index.get(startKey);\n var endIndex = key2Index.get(endKey);\n\n // Loop to fill the cache\n if (startIndex === undefined || endIndex === undefined) {\n var dataLen = mergedData.length;\n for (var i = bottomList.length; i < dataLen; i += 1) {\n var _heights$get;\n var item = mergedData[i];\n var key = getKey(item);\n key2Index.set(key, i);\n var cacheHeight = (_heights$get = heights.get(key)) !== null && _heights$get !== void 0 ? _heights$get : itemHeight;\n bottomList[i] = (bottomList[i - 1] || 0) + cacheHeight;\n if (key === startKey) {\n startIndex = i;\n }\n if (key === endKey) {\n endIndex = i;\n }\n if (startIndex !== undefined && endIndex !== undefined) {\n break;\n }\n }\n }\n return {\n top: bottomList[startIndex - 1] || 0,\n bottom: bottomList[endIndex]\n };\n };\n return getSize;\n}","import * as React from 'react';\nimport { Item } from \"../Item\";\nexport default function useChildren(list, startIndex, endIndex, scrollWidth, offsetX, setNodeRef, renderFunc, _ref) {\n var getKey = _ref.getKey;\n return list.slice(startIndex, endIndex + 1).map(function (item, index) {\n var eleIndex = startIndex + index;\n var node = renderFunc(item, eleIndex, {\n style: {\n width: scrollWidth\n },\n offsetX: offsetX\n });\n var key = getKey(item);\n return /*#__PURE__*/React.createElement(Item, {\n key: key,\n setRef: function setRef(ele) {\n return setNodeRef(item, ele);\n }\n }, node);\n });\n}","import List from \"./List\";\nexport default List;","import * as React from 'react';\n\n// Use any here since we do not get the type during compilation\n\nvar SelectContext = /*#__PURE__*/React.createContext(null);\nexport default SelectContext;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nvar _excluded = [\"disabled\", \"title\", \"children\", \"style\", \"className\"];\nimport * as React from 'react';\nimport { useEffect } from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport omit from \"rc-util/es/omit\";\nimport pickAttrs from \"rc-util/es/pickAttrs\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport classNames from 'classnames';\nimport List from 'rc-virtual-list';\nimport TransBtn from \"./TransBtn\";\nimport { isPlatformMac } from \"./utils/platformUtil\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nimport SelectContext from \"./SelectContext\";\n\n// export interface OptionListProps {\n\nfunction isTitleType(content) {\n return typeof content === 'string' || typeof content === 'number';\n}\n\n/**\n * Using virtual list of option display.\n * Will fallback to dom if use customize render.\n */\nvar OptionList = function OptionList(_, ref) {\n var _useBaseProps = useBaseProps(),\n prefixCls = _useBaseProps.prefixCls,\n id = _useBaseProps.id,\n open = _useBaseProps.open,\n multiple = _useBaseProps.multiple,\n mode = _useBaseProps.mode,\n searchValue = _useBaseProps.searchValue,\n toggleOpen = _useBaseProps.toggleOpen,\n notFoundContent = _useBaseProps.notFoundContent,\n onPopupScroll = _useBaseProps.onPopupScroll;\n var _React$useContext = React.useContext(SelectContext),\n flattenOptions = _React$useContext.flattenOptions,\n onActiveValue = _React$useContext.onActiveValue,\n defaultActiveFirstOption = _React$useContext.defaultActiveFirstOption,\n onSelect = _React$useContext.onSelect,\n menuItemSelectedIcon = _React$useContext.menuItemSelectedIcon,\n rawValues = _React$useContext.rawValues,\n fieldNames = _React$useContext.fieldNames,\n virtual = _React$useContext.virtual,\n listHeight = _React$useContext.listHeight,\n listItemHeight = _React$useContext.listItemHeight;\n var itemPrefixCls = \"\".concat(prefixCls, \"-item\");\n var memoFlattenOptions = useMemo(function () {\n return flattenOptions;\n }, [open, flattenOptions], function (prev, next) {\n return next[0] && prev[1] !== next[1];\n });\n\n // =========================== List ===========================\n var listRef = React.useRef(null);\n var onListMouseDown = function onListMouseDown(event) {\n event.preventDefault();\n };\n var scrollIntoView = function scrollIntoView(args) {\n if (listRef.current) {\n listRef.current.scrollTo(typeof args === 'number' ? {\n index: args\n } : args);\n }\n };\n\n // ========================== Active ==========================\n var getEnabledActiveIndex = function getEnabledActiveIndex(index) {\n var offset = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var len = memoFlattenOptions.length;\n for (var i = 0; i < len; i += 1) {\n var current = (index + i * offset + len) % len;\n var _memoFlattenOptions$c = memoFlattenOptions[current],\n group = _memoFlattenOptions$c.group,\n data = _memoFlattenOptions$c.data;\n if (!group && !data.disabled) {\n return current;\n }\n }\n return -1;\n };\n var _React$useState = React.useState(function () {\n return getEnabledActiveIndex(0);\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeIndex = _React$useState2[0],\n setActiveIndex = _React$useState2[1];\n var setActive = function setActive(index) {\n var fromKeyboard = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n setActiveIndex(index);\n var info = {\n source: fromKeyboard ? 'keyboard' : 'mouse'\n };\n\n // Trigger active event\n var flattenItem = memoFlattenOptions[index];\n if (!flattenItem) {\n onActiveValue(null, -1, info);\n return;\n }\n onActiveValue(flattenItem.value, index, info);\n };\n\n // Auto active first item when list length or searchValue changed\n useEffect(function () {\n setActive(defaultActiveFirstOption !== false ? getEnabledActiveIndex(0) : -1);\n }, [memoFlattenOptions.length, searchValue]);\n\n // https://github.com/ant-design/ant-design/issues/34975\n var isSelected = React.useCallback(function (value) {\n return rawValues.has(value) && mode !== 'combobox';\n }, [mode, _toConsumableArray(rawValues).toString(), rawValues.size]);\n\n // Auto scroll to item position in single mode\n useEffect(function () {\n /**\n * React will skip `onChange` when component update.\n * `setActive` function will call root accessibility state update which makes re-render.\n * So we need to delay to let Input component trigger onChange first.\n */\n var timeoutId = setTimeout(function () {\n if (!multiple && open && rawValues.size === 1) {\n var value = Array.from(rawValues)[0];\n var index = memoFlattenOptions.findIndex(function (_ref) {\n var data = _ref.data;\n return data.value === value;\n });\n if (index !== -1) {\n setActive(index);\n scrollIntoView(index);\n }\n }\n });\n\n // Force trigger scrollbar visible when open\n if (open) {\n var _listRef$current;\n (_listRef$current = listRef.current) === null || _listRef$current === void 0 ? void 0 : _listRef$current.scrollTo(undefined);\n }\n return function () {\n return clearTimeout(timeoutId);\n };\n }, [open, searchValue]);\n\n // ========================== Values ==========================\n var onSelectValue = function onSelectValue(value) {\n if (value !== undefined) {\n onSelect(value, {\n selected: !rawValues.has(value)\n });\n }\n\n // Single mode should always close by select\n if (!multiple) {\n toggleOpen(false);\n }\n };\n\n // ========================= Keyboard =========================\n React.useImperativeHandle(ref, function () {\n return {\n onKeyDown: function onKeyDown(event) {\n var which = event.which,\n ctrlKey = event.ctrlKey;\n switch (which) {\n // >>> Arrow keys & ctrl + n/p on Mac\n case KeyCode.N:\n case KeyCode.P:\n case KeyCode.UP:\n case KeyCode.DOWN:\n {\n var offset = 0;\n if (which === KeyCode.UP) {\n offset = -1;\n } else if (which === KeyCode.DOWN) {\n offset = 1;\n } else if (isPlatformMac() && ctrlKey) {\n if (which === KeyCode.N) {\n offset = 1;\n } else if (which === KeyCode.P) {\n offset = -1;\n }\n }\n if (offset !== 0) {\n var nextActiveIndex = getEnabledActiveIndex(activeIndex + offset, offset);\n scrollIntoView(nextActiveIndex);\n setActive(nextActiveIndex, true);\n }\n break;\n }\n\n // >>> Select\n case KeyCode.ENTER:\n {\n // value\n var item = memoFlattenOptions[activeIndex];\n if (item && !item.data.disabled) {\n onSelectValue(item.value);\n } else {\n onSelectValue(undefined);\n }\n if (open) {\n event.preventDefault();\n }\n break;\n }\n\n // >>> Close\n case KeyCode.ESC:\n {\n toggleOpen(false);\n if (open) {\n event.stopPropagation();\n }\n }\n }\n },\n onKeyUp: function onKeyUp() {},\n scrollTo: function scrollTo(index) {\n scrollIntoView(index);\n }\n };\n });\n\n // ========================== Render ==========================\n if (memoFlattenOptions.length === 0) {\n return /*#__PURE__*/React.createElement(\"div\", {\n role: \"listbox\",\n id: \"\".concat(id, \"_list\"),\n className: \"\".concat(itemPrefixCls, \"-empty\"),\n onMouseDown: onListMouseDown\n }, notFoundContent);\n }\n var omitFieldNameList = Object.keys(fieldNames).map(function (key) {\n return fieldNames[key];\n });\n var getLabel = function getLabel(item) {\n return item.label;\n };\n var renderItem = function renderItem(index) {\n var item = memoFlattenOptions[index];\n if (!item) return null;\n var itemData = item.data || {};\n var value = itemData.value;\n var group = item.group;\n var attrs = pickAttrs(itemData, true);\n var mergedLabel = getLabel(item);\n return item ? /*#__PURE__*/React.createElement(\"div\", _extends({\n \"aria-label\": typeof mergedLabel === 'string' && !group ? mergedLabel : null\n }, attrs, {\n key: index,\n role: group ? 'presentation' : 'option',\n id: \"\".concat(id, \"_list_\").concat(index),\n \"aria-selected\": isSelected(value)\n }), value) : null;\n };\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n role: \"listbox\",\n id: \"\".concat(id, \"_list\"),\n style: {\n height: 0,\n width: 0,\n overflow: 'hidden'\n }\n }, renderItem(activeIndex - 1), renderItem(activeIndex), renderItem(activeIndex + 1)), /*#__PURE__*/React.createElement(List, {\n itemKey: \"key\",\n ref: listRef,\n data: memoFlattenOptions,\n height: listHeight,\n itemHeight: listItemHeight,\n fullHeight: false,\n onMouseDown: onListMouseDown,\n onScroll: onPopupScroll,\n virtual: virtual\n }, function (item, itemIndex) {\n var _classNames;\n var group = item.group,\n groupOption = item.groupOption,\n data = item.data,\n label = item.label,\n value = item.value;\n var key = data.key;\n\n // Group\n if (group) {\n var _data$title;\n var groupTitle = (_data$title = data.title) !== null && _data$title !== void 0 ? _data$title : isTitleType(label) ? label.toString() : undefined;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(itemPrefixCls, \"\".concat(itemPrefixCls, \"-group\")),\n title: groupTitle\n }, label !== undefined ? label : key);\n }\n var disabled = data.disabled,\n title = data.title,\n children = data.children,\n style = data.style,\n className = data.className,\n otherProps = _objectWithoutProperties(data, _excluded);\n var passedProps = omit(otherProps, omitFieldNameList);\n\n // Option\n var selected = isSelected(value);\n var optionPrefixCls = \"\".concat(itemPrefixCls, \"-option\");\n var optionClassName = classNames(itemPrefixCls, optionPrefixCls, className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(optionPrefixCls, \"-grouped\"), groupOption), _defineProperty(_classNames, \"\".concat(optionPrefixCls, \"-active\"), activeIndex === itemIndex && !disabled), _defineProperty(_classNames, \"\".concat(optionPrefixCls, \"-disabled\"), disabled), _defineProperty(_classNames, \"\".concat(optionPrefixCls, \"-selected\"), selected), _classNames));\n var mergedLabel = getLabel(item);\n var iconVisible = !menuItemSelectedIcon || typeof menuItemSelectedIcon === 'function' || selected;\n\n // https://github.com/ant-design/ant-design/issues/34145\n var content = typeof mergedLabel === 'number' ? mergedLabel : mergedLabel || value;\n // https://github.com/ant-design/ant-design/issues/26717\n var optionTitle = isTitleType(content) ? content.toString() : undefined;\n if (title !== undefined) {\n optionTitle = title;\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, pickAttrs(passedProps), {\n \"aria-selected\": selected,\n className: optionClassName,\n title: optionTitle,\n onMouseMove: function onMouseMove() {\n if (activeIndex === itemIndex || disabled) {\n return;\n }\n setActive(itemIndex);\n },\n onClick: function onClick() {\n if (!disabled) {\n onSelectValue(value);\n }\n },\n style: style\n }), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(optionPrefixCls, \"-content\")\n }, content), /*#__PURE__*/React.isValidElement(menuItemSelectedIcon) || selected, iconVisible && /*#__PURE__*/React.createElement(TransBtn, {\n className: \"\".concat(itemPrefixCls, \"-option-state\"),\n customizeIcon: menuItemSelectedIcon,\n customizeIconProps: {\n isSelected: selected\n }\n }, selected ? '✓' : null));\n }));\n};\nvar RefOptionList = /*#__PURE__*/React.forwardRef(OptionList);\nRefOptionList.displayName = 'OptionList';\nexport default RefOptionList;","/* istanbul ignore file */\nexport function isPlatformMac() {\n return /(mac\\sos|macintosh)/i.test(navigator.appVersion);\n}","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport toNodeArray from \"rc-util/es/Children/toArray\";\nimport warning, { noteOnce } from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport { isMultiple } from \"../BaseSelect\";\nimport { toArray } from \"./commonUtil\";\nimport { convertChildrenToData } from \"./legacyUtil\";\nfunction warningProps(props) {\n var mode = props.mode,\n options = props.options,\n children = props.children,\n backfill = props.backfill,\n allowClear = props.allowClear,\n placeholder = props.placeholder,\n getInputElement = props.getInputElement,\n showSearch = props.showSearch,\n onSearch = props.onSearch,\n defaultOpen = props.defaultOpen,\n autoFocus = props.autoFocus,\n labelInValue = props.labelInValue,\n value = props.value,\n inputValue = props.inputValue,\n optionLabelProp = props.optionLabelProp;\n var multiple = isMultiple(mode);\n var mergedShowSearch = showSearch !== undefined ? showSearch : multiple || mode === 'combobox';\n var mergedOptions = options || convertChildrenToData(children);\n\n // `tags` should not set option as disabled\n warning(mode !== 'tags' || mergedOptions.every(function (opt) {\n return !opt.disabled;\n }), 'Please avoid setting option to disabled in tags mode since user can always type text as tag.');\n\n // `combobox` & `tags` should option be `string` type\n if (mode === 'tags' || mode === 'combobox') {\n var hasNumberValue = mergedOptions.some(function (item) {\n if (item.options) {\n return item.options.some(function (opt) {\n return typeof ('value' in opt ? opt.value : opt.key) === 'number';\n });\n }\n return typeof ('value' in item ? item.value : item.key) === 'number';\n });\n warning(!hasNumberValue, '`value` of Option should not use number type when `mode` is `tags` or `combobox`.');\n }\n\n // `combobox` should not use `optionLabelProp`\n warning(mode !== 'combobox' || !optionLabelProp, '`combobox` mode not support `optionLabelProp`. Please set `value` on Option directly.');\n\n // Only `combobox` support `backfill`\n warning(mode === 'combobox' || !backfill, '`backfill` only works with `combobox` mode.');\n\n // Only `combobox` support `getInputElement`\n warning(mode === 'combobox' || !getInputElement, '`getInputElement` only work with `combobox` mode.');\n\n // Customize `getInputElement` should not use `allowClear` & `placeholder`\n noteOnce(mode !== 'combobox' || !getInputElement || !allowClear || !placeholder, 'Customize `getInputElement` should customize clear and placeholder logic instead of configuring `allowClear` and `placeholder`.');\n\n // `onSearch` should use in `combobox` or `showSearch`\n if (onSearch && !mergedShowSearch && mode !== 'combobox' && mode !== 'tags') {\n warning(false, '`onSearch` should work with `showSearch` instead of use alone.');\n }\n noteOnce(!defaultOpen || autoFocus, '`defaultOpen` makes Select open without focus which means it will not close by click outside. You can set `autoFocus` if needed.');\n if (value !== undefined && value !== null) {\n var values = toArray(value);\n warning(!labelInValue || values.every(function (val) {\n return _typeof(val) === 'object' && ('key' in val || 'value' in val);\n }), '`value` should in shape of `{ value: string | number, label?: ReactNode }` when you set `labelInValue` to `true`');\n warning(!multiple || Array.isArray(value), '`value` should be array when `mode` is `multiple` or `tags`');\n }\n\n // Syntactic sugar should use correct children type\n if (children) {\n var invalidateChildType = null;\n toNodeArray(children).some(function (node) {\n if (! /*#__PURE__*/React.isValidElement(node) || !node.type) {\n return false;\n }\n var _ref = node,\n type = _ref.type;\n if (type.isSelectOption) {\n return false;\n }\n if (type.isSelectOptGroup) {\n var allChildrenValid = toNodeArray(node.props.children).every(function (subNode) {\n if (! /*#__PURE__*/React.isValidElement(subNode) || !node.type || subNode.type.isSelectOption) {\n return true;\n }\n invalidateChildType = subNode.type;\n return false;\n });\n if (allChildrenValid) {\n return false;\n }\n return true;\n }\n invalidateChildType = type;\n return true;\n });\n if (invalidateChildType) {\n warning(false, \"`children` should be `Select.Option` or `Select.OptGroup` instead of `\".concat(invalidateChildType.displayName || invalidateChildType.name || invalidateChildType, \"`.\"));\n }\n warning(inputValue === undefined, '`inputValue` is deprecated, please use `searchValue` instead.');\n }\n}\n\n// value in Select option should not be null\n// note: OptGroup has options too\nexport function warningNullOptions(options, fieldNames) {\n if (options) {\n var recursiveOptions = function recursiveOptions(optionsList) {\n var inGroup = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n for (var i = 0; i < optionsList.length; i++) {\n var option = optionsList[i];\n if (option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value] === null) {\n warning(false, '`value` in Select options should not be `null`.');\n return true;\n }\n if (!inGroup && Array.isArray(option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.options]) && recursiveOptions(option[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.options], true)) {\n break;\n }\n }\n };\n recursiveOptions(options);\n }\n}\nexport default warningProps;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\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 _objectWithoutProperties from \"@babel/runtime/helpers/esm/objectWithoutProperties\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nvar _excluded = [\"id\", \"mode\", \"prefixCls\", \"backfill\", \"fieldNames\", \"inputValue\", \"searchValue\", \"onSearch\", \"autoClearSearchValue\", \"onSelect\", \"onDeselect\", \"dropdownMatchSelectWidth\", \"filterOption\", \"filterSort\", \"optionFilterProp\", \"optionLabelProp\", \"options\", \"children\", \"defaultActiveFirstOption\", \"menuItemSelectedIcon\", \"virtual\", \"listHeight\", \"listItemHeight\", \"value\", \"defaultValue\", \"labelInValue\", \"onChange\"];\n/**\n * To match accessibility requirement, we always provide an input in the component.\n * Other element will not set `tabIndex` to avoid `onBlur` sequence problem.\n * For focused select, we set `aria-live=\"polite\"` to update the accessibility content.\n *\n * ref:\n * - keyboard: https://developer.mozilla.org/en-US/docs/Web/Accessibility/ARIA/Roles/listbox_role#Keyboard_interactions\n *\n * New api:\n * - listHeight\n * - listItemHeight\n * - component\n *\n * Remove deprecated api:\n * - multiple\n * - tags\n * - combobox\n * - firstActiveValue\n * - dropdownMenuStyle\n * - openClassName (Not list in api)\n *\n * Update:\n * - `backfill` only support `combobox` mode\n * - `combobox` mode not support `labelInValue` since it's meaningless\n * - `getInputElement` only support `combobox` mode\n * - `onChange` return OptionData instead of ReactNode\n * - `filterOption` `onChange` `onSelect` accept OptionData instead of ReactNode\n * - `combobox` mode trigger `onChange` will get `undefined` if no `value` match in Option\n * - `combobox` mode not support `optionLabelProp`\n */\n\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport warning from \"rc-util/es/warning\";\nimport * as React from 'react';\nimport BaseSelect, { isMultiple } from \"./BaseSelect\";\nimport useCache from \"./hooks/useCache\";\nimport useFilterOptions from \"./hooks/useFilterOptions\";\nimport useId from \"./hooks/useId\";\nimport useOptions from \"./hooks/useOptions\";\nimport useRefFunc from \"./hooks/useRefFunc\";\nimport OptGroup from \"./OptGroup\";\nimport Option from \"./Option\";\nimport OptionList from \"./OptionList\";\nimport SelectContext from \"./SelectContext\";\nimport { hasValue, toArray } from \"./utils/commonUtil\";\nimport { fillFieldNames, flattenOptions, injectPropsWithOption } from \"./utils/valueUtil\";\nimport warningProps, { warningNullOptions } from \"./utils/warningPropsUtil\";\nvar OMIT_DOM_PROPS = ['inputValue'];\nfunction isRawValue(value) {\n return !value || _typeof(value) !== 'object';\n}\nvar Select = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var id = props.id,\n mode = props.mode,\n _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-select' : _props$prefixCls,\n backfill = props.backfill,\n fieldNames = props.fieldNames,\n inputValue = props.inputValue,\n searchValue = props.searchValue,\n onSearch = props.onSearch,\n _props$autoClearSearc = props.autoClearSearchValue,\n autoClearSearchValue = _props$autoClearSearc === void 0 ? true : _props$autoClearSearc,\n onSelect = props.onSelect,\n onDeselect = props.onDeselect,\n _props$dropdownMatchS = props.dropdownMatchSelectWidth,\n dropdownMatchSelectWidth = _props$dropdownMatchS === void 0 ? true : _props$dropdownMatchS,\n filterOption = props.filterOption,\n filterSort = props.filterSort,\n optionFilterProp = props.optionFilterProp,\n optionLabelProp = props.optionLabelProp,\n options = props.options,\n children = props.children,\n defaultActiveFirstOption = props.defaultActiveFirstOption,\n menuItemSelectedIcon = props.menuItemSelectedIcon,\n virtual = props.virtual,\n _props$listHeight = props.listHeight,\n listHeight = _props$listHeight === void 0 ? 200 : _props$listHeight,\n _props$listItemHeight = props.listItemHeight,\n listItemHeight = _props$listItemHeight === void 0 ? 20 : _props$listItemHeight,\n value = props.value,\n defaultValue = props.defaultValue,\n labelInValue = props.labelInValue,\n onChange = props.onChange,\n restProps = _objectWithoutProperties(props, _excluded);\n var mergedId = useId(id);\n var multiple = isMultiple(mode);\n var childrenAsData = !!(!options && children);\n var mergedFilterOption = React.useMemo(function () {\n if (filterOption === undefined && mode === 'combobox') {\n return false;\n }\n return filterOption;\n }, [filterOption, mode]);\n\n // ========================= FieldNames =========================\n var mergedFieldNames = React.useMemo(function () {\n return fillFieldNames(fieldNames, childrenAsData);\n }, /* eslint-disable react-hooks/exhaustive-deps */\n [\n // We stringify fieldNames to avoid unnecessary re-renders.\n JSON.stringify(fieldNames), childrenAsData]\n /* eslint-enable react-hooks/exhaustive-deps */);\n\n // =========================== Search ===========================\n var _useMergedState = useMergedState('', {\n value: searchValue !== undefined ? searchValue : inputValue,\n postState: function postState(search) {\n return search || '';\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedSearchValue = _useMergedState2[0],\n setSearchValue = _useMergedState2[1];\n\n // =========================== Option ===========================\n var parsedOptions = useOptions(options, children, mergedFieldNames, optionFilterProp, optionLabelProp);\n var valueOptions = parsedOptions.valueOptions,\n labelOptions = parsedOptions.labelOptions,\n mergedOptions = parsedOptions.options;\n\n // ========================= Wrap Value =========================\n var convert2LabelValues = React.useCallback(function (draftValues) {\n // Convert to array\n var valueList = toArray(draftValues);\n\n // Convert to labelInValue type\n return valueList.map(function (val) {\n var rawValue;\n var rawLabel;\n var rawKey;\n var rawDisabled;\n var rawTitle;\n\n // Fill label & value\n if (isRawValue(val)) {\n rawValue = val;\n } else {\n var _val$value;\n rawKey = val.key;\n rawLabel = val.label;\n rawValue = (_val$value = val.value) !== null && _val$value !== void 0 ? _val$value : rawKey;\n }\n var option = valueOptions.get(rawValue);\n if (option) {\n var _option$key;\n // Fill missing props\n if (rawLabel === undefined) rawLabel = option === null || option === void 0 ? void 0 : option[optionLabelProp || mergedFieldNames.label];\n if (rawKey === undefined) rawKey = (_option$key = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key !== void 0 ? _option$key : rawValue;\n rawDisabled = option === null || option === void 0 ? void 0 : option.disabled;\n rawTitle = option === null || option === void 0 ? void 0 : option.title;\n\n // Warning if label not same as provided\n if (process.env.NODE_ENV !== 'production' && !optionLabelProp) {\n var optionLabel = option === null || option === void 0 ? void 0 : option[mergedFieldNames.label];\n if (optionLabel !== undefined && ! /*#__PURE__*/React.isValidElement(optionLabel) && ! /*#__PURE__*/React.isValidElement(rawLabel) && optionLabel !== rawLabel) {\n warning(false, '`label` of `value` is not same as `label` in Select options.');\n }\n }\n }\n return {\n label: rawLabel,\n value: rawValue,\n key: rawKey,\n disabled: rawDisabled,\n title: rawTitle\n };\n });\n }, [mergedFieldNames, optionLabelProp, valueOptions]);\n\n // =========================== Values ===========================\n var _useMergedState3 = useMergedState(defaultValue, {\n value: value\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n internalValue = _useMergedState4[0],\n setInternalValue = _useMergedState4[1];\n\n // Merged value with LabelValueType\n var rawLabeledValues = React.useMemo(function () {\n var _values$;\n var values = convert2LabelValues(internalValue);\n\n // combobox no need save value when it's no value\n if (mode === 'combobox' && !((_values$ = values[0]) !== null && _values$ !== void 0 && _values$.value)) {\n return [];\n }\n return values;\n }, [internalValue, convert2LabelValues, mode]);\n\n // Fill label with cache to avoid option remove\n var _useCache = useCache(rawLabeledValues, valueOptions),\n _useCache2 = _slicedToArray(_useCache, 2),\n mergedValues = _useCache2[0],\n getMixedOption = _useCache2[1];\n var displayValues = React.useMemo(function () {\n // `null` need show as placeholder instead\n // https://github.com/ant-design/ant-design/issues/25057\n if (!mode && mergedValues.length === 1) {\n var firstValue = mergedValues[0];\n if (firstValue.value === null && (firstValue.label === null || firstValue.label === undefined)) {\n return [];\n }\n }\n return mergedValues.map(function (item) {\n var _item$label;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_item$label = item.label) !== null && _item$label !== void 0 ? _item$label : item.value\n });\n });\n }, [mode, mergedValues]);\n\n /** Convert `displayValues` to raw value type set */\n var rawValues = React.useMemo(function () {\n return new Set(mergedValues.map(function (val) {\n return val.value;\n }));\n }, [mergedValues]);\n React.useEffect(function () {\n if (mode === 'combobox') {\n var _mergedValues$;\n var strValue = (_mergedValues$ = mergedValues[0]) === null || _mergedValues$ === void 0 ? void 0 : _mergedValues$.value;\n setSearchValue(hasValue(strValue) ? String(strValue) : '');\n }\n }, [mergedValues]);\n\n // ======================= Display Option =======================\n // Create a placeholder item if not exist in `options`\n var createTagOption = useRefFunc(function (val, label) {\n var _ref;\n var mergedLabel = label !== null && label !== void 0 ? label : val;\n return _ref = {}, _defineProperty(_ref, mergedFieldNames.value, val), _defineProperty(_ref, mergedFieldNames.label, mergedLabel), _ref;\n });\n\n // Fill tag as option if mode is `tags`\n var filledTagOptions = React.useMemo(function () {\n if (mode !== 'tags') {\n return mergedOptions;\n }\n\n // >>> Tag mode\n var cloneOptions = _toConsumableArray(mergedOptions);\n\n // Check if value exist in options (include new patch item)\n var existOptions = function existOptions(val) {\n return valueOptions.has(val);\n };\n\n // Fill current value as option\n _toConsumableArray(mergedValues).sort(function (a, b) {\n return a.value < b.value ? -1 : 1;\n }).forEach(function (item) {\n var val = item.value;\n if (!existOptions(val)) {\n cloneOptions.push(createTagOption(val, item.label));\n }\n });\n return cloneOptions;\n }, [createTagOption, mergedOptions, valueOptions, mergedValues, mode]);\n var filteredOptions = useFilterOptions(filledTagOptions, mergedFieldNames, mergedSearchValue, mergedFilterOption, optionFilterProp);\n\n // Fill options with search value if needed\n var filledSearchOptions = React.useMemo(function () {\n if (mode !== 'tags' || !mergedSearchValue || filteredOptions.some(function (item) {\n return item[optionFilterProp || 'value'] === mergedSearchValue;\n })) {\n return filteredOptions;\n }\n\n // Fill search value as option\n return [createTagOption(mergedSearchValue)].concat(_toConsumableArray(filteredOptions));\n }, [createTagOption, optionFilterProp, mode, filteredOptions, mergedSearchValue]);\n var orderedFilteredOptions = React.useMemo(function () {\n if (!filterSort) {\n return filledSearchOptions;\n }\n return _toConsumableArray(filledSearchOptions).sort(function (a, b) {\n return filterSort(a, b);\n });\n }, [filledSearchOptions, filterSort]);\n var displayOptions = React.useMemo(function () {\n return flattenOptions(orderedFilteredOptions, {\n fieldNames: mergedFieldNames,\n childrenAsData: childrenAsData\n });\n }, [orderedFilteredOptions, mergedFieldNames, childrenAsData]);\n\n // =========================== Change ===========================\n var triggerChange = function triggerChange(values) {\n var labeledValues = convert2LabelValues(values);\n setInternalValue(labeledValues);\n if (onChange && (\n // Trigger event only when value changed\n labeledValues.length !== mergedValues.length || labeledValues.some(function (newVal, index) {\n var _mergedValues$index;\n return ((_mergedValues$index = mergedValues[index]) === null || _mergedValues$index === void 0 ? void 0 : _mergedValues$index.value) !== (newVal === null || newVal === void 0 ? void 0 : newVal.value);\n }))) {\n var returnValues = labelInValue ? labeledValues : labeledValues.map(function (v) {\n return v.value;\n });\n var returnOptions = labeledValues.map(function (v) {\n return injectPropsWithOption(getMixedOption(v.value));\n });\n onChange(\n // Value\n multiple ? returnValues : returnValues[0],\n // Option\n multiple ? returnOptions : returnOptions[0]);\n }\n };\n\n // ======================= Accessibility ========================\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeValue = _React$useState2[0],\n setActiveValue = _React$useState2[1];\n var _React$useState3 = React.useState(0),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n accessibilityIndex = _React$useState4[0],\n setAccessibilityIndex = _React$useState4[1];\n var mergedDefaultActiveFirstOption = defaultActiveFirstOption !== undefined ? defaultActiveFirstOption : mode !== 'combobox';\n var onActiveValue = React.useCallback(function (active, index) {\n var _ref2 = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {},\n _ref2$source = _ref2.source,\n source = _ref2$source === void 0 ? 'keyboard' : _ref2$source;\n setAccessibilityIndex(index);\n if (backfill && mode === 'combobox' && active !== null && source === 'keyboard') {\n setActiveValue(String(active));\n }\n }, [backfill, mode]);\n\n // ========================= OptionList =========================\n var triggerSelect = function triggerSelect(val, selected, type) {\n var getSelectEnt = function getSelectEnt() {\n var _option$key2;\n var option = getMixedOption(val);\n return [labelInValue ? {\n label: option === null || option === void 0 ? void 0 : option[mergedFieldNames.label],\n value: val,\n key: (_option$key2 = option === null || option === void 0 ? void 0 : option.key) !== null && _option$key2 !== void 0 ? _option$key2 : val\n } : val, injectPropsWithOption(option)];\n };\n if (selected && onSelect) {\n var _getSelectEnt = getSelectEnt(),\n _getSelectEnt2 = _slicedToArray(_getSelectEnt, 2),\n wrappedValue = _getSelectEnt2[0],\n _option = _getSelectEnt2[1];\n onSelect(wrappedValue, _option);\n } else if (!selected && onDeselect && type !== 'clear') {\n var _getSelectEnt3 = getSelectEnt(),\n _getSelectEnt4 = _slicedToArray(_getSelectEnt3, 2),\n _wrappedValue = _getSelectEnt4[0],\n _option2 = _getSelectEnt4[1];\n onDeselect(_wrappedValue, _option2);\n }\n };\n\n // Used for OptionList selection\n var onInternalSelect = useRefFunc(function (val, info) {\n var cloneValues;\n\n // Single mode always trigger select only with option list\n var mergedSelect = multiple ? info.selected : true;\n if (mergedSelect) {\n cloneValues = multiple ? [].concat(_toConsumableArray(mergedValues), [val]) : [val];\n } else {\n cloneValues = mergedValues.filter(function (v) {\n return v.value !== val;\n });\n }\n triggerChange(cloneValues);\n triggerSelect(val, mergedSelect);\n\n // Clean search value if single or configured\n if (mode === 'combobox') {\n // setSearchValue(String(val));\n setActiveValue('');\n } else if (!isMultiple || autoClearSearchValue) {\n setSearchValue('');\n setActiveValue('');\n }\n });\n\n // ======================= Display Change =======================\n // BaseSelect display values change\n var onDisplayValuesChange = function onDisplayValuesChange(nextValues, info) {\n triggerChange(nextValues);\n var type = info.type,\n values = info.values;\n if (type === 'remove' || type === 'clear') {\n values.forEach(function (item) {\n triggerSelect(item.value, false, type);\n });\n }\n };\n\n // =========================== Search ===========================\n var onInternalSearch = function onInternalSearch(searchText, info) {\n setSearchValue(searchText);\n setActiveValue(null);\n\n // [Submit] Tag mode should flush input\n if (info.source === 'submit') {\n var formatted = (searchText || '').trim();\n // prevent empty tags from appearing when you click the Enter button\n if (formatted) {\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), [formatted])));\n triggerChange(newRawValues);\n triggerSelect(formatted, true);\n setSearchValue('');\n }\n return;\n }\n if (info.source !== 'blur') {\n if (mode === 'combobox') {\n triggerChange(searchText);\n }\n onSearch === null || onSearch === void 0 ? void 0 : onSearch(searchText);\n }\n };\n var onInternalSearchSplit = function onInternalSearchSplit(words) {\n var patchValues = words;\n if (mode !== 'tags') {\n patchValues = words.map(function (word) {\n var opt = labelOptions.get(word);\n return opt === null || opt === void 0 ? void 0 : opt.value;\n }).filter(function (val) {\n return val !== undefined;\n });\n }\n var newRawValues = Array.from(new Set([].concat(_toConsumableArray(rawValues), _toConsumableArray(patchValues))));\n triggerChange(newRawValues);\n newRawValues.forEach(function (newRawValue) {\n triggerSelect(newRawValue, true);\n });\n };\n\n // ========================== Context ===========================\n var selectContext = React.useMemo(function () {\n var realVirtual = virtual !== false && dropdownMatchSelectWidth !== false;\n return _objectSpread(_objectSpread({}, parsedOptions), {}, {\n flattenOptions: displayOptions,\n onActiveValue: onActiveValue,\n defaultActiveFirstOption: mergedDefaultActiveFirstOption,\n onSelect: onInternalSelect,\n menuItemSelectedIcon: menuItemSelectedIcon,\n rawValues: rawValues,\n fieldNames: mergedFieldNames,\n virtual: realVirtual,\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n childrenAsData: childrenAsData\n });\n }, [parsedOptions, displayOptions, onActiveValue, mergedDefaultActiveFirstOption, onInternalSelect, menuItemSelectedIcon, rawValues, mergedFieldNames, virtual, dropdownMatchSelectWidth, listHeight, listItemHeight, childrenAsData]);\n\n // ========================== Warning ===========================\n if (process.env.NODE_ENV !== 'production') {\n warningProps(props);\n warningNullOptions(mergedOptions, mergedFieldNames);\n }\n\n // ==============================================================\n // == Render ==\n // ==============================================================\n return /*#__PURE__*/React.createElement(SelectContext.Provider, {\n value: selectContext\n }, /*#__PURE__*/React.createElement(BaseSelect, _extends({}, restProps, {\n // >>> MISC\n id: mergedId,\n prefixCls: prefixCls,\n ref: ref,\n omitDomProps: OMIT_DOM_PROPS,\n mode: mode\n // >>> Values\n ,\n\n displayValues: displayValues,\n onDisplayValuesChange: onDisplayValuesChange\n // >>> Search\n ,\n\n searchValue: mergedSearchValue,\n onSearch: onInternalSearch,\n autoClearSearchValue: autoClearSearchValue,\n onSearchSplit: onInternalSearchSplit,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth\n // >>> OptionList\n ,\n\n OptionList: OptionList,\n emptyOptions: !displayOptions.length\n // >>> Accessibility\n ,\n\n activeValue: activeValue,\n activeDescendantId: \"\".concat(mergedId, \"_list_\").concat(accessibilityIndex)\n })));\n});\nif (process.env.NODE_ENV !== 'production') {\n Select.displayName = 'Select';\n}\nvar TypedSelect = Select;\nTypedSelect.Option = Option;\nTypedSelect.OptGroup = OptGroup;\nexport default TypedSelect;","import * as React from 'react';\nimport { convertChildrenToData } from \"../utils/legacyUtil\";\n\n/**\n * Parse `children` to `options` if `options` is not provided.\n * Then flatten the `options`.\n */\nexport default function useOptions(options, children, fieldNames, optionFilterProp, optionLabelProp) {\n return React.useMemo(function () {\n var mergedOptions = options;\n var childrenAsData = !options;\n if (childrenAsData) {\n mergedOptions = convertChildrenToData(children);\n }\n var valueOptions = new Map();\n var labelOptions = new Map();\n var setLabelOptions = function setLabelOptions(labelOptionsMap, option, key) {\n if (key && typeof key === 'string') {\n labelOptionsMap.set(option[key], option);\n }\n };\n function dig(optionList) {\n var isChildren = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n // for loop to speed up collection speed\n for (var i = 0; i < optionList.length; i += 1) {\n var option = optionList[i];\n if (!option[fieldNames.options] || isChildren) {\n valueOptions.set(option[fieldNames.value], option);\n setLabelOptions(labelOptions, option, fieldNames.label);\n // https://github.com/ant-design/ant-design/issues/35304\n setLabelOptions(labelOptions, option, optionFilterProp);\n setLabelOptions(labelOptions, option, optionLabelProp);\n } else {\n dig(option[fieldNames.options], true);\n }\n }\n }\n dig(mergedOptions);\n return {\n options: mergedOptions,\n valueOptions: valueOptions,\n labelOptions: labelOptions\n };\n }, [options, children, fieldNames, optionFilterProp, optionLabelProp]);\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\n/**\n * Cache `value` related LabeledValue & options.\n */\nexport default (function (labeledValues, valueOptions) {\n var cacheRef = React.useRef({\n values: new Map(),\n options: new Map()\n });\n var filledLabeledValues = React.useMemo(function () {\n var _cacheRef$current = cacheRef.current,\n prevValueCache = _cacheRef$current.values,\n prevOptionCache = _cacheRef$current.options;\n\n // Fill label by cache\n var patchedValues = labeledValues.map(function (item) {\n if (item.label === undefined) {\n var _prevValueCache$get;\n return _objectSpread(_objectSpread({}, item), {}, {\n label: (_prevValueCache$get = prevValueCache.get(item.value)) === null || _prevValueCache$get === void 0 ? void 0 : _prevValueCache$get.label\n });\n }\n return item;\n });\n\n // Refresh cache\n var valueCache = new Map();\n var optionCache = new Map();\n patchedValues.forEach(function (item) {\n valueCache.set(item.value, item);\n optionCache.set(item.value, valueOptions.get(item.value) || prevOptionCache.get(item.value));\n });\n cacheRef.current.values = valueCache;\n cacheRef.current.options = optionCache;\n return patchedValues;\n }, [labeledValues, valueOptions]);\n var getOption = React.useCallback(function (val) {\n return valueOptions.get(val) || cacheRef.current.options.get(val);\n }, [valueOptions]);\n return [filledLabeledValues, getOption];\n});","import Select from \"./Select\";\nimport Option from \"./Option\";\nimport OptGroup from \"./OptGroup\";\nimport BaseSelect from \"./BaseSelect\";\nimport useBaseProps from \"./hooks/useBaseProps\";\nexport { Option, OptGroup, BaseSelect, useBaseProps };\nexport default Select;","import { createContext } from 'react';\nvar LocaleContext = /*#__PURE__*/createContext(undefined);\nexport default LocaleContext;","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;","var locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from \"rc-picker/es/locale/en_US\";\nimport TimePickerLocale from '../../time-picker/locale/en_US';\n// Merge into a locale object\nvar locale = {\n lang: _extends({\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: _extends({}, 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;","/* 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';\nvar typeTemplate = '${label} is not a valid ${type}';\nvar localeValues = {\n locale: 'en',\n Pagination: Pagination,\n DatePicker: DatePicker,\n TimePicker: TimePicker,\n Calendar: 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 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};\nexport default localeValues;","import locale from '../locale/default';\nexport default locale;","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 enUS from '../../date-picker/locale/en_US';\nexport default enUS;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport LocaleContext from './context';\nimport defaultLocaleData from './default';\nvar LocaleReceiver = function LocaleReceiver(props) {\n var _props$componentName = props.componentName,\n componentName = _props$componentName === void 0 ? 'global' : _props$componentName,\n defaultLocale = props.defaultLocale,\n children = props.children;\n var antLocale = React.useContext(LocaleContext);\n var getLocale = React.useMemo(function () {\n var _a;\n var locale = defaultLocale || defaultLocaleData[componentName];\n var localeFromContext = (_a = antLocale === null || antLocale === void 0 ? void 0 : antLocale[componentName]) !== null && _a !== void 0 ? _a : {};\n return _extends(_extends({}, locale instanceof Function ? locale() : locale), localeFromContext || {});\n }, [componentName, defaultLocale, antLocale]);\n var getLocaleCode = React.useMemo(function () {\n var localeCode = antLocale && antLocale.locale;\n // Had use LocaleProvide but didn't set locale\n if (antLocale && antLocale.exist && !localeCode) {\n return defaultLocaleData.locale;\n }\n return localeCode;\n }, [antLocale]);\n return children(getLocale, getLocaleCode, antLocale);\n};\nexport default LocaleReceiver;\nexport var useLocaleReceiver = function useLocaleReceiver(componentName, defaultLocale) {\n var antLocale = React.useContext(LocaleContext);\n var getLocale = React.useMemo(function () {\n var _a;\n var locale = defaultLocale || defaultLocaleData[componentName];\n var localeFromContext = (_a = antLocale === null || antLocale === void 0 ? void 0 : antLocale[componentName]) !== null && _a !== void 0 ? _a : {};\n return _extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});\n }, [componentName, defaultLocale, antLocale]);\n return [getLocale];\n};","import * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nvar Empty = function Empty() {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls;\n var prefixCls = getPrefixCls('empty-img-default');\n return /*#__PURE__*/React.createElement(\"svg\", {\n className: prefixCls,\n width: \"184\",\n height: \"152\",\n viewBox: \"0 0 184 152\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(24 31.67)\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n className: \"\".concat(prefixCls, \"-ellipse\"),\n cx: \"67.797\",\n cy: \"106.89\",\n rx: \"67.797\",\n ry: \"12.668\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"\".concat(prefixCls, \"-path-1\"),\n d: \"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"\".concat(prefixCls, \"-path-2\"),\n d: \"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\",\n transform: \"translate(13.56)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"\".concat(prefixCls, \"-path-3\"),\n d: \"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"\".concat(prefixCls, \"-path-4\"),\n d: \"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n className: \"\".concat(prefixCls, \"-path-5\"),\n d: \"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n className: \"\".concat(prefixCls, \"-g\"),\n transform: \"translate(149.65 15.383)\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n cx: \"20.654\",\n cy: \"3.167\",\n rx: \"2.849\",\n ry: \"2.815\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"\n }))));\n};\nexport default Empty;","import * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nvar Simple = function Simple() {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls;\n var prefixCls = getPrefixCls('empty-img-simple');\n return /*#__PURE__*/React.createElement(\"svg\", {\n className: prefixCls,\n width: \"64\",\n height: \"41\",\n viewBox: \"0 0 64 41\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, /*#__PURE__*/React.createElement(\"g\", {\n transform: \"translate(0 1)\",\n fill: \"none\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"ellipse\", {\n className: \"\".concat(prefixCls, \"-ellipse\"),\n cx: \"32\",\n cy: \"33\",\n rx: \"32\",\n ry: \"7\"\n }), /*#__PURE__*/React.createElement(\"g\", {\n className: \"\".concat(prefixCls, \"-g\"),\n fillRule: \"nonzero\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\",\n className: \"\".concat(prefixCls, \"-path\")\n }))));\n};\nexport default Simple;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\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 * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport DefaultEmptyImg from './empty';\nimport SimpleEmptyImg from './simple';\nvar defaultEmptyImg = /*#__PURE__*/React.createElement(DefaultEmptyImg, null);\nvar simpleEmptyImg = /*#__PURE__*/React.createElement(SimpleEmptyImg, null);\nvar Empty = function Empty(_a) {\n var className = _a.className,\n customizePrefixCls = _a.prefixCls,\n _a$image = _a.image,\n image = _a$image === void 0 ? defaultEmptyImg : _a$image,\n description = _a.description,\n children = _a.children,\n imageStyle = _a.imageStyle,\n restProps = __rest(_a, [\"className\", \"prefixCls\", \"image\", \"description\", \"children\", \"imageStyle\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n return /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"Empty\"\n }, function (contextLocale) {\n var prefixCls = getPrefixCls('empty', customizePrefixCls);\n var des = typeof description !== 'undefined' ? description : contextLocale.description;\n var alt = typeof des === 'string' ? des : 'empty';\n var imageNode = null;\n if (typeof image === 'string') {\n imageNode = /*#__PURE__*/React.createElement(\"img\", {\n alt: alt,\n src: image\n });\n } else {\n imageNode = image;\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: classNames(prefixCls, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-normal\"), image === simpleEmptyImg), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), className)\n }, restProps), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-image\"),\n style: imageStyle\n }, imageNode), des && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-description\")\n }, des), children && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-footer\")\n }, children));\n });\n};\nEmpty.PRESENTED_IMAGE_DEFAULT = defaultEmptyImg;\nEmpty.PRESENTED_IMAGE_SIMPLE = simpleEmptyImg;\nexport default Empty;","import * as React from 'react';\nimport { ConfigConsumer } from '.';\nimport Empty from '../empty';\nvar defaultRenderEmpty = function defaultRenderEmpty(componentName) {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, function (_ref) {\n var getPrefixCls = _ref.getPrefixCls;\n var prefix = getPrefixCls('empty');\n switch (componentName) {\n case 'Table':\n case 'List':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE\n });\n case 'Select':\n case 'TreeSelect':\n case 'Cascader':\n case 'Transfer':\n case 'Mentions':\n return /*#__PURE__*/React.createElement(Empty, {\n image: Empty.PRESENTED_IMAGE_SIMPLE,\n className: \"\".concat(prefix, \"-small\")\n });\n /* istanbul ignore next */\n default:\n // Should never hit if we take all the component into consider.\n return /*#__PURE__*/React.createElement(Empty, null);\n }\n });\n};\nexport default defaultRenderEmpty;","import * as React from 'react';\nvar SizeContext = /*#__PURE__*/React.createContext(undefined);\nexport var SizeContextProvider = function SizeContextProvider(_ref) {\n var children = _ref.children,\n size = _ref.size;\n return /*#__PURE__*/React.createElement(SizeContext.Consumer, null, function (originSize) {\n return /*#__PURE__*/React.createElement(SizeContext.Provider, {\n value: size || originSize\n }, children);\n });\n};\nexport default SizeContext;","// https://stackoverflow.com/questions/46176165/ways-to-get-string-literal-type-of-array-values-without-enum-overhead\nexport var tuple = function tuple() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args;\n};\nexport var tupleNum = function tupleNum() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return args;\n};","import { tuple } from './type';\n// ================== Collapse Motion ==================\nvar getCollapsedHeight = function getCollapsedHeight() {\n return {\n height: 0,\n opacity: 0\n };\n};\nvar getRealHeight = function getRealHeight(node) {\n var scrollHeight = node.scrollHeight;\n return {\n height: scrollHeight,\n opacity: 1\n };\n};\nvar getCurrentHeight = function getCurrentHeight(node) {\n return {\n height: node ? node.offsetHeight : 0\n };\n};\nvar skipOpacityTransition = function skipOpacityTransition(_, event) {\n return (event === null || event === void 0 ? void 0 : event.deadline) === true || event.propertyName === 'height';\n};\nvar collapseMotion = {\n motionName: 'ant-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};\nvar SelectPlacements = tuple('bottomLeft', 'bottomRight', 'topLeft', 'topRight');\nvar getTransitionDirection = function getTransitionDirection(placement) {\n if (placement !== undefined && (placement === 'topLeft' || placement === 'topRight')) {\n return \"slide-down\";\n }\n return \"slide-up\";\n};\nvar getTransitionName = function getTransitionName(rootPrefixCls, motion, transitionName) {\n if (transitionName !== undefined) {\n return transitionName;\n }\n return \"\".concat(rootPrefixCls, \"-\").concat(motion);\n};\nexport { getTransitionName, getTransitionDirection };\nexport default collapseMotion;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport { tuple } from './type';\nvar InputStatuses = tuple('warning', 'error', '');\nexport function getStatusClassNames(prefixCls, status, hasFeedback) {\n return classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-status-success\"), status === 'success'), \"\".concat(prefixCls, \"-status-warning\"), status === 'warning'), \"\".concat(prefixCls, \"-status-error\"), status === 'error'), \"\".concat(prefixCls, \"-status-validating\"), status === 'validating'), \"\".concat(prefixCls, \"-has-feedback\"), hasFeedback));\n}\nexport var getMergedStatus = function getMergedStatus(contextStatus, customStatus) {\n return customStatus || contextStatus;\n};","// This icon file is generated automatically.\nvar CheckOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z\"\n }\n }]\n },\n \"name\": \"check\",\n \"theme\": \"outlined\"\n};\nexport default CheckOutlined;","import { createContext } from 'react';\nvar IconContext = /*#__PURE__*/createContext({});\nexport default IconContext;","/**\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 } 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 * \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}","import { bound01, pad2 } from './util.js';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// \n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * \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 } 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 {\n h: h,\n s: s,\n l: l\n };\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 } 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 {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\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 } 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 {\n h: h,\n s: s,\n v: v\n };\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 {\n r: r * 255,\n g: g * 255,\n b: b * 255\n };\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 = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\n // Return a 3 character hex if possible\n if (allow3Char && hex[0].startsWith(hex[0].charAt(1)) && hex[1].startsWith(hex[1].charAt(1)) && 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 = [pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16)), pad2(convertDecimalToHex(a))];\n // Return a 4 character hex if possible\n if (allow4Char && hex[0].startsWith(hex[0].charAt(1)) && hex[1].startsWith(hex[1].charAt(1)) && hex[2].startsWith(hex[2].charAt(1)) && 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 = [pad2(convertDecimalToHex(a)), pad2(Math.round(r).toString(16)), pad2(Math.round(g).toString(16)), pad2(Math.round(b).toString(16))];\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}","// 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};","/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\nimport { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion.js';\nimport { names } from './css-color-names.js';\nimport { boundAlpha, convertToPercentage } from './util.js';\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 = {\n r: 0,\n g: 0,\n b: 0\n };\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 } 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 } 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// \nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// \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 } else if (color === 'transparent') {\n return {\n r: 0,\n g: 0,\n b: 0,\n a: 0,\n format: 'name'\n };\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 {\n r: match[1],\n g: match[2],\n b: match[3]\n };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return {\n r: match[1],\n g: match[2],\n b: match[3],\n a: match[4]\n };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return {\n h: match[1],\n s: match[2],\n l: match[3]\n };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return {\n h: match[1],\n s: match[2],\n l: match[3],\n a: match[4]\n };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return {\n h: match[1],\n s: match[2],\n v: match[3]\n };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return {\n h: match[1],\n s: match[2],\n v: match[3],\n a: match[4]\n };\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}","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}]; // Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\n\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\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\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}\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 if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n return hue;\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 var saturation;\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 if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n return Number(saturation.toFixed(2));\n}\nfunction getValue(hsv, i, light) {\n var value;\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n if (value > 1) {\n value = 1;\n }\n return Number(value.toFixed(2));\n}\nfunction generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\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 patterns.push(toHex(pColor));\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n patterns.push(_colorString);\n } // dark theme patterns\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 return patterns;\n}\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: '#1890FF',\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;\nexport { blue, cyan, geekblue, generate, gold, green, grey, lime, magenta, orange, presetDarkPalettes, presetPalettes, presetPrimaryColors, purple, red, volcano, yellow };","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport canUseDom from \"./canUseDom\";\nimport contains from \"./contains\";\nvar APPEND_ORDER = 'data-rc-order';\nvar APPEND_PRIORITY = 'data-rc-priority';\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 _option$priority = option.priority,\n priority = _option$priority === void 0 ? 0 : _option$priority;\n var mergedOrder = getOrder(prepend);\n var isPrependQueue = mergedOrder === 'prependQueue';\n var styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, mergedOrder);\n if (isPrependQueue && priority) {\n styleNode.setAttribute(APPEND_PRIORITY, \"\".concat(priority));\n }\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 (isPrependQueue) {\n var existStyle = (option.styles || findStyles(container)).filter(function (node) {\n // Ignore style which not injected by rc-util with prepend\n if (!['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER))) {\n return false;\n }\n\n // Ignore style which priority less then new style\n var nodePriority = Number(node.getAttribute(APPEND_PRIORITY) || 0);\n return priority >= nodePriority;\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 (option.styles || 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 originOption = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var container = getContainer(originOption);\n var styles = findStyles(container);\n var option = _objectSpread(_objectSpread({}, originOption), {}, {\n styles: styles\n });\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 _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';\nimport camelCase from 'lodash/camelCase';\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 delete acc[key];\n acc[camelCase(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-flex;\\n alignItems: center;\\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 useEffect(function () {\n updateCSS(styleStr, '@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 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, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-\").concat(icon.name), !!icon.name), \"\".concat(prefixCls, \"-spin\"), !!spin || icon.name === 'loading'), 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 CheckOutlinedSvg from \"@ant-design/icons-svg/es/asn/CheckOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar CheckOutlined = function CheckOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: CheckOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(CheckOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CheckOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar CloseCircleFilled = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"fill-rule\": \"evenodd\",\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 64c247.4 0 448 200.6 448 448S759.4 960 512 960 64 759.4 64 512 264.6 64 512 64zm127.98 274.82h-.04l-.08.06L512 466.75 384.14 338.88c-.04-.05-.06-.06-.08-.06a.12.12 0 00-.07 0c-.03 0-.05.01-.09.05l-45.02 45.02a.2.2 0 00-.05.09.12.12 0 000 .07v.02a.27.27 0 00.06.06L466.75 512 338.88 639.86c-.05.04-.06.06-.06.08a.12.12 0 000 .07c0 .03.01.05.05.09l45.02 45.02a.2.2 0 00.09.05.12.12 0 00.07 0c.02 0 .04-.01.08-.05L512 557.25l127.86 127.87c.04.04.06.05.08.05a.12.12 0 00.07 0c.03 0 .05-.01.09-.05l45.02-45.02a.2.2 0 00.05-.09.12.12 0 000-.07v-.02a.27.27 0 00-.05-.06L557.25 512l127.87-127.86c.04-.04.05-.06.05-.08a.12.12 0 000-.07c0-.03-.01-.05-.05-.09l-45.02-45.02a.2.2 0 00-.09-.05.12.12 0 00-.07 0z\"\n }\n }]\n },\n \"name\": \"close-circle\",\n \"theme\": \"filled\"\n};\nexport default CloseCircleFilled;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(CloseCircleFilled);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CloseCircleFilled';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar CloseOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"fill-rule\": \"evenodd\",\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M799.86 166.31c.02 0 .04.02.08.06l57.69 57.7c.04.03.05.05.06.08a.12.12 0 010 .06c0 .03-.02.05-.06.09L569.93 512l287.7 287.7c.04.04.05.06.06.09a.12.12 0 010 .07c0 .02-.02.04-.06.08l-57.7 57.69c-.03.04-.05.05-.07.06a.12.12 0 01-.07 0c-.03 0-.05-.02-.09-.06L512 569.93l-287.7 287.7c-.04.04-.06.05-.09.06a.12.12 0 01-.07 0c-.02 0-.04-.02-.08-.06l-57.69-57.7c-.04-.03-.05-.05-.06-.07a.12.12 0 010-.07c0-.03.02-.05.06-.09L454.07 512l-287.7-287.7c-.04-.04-.05-.06-.06-.09a.12.12 0 010-.07c0-.02.02-.04.06-.08l57.7-57.69c.03-.04.05-.05.07-.06a.12.12 0 01.07 0c.03 0 .05.02.09.06L512 454.07l287.7-287.7c.04-.04.06-.05.09-.06a.12.12 0 01.07 0z\"\n }\n }]\n },\n \"name\": \"close\",\n \"theme\": \"outlined\"\n};\nexport default CloseOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(CloseOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CloseOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar DownOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z\"\n }\n }]\n },\n \"name\": \"down\",\n \"theme\": \"outlined\"\n};\nexport default DownOutlined;","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 DownOutlinedSvg from \"@ant-design/icons-svg/es/asn/DownOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar DownOutlined = function DownOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: DownOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(DownOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'DownOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar LoadingOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"0 0 1024 1024\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }]\n },\n \"name\": \"loading\",\n \"theme\": \"outlined\"\n};\nexport default LoadingOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(LoadingOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'LoadingOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar SearchOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }]\n },\n \"name\": \"search\",\n \"theme\": \"outlined\"\n};\nexport default SearchOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(SearchOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'SearchOutlined';\n}\nexport default RefIcon;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\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 toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nexport var SpaceCompactItemContext = /*#__PURE__*/React.createContext(null);\nexport var useCompactItemContext = function useCompactItemContext(prefixCls, direction) {\n var compactItemContext = React.useContext(SpaceCompactItemContext);\n var compactItemClassnames = React.useMemo(function () {\n if (!compactItemContext) return '';\n var compactDirection = compactItemContext.compactDirection,\n isFirstItem = compactItemContext.isFirstItem,\n isLastItem = compactItemContext.isLastItem;\n var separator = compactDirection === 'vertical' ? '-vertical-' : '-';\n return classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-compact\").concat(separator, \"item\"), true), \"\".concat(prefixCls, \"-compact\").concat(separator, \"first-item\"), isFirstItem), \"\".concat(prefixCls, \"-compact\").concat(separator, \"last-item\"), isLastItem), \"\".concat(prefixCls, \"-compact\").concat(separator, \"item-rtl\"), direction === 'rtl'));\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: compactItemClassnames\n };\n};\nexport var NoCompactStyle = function NoCompactStyle(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: null\n }, children);\n};\nvar CompactItem = function CompactItem(_a) {\n var children = _a.children,\n otherProps = __rest(_a, [\"children\"]);\n return /*#__PURE__*/React.createElement(SpaceCompactItemContext.Provider, {\n value: otherProps\n }, children);\n};\nvar Compact = function Compact(props) {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n directionConfig = _React$useContext.direction;\n var _props$size = props.size,\n size = _props$size === void 0 ? 'middle' : _props$size,\n direction = props.direction,\n block = props.block,\n customizePrefixCls = props.prefixCls,\n className = props.className,\n children = props.children,\n restProps = __rest(props, [\"size\", \"direction\", \"block\", \"prefixCls\", \"className\", \"children\"]);\n var prefixCls = getPrefixCls('space-compact', customizePrefixCls);\n var clx = classNames(prefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), directionConfig === 'rtl'), \"\".concat(prefixCls, \"-block\"), block), \"\".concat(prefixCls, \"-vertical\"), direction === 'vertical'), className);\n var compactItemContext = React.useContext(SpaceCompactItemContext);\n var childNodes = toArray(children);\n var nodes = React.useMemo(function () {\n return childNodes.map(function (child, i) {\n var key = child && child.key || \"\".concat(prefixCls, \"-item-\").concat(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 });\n }, [size, childNodes, compactItemContext]);\n // =========================== Render ===========================\n if (childNodes.length === 0) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", _extends({\n className: clx\n }, restProps), nodes);\n};\nexport default Compact;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\n// TODO: 4.0 - codemod should help to change `filterOption` to support node props.\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 RcSelect, { OptGroup, Option } from 'rc-select';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { useContext } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport defaultRenderEmpty from '../config-provider/defaultRenderEmpty';\nimport DisabledContext from '../config-provider/DisabledContext';\nimport SizeContext from '../config-provider/SizeContext';\nimport { FormItemInputContext } from '../form/context';\nimport { getTransitionDirection, getTransitionName } from '../_util/motion';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport getIcons from './utils/iconUtil';\nimport warning from '../_util/warning';\nimport { useCompactItemContext } from '../space/Compact';\nvar SECRET_COMBOBOX_MODE_DO_NOT_USE = 'SECRET_COMBOBOX_MODE_DO_NOT_USE';\nvar InternalSelect = function InternalSelect(_a, ref) {\n var customizePrefixCls = _a.prefixCls,\n _a$bordered = _a.bordered,\n bordered = _a$bordered === void 0 ? true : _a$bordered,\n className = _a.className,\n getPopupContainer = _a.getPopupContainer,\n dropdownClassName = _a.dropdownClassName,\n popupClassName = _a.popupClassName,\n _a$listHeight = _a.listHeight,\n listHeight = _a$listHeight === void 0 ? 256 : _a$listHeight,\n placement = _a.placement,\n _a$listItemHeight = _a.listItemHeight,\n listItemHeight = _a$listItemHeight === void 0 ? 32 : _a$listItemHeight,\n customizeSize = _a.size,\n customDisabled = _a.disabled,\n notFoundContent = _a.notFoundContent,\n customStatus = _a.status,\n showArrow = _a.showArrow,\n props = __rest(_a, [\"prefixCls\", \"bordered\", \"className\", \"getPopupContainer\", \"dropdownClassName\", \"popupClassName\", \"listHeight\", \"placement\", \"listItemHeight\", \"size\", \"disabled\", \"notFoundContent\", \"status\", \"showArrow\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getContextPopupContainer = _React$useContext.getPopupContainer,\n getPrefixCls = _React$useContext.getPrefixCls,\n renderEmpty = _React$useContext.renderEmpty,\n direction = _React$useContext.direction,\n virtual = _React$useContext.virtual,\n dropdownMatchSelectWidth = _React$useContext.dropdownMatchSelectWidth;\n var size = React.useContext(SizeContext);\n var prefixCls = getPrefixCls('select', customizePrefixCls);\n var rootPrefixCls = getPrefixCls();\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize,\n compactItemClassnames = _useCompactItemContex.compactItemClassnames;\n var mode = React.useMemo(function () {\n var m = props.mode;\n if (m === 'combobox') {\n return undefined;\n }\n if (m === SECRET_COMBOBOX_MODE_DO_NOT_USE) {\n return 'combobox';\n }\n return m;\n }, [props.mode]);\n var isMultiple = mode === 'multiple' || mode === 'tags';\n var mergedShowArrow = showArrow !== undefined ? showArrow : props.loading || !(isMultiple || mode === 'combobox');\n // =================== Warning =====================\n process.env.NODE_ENV !== \"production\" ? warning(!dropdownClassName, 'Select', '`dropdownClassName` is deprecated which will be removed in next major version. Please use `popupClassName` instead.') : void 0;\n // ===================== Form Status =====================\n var _useContext = useContext(FormItemInputContext),\n contextStatus = _useContext.status,\n hasFeedback = _useContext.hasFeedback,\n isFormItemInput = _useContext.isFormItemInput,\n feedbackIcon = _useContext.feedbackIcon;\n var mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Empty =====================\n var mergedNotFound;\n if (notFoundContent !== undefined) {\n mergedNotFound = notFoundContent;\n } else if (mode === 'combobox') {\n mergedNotFound = null;\n } else {\n mergedNotFound = (renderEmpty || defaultRenderEmpty)('Select');\n }\n // ===================== Icons =====================\n var _getIcons = getIcons(_extends(_extends({}, props), {\n multiple: isMultiple,\n hasFeedback: hasFeedback,\n feedbackIcon: feedbackIcon,\n showArrow: mergedShowArrow,\n prefixCls: prefixCls\n })),\n suffixIcon = _getIcons.suffixIcon,\n itemIcon = _getIcons.itemIcon,\n removeIcon = _getIcons.removeIcon,\n clearIcon = _getIcons.clearIcon;\n var selectProps = omit(props, ['suffixIcon', 'itemIcon']);\n var rcSelectRtlDropdownClassName = classNames(popupClassName || dropdownClassName, _defineProperty({}, \"\".concat(prefixCls, \"-dropdown-\").concat(direction), direction === 'rtl'));\n var mergedSize = compactSize || customizeSize || size;\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n var mergedClassName = classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-lg\"), mergedSize === 'large'), \"\".concat(prefixCls, \"-sm\"), mergedSize === 'small'), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-borderless\"), !bordered), \"\".concat(prefixCls, \"-in-form-item\"), isFormItemInput), getStatusClassNames(prefixCls, mergedStatus, hasFeedback), compactItemClassnames, className);\n // ===================== Placement =====================\n var getPlacement = function getPlacement() {\n if (placement !== undefined) {\n return placement;\n }\n return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n };\n return /*#__PURE__*/React.createElement(RcSelect, _extends({\n ref: ref,\n virtual: virtual,\n dropdownMatchSelectWidth: dropdownMatchSelectWidth\n }, selectProps, {\n transitionName: getTransitionName(rootPrefixCls, getTransitionDirection(placement), props.transitionName),\n listHeight: listHeight,\n listItemHeight: listItemHeight,\n mode: mode,\n prefixCls: prefixCls,\n placement: getPlacement(),\n direction: direction,\n inputIcon: suffixIcon,\n menuItemSelectedIcon: itemIcon,\n removeIcon: removeIcon,\n clearIcon: clearIcon,\n notFoundContent: mergedNotFound,\n className: mergedClassName,\n getPopupContainer: getPopupContainer || getContextPopupContainer,\n dropdownClassName: rcSelectRtlDropdownClassName,\n showArrow: hasFeedback || showArrow,\n disabled: mergedDisabled\n }));\n};\nvar Select = /*#__PURE__*/React.forwardRef(InternalSelect);\nSelect.SECRET_COMBOBOX_MODE_DO_NOT_USE = SECRET_COMBOBOX_MODE_DO_NOT_USE;\nSelect.Option = Option;\nSelect.OptGroup = OptGroup;\nexport default Select;","import CheckOutlined from \"@ant-design/icons/es/icons/CheckOutlined\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport CloseOutlined from \"@ant-design/icons/es/icons/CloseOutlined\";\nimport DownOutlined from \"@ant-design/icons/es/icons/DownOutlined\";\nimport LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport SearchOutlined from \"@ant-design/icons/es/icons/SearchOutlined\";\nimport * as React from 'react';\nexport default function getIcons(_ref) {\n var suffixIcon = _ref.suffixIcon,\n clearIcon = _ref.clearIcon,\n menuItemSelectedIcon = _ref.menuItemSelectedIcon,\n removeIcon = _ref.removeIcon,\n loading = _ref.loading,\n multiple = _ref.multiple,\n hasFeedback = _ref.hasFeedback,\n prefixCls = _ref.prefixCls,\n showArrow = _ref.showArrow,\n feedbackIcon = _ref.feedbackIcon;\n // Clear Icon\n var mergedClearIcon = clearIcon !== null && clearIcon !== void 0 ? clearIcon : /*#__PURE__*/React.createElement(CloseCircleFilled, null);\n // Validation Feedback Icon\n var getSuffixIconNode = function getSuffixIconNode(arrowIcon) {\n return /*#__PURE__*/React.createElement(React.Fragment, null, showArrow !== false && arrowIcon, hasFeedback && feedbackIcon);\n };\n // Arrow item icon\n var mergedSuffixIcon = null;\n if (suffixIcon !== undefined) {\n mergedSuffixIcon = getSuffixIconNode(suffixIcon);\n } else if (loading) {\n mergedSuffixIcon = getSuffixIconNode( /*#__PURE__*/React.createElement(LoadingOutlined, {\n spin: true\n }));\n } else {\n var iconCls = \"\".concat(prefixCls, \"-suffix\");\n mergedSuffixIcon = function mergedSuffixIcon(_ref2) {\n var open = _ref2.open,\n showSearch = _ref2.showSearch;\n if (open && showSearch) {\n return getSuffixIconNode( /*#__PURE__*/React.createElement(SearchOutlined, {\n className: iconCls\n }));\n }\n return getSuffixIconNode( /*#__PURE__*/React.createElement(DownOutlined, {\n className: iconCls\n }));\n };\n }\n // Checked item icon\n var mergedItemIcon = null;\n if (menuItemSelectedIcon !== undefined) {\n mergedItemIcon = menuItemSelectedIcon;\n } else if (multiple) {\n mergedItemIcon = /*#__PURE__*/React.createElement(CheckOutlined, null);\n } else {\n mergedItemIcon = null;\n }\n var mergedRemoveIcon = null;\n if (removeIcon !== undefined) {\n mergedRemoveIcon = removeIcon;\n } else {\n mergedRemoveIcon = /*#__PURE__*/React.createElement(CloseOutlined, null);\n }\n return {\n clearIcon: mergedClearIcon,\n suffixIcon: mergedSuffixIcon,\n itemIcon: mergedItemIcon,\n removeIcon: mergedRemoveIcon\n };\n}","import React, { useState, useEffect } from \"react\"\n// import { Link, navigate } from \"gatsby\"\nimport * as reachRouter from \"@reach/router\"\nimport { Link } from \"react-scroll\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/home.module.css\"\nimport BackgroundImage from \"gatsby-background-image\"\nimport SideMenu from \"../sideMenu\"\nimport { Select } from \"antd\"\nimport { DatePicker, Space } from \"antd\"\nimport moment from \"moment\"\nimport { PlusCircleOutlined, MinusCircleOutlined } from \"@ant-design/icons\"\nimport downArrow from \"../../images/logos/arrowQuilmesTour.svg\"\nimport calendarIcon from \"../../images/calendar.svg\"\nimport \"antd/dist/antd.css\"\nimport \"../../styles/quilmesTourStyles/index.css\"\nimport teaser from \"../../videos/1022_Teaser_Full_Online.mp4\"\n\nconst { Option } = Select\n\nconst HomeTour = ({\n images,\n setPersonas,\n personas,\n fecha,\n tour,\n tourOptions,\n dateOptionsOfCurrentTour,\n onDateChange,\n onTourChange,\n availability,\n counterUp,\n counterDown,\n}) => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n const [activeMenu, setActiveMenu] = useState(true)\n const [isActive, setIsActive] = useState(true)\n const [disabledButton, setDisabledButton] = useState(true)\n\n // console.log(\"TOUR OPTIONSS\", tourOptions)\n // console.log(\"toour\", tour)\n\n useEffect(() => {\n if (disabledButton && tour.name && fecha) setDisabledButton(false)\n if (!disabledButton || !tour.name || !fecha) setDisabledButton(true)\n }, [tour, fecha])\n\n function disabledDate(current) {\n if (dateOptionsOfCurrentTour) {\n return (\n current < moment().endOf(\"day\") ||\n !dateOptionsOfCurrentTour.some(\n date => date.fecha === current.format(\"YYYY-MM-DD\")\n )\n )\n }\n }\n\n return (\n <>\n {!mobile ? (\n \n
\n
\n {/*
\n \n ) : (\n <>\n \n \n
\n
\n

\n ¡Hola!

\n\n Nos estamos re-acomodando para mejorar tu experiencia.

\n\n ¡Nos reencontramos pronto!

\n\n Seguinos en @cervezaquilmes y @parquedelacerveceria para enterarte todas la novedades.\n

\n {/**/}\n {/*
*/}\n
\n \n\n \n \n )}\n \n )\n}\n\n//
\n//
\n//

¿Cuándo venis?

\n//
\n// \n// {tourOptions.map(tour => (\n// \n// {tour.tourdescrip}\n// \n// ))}\n// \n// \n// \n// }\n// />\n// \n//
\n// \n//

\n// {personas} PERSONA{personas > 1 && \"S\"}\n//

\n// \n//
\n// {disabledButton ? (\n// \n// ) : (\n// /*\n// )}\n//
\n// {/*

\n// Tour disponible para mayores de 18 años únicamente.\n//

*/}\n//

\n// Explora las cuatro propuestas\n//

\n//
\n// \n// {\" \"}\n// \n//
\n//
\n//
\n\nexport default HomeTour\n","import canUseDom from \"rc-util/es/Dom/canUseDom\";\nimport { isStyleSupport } from \"rc-util/es/Dom/styleChecker\";\nexport var canUseDocElement = function canUseDocElement() {\n return canUseDom() && window.document.documentElement;\n};\nexport { isStyleSupport };\nvar flexGapSupported;\nexport var detectFlexGapSupported = function 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 var 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};","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { SpaceContext } from '.';\nexport default function Item(_ref) {\n var className = _ref.className,\n direction = _ref.direction,\n index = _ref.index,\n marginDirection = _ref.marginDirection,\n children = _ref.children,\n split = _ref.split,\n wrap = _ref.wrap;\n var _React$useContext = React.useContext(SpaceContext),\n horizontalSize = _React$useContext.horizontalSize,\n verticalSize = _React$useContext.verticalSize,\n latestIndex = _React$useContext.latestIndex,\n supportFlexGap = _React$useContext.supportFlexGap;\n var 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 = _extends(_extends({}, index < latestIndex && _defineProperty({}, marginDirection, horizontalSize / (split ? 2 : 1))), 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: \"\".concat(className, \"-split\"),\n style: style\n }, split)));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\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 toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport useFlexGapSupport from '../_util/hooks/useFlexGapSupport';\nimport Item from './Item';\nimport Compact from './Compact';\nexport var SpaceContext = /*#__PURE__*/React.createContext({\n latestIndex: 0,\n horizontalSize: 0,\n verticalSize: 0,\n supportFlexGap: false\n});\nvar spaceSize = {\n small: 8,\n middle: 16,\n large: 24\n};\nfunction getNumberSize(size) {\n return typeof size === 'string' ? spaceSize[size] : size || 0;\n}\nvar Space = function Space(props) {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n space = _React$useContext.space,\n directionConfig = _React$useContext.direction;\n var _props$size = props.size,\n size = _props$size === void 0 ? (space === null || space === void 0 ? void 0 : space.size) || 'small' : _props$size,\n align = props.align,\n className = props.className,\n children = props.children,\n _props$direction = props.direction,\n direction = _props$direction === void 0 ? 'horizontal' : _props$direction,\n customizePrefixCls = props.prefixCls,\n split = props.split,\n style = props.style,\n _props$wrap = props.wrap,\n wrap = _props$wrap === void 0 ? false : _props$wrap,\n otherProps = __rest(props, [\"size\", \"align\", \"className\", \"children\", \"direction\", \"prefixCls\", \"split\", \"style\", \"wrap\"]);\n var supportFlexGap = useFlexGapSupport();\n var _React$useMemo = React.useMemo(function () {\n return (Array.isArray(size) ? size : [size, size]).map(function (item) {\n return getNumberSize(item);\n });\n }, [size]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n horizontalSize = _React$useMemo2[0],\n verticalSize = _React$useMemo2[1];\n var childNodes = toArray(children, {\n keepEmpty: true\n });\n var mergedAlign = align === undefined && direction === 'horizontal' ? 'center' : align;\n var prefixCls = getPrefixCls('space', customizePrefixCls);\n var cn = classNames(prefixCls, \"\".concat(prefixCls, \"-\").concat(direction), _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), directionConfig === 'rtl'), \"\".concat(prefixCls, \"-align-\").concat(mergedAlign), mergedAlign), className);\n var itemClassName = \"\".concat(prefixCls, \"-item\");\n var marginDirection = directionConfig === 'rtl' ? 'marginLeft' : 'marginRight';\n // Calculate latest one\n var latestIndex = 0;\n var nodes = childNodes.map(function (child, i) {\n if (child !== null && child !== undefined) {\n latestIndex = i;\n }\n var key = child && child.key || \"\".concat(itemClassName, \"-\").concat(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 var spaceContext = React.useMemo(function () {\n return {\n horizontalSize: horizontalSize,\n verticalSize: verticalSize,\n latestIndex: latestIndex,\n supportFlexGap: supportFlexGap\n };\n }, [horizontalSize, verticalSize, latestIndex, supportFlexGap]);\n // =========================== Render ===========================\n if (childNodes.length === 0) {\n return null;\n }\n var 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 /*#__PURE__*/React.createElement(\"div\", _extends({\n className: cn,\n style: _extends(_extends({}, gapStyle), style)\n }, otherProps), /*#__PURE__*/React.createElement(SpaceContext.Provider, {\n value: spaceContext\n }, nodes));\n};\nvar CompoundedSpace = Space;\nCompoundedSpace.Compact = Compact;\nexport default CompoundedSpace;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { detectFlexGapSupported } from '../styleChecker';\nexport default (function () {\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n flexible = _React$useState2[0],\n setFlexible = _React$useState2[1];\n React.useEffect(function () {\n setFlexible(detectFlexGapSupported());\n }, []);\n return flexible;\n});","import moment from 'moment';\nimport { noteOnce } from \"rc-util/es/warning\";\nvar generateConfig = {\n // get\n getNow: function getNow() {\n return moment();\n },\n getFixedDate: function getFixedDate(string) {\n return moment(string, 'YYYY-MM-DD');\n },\n getEndDate: function getEndDate(date) {\n var clone = date.clone();\n return clone.endOf('month');\n },\n getWeekDay: function getWeekDay(date) {\n var clone = date.clone().locale('en_US');\n return clone.weekday() + clone.localeData().firstDayOfWeek();\n },\n getYear: function getYear(date) {\n return date.year();\n },\n getMonth: function getMonth(date) {\n return date.month();\n },\n getDate: function getDate(date) {\n return date.date();\n },\n getHour: function getHour(date) {\n return date.hour();\n },\n getMinute: function getMinute(date) {\n return date.minute();\n },\n getSecond: function getSecond(date) {\n return date.second();\n },\n // set\n addYear: function addYear(date, diff) {\n var clone = date.clone();\n return clone.add(diff, 'year');\n },\n addMonth: function addMonth(date, diff) {\n var clone = date.clone();\n return clone.add(diff, 'month');\n },\n addDate: function addDate(date, diff) {\n var clone = date.clone();\n return clone.add(diff, 'day');\n },\n setYear: function setYear(date, year) {\n var clone = date.clone();\n return clone.year(year);\n },\n setMonth: function setMonth(date, month) {\n var clone = date.clone();\n return clone.month(month);\n },\n setDate: function setDate(date, num) {\n var clone = date.clone();\n return clone.date(num);\n },\n setHour: function setHour(date, hour) {\n var clone = date.clone();\n return clone.hour(hour);\n },\n setMinute: function setMinute(date, minute) {\n var clone = date.clone();\n return clone.minute(minute);\n },\n setSecond: function setSecond(date, second) {\n var clone = date.clone();\n return clone.second(second);\n },\n // Compare\n isAfter: function isAfter(date1, date2) {\n return date1.isAfter(date2);\n },\n isValidate: function isValidate(date) {\n return date.isValid();\n },\n locale: {\n getWeekFirstDay: function getWeekFirstDay(locale) {\n var date = moment().locale(locale);\n return date.localeData().firstDayOfWeek();\n },\n getWeekFirstDate: function getWeekFirstDate(locale, date) {\n var clone = date.clone();\n var result = clone.locale(locale);\n return result.weekday(0);\n },\n getWeek: function getWeek(locale, date) {\n var clone = date.clone();\n var result = clone.locale(locale);\n return result.week();\n },\n getShortWeekDays: function getShortWeekDays(locale) {\n var date = moment().locale(locale);\n return date.localeData().weekdaysMin();\n },\n getShortMonths: function getShortMonths(locale) {\n var date = moment().locale(locale);\n return date.localeData().monthsShort();\n },\n format: function format(locale, date, _format) {\n var clone = date.clone();\n var result = clone.locale(locale);\n return result.format(_format);\n },\n parse: function parse(locale, text, formats) {\n var fallbackFormatList = [];\n for (var i = 0; i < formats.length; i += 1) {\n var format = formats[i];\n var formatText = text;\n if (format.includes('wo') || format.includes('Wo')) {\n format = format.replace(/wo/g, 'w').replace(/Wo/g, 'W');\n var matchFormat = format.match(/[-YyMmDdHhSsWwGg]+/g);\n var matchText = formatText.match(/[-\\d]+/g);\n if (matchFormat && matchText) {\n format = matchFormat.join('');\n formatText = matchText.join('');\n } else {\n fallbackFormatList.push(format.replace(/o/g, ''));\n }\n }\n var date = moment(formatText, format, locale, true);\n if (date.isValid()) {\n return date;\n }\n }\n // Fallback to fuzzy matching, this should always not reach match or need fire a issue\n for (var _i = 0; _i < fallbackFormatList.length; _i += 1) {\n var _date = moment(text, fallbackFormatList[_i], locale, false);\n /* istanbul ignore next */\n if (_date.isValid()) {\n noteOnce(false, 'Not match any format strictly and fallback to fuzzy match. Please help to fire a issue about this.');\n return _date;\n }\n }\n return null;\n }\n }\n};\nexport default generateConfig;","import * as React from 'react';\nvar isValidElement = React.isValidElement;\nexport { isValidElement };\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 _possibleConstructorReturn from \"@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _isNativeReflectConstruct from \"@babel/runtime/helpers/esm/isNativeReflectConstruct\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/esm/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nfunction _callSuper(t, o, e) {\n return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));\n}\nimport { updateCSS } from \"rc-util/es/Dom/dynamicCSS\";\nimport { composeRef, supportRef } from \"rc-util/es/ref\";\nimport * as React from 'react';\nimport { ConfigConsumer, ConfigContext } from '../config-provider';\nimport raf from './raf';\nimport { cloneElement } from './reactNode';\nvar styleForPseudo;\n// Where el is the DOM element you'd like to test for visibility\nfunction isHidden(element) {\n if (process.env.NODE_ENV === 'test') {\n return false;\n }\n return !element || element.offsetParent === null || element.hidden;\n}\nfunction getValidateContainer(nodeRoot) {\n if (nodeRoot instanceof Document) {\n return nodeRoot.body;\n }\n return Array.from(nodeRoot.childNodes).find(function (ele) {\n return (ele === null || ele === void 0 ? void 0 : ele.nodeType) === Node.ELEMENT_NODE;\n });\n}\nfunction isNotGrey(color) {\n // eslint-disable-next-line no-useless-escape\n var 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}\nvar Wave = /*#__PURE__*/function (_React$Component) {\n _inherits(Wave, _React$Component);\n function Wave() {\n var _this;\n _classCallCheck(this, Wave);\n _this = _callSuper(this, Wave, arguments);\n _this.containerRef = /*#__PURE__*/React.createRef();\n _this.animationStart = false;\n _this.destroyed = false;\n _this.onClick = function (node, waveColor) {\n var _a, _b;\n var _this$props = _this.props,\n insertExtraNode = _this$props.insertExtraNode,\n disabled = _this$props.disabled;\n if (disabled || !node || isHidden(node) || node.className.includes('-leave')) {\n return;\n }\n _this.extraNode = document.createElement('div');\n var _assertThisInitialize = _assertThisInitialized(_this),\n extraNode = _assertThisInitialize.extraNode;\n var getPrefixCls = _this.context.getPrefixCls;\n extraNode.className = \"\".concat(getPrefixCls(''), \"-click-animating-node\");\n var attributeName = _this.getAttributeName();\n node.setAttribute(attributeName, 'true');\n // Not white or transparent or grey\n if (waveColor && waveColor !== '#fff' && waveColor !== '#ffffff' && waveColor !== 'rgb(255, 255, 255)' && waveColor !== 'rgba(255, 255, 255, 1)' && isNotGrey(waveColor) && !/rgba\\((?:\\d*, ){3}0\\)/.test(waveColor) &&\n // any transparent rgba color\n waveColor !== 'transparent') {\n extraNode.style.borderColor = waveColor;\n var nodeRoot = ((_a = node.getRootNode) === null || _a === void 0 ? void 0 : _a.call(node)) || node.ownerDocument;\n var nodeBody = (_b = getValidateContainer(nodeRoot)) !== null && _b !== void 0 ? _b : nodeRoot;\n styleForPseudo = updateCSS(\"\\n [\".concat(getPrefixCls(''), \"-click-animating-without-extra-node='true']::after, .\").concat(getPrefixCls(''), \"-click-animating-node {\\n --antd-wave-shadow-color: \").concat(waveColor, \";\\n }\"), 'antd-wave', {\n csp: _this.csp,\n attachTo: nodeBody\n });\n }\n if (insertExtraNode) {\n node.appendChild(extraNode);\n }\n ['transition', 'animation'].forEach(function (name) {\n node.addEventListener(\"\".concat(name, \"start\"), _this.onTransitionStart);\n node.addEventListener(\"\".concat(name, \"end\"), _this.onTransitionEnd);\n });\n };\n _this.onTransitionStart = function (e) {\n if (_this.destroyed) {\n return;\n }\n var node = _this.containerRef.current;\n if (!e || e.target !== node || _this.animationStart) {\n return;\n }\n _this.resetEffect(node);\n };\n _this.onTransitionEnd = function (e) {\n if (!e || e.animationName !== 'fadeEffect') {\n return;\n }\n _this.resetEffect(e.target);\n };\n _this.bindAnimationEvent = function (node) {\n if (!node || !node.getAttribute || node.getAttribute('disabled') || node.className.includes('disabled')) {\n return;\n }\n var onClick = function onClick(e) {\n // Fix radio button click twice\n if (e.target.tagName === 'INPUT' || isHidden(e.target)) {\n return;\n }\n _this.resetEffect(node);\n // Get wave color from target\n var waveColor = getComputedStyle(node).getPropertyValue('border-top-color') ||\n // Firefox Compatible\n getComputedStyle(node).getPropertyValue('border-color') || getComputedStyle(node).getPropertyValue('background-color');\n _this.clickWaveTimeoutId = window.setTimeout(function () {\n return _this.onClick(node, waveColor);\n }, 0);\n raf.cancel(_this.animationStartId);\n _this.animationStart = true;\n // Render to trigger transition event cost 3 frames. Let's delay 10 frames to reset this.\n _this.animationStartId = raf(function () {\n _this.animationStart = false;\n }, 10);\n };\n node.addEventListener('click', onClick, true);\n return {\n cancel: function cancel() {\n node.removeEventListener('click', onClick, true);\n }\n };\n };\n _this.renderWave = function (_ref) {\n var csp = _ref.csp;\n var children = _this.props.children;\n _this.csp = csp;\n if (! /*#__PURE__*/React.isValidElement(children)) return children;\n var ref = _this.containerRef;\n if (supportRef(children)) {\n ref = composeRef(children.ref, _this.containerRef);\n }\n return cloneElement(children, {\n ref: ref\n });\n };\n return _this;\n }\n _createClass(Wave, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.destroyed = false;\n var node = this.containerRef.current;\n if (!node || node.nodeType !== 1) {\n return;\n }\n this.instance = this.bindAnimationEvent(node);\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.instance) {\n this.instance.cancel();\n }\n if (this.clickWaveTimeoutId) {\n clearTimeout(this.clickWaveTimeoutId);\n }\n this.destroyed = true;\n }\n }, {\n key: \"getAttributeName\",\n value: function getAttributeName() {\n var getPrefixCls = this.context.getPrefixCls;\n var insertExtraNode = this.props.insertExtraNode;\n return insertExtraNode ? \"\".concat(getPrefixCls(''), \"-click-animating\") : \"\".concat(getPrefixCls(''), \"-click-animating-without-extra-node\");\n }\n }, {\n key: \"resetEffect\",\n value: function resetEffect(node) {\n var _this2 = this;\n if (!node || node === this.extraNode || !(node instanceof Element)) {\n return;\n }\n var insertExtraNode = this.props.insertExtraNode;\n var attributeName = this.getAttributeName();\n node.setAttribute(attributeName, 'false'); // edge has bug on `removeAttribute` #14466\n if (styleForPseudo) {\n styleForPseudo.innerHTML = '';\n }\n if (insertExtraNode && this.extraNode && node.contains(this.extraNode)) {\n node.removeChild(this.extraNode);\n }\n ['transition', 'animation'].forEach(function (name) {\n node.removeEventListener(\"\".concat(name, \"start\"), _this2.onTransitionStart);\n node.removeEventListener(\"\".concat(name, \"end\"), _this2.onTransitionEnd);\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, this.renderWave);\n }\n }]);\n return Wave;\n}(React.Component);\nWave.contextType = ConfigContext;\nexport default Wave;","import raf from \"rc-util/es/raf\";\nvar id = 0;\nvar ids = {};\n// Support call raf with delay specified frame\nexport default function wrapperRaf(callback) {\n var delayFrames = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;\n var myId = id++;\n var restFrames = delayFrames;\n function internalCallback() {\n restFrames -= 1;\n if (restFrames <= 0) {\n callback();\n delete ids[myId];\n } else {\n ids[myId] = raf(internalCallback);\n }\n }\n ids[myId] = raf(internalCallback);\n return myId;\n}\nwrapperRaf.cancel = function cancel(pid) {\n if (pid === undefined) return;\n raf.cancel(ids[pid]);\n delete ids[pid];\n};\nwrapperRaf.ids = ids; // export this for test usage","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\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 * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport warning from '../_util/warning';\nexport var GroupSizeContext = /*#__PURE__*/React.createContext(undefined);\nvar ButtonGroup = function ButtonGroup(props) {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n var customizePrefixCls = props.prefixCls,\n size = props.size,\n className = props.className,\n others = __rest(props, [\"prefixCls\", \"size\", \"className\"]);\n var prefixCls = getPrefixCls('btn-group', customizePrefixCls);\n // large => lg\n // small => sm\n var 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 var classes = classNames(prefixCls, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-\").concat(sizeCls), sizeCls), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), className);\n return /*#__PURE__*/React.createElement(GroupSizeContext.Provider, {\n value: size\n }, /*#__PURE__*/React.createElement(\"div\", _extends({}, others, {\n className: classes\n })));\n};\nexport default ButtonGroup;","import LoadingOutlined from \"@ant-design/icons/es/icons/LoadingOutlined\";\nimport CSSMotion from 'rc-motion';\nimport React from 'react';\nvar getCollapsedWidth = function getCollapsedWidth() {\n return {\n width: 0,\n opacity: 0,\n transform: 'scale(0)'\n };\n};\nvar getRealWidth = function getRealWidth(node) {\n return {\n width: node.scrollWidth,\n opacity: 1,\n transform: 'scale(1)'\n };\n};\nvar LoadingIcon = function LoadingIcon(_ref) {\n var prefixCls = _ref.prefixCls,\n loading = _ref.loading,\n existIcon = _ref.existIcon;\n var visible = !!loading;\n if (existIcon) {\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(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: \"\".concat(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 }, function (_ref2, ref) {\n var className = _ref2.className,\n style = _ref2.style;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-loading-icon\"),\n style: style,\n ref: ref\n }, /*#__PURE__*/React.createElement(LoadingOutlined, {\n className: className\n }));\n });\n};\nexport default LoadingIcon;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\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};\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 { cloneElement, isFragment } from '../_util/reactNode';\nimport { tuple } from '../_util/type';\nimport warning from '../_util/warning';\nimport Wave from '../_util/wave';\nimport Group, { GroupSizeContext } from './button-group';\nimport LoadingIcon from './LoadingIcon';\nvar rxTwoCNChar = /^[\\u4e00-\\u9fa5]{2}$/;\nvar isTwoCNChar = rxTwoCNChar.test.bind(rxTwoCNChar);\nfunction isString(str) {\n return typeof str === 'string';\n}\nfunction isUnBorderedButtonType(type) {\n return type === 'text' || type === 'link';\n}\n// Insert one space between two chinese characters automatically.\nfunction insertSpace(child, needInserted) {\n // Check the child if is undefined or null.\n if (child === null || child === undefined) {\n return;\n }\n var SPACE = needInserted ? ' ' : '';\n // strictNullChecks oops.\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}\nfunction spaceChildren(children, needInserted) {\n var isPrevChildPure = false;\n var childList = [];\n React.Children.forEach(children, function (child) {\n var type = _typeof(child);\n var isCurrentChildPure = type === 'string' || type === 'number';\n if (isPrevChildPure && isCurrentChildPure) {\n var lastIndex = childList.length - 1;\n var lastChild = childList[lastIndex];\n childList[lastIndex] = \"\".concat(lastChild).concat(child);\n } else {\n childList.push(child);\n }\n isPrevChildPure = isCurrentChildPure;\n });\n // Pass to React.Children.map to auto fill key\n return React.Children.map(childList, function (child) {\n return insertSpace(child, needInserted);\n });\n}\nvar ButtonTypes = tuple('default', 'primary', 'ghost', 'dashed', 'link', 'text');\nvar ButtonShapes = tuple('default', 'circle', 'round');\nvar ButtonHTMLTypes = tuple('submit', 'button', 'reset');\nexport function convertLegacyProps(type) {\n if (type === 'danger') {\n return {\n danger: true\n };\n }\n return {\n type: type\n };\n}\nvar InternalButton = function InternalButton(props, ref) {\n var _classNames;\n var _props$loading = props.loading,\n loading = _props$loading === void 0 ? false : _props$loading,\n customizePrefixCls = props.prefixCls,\n _props$type = props.type,\n type = _props$type === void 0 ? 'default' : _props$type,\n danger = props.danger,\n _props$shape = props.shape,\n shape = _props$shape === void 0 ? 'default' : _props$shape,\n customizeSize = props.size,\n customDisabled = props.disabled,\n className = props.className,\n children = props.children,\n icon = props.icon,\n _props$ghost = props.ghost,\n ghost = _props$ghost === void 0 ? false : _props$ghost,\n _props$block = props.block,\n block = _props$block === void 0 ? false : _props$block,\n _props$htmlType = props.htmlType,\n htmlType = _props$htmlType === void 0 ? 'button' : _props$htmlType,\n rest = __rest(props, [\"loading\", \"prefixCls\", \"type\", \"danger\", \"shape\", \"size\", \"disabled\", \"className\", \"children\", \"icon\", \"ghost\", \"block\", \"htmlType\"]);\n var size = React.useContext(SizeContext);\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n var groupSize = React.useContext(GroupSizeContext);\n var _React$useState = React.useState(!!loading),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n innerLoading = _React$useState2[0],\n setLoading = _React$useState2[1];\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n hasTwoCNChar = _React$useState4[0],\n setHasTwoCNChar = _React$useState4[1];\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n autoInsertSpaceInButton = _React$useContext.autoInsertSpaceInButton,\n direction = _React$useContext.direction;\n var buttonRef = ref || /*#__PURE__*/React.createRef();\n var isNeedInserted = function isNeedInserted() {\n return React.Children.count(children) === 1 && !icon && !isUnBorderedButtonType(type);\n };\n var fixTwoCNChar = function fixTwoCNChar() {\n // Fix for HOC usage like \n if (!buttonRef || !buttonRef.current || autoInsertSpaceInButton === false) {\n return;\n }\n var 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 // =============== Update Loading ===============\n var loadingOrDelay = typeof loading === 'boolean' ? loading : (loading === null || loading === void 0 ? void 0 : loading.delay) || true;\n React.useEffect(function () {\n var delayTimer = null;\n if (typeof loadingOrDelay === 'number') {\n delayTimer = window.setTimeout(function () {\n delayTimer = null;\n setLoading(loadingOrDelay);\n }, loadingOrDelay);\n } else {\n setLoading(loadingOrDelay);\n }\n return function () {\n if (delayTimer) {\n // in order to not perform a React state update on an unmounted component\n // and clear timer after 'loadingOrDelay' updated.\n window.clearTimeout(delayTimer);\n delayTimer = null;\n }\n };\n }, [loadingOrDelay]);\n React.useEffect(fixTwoCNChar, [buttonRef]);\n var handleClick = function handleClick(e) {\n var onClick = props.onClick;\n // 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 `\".concat(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 var prefixCls = getPrefixCls('btn', customizePrefixCls);\n var autoInsertSpace = autoInsertSpaceInButton !== false;\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize,\n compactItemClassnames = _useCompactItemContex.compactItemClassnames;\n var sizeClassNameMap = {\n large: 'lg',\n small: 'sm',\n middle: undefined\n };\n var sizeFullname = compactSize || groupSize || customizeSize || size;\n var sizeCls = sizeFullname ? sizeClassNameMap[sizeFullname] || '' : '';\n var iconType = innerLoading ? 'loading' : icon;\n var linkButtonRestProps = omit(rest, ['navigate']);\n var classes = classNames(prefixCls, (_classNames = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_classNames, \"\".concat(prefixCls, \"-\").concat(shape), shape !== 'default' && shape), \"\".concat(prefixCls, \"-\").concat(type), type), \"\".concat(prefixCls, \"-\").concat(sizeCls), sizeCls), \"\".concat(prefixCls, \"-icon-only\"), !children && children !== 0 && !!iconType), \"\".concat(prefixCls, \"-background-ghost\"), ghost && !isUnBorderedButtonType(type)), \"\".concat(prefixCls, \"-loading\"), innerLoading), \"\".concat(prefixCls, \"-two-chinese-chars\"), hasTwoCNChar && autoInsertSpace && !innerLoading), \"\".concat(prefixCls, \"-block\"), block), \"\".concat(prefixCls, \"-dangerous\"), !!danger), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _defineProperty(_classNames, \"\".concat(prefixCls, \"-disabled\"), linkButtonRestProps.href !== undefined && mergedDisabled)), compactItemClassnames, className);\n var iconNode = icon && !innerLoading ? icon : ( /*#__PURE__*/React.createElement(LoadingIcon, {\n existIcon: !!icon,\n prefixCls: prefixCls,\n loading: !!innerLoading\n }));\n var kids = children || children === 0 ? spaceChildren(children, isNeedInserted() && autoInsertSpace) : null;\n if (linkButtonRestProps.href !== undefined) {\n return /*#__PURE__*/React.createElement(\"a\", _extends({}, linkButtonRestProps, {\n className: classes,\n onClick: handleClick,\n ref: buttonRef\n }), iconNode, kids);\n }\n var buttonNode = /*#__PURE__*/React.createElement(\"button\", _extends({}, rest, {\n type: htmlType,\n className: classes,\n onClick: handleClick,\n disabled: mergedDisabled,\n ref: buttonRef\n }), iconNode, kids);\n if (isUnBorderedButtonType(type)) {\n return buttonNode;\n }\n return /*#__PURE__*/React.createElement(Wave, {\n disabled: !!innerLoading\n }, buttonNode);\n};\nvar 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 Button from './button';\nexport default Button;","import { tuple } from './type';\nexport var PresetStatusColorTypes = tuple('success', 'processing', 'error', 'default', 'warning');\n// eslint-disable-next-line import/prefer-default-export\nexport var PresetColorTypes = tuple('pink', 'red', 'yellow', 'orange', 'cyan', 'green', 'blue', 'purple', 'geekblue', 'magenta', 'volcano', 'gold', 'lime');","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\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 * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nvar CheckableTag = function CheckableTag(_a) {\n var customizePrefixCls = _a.prefixCls,\n className = _a.className,\n checked = _a.checked,\n onChange = _a.onChange,\n onClick = _a.onClick,\n restProps = __rest(_a, [\"prefixCls\", \"className\", \"checked\", \"onChange\", \"onClick\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls;\n var handleClick = function handleClick(e) {\n onChange === null || onChange === void 0 ? void 0 : onChange(!checked);\n onClick === null || onClick === void 0 ? void 0 : onClick(e);\n };\n var prefixCls = getPrefixCls('tag', customizePrefixCls);\n var cls = classNames(prefixCls, _defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-checkable\"), true), \"\".concat(prefixCls, \"-checkable-checked\"), checked), className);\n return /*#__PURE__*/React.createElement(\"span\", _extends({}, restProps, {\n className: cls,\n onClick: handleClick\n }));\n};\nexport default CheckableTag;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\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 CloseOutlined from \"@ant-design/icons/es/icons/CloseOutlined\";\nimport classNames from 'classnames';\nimport omit from \"rc-util/es/omit\";\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { PresetColorTypes, PresetStatusColorTypes } from '../_util/colors';\nimport Wave from '../_util/wave';\nimport warning from '../_util/warning';\nimport CheckableTag from './CheckableTag';\nvar PresetColorRegex = new RegExp(\"^(\".concat(PresetColorTypes.join('|'), \")(-inverse)?$\"));\nvar PresetStatusColorRegex = new RegExp(\"^(\".concat(PresetStatusColorTypes.join('|'), \")$\"));\nvar InternalTag = function InternalTag(_a, ref) {\n var customizePrefixCls = _a.prefixCls,\n className = _a.className,\n style = _a.style,\n children = _a.children,\n icon = _a.icon,\n color = _a.color,\n onClose = _a.onClose,\n closeIcon = _a.closeIcon,\n _a$closable = _a.closable,\n closable = _a$closable === void 0 ? false : _a$closable,\n props = __rest(_a, [\"prefixCls\", \"className\", \"style\", \"children\", \"icon\", \"color\", \"onClose\", \"closeIcon\", \"closable\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n var _React$useState = React.useState(true),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n visible = _React$useState2[0],\n setVisible = _React$useState2[1];\n // Warning for deprecated usage\n if (process.env.NODE_ENV !== 'production') {\n process.env.NODE_ENV !== \"production\" ? warning(!('visible' in props), 'Tag', '`visible` will be removed in next major version, please use `visible && ` instead.') : void 0;\n }\n React.useEffect(function () {\n if ('visible' in props) {\n setVisible(props.visible);\n }\n }, [props.visible]);\n var isPresetColor = function isPresetColor() {\n if (!color) {\n return false;\n }\n return PresetColorRegex.test(color) || PresetStatusColorRegex.test(color);\n };\n var tagStyle = _extends({\n backgroundColor: color && !isPresetColor() ? color : undefined\n }, style);\n var presetColor = isPresetColor();\n var prefixCls = getPrefixCls('tag', customizePrefixCls);\n var tagClassName = classNames(prefixCls, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-\").concat(color), presetColor), \"\".concat(prefixCls, \"-has-color\"), color && !presetColor), \"\".concat(prefixCls, \"-hidden\"), !visible), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), className);\n var handleCloseClick = function handleCloseClick(e) {\n e.stopPropagation();\n onClose === null || onClose === void 0 ? void 0 : onClose(e);\n if (e.defaultPrevented) {\n return;\n }\n if (!('visible' in props)) {\n setVisible(false);\n }\n };\n var renderCloseIcon = function renderCloseIcon() {\n if (closable) {\n return closeIcon ? ( /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-close-icon\"),\n onClick: handleCloseClick\n }, closeIcon)) : ( /*#__PURE__*/React.createElement(CloseOutlined, {\n className: \"\".concat(prefixCls, \"-close-icon\"),\n onClick: handleCloseClick\n }));\n }\n return null;\n };\n var isNeedWave = 'onClick' in props || children && children.type === 'a';\n var tagProps = omit(props, ['visible']);\n var iconNode = icon || null;\n var kids = iconNode ? ( /*#__PURE__*/React.createElement(React.Fragment, null, iconNode, /*#__PURE__*/React.createElement(\"span\", null, children))) : children;\n var tagNode = /*#__PURE__*/React.createElement(\"span\", _extends({}, tagProps, {\n ref: ref,\n className: tagClassName,\n style: tagStyle\n }), kids, renderCloseIcon());\n return isNeedWave ? /*#__PURE__*/React.createElement(Wave, null, tagNode) : tagNode;\n};\nvar Tag = /*#__PURE__*/React.forwardRef(InternalTag);\nif (process.env.NODE_ENV !== 'production') {\n Tag.displayName = 'Tag';\n}\nTag.CheckableTag = CheckableTag;\nexport default Tag;","// This icon file is generated automatically.\nvar CalendarOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z\"\n }\n }]\n },\n \"name\": \"calendar\",\n \"theme\": \"outlined\"\n};\nexport default CalendarOutlined;","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 CalendarOutlinedSvg from \"@ant-design/icons-svg/es/asn/CalendarOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar CalendarOutlined = function CalendarOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: CalendarOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(CalendarOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'CalendarOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar ClockCircleOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\"\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M686.7 638.6L544.1 535.5V288c0-4.4-3.6-8-8-8H488c-4.4 0-8 3.6-8 8v275.4c0 2.6 1.2 5 3.3 6.5l165.4 120.6c3.6 2.6 8.6 1.8 11.2-1.7l28.6-39c2.6-3.7 1.8-8.7-1.8-11.2z\"\n }\n }]\n },\n \"name\": \"clock-circle\",\n \"theme\": \"outlined\"\n};\nexport default ClockCircleOutlined;","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 ClockCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/ClockCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar ClockCircleOutlined = function ClockCircleOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: ClockCircleOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(ClockCircleOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'ClockCircleOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar SwapRightOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"0 0 1024 1024\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"d\": \"M873.1 596.2l-164-208A32 32 0 00684 376h-64.8c-6.7 0-10.4 7.7-6.3 13l144.3 183H152c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h695.9c26.8 0 41.7-30.8 25.2-51.8z\"\n }\n }]\n },\n \"name\": \"swap-right\",\n \"theme\": \"outlined\"\n};\nexport default SwapRightOutlined;","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 SwapRightOutlinedSvg from \"@ant-design/icons-svg/es/asn/SwapRightOutlined\";\nimport AntdIcon from '../components/AntdIcon';\nvar SwapRightOutlined = function SwapRightOutlined(props, ref) {\n return /*#__PURE__*/React.createElement(AntdIcon, _objectSpread(_objectSpread({}, props), {}, {\n ref: ref,\n icon: SwapRightOutlinedSvg\n }));\n};\nvar RefIcon = /*#__PURE__*/React.forwardRef(SwapRightOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'SwapRightOutlined';\n}\nexport default RefIcon;","import * as React from 'react';\nvar PanelContext = /*#__PURE__*/React.createContext({});\nexport default PanelContext;","import * as React from 'react';\nimport PanelContext from '../PanelContext';\nvar HIDDEN_STYLE = {\n visibility: 'hidden'\n};\nfunction Header(_ref) {\n var prefixCls = _ref.prefixCls,\n _ref$prevIcon = _ref.prevIcon,\n prevIcon = _ref$prevIcon === void 0 ? \"\\u2039\" : _ref$prevIcon,\n _ref$nextIcon = _ref.nextIcon,\n nextIcon = _ref$nextIcon === void 0 ? \"\\u203A\" : _ref$nextIcon,\n _ref$superPrevIcon = _ref.superPrevIcon,\n superPrevIcon = _ref$superPrevIcon === void 0 ? \"\\xAB\" : _ref$superPrevIcon,\n _ref$superNextIcon = _ref.superNextIcon,\n superNextIcon = _ref$superNextIcon === void 0 ? \"\\xBB\" : _ref$superNextIcon,\n onSuperPrev = _ref.onSuperPrev,\n onSuperNext = _ref.onSuperNext,\n onPrev = _ref.onPrev,\n onNext = _ref.onNext,\n children = _ref.children;\n var _React$useContext = React.useContext(PanelContext),\n hideNextBtn = _React$useContext.hideNextBtn,\n hidePrevBtn = _React$useContext.hidePrevBtn;\n return /*#__PURE__*/React.createElement(\"div\", {\n className: prefixCls\n }, onSuperPrev && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onSuperPrev,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-super-prev-btn\"),\n style: hidePrevBtn ? HIDDEN_STYLE : {}\n }, superPrevIcon), onPrev && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onPrev,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-prev-btn\"),\n style: hidePrevBtn ? HIDDEN_STYLE : {}\n }, prevIcon), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-view\")\n }, children), onNext && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onNext,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-next-btn\"),\n style: hideNextBtn ? HIDDEN_STYLE : {}\n }, nextIcon), onSuperNext && /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onSuperNext,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-super-next-btn\"),\n style: hideNextBtn ? HIDDEN_STYLE : {}\n }, superNextIcon));\n}\nexport default Header;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Header from '../Header';\nimport { DECADE_DISTANCE_COUNT } from '.';\nimport PanelContext from '../../PanelContext';\nfunction DecadeHeader(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n viewDate = props.viewDate,\n onPrevDecades = props.onPrevDecades,\n onNextDecades = props.onNextDecades;\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n var yearNumber = generateConfig.getYear(viewDate);\n var startYear = Math.floor(yearNumber / DECADE_DISTANCE_COUNT) * DECADE_DISTANCE_COUNT;\n var endYear = startYear + DECADE_DISTANCE_COUNT - 1;\n return /*#__PURE__*/React.createElement(Header, _extends({}, props, {\n prefixCls: headerPrefixCls,\n onSuperPrev: onPrevDecades,\n onSuperNext: onNextDecades\n }), startYear, \"-\", endYear);\n}\nexport default DecadeHeader;","export function setTime(generateConfig, date, hour, minute, second) {\n var nextTime = generateConfig.setHour(date, hour);\n nextTime = generateConfig.setMinute(nextTime, minute);\n nextTime = generateConfig.setSecond(nextTime, second);\n return nextTime;\n}\nexport function setDateTime(generateConfig, date, defaultDate) {\n if (!defaultDate) {\n return date;\n }\n var newDate = date;\n newDate = generateConfig.setHour(newDate, generateConfig.getHour(defaultDate));\n newDate = generateConfig.setMinute(newDate, generateConfig.getMinute(defaultDate));\n newDate = generateConfig.setSecond(newDate, generateConfig.getSecond(defaultDate));\n return newDate;\n}\nexport function getLowerBoundTime(hour, minute, second, hourStep, minuteStep, secondStep) {\n var lowerBoundHour = Math.floor(hour / hourStep) * hourStep;\n if (lowerBoundHour < hour) {\n return [lowerBoundHour, 60 - minuteStep, 60 - secondStep];\n }\n var lowerBoundMinute = Math.floor(minute / minuteStep) * minuteStep;\n if (lowerBoundMinute < minute) {\n return [lowerBoundHour, lowerBoundMinute, 60 - secondStep];\n }\n var lowerBoundSecond = Math.floor(second / secondStep) * secondStep;\n return [lowerBoundHour, lowerBoundMinute, lowerBoundSecond];\n}\nexport function getLastDay(generateConfig, date) {\n var year = generateConfig.getYear(date);\n var month = generateConfig.getMonth(date) + 1;\n var endDate = generateConfig.getEndDate(generateConfig.getFixedDate(\"\".concat(year, \"-\").concat(month, \"-01\")));\n var lastDay = generateConfig.getDate(endDate);\n var monthShow = month < 10 ? \"0\".concat(month) : \"\".concat(month);\n return \"\".concat(year, \"-\").concat(monthShow, \"-\").concat(lastDay);\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport PanelContext from '../PanelContext';\nimport { getLastDay } from '../utils/timeUtil';\nimport { getCellDateDisabled } from '../utils/dateUtil';\nexport default function PanelBody(_ref) {\n var prefixCls = _ref.prefixCls,\n disabledDate = _ref.disabledDate,\n onSelect = _ref.onSelect,\n picker = _ref.picker,\n rowNum = _ref.rowNum,\n colNum = _ref.colNum,\n prefixColumn = _ref.prefixColumn,\n rowClassName = _ref.rowClassName,\n baseDate = _ref.baseDate,\n getCellClassName = _ref.getCellClassName,\n getCellText = _ref.getCellText,\n getCellNode = _ref.getCellNode,\n getCellDate = _ref.getCellDate,\n generateConfig = _ref.generateConfig,\n titleCell = _ref.titleCell,\n headerCells = _ref.headerCells;\n var _React$useContext = React.useContext(PanelContext),\n onDateMouseEnter = _React$useContext.onDateMouseEnter,\n onDateMouseLeave = _React$useContext.onDateMouseLeave,\n mode = _React$useContext.mode;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n // =============================== Body ===============================\n var rows = [];\n for (var i = 0; i < rowNum; i += 1) {\n var row = [];\n var rowStartDate = void 0;\n var _loop = function _loop() {\n var _objectSpread2;\n var offset = i * colNum + j;\n var currentDate = getCellDate(baseDate, offset);\n var disabled = getCellDateDisabled({\n cellDate: currentDate,\n mode: mode,\n disabledDate: disabledDate,\n generateConfig: generateConfig\n });\n if (j === 0) {\n rowStartDate = currentDate;\n if (prefixColumn) {\n row.push(prefixColumn(rowStartDate));\n }\n }\n var title = titleCell && titleCell(currentDate);\n row.push( /*#__PURE__*/React.createElement(\"td\", {\n key: j,\n title: title,\n className: classNames(cellPrefixCls, _objectSpread((_objectSpread2 = {}, _defineProperty(_objectSpread2, \"\".concat(cellPrefixCls, \"-disabled\"), disabled), _defineProperty(_objectSpread2, \"\".concat(cellPrefixCls, \"-start\"), getCellText(currentDate) === 1 || picker === 'year' && Number(title) % 10 === 0), _defineProperty(_objectSpread2, \"\".concat(cellPrefixCls, \"-end\"), title === getLastDay(generateConfig, currentDate) || picker === 'year' && Number(title) % 10 === 9), _objectSpread2), getCellClassName(currentDate))),\n onClick: function onClick() {\n if (!disabled) {\n onSelect(currentDate);\n }\n },\n onMouseEnter: function onMouseEnter() {\n if (!disabled && onDateMouseEnter) {\n onDateMouseEnter(currentDate);\n }\n },\n onMouseLeave: function onMouseLeave() {\n if (!disabled && onDateMouseLeave) {\n onDateMouseLeave(currentDate);\n }\n }\n }, getCellNode ? getCellNode(currentDate) : /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(cellPrefixCls, \"-inner\")\n }, getCellText(currentDate))));\n };\n for (var j = 0; j < colNum; j += 1) {\n _loop();\n }\n rows.push( /*#__PURE__*/React.createElement(\"tr\", {\n key: i,\n className: rowClassName && rowClassName(rowStartDate)\n }, row));\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-body\")\n }, /*#__PURE__*/React.createElement(\"table\", {\n className: \"\".concat(prefixCls, \"-content\")\n }, headerCells && /*#__PURE__*/React.createElement(\"thead\", null, /*#__PURE__*/React.createElement(\"tr\", null, headerCells)), /*#__PURE__*/React.createElement(\"tbody\", null, rows)));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport { DECADE_DISTANCE_COUNT, DECADE_UNIT_DIFF } from '.';\nimport PanelBody from '../PanelBody';\nexport var DECADE_COL_COUNT = 3;\nvar DECADE_ROW_COUNT = 4;\nfunction DecadeBody(props) {\n var DECADE_UNIT_DIFF_DES = DECADE_UNIT_DIFF - 1;\n var prefixCls = props.prefixCls,\n viewDate = props.viewDate,\n generateConfig = props.generateConfig;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var yearNumber = generateConfig.getYear(viewDate);\n var decadeYearNumber = Math.floor(yearNumber / DECADE_UNIT_DIFF) * DECADE_UNIT_DIFF;\n var startDecadeYear = Math.floor(yearNumber / DECADE_DISTANCE_COUNT) * DECADE_DISTANCE_COUNT;\n var endDecadeYear = startDecadeYear + DECADE_DISTANCE_COUNT - 1;\n var baseDecadeYear = generateConfig.setYear(viewDate, startDecadeYear - Math.ceil((DECADE_COL_COUNT * DECADE_ROW_COUNT * DECADE_UNIT_DIFF - DECADE_DISTANCE_COUNT) / 2));\n var getCellClassName = function getCellClassName(date) {\n var _ref;\n var startDecadeNumber = generateConfig.getYear(date);\n var endDecadeNumber = startDecadeNumber + DECADE_UNIT_DIFF_DES;\n return _ref = {}, _defineProperty(_ref, \"\".concat(cellPrefixCls, \"-in-view\"), startDecadeYear <= startDecadeNumber && endDecadeNumber <= endDecadeYear), _defineProperty(_ref, \"\".concat(cellPrefixCls, \"-selected\"), startDecadeNumber === decadeYearNumber), _ref;\n };\n return /*#__PURE__*/React.createElement(PanelBody, _extends({}, props, {\n rowNum: DECADE_ROW_COUNT,\n colNum: DECADE_COL_COUNT,\n baseDate: baseDecadeYear,\n getCellText: function getCellText(date) {\n var startDecadeNumber = generateConfig.getYear(date);\n return \"\".concat(startDecadeNumber, \"-\").concat(startDecadeNumber + DECADE_UNIT_DIFF_DES);\n },\n getCellClassName: getCellClassName,\n getCellDate: function getCellDate(date, offset) {\n return generateConfig.addYear(date, offset * DECADE_UNIT_DIFF);\n }\n }));\n}\nexport default DecadeBody;","import _toConsumableArray from \"@babel/runtime/helpers/esm/toConsumableArray\";\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport raf from \"rc-util/es/raf\";\nimport isVisible from \"rc-util/es/Dom/isVisible\";\nvar scrollIds = new Map();\n/** Trigger when element is visible in view */\nexport function waitElementReady(element, callback) {\n var id;\n function tryOrNextFrame() {\n if (isVisible(element)) {\n callback();\n } else {\n id = raf(function () {\n tryOrNextFrame();\n });\n }\n }\n tryOrNextFrame();\n return function () {\n raf.cancel(id);\n };\n}\n/* eslint-disable no-param-reassign */\nexport function scrollTo(element, to, duration) {\n if (scrollIds.get(element)) {\n cancelAnimationFrame(scrollIds.get(element));\n }\n // jump to target if duration zero\n if (duration <= 0) {\n scrollIds.set(element, requestAnimationFrame(function () {\n element.scrollTop = to;\n }));\n return;\n }\n var difference = to - element.scrollTop;\n var perTick = difference / duration * 10;\n scrollIds.set(element, requestAnimationFrame(function () {\n element.scrollTop += perTick;\n if (element.scrollTop !== to) {\n scrollTo(element, to, duration - 10);\n }\n }));\n}\nexport function createKeyDownHandler(event, _ref) {\n var onLeftRight = _ref.onLeftRight,\n onCtrlLeftRight = _ref.onCtrlLeftRight,\n onUpDown = _ref.onUpDown,\n onPageUpDown = _ref.onPageUpDown,\n onEnter = _ref.onEnter;\n var which = event.which,\n ctrlKey = event.ctrlKey,\n metaKey = event.metaKey;\n switch (which) {\n case KeyCode.LEFT:\n if (ctrlKey || metaKey) {\n if (onCtrlLeftRight) {\n onCtrlLeftRight(-1);\n return true;\n }\n } else if (onLeftRight) {\n onLeftRight(-1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.RIGHT:\n if (ctrlKey || metaKey) {\n if (onCtrlLeftRight) {\n onCtrlLeftRight(1);\n return true;\n }\n } else if (onLeftRight) {\n onLeftRight(1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.UP:\n if (onUpDown) {\n onUpDown(-1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.DOWN:\n if (onUpDown) {\n onUpDown(1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.PAGE_UP:\n if (onPageUpDown) {\n onPageUpDown(-1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.PAGE_DOWN:\n if (onPageUpDown) {\n onPageUpDown(1);\n return true;\n }\n /* istanbul ignore next */\n break;\n case KeyCode.ENTER:\n if (onEnter) {\n onEnter();\n return true;\n }\n /* istanbul ignore next */\n break;\n }\n return false;\n}\n// ===================== Format =====================\nexport function getDefaultFormat(format, picker, showTime, use12Hours) {\n var mergedFormat = format;\n if (!mergedFormat) {\n switch (picker) {\n case 'time':\n mergedFormat = use12Hours ? 'hh:mm:ss a' : 'HH:mm:ss';\n break;\n case 'week':\n mergedFormat = 'gggg-wo';\n break;\n case 'month':\n mergedFormat = 'YYYY-MM';\n break;\n case 'quarter':\n mergedFormat = 'YYYY-[Q]Q';\n break;\n case 'year':\n mergedFormat = 'YYYY';\n break;\n default:\n mergedFormat = showTime ? 'YYYY-MM-DD HH:mm:ss' : 'YYYY-MM-DD';\n }\n }\n return mergedFormat;\n}\nexport function getInputSize(picker, format, generateConfig) {\n var defaultSize = picker === 'time' ? 8 : 10;\n var length = typeof format === 'function' ? format(generateConfig.getNow()).length : format.length;\n return Math.max(defaultSize, length) + 2;\n}\nvar globalClickFunc = null;\nvar clickCallbacks = new Set();\nexport function addGlobalMouseDownEvent(callback) {\n if (!globalClickFunc && typeof window !== 'undefined' && window.addEventListener) {\n globalClickFunc = function globalClickFunc(e) {\n // Clone a new list to avoid repeat trigger events\n _toConsumableArray(clickCallbacks).forEach(function (queueFunc) {\n queueFunc(e);\n });\n };\n window.addEventListener('mousedown', globalClickFunc);\n }\n clickCallbacks.add(callback);\n return function () {\n clickCallbacks.delete(callback);\n if (clickCallbacks.size === 0) {\n window.removeEventListener('mousedown', globalClickFunc);\n globalClickFunc = null;\n }\n };\n}\nexport function getTargetFromEvent(e) {\n var target = e.target;\n // get target if in shadow dom\n if (e.composed && target.shadowRoot) {\n var _e$composedPath;\n return ((_e$composedPath = e.composedPath) === null || _e$composedPath === void 0 ? void 0 : _e$composedPath.call(e)[0]) || target;\n }\n return target;\n}\n// ====================== Mode ======================\nvar getYearNextMode = function getYearNextMode(next) {\n if (next === 'month' || next === 'date') {\n return 'year';\n }\n return next;\n};\nvar getMonthNextMode = function getMonthNextMode(next) {\n if (next === 'date') {\n return 'month';\n }\n return next;\n};\nvar getQuarterNextMode = function getQuarterNextMode(next) {\n if (next === 'month' || next === 'date') {\n return 'quarter';\n }\n return next;\n};\nvar getWeekNextMode = function getWeekNextMode(next) {\n if (next === 'date') {\n return 'week';\n }\n return next;\n};\nexport var PickerModeMap = {\n year: getYearNextMode,\n month: getMonthNextMode,\n quarter: getQuarterNextMode,\n week: getWeekNextMode,\n time: null,\n date: null\n};\nexport function elementsContains(elements, target) {\n return elements.some(function (ele) {\n return ele && ele.contains(target);\n });\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport DecadeHeader from './DecadeHeader';\nimport DecadeBody, { DECADE_COL_COUNT } from './DecadeBody';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nexport var DECADE_UNIT_DIFF = 10;\nexport var DECADE_DISTANCE_COUNT = DECADE_UNIT_DIFF * 10;\nfunction DecadePanel(props) {\n var prefixCls = props.prefixCls,\n onViewDateChange = props.onViewDateChange,\n generateConfig = props.generateConfig,\n viewDate = props.viewDate,\n operationRef = props.operationRef,\n onSelect = props.onSelect,\n onPanelChange = props.onPanelChange;\n var panelPrefixCls = \"\".concat(prefixCls, \"-decade-panel\");\n // ======================= Keyboard =======================\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, {\n onLeftRight: function onLeftRight(diff) {\n onSelect(generateConfig.addYear(viewDate, diff * DECADE_UNIT_DIFF), 'key');\n },\n onCtrlLeftRight: function onCtrlLeftRight(diff) {\n onSelect(generateConfig.addYear(viewDate, diff * DECADE_DISTANCE_COUNT), 'key');\n },\n onUpDown: function onUpDown(diff) {\n onSelect(generateConfig.addYear(viewDate, diff * DECADE_UNIT_DIFF * DECADE_COL_COUNT), 'key');\n },\n onEnter: function onEnter() {\n onPanelChange('year', viewDate);\n }\n });\n }\n };\n // ==================== View Operation ====================\n var onDecadesChange = function onDecadesChange(diff) {\n var newDate = generateConfig.addYear(viewDate, diff * DECADE_DISTANCE_COUNT);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n var onInternalSelect = function onInternalSelect(date) {\n onSelect(date, 'mouse');\n onPanelChange('year', date);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: panelPrefixCls\n }, /*#__PURE__*/React.createElement(DecadeHeader, _extends({}, props, {\n prefixCls: prefixCls,\n onPrevDecades: function onPrevDecades() {\n onDecadesChange(-1);\n },\n onNextDecades: function onNextDecades() {\n onDecadesChange(1);\n }\n })), /*#__PURE__*/React.createElement(DecadeBody, _extends({}, props, {\n prefixCls: prefixCls,\n onSelect: onInternalSelect\n })));\n}\nexport default DecadePanel;","import { DECADE_UNIT_DIFF } from '../panels/DecadePanel/index';\nexport var WEEK_DAY_COUNT = 7;\nexport function isNullEqual(value1, value2) {\n if (!value1 && !value2) {\n return true;\n }\n if (!value1 || !value2) {\n return false;\n }\n return undefined;\n}\nexport function isSameDecade(generateConfig, decade1, decade2) {\n var equal = isNullEqual(decade1, decade2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n var num1 = Math.floor(generateConfig.getYear(decade1) / 10);\n var num2 = Math.floor(generateConfig.getYear(decade2) / 10);\n return num1 === num2;\n}\nexport function isSameYear(generateConfig, year1, year2) {\n var equal = isNullEqual(year1, year2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return generateConfig.getYear(year1) === generateConfig.getYear(year2);\n}\nexport function getQuarter(generateConfig, date) {\n var quota = Math.floor(generateConfig.getMonth(date) / 3);\n return quota + 1;\n}\nexport function isSameQuarter(generateConfig, quarter1, quarter2) {\n var equal = isNullEqual(quarter1, quarter2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return isSameYear(generateConfig, quarter1, quarter2) && getQuarter(generateConfig, quarter1) === getQuarter(generateConfig, quarter2);\n}\nexport function isSameMonth(generateConfig, month1, month2) {\n var equal = isNullEqual(month1, month2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return isSameYear(generateConfig, month1, month2) && generateConfig.getMonth(month1) === generateConfig.getMonth(month2);\n}\nexport function isSameDate(generateConfig, date1, date2) {\n var equal = isNullEqual(date1, date2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return generateConfig.getYear(date1) === generateConfig.getYear(date2) && generateConfig.getMonth(date1) === generateConfig.getMonth(date2) && generateConfig.getDate(date1) === generateConfig.getDate(date2);\n}\nexport function isSameTime(generateConfig, time1, time2) {\n var equal = isNullEqual(time1, time2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return generateConfig.getHour(time1) === generateConfig.getHour(time2) && generateConfig.getMinute(time1) === generateConfig.getMinute(time2) && generateConfig.getSecond(time1) === generateConfig.getSecond(time2);\n}\nexport function isSameWeek(generateConfig, locale, date1, date2) {\n var equal = isNullEqual(date1, date2);\n if (typeof equal === 'boolean') {\n return equal;\n }\n return isSameYear(generateConfig, date1, date2) && generateConfig.locale.getWeek(locale, date1) === generateConfig.locale.getWeek(locale, date2);\n}\nexport function isEqual(generateConfig, value1, value2) {\n return isSameDate(generateConfig, value1, value2) && isSameTime(generateConfig, value1, value2);\n}\n/** Between in date but not equal of date */\nexport function isInRange(generateConfig, startDate, endDate, current) {\n if (!startDate || !endDate || !current) {\n return false;\n }\n return !isSameDate(generateConfig, startDate, current) && !isSameDate(generateConfig, endDate, current) && generateConfig.isAfter(current, startDate) && generateConfig.isAfter(endDate, current);\n}\nexport function getWeekStartDate(locale, generateConfig, value) {\n var weekFirstDay = generateConfig.locale.getWeekFirstDay(locale);\n var monthStartDate = generateConfig.setDate(value, 1);\n var startDateWeekDay = generateConfig.getWeekDay(monthStartDate);\n var alignStartDate = generateConfig.addDate(monthStartDate, weekFirstDay - startDateWeekDay);\n if (generateConfig.getMonth(alignStartDate) === generateConfig.getMonth(value) && generateConfig.getDate(alignStartDate) > 1) {\n alignStartDate = generateConfig.addDate(alignStartDate, -7);\n }\n return alignStartDate;\n}\nexport function getClosingViewDate(viewDate, picker, generateConfig) {\n var offset = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1;\n switch (picker) {\n case 'year':\n return generateConfig.addYear(viewDate, offset * 10);\n case 'quarter':\n case 'month':\n return generateConfig.addYear(viewDate, offset);\n default:\n return generateConfig.addMonth(viewDate, offset);\n }\n}\nexport function formatValue(value, _ref) {\n var generateConfig = _ref.generateConfig,\n locale = _ref.locale,\n format = _ref.format;\n return typeof format === 'function' ? format(value) : generateConfig.locale.format(locale.locale, value, format);\n}\nexport function parseValue(value, _ref2) {\n var generateConfig = _ref2.generateConfig,\n locale = _ref2.locale,\n formatList = _ref2.formatList;\n if (!value || typeof formatList[0] === 'function') {\n return null;\n }\n return generateConfig.locale.parse(locale.locale, value, formatList);\n}\n// eslint-disable-next-line consistent-return\nexport function getCellDateDisabled(_ref3) {\n var cellDate = _ref3.cellDate,\n mode = _ref3.mode,\n disabledDate = _ref3.disabledDate,\n generateConfig = _ref3.generateConfig;\n if (!disabledDate) return false;\n // Whether cellDate is disabled in range\n var getDisabledFromRange = function getDisabledFromRange(currentMode, start, end) {\n var current = start;\n while (current <= end) {\n var date = void 0;\n switch (currentMode) {\n case 'date':\n {\n date = generateConfig.setDate(cellDate, current);\n if (!disabledDate(date)) {\n return false;\n }\n break;\n }\n case 'month':\n {\n date = generateConfig.setMonth(cellDate, current);\n if (!getCellDateDisabled({\n cellDate: date,\n mode: 'month',\n generateConfig: generateConfig,\n disabledDate: disabledDate\n })) {\n return false;\n }\n break;\n }\n case 'year':\n {\n date = generateConfig.setYear(cellDate, current);\n if (!getCellDateDisabled({\n cellDate: date,\n mode: 'year',\n generateConfig: generateConfig,\n disabledDate: disabledDate\n })) {\n return false;\n }\n break;\n }\n }\n current += 1;\n }\n return true;\n };\n switch (mode) {\n case 'date':\n case 'week':\n {\n return disabledDate(cellDate);\n }\n case 'month':\n {\n var startDate = 1;\n var endDate = generateConfig.getDate(generateConfig.getEndDate(cellDate));\n return getDisabledFromRange('date', startDate, endDate);\n }\n case 'quarter':\n {\n var startMonth = Math.floor(generateConfig.getMonth(cellDate) / 3) * 3;\n var endMonth = startMonth + 2;\n return getDisabledFromRange('month', startMonth, endMonth);\n }\n case 'year':\n {\n return getDisabledFromRange('month', 0, 11);\n }\n case 'decade':\n {\n var year = generateConfig.getYear(cellDate);\n var startYear = Math.floor(year / DECADE_UNIT_DIFF) * DECADE_UNIT_DIFF;\n var endYear = startYear + DECADE_UNIT_DIFF - 1;\n return getDisabledFromRange('year', startYear, endYear);\n }\n }\n}","import * as React from 'react';\nimport Header from '../Header';\nimport PanelContext from '../../PanelContext';\nimport { formatValue } from '../../utils/dateUtil';\nfunction TimeHeader(props) {\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n locale = props.locale,\n value = props.value,\n format = props.format;\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n return /*#__PURE__*/React.createElement(Header, {\n prefixCls: headerPrefixCls\n }, value ? formatValue(value, {\n locale: locale,\n format: format,\n generateConfig: generateConfig\n }) : \"\\xA0\");\n}\nexport default TimeHeader;","export function leftPad(str, length) {\n var fill = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : '0';\n var current = String(str);\n while (current.length < length) {\n current = \"\".concat(fill).concat(str);\n }\n return current;\n}\nexport var tuple = function tuple() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args;\n};\nexport function toArray(val) {\n if (val === null || val === undefined) {\n return [];\n }\n return Array.isArray(val) ? val : [val];\n}\nexport default function getDataOrAriaProps(props) {\n var retProps = {};\n Object.keys(props).forEach(function (key) {\n if ((key.substr(0, 5) === 'data-' || key.substr(0, 5) === 'aria-' || key === 'role' || key === 'name') && key.substr(0, 7) !== 'data-__') {\n retProps[key] = props[key];\n }\n });\n return retProps;\n}\nexport function getValue(values, index) {\n return values ? values[index] : null;\n}\nexport function updateValues(values, value, index) {\n var newValues = [getValue(values, 0), getValue(values, 1)];\n newValues[index] = typeof value === 'function' ? value(newValues[index]) : value;\n if (!newValues[0] && !newValues[1]) {\n return null;\n }\n return newValues;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport { useRef, useLayoutEffect } from 'react';\nimport classNames from 'classnames';\nimport { scrollTo, waitElementReady } from '../../utils/uiUtil';\nimport PanelContext from '../../PanelContext';\nfunction TimeUnitColumn(props) {\n var prefixCls = props.prefixCls,\n units = props.units,\n onSelect = props.onSelect,\n value = props.value,\n active = props.active,\n hideDisabledOptions = props.hideDisabledOptions;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var _React$useContext = React.useContext(PanelContext),\n open = _React$useContext.open;\n var ulRef = useRef(null);\n var liRefs = useRef(new Map());\n var scrollRef = useRef();\n // `useLayoutEffect` here to avoid blink by duration is 0\n useLayoutEffect(function () {\n var li = liRefs.current.get(value);\n if (li && open !== false) {\n scrollTo(ulRef.current, li.offsetTop, 120);\n }\n }, [value]);\n useLayoutEffect(function () {\n if (open) {\n var li = liRefs.current.get(value);\n if (li) {\n scrollRef.current = waitElementReady(li, function () {\n scrollTo(ulRef.current, li.offsetTop, 0);\n });\n }\n }\n return function () {\n var _scrollRef$current;\n (_scrollRef$current = scrollRef.current) === null || _scrollRef$current === void 0 ? void 0 : _scrollRef$current.call(scrollRef);\n };\n }, [open]);\n return /*#__PURE__*/React.createElement(\"ul\", {\n className: classNames(\"\".concat(prefixCls, \"-column\"), _defineProperty({}, \"\".concat(prefixCls, \"-column-active\"), active)),\n ref: ulRef,\n style: {\n position: 'relative'\n }\n }, units.map(function (unit) {\n var _classNames2;\n if (hideDisabledOptions && unit.disabled) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"li\", {\n key: unit.value,\n ref: function ref(element) {\n liRefs.current.set(unit.value, element);\n },\n className: classNames(cellPrefixCls, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(cellPrefixCls, \"-disabled\"), unit.disabled), _defineProperty(_classNames2, \"\".concat(cellPrefixCls, \"-selected\"), value === unit.value), _classNames2)),\n onClick: function onClick() {\n if (unit.disabled) {\n return;\n }\n onSelect(unit.value);\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(cellPrefixCls, \"-inner\")\n }, unit.label));\n }));\n}\nexport default TimeUnitColumn;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport useMemo from \"rc-util/es/hooks/useMemo\";\nimport * as React from 'react';\nimport useTimeSelection from '../../hooks/useTimeSelection';\nimport { leftPad } from '../../utils/miscUtil';\nimport TimeUnitColumn from './TimeUnitColumn';\nfunction shouldUnitsUpdate(prevUnits, nextUnits) {\n if (prevUnits.length !== nextUnits.length) return true;\n // if any unit's disabled status is different, the units should be re-evaluted\n for (var i = 0; i < prevUnits.length; i += 1) {\n if (prevUnits[i].disabled !== nextUnits[i].disabled) return true;\n }\n return false;\n}\nfunction generateUnits(start, end, step, disabledUnits) {\n var units = [];\n var integerStep = step >= 1 ? step | 0 : 1;\n for (var i = start; i <= end; i += integerStep) {\n units.push({\n label: leftPad(i, 2),\n value: i,\n disabled: (disabledUnits || []).includes(i)\n });\n }\n return units;\n}\nfunction TimeBody(props) {\n var generateConfig = props.generateConfig,\n prefixCls = props.prefixCls,\n operationRef = props.operationRef,\n activeColumnIndex = props.activeColumnIndex,\n value = props.value,\n showHour = props.showHour,\n showMinute = props.showMinute,\n showSecond = props.showSecond,\n use12Hours = props.use12Hours,\n _props$hourStep = props.hourStep,\n hourStep = _props$hourStep === void 0 ? 1 : _props$hourStep,\n _props$minuteStep = props.minuteStep,\n minuteStep = _props$minuteStep === void 0 ? 1 : _props$minuteStep,\n _props$secondStep = props.secondStep,\n secondStep = _props$secondStep === void 0 ? 1 : _props$secondStep,\n disabledHours = props.disabledHours,\n disabledMinutes = props.disabledMinutes,\n disabledSeconds = props.disabledSeconds,\n disabledTime = props.disabledTime,\n hideDisabledOptions = props.hideDisabledOptions,\n onSelect = props.onSelect;\n // Misc\n var columns = [];\n var contentPrefixCls = \"\".concat(prefixCls, \"-content\");\n var columnPrefixCls = \"\".concat(prefixCls, \"-time-panel\");\n var isPM;\n var originHour = value ? generateConfig.getHour(value) : -1;\n var hour = originHour;\n var minute = value ? generateConfig.getMinute(value) : -1;\n var second = value ? generateConfig.getSecond(value) : -1;\n // Disabled Time\n var now = generateConfig.getNow();\n var _React$useMemo = React.useMemo(function () {\n if (disabledTime) {\n var disabledConfig = disabledTime(now);\n return [disabledConfig.disabledHours, disabledConfig.disabledMinutes, disabledConfig.disabledSeconds];\n }\n return [disabledHours, disabledMinutes, disabledSeconds];\n }, [disabledHours, disabledMinutes, disabledSeconds, disabledTime, now]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 3),\n mergedDisabledHours = _React$useMemo2[0],\n mergedDisabledMinutes = _React$useMemo2[1],\n mergedDisabledSeconds = _React$useMemo2[2];\n // ========================= Unit =========================\n var rawHours = generateUnits(0, 23, hourStep, mergedDisabledHours && mergedDisabledHours());\n var memorizedRawHours = useMemo(function () {\n return rawHours;\n }, rawHours, shouldUnitsUpdate);\n // Should additional logic to handle 12 hours\n if (use12Hours) {\n isPM = hour >= 12; // -1 means should display AM\n hour %= 12;\n }\n var _React$useMemo3 = React.useMemo(function () {\n if (!use12Hours) {\n return [false, false];\n }\n var AMPMDisabled = [true, true];\n memorizedRawHours.forEach(function (_ref) {\n var disabled = _ref.disabled,\n hourValue = _ref.value;\n if (disabled) return;\n if (hourValue >= 12) {\n AMPMDisabled[1] = false;\n } else {\n AMPMDisabled[0] = false;\n }\n });\n return AMPMDisabled;\n }, [use12Hours, memorizedRawHours]),\n _React$useMemo4 = _slicedToArray(_React$useMemo3, 2),\n AMDisabled = _React$useMemo4[0],\n PMDisabled = _React$useMemo4[1];\n var hours = React.useMemo(function () {\n if (!use12Hours) return memorizedRawHours;\n return memorizedRawHours.filter(isPM ? function (hourMeta) {\n return hourMeta.value >= 12;\n } : function (hourMeta) {\n return hourMeta.value < 12;\n }).map(function (hourMeta) {\n var hourValue = hourMeta.value % 12;\n var hourLabel = hourValue === 0 ? '12' : leftPad(hourValue, 2);\n return _objectSpread(_objectSpread({}, hourMeta), {}, {\n label: hourLabel,\n value: hourValue\n });\n });\n }, [use12Hours, isPM, memorizedRawHours]);\n var minutes = generateUnits(0, 59, minuteStep, mergedDisabledMinutes && mergedDisabledMinutes(originHour));\n var seconds = generateUnits(0, 59, secondStep, mergedDisabledSeconds && mergedDisabledSeconds(originHour, minute));\n // Set Time\n var setTime = useTimeSelection({\n value: value,\n generateConfig: generateConfig,\n disabledMinutes: mergedDisabledMinutes,\n disabledSeconds: mergedDisabledSeconds,\n minutes: minutes,\n seconds: seconds,\n use12Hours: use12Hours\n });\n // ====================== Operations ======================\n operationRef.current = {\n onUpDown: function onUpDown(diff) {\n var column = columns[activeColumnIndex];\n if (column) {\n var valueIndex = column.units.findIndex(function (unit) {\n return unit.value === column.value;\n });\n var unitLen = column.units.length;\n for (var i = 1; i < unitLen; i += 1) {\n var nextUnit = column.units[(valueIndex + diff * i + unitLen) % unitLen];\n if (nextUnit.disabled !== true) {\n column.onSelect(nextUnit.value);\n break;\n }\n }\n }\n }\n };\n // ======================== Render ========================\n function addColumnNode(condition, node, columnValue, units, onColumnSelect) {\n if (condition !== false) {\n columns.push({\n node: /*#__PURE__*/React.cloneElement(node, {\n prefixCls: columnPrefixCls,\n value: columnValue,\n active: activeColumnIndex === columns.length,\n onSelect: onColumnSelect,\n units: units,\n hideDisabledOptions: hideDisabledOptions\n }),\n onSelect: onColumnSelect,\n value: columnValue,\n units: units\n });\n }\n }\n // Hour\n addColumnNode(showHour, /*#__PURE__*/React.createElement(TimeUnitColumn, {\n key: \"hour\"\n }), hour, hours, function (num) {\n onSelect(setTime(isPM, num, minute, second), 'mouse');\n });\n // Minute\n addColumnNode(showMinute, /*#__PURE__*/React.createElement(TimeUnitColumn, {\n key: \"minute\"\n }), minute, minutes, function (num) {\n onSelect(setTime(isPM, hour, num, second), 'mouse');\n });\n // Second\n addColumnNode(showSecond, /*#__PURE__*/React.createElement(TimeUnitColumn, {\n key: \"second\"\n }), second, seconds, function (num) {\n onSelect(setTime(isPM, hour, minute, num), 'mouse');\n });\n // 12 Hours\n var PMIndex = -1;\n if (typeof isPM === 'boolean') {\n PMIndex = isPM ? 1 : 0;\n }\n addColumnNode(use12Hours === true, /*#__PURE__*/React.createElement(TimeUnitColumn, {\n key: \"12hours\"\n }), PMIndex, [{\n label: 'AM',\n value: 0,\n disabled: AMDisabled\n }, {\n label: 'PM',\n value: 1,\n disabled: PMDisabled\n }], function (num) {\n onSelect(setTime(!!num, hour, minute, second), 'mouse');\n });\n return /*#__PURE__*/React.createElement(\"div\", {\n className: contentPrefixCls\n }, columns.map(function (_ref2) {\n var node = _ref2.node;\n return node;\n }));\n}\nexport default TimeBody;","import { setTime as utilSetTime } from '../utils/timeUtil';\nexport default function useTimeSelection(_ref) {\n var value = _ref.value,\n generateConfig = _ref.generateConfig,\n disabledMinutes = _ref.disabledMinutes,\n disabledSeconds = _ref.disabledSeconds,\n minutes = _ref.minutes,\n seconds = _ref.seconds,\n use12Hours = _ref.use12Hours;\n var setTime = function setTime(isNewPM, newHour, newMinute, newSecond) {\n var newDate = value || generateConfig.getNow();\n var mergedHour = Math.max(0, newHour);\n var mergedMinute = Math.max(0, newMinute);\n var mergedSecond = Math.max(0, newSecond);\n var newDisabledMinutes = disabledMinutes && disabledMinutes(mergedHour);\n if (newDisabledMinutes === null || newDisabledMinutes === void 0 ? void 0 : newDisabledMinutes.includes(mergedMinute)) {\n // find the first available minute in minutes\n var availableMinute = minutes.find(function (i) {\n return !newDisabledMinutes.includes(i.value);\n });\n if (availableMinute) {\n mergedMinute = availableMinute.value;\n } else {\n return null;\n }\n }\n var newDisabledSeconds = disabledSeconds && disabledSeconds(mergedHour, mergedMinute);\n if (newDisabledSeconds === null || newDisabledSeconds === void 0 ? void 0 : newDisabledSeconds.includes(mergedSecond)) {\n // find the first available second in seconds\n var availableSecond = seconds.find(function (i) {\n return !newDisabledSeconds.includes(i.value);\n });\n if (availableSecond) {\n mergedSecond = availableSecond.value;\n } else {\n return null;\n }\n }\n newDate = utilSetTime(generateConfig, newDate, !use12Hours || !isNewPM ? mergedHour : mergedHour + 12, mergedMinute, mergedSecond);\n return newDate;\n };\n return setTime;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport TimeHeader from './TimeHeader';\nimport TimeBody from './TimeBody';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nvar countBoolean = function countBoolean(boolList) {\n return boolList.filter(function (bool) {\n return bool !== false;\n }).length;\n};\nfunction TimePanel(props) {\n var generateConfig = props.generateConfig,\n _props$format = props.format,\n format = _props$format === void 0 ? 'HH:mm:ss' : _props$format,\n prefixCls = props.prefixCls,\n active = props.active,\n operationRef = props.operationRef,\n showHour = props.showHour,\n showMinute = props.showMinute,\n showSecond = props.showSecond,\n _props$use12Hours = props.use12Hours,\n use12Hours = _props$use12Hours === void 0 ? false : _props$use12Hours,\n onSelect = props.onSelect,\n value = props.value;\n var panelPrefixCls = \"\".concat(prefixCls, \"-time-panel\");\n var bodyOperationRef = React.useRef();\n // ======================= Keyboard =======================\n var _React$useState = React.useState(-1),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activeColumnIndex = _React$useState2[0],\n setActiveColumnIndex = _React$useState2[1];\n var columnsCount = countBoolean([showHour, showMinute, showSecond, use12Hours]);\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, {\n onLeftRight: function onLeftRight(diff) {\n setActiveColumnIndex((activeColumnIndex + diff + columnsCount) % columnsCount);\n },\n onUpDown: function onUpDown(diff) {\n if (activeColumnIndex === -1) {\n setActiveColumnIndex(0);\n } else if (bodyOperationRef.current) {\n bodyOperationRef.current.onUpDown(diff);\n }\n },\n onEnter: function onEnter() {\n onSelect(value || generateConfig.getNow(), 'key');\n setActiveColumnIndex(-1);\n }\n });\n },\n onBlur: function onBlur() {\n setActiveColumnIndex(-1);\n }\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(panelPrefixCls, _defineProperty({}, \"\".concat(panelPrefixCls, \"-active\"), active))\n }, /*#__PURE__*/React.createElement(TimeHeader, _extends({}, props, {\n format: format,\n prefixCls: prefixCls\n })), /*#__PURE__*/React.createElement(TimeBody, _extends({}, props, {\n prefixCls: prefixCls,\n activeColumnIndex: activeColumnIndex,\n operationRef: bodyOperationRef\n })));\n}\nexport default TimePanel;","import * as React from 'react';\nvar RangeContext = /*#__PURE__*/React.createContext({});\nexport default RangeContext;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport { isInRange } from '../utils/dateUtil';\nimport { getValue } from '../utils/miscUtil';\nexport default function useCellClassName(_ref) {\n var cellPrefixCls = _ref.cellPrefixCls,\n generateConfig = _ref.generateConfig,\n rangedValue = _ref.rangedValue,\n hoverRangedValue = _ref.hoverRangedValue,\n isInView = _ref.isInView,\n isSameCell = _ref.isSameCell,\n offsetCell = _ref.offsetCell,\n today = _ref.today,\n value = _ref.value;\n function getClassName(currentDate) {\n var _ref2;\n var prevDate = offsetCell(currentDate, -1);\n var nextDate = offsetCell(currentDate, 1);\n var rangeStart = getValue(rangedValue, 0);\n var rangeEnd = getValue(rangedValue, 1);\n var hoverStart = getValue(hoverRangedValue, 0);\n var hoverEnd = getValue(hoverRangedValue, 1);\n var isRangeHovered = isInRange(generateConfig, hoverStart, hoverEnd, currentDate);\n function isRangeStart(date) {\n return isSameCell(rangeStart, date);\n }\n function isRangeEnd(date) {\n return isSameCell(rangeEnd, date);\n }\n var isHoverStart = isSameCell(hoverStart, currentDate);\n var isHoverEnd = isSameCell(hoverEnd, currentDate);\n var isHoverEdgeStart = (isRangeHovered || isHoverEnd) && (!isInView(prevDate) || isRangeEnd(prevDate));\n var isHoverEdgeEnd = (isRangeHovered || isHoverStart) && (!isInView(nextDate) || isRangeStart(nextDate));\n return _ref2 = {}, _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-in-view\"), isInView(currentDate)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-in-range\"), isInRange(generateConfig, rangeStart, rangeEnd, currentDate)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-start\"), isRangeStart(currentDate)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-end\"), isRangeEnd(currentDate)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-start-single\"), isRangeStart(currentDate) && !rangeEnd), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-end-single\"), isRangeEnd(currentDate) && !rangeStart), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-start-near-hover\"), isRangeStart(currentDate) && (isSameCell(prevDate, hoverStart) || isInRange(generateConfig, hoverStart, hoverEnd, prevDate))), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-end-near-hover\"), isRangeEnd(currentDate) && (isSameCell(nextDate, hoverEnd) || isInRange(generateConfig, hoverStart, hoverEnd, nextDate))), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover\"), isRangeHovered), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-start\"), isHoverStart), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-end\"), isHoverEnd), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-edge-start\"), isHoverEdgeStart), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-edge-end\"), isHoverEdgeEnd), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-edge-start-near-range\"), isHoverEdgeStart && isSameCell(prevDate, rangeEnd)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-range-hover-edge-end-near-range\"), isHoverEdgeEnd && isSameCell(nextDate, rangeStart)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-today\"), isSameCell(today, currentDate)), _defineProperty(_ref2, \"\".concat(cellPrefixCls, \"-selected\"), isSameCell(value, currentDate)), _ref2;\n }\n return getClassName;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { WEEK_DAY_COUNT, getWeekStartDate, isSameDate, isSameMonth, formatValue } from '../../utils/dateUtil';\nimport RangeContext from '../../RangeContext';\nimport useCellClassName from '../../hooks/useCellClassName';\nimport PanelBody from '../PanelBody';\nfunction DateBody(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n prefixColumn = props.prefixColumn,\n locale = props.locale,\n rowCount = props.rowCount,\n viewDate = props.viewDate,\n value = props.value,\n dateRender = props.dateRender;\n var _React$useContext = React.useContext(RangeContext),\n rangedValue = _React$useContext.rangedValue,\n hoverRangedValue = _React$useContext.hoverRangedValue;\n var baseDate = getWeekStartDate(locale.locale, generateConfig, viewDate);\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var weekFirstDay = generateConfig.locale.getWeekFirstDay(locale.locale);\n var today = generateConfig.getNow();\n // ============================== Header ==============================\n var headerCells = [];\n var weekDaysLocale = locale.shortWeekDays || (generateConfig.locale.getShortWeekDays ? generateConfig.locale.getShortWeekDays(locale.locale) : []);\n if (prefixColumn) {\n headerCells.push( /*#__PURE__*/React.createElement(\"th\", {\n key: \"empty\",\n \"aria-label\": \"empty cell\"\n }));\n }\n for (var i = 0; i < WEEK_DAY_COUNT; i += 1) {\n headerCells.push( /*#__PURE__*/React.createElement(\"th\", {\n key: i\n }, weekDaysLocale[(i + weekFirstDay) % WEEK_DAY_COUNT]));\n }\n // =============================== Body ===============================\n var getCellClassName = useCellClassName({\n cellPrefixCls: cellPrefixCls,\n today: today,\n value: value,\n generateConfig: generateConfig,\n rangedValue: prefixColumn ? null : rangedValue,\n hoverRangedValue: prefixColumn ? null : hoverRangedValue,\n isSameCell: function isSameCell(current, target) {\n return isSameDate(generateConfig, current, target);\n },\n isInView: function isInView(date) {\n return isSameMonth(generateConfig, date, viewDate);\n },\n offsetCell: function offsetCell(date, offset) {\n return generateConfig.addDate(date, offset);\n }\n });\n var getCellNode = dateRender ? function (date) {\n return dateRender(date, today);\n } : undefined;\n return /*#__PURE__*/React.createElement(PanelBody, _extends({}, props, {\n rowNum: rowCount,\n colNum: WEEK_DAY_COUNT,\n baseDate: baseDate,\n getCellNode: getCellNode,\n getCellText: generateConfig.getDate,\n getCellClassName: getCellClassName,\n getCellDate: generateConfig.addDate,\n titleCell: function titleCell(date) {\n return formatValue(date, {\n locale: locale,\n format: 'YYYY-MM-DD',\n generateConfig: generateConfig\n });\n },\n headerCells: headerCells\n }));\n}\nexport default DateBody;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Header from '../Header';\nimport PanelContext from '../../PanelContext';\nimport { formatValue } from '../../utils/dateUtil';\nfunction DateHeader(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n locale = props.locale,\n viewDate = props.viewDate,\n onNextMonth = props.onNextMonth,\n onPrevMonth = props.onPrevMonth,\n onNextYear = props.onNextYear,\n onPrevYear = props.onPrevYear,\n onYearClick = props.onYearClick,\n onMonthClick = props.onMonthClick;\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n var monthsLocale = locale.shortMonths || (generateConfig.locale.getShortMonths ? generateConfig.locale.getShortMonths(locale.locale) : []);\n var month = generateConfig.getMonth(viewDate);\n // =================== Month & Year ===================\n var yearNode = /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n key: \"year\",\n onClick: onYearClick,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-year-btn\")\n }, formatValue(viewDate, {\n locale: locale,\n format: locale.yearFormat,\n generateConfig: generateConfig\n }));\n var monthNode = /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n key: \"month\",\n onClick: onMonthClick,\n tabIndex: -1,\n className: \"\".concat(prefixCls, \"-month-btn\")\n }, locale.monthFormat ? formatValue(viewDate, {\n locale: locale,\n format: locale.monthFormat,\n generateConfig: generateConfig\n }) : monthsLocale[month]);\n var monthYearNodes = locale.monthBeforeYear ? [monthNode, yearNode] : [yearNode, monthNode];\n return /*#__PURE__*/React.createElement(Header, _extends({}, props, {\n prefixCls: headerPrefixCls,\n onSuperPrev: onPrevYear,\n onPrev: onPrevMonth,\n onNext: onNextMonth,\n onSuperNext: onNextYear\n }), monthYearNodes);\n}\nexport default DateHeader;","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 * as React from 'react';\nimport classNames from 'classnames';\nimport DateBody from './DateBody';\nimport DateHeader from './DateHeader';\nimport { WEEK_DAY_COUNT } from '../../utils/dateUtil';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nvar DATE_ROW_COUNT = 6;\nfunction DatePanel(props) {\n var prefixCls = props.prefixCls,\n _props$panelName = props.panelName,\n panelName = _props$panelName === void 0 ? 'date' : _props$panelName,\n keyboardConfig = props.keyboardConfig,\n active = props.active,\n operationRef = props.operationRef,\n generateConfig = props.generateConfig,\n value = props.value,\n viewDate = props.viewDate,\n onViewDateChange = props.onViewDateChange,\n onPanelChange = props.onPanelChange,\n _onSelect = props.onSelect;\n var panelPrefixCls = \"\".concat(prefixCls, \"-\").concat(panelName, \"-panel\");\n // ======================= Keyboard =======================\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, _objectSpread({\n onLeftRight: function onLeftRight(diff) {\n _onSelect(generateConfig.addDate(value || viewDate, diff), 'key');\n },\n onCtrlLeftRight: function onCtrlLeftRight(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');\n },\n onUpDown: function onUpDown(diff) {\n _onSelect(generateConfig.addDate(value || viewDate, diff * WEEK_DAY_COUNT), 'key');\n },\n onPageUpDown: function onPageUpDown(diff) {\n _onSelect(generateConfig.addMonth(value || viewDate, diff), 'key');\n }\n }, keyboardConfig));\n }\n };\n // ==================== View Operation ====================\n var onYearChange = function onYearChange(diff) {\n var newDate = generateConfig.addYear(viewDate, diff);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n var onMonthChange = function onMonthChange(diff) {\n var newDate = generateConfig.addMonth(viewDate, diff);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(panelPrefixCls, _defineProperty({}, \"\".concat(panelPrefixCls, \"-active\"), active))\n }, /*#__PURE__*/React.createElement(DateHeader, _extends({}, props, {\n prefixCls: prefixCls,\n value: value,\n viewDate: viewDate\n // View Operation\n ,\n\n onPrevYear: function onPrevYear() {\n onYearChange(-1);\n },\n onNextYear: function onNextYear() {\n onYearChange(1);\n },\n onPrevMonth: function onPrevMonth() {\n onMonthChange(-1);\n },\n onNextMonth: function onNextMonth() {\n onMonthChange(1);\n },\n onMonthClick: function onMonthClick() {\n onPanelChange('month', viewDate);\n },\n onYearClick: function onYearClick() {\n onPanelChange('year', viewDate);\n }\n })), /*#__PURE__*/React.createElement(DateBody, _extends({}, props, {\n onSelect: function onSelect(date) {\n return _onSelect(date, 'mouse');\n },\n prefixCls: prefixCls,\n value: value,\n viewDate: viewDate,\n rowCount: DATE_ROW_COUNT\n })));\n}\nexport default DatePanel;","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 * as React from 'react';\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport DatePanel from '../DatePanel';\nimport TimePanel from '../TimePanel';\nimport { tuple } from '../../utils/miscUtil';\nimport { setDateTime as setTime } from '../../utils/timeUtil';\nvar ACTIVE_PANEL = tuple('date', 'time');\nfunction DatetimePanel(props) {\n var prefixCls = props.prefixCls,\n operationRef = props.operationRef,\n generateConfig = props.generateConfig,\n value = props.value,\n defaultValue = props.defaultValue,\n disabledTime = props.disabledTime,\n showTime = props.showTime,\n onSelect = props.onSelect;\n var panelPrefixCls = \"\".concat(prefixCls, \"-datetime-panel\");\n var _React$useState = React.useState(null),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n activePanel = _React$useState2[0],\n setActivePanel = _React$useState2[1];\n var dateOperationRef = React.useRef({});\n var timeOperationRef = React.useRef({});\n var timeProps = _typeof(showTime) === 'object' ? _objectSpread({}, showTime) : {};\n // ======================= Keyboard =======================\n function getNextActive(offset) {\n var activeIndex = ACTIVE_PANEL.indexOf(activePanel) + offset;\n var nextActivePanel = ACTIVE_PANEL[activeIndex] || null;\n return nextActivePanel;\n }\n var onBlur = function onBlur(e) {\n if (timeOperationRef.current.onBlur) {\n timeOperationRef.current.onBlur(e);\n }\n setActivePanel(null);\n };\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n // Switch active panel\n if (event.which === KeyCode.TAB) {\n var nextActivePanel = getNextActive(event.shiftKey ? -1 : 1);\n setActivePanel(nextActivePanel);\n if (nextActivePanel) {\n event.preventDefault();\n }\n return true;\n }\n // Operate on current active panel\n if (activePanel) {\n var ref = activePanel === 'date' ? dateOperationRef : timeOperationRef;\n if (ref.current && ref.current.onKeyDown) {\n ref.current.onKeyDown(event);\n }\n return true;\n }\n // Switch first active panel if operate without panel\n if ([KeyCode.LEFT, KeyCode.RIGHT, KeyCode.UP, KeyCode.DOWN].includes(event.which)) {\n setActivePanel('date');\n return true;\n }\n return false;\n },\n onBlur: onBlur,\n onClose: onBlur\n };\n // ======================== Events ========================\n var onInternalSelect = function onInternalSelect(date, source) {\n var selectedDate = date;\n if (source === 'date' && !value && timeProps.defaultValue) {\n // Date with time defaultValue\n selectedDate = generateConfig.setHour(selectedDate, generateConfig.getHour(timeProps.defaultValue));\n selectedDate = generateConfig.setMinute(selectedDate, generateConfig.getMinute(timeProps.defaultValue));\n selectedDate = generateConfig.setSecond(selectedDate, generateConfig.getSecond(timeProps.defaultValue));\n } else if (source === 'time' && !value && defaultValue) {\n selectedDate = generateConfig.setYear(selectedDate, generateConfig.getYear(defaultValue));\n selectedDate = generateConfig.setMonth(selectedDate, generateConfig.getMonth(defaultValue));\n selectedDate = generateConfig.setDate(selectedDate, generateConfig.getDate(defaultValue));\n }\n if (onSelect) {\n onSelect(selectedDate, 'mouse');\n }\n };\n // ======================== Render ========================\n var disabledTimes = disabledTime ? disabledTime(value || null) : {};\n return /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(panelPrefixCls, _defineProperty({}, \"\".concat(panelPrefixCls, \"-active\"), activePanel))\n }, /*#__PURE__*/React.createElement(DatePanel, _extends({}, props, {\n operationRef: dateOperationRef,\n active: activePanel === 'date',\n onSelect: function onSelect(date) {\n onInternalSelect(setTime(generateConfig, date, !value && _typeof(showTime) === 'object' ? showTime.defaultValue : null), 'date');\n }\n })), /*#__PURE__*/React.createElement(TimePanel, _extends({}, props, {\n format: undefined\n }, timeProps, disabledTimes, {\n disabledTime: null,\n defaultValue: undefined,\n operationRef: timeOperationRef,\n active: activePanel === 'time',\n onSelect: function onSelect(date) {\n onInternalSelect(date, 'time');\n }\n })));\n}\nexport default DatetimePanel;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport DatePanel from '../DatePanel';\nimport { isSameWeek } from '../../utils/dateUtil';\nfunction WeekPanel(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n locale = props.locale,\n value = props.value;\n // Render additional column\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var prefixColumn = function prefixColumn(date) {\n return /*#__PURE__*/React.createElement(\"td\", {\n key: \"week\",\n className: classNames(cellPrefixCls, \"\".concat(cellPrefixCls, \"-week\"))\n }, generateConfig.locale.getWeek(locale.locale, date));\n };\n // Add row className\n var rowPrefixCls = \"\".concat(prefixCls, \"-week-panel-row\");\n var rowClassName = function rowClassName(date) {\n return classNames(rowPrefixCls, _defineProperty({}, \"\".concat(rowPrefixCls, \"-selected\"), isSameWeek(generateConfig, locale.locale, value, date)));\n };\n return /*#__PURE__*/React.createElement(DatePanel, _extends({}, props, {\n panelName: \"week\",\n prefixColumn: prefixColumn,\n rowClassName: rowClassName,\n keyboardConfig: {\n onLeftRight: null\n }\n }));\n}\nexport default WeekPanel;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Header from '../Header';\nimport PanelContext from '../../PanelContext';\nimport { formatValue } from '../../utils/dateUtil';\nfunction MonthHeader(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n locale = props.locale,\n viewDate = props.viewDate,\n onNextYear = props.onNextYear,\n onPrevYear = props.onPrevYear,\n onYearClick = props.onYearClick;\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n return /*#__PURE__*/React.createElement(Header, _extends({}, props, {\n prefixCls: headerPrefixCls,\n onSuperPrev: onPrevYear,\n onSuperNext: onNextYear\n }), /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onYearClick,\n className: \"\".concat(prefixCls, \"-year-btn\")\n }, formatValue(viewDate, {\n locale: locale,\n format: locale.yearFormat,\n generateConfig: generateConfig\n })));\n}\nexport default MonthHeader;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { formatValue, isSameMonth } from '../../utils/dateUtil';\nimport RangeContext from '../../RangeContext';\nimport useCellClassName from '../../hooks/useCellClassName';\nimport PanelBody from '../PanelBody';\nexport var MONTH_COL_COUNT = 3;\nvar MONTH_ROW_COUNT = 4;\nfunction MonthBody(props) {\n var prefixCls = props.prefixCls,\n locale = props.locale,\n value = props.value,\n viewDate = props.viewDate,\n generateConfig = props.generateConfig,\n monthCellRender = props.monthCellRender;\n var _React$useContext = React.useContext(RangeContext),\n rangedValue = _React$useContext.rangedValue,\n hoverRangedValue = _React$useContext.hoverRangedValue;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var getCellClassName = useCellClassName({\n cellPrefixCls: cellPrefixCls,\n value: value,\n generateConfig: generateConfig,\n rangedValue: rangedValue,\n hoverRangedValue: hoverRangedValue,\n isSameCell: function isSameCell(current, target) {\n return isSameMonth(generateConfig, current, target);\n },\n isInView: function isInView() {\n return true;\n },\n offsetCell: function offsetCell(date, offset) {\n return generateConfig.addMonth(date, offset);\n }\n });\n var monthsLocale = locale.shortMonths || (generateConfig.locale.getShortMonths ? generateConfig.locale.getShortMonths(locale.locale) : []);\n var baseMonth = generateConfig.setMonth(viewDate, 0);\n var getCellNode = monthCellRender ? function (date) {\n return monthCellRender(date, locale);\n } : undefined;\n return /*#__PURE__*/React.createElement(PanelBody, _extends({}, props, {\n rowNum: MONTH_ROW_COUNT,\n colNum: MONTH_COL_COUNT,\n baseDate: baseMonth,\n getCellNode: getCellNode,\n getCellText: function getCellText(date) {\n return locale.monthFormat ? formatValue(date, {\n locale: locale,\n format: locale.monthFormat,\n generateConfig: generateConfig\n }) : monthsLocale[generateConfig.getMonth(date)];\n },\n getCellClassName: getCellClassName,\n getCellDate: generateConfig.addMonth,\n titleCell: function titleCell(date) {\n return formatValue(date, {\n locale: locale,\n format: 'YYYY-MM',\n generateConfig: generateConfig\n });\n }\n }));\n}\nexport default MonthBody;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport MonthHeader from './MonthHeader';\nimport MonthBody, { MONTH_COL_COUNT } from './MonthBody';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nfunction MonthPanel(props) {\n var prefixCls = props.prefixCls,\n operationRef = props.operationRef,\n onViewDateChange = props.onViewDateChange,\n generateConfig = props.generateConfig,\n value = props.value,\n viewDate = props.viewDate,\n onPanelChange = props.onPanelChange,\n _onSelect = props.onSelect;\n var panelPrefixCls = \"\".concat(prefixCls, \"-month-panel\");\n // ======================= Keyboard =======================\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, {\n onLeftRight: function onLeftRight(diff) {\n _onSelect(generateConfig.addMonth(value || viewDate, diff), 'key');\n },\n onCtrlLeftRight: function onCtrlLeftRight(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');\n },\n onUpDown: function onUpDown(diff) {\n _onSelect(generateConfig.addMonth(value || viewDate, diff * MONTH_COL_COUNT), 'key');\n },\n onEnter: function onEnter() {\n onPanelChange('date', value || viewDate);\n }\n });\n }\n };\n // ==================== View Operation ====================\n var onYearChange = function onYearChange(diff) {\n var newDate = generateConfig.addYear(viewDate, diff);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: panelPrefixCls\n }, /*#__PURE__*/React.createElement(MonthHeader, _extends({}, props, {\n prefixCls: prefixCls,\n onPrevYear: function onPrevYear() {\n onYearChange(-1);\n },\n onNextYear: function onNextYear() {\n onYearChange(1);\n },\n onYearClick: function onYearClick() {\n onPanelChange('year', viewDate);\n }\n })), /*#__PURE__*/React.createElement(MonthBody, _extends({}, props, {\n prefixCls: prefixCls,\n onSelect: function onSelect(date) {\n _onSelect(date, 'mouse');\n onPanelChange('date', date);\n }\n })));\n}\nexport default MonthPanel;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Header from '../Header';\nimport PanelContext from '../../PanelContext';\nimport { formatValue } from '../../utils/dateUtil';\nfunction QuarterHeader(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n locale = props.locale,\n viewDate = props.viewDate,\n onNextYear = props.onNextYear,\n onPrevYear = props.onPrevYear,\n onYearClick = props.onYearClick;\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n return /*#__PURE__*/React.createElement(Header, _extends({}, props, {\n prefixCls: headerPrefixCls,\n onSuperPrev: onPrevYear,\n onSuperNext: onNextYear\n }), /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onYearClick,\n className: \"\".concat(prefixCls, \"-year-btn\")\n }, formatValue(viewDate, {\n locale: locale,\n format: locale.yearFormat,\n generateConfig: generateConfig\n })));\n}\nexport default QuarterHeader;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { formatValue, isSameQuarter } from '../../utils/dateUtil';\nimport RangeContext from '../../RangeContext';\nimport useCellClassName from '../../hooks/useCellClassName';\nimport PanelBody from '../PanelBody';\nexport var QUARTER_COL_COUNT = 4;\nvar QUARTER_ROW_COUNT = 1;\nfunction QuarterBody(props) {\n var prefixCls = props.prefixCls,\n locale = props.locale,\n value = props.value,\n viewDate = props.viewDate,\n generateConfig = props.generateConfig;\n var _React$useContext = React.useContext(RangeContext),\n rangedValue = _React$useContext.rangedValue,\n hoverRangedValue = _React$useContext.hoverRangedValue;\n var cellPrefixCls = \"\".concat(prefixCls, \"-cell\");\n var getCellClassName = useCellClassName({\n cellPrefixCls: cellPrefixCls,\n value: value,\n generateConfig: generateConfig,\n rangedValue: rangedValue,\n hoverRangedValue: hoverRangedValue,\n isSameCell: function isSameCell(current, target) {\n return isSameQuarter(generateConfig, current, target);\n },\n isInView: function isInView() {\n return true;\n },\n offsetCell: function offsetCell(date, offset) {\n return generateConfig.addMonth(date, offset * 3);\n }\n });\n var baseQuarter = generateConfig.setDate(generateConfig.setMonth(viewDate, 0), 1);\n return /*#__PURE__*/React.createElement(PanelBody, _extends({}, props, {\n rowNum: QUARTER_ROW_COUNT,\n colNum: QUARTER_COL_COUNT,\n baseDate: baseQuarter,\n getCellText: function getCellText(date) {\n return formatValue(date, {\n locale: locale,\n format: locale.quarterFormat || '[Q]Q',\n generateConfig: generateConfig\n });\n },\n getCellClassName: getCellClassName,\n getCellDate: function getCellDate(date, offset) {\n return generateConfig.addMonth(date, offset * 3);\n },\n titleCell: function titleCell(date) {\n return formatValue(date, {\n locale: locale,\n format: 'YYYY-[Q]Q',\n generateConfig: generateConfig\n });\n }\n }));\n}\nexport default QuarterBody;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport QuarterHeader from './QuarterHeader';\nimport QuarterBody from './QuarterBody';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nfunction QuarterPanel(props) {\n var prefixCls = props.prefixCls,\n operationRef = props.operationRef,\n onViewDateChange = props.onViewDateChange,\n generateConfig = props.generateConfig,\n value = props.value,\n viewDate = props.viewDate,\n onPanelChange = props.onPanelChange,\n _onSelect = props.onSelect;\n var panelPrefixCls = \"\".concat(prefixCls, \"-quarter-panel\");\n // ======================= Keyboard =======================\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, {\n onLeftRight: function onLeftRight(diff) {\n _onSelect(generateConfig.addMonth(value || viewDate, diff * 3), 'key');\n },\n onCtrlLeftRight: function onCtrlLeftRight(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');\n },\n onUpDown: function onUpDown(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');\n }\n });\n }\n };\n // ==================== View Operation ====================\n var onYearChange = function onYearChange(diff) {\n var newDate = generateConfig.addYear(viewDate, diff);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: panelPrefixCls\n }, /*#__PURE__*/React.createElement(QuarterHeader, _extends({}, props, {\n prefixCls: prefixCls,\n onPrevYear: function onPrevYear() {\n onYearChange(-1);\n },\n onNextYear: function onNextYear() {\n onYearChange(1);\n },\n onYearClick: function onYearClick() {\n onPanelChange('year', viewDate);\n }\n })), /*#__PURE__*/React.createElement(QuarterBody, _extends({}, props, {\n prefixCls: prefixCls,\n onSelect: function onSelect(date) {\n _onSelect(date, 'mouse');\n }\n })));\n}\nexport default QuarterPanel;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Header from '../Header';\nimport { YEAR_DECADE_COUNT } from '.';\nimport PanelContext from '../../PanelContext';\nfunction YearHeader(props) {\n var prefixCls = props.prefixCls,\n generateConfig = props.generateConfig,\n viewDate = props.viewDate,\n onPrevDecade = props.onPrevDecade,\n onNextDecade = props.onNextDecade,\n onDecadeClick = props.onDecadeClick;\n var _React$useContext = React.useContext(PanelContext),\n hideHeader = _React$useContext.hideHeader;\n if (hideHeader) {\n return null;\n }\n var headerPrefixCls = \"\".concat(prefixCls, \"-header\");\n var yearNumber = generateConfig.getYear(viewDate);\n var startYear = Math.floor(yearNumber / YEAR_DECADE_COUNT) * YEAR_DECADE_COUNT;\n var endYear = startYear + YEAR_DECADE_COUNT - 1;\n return /*#__PURE__*/React.createElement(Header, _extends({}, props, {\n prefixCls: headerPrefixCls,\n onSuperPrev: onPrevDecade,\n onSuperNext: onNextDecade\n }), /*#__PURE__*/React.createElement(\"button\", {\n type: \"button\",\n onClick: onDecadeClick,\n className: \"\".concat(prefixCls, \"-decade-btn\")\n }, startYear, \"-\", endYear));\n}\nexport default YearHeader;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { YEAR_DECADE_COUNT } from '.';\nimport useCellClassName from '../../hooks/useCellClassName';\nimport { formatValue, isSameYear } from '../../utils/dateUtil';\nimport RangeContext from '../../RangeContext';\nimport PanelBody from '../PanelBody';\nexport var YEAR_COL_COUNT = 3;\nvar YEAR_ROW_COUNT = 4;\nfunction YearBody(props) {\n var prefixCls = props.prefixCls,\n value = props.value,\n viewDate = props.viewDate,\n locale = props.locale,\n generateConfig = props.generateConfig;\n var _React$useContext = React.useContext(RangeContext),\n rangedValue = _React$useContext.rangedValue,\n hoverRangedValue = _React$useContext.hoverRangedValue;\n var yearPrefixCls = \"\".concat(prefixCls, \"-cell\");\n // =============================== Year ===============================\n var yearNumber = generateConfig.getYear(viewDate);\n var startYear = Math.floor(yearNumber / YEAR_DECADE_COUNT) * YEAR_DECADE_COUNT;\n var endYear = startYear + YEAR_DECADE_COUNT - 1;\n var baseYear = generateConfig.setYear(viewDate, startYear - Math.ceil((YEAR_COL_COUNT * YEAR_ROW_COUNT - YEAR_DECADE_COUNT) / 2));\n var isInView = function isInView(date) {\n var currentYearNumber = generateConfig.getYear(date);\n return startYear <= currentYearNumber && currentYearNumber <= endYear;\n };\n var getCellClassName = useCellClassName({\n cellPrefixCls: yearPrefixCls,\n value: value,\n generateConfig: generateConfig,\n rangedValue: rangedValue,\n hoverRangedValue: hoverRangedValue,\n isSameCell: function isSameCell(current, target) {\n return isSameYear(generateConfig, current, target);\n },\n isInView: isInView,\n offsetCell: function offsetCell(date, offset) {\n return generateConfig.addYear(date, offset);\n }\n });\n return /*#__PURE__*/React.createElement(PanelBody, _extends({}, props, {\n rowNum: YEAR_ROW_COUNT,\n colNum: YEAR_COL_COUNT,\n baseDate: baseYear,\n getCellText: generateConfig.getYear,\n getCellClassName: getCellClassName,\n getCellDate: generateConfig.addYear,\n titleCell: function titleCell(date) {\n return formatValue(date, {\n locale: locale,\n format: 'YYYY',\n generateConfig: generateConfig\n });\n }\n }));\n}\nexport default YearBody;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport YearHeader from './YearHeader';\nimport YearBody, { YEAR_COL_COUNT } from './YearBody';\nimport { createKeyDownHandler } from '../../utils/uiUtil';\nexport var YEAR_DECADE_COUNT = 10;\nfunction YearPanel(props) {\n var prefixCls = props.prefixCls,\n operationRef = props.operationRef,\n onViewDateChange = props.onViewDateChange,\n generateConfig = props.generateConfig,\n value = props.value,\n viewDate = props.viewDate,\n sourceMode = props.sourceMode,\n _onSelect = props.onSelect,\n onPanelChange = props.onPanelChange;\n var panelPrefixCls = \"\".concat(prefixCls, \"-year-panel\");\n // ======================= Keyboard =======================\n operationRef.current = {\n onKeyDown: function onKeyDown(event) {\n return createKeyDownHandler(event, {\n onLeftRight: function onLeftRight(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff), 'key');\n },\n onCtrlLeftRight: function onCtrlLeftRight(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff * YEAR_DECADE_COUNT), 'key');\n },\n onUpDown: function onUpDown(diff) {\n _onSelect(generateConfig.addYear(value || viewDate, diff * YEAR_COL_COUNT), 'key');\n },\n onEnter: function onEnter() {\n onPanelChange(sourceMode === 'date' ? 'date' : 'month', value || viewDate);\n }\n });\n }\n };\n // ==================== View Operation ====================\n var onDecadeChange = function onDecadeChange(diff) {\n var newDate = generateConfig.addYear(viewDate, diff * 10);\n onViewDateChange(newDate);\n onPanelChange(null, newDate);\n };\n return /*#__PURE__*/React.createElement(\"div\", {\n className: panelPrefixCls\n }, /*#__PURE__*/React.createElement(YearHeader, _extends({}, props, {\n prefixCls: prefixCls,\n onPrevDecade: function onPrevDecade() {\n onDecadeChange(-1);\n },\n onNextDecade: function onNextDecade() {\n onDecadeChange(1);\n },\n onDecadeClick: function onDecadeClick() {\n onPanelChange('decade', viewDate);\n }\n })), /*#__PURE__*/React.createElement(YearBody, _extends({}, props, {\n prefixCls: prefixCls,\n onSelect: function onSelect(date) {\n onPanelChange(sourceMode === 'date' ? 'date' : 'month', date);\n _onSelect(date, 'mouse');\n }\n })));\n}\nexport default YearPanel;","import * as React from 'react';\nexport default function getExtraFooter(prefixCls, mode, renderExtraFooter) {\n if (!renderExtraFooter) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-footer-extra\")\n }, renderExtraFooter(mode));\n}","import * as React from 'react';\nexport default function getRanges(_ref) {\n var prefixCls = _ref.prefixCls,\n _ref$rangeList = _ref.rangeList,\n rangeList = _ref$rangeList === void 0 ? [] : _ref$rangeList,\n _ref$components = _ref.components,\n components = _ref$components === void 0 ? {} : _ref$components,\n needConfirmButton = _ref.needConfirmButton,\n onNow = _ref.onNow,\n onOk = _ref.onOk,\n okDisabled = _ref.okDisabled,\n showNow = _ref.showNow,\n locale = _ref.locale;\n var presetNode;\n var okNode;\n if (rangeList.length) {\n var Item = components.rangeItem || 'span';\n presetNode = /*#__PURE__*/React.createElement(React.Fragment, null, rangeList.map(function (_ref2) {\n var label = _ref2.label,\n onClick = _ref2.onClick,\n onMouseEnter = _ref2.onMouseEnter,\n onMouseLeave = _ref2.onMouseLeave;\n return /*#__PURE__*/React.createElement(\"li\", {\n key: label,\n className: \"\".concat(prefixCls, \"-preset\")\n }, /*#__PURE__*/React.createElement(Item, {\n onClick: onClick,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave\n }, label));\n }));\n }\n if (needConfirmButton) {\n var Button = components.button || 'button';\n if (onNow && !presetNode && showNow !== false) {\n presetNode = /*#__PURE__*/React.createElement(\"li\", {\n className: \"\".concat(prefixCls, \"-now\")\n }, /*#__PURE__*/React.createElement(\"a\", {\n className: \"\".concat(prefixCls, \"-now-btn\"),\n onClick: onNow\n }, locale.now));\n }\n okNode = needConfirmButton && /*#__PURE__*/React.createElement(\"li\", {\n className: \"\".concat(prefixCls, \"-ok\")\n }, /*#__PURE__*/React.createElement(Button, {\n disabled: okDisabled,\n onClick: onOk\n }, locale.ok));\n }\n if (!presetNode && !okNode) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"ul\", {\n className: \"\".concat(prefixCls, \"-ranges\")\n }, presetNode, okNode);\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 _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n/**\n * Logic:\n * When `mode` === `picker`,\n * click will trigger `onSelect` (if value changed trigger `onChange` also).\n * Panel change will not trigger `onSelect` but trigger `onPanelChange`\n */\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport warning from \"rc-util/es/warning\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport TimePanel from './panels/TimePanel';\nimport DatetimePanel from './panels/DatetimePanel';\nimport DatePanel from './panels/DatePanel';\nimport WeekPanel from './panels/WeekPanel';\nimport MonthPanel from './panels/MonthPanel';\nimport QuarterPanel from './panels/QuarterPanel';\nimport YearPanel from './panels/YearPanel';\nimport DecadePanel from './panels/DecadePanel';\nimport { WEEK_DAY_COUNT, isEqual } from './utils/dateUtil';\nimport PanelContext from './PanelContext';\nimport { PickerModeMap } from './utils/uiUtil';\nimport { MONTH_COL_COUNT } from './panels/MonthPanel/MonthBody';\nimport RangeContext from './RangeContext';\nimport getExtraFooter from './utils/getExtraFooter';\nimport getRanges from './utils/getRanges';\nimport { getLowerBoundTime, setDateTime, setTime } from './utils/timeUtil';\n// Calendar picker type\nvar CALENDAR_PANEL_MODE = ['date', 'month'];\nfunction PickerPanel(props) {\n var _classNames;\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-picker' : _props$prefixCls,\n className = props.className,\n style = props.style,\n locale = props.locale,\n generateConfig = props.generateConfig,\n value = props.value,\n defaultValue = props.defaultValue,\n pickerValue = props.pickerValue,\n defaultPickerValue = props.defaultPickerValue,\n disabledDate = props.disabledDate,\n mode = props.mode,\n _props$picker = props.picker,\n picker = _props$picker === void 0 ? 'date' : _props$picker,\n _props$tabIndex = props.tabIndex,\n tabIndex = _props$tabIndex === void 0 ? 0 : _props$tabIndex,\n showNow = props.showNow,\n showTime = props.showTime,\n showToday = props.showToday,\n renderExtraFooter = props.renderExtraFooter,\n hideHeader = props.hideHeader,\n onSelect = props.onSelect,\n onChange = props.onChange,\n onPanelChange = props.onPanelChange,\n onMouseDown = props.onMouseDown,\n onPickerValueChange = props.onPickerValueChange,\n _onOk = props.onOk,\n components = props.components,\n direction = props.direction,\n _props$hourStep = props.hourStep,\n hourStep = _props$hourStep === void 0 ? 1 : _props$hourStep,\n _props$minuteStep = props.minuteStep,\n minuteStep = _props$minuteStep === void 0 ? 1 : _props$minuteStep,\n _props$secondStep = props.secondStep,\n secondStep = _props$secondStep === void 0 ? 1 : _props$secondStep;\n var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';\n var isHourStepValid = 24 % hourStep === 0;\n var isMinuteStepValid = 60 % minuteStep === 0;\n var isSecondStepValid = 60 % secondStep === 0;\n if (process.env.NODE_ENV !== 'production') {\n warning(!value || generateConfig.isValidate(value), 'Invalidate date pass to `value`.');\n warning(!value || generateConfig.isValidate(value), 'Invalidate date pass to `defaultValue`.');\n warning(isHourStepValid, \"`hourStep` \".concat(hourStep, \" is invalid. It should be a factor of 24.\"));\n warning(isMinuteStepValid, \"`minuteStep` \".concat(minuteStep, \" is invalid. It should be a factor of 60.\"));\n warning(isSecondStepValid, \"`secondStep` \".concat(secondStep, \" is invalid. It should be a factor of 60.\"));\n }\n // ============================ State =============================\n var panelContext = React.useContext(PanelContext);\n var operationRef = panelContext.operationRef,\n panelDivRef = panelContext.panelRef,\n onContextSelect = panelContext.onSelect,\n hideRanges = panelContext.hideRanges,\n defaultOpenValue = panelContext.defaultOpenValue;\n var _React$useContext = React.useContext(RangeContext),\n inRange = _React$useContext.inRange,\n panelPosition = _React$useContext.panelPosition,\n rangedValue = _React$useContext.rangedValue,\n hoverRangedValue = _React$useContext.hoverRangedValue;\n var panelRef = React.useRef({});\n // Handle init logic\n var initRef = React.useRef(true);\n // Value\n var _useMergedState = useMergedState(null, {\n value: value,\n defaultValue: defaultValue,\n postState: function postState(val) {\n if (!val && defaultOpenValue && picker === 'time') {\n return defaultOpenValue;\n }\n return val;\n }\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedValue = _useMergedState2[0],\n setInnerValue = _useMergedState2[1];\n // View date control\n var _useMergedState3 = useMergedState(null, {\n value: pickerValue,\n defaultValue: defaultPickerValue || mergedValue,\n postState: function postState(date) {\n var now = generateConfig.getNow();\n if (!date) {\n return now;\n }\n // When value is null and set showTime\n if (!mergedValue && showTime) {\n var defaultDateObject = _typeof(showTime) === 'object' ? showTime.defaultValue : defaultValue;\n return setDateTime(generateConfig, Array.isArray(date) ? date[0] : date, defaultDateObject || now);\n }\n return Array.isArray(date) ? date[0] : date;\n }\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n viewDate = _useMergedState4[0],\n setInnerViewDate = _useMergedState4[1];\n var setViewDate = function setViewDate(date) {\n setInnerViewDate(date);\n if (onPickerValueChange) {\n onPickerValueChange(date);\n }\n };\n // Panel control\n var getInternalNextMode = function getInternalNextMode(nextMode) {\n var getNextMode = PickerModeMap[picker];\n if (getNextMode) {\n return getNextMode(nextMode);\n }\n return nextMode;\n };\n // Save panel is changed from which panel\n var _useMergedState5 = useMergedState(function () {\n if (picker === 'time') {\n return 'time';\n }\n return getInternalNextMode('date');\n }, {\n value: mode\n }),\n _useMergedState6 = _slicedToArray(_useMergedState5, 2),\n mergedMode = _useMergedState6[0],\n setInnerMode = _useMergedState6[1];\n React.useEffect(function () {\n setInnerMode(picker);\n }, [picker]);\n var _React$useState = React.useState(function () {\n return mergedMode;\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n sourceMode = _React$useState2[0],\n setSourceMode = _React$useState2[1];\n var onInternalPanelChange = function onInternalPanelChange(newMode, viewValue) {\n var nextMode = getInternalNextMode(newMode || mergedMode);\n setSourceMode(mergedMode);\n setInnerMode(nextMode);\n if (onPanelChange && (mergedMode !== nextMode || isEqual(generateConfig, viewDate, viewDate))) {\n onPanelChange(viewValue, nextMode);\n }\n };\n var triggerSelect = function triggerSelect(date, type) {\n var forceTriggerSelect = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n if (mergedMode === picker || forceTriggerSelect) {\n setInnerValue(date);\n if (onSelect) {\n onSelect(date);\n }\n if (onContextSelect) {\n onContextSelect(date, type);\n }\n if (onChange && !isEqual(generateConfig, date, mergedValue) && !(disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date))) {\n onChange(date);\n }\n }\n };\n var isSelectable = function isSelectable(key) {\n if (CALENDAR_PANEL_MODE.includes(mergedMode)) {\n var date;\n var operationFnc;\n var isDateMode = mergedMode === 'date';\n if (key === KeyCode.PAGE_UP || key === KeyCode.PAGE_DOWN) {\n operationFnc = isDateMode ? generateConfig.addMonth : generateConfig.addYear;\n } else {\n operationFnc = isDateMode ? generateConfig.addDate : generateConfig.addMonth;\n }\n switch (key) {\n case KeyCode.LEFT:\n case KeyCode.PAGE_UP:\n date = operationFnc(viewDate, -1);\n break;\n case KeyCode.RIGHT:\n case KeyCode.PAGE_DOWN:\n date = operationFnc(viewDate, 1);\n break;\n case KeyCode.UP:\n case KeyCode.DOWN:\n date = operationFnc(viewDate, Number(\"\".concat(key === KeyCode.UP ? '-' : '').concat(isDateMode ? WEEK_DAY_COUNT : MONTH_COL_COUNT)));\n break;\n }\n if (date) {\n return !(disabledDate === null || disabledDate === void 0 ? void 0 : disabledDate(date));\n }\n }\n return true;\n };\n // ========================= Interactive ==========================\n var onInternalKeyDown = function onInternalKeyDown(e) {\n if (panelRef.current && panelRef.current.onKeyDown) {\n var selectable = true;\n var which = e.which;\n if ([KeyCode.LEFT, KeyCode.RIGHT, KeyCode.UP, KeyCode.DOWN, KeyCode.PAGE_UP, KeyCode.PAGE_DOWN, KeyCode.ENTER].includes(which)) {\n e.preventDefault();\n if (which !== KeyCode.ENTER && tabIndex === 0) {\n selectable = isSelectable(which);\n }\n }\n // Cannot use keyboard to select disabled date\n if (selectable) {\n return panelRef.current.onKeyDown(e);\n }\n }\n /* istanbul ignore next */\n /* eslint-disable no-lone-blocks */\n {\n warning(false, 'Panel not correct handle keyDown event. Please help to fire issue about this.');\n return false;\n }\n /* eslint-enable no-lone-blocks */\n };\n var onInternalBlur = function onInternalBlur(e) {\n if (panelRef.current && panelRef.current.onBlur) {\n panelRef.current.onBlur(e);\n }\n };\n if (operationRef && panelPosition !== 'right') {\n operationRef.current = {\n onKeyDown: onInternalKeyDown,\n onClose: function onClose() {\n if (panelRef.current && panelRef.current.onClose) {\n panelRef.current.onClose();\n }\n }\n };\n }\n // ============================ Effect ============================\n React.useEffect(function () {\n if (value && !initRef.current) {\n setInnerViewDate(value);\n }\n }, [value]);\n React.useEffect(function () {\n initRef.current = false;\n }, []);\n // ============================ Panels ============================\n var panelNode;\n var pickerProps = _objectSpread(_objectSpread({}, props), {}, {\n operationRef: panelRef,\n prefixCls: prefixCls,\n viewDate: viewDate,\n value: mergedValue,\n onViewDateChange: setViewDate,\n sourceMode: sourceMode,\n onPanelChange: onInternalPanelChange,\n disabledDate: disabledDate\n });\n delete pickerProps.onChange;\n delete pickerProps.onSelect;\n switch (mergedMode) {\n case 'decade':\n panelNode = /*#__PURE__*/React.createElement(DecadePanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n case 'year':\n panelNode = /*#__PURE__*/React.createElement(YearPanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n case 'month':\n panelNode = /*#__PURE__*/React.createElement(MonthPanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n case 'quarter':\n panelNode = /*#__PURE__*/React.createElement(QuarterPanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n case 'week':\n panelNode = /*#__PURE__*/React.createElement(WeekPanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n case 'time':\n delete pickerProps.showTime;\n panelNode = /*#__PURE__*/React.createElement(TimePanel, _extends({}, pickerProps, _typeof(showTime) === 'object' ? showTime : null, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n break;\n default:\n if (showTime) {\n panelNode = /*#__PURE__*/React.createElement(DatetimePanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n } else {\n panelNode = /*#__PURE__*/React.createElement(DatePanel, _extends({}, pickerProps, {\n onSelect: function onSelect(date, type) {\n setViewDate(date);\n triggerSelect(date, type);\n }\n }));\n }\n }\n // ============================ Footer ============================\n var extraFooter;\n var rangesNode;\n var onNow = function onNow() {\n var now = generateConfig.getNow();\n var lowerBoundTime = getLowerBoundTime(generateConfig.getHour(now), generateConfig.getMinute(now), generateConfig.getSecond(now), isHourStepValid ? hourStep : 1, isMinuteStepValid ? minuteStep : 1, isSecondStepValid ? secondStep : 1);\n var adjustedNow = setTime(generateConfig, now, lowerBoundTime[0],\n // hour\n lowerBoundTime[1],\n // minute\n lowerBoundTime[2]);\n triggerSelect(adjustedNow, 'submit');\n };\n if (!hideRanges) {\n extraFooter = getExtraFooter(prefixCls, mergedMode, renderExtraFooter);\n rangesNode = getRanges({\n prefixCls: prefixCls,\n components: components,\n needConfirmButton: needConfirmButton,\n okDisabled: !mergedValue || disabledDate && disabledDate(mergedValue),\n locale: locale,\n showNow: showNow,\n onNow: needConfirmButton && onNow,\n onOk: function onOk() {\n if (mergedValue) {\n triggerSelect(mergedValue, 'submit', true);\n if (_onOk) {\n _onOk(mergedValue);\n }\n }\n }\n });\n }\n var todayNode;\n if (showToday && mergedMode === 'date' && picker === 'date' && !showTime) {\n var now = generateConfig.getNow();\n var todayCls = \"\".concat(prefixCls, \"-today-btn\");\n var disabled = disabledDate && disabledDate(now);\n todayNode = /*#__PURE__*/React.createElement(\"a\", {\n className: classNames(todayCls, disabled && \"\".concat(todayCls, \"-disabled\")),\n \"aria-disabled\": disabled,\n onClick: function onClick() {\n if (!disabled) {\n triggerSelect(now, 'mouse', true);\n }\n }\n }, locale.today);\n }\n return /*#__PURE__*/React.createElement(PanelContext.Provider, {\n value: _objectSpread(_objectSpread({}, panelContext), {}, {\n mode: mergedMode,\n hideHeader: 'hideHeader' in props ? hideHeader : panelContext.hideHeader,\n hidePrevBtn: inRange && panelPosition === 'right',\n hideNextBtn: inRange && panelPosition === 'left'\n })\n }, /*#__PURE__*/React.createElement(\"div\", {\n tabIndex: tabIndex,\n className: classNames(\"\".concat(prefixCls, \"-panel\"), className, (_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-panel-has-range\"), rangedValue && rangedValue[0] && rangedValue[1]), _defineProperty(_classNames, \"\".concat(prefixCls, \"-panel-has-range-hover\"), hoverRangedValue && hoverRangedValue[0] && hoverRangedValue[1]), _defineProperty(_classNames, \"\".concat(prefixCls, \"-panel-rtl\"), direction === 'rtl'), _classNames)),\n style: style,\n onKeyDown: onInternalKeyDown,\n onBlur: onInternalBlur,\n onMouseDown: onMouseDown,\n ref: panelDivRef\n }, panelNode, extraFooter || rangesNode || todayNode ? /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-footer\")\n }, extraFooter, rangesNode, todayNode) : null));\n}\nexport default PickerPanel;\n/* eslint-enable */","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport Trigger from 'rc-trigger';\nvar BUILT_IN_PLACEMENTS = {\n bottomLeft: {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: {\n adjustX: 1,\n adjustY: 1\n }\n },\n bottomRight: {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: {\n adjustX: 1,\n adjustY: 1\n }\n },\n topLeft: {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: {\n adjustX: 0,\n adjustY: 1\n }\n },\n topRight: {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: {\n adjustX: 0,\n adjustY: 1\n }\n }\n};\nfunction PickerTrigger(_ref) {\n var _classNames;\n var prefixCls = _ref.prefixCls,\n popupElement = _ref.popupElement,\n popupStyle = _ref.popupStyle,\n visible = _ref.visible,\n dropdownClassName = _ref.dropdownClassName,\n dropdownAlign = _ref.dropdownAlign,\n transitionName = _ref.transitionName,\n getPopupContainer = _ref.getPopupContainer,\n children = _ref.children,\n range = _ref.range,\n popupPlacement = _ref.popupPlacement,\n direction = _ref.direction;\n var dropdownPrefixCls = \"\".concat(prefixCls, \"-dropdown\");\n var getPopupPlacement = function getPopupPlacement() {\n if (popupPlacement !== undefined) {\n return popupPlacement;\n }\n return direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n };\n return /*#__PURE__*/React.createElement(Trigger, {\n showAction: [],\n hideAction: [],\n popupPlacement: getPopupPlacement(),\n builtinPlacements: BUILT_IN_PLACEMENTS,\n prefixCls: dropdownPrefixCls,\n popupTransitionName: transitionName,\n popup: popupElement,\n popupAlign: dropdownAlign,\n popupVisible: visible,\n popupClassName: classNames(dropdownClassName, (_classNames = {}, _defineProperty(_classNames, \"\".concat(dropdownPrefixCls, \"-range\"), range), _defineProperty(_classNames, \"\".concat(dropdownPrefixCls, \"-rtl\"), direction === 'rtl'), _classNames)),\n popupStyle: popupStyle,\n getPopupContainer: getPopupContainer\n }, children);\n}\nexport default PickerTrigger;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useState, useEffect, useRef } from 'react';\nimport KeyCode from \"rc-util/es/KeyCode\";\nimport { addGlobalMouseDownEvent, getTargetFromEvent } from '../utils/uiUtil';\nexport default function usePickerInput(_ref) {\n var open = _ref.open,\n value = _ref.value,\n isClickOutside = _ref.isClickOutside,\n triggerOpen = _ref.triggerOpen,\n forwardKeyDown = _ref.forwardKeyDown,\n _onKeyDown = _ref.onKeyDown,\n blurToCancel = _ref.blurToCancel,\n onSubmit = _ref.onSubmit,\n onCancel = _ref.onCancel,\n _onFocus = _ref.onFocus,\n _onBlur = _ref.onBlur,\n currentFocusedKey = _ref.currentFocusedKey,\n _ref$key = _ref.key,\n key = _ref$key === void 0 ? 'start' : _ref$key;\n var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n typing = _useState2[0],\n setTyping = _useState2[1];\n var _useState3 = useState(false),\n _useState4 = _slicedToArray(_useState3, 2),\n focused = _useState4[0],\n setFocused = _useState4[1];\n var delayBlurTimer = useRef();\n /**\n * We will prevent blur to handle open event when user click outside,\n * since this will repeat trigger `onOpenChange` event.\n */\n var preventBlurRef = useRef(false);\n var valueChangedRef = useRef(false);\n var preventDefaultRef = useRef(false);\n var inputProps = {\n onMouseDown: function onMouseDown() {\n setTyping(true);\n triggerOpen(true);\n },\n onKeyDown: function onKeyDown(e) {\n var preventDefault = function preventDefault() {\n preventDefaultRef.current = true;\n };\n _onKeyDown(e, preventDefault);\n if (preventDefaultRef.current) return;\n switch (e.which) {\n case KeyCode.ENTER:\n {\n if (!open) {\n triggerOpen(true);\n } else if (onSubmit() !== false) {\n setTyping(true);\n }\n e.preventDefault();\n return;\n }\n case KeyCode.TAB:\n {\n if (typing && open && !e.shiftKey) {\n setTyping(false);\n e.preventDefault();\n } else if (!typing && open) {\n if (!forwardKeyDown(e) && e.shiftKey) {\n setTyping(true);\n e.preventDefault();\n }\n }\n return;\n }\n case KeyCode.ESC:\n {\n setTyping(true);\n onCancel();\n return;\n }\n }\n if (!open && ![KeyCode.SHIFT].includes(e.which)) {\n triggerOpen(true);\n } else if (!typing) {\n // Let popup panel handle keyboard\n forwardKeyDown(e);\n }\n },\n onFocus: function onFocus(e) {\n setTyping(true);\n setFocused(true);\n if (currentFocusedKey) {\n currentFocusedKey.current = key;\n }\n clearTimeout(delayBlurTimer.current);\n if (_onFocus) {\n _onFocus(e);\n }\n },\n onBlur: function onBlur(e) {\n if (preventBlurRef.current || !isClickOutside(document.activeElement)) {\n preventBlurRef.current = false;\n return;\n }\n if (blurToCancel) {\n setTimeout(function () {\n var _document = document,\n activeElement = _document.activeElement;\n while (activeElement && activeElement.shadowRoot) {\n activeElement = activeElement.shadowRoot.activeElement;\n }\n if (isClickOutside(activeElement)) {\n onCancel();\n }\n }, 0);\n } else if (open) {\n triggerOpen(false);\n if (valueChangedRef.current) {\n onSubmit();\n }\n }\n setFocused(false);\n if (currentFocusedKey) {\n currentFocusedKey.current = '';\n // Delay to prevent 'range' focus transitions from firing resulting in incorrect out-of-focus events\n delayBlurTimer.current = setTimeout(function () {\n // Prevent the 'blur' event from firing when there is currently a focused input\n if (currentFocusedKey.current) {\n return;\n }\n _onBlur === null || _onBlur === void 0 ? void 0 : _onBlur(e);\n }, 100);\n } else {\n _onBlur === null || _onBlur === void 0 ? void 0 : _onBlur(e);\n }\n }\n };\n // check if value changed\n useEffect(function () {\n valueChangedRef.current = false;\n }, [open]);\n useEffect(function () {\n valueChangedRef.current = true;\n }, [value]);\n // Global click handler\n useEffect(function () {\n return addGlobalMouseDownEvent(function (e) {\n var target = getTargetFromEvent(e);\n var clickedOutside = isClickOutside(target);\n if (open) {\n if (!clickedOutside) {\n preventBlurRef.current = true;\n // Always set back in case `onBlur` prevented by user\n requestAnimationFrame(function () {\n preventBlurRef.current = false;\n });\n } else if (!focused || clickedOutside) {\n triggerOpen(false);\n }\n } else if (focused && !clickedOutside) {\n preventBlurRef.current = true;\n }\n });\n });\n useEffect(function () {\n return function () {\n return clearTimeout(delayBlurTimer.current);\n };\n }, []);\n return [inputProps, {\n focused: focused,\n typing: typing\n }];\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nexport default function useTextValueMapping(_ref) {\n var valueTexts = _ref.valueTexts,\n onTextChange = _ref.onTextChange;\n var _React$useState = React.useState(''),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n text = _React$useState2[0],\n setInnerText = _React$useState2[1];\n var valueTextsRef = React.useRef([]);\n valueTextsRef.current = valueTexts;\n function triggerTextChange(value) {\n setInnerText(value);\n onTextChange(value);\n }\n function resetText() {\n setInnerText(valueTextsRef.current[0]);\n }\n React.useEffect(function () {\n if (valueTexts.every(function (valText) {\n return valText !== text;\n })) {\n resetText();\n }\n }, [valueTexts.join('||')]);\n return [text, triggerTextChange, resetText];\n}","import useMemo from \"rc-util/es/hooks/useMemo\";\nimport shallowEqual from \"rc-util/es/isEqual\";\nimport { formatValue, isEqual } from '../utils/dateUtil';\nexport default function useValueTexts(value, _ref) {\n var formatList = _ref.formatList,\n generateConfig = _ref.generateConfig,\n locale = _ref.locale;\n return useMemo(function () {\n if (!value) {\n return [[''], ''];\n }\n // We will convert data format back to first format\n var firstValueText = '';\n var fullValueTexts = [];\n for (var i = 0; i < formatList.length; i += 1) {\n var format = formatList[i];\n var formatStr = formatValue(value, {\n generateConfig: generateConfig,\n locale: locale,\n format: format\n });\n fullValueTexts.push(formatStr);\n if (i === 0) {\n firstValueText = formatStr;\n }\n }\n return [fullValueTexts, firstValueText];\n }, [value, formatList, locale], function (prev, next) {\n return (\n // Not Same Date\n !isEqual(generateConfig, prev[0], next[0]) ||\n // Not Same format\n !shallowEqual(prev[1], next[1], true) ||\n // Not Same locale\n !shallowEqual(prev[2], next[2], true)\n );\n });\n}","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport { useState, useEffect, useRef } from 'react';\nimport useValueTexts from './useValueTexts';\nexport default function useHoverValue(valueText, _ref) {\n var formatList = _ref.formatList,\n generateConfig = _ref.generateConfig,\n locale = _ref.locale;\n var _useState = useState(null),\n _useState2 = _slicedToArray(_useState, 2),\n value = _useState2[0],\n internalSetValue = _useState2[1];\n var raf = useRef(null);\n function setValue(val) {\n var immediately = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n cancelAnimationFrame(raf.current);\n if (immediately) {\n internalSetValue(val);\n return;\n }\n raf.current = requestAnimationFrame(function () {\n internalSetValue(val);\n });\n }\n var _useValueTexts = useValueTexts(value, {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n }),\n _useValueTexts2 = _slicedToArray(_useValueTexts, 2),\n firstText = _useValueTexts2[1];\n function onEnter(date) {\n setValue(date);\n }\n function onLeave() {\n var immediately = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n setValue(null, immediately);\n }\n useEffect(function () {\n onLeave(true);\n }, [valueText]);\n useEffect(function () {\n return function () {\n return cancelAnimationFrame(raf.current);\n };\n }, []);\n return [firstText, onEnter, onLeave];\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 _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\";\n/**\n * Removed:\n * - getCalendarContainer: use `getPopupContainer` instead\n * - onOk\n *\n * New Feature:\n * - picker\n * - allowEmpty\n * - selectable\n *\n * Tips: Should add faq about `datetime` mode with `defaultValue`\n */\nimport * as React from 'react';\nimport classNames from 'classnames';\nimport warning from \"rc-util/es/warning\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport PickerPanel from './PickerPanel';\nimport PickerTrigger from './PickerTrigger';\nimport { formatValue, isEqual, parseValue } from './utils/dateUtil';\nimport getDataOrAriaProps, { toArray } from './utils/miscUtil';\nimport PanelContext from './PanelContext';\nimport { getDefaultFormat, getInputSize, elementsContains } from './utils/uiUtil';\nimport usePickerInput from './hooks/usePickerInput';\nimport useTextValueMapping from './hooks/useTextValueMapping';\nimport useValueTexts from './hooks/useValueTexts';\nimport useHoverValue from './hooks/useHoverValue';\nimport { legacyPropsWarning } from './utils/warnUtil';\nfunction InnerPicker(props) {\n var _classNames2;\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-picker' : _props$prefixCls,\n id = props.id,\n tabIndex = props.tabIndex,\n style = props.style,\n className = props.className,\n dropdownClassName = props.dropdownClassName,\n dropdownAlign = props.dropdownAlign,\n popupStyle = props.popupStyle,\n transitionName = props.transitionName,\n generateConfig = props.generateConfig,\n locale = props.locale,\n inputReadOnly = props.inputReadOnly,\n allowClear = props.allowClear,\n autoFocus = props.autoFocus,\n showTime = props.showTime,\n _props$picker = props.picker,\n picker = _props$picker === void 0 ? 'date' : _props$picker,\n format = props.format,\n use12Hours = props.use12Hours,\n value = props.value,\n defaultValue = props.defaultValue,\n open = props.open,\n defaultOpen = props.defaultOpen,\n defaultOpenValue = props.defaultOpenValue,\n suffixIcon = props.suffixIcon,\n clearIcon = props.clearIcon,\n disabled = props.disabled,\n disabledDate = props.disabledDate,\n placeholder = props.placeholder,\n getPopupContainer = props.getPopupContainer,\n pickerRef = props.pickerRef,\n panelRender = props.panelRender,\n onChange = props.onChange,\n onOpenChange = props.onOpenChange,\n onFocus = props.onFocus,\n onBlur = props.onBlur,\n onMouseDown = props.onMouseDown,\n onMouseUp = props.onMouseUp,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onContextMenu = props.onContextMenu,\n onClick = props.onClick,\n _onKeyDown = props.onKeyDown,\n _onSelect = props.onSelect,\n direction = props.direction,\n _props$autoComplete = props.autoComplete,\n autoComplete = _props$autoComplete === void 0 ? 'off' : _props$autoComplete,\n inputRender = props.inputRender;\n var inputRef = React.useRef(null);\n var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';\n // ============================ Warning ============================\n if (process.env.NODE_ENV !== 'production') {\n legacyPropsWarning(props);\n }\n // ============================= State =============================\n var formatList = toArray(getDefaultFormat(format, picker, showTime, use12Hours));\n // Panel ref\n var panelDivRef = React.useRef(null);\n var inputDivRef = React.useRef(null);\n var containerRef = React.useRef(null);\n // Real value\n var _useMergedState = useMergedState(null, {\n value: value,\n defaultValue: defaultValue\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedValue = _useMergedState2[0],\n setInnerValue = _useMergedState2[1];\n // Selected value\n var _React$useState = React.useState(mergedValue),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n selectedValue = _React$useState2[0],\n setSelectedValue = _React$useState2[1];\n // Operation ref\n var operationRef = React.useRef(null);\n // Open\n var _useMergedState3 = useMergedState(false, {\n value: open,\n defaultValue: defaultOpen,\n postState: function postState(postOpen) {\n return disabled ? false : postOpen;\n },\n onChange: function onChange(newOpen) {\n if (onOpenChange) {\n onOpenChange(newOpen);\n }\n if (!newOpen && operationRef.current && operationRef.current.onClose) {\n operationRef.current.onClose();\n }\n }\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n mergedOpen = _useMergedState4[0],\n triggerInnerOpen = _useMergedState4[1];\n // ============================= Text ==============================\n var _useValueTexts = useValueTexts(selectedValue, {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n }),\n _useValueTexts2 = _slicedToArray(_useValueTexts, 2),\n valueTexts = _useValueTexts2[0],\n firstValueText = _useValueTexts2[1];\n var _useTextValueMapping = useTextValueMapping({\n valueTexts: valueTexts,\n onTextChange: function onTextChange(newText) {\n var inputDate = parseValue(newText, {\n locale: locale,\n formatList: formatList,\n generateConfig: generateConfig\n });\n if (inputDate && (!disabledDate || !disabledDate(inputDate))) {\n setSelectedValue(inputDate);\n }\n }\n }),\n _useTextValueMapping2 = _slicedToArray(_useTextValueMapping, 3),\n text = _useTextValueMapping2[0],\n triggerTextChange = _useTextValueMapping2[1],\n resetText = _useTextValueMapping2[2];\n // ============================ Trigger ============================\n var triggerChange = function triggerChange(newValue) {\n setSelectedValue(newValue);\n setInnerValue(newValue);\n if (onChange && !isEqual(generateConfig, mergedValue, newValue)) {\n onChange(newValue, newValue ? formatValue(newValue, {\n generateConfig: generateConfig,\n locale: locale,\n format: formatList[0]\n }) : '');\n }\n };\n var triggerOpen = function triggerOpen(newOpen) {\n if (disabled && newOpen) {\n return;\n }\n triggerInnerOpen(newOpen);\n };\n var forwardKeyDown = function forwardKeyDown(e) {\n if (mergedOpen && operationRef.current && operationRef.current.onKeyDown) {\n // Let popup panel handle keyboard\n return operationRef.current.onKeyDown(e);\n }\n /* istanbul ignore next */\n /* eslint-disable no-lone-blocks */\n {\n warning(false, 'Picker not correct forward KeyDown operation. Please help to fire issue about this.');\n return false;\n }\n };\n var onInternalClick = function onInternalClick() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n onClick === null || onClick === void 0 ? void 0 : onClick.apply(void 0, args);\n if (inputRef.current) {\n inputRef.current.focus();\n triggerOpen(true);\n }\n };\n // ============================= Input =============================\n var _usePickerInput = usePickerInput({\n blurToCancel: needConfirmButton,\n open: mergedOpen,\n value: text,\n triggerOpen: triggerOpen,\n forwardKeyDown: forwardKeyDown,\n isClickOutside: function isClickOutside(target) {\n return !elementsContains([panelDivRef.current, inputDivRef.current, containerRef.current], target);\n },\n onSubmit: function onSubmit() {\n if (\n // When user typing disabledDate with keyboard and enter, this value will be empty\n !selectedValue ||\n // Normal disabled check\n disabledDate && disabledDate(selectedValue)) {\n return false;\n }\n triggerChange(selectedValue);\n triggerOpen(false);\n resetText();\n return true;\n },\n onCancel: function onCancel() {\n triggerOpen(false);\n setSelectedValue(mergedValue);\n resetText();\n },\n onKeyDown: function onKeyDown(e, preventDefault) {\n _onKeyDown === null || _onKeyDown === void 0 ? void 0 : _onKeyDown(e, preventDefault);\n },\n onFocus: onFocus,\n onBlur: onBlur\n }),\n _usePickerInput2 = _slicedToArray(_usePickerInput, 2),\n inputProps = _usePickerInput2[0],\n _usePickerInput2$ = _usePickerInput2[1],\n focused = _usePickerInput2$.focused,\n typing = _usePickerInput2$.typing;\n // ============================= Sync ==============================\n // Close should sync back with text value\n React.useEffect(function () {\n if (!mergedOpen) {\n setSelectedValue(mergedValue);\n if (!valueTexts.length || valueTexts[0] === '') {\n triggerTextChange('');\n } else if (firstValueText !== text) {\n resetText();\n }\n }\n }, [mergedOpen, valueTexts]);\n // Change picker should sync back with text value\n React.useEffect(function () {\n if (!mergedOpen) {\n resetText();\n }\n }, [picker]);\n // Sync innerValue with control mode\n React.useEffect(function () {\n // Sync select value\n setSelectedValue(mergedValue);\n }, [mergedValue]);\n // ============================ Private ============================\n if (pickerRef) {\n pickerRef.current = {\n focus: function focus() {\n if (inputRef.current) {\n inputRef.current.focus();\n }\n },\n blur: function blur() {\n if (inputRef.current) {\n inputRef.current.blur();\n }\n }\n };\n }\n var _useHoverValue = useHoverValue(text, {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n }),\n _useHoverValue2 = _slicedToArray(_useHoverValue, 3),\n hoverValue = _useHoverValue2[0],\n onEnter = _useHoverValue2[1],\n onLeave = _useHoverValue2[2];\n // ============================= Panel =============================\n var panelProps = _objectSpread(_objectSpread({}, props), {}, {\n className: undefined,\n style: undefined,\n pickerValue: undefined,\n onPickerValueChange: undefined,\n onChange: null\n });\n var panelNode = /*#__PURE__*/React.createElement(PickerPanel, _extends({}, panelProps, {\n generateConfig: generateConfig,\n className: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-panel-focused\"), !typing)),\n value: selectedValue,\n locale: locale,\n tabIndex: -1,\n onSelect: function onSelect(date) {\n _onSelect === null || _onSelect === void 0 ? void 0 : _onSelect(date);\n setSelectedValue(date);\n },\n direction: direction,\n onPanelChange: function onPanelChange(viewDate, mode) {\n var onPanelChange = props.onPanelChange;\n onLeave(true);\n onPanelChange === null || onPanelChange === void 0 ? void 0 : onPanelChange(viewDate, mode);\n }\n }));\n if (panelRender) {\n panelNode = panelRender(panelNode);\n }\n var panel = /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-panel-container\"),\n onMouseDown: function onMouseDown(e) {\n e.preventDefault();\n }\n }, panelNode);\n var suffixNode;\n if (suffixIcon) {\n suffixNode = /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-suffix\")\n }, suffixIcon);\n }\n var clearNode;\n if (allowClear && mergedValue && !disabled) {\n clearNode = /*#__PURE__*/React.createElement(\"span\", {\n onMouseDown: function onMouseDown(e) {\n e.preventDefault();\n e.stopPropagation();\n },\n onMouseUp: function onMouseUp(e) {\n e.preventDefault();\n e.stopPropagation();\n triggerChange(null);\n triggerOpen(false);\n },\n className: \"\".concat(prefixCls, \"-clear\"),\n role: \"button\"\n }, clearIcon || /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-clear-btn\")\n }));\n }\n var mergedInputProps = _objectSpread(_objectSpread(_objectSpread({\n id: id,\n tabIndex: tabIndex,\n disabled: disabled,\n readOnly: inputReadOnly || typeof formatList[0] === 'function' || !typing,\n value: hoverValue || text,\n onChange: function onChange(e) {\n triggerTextChange(e.target.value);\n },\n autoFocus: autoFocus,\n placeholder: placeholder,\n ref: inputRef,\n title: text\n }, inputProps), {}, {\n size: getInputSize(picker, formatList[0], generateConfig)\n }, getDataOrAriaProps(props)), {}, {\n autoComplete: autoComplete\n });\n var inputNode = inputRender ? inputRender(mergedInputProps) : /*#__PURE__*/React.createElement(\"input\", mergedInputProps);\n // ============================ Warning ============================\n if (process.env.NODE_ENV !== 'production') {\n warning(!defaultOpenValue, '`defaultOpenValue` may confuse user for the current value status. Please use `defaultValue` instead.');\n }\n // ============================ Return =============================\n var onContextSelect = function onContextSelect(date, type) {\n if (type === 'submit' || type !== 'key' && !needConfirmButton) {\n // triggerChange will also update selected values\n triggerChange(date);\n triggerOpen(false);\n }\n };\n var popupPlacement = direction === 'rtl' ? 'bottomRight' : 'bottomLeft';\n return /*#__PURE__*/React.createElement(PanelContext.Provider, {\n value: {\n operationRef: operationRef,\n hideHeader: picker === 'time',\n panelRef: panelDivRef,\n onSelect: onContextSelect,\n open: mergedOpen,\n defaultOpenValue: defaultOpenValue,\n onDateMouseEnter: onEnter,\n onDateMouseLeave: onLeave\n }\n }, /*#__PURE__*/React.createElement(PickerTrigger, {\n visible: mergedOpen,\n popupElement: panel,\n popupStyle: popupStyle,\n prefixCls: prefixCls,\n dropdownClassName: dropdownClassName,\n dropdownAlign: dropdownAlign,\n getPopupContainer: getPopupContainer,\n transitionName: transitionName,\n popupPlacement: popupPlacement,\n direction: direction\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: containerRef,\n className: classNames(prefixCls, className, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-disabled\"), disabled), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-focused\"), focused), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames2)),\n style: style,\n onMouseDown: onMouseDown,\n onMouseUp: onMouseUp,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onContextMenu: onContextMenu,\n onClick: onInternalClick\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-input\"), _defineProperty({}, \"\".concat(prefixCls, \"-input-placeholder\"), !!hoverValue)),\n ref: inputDivRef\n }, inputNode, suffixNode, clearNode))));\n}\n// Wrap with class component to enable pass generic with instance method\nvar Picker = /*#__PURE__*/function (_React$Component) {\n _inherits(Picker, _React$Component);\n var _super = _createSuper(Picker);\n function Picker() {\n var _this;\n _classCallCheck(this, Picker);\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _this.pickerRef = /*#__PURE__*/React.createRef();\n _this.focus = function () {\n if (_this.pickerRef.current) {\n _this.pickerRef.current.focus();\n }\n };\n _this.blur = function () {\n if (_this.pickerRef.current) {\n _this.pickerRef.current.blur();\n }\n };\n return _this;\n }\n _createClass(Picker, [{\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(InnerPicker, _extends({}, this.props, {\n pickerRef: this.pickerRef\n }));\n }\n }]);\n return Picker;\n}(React.Component);\nexport default Picker;","import _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport * as React from 'react';\nimport { getValue, updateValues } from '../utils/miscUtil';\nimport { getClosingViewDate, isSameYear, isSameMonth, isSameDecade } from '../utils/dateUtil';\nfunction getStartEndDistance(startDate, endDate, picker, generateConfig) {\n var startNext = getClosingViewDate(startDate, picker, generateConfig, 1);\n function getDistance(compareFunc) {\n if (compareFunc(startDate, endDate)) {\n return 'same';\n }\n if (compareFunc(startNext, endDate)) {\n return 'closing';\n }\n return 'far';\n }\n switch (picker) {\n case 'year':\n return getDistance(function (start, end) {\n return isSameDecade(generateConfig, start, end);\n });\n case 'quarter':\n case 'month':\n return getDistance(function (start, end) {\n return isSameYear(generateConfig, start, end);\n });\n default:\n return getDistance(function (start, end) {\n return isSameMonth(generateConfig, start, end);\n });\n }\n}\nfunction getRangeViewDate(values, index, picker, generateConfig) {\n var startDate = getValue(values, 0);\n var endDate = getValue(values, 1);\n if (index === 0) {\n return startDate;\n }\n if (startDate && endDate) {\n var distance = getStartEndDistance(startDate, endDate, picker, generateConfig);\n switch (distance) {\n case 'same':\n return startDate;\n case 'closing':\n return startDate;\n default:\n return getClosingViewDate(endDate, picker, generateConfig, -1);\n }\n }\n return startDate;\n}\nexport default function useRangeViewDates(_ref) {\n var values = _ref.values,\n picker = _ref.picker,\n defaultDates = _ref.defaultDates,\n generateConfig = _ref.generateConfig;\n var _React$useState = React.useState(function () {\n return [getValue(defaultDates, 0), getValue(defaultDates, 1)];\n }),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n defaultViewDates = _React$useState2[0],\n setDefaultViewDates = _React$useState2[1];\n var _React$useState3 = React.useState(null),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n viewDates = _React$useState4[0],\n setInternalViewDates = _React$useState4[1];\n var startDate = getValue(values, 0);\n var endDate = getValue(values, 1);\n function getViewDate(index) {\n // If set default view date, use it\n if (defaultViewDates[index]) {\n return defaultViewDates[index];\n }\n return getValue(viewDates, index) || getRangeViewDate(values, index, picker, generateConfig) || startDate || endDate || generateConfig.getNow();\n }\n function setViewDate(viewDate, index) {\n if (viewDate) {\n var newViewDates = updateValues(viewDates, viewDate, index);\n // Set view date will clean up default one\n setDefaultViewDates(\n // Should always be an array\n updateValues(defaultViewDates, null, index) || [null, null]);\n // Reset another one when not have value\n var anotherIndex = (index + 1) % 2;\n if (!getValue(values, anotherIndex)) {\n newViewDates = updateValues(newViewDates, viewDate, anotherIndex);\n }\n setInternalViewDates(newViewDates);\n } else if (startDate || endDate) {\n // Reset all when has values when `viewDate` is `null` which means from open trigger\n setInternalViewDates(null);\n }\n }\n return [getViewDate, setViewDate];\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 _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _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, useState } from 'react';\nimport classNames from 'classnames';\nimport warning from \"rc-util/es/warning\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport PickerTrigger from './PickerTrigger';\nimport PickerPanel from './PickerPanel';\nimport usePickerInput from './hooks/usePickerInput';\nimport getDataOrAriaProps, { toArray, getValue, updateValues } from './utils/miscUtil';\nimport { getDefaultFormat, getInputSize, elementsContains } from './utils/uiUtil';\nimport PanelContext from './PanelContext';\nimport { isEqual, getClosingViewDate, isSameDate, isSameWeek, isSameQuarter, formatValue, parseValue } from './utils/dateUtil';\nimport useValueTexts from './hooks/useValueTexts';\nimport useTextValueMapping from './hooks/useTextValueMapping';\nimport RangeContext from './RangeContext';\nimport useRangeDisabled from './hooks/useRangeDisabled';\nimport getExtraFooter from './utils/getExtraFooter';\nimport getRanges from './utils/getRanges';\nimport useRangeViewDates from './hooks/useRangeViewDates';\nimport useHoverValue from './hooks/useHoverValue';\nimport { legacyPropsWarning } from './utils/warnUtil';\nfunction reorderValues(values, generateConfig) {\n if (values && values[0] && values[1] && generateConfig.isAfter(values[0], values[1])) {\n return [values[1], values[0]];\n }\n return values;\n}\nfunction canValueTrigger(value, index, disabled, allowEmpty) {\n if (value) {\n return true;\n }\n if (allowEmpty && allowEmpty[index]) {\n return true;\n }\n if (disabled[(index + 1) % 2]) {\n return true;\n }\n return false;\n}\nfunction InnerRangePicker(props) {\n var _classNames2, _classNames3, _classNames4;\n var _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-picker' : _props$prefixCls,\n id = props.id,\n style = props.style,\n className = props.className,\n popupStyle = props.popupStyle,\n dropdownClassName = props.dropdownClassName,\n transitionName = props.transitionName,\n dropdownAlign = props.dropdownAlign,\n getPopupContainer = props.getPopupContainer,\n generateConfig = props.generateConfig,\n locale = props.locale,\n placeholder = props.placeholder,\n autoFocus = props.autoFocus,\n disabled = props.disabled,\n format = props.format,\n _props$picker = props.picker,\n picker = _props$picker === void 0 ? 'date' : _props$picker,\n showTime = props.showTime,\n use12Hours = props.use12Hours,\n _props$separator = props.separator,\n separator = _props$separator === void 0 ? '~' : _props$separator,\n value = props.value,\n defaultValue = props.defaultValue,\n defaultPickerValue = props.defaultPickerValue,\n open = props.open,\n defaultOpen = props.defaultOpen,\n disabledDate = props.disabledDate,\n _disabledTime = props.disabledTime,\n dateRender = props.dateRender,\n panelRender = props.panelRender,\n ranges = props.ranges,\n allowEmpty = props.allowEmpty,\n allowClear = props.allowClear,\n suffixIcon = props.suffixIcon,\n clearIcon = props.clearIcon,\n pickerRef = props.pickerRef,\n inputReadOnly = props.inputReadOnly,\n mode = props.mode,\n renderExtraFooter = props.renderExtraFooter,\n onChange = props.onChange,\n onOpenChange = props.onOpenChange,\n onPanelChange = props.onPanelChange,\n onCalendarChange = props.onCalendarChange,\n _onFocus = props.onFocus,\n onBlur = props.onBlur,\n onMouseDown = props.onMouseDown,\n onMouseUp = props.onMouseUp,\n onMouseEnter = props.onMouseEnter,\n onMouseLeave = props.onMouseLeave,\n onClick = props.onClick,\n _onOk = props.onOk,\n _onKeyDown = props.onKeyDown,\n components = props.components,\n order = props.order,\n direction = props.direction,\n activePickerIndex = props.activePickerIndex,\n _props$autoComplete = props.autoComplete,\n autoComplete = _props$autoComplete === void 0 ? 'off' : _props$autoComplete;\n var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';\n // We record opened status here in case repeat open with picker\n var openRecordsRef = useRef({});\n var containerRef = useRef(null);\n var panelDivRef = useRef(null);\n var startInputDivRef = useRef(null);\n var endInputDivRef = useRef(null);\n var separatorRef = useRef(null);\n var startInputRef = useRef(null);\n var endInputRef = useRef(null);\n var arrowRef = useRef(null);\n // ============================ Warning ============================\n if (process.env.NODE_ENV !== 'production') {\n legacyPropsWarning(props);\n }\n // ============================= Misc ==============================\n var formatList = toArray(getDefaultFormat(format, picker, showTime, use12Hours));\n // Active picker\n var _useMergedState = useMergedState(0, {\n value: activePickerIndex\n }),\n _useMergedState2 = _slicedToArray(_useMergedState, 2),\n mergedActivePickerIndex = _useMergedState2[0],\n setMergedActivePickerIndex = _useMergedState2[1];\n // Operation ref\n var operationRef = useRef(null);\n var mergedDisabled = React.useMemo(function () {\n if (Array.isArray(disabled)) {\n return disabled;\n }\n return [disabled || false, disabled || false];\n }, [disabled]);\n // ============================= Value =============================\n var _useMergedState3 = useMergedState(null, {\n value: value,\n defaultValue: defaultValue,\n postState: function postState(values) {\n return picker === 'time' && !order ? values : reorderValues(values, generateConfig);\n }\n }),\n _useMergedState4 = _slicedToArray(_useMergedState3, 2),\n mergedValue = _useMergedState4[0],\n setInnerValue = _useMergedState4[1];\n // =========================== View Date ===========================\n // Config view panel\n var _useRangeViewDates = useRangeViewDates({\n values: mergedValue,\n picker: picker,\n defaultDates: defaultPickerValue,\n generateConfig: generateConfig\n }),\n _useRangeViewDates2 = _slicedToArray(_useRangeViewDates, 2),\n getViewDate = _useRangeViewDates2[0],\n setViewDate = _useRangeViewDates2[1];\n // ========================= Select Values =========================\n var _useMergedState5 = useMergedState(mergedValue, {\n postState: function postState(values) {\n var postValues = values;\n if (mergedDisabled[0] && mergedDisabled[1]) {\n return postValues;\n }\n // Fill disabled unit\n for (var i = 0; i < 2; i += 1) {\n if (mergedDisabled[i] && !postValues && !getValue(postValues, i) && !getValue(allowEmpty, i)) {\n postValues = updateValues(postValues, generateConfig.getNow(), i);\n }\n }\n return postValues;\n }\n }),\n _useMergedState6 = _slicedToArray(_useMergedState5, 2),\n selectedValue = _useMergedState6[0],\n setSelectedValue = _useMergedState6[1];\n // ============================= Modes =============================\n var _useMergedState7 = useMergedState([picker, picker], {\n value: mode\n }),\n _useMergedState8 = _slicedToArray(_useMergedState7, 2),\n mergedModes = _useMergedState8[0],\n setInnerModes = _useMergedState8[1];\n useEffect(function () {\n setInnerModes([picker, picker]);\n }, [picker]);\n var triggerModesChange = function triggerModesChange(modes, values) {\n setInnerModes(modes);\n if (onPanelChange) {\n onPanelChange(values, modes);\n }\n };\n // ========================= Disable Date ==========================\n var _useRangeDisabled = useRangeDisabled({\n picker: picker,\n selectedValue: selectedValue,\n locale: locale,\n disabled: mergedDisabled,\n disabledDate: disabledDate,\n generateConfig: generateConfig\n }, openRecordsRef.current[1], openRecordsRef.current[0]),\n _useRangeDisabled2 = _slicedToArray(_useRangeDisabled, 2),\n disabledStartDate = _useRangeDisabled2[0],\n disabledEndDate = _useRangeDisabled2[1];\n // ============================= Open ==============================\n var _useMergedState9 = useMergedState(false, {\n value: open,\n defaultValue: defaultOpen,\n postState: function postState(postOpen) {\n return mergedDisabled[mergedActivePickerIndex] ? false : postOpen;\n },\n onChange: function onChange(newOpen) {\n if (onOpenChange) {\n onOpenChange(newOpen);\n }\n if (!newOpen && operationRef.current && operationRef.current.onClose) {\n operationRef.current.onClose();\n }\n }\n }),\n _useMergedState10 = _slicedToArray(_useMergedState9, 2),\n mergedOpen = _useMergedState10[0],\n triggerInnerOpen = _useMergedState10[1];\n var startOpen = mergedOpen && mergedActivePickerIndex === 0;\n var endOpen = mergedOpen && mergedActivePickerIndex === 1;\n // ============================= Popup =============================\n // Popup min width\n var _useState = useState(0),\n _useState2 = _slicedToArray(_useState, 2),\n popupMinWidth = _useState2[0],\n setPopupMinWidth = _useState2[1];\n useEffect(function () {\n if (!mergedOpen && containerRef.current) {\n setPopupMinWidth(containerRef.current.offsetWidth);\n }\n }, [mergedOpen]);\n // ============================ Trigger ============================\n var triggerRef = React.useRef();\n function _triggerOpen(newOpen, index) {\n if (newOpen) {\n clearTimeout(triggerRef.current);\n openRecordsRef.current[index] = true;\n setMergedActivePickerIndex(index);\n triggerInnerOpen(newOpen);\n // Open to reset view date\n if (!mergedOpen) {\n setViewDate(null, index);\n }\n } else if (mergedActivePickerIndex === index) {\n triggerInnerOpen(newOpen);\n // Clean up async\n // This makes ref not quick refresh in case user open another input with blur trigger\n var openRecords = openRecordsRef.current;\n triggerRef.current = setTimeout(function () {\n if (openRecords === openRecordsRef.current) {\n openRecordsRef.current = {};\n }\n });\n }\n }\n function triggerOpenAndFocus(index) {\n _triggerOpen(true, index);\n // Use setTimeout to make sure panel DOM exists\n setTimeout(function () {\n var inputRef = [startInputRef, endInputRef][index];\n if (inputRef.current) {\n inputRef.current.focus();\n }\n }, 0);\n }\n function triggerChange(newValue, sourceIndex) {\n var values = newValue;\n var startValue = getValue(values, 0);\n var endValue = getValue(values, 1);\n // >>>>> Format start & end values\n if (startValue && endValue && generateConfig.isAfter(startValue, endValue)) {\n if (\n // WeekPicker only compare week\n picker === 'week' && !isSameWeek(generateConfig, locale.locale, startValue, endValue) ||\n // QuotaPicker only compare week\n picker === 'quarter' && !isSameQuarter(generateConfig, startValue, endValue) ||\n // Other non-TimePicker compare date\n picker !== 'week' && picker !== 'quarter' && picker !== 'time' && !isSameDate(generateConfig, startValue, endValue)) {\n // Clean up end date when start date is after end date\n if (sourceIndex === 0) {\n values = [startValue, null];\n endValue = null;\n } else {\n startValue = null;\n values = [null, endValue];\n }\n // Clean up cache since invalidate\n openRecordsRef.current = _defineProperty({}, sourceIndex, true);\n } else if (picker !== 'time' || order !== false) {\n // Reorder when in same date\n values = reorderValues(values, generateConfig);\n }\n }\n setSelectedValue(values);\n var startStr = values && values[0] ? formatValue(values[0], {\n generateConfig: generateConfig,\n locale: locale,\n format: formatList[0]\n }) : '';\n var endStr = values && values[1] ? formatValue(values[1], {\n generateConfig: generateConfig,\n locale: locale,\n format: formatList[0]\n }) : '';\n if (onCalendarChange) {\n var info = {\n range: sourceIndex === 0 ? 'start' : 'end'\n };\n onCalendarChange(values, [startStr, endStr], info);\n }\n // >>>>> Trigger `onChange` event\n var canStartValueTrigger = canValueTrigger(startValue, 0, mergedDisabled, allowEmpty);\n var canEndValueTrigger = canValueTrigger(endValue, 1, mergedDisabled, allowEmpty);\n var canTrigger = values === null || canStartValueTrigger && canEndValueTrigger;\n if (canTrigger) {\n // Trigger onChange only when value is validate\n setInnerValue(values);\n if (onChange && (!isEqual(generateConfig, getValue(mergedValue, 0), startValue) || !isEqual(generateConfig, getValue(mergedValue, 1), endValue))) {\n onChange(values, [startStr, endStr]);\n }\n }\n // >>>>> Open picker when\n // Always open another picker if possible\n var nextOpenIndex = null;\n if (sourceIndex === 0 && !mergedDisabled[1]) {\n nextOpenIndex = 1;\n } else if (sourceIndex === 1 && !mergedDisabled[0]) {\n nextOpenIndex = 0;\n }\n if (nextOpenIndex !== null && nextOpenIndex !== mergedActivePickerIndex && (!openRecordsRef.current[nextOpenIndex] || !getValue(values, nextOpenIndex)) && getValue(values, sourceIndex)) {\n // Delay to focus to avoid input blur trigger expired selectedValues\n triggerOpenAndFocus(nextOpenIndex);\n } else {\n _triggerOpen(false, sourceIndex);\n }\n }\n var forwardKeyDown = function forwardKeyDown(e) {\n if (mergedOpen && operationRef.current && operationRef.current.onKeyDown) {\n // Let popup panel handle keyboard\n return operationRef.current.onKeyDown(e);\n }\n /* istanbul ignore next */\n /* eslint-disable no-lone-blocks */\n {\n warning(false, 'Picker not correct forward KeyDown operation. Please help to fire issue about this.');\n return false;\n }\n };\n // ============================= Text ==============================\n var sharedTextHooksProps = {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n };\n var _useValueTexts = useValueTexts(getValue(selectedValue, 0), sharedTextHooksProps),\n _useValueTexts2 = _slicedToArray(_useValueTexts, 2),\n startValueTexts = _useValueTexts2[0],\n firstStartValueText = _useValueTexts2[1];\n var _useValueTexts3 = useValueTexts(getValue(selectedValue, 1), sharedTextHooksProps),\n _useValueTexts4 = _slicedToArray(_useValueTexts3, 2),\n endValueTexts = _useValueTexts4[0],\n firstEndValueText = _useValueTexts4[1];\n var _onTextChange = function onTextChange(newText, index) {\n var inputDate = parseValue(newText, {\n locale: locale,\n formatList: formatList,\n generateConfig: generateConfig\n });\n var disabledFunc = index === 0 ? disabledStartDate : disabledEndDate;\n if (inputDate && !disabledFunc(inputDate)) {\n setSelectedValue(updateValues(selectedValue, inputDate, index));\n setViewDate(inputDate, index);\n }\n };\n var _useTextValueMapping = useTextValueMapping({\n valueTexts: startValueTexts,\n onTextChange: function onTextChange(newText) {\n return _onTextChange(newText, 0);\n }\n }),\n _useTextValueMapping2 = _slicedToArray(_useTextValueMapping, 3),\n startText = _useTextValueMapping2[0],\n triggerStartTextChange = _useTextValueMapping2[1],\n resetStartText = _useTextValueMapping2[2];\n var _useTextValueMapping3 = useTextValueMapping({\n valueTexts: endValueTexts,\n onTextChange: function onTextChange(newText) {\n return _onTextChange(newText, 1);\n }\n }),\n _useTextValueMapping4 = _slicedToArray(_useTextValueMapping3, 3),\n endText = _useTextValueMapping4[0],\n triggerEndTextChange = _useTextValueMapping4[1],\n resetEndText = _useTextValueMapping4[2];\n var _useState3 = useState(null),\n _useState4 = _slicedToArray(_useState3, 2),\n rangeHoverValue = _useState4[0],\n setRangeHoverValue = _useState4[1];\n // ========================== Hover Range ==========================\n var _useState5 = useState(null),\n _useState6 = _slicedToArray(_useState5, 2),\n hoverRangedValue = _useState6[0],\n setHoverRangedValue = _useState6[1];\n var _useHoverValue = useHoverValue(startText, {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n }),\n _useHoverValue2 = _slicedToArray(_useHoverValue, 3),\n startHoverValue = _useHoverValue2[0],\n onStartEnter = _useHoverValue2[1],\n onStartLeave = _useHoverValue2[2];\n var _useHoverValue3 = useHoverValue(endText, {\n formatList: formatList,\n generateConfig: generateConfig,\n locale: locale\n }),\n _useHoverValue4 = _slicedToArray(_useHoverValue3, 3),\n endHoverValue = _useHoverValue4[0],\n onEndEnter = _useHoverValue4[1],\n onEndLeave = _useHoverValue4[2];\n var onDateMouseEnter = function onDateMouseEnter(date) {\n setHoverRangedValue(updateValues(selectedValue, date, mergedActivePickerIndex));\n if (mergedActivePickerIndex === 0) {\n onStartEnter(date);\n } else {\n onEndEnter(date);\n }\n };\n var onDateMouseLeave = function onDateMouseLeave() {\n setHoverRangedValue(updateValues(selectedValue, null, mergedActivePickerIndex));\n if (mergedActivePickerIndex === 0) {\n onStartLeave();\n } else {\n onEndLeave();\n }\n };\n // ============================= Input =============================\n var getSharedInputHookProps = function getSharedInputHookProps(index, resetText) {\n return {\n blurToCancel: needConfirmButton,\n forwardKeyDown: forwardKeyDown,\n onBlur: onBlur,\n isClickOutside: function isClickOutside(target) {\n return !elementsContains([panelDivRef.current, startInputDivRef.current, endInputDivRef.current, containerRef.current], target);\n },\n onFocus: function onFocus(e) {\n setMergedActivePickerIndex(index);\n if (_onFocus) {\n _onFocus(e);\n }\n },\n triggerOpen: function triggerOpen(newOpen) {\n _triggerOpen(newOpen, index);\n },\n onSubmit: function onSubmit() {\n if (\n // When user typing disabledDate with keyboard and enter, this value will be empty\n !selectedValue ||\n // Normal disabled check\n disabledDate && disabledDate(selectedValue[index])) {\n return false;\n }\n triggerChange(selectedValue, index);\n resetText();\n },\n onCancel: function onCancel() {\n _triggerOpen(false, index);\n setSelectedValue(mergedValue);\n resetText();\n }\n };\n };\n var currentFocusedKey = useRef('');\n var _usePickerInput = usePickerInput(_objectSpread(_objectSpread({}, getSharedInputHookProps(0, resetStartText)), {}, {\n open: startOpen,\n value: startText,\n currentFocusedKey: currentFocusedKey,\n key: 'start',\n onKeyDown: function onKeyDown(e, preventDefault) {\n _onKeyDown === null || _onKeyDown === void 0 ? void 0 : _onKeyDown(e, preventDefault);\n }\n })),\n _usePickerInput2 = _slicedToArray(_usePickerInput, 2),\n startInputProps = _usePickerInput2[0],\n _usePickerInput2$ = _usePickerInput2[1],\n startFocused = _usePickerInput2$.focused,\n startTyping = _usePickerInput2$.typing;\n var _usePickerInput3 = usePickerInput(_objectSpread(_objectSpread({}, getSharedInputHookProps(1, resetEndText)), {}, {\n open: endOpen,\n value: endText,\n currentFocusedKey: currentFocusedKey,\n key: 'end',\n onKeyDown: function onKeyDown(e, preventDefault) {\n _onKeyDown === null || _onKeyDown === void 0 ? void 0 : _onKeyDown(e, preventDefault);\n }\n })),\n _usePickerInput4 = _slicedToArray(_usePickerInput3, 2),\n endInputProps = _usePickerInput4[0],\n _usePickerInput4$ = _usePickerInput4[1],\n endFocused = _usePickerInput4$.focused,\n endTyping = _usePickerInput4$.typing;\n // ========================== Click Picker ==========================\n var onPickerClick = function onPickerClick(e) {\n // When click inside the picker & outside the picker's input elements\n // the panel should still be opened\n if (onClick) {\n onClick(e);\n }\n if (!mergedOpen && !startInputRef.current.contains(e.target) && !endInputRef.current.contains(e.target)) {\n if (!mergedDisabled[0]) {\n triggerOpenAndFocus(0);\n } else if (!mergedDisabled[1]) {\n triggerOpenAndFocus(1);\n }\n }\n };\n var onPickerMouseDown = function onPickerMouseDown(e) {\n // shouldn't affect input elements if picker is active\n if (onMouseDown) {\n onMouseDown(e);\n }\n if (mergedOpen && (startFocused || endFocused) && !startInputRef.current.contains(e.target) && !endInputRef.current.contains(e.target)) {\n e.preventDefault();\n }\n };\n // ============================= Sync ==============================\n // Close should sync back with text value\n var startStr = mergedValue && mergedValue[0] ? formatValue(mergedValue[0], {\n locale: locale,\n format: 'YYYYMMDDHHmmss',\n generateConfig: generateConfig\n }) : '';\n var endStr = mergedValue && mergedValue[1] ? formatValue(mergedValue[1], {\n locale: locale,\n format: 'YYYYMMDDHHmmss',\n generateConfig: generateConfig\n }) : '';\n useEffect(function () {\n if (!mergedOpen) {\n setSelectedValue(mergedValue);\n if (!startValueTexts.length || startValueTexts[0] === '') {\n triggerStartTextChange('');\n } else if (firstStartValueText !== startText) {\n resetStartText();\n }\n if (!endValueTexts.length || endValueTexts[0] === '') {\n triggerEndTextChange('');\n } else if (firstEndValueText !== endText) {\n resetEndText();\n }\n }\n }, [mergedOpen, startValueTexts, endValueTexts]);\n // Sync innerValue with control mode\n useEffect(function () {\n setSelectedValue(mergedValue);\n }, [startStr, endStr]);\n // ============================ Warning ============================\n if (process.env.NODE_ENV !== 'production') {\n if (value && Array.isArray(disabled) && (getValue(disabled, 0) && !getValue(value, 0) || getValue(disabled, 1) && !getValue(value, 1))) {\n warning(false, '`disabled` should not set with empty `value`. You should set `allowEmpty` or `value` instead.');\n }\n }\n // ============================ Private ============================\n if (pickerRef) {\n pickerRef.current = {\n focus: function focus() {\n if (startInputRef.current) {\n startInputRef.current.focus();\n }\n },\n blur: function blur() {\n if (startInputRef.current) {\n startInputRef.current.blur();\n }\n if (endInputRef.current) {\n endInputRef.current.blur();\n }\n }\n };\n }\n // ============================ Ranges =============================\n var rangeLabels = Object.keys(ranges || {});\n var rangeList = rangeLabels.map(function (label) {\n var range = ranges[label];\n var newValues = typeof range === 'function' ? range() : range;\n return {\n label: label,\n onClick: function onClick() {\n triggerChange(newValues, null);\n _triggerOpen(false, mergedActivePickerIndex);\n },\n onMouseEnter: function onMouseEnter() {\n setRangeHoverValue(newValues);\n },\n onMouseLeave: function onMouseLeave() {\n setRangeHoverValue(null);\n }\n };\n });\n // ============================= Panel =============================\n function renderPanel() {\n var panelPosition = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var panelProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var panelHoverRangedValue = null;\n if (mergedOpen && hoverRangedValue && hoverRangedValue[0] && hoverRangedValue[1] && generateConfig.isAfter(hoverRangedValue[1], hoverRangedValue[0])) {\n panelHoverRangedValue = hoverRangedValue;\n }\n var panelShowTime = showTime;\n if (showTime && _typeof(showTime) === 'object' && showTime.defaultValue) {\n var timeDefaultValues = showTime.defaultValue;\n panelShowTime = _objectSpread(_objectSpread({}, showTime), {}, {\n defaultValue: getValue(timeDefaultValues, mergedActivePickerIndex) || undefined\n });\n }\n var panelDateRender = null;\n if (dateRender) {\n panelDateRender = function panelDateRender(date, today) {\n return dateRender(date, today, {\n range: mergedActivePickerIndex ? 'end' : 'start'\n });\n };\n }\n return /*#__PURE__*/React.createElement(RangeContext.Provider, {\n value: {\n inRange: true,\n panelPosition: panelPosition,\n rangedValue: rangeHoverValue || selectedValue,\n hoverRangedValue: panelHoverRangedValue\n }\n }, /*#__PURE__*/React.createElement(PickerPanel, _extends({}, props, panelProps, {\n dateRender: panelDateRender,\n showTime: panelShowTime,\n mode: mergedModes[mergedActivePickerIndex],\n generateConfig: generateConfig,\n style: undefined,\n direction: direction,\n disabledDate: mergedActivePickerIndex === 0 ? disabledStartDate : disabledEndDate,\n disabledTime: function disabledTime(date) {\n if (_disabledTime) {\n return _disabledTime(date, mergedActivePickerIndex === 0 ? 'start' : 'end');\n }\n return false;\n },\n className: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-panel-focused\"), mergedActivePickerIndex === 0 ? !startTyping : !endTyping)),\n value: getValue(selectedValue, mergedActivePickerIndex),\n locale: locale,\n tabIndex: -1,\n onPanelChange: function onPanelChange(date, newMode) {\n // clear hover value when panel change\n if (mergedActivePickerIndex === 0) {\n onStartLeave(true);\n }\n if (mergedActivePickerIndex === 1) {\n onEndLeave(true);\n }\n triggerModesChange(updateValues(mergedModes, newMode, mergedActivePickerIndex), updateValues(selectedValue, date, mergedActivePickerIndex));\n var viewDate = date;\n if (panelPosition === 'right' && mergedModes[mergedActivePickerIndex] === newMode) {\n viewDate = getClosingViewDate(viewDate, newMode, generateConfig, -1);\n }\n setViewDate(viewDate, mergedActivePickerIndex);\n },\n onOk: null,\n onSelect: undefined,\n onChange: undefined,\n defaultValue: mergedActivePickerIndex === 0 ? getValue(selectedValue, 1) : getValue(selectedValue, 0)\n })));\n }\n var arrowLeft = 0;\n var panelLeft = 0;\n if (mergedActivePickerIndex && startInputDivRef.current && separatorRef.current && panelDivRef.current) {\n // Arrow offset\n arrowLeft = startInputDivRef.current.offsetWidth + separatorRef.current.offsetWidth;\n // If panelWidth - arrowWidth - arrowMarginLeft < arrowLeft, panel should move to right side.\n // If arrowOffsetLeft > arrowLeft, arrowMarginLeft = arrowOffsetLeft - arrowLeft\n var arrowMarginLeft = arrowRef.current.offsetLeft > arrowLeft ? arrowRef.current.offsetLeft - arrowLeft : arrowRef.current.offsetLeft;\n if (panelDivRef.current.offsetWidth && arrowRef.current.offsetWidth && arrowLeft > panelDivRef.current.offsetWidth - arrowRef.current.offsetWidth - (direction === 'rtl' ? 0 : arrowMarginLeft)) {\n panelLeft = arrowLeft;\n }\n }\n var arrowPositionStyle = direction === 'rtl' ? {\n right: arrowLeft\n } : {\n left: arrowLeft\n };\n function renderPanels() {\n var panels;\n var extraNode = getExtraFooter(prefixCls, mergedModes[mergedActivePickerIndex], renderExtraFooter);\n var rangesNode = getRanges({\n prefixCls: prefixCls,\n components: components,\n needConfirmButton: needConfirmButton,\n okDisabled: !getValue(selectedValue, mergedActivePickerIndex) || disabledDate && disabledDate(selectedValue[mergedActivePickerIndex]),\n locale: locale,\n rangeList: rangeList,\n onOk: function onOk() {\n if (getValue(selectedValue, mergedActivePickerIndex)) {\n // triggerChangeOld(selectedValue);\n triggerChange(selectedValue, mergedActivePickerIndex);\n if (_onOk) {\n _onOk(selectedValue);\n }\n }\n }\n });\n if (picker !== 'time' && !showTime) {\n var viewDate = getViewDate(mergedActivePickerIndex);\n var nextViewDate = getClosingViewDate(viewDate, picker, generateConfig);\n var currentMode = mergedModes[mergedActivePickerIndex];\n var showDoublePanel = currentMode === picker;\n var leftPanel = renderPanel(showDoublePanel ? 'left' : false, {\n pickerValue: viewDate,\n onPickerValueChange: function onPickerValueChange(newViewDate) {\n setViewDate(newViewDate, mergedActivePickerIndex);\n }\n });\n var rightPanel = renderPanel('right', {\n pickerValue: nextViewDate,\n onPickerValueChange: function onPickerValueChange(newViewDate) {\n setViewDate(getClosingViewDate(newViewDate, picker, generateConfig, -1), mergedActivePickerIndex);\n }\n });\n if (direction === 'rtl') {\n panels = /*#__PURE__*/React.createElement(React.Fragment, null, rightPanel, showDoublePanel && leftPanel);\n } else {\n panels = /*#__PURE__*/React.createElement(React.Fragment, null, leftPanel, showDoublePanel && rightPanel);\n }\n } else {\n panels = renderPanel();\n }\n var mergedNodes = /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-panels\")\n }, panels), (extraNode || rangesNode) && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-footer\")\n }, extraNode, rangesNode));\n if (panelRender) {\n mergedNodes = panelRender(mergedNodes);\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-panel-container\"),\n style: {\n marginLeft: panelLeft\n },\n ref: panelDivRef,\n onMouseDown: function onMouseDown(e) {\n e.preventDefault();\n }\n }, mergedNodes);\n }\n var rangePanel = /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-range-wrapper\"), \"\".concat(prefixCls, \"-\").concat(picker, \"-range-wrapper\")),\n style: {\n minWidth: popupMinWidth\n }\n }, /*#__PURE__*/React.createElement(\"div\", {\n ref: arrowRef,\n className: \"\".concat(prefixCls, \"-range-arrow\"),\n style: arrowPositionStyle\n }), renderPanels());\n // ============================= Icons =============================\n var suffixNode;\n if (suffixIcon) {\n suffixNode = /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-suffix\")\n }, suffixIcon);\n }\n var clearNode;\n if (allowClear && (getValue(mergedValue, 0) && !mergedDisabled[0] || getValue(mergedValue, 1) && !mergedDisabled[1])) {\n clearNode = /*#__PURE__*/React.createElement(\"span\", {\n onMouseDown: function onMouseDown(e) {\n e.preventDefault();\n e.stopPropagation();\n },\n onMouseUp: function onMouseUp(e) {\n e.preventDefault();\n e.stopPropagation();\n var values = mergedValue;\n if (!mergedDisabled[0]) {\n values = updateValues(values, null, 0);\n }\n if (!mergedDisabled[1]) {\n values = updateValues(values, null, 1);\n }\n triggerChange(values, null);\n _triggerOpen(false, mergedActivePickerIndex);\n },\n className: \"\".concat(prefixCls, \"-clear\")\n }, clearIcon || /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-clear-btn\")\n }));\n }\n var inputSharedProps = {\n size: getInputSize(picker, formatList[0], generateConfig)\n };\n var activeBarLeft = 0;\n var activeBarWidth = 0;\n if (startInputDivRef.current && endInputDivRef.current && separatorRef.current) {\n if (mergedActivePickerIndex === 0) {\n activeBarWidth = startInputDivRef.current.offsetWidth;\n } else {\n activeBarLeft = arrowLeft;\n activeBarWidth = endInputDivRef.current.offsetWidth;\n }\n }\n var activeBarPositionStyle = direction === 'rtl' ? {\n right: activeBarLeft\n } : {\n left: activeBarLeft\n };\n // ============================ Return =============================\n var onContextSelect = function onContextSelect(date, type) {\n var values = updateValues(selectedValue, date, mergedActivePickerIndex);\n if (type === 'submit' || type !== 'key' && !needConfirmButton) {\n // triggerChange will also update selected values\n triggerChange(values, mergedActivePickerIndex);\n // clear hover value style\n if (mergedActivePickerIndex === 0) {\n onStartLeave();\n } else {\n onEndLeave();\n }\n } else {\n setSelectedValue(values);\n }\n };\n return /*#__PURE__*/React.createElement(PanelContext.Provider, {\n value: {\n operationRef: operationRef,\n hideHeader: picker === 'time',\n onDateMouseEnter: onDateMouseEnter,\n onDateMouseLeave: onDateMouseLeave,\n hideRanges: true,\n onSelect: onContextSelect,\n open: mergedOpen\n }\n }, /*#__PURE__*/React.createElement(PickerTrigger, {\n visible: mergedOpen,\n popupElement: rangePanel,\n popupStyle: popupStyle,\n prefixCls: prefixCls,\n dropdownClassName: dropdownClassName,\n dropdownAlign: dropdownAlign,\n getPopupContainer: getPopupContainer,\n transitionName: transitionName,\n range: true,\n direction: direction\n }, /*#__PURE__*/React.createElement(\"div\", _extends({\n ref: containerRef,\n className: classNames(prefixCls, \"\".concat(prefixCls, \"-range\"), className, (_classNames2 = {}, _defineProperty(_classNames2, \"\".concat(prefixCls, \"-disabled\"), mergedDisabled[0] && mergedDisabled[1]), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-focused\"), mergedActivePickerIndex === 0 ? startFocused : endFocused), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), _classNames2)),\n style: style,\n onClick: onPickerClick,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n onMouseDown: onPickerMouseDown,\n onMouseUp: onMouseUp\n }, getDataOrAriaProps(props)), /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-input\"), (_classNames3 = {}, _defineProperty(_classNames3, \"\".concat(prefixCls, \"-input-active\"), mergedActivePickerIndex === 0), _defineProperty(_classNames3, \"\".concat(prefixCls, \"-input-placeholder\"), !!startHoverValue), _classNames3)),\n ref: startInputDivRef\n }, /*#__PURE__*/React.createElement(\"input\", _extends({\n id: id,\n disabled: mergedDisabled[0],\n readOnly: inputReadOnly || typeof formatList[0] === 'function' || !startTyping,\n value: startHoverValue || startText,\n onChange: function onChange(e) {\n triggerStartTextChange(e.target.value);\n },\n autoFocus: autoFocus,\n placeholder: getValue(placeholder, 0) || '',\n ref: startInputRef\n }, startInputProps, inputSharedProps, {\n autoComplete: autoComplete\n }))), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-range-separator\"),\n ref: separatorRef\n }, separator), /*#__PURE__*/React.createElement(\"div\", {\n className: classNames(\"\".concat(prefixCls, \"-input\"), (_classNames4 = {}, _defineProperty(_classNames4, \"\".concat(prefixCls, \"-input-active\"), mergedActivePickerIndex === 1), _defineProperty(_classNames4, \"\".concat(prefixCls, \"-input-placeholder\"), !!endHoverValue), _classNames4)),\n ref: endInputDivRef\n }, /*#__PURE__*/React.createElement(\"input\", _extends({\n disabled: mergedDisabled[1],\n readOnly: inputReadOnly || typeof formatList[0] === 'function' || !endTyping,\n value: endHoverValue || endText,\n onChange: function onChange(e) {\n triggerEndTextChange(e.target.value);\n },\n placeholder: getValue(placeholder, 1) || '',\n ref: endInputRef\n }, endInputProps, inputSharedProps, {\n autoComplete: autoComplete\n }))), /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-active-bar\"),\n style: _objectSpread(_objectSpread({}, activeBarPositionStyle), {}, {\n width: activeBarWidth,\n position: 'absolute'\n })\n }), suffixNode, clearNode)));\n}\n// Wrap with class component to enable pass generic with instance method\nvar RangePicker = /*#__PURE__*/function (_React$Component) {\n _inherits(RangePicker, _React$Component);\n var _super = _createSuper(RangePicker);\n function RangePicker() {\n var _this;\n _classCallCheck(this, RangePicker);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _this.pickerRef = /*#__PURE__*/React.createRef();\n _this.focus = function () {\n if (_this.pickerRef.current) {\n _this.pickerRef.current.focus();\n }\n };\n _this.blur = function () {\n if (_this.pickerRef.current) {\n _this.pickerRef.current.blur();\n }\n };\n return _this;\n }\n _createClass(RangePicker, [{\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(InnerRangePicker, _extends({}, this.props, {\n pickerRef: this.pickerRef\n }));\n }\n }]);\n return RangePicker;\n}(React.Component);\nexport default RangePicker;","import * as React from 'react';\nimport { getValue } from '../utils/miscUtil';\nimport { isSameDate, getQuarter } from '../utils/dateUtil';\nexport default function useRangeDisabled(_ref, disabledStart, disabledEnd) {\n var picker = _ref.picker,\n locale = _ref.locale,\n selectedValue = _ref.selectedValue,\n disabledDate = _ref.disabledDate,\n disabled = _ref.disabled,\n generateConfig = _ref.generateConfig;\n var startDate = getValue(selectedValue, 0);\n var endDate = getValue(selectedValue, 1);\n function weekFirstDate(date) {\n return generateConfig.locale.getWeekFirstDate(locale.locale, date);\n }\n function monthNumber(date) {\n var year = generateConfig.getYear(date);\n var month = generateConfig.getMonth(date);\n return year * 100 + month;\n }\n function quarterNumber(date) {\n var year = generateConfig.getYear(date);\n var quarter = getQuarter(generateConfig, date);\n return year * 10 + quarter;\n }\n var disabledStartDate = React.useCallback(function (date) {\n if (disabledDate && disabledDate(date)) {\n return true;\n }\n // Disabled range\n if (disabled[1] && endDate) {\n return !isSameDate(generateConfig, date, endDate) && generateConfig.isAfter(date, endDate);\n }\n // Disabled part\n if (disabledStart && endDate) {\n switch (picker) {\n case 'quarter':\n return quarterNumber(date) > quarterNumber(endDate);\n case 'month':\n return monthNumber(date) > monthNumber(endDate);\n case 'week':\n return weekFirstDate(date) > weekFirstDate(endDate);\n default:\n return !isSameDate(generateConfig, date, endDate) && generateConfig.isAfter(date, endDate);\n }\n }\n return false;\n }, [disabledDate, disabled[1], endDate, disabledStart]);\n var disabledEndDate = React.useCallback(function (date) {\n if (disabledDate && disabledDate(date)) {\n return true;\n }\n // Disabled range\n if (disabled[0] && startDate) {\n return !isSameDate(generateConfig, date, endDate) && generateConfig.isAfter(startDate, date);\n }\n // Disabled part\n if (disabledEnd && startDate) {\n switch (picker) {\n case 'quarter':\n return quarterNumber(date) < quarterNumber(startDate);\n case 'month':\n return monthNumber(date) < monthNumber(startDate);\n case 'week':\n return weekFirstDate(date) < weekFirstDate(startDate);\n default:\n return !isSameDate(generateConfig, date, startDate) && generateConfig.isAfter(startDate, date);\n }\n }\n return false;\n }, [disabledDate, disabled[0], startDate, disabledEnd]);\n return [disabledStartDate, disabledEndDate];\n}","import Picker from './Picker';\nimport PickerPanel from './PickerPanel';\nimport RangePicker from './RangePicker';\nexport { PickerPanel, RangePicker };\nexport default Picker;","export function getPlaceholder(picker, locale, customizePlaceholder) {\n if (customizePlaceholder !== undefined) {\n return customizePlaceholder;\n }\n if (picker === 'year' && locale.lang.yearPlaceholder) {\n return locale.lang.yearPlaceholder;\n }\n if (picker === 'quarter' && locale.lang.quarterPlaceholder) {\n return locale.lang.quarterPlaceholder;\n }\n if (picker === 'month' && locale.lang.monthPlaceholder) {\n return locale.lang.monthPlaceholder;\n }\n if (picker === 'week' && locale.lang.weekPlaceholder) {\n return locale.lang.weekPlaceholder;\n }\n if (picker === 'time' && locale.timePickerLocale.placeholder) {\n return locale.timePickerLocale.placeholder;\n }\n return locale.lang.placeholder;\n}\nexport function getRangePlaceholder(picker, locale, customizePlaceholder) {\n if (customizePlaceholder !== undefined) {\n return customizePlaceholder;\n }\n if (picker === 'year' && locale.lang.yearPlaceholder) {\n return locale.lang.rangeYearPlaceholder;\n }\n if (picker === 'quarter' && locale.lang.quarterPlaceholder) {\n return locale.lang.rangeQuarterPlaceholder;\n }\n if (picker === 'month' && locale.lang.monthPlaceholder) {\n return locale.lang.rangeMonthPlaceholder;\n }\n if (picker === 'week' && locale.lang.weekPlaceholder) {\n return locale.lang.rangeWeekPlaceholder;\n }\n if (picker === 'time' && locale.timePickerLocale.placeholder) {\n return locale.timePickerLocale.rangePlaceholder;\n }\n return locale.lang.rangePlaceholder;\n}\nexport function transPlacement2DropdownAlign(direction, placement) {\n var overflow = {\n adjustX: 1,\n adjustY: 1\n };\n switch (placement) {\n case 'bottomLeft':\n {\n return {\n points: ['tl', 'bl'],\n offset: [0, 4],\n overflow: overflow\n };\n }\n case 'bottomRight':\n {\n return {\n points: ['tr', 'br'],\n offset: [0, 4],\n overflow: overflow\n };\n }\n case 'topLeft':\n {\n return {\n points: ['bl', 'tl'],\n offset: [0, -4],\n overflow: overflow\n };\n }\n case 'topRight':\n {\n return {\n points: ['br', 'tr'],\n offset: [0, -4],\n overflow: overflow\n };\n }\n default:\n {\n return {\n points: direction === 'rtl' ? ['tr', 'br'] : ['tl', 'bl'],\n offset: [0, 4],\n overflow: overflow\n };\n }\n }\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\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 CalendarOutlined from \"@ant-design/icons/es/icons/CalendarOutlined\";\nimport ClockCircleOutlined from \"@ant-design/icons/es/icons/ClockCircleOutlined\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport SwapRightOutlined from \"@ant-design/icons/es/icons/SwapRightOutlined\";\nimport classNames from 'classnames';\nimport { RangePicker as RCRangePicker } from 'rc-picker';\nimport * as React from 'react';\nimport { forwardRef, useContext, useImperativeHandle } from 'react';\nimport { Components, getTimeProps } from '.';\nimport { ConfigContext } from '../../config-provider';\nimport DisabledContext from '../../config-provider/DisabledContext';\nimport SizeContext from '../../config-provider/SizeContext';\nimport { FormItemInputContext } from '../../form/context';\nimport { useCompactItemContext } from '../../space/Compact';\nimport LocaleReceiver from '../../locale-provider/LocaleReceiver';\nimport { getMergedStatus, getStatusClassNames } from '../../_util/statusUtils';\nimport enUS from '../locale/en_US';\nimport { getRangePlaceholder, transPlacement2DropdownAlign } from '../util';\nimport warning from '../../_util/warning';\nexport default function generateRangePicker(generateConfig) {\n var RangePicker = /*#__PURE__*/forwardRef(function (props, ref) {\n var customizePrefixCls = props.prefixCls,\n customGetPopupContainer = props.getPopupContainer,\n className = props.className,\n placement = props.placement,\n customizeSize = props.size,\n customDisabled = props.disabled,\n _props$bordered = props.bordered,\n bordered = _props$bordered === void 0 ? true : _props$bordered,\n placeholder = props.placeholder,\n popupClassName = props.popupClassName,\n dropdownClassName = props.dropdownClassName,\n customStatus = props.status,\n restProps = __rest(props, [\"prefixCls\", \"getPopupContainer\", \"className\", \"placement\", \"size\", \"disabled\", \"bordered\", \"placeholder\", \"popupClassName\", \"dropdownClassName\", \"status\"]);\n var innerRef = React.useRef(null);\n var _useContext = useContext(ConfigContext),\n getPrefixCls = _useContext.getPrefixCls,\n direction = _useContext.direction,\n getPopupContainer = _useContext.getPopupContainer;\n var prefixCls = getPrefixCls('picker', customizePrefixCls);\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize,\n compactItemClassnames = _useCompactItemContex.compactItemClassnames;\n var format = props.format,\n showTime = props.showTime,\n picker = props.picker;\n var rootPrefixCls = getPrefixCls();\n var additionalOverrideProps = {};\n additionalOverrideProps = _extends(_extends(_extends({}, additionalOverrideProps), showTime ? getTimeProps(_extends({\n format: format,\n picker: picker\n }, showTime)) : {}), picker === 'time' ? getTimeProps(_extends(_extends({\n format: format\n }, props), {\n picker: picker\n })) : {});\n process.env.NODE_ENV !== \"production\" ? warning(!dropdownClassName, 'RangePicker', '`dropdownClassName` is deprecated which will be removed in next major version. Please use `popupClassName` instead.') : void 0;\n // ===================== Size =====================\n var size = React.useContext(SizeContext);\n var mergedSize = compactSize || customizeSize || size;\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== FormItemInput =====================\n var formItemContext = useContext(FormItemInputContext);\n var hasFeedback = formItemContext.hasFeedback,\n contextStatus = formItemContext.status,\n feedbackIcon = formItemContext.feedbackIcon;\n var suffixNode = /*#__PURE__*/React.createElement(React.Fragment, null, picker === 'time' ? /*#__PURE__*/React.createElement(ClockCircleOutlined, null) : /*#__PURE__*/React.createElement(CalendarOutlined, null), hasFeedback && feedbackIcon);\n useImperativeHandle(ref, function () {\n return {\n focus: function focus() {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n },\n blur: function blur() {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n }\n };\n });\n return /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"DatePicker\",\n defaultLocale: enUS\n }, function (contextLocale) {\n var locale = _extends(_extends({}, contextLocale), props.locale);\n return /*#__PURE__*/React.createElement(RCRangePicker, _extends({\n separator: /*#__PURE__*/React.createElement(\"span\", {\n \"aria-label\": \"to\",\n className: \"\".concat(prefixCls, \"-separator\")\n }, /*#__PURE__*/React.createElement(SwapRightOutlined, null)),\n disabled: mergedDisabled,\n ref: innerRef,\n dropdownAlign: transPlacement2DropdownAlign(direction, placement),\n placeholder: getRangePlaceholder(picker, locale, placeholder),\n suffixIcon: suffixNode,\n clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null),\n prevIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-prev-icon\")\n }),\n nextIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-next-icon\")\n }),\n superPrevIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-super-prev-icon\")\n }),\n superNextIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-super-next-icon\")\n }),\n allowClear: true,\n transitionName: \"\".concat(rootPrefixCls, \"-slide-up\")\n }, restProps, additionalOverrideProps, {\n className: classNames(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-\").concat(mergedSize), mergedSize), \"\".concat(prefixCls, \"-borderless\"), !bordered), getStatusClassNames(prefixCls, getMergedStatus(contextStatus, customStatus), hasFeedback), compactItemClassnames, className),\n locale: locale.lang,\n prefixCls: prefixCls,\n getPopupContainer: customGetPopupContainer || getPopupContainer,\n generateConfig: generateConfig,\n components: Components,\n direction: direction,\n dropdownClassName: popupClassName || dropdownClassName\n }));\n });\n });\n return RangePicker;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\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 CalendarOutlined from \"@ant-design/icons/es/icons/CalendarOutlined\";\nimport ClockCircleOutlined from \"@ant-design/icons/es/icons/ClockCircleOutlined\";\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport classNames from 'classnames';\nimport RCPicker from 'rc-picker';\nimport * as React from 'react';\nimport { forwardRef, useContext, useImperativeHandle } from 'react';\nimport { useCompactItemContext } from '../../space/Compact';\nimport { Components, getTimeProps } from '.';\nimport { ConfigContext } from '../../config-provider';\nimport DisabledContext from '../../config-provider/DisabledContext';\nimport SizeContext from '../../config-provider/SizeContext';\nimport { FormItemInputContext } from '../../form/context';\nimport LocaleReceiver from '../../locale-provider/LocaleReceiver';\nimport { getMergedStatus, getStatusClassNames } from '../../_util/statusUtils';\nimport warning from '../../_util/warning';\nimport enUS from '../locale/en_US';\nimport { getPlaceholder, transPlacement2DropdownAlign } from '../util';\nexport default function generatePicker(generateConfig) {\n function getPicker(picker, displayName) {\n var Picker = /*#__PURE__*/forwardRef(function (props, ref) {\n var customizePrefixCls = props.prefixCls,\n customizeGetPopupContainer = props.getPopupContainer,\n className = props.className,\n customizeSize = props.size,\n _props$bordered = props.bordered,\n bordered = _props$bordered === void 0 ? true : _props$bordered,\n placement = props.placement,\n placeholder = props.placeholder,\n popupClassName = props.popupClassName,\n dropdownClassName = props.dropdownClassName,\n customDisabled = props.disabled,\n customStatus = props.status,\n restProps = __rest(props, [\"prefixCls\", \"getPopupContainer\", \"className\", \"size\", \"bordered\", \"placement\", \"placeholder\", \"popupClassName\", \"dropdownClassName\", \"disabled\", \"status\"]);\n var _useContext = useContext(ConfigContext),\n getPrefixCls = _useContext.getPrefixCls,\n direction = _useContext.direction,\n getPopupContainer = _useContext.getPopupContainer;\n var prefixCls = getPrefixCls('picker', customizePrefixCls);\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize,\n compactItemClassnames = _useCompactItemContex.compactItemClassnames;\n var innerRef = React.useRef(null);\n var format = props.format,\n showTime = props.showTime;\n useImperativeHandle(ref, function () {\n return {\n focus: function focus() {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n },\n blur: function blur() {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n }\n };\n });\n var additionalProps = {\n showToday: true\n };\n var additionalOverrideProps = {};\n if (picker) {\n additionalOverrideProps.picker = picker;\n }\n var mergedPicker = picker || props.picker;\n additionalOverrideProps = _extends(_extends(_extends({}, additionalOverrideProps), showTime ? getTimeProps(_extends({\n format: format,\n picker: mergedPicker\n }, showTime)) : {}), mergedPicker === 'time' ? getTimeProps(_extends(_extends({\n format: format\n }, props), {\n picker: mergedPicker\n })) : {});\n var rootPrefixCls = getPrefixCls();\n // =================== Warning =====================\n process.env.NODE_ENV !== \"production\" ? warning(picker !== 'quarter', displayName, \"DatePicker.\".concat(displayName, \" is legacy usage. Please use DatePicker[picker='\").concat(picker, \"'] directly.\")) : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!dropdownClassName, mergedPicker === 'time' ? 'TimePicker' : 'DatePicker', '`dropdownClassName` is deprecated which will be removed in next major version. Please use `popupClassName` instead.') : void 0;\n // ===================== Size =====================\n var size = React.useContext(SizeContext);\n var mergedSize = compactSize || customizeSize || size;\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== FormItemInput =====================\n var formItemContext = useContext(FormItemInputContext);\n var hasFeedback = formItemContext.hasFeedback,\n contextStatus = formItemContext.status,\n feedbackIcon = formItemContext.feedbackIcon;\n var suffixNode = /*#__PURE__*/React.createElement(React.Fragment, null, mergedPicker === 'time' ? /*#__PURE__*/React.createElement(ClockCircleOutlined, null) : /*#__PURE__*/React.createElement(CalendarOutlined, null), hasFeedback && feedbackIcon);\n return /*#__PURE__*/React.createElement(LocaleReceiver, {\n componentName: \"DatePicker\",\n defaultLocale: enUS\n }, function (contextLocale) {\n var locale = _extends(_extends({}, contextLocale), props.locale);\n return /*#__PURE__*/React.createElement(RCPicker, _extends({\n ref: innerRef,\n placeholder: getPlaceholder(mergedPicker, locale, placeholder),\n suffixIcon: suffixNode,\n dropdownAlign: transPlacement2DropdownAlign(direction, placement),\n clearIcon: /*#__PURE__*/React.createElement(CloseCircleFilled, null),\n prevIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-prev-icon\")\n }),\n nextIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-next-icon\")\n }),\n superPrevIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-super-prev-icon\")\n }),\n superNextIcon: /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-super-next-icon\")\n }),\n allowClear: true,\n transitionName: \"\".concat(rootPrefixCls, \"-slide-up\")\n }, additionalProps, restProps, additionalOverrideProps, {\n locale: locale.lang,\n className: classNames(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-\").concat(mergedSize), mergedSize), \"\".concat(prefixCls, \"-borderless\"), !bordered), getStatusClassNames(prefixCls, getMergedStatus(contextStatus, customStatus), hasFeedback), compactItemClassnames, className),\n prefixCls: prefixCls,\n getPopupContainer: customizeGetPopupContainer || getPopupContainer,\n generateConfig: generateConfig,\n components: Components,\n direction: direction,\n disabled: mergedDisabled,\n dropdownClassName: popupClassName || dropdownClassName\n }));\n });\n });\n if (displayName) {\n Picker.displayName = displayName;\n }\n return Picker;\n }\n var DatePicker = getPicker();\n var WeekPicker = getPicker('week', 'WeekPicker');\n var MonthPicker = getPicker('month', 'MonthPicker');\n var YearPicker = getPicker('year', 'YearPicker');\n var TimePicker = getPicker('time', 'TimePicker');\n var QuarterPicker = getPicker('quarter', 'QuarterPicker');\n return {\n DatePicker: DatePicker,\n WeekPicker: WeekPicker,\n MonthPicker: MonthPicker,\n YearPicker: YearPicker,\n TimePicker: TimePicker,\n QuarterPicker: QuarterPicker\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { tuple } from '../../_util/type';\nimport PickerButton from '../PickerButton';\nimport PickerTag from '../PickerTag';\nimport generateRangePicker from './generateRangePicker';\nimport generateSinglePicker from './generateSinglePicker';\nexport var Components = {\n button: PickerButton,\n rangeItem: PickerTag\n};\nfunction toArray(list) {\n if (!list) {\n return [];\n }\n return Array.isArray(list) ? list : [list];\n}\nexport function getTimeProps(props) {\n var format = props.format,\n picker = props.picker,\n showHour = props.showHour,\n showMinute = props.showMinute,\n showSecond = props.showSecond,\n use12Hours = props.use12Hours;\n var firstFormat = toArray(format)[0];\n var showTimeObj = _extends({}, props);\n if (firstFormat && typeof firstFormat === 'string') {\n if (!firstFormat.includes('s') && showSecond === undefined) {\n showTimeObj.showSecond = false;\n }\n if (!firstFormat.includes('m') && showMinute === undefined) {\n showTimeObj.showMinute = false;\n }\n if (!firstFormat.includes('H') && !firstFormat.includes('h') && showHour === undefined) {\n showTimeObj.showHour = false;\n }\n if ((firstFormat.includes('a') || firstFormat.includes('A')) && use12Hours === undefined) {\n showTimeObj.use12Hours = true;\n }\n }\n if (picker === 'time') {\n return showTimeObj;\n }\n if (typeof firstFormat === 'function') {\n // format of showTime should use default when format is custom format function\n delete showTimeObj.format;\n }\n return {\n showTime: showTimeObj\n };\n}\nvar DataPickerPlacements = tuple('bottomLeft', 'bottomRight', 'topLeft', 'topRight');\nfunction generatePicker(generateConfig) {\n // =========================== Picker ===========================\n var _generateSinglePicker = generateSinglePicker(generateConfig),\n DatePicker = _generateSinglePicker.DatePicker,\n WeekPicker = _generateSinglePicker.WeekPicker,\n MonthPicker = _generateSinglePicker.MonthPicker,\n YearPicker = _generateSinglePicker.YearPicker,\n TimePicker = _generateSinglePicker.TimePicker,\n QuarterPicker = _generateSinglePicker.QuarterPicker;\n // ======================== Range Picker ========================\n var RangePicker = generateRangePicker(generateConfig);\n var MergedDatePicker = DatePicker;\n MergedDatePicker.WeekPicker = WeekPicker;\n MergedDatePicker.MonthPicker = MonthPicker;\n MergedDatePicker.YearPicker = YearPicker;\n MergedDatePicker.RangePicker = RangePicker;\n MergedDatePicker.TimePicker = TimePicker;\n MergedDatePicker.QuarterPicker = QuarterPicker;\n return MergedDatePicker;\n}\nexport default generatePicker;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Button from '../button';\nexport default function PickerButton(props) {\n return /*#__PURE__*/React.createElement(Button, _extends({\n size: \"small\",\n type: \"primary\"\n }, props));\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport Tag from '../tag';\nexport default function PickerTag(props) {\n return /*#__PURE__*/React.createElement(Tag, _extends({\n color: \"blue\"\n }, props));\n}","import momentGenerateConfig from \"rc-picker/es/generate/moment\";\nimport generatePicker from './generatePicker';\nvar DatePicker = generatePicker(momentGenerateConfig);\nexport default DatePicker;","import React from \"react\"\n// import Img from \"gatsby-image\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/comoLlegar.module.css\"\nimport BackgroundImage from \"gatsby-background-image\"\n\nconst ComoLlegar = ({ images, comollego, precauciones }) => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n\n // console.log(\"dataPrecauciones\", comollego)\n return (\n <>\n {!mobile ? (\n \n \n
\n
\n
\n {precauciones.map((covid, id) => {\n return (\n

\n {covid.title ?? \"\"}\n

\n )\n })}\n
\n
\n
    \n {precauciones[0].items.map((covid, i) => {\n return (\n covid.item && (\n \n

    \n {covid.item}\n

    \n \n )\n )\n })}\n
\n
\n
\n\n
\n

CÓMO LLEGAR

\n
\n
\n \n
\n
\n \n
\n
\n
\n

\n MEDIOS DE TRANSPORTE\n

\n
\n
\n

\n Estos son los medios de transporte que pasan cerca de\n nuestra casa:\n

- Colectivo:{\" \"}\n {comollego[0].colectivos.map((col, i) => {\n return (\n <>\n \n {col.colectivo}\n \n ,{\" \"}\n \n )\n })}\n

- Tren:{\" \"}\n {comollego[0].trenes.map((tren, i) => {\n return (\n <>\n \n {tren.tren}\n \n ,{\" \"}\n \n )\n })}\n La dirección es: Av 12 de Octubre y Gran Canaria.\n

\n
\n
\n

\n {comollego[0].text}\n

\n
\n \n
\n
\n

{comollego[0].title}

\n
\n
\n

\n {comollego[0].subtitle}\n

\n

\n {/* 25% de Descuento CODIGO TOURQUILMES */}\n

\n
\n
\n
\n
\n
\n \n ) : (\n \n
\n
\n

CÓMO LLEGAR

\n
\n
\n \n
\n

MEDIOS DE TRANSPORTE

\n
\n
\n

\n Estos son los medios de transporte que pasan cerca de nuestra\n casa:\n

- Colectivo:{\" \"}\n {comollego[0].colectivos.map((col, i) => {\n return (\n <>\n \n {col.colectivo}\n \n ,{\" \"}\n \n )\n })}\n

- Tren:{\" \"}\n {comollego[0].trenes.map((tren, i) => {\n return (\n <>\n \n {tren.tren}\n \n ,{\" \"}\n \n )\n })}\n La dirección es: Av 12 de Octubre y Gran Canaria.\n

\n
\n
\n

{comollego[0].text}

\n
\n \n
\n
\n
\n

{comollego[0].title}

\n
\n
\n

{comollego[0].subtitle}

\n

\n {/* 25% de Descuento CODIGO TOURQUILMES */}\n

\n
\n
\n \n )}\n \n )\n}\n\nexport default ComoLlegar\n","// This icon file is generated automatically.\nvar RightOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }]\n },\n \"name\": \"right\",\n \"theme\": \"outlined\"\n};\nexport default RightOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(RightOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'RightOutlined';\n}\nexport default RefIcon;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\n\n/* eslint-disable no-underscore-dangle */\n\n/* eslint-disable react/prop-types */\nimport * as React from 'react';\nimport classnames from 'classnames';\nvar PanelContent = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _classnames;\n var prefixCls = props.prefixCls,\n forceRender = props.forceRender,\n className = props.className,\n style = props.style,\n children = props.children,\n isActive = props.isActive,\n role = props.role;\n var _React$useState = React.useState(isActive || forceRender),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n rendered = _React$useState2[0],\n setRendered = _React$useState2[1];\n React.useEffect(function () {\n if (forceRender || isActive) {\n setRendered(true);\n }\n }, [forceRender, isActive]);\n if (!rendered) {\n return null;\n }\n return /*#__PURE__*/React.createElement(\"div\", {\n ref: ref,\n className: classnames(\"\".concat(prefixCls, \"-content\"), (_classnames = {}, _defineProperty(_classnames, \"\".concat(prefixCls, \"-content-active\"), isActive), _defineProperty(_classnames, \"\".concat(prefixCls, \"-content-inactive\"), !isActive), _classnames), className),\n style: style,\n role: role\n }, /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-content-box\")\n }, children));\n});\nPanelContent.displayName = 'PanelContent';\nexport default PanelContent;","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 _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 = [\"className\", \"id\", \"style\", \"prefixCls\", \"headerClass\", \"children\", \"isActive\", \"destroyInactivePanel\", \"accordion\", \"forceRender\", \"openMotion\", \"extra\", \"collapsible\"];\n\n/* eslint-disable react/prop-types */\nimport classNames from 'classnames';\nimport CSSMotion from 'rc-motion';\nimport * as React from 'react';\nimport shallowEqual from 'shallowequal';\nimport PanelContent from './PanelContent';\nvar CollapsePanel = /*#__PURE__*/function (_React$Component) {\n _inherits(CollapsePanel, _React$Component);\n var _super = _createSuper(CollapsePanel);\n function CollapsePanel() {\n var _this;\n _classCallCheck(this, CollapsePanel);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _this.onItemClick = function () {\n var _this$props = _this.props,\n onItemClick = _this$props.onItemClick,\n panelKey = _this$props.panelKey;\n if (typeof onItemClick === 'function') {\n onItemClick(panelKey);\n }\n };\n _this.handleKeyPress = function (e) {\n if (e.key === 'Enter' || e.keyCode === 13 || e.which === 13) {\n _this.onItemClick();\n }\n };\n _this.renderIcon = function () {\n var _this$props2 = _this.props,\n showArrow = _this$props2.showArrow,\n expandIcon = _this$props2.expandIcon,\n prefixCls = _this$props2.prefixCls,\n collapsible = _this$props2.collapsible;\n if (!showArrow) {\n return null;\n }\n var iconNode = typeof expandIcon === 'function' ? expandIcon(_this.props) : /*#__PURE__*/React.createElement(\"i\", {\n className: \"arrow\"\n });\n return iconNode && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-expand-icon\"),\n onClick: collapsible === 'header' || collapsible === 'icon' ? _this.onItemClick : null\n }, iconNode);\n };\n _this.renderTitle = function () {\n var _this$props3 = _this.props,\n header = _this$props3.header,\n prefixCls = _this$props3.prefixCls,\n collapsible = _this$props3.collapsible;\n return /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-header-text\"),\n onClick: collapsible === 'header' ? _this.onItemClick : null\n }, header);\n };\n return _this;\n }\n _createClass(CollapsePanel, [{\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps) {\n return !shallowEqual(this.props, nextProps);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _classNames, _classNames2;\n var _this$props4 = this.props,\n className = _this$props4.className,\n id = _this$props4.id,\n style = _this$props4.style,\n prefixCls = _this$props4.prefixCls,\n headerClass = _this$props4.headerClass,\n children = _this$props4.children,\n isActive = _this$props4.isActive,\n destroyInactivePanel = _this$props4.destroyInactivePanel,\n accordion = _this$props4.accordion,\n forceRender = _this$props4.forceRender,\n openMotion = _this$props4.openMotion,\n extra = _this$props4.extra,\n collapsible = _this$props4.collapsible,\n rest = _objectWithoutProperties(_this$props4, _excluded);\n var disabled = collapsible === 'disabled';\n var collapsibleHeader = collapsible === 'header';\n var collapsibleIcon = collapsible === 'icon';\n var itemCls = classNames((_classNames = {}, _defineProperty(_classNames, \"\".concat(prefixCls, \"-item\"), true), _defineProperty(_classNames, \"\".concat(prefixCls, \"-item-active\"), isActive), _defineProperty(_classNames, \"\".concat(prefixCls, \"-item-disabled\"), disabled), _classNames), className);\n var headerCls = classNames(\"\".concat(prefixCls, \"-header\"), (_classNames2 = {}, _defineProperty(_classNames2, headerClass, headerClass), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-header-collapsible-only\"), collapsibleHeader), _defineProperty(_classNames2, \"\".concat(prefixCls, \"-icon-collapsible-only\"), collapsibleIcon), _classNames2));\n /** header 节点属性 */\n\n var headerProps = {\n className: headerCls,\n 'aria-expanded': isActive,\n 'aria-disabled': disabled,\n onKeyPress: this.handleKeyPress\n };\n if (!collapsibleHeader && !collapsibleIcon) {\n headerProps.onClick = this.onItemClick;\n headerProps.role = accordion ? 'tab' : 'button';\n headerProps.tabIndex = disabled ? -1 : 0;\n }\n var ifExtraExist = extra !== null && extra !== undefined && typeof extra !== 'boolean'; // https://github.com/ant-design/ant-design/pull/37419#issuecomment-1238812797\n\n delete rest.header;\n delete rest.panelKey;\n delete rest.onItemClick;\n delete rest.showArrow;\n delete rest.expandIcon;\n return /*#__PURE__*/React.createElement(\"div\", _extends({}, rest, {\n className: itemCls,\n style: style,\n id: id\n }), /*#__PURE__*/React.createElement(\"div\", headerProps, this.renderIcon(), this.renderTitle(), ifExtraExist && /*#__PURE__*/React.createElement(\"div\", {\n className: \"\".concat(prefixCls, \"-extra\")\n }, extra)), /*#__PURE__*/React.createElement(CSSMotion, _extends({\n visible: isActive,\n leavedClassName: \"\".concat(prefixCls, \"-content-hidden\")\n }, openMotion, {\n forceRender: forceRender,\n removeOnLeave: destroyInactivePanel\n }), function (_ref, ref) {\n var motionClassName = _ref.className,\n motionStyle = _ref.style;\n return /*#__PURE__*/React.createElement(PanelContent, {\n ref: ref,\n prefixCls: prefixCls,\n className: motionClassName,\n style: motionStyle,\n isActive: isActive,\n forceRender: forceRender,\n role: accordion ? 'tabpanel' : null\n }, children);\n }));\n }\n }]);\n return CollapsePanel;\n}(React.Component);\nCollapsePanel.defaultProps = {\n showArrow: true,\n isActive: false,\n onItemClick: function onItemClick() {},\n headerClass: '',\n forceRender: false\n};\nexport default CollapsePanel;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\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 _inherits from \"@babel/runtime/helpers/esm/inherits\";\nimport _createSuper from \"@babel/runtime/helpers/esm/createSuper\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\n\n/* eslint-disable react/prop-types */\nimport classNames from 'classnames';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport * as React from 'react';\nimport shallowEqual from 'shallowequal';\nimport CollapsePanel from './Panel';\nfunction getActiveKeysArray(activeKey) {\n var currentActiveKey = activeKey;\n if (!Array.isArray(currentActiveKey)) {\n var activeKeyType = _typeof(currentActiveKey);\n currentActiveKey = activeKeyType === 'number' || activeKeyType === 'string' ? [currentActiveKey] : [];\n }\n return currentActiveKey.map(function (key) {\n return String(key);\n });\n}\nvar Collapse = /*#__PURE__*/function (_React$Component) {\n _inherits(Collapse, _React$Component);\n var _super = _createSuper(Collapse);\n function Collapse(_props) {\n var _this;\n _classCallCheck(this, Collapse);\n _this = _super.call(this, _props);\n _this.onClickItem = function (key) {\n var activeKey = _this.state.activeKey;\n if (_this.props.accordion) {\n activeKey = activeKey[0] === key ? [] : [key];\n } else {\n activeKey = _toConsumableArray(activeKey);\n var index = activeKey.indexOf(key);\n var isActive = index > -1;\n if (isActive) {\n // remove active state\n activeKey.splice(index, 1);\n } else {\n activeKey.push(key);\n }\n }\n _this.setActiveKey(activeKey);\n };\n _this.getNewChild = function (child, index) {\n if (!child) return null;\n var activeKey = _this.state.activeKey;\n var _this$props = _this.props,\n prefixCls = _this$props.prefixCls,\n openMotion = _this$props.openMotion,\n accordion = _this$props.accordion,\n rootDestroyInactivePanel = _this$props.destroyInactivePanel,\n expandIcon = _this$props.expandIcon,\n collapsible = _this$props.collapsible; // If there is no key provide, use the panel order as default key\n\n var key = child.key || String(index);\n var _child$props = child.props,\n header = _child$props.header,\n headerClass = _child$props.headerClass,\n destroyInactivePanel = _child$props.destroyInactivePanel,\n childCollapsible = _child$props.collapsible;\n var isActive = false;\n if (accordion) {\n isActive = activeKey[0] === key;\n } else {\n isActive = activeKey.indexOf(key) > -1;\n }\n var mergeCollapsible = childCollapsible !== null && childCollapsible !== void 0 ? childCollapsible : collapsible;\n var props = {\n key: key,\n panelKey: key,\n header: header,\n headerClass: headerClass,\n isActive: isActive,\n prefixCls: prefixCls,\n destroyInactivePanel: destroyInactivePanel !== null && destroyInactivePanel !== void 0 ? destroyInactivePanel : rootDestroyInactivePanel,\n openMotion: openMotion,\n accordion: accordion,\n children: child.props.children,\n onItemClick: mergeCollapsible === 'disabled' ? null : _this.onClickItem,\n expandIcon: expandIcon,\n collapsible: mergeCollapsible\n }; // https://github.com/ant-design/ant-design/issues/20479\n\n if (typeof child.type === 'string') {\n return child;\n }\n Object.keys(props).forEach(function (propName) {\n if (typeof props[propName] === 'undefined') {\n delete props[propName];\n }\n });\n return /*#__PURE__*/React.cloneElement(child, props);\n };\n _this.getItems = function () {\n var children = _this.props.children;\n return toArray(children).map(_this.getNewChild);\n };\n _this.setActiveKey = function (activeKey) {\n if (!('activeKey' in _this.props)) {\n _this.setState({\n activeKey: activeKey\n });\n }\n _this.props.onChange(_this.props.accordion ? activeKey[0] : activeKey);\n };\n var _activeKey = _props.activeKey,\n defaultActiveKey = _props.defaultActiveKey;\n var currentActiveKey = defaultActiveKey;\n if ('activeKey' in _props) {\n currentActiveKey = _activeKey;\n }\n _this.state = {\n activeKey: getActiveKeysArray(currentActiveKey)\n };\n return _this;\n }\n _createClass(Collapse, [{\n key: \"shouldComponentUpdate\",\n value: function shouldComponentUpdate(nextProps, nextState) {\n return !shallowEqual(this.props, nextProps) || !shallowEqual(this.state, nextState);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _classNames;\n var _this$props2 = this.props,\n prefixCls = _this$props2.prefixCls,\n className = _this$props2.className,\n style = _this$props2.style,\n accordion = _this$props2.accordion;\n var collapseClassName = classNames((_classNames = {}, _defineProperty(_classNames, prefixCls, true), _defineProperty(_classNames, className, !!className), _classNames));\n return /*#__PURE__*/React.createElement(\"div\", {\n className: collapseClassName,\n style: style,\n role: accordion ? 'tablist' : null\n }, this.getItems());\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps) {\n var newState = {};\n if ('activeKey' in nextProps) {\n newState.activeKey = getActiveKeysArray(nextProps.activeKey);\n }\n return newState;\n }\n }]);\n return Collapse;\n}(React.Component);\nCollapse.defaultProps = {\n prefixCls: 'rc-collapse',\n onChange: function onChange() {},\n accordion: false,\n destroyInactivePanel: false\n};\nCollapse.Panel = CollapsePanel;\nexport default Collapse;","import Collapse from './Collapse';\nexport default Collapse;\nvar Panel = Collapse.Panel;\nexport { Panel };","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport RightOutlined from \"@ant-design/icons/es/icons/RightOutlined\";\nimport classNames from 'classnames';\nimport RcCollapse from 'rc-collapse';\nimport * as React from 'react';\nimport toArray from \"rc-util/es/Children/toArray\";\nimport omit from \"rc-util/es/omit\";\nimport { ConfigContext } from '../config-provider';\nimport collapseMotion from '../_util/motion';\nimport { cloneElement } from '../_util/reactNode';\nimport warning from '../_util/warning';\nimport CollapsePanel from './CollapsePanel';\nvar Collapse = function Collapse(props) {\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n var customizePrefixCls = props.prefixCls,\n _props$className = props.className,\n className = _props$className === void 0 ? '' : _props$className,\n _props$bordered = props.bordered,\n bordered = _props$bordered === void 0 ? true : _props$bordered,\n ghost = props.ghost,\n _props$expandIconPosi = props.expandIconPosition,\n expandIconPosition = _props$expandIconPosi === void 0 ? 'start' : _props$expandIconPosi;\n var prefixCls = getPrefixCls('collapse', customizePrefixCls);\n // Warning if use legacy type `expandIconPosition`\n process.env.NODE_ENV !== \"production\" ? warning(expandIconPosition !== 'left' && expandIconPosition !== 'right', 'Collapse', '`expandIconPosition` with `left` or `right` is deprecated. Please use `start` or `end` instead.') : void 0;\n // Align with logic position\n var mergedExpandIconPosition = React.useMemo(function () {\n if (expandIconPosition === 'left') {\n return 'start';\n }\n return expandIconPosition === 'right' ? 'end' : expandIconPosition;\n }, [expandIconPosition]);\n var renderExpandIcon = function renderExpandIcon() {\n var panelProps = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n var expandIcon = props.expandIcon;\n var icon = expandIcon ? expandIcon(panelProps) : ( /*#__PURE__*/React.createElement(RightOutlined, {\n rotate: panelProps.isActive ? 90 : undefined\n }));\n return cloneElement(icon, function () {\n return {\n className: classNames(icon.props.className, \"\".concat(prefixCls, \"-arrow\"))\n };\n });\n };\n var collapseClassName = classNames(\"\".concat(prefixCls, \"-icon-position-\").concat(mergedExpandIconPosition), _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-borderless\"), !bordered), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-ghost\"), !!ghost), className);\n var openMotion = _extends(_extends({}, collapseMotion), {\n motionAppear: false,\n leavedClassName: \"\".concat(prefixCls, \"-content-hidden\")\n });\n var getItems = function getItems() {\n var children = props.children;\n return toArray(children).map(function (child, index) {\n var _a;\n if ((_a = child.props) === null || _a === void 0 ? void 0 : _a.disabled) {\n var key = child.key || String(index);\n var _child$props = child.props,\n disabled = _child$props.disabled,\n collapsible = _child$props.collapsible;\n var childProps = _extends(_extends({}, omit(child.props, ['disabled'])), {\n key: key,\n collapsible: collapsible !== null && collapsible !== void 0 ? collapsible : disabled ? 'disabled' : undefined\n });\n return cloneElement(child, childProps);\n }\n return child;\n });\n };\n return /*#__PURE__*/React.createElement(RcCollapse, _extends({\n openMotion: openMotion\n }, props, {\n expandIcon: renderExpandIcon,\n prefixCls: prefixCls,\n className: collapseClassName\n }), getItems());\n};\nCollapse.Panel = CollapsePanel;\nexport default Collapse;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport RcCollapse from 'rc-collapse';\nimport * as React from 'react';\nimport { ConfigContext } from '../config-provider';\nimport warning from '../_util/warning';\nvar CollapsePanel = function CollapsePanel(props) {\n process.env.NODE_ENV !== \"production\" ? warning(!('disabled' in props), 'Collapse.Panel', '`disabled` is deprecated. Please use `collapsible=\"disabled\"` instead.') : void 0;\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls;\n var customizePrefixCls = props.prefixCls,\n _props$className = props.className,\n className = _props$className === void 0 ? '' : _props$className,\n _props$showArrow = props.showArrow,\n showArrow = _props$showArrow === void 0 ? true : _props$showArrow;\n var prefixCls = getPrefixCls('collapse', customizePrefixCls);\n var collapsePanelClassName = classNames(_defineProperty({}, \"\".concat(prefixCls, \"-no-arrow\"), !showArrow), className);\n return /*#__PURE__*/React.createElement(RcCollapse.Panel, _extends({}, props, {\n prefixCls: prefixCls,\n className: collapsePanelClassName\n }));\n};\nexport default CollapsePanel;","import Collapse from './Collapse';\nexport default Collapse;","import React, { useState } from \"react\"\nimport { Collapse } from \"antd\"\nimport { DownOutlined } from \"@ant-design/icons\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/preguntasFrecuentes.module.css\"\n\nconst { Panel } = Collapse\n\nconst PreguntasFrecuentes = ({ questions }) => {\n const [lastVisibleDesktopQuestion, setLastVisibleDesktopQuestion] = useState(\n 6\n )\n const [lastVisibleMobileQuestion, setLastVisibleMobileQuestion] = useState(3)\n\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n\n const seeAllQuestions = () => {\n if (mobile) {\n setLastVisibleMobileQuestion(26)\n } else {\n setLastVisibleDesktopQuestion(26)\n }\n }\n\n\n return (\n <>\n
\n
\n

PREGUNTAS FRECUENTES

\n
\n
\n
\n }\n onChange={e => {\n if (e.length > 0) {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"FAQ\",\n event_action: `Expand`,\n event_label: `${\n questions.sort((a, b) => a.index - b.index)[e[e.length - 1]]\n .question\n }`,\n component_name: \"boton_ver_mas\",\n })\n }\n }}\n >\n {mobile\n ? questions\n .sort((a, b) => a.index - b.index)\n .map(\n (item, index) =>\n index < lastVisibleMobileQuestion && (\n \n
{item.answer}
\n
\n )\n )\n : questions\n .sort((a, b) => a.index - b.index)\n .map(\n (item, index) =>\n !(index % 2) &&\n index < lastVisibleDesktopQuestion && (\n \n
{item.answer}
\n
\n )\n )}\n \n }\n onChange={e => {\n if (e.length > 0) {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"FAQ\",\n event_action: `Expand`,\n event_label: `${\n questions.sort((a, b) => a.index - b.index)[e[e.length - 1]]\n .question\n }`,\n component_name: \"boton_ver_mas\",\n })\n }\n }}\n >\n {mobile\n ? null\n : questions\n .sort((a, b) => a.index - b.index)\n .map(\n (item, index) =>\n index % 2 &&\n index < lastVisibleDesktopQuestion && (\n \n {item.answer}\n \n )\n )}\n \n
\n {lastVisibleMobileQuestion < 26 && lastVisibleDesktopQuestion < 26 && (\n
\n

\n Ver todas\n

\n
\n )}\n
\n \n )\n}\n\nexport default PreguntasFrecuentes\n","import React, { useState, useEffect } from \"react\"\nimport HomeTour from \"./home\"\nimport TourCompleto from \"./tourCompleto\"\nimport LeleCristobal from \"./leleCristobal\"\nimport ComoLlegar from \"./comoLlegar\"\nimport PreguntasFrecuentes from \"./preguntasFrecuentes\"\nimport CompartiExp from \"./compartiExp\"\n\nconst QuilmesTourIndex = ({\n images,\n setFecha,\n setTour,\n setPersonas,\n personas,\n fecha,\n tour,\n tourOptions,\n dateOptions,\n dateOptionsOfCurrentTour,\n onDateChange,\n onTourChange,\n availability,\n counterUp,\n counterDown,\n questions,\n comollego,\n precauciones,\n\n}) => {\n return (\n <>\n {images && (\n <>\n \n {/*
*/}\n {/* */}\n {/*
*/}\n {/*/!* *!/*/}\n {/**/}\n {/**/}\n {/**/}\n \n )}\n \n )\n}\n\nexport default QuilmesTourIndex\n","import React, { useEffect } from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/reservaStep1.module.css\"\nimport { Select, DatePicker, Space } from \"antd\"\nimport calendarIcon from \"../../images/calendar-gray.svg\"\nimport { PlusCircleOutlined, MinusCircleOutlined } from \"@ant-design/icons\"\nimport moment from \"moment\"\nimport \"antd/dist/antd.css\"\nimport \"../../styles/quilmesTourStyles/index.css\"\n\nconst { Option } = Select\n\nconst ReservaSelects = ({\n fecha,\n tour,\n setPersonas,\n setFecha,\n setTour,\n personas,\n onDateChange,\n onTourChange,\n tourOptions,\n dateOptionsOfCurrentTour,\n counterUp,\n counterDown,\n addPointsToNumber,\n}) => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n\n function disabledDate(current) {\n return (\n current < moment().endOf(\"day\") ||\n !dateOptionsOfCurrentTour.some(\n date => date.fecha === current.format(\"YYYY-MM-DD\")\n )\n )\n }\n\n function cleanAllData() {\n setPersonas(1)\n setFecha(\"\")\n setTour({ name: null, id: null })\n }\n\n return (\n
\n
\n

Elegí una fecha y el horario.

\n
\n
\n
\n \n {tourOptions.map((tour, index) => (\n \n {tour.tourdescrip}\n \n ))}\n \n
\n\n
\n \n \n }\n />\n \n
\n
\n
\n \n

\n {personas} PERSONA{personas > 1 && \"S\"}\n

\n \n
\n
\n
\n
\n Total: ${tour && addPointsToNumber(tour.precio * personas)}\n
\n
\n
\n
\n

Limpiar búsqueda

\n
\n
\n
\n
\n )\n}\n\nexport default ReservaSelects\n","import React from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/reservaStep2.module.css\"\nimport \"antd/dist/antd.css\"\nimport \"../../styles/quilmesTourStyles/index.css\"\n\nconst ReservaSteps = ({ images }) => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n\n return (\n
\n
\n

RESERVAR Y COMPRAR

\n
\n
\n
\n
\n

1

\n
\n

FECHA

\n
\n
\n
\n
\n

2

\n
\n

RESUMEN

\n
\n
\n
\n
\n
\n

3

\n
\n

PAGO

\n
\n
\n
\n )\n}\n\nexport default ReservaSteps\n","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { useContext, useMemo } from 'react';\nimport { ConfigContext } from '../config-provider';\nimport { FormItemInputContext } from '../form/context';\nvar Group = function Group(props) {\n var _useContext = useContext(ConfigContext),\n getPrefixCls = _useContext.getPrefixCls,\n direction = _useContext.direction;\n var customizePrefixCls = props.prefixCls,\n _props$className = props.className,\n className = _props$className === void 0 ? '' : _props$className;\n var prefixCls = getPrefixCls('input-group', customizePrefixCls);\n var cls = classNames(prefixCls, _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-lg\"), props.size === 'large'), \"\".concat(prefixCls, \"-sm\"), props.size === 'small'), \"\".concat(prefixCls, \"-compact\"), props.compact), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), className);\n var formItemContext = useContext(FormItemInputContext);\n var groupFormItemContext = useMemo(function () {\n return _extends(_extends({}, formItemContext), {\n isFormItemInput: false\n });\n }, [formItemContext]);\n return /*#__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 var event = e;\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 // {\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 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 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 if (cursor) {\n var 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 }\n }\n}\nexport function fixControlledValue(value) {\n if (typeof value === 'undefined' || value === null) {\n return '';\n }\n return String(value);\n}","import _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\";\nvar BaseInput = function BaseInput(props) {\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 var containerRef = useRef(null);\n var onInputClick = function onInputClick(e) {\n var _containerRef$current;\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 var getClearIcon = function getClearIcon() {\n var _classNames;\n if (!allowClear) {\n return null;\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\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 var element = /*#__PURE__*/cloneElement(inputElement, {\n value: value,\n hidden: hidden\n }); // ================== Prefix & Suffix ================== //\n\n if (hasPrefixSuffix(props)) {\n var _classNames2;\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);\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: null,\n value: value,\n hidden: null\n }), suffixNode);\n } // ================== Addon ================== //\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);\n var mergedGroupClassName = classNames(\"\".concat(prefixCls, \"-group-wrapper\"), className, groupClassName); // 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: null,\n hidden: null\n }), addonAfter && /*#__PURE__*/React.createElement(\"span\", {\n className: addonCls\n }, addonAfter)));\n }\n return element;\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\"];\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 rest = _objectWithoutProperties(props, _excluded);\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 var _useState = useState(false),\n _useState2 = _slicedToArray(_useState, 2),\n focused = _useState2[0],\n setFocused = _useState2[1];\n var inputRef = useRef(null);\n var focus = function focus(option) {\n if (inputRef.current) {\n triggerFocus(inputRef.current, option);\n }\n };\n useImperativeHandle(ref, function () {\n return {\n focus: focus,\n blur: function blur() {\n var _inputRef$current;\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 (_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 (_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 var handleChange = function handleChange(e) {\n if (props.value === undefined) {\n setValue(e.target.value);\n }\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange);\n }\n };\n var handleKeyDown = function handleKeyDown(e) {\n if (onPressEnter && e.key === 'Enter') {\n onPressEnter(e);\n }\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(e);\n };\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n var handleBlur = function handleBlur(e) {\n setFocused(false);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n var handleReset = function handleReset(e) {\n setValue('');\n focus();\n if (inputRef.current) {\n resolveOnChange(inputRef.current, e, onChange);\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',\n // 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', '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, !hasAddon(props) && !hasPrefixSuffix(props) && className),\n ref: inputRef,\n size: htmlSize,\n type: type\n }));\n };\n var getSuffix = function getSuffix() {\n // Max length value\n var hasMaxLength = Number(maxLength) > 0;\n if (suffix || showCount) {\n var val = fixControlledValue(value);\n var valueLength = _toConsumableArray(val).length;\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 return null;\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 }));\n});\nexport default Input;","import BaseInput from \"./BaseInput\";\nimport Input from \"./Input\";\nexport { BaseInput };\nexport default Input;","import { useEffect, useRef } from 'react';\nexport default function useRemovePasswordTimeout(inputRef, triggerOnMount) {\n var removePasswordTimeoutRef = useRef([]);\n var removePasswordTimeout = function removePasswordTimeout() {\n removePasswordTimeoutRef.current.push(setTimeout(function () {\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(function () {\n if (triggerOnMount) {\n removePasswordTimeout();\n }\n return function () {\n return removePasswordTimeoutRef.current.forEach(function (timer) {\n if (timer) {\n clearTimeout(timer);\n }\n });\n };\n }, []);\n return removePasswordTimeout;\n}","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\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 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';\nexport function fixControlledValue(value) {\n if (typeof value === 'undefined' || value === null) {\n return '';\n }\n return String(value);\n}\nexport function resolveOnChange(target, e, onChange, targetValue) {\n if (!onChange) {\n return;\n }\n var event = e;\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 // {\n // setQuery((prevStatus) => e.target.value);\n // }}\n // />\n var currentTarget = target.cloneNode(true);\n // click clear icon\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 }\n // Trigger by composition event, this means we need force change the input value\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 onChange(event);\n}\nexport function triggerFocus(element, option) {\n if (!element) {\n return;\n }\n element.focus(option);\n // Selection content\n var _ref = option || {},\n cursor = _ref.cursor;\n if (cursor) {\n var 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}\nvar Input = /*#__PURE__*/forwardRef(function (props, ref) {\n var customizePrefixCls = props.prefixCls,\n _props$bordered = props.bordered,\n bordered = _props$bordered === void 0 ? true : _props$bordered,\n customStatus = props.status,\n customSize = props.size,\n customDisabled = props.disabled,\n onBlur = props.onBlur,\n onFocus = props.onFocus,\n suffix = props.suffix,\n allowClear = props.allowClear,\n addonAfter = props.addonAfter,\n addonBefore = props.addonBefore,\n className = props.className,\n onChange = props.onChange,\n rest = __rest(props, [\"prefixCls\", \"bordered\", \"status\", \"size\", \"disabled\", \"onBlur\", \"onFocus\", \"suffix\", \"allowClear\", \"addonAfter\", \"addonBefore\", \"className\", \"onChange\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction,\n input = _React$useContext.input;\n var prefixCls = getPrefixCls('input', customizePrefixCls);\n var inputRef = useRef(null);\n // ===================== Compact Item =====================\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize,\n compactItemClassnames = _useCompactItemContex.compactItemClassnames;\n // ===================== Size =====================\n var size = React.useContext(SizeContext);\n var mergedSize = compactSize || customSize || size;\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n // ===================== Status =====================\n var _useContext = useContext(FormItemInputContext),\n contextStatus = _useContext.status,\n hasFeedback = _useContext.hasFeedback,\n feedbackIcon = _useContext.feedbackIcon;\n var mergedStatus = getMergedStatus(contextStatus, customStatus);\n // ===================== Focus warning =====================\n var inputHasPrefixSuffix = hasPrefixSuffix(props) || !!hasFeedback;\n var prevHasPrefixSuffix = useRef(inputHasPrefixSuffix);\n useEffect(function () {\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 var removePasswordTimeout = useRemovePasswordTimeout(inputRef, true);\n var handleBlur = function handleBlur(e) {\n removePasswordTimeout();\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n var handleFocus = function handleFocus(e) {\n removePasswordTimeout();\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n var handleChange = function handleChange(e) {\n removePasswordTimeout();\n onChange === null || onChange === void 0 ? void 0 : onChange(e);\n };\n var suffixNode = (hasFeedback || suffix) && ( /*#__PURE__*/React.createElement(React.Fragment, null, suffix, hasFeedback && feedbackIcon));\n // Allow clear\n var 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 /*#__PURE__*/React.createElement(RcInput, _extends({\n ref: composeRef(ref, inputRef),\n prefixCls: prefixCls,\n autoComplete: input === null || input === void 0 ? void 0 : input.autoComplete\n }, rest, {\n disabled: mergedDisabled || undefined,\n onBlur: handleBlur,\n onFocus: handleFocus,\n suffix: suffixNode,\n allowClear: mergedAllowClear,\n className: classNames(className, 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 inputClassName: classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-sm\"), mergedSize === 'small'), \"\".concat(prefixCls, \"-lg\"), mergedSize === 'large'), \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-borderless\"), !bordered), !inputHasPrefixSuffix && getStatusClassNames(prefixCls, mergedStatus)),\n affixWrapperClassName: classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-affix-wrapper-sm\"), mergedSize === 'small'), \"\".concat(prefixCls, \"-affix-wrapper-lg\"), mergedSize === 'large'), \"\".concat(prefixCls, \"-affix-wrapper-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-affix-wrapper-borderless\"), !bordered), getStatusClassNames(\"\".concat(prefixCls, \"-affix-wrapper\"), mergedStatus, hasFeedback)),\n wrapperClassName: classNames(_defineProperty({}, \"\".concat(prefixCls, \"-group-rtl\"), direction === 'rtl')),\n groupClassName: classNames(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-group-wrapper-sm\"), mergedSize === 'small'), \"\".concat(prefixCls, \"-group-wrapper-lg\"), mergedSize === 'large'), \"\".concat(prefixCls, \"-group-wrapper-rtl\"), direction === 'rtl'), getStatusClassNames(\"\".concat(prefixCls, \"-group-wrapper\"), mergedStatus, hasFeedback))\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 = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }, {\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }]\n },\n \"name\": \"eye-invisible\",\n \"theme\": \"outlined\"\n};\nexport default EyeInvisibleOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(EyeInvisibleOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'EyeInvisibleOutlined';\n}\nexport default RefIcon;","// This icon file is generated automatically.\nvar EyeOutlined = {\n \"icon\": {\n \"tag\": \"svg\",\n \"attrs\": {\n \"viewBox\": \"64 64 896 896\",\n \"focusable\": \"false\"\n },\n \"children\": [{\n \"tag\": \"path\",\n \"attrs\": {\n \"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\"\n }\n }]\n },\n \"name\": \"eye\",\n \"theme\": \"outlined\"\n};\nexport default EyeOutlined;","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};\nvar RefIcon = /*#__PURE__*/React.forwardRef(EyeOutlined);\nif (process.env.NODE_ENV !== 'production') {\n RefIcon.displayName = 'EyeOutlined';\n}\nexport default RefIcon;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _typeof from \"@babel/runtime/helpers/esm/typeof\";\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 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 { ConfigConsumer } from '../config-provider';\nimport useRemovePasswordTimeout from './hooks/useRemovePasswordTimeout';\nimport Input from './Input';\nvar defaultIconRender = function defaultIconRender(visible) {\n return visible ? /*#__PURE__*/React.createElement(EyeOutlined, null) : /*#__PURE__*/React.createElement(EyeInvisibleOutlined, null);\n};\nvar ActionMap = {\n click: 'onClick',\n hover: 'onMouseOver'\n};\nvar Password = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$visibilityTogg = props.visibilityToggle,\n visibilityToggle = _props$visibilityTogg === void 0 ? true : _props$visibilityTogg;\n var visibilityControlled = _typeof(visibilityToggle) === 'object' && visibilityToggle.visible !== undefined;\n var _useState = useState(function () {\n return visibilityControlled ? visibilityToggle.visible : false;\n }),\n _useState2 = _slicedToArray(_useState, 2),\n visible = _useState2[0],\n setVisible = _useState2[1];\n var inputRef = useRef(null);\n React.useEffect(function () {\n if (visibilityControlled) {\n setVisible(visibilityToggle.visible);\n }\n }, [visibilityControlled, visibilityToggle]);\n // Remove Password value\n var removePasswordTimeout = useRemovePasswordTimeout(inputRef);\n var onVisibleChange = function onVisibleChange() {\n var disabled = props.disabled;\n if (disabled) {\n return;\n }\n if (visible) {\n removePasswordTimeout();\n }\n setVisible(function (prevState) {\n var _a;\n var 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 var getIcon = function getIcon(prefixCls) {\n var _props$action = props.action,\n action = _props$action === void 0 ? 'click' : _props$action,\n _props$iconRender = props.iconRender,\n iconRender = _props$iconRender === void 0 ? defaultIconRender : _props$iconRender;\n var iconTrigger = ActionMap[action] || '';\n var icon = iconRender(visible);\n var iconProps = _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, iconTrigger, onVisibleChange), \"className\", \"\".concat(prefixCls, \"-icon\")), \"key\", 'passwordIcon'), \"onMouseDown\", function onMouseDown(e) {\n // Prevent focused state lost\n // https://github.com/ant-design/ant-design/issues/15173\n e.preventDefault();\n }), \"onMouseUp\", function onMouseUp(e) {\n // Prevent caret position change\n // https://github.com/ant-design/ant-design/issues/23524\n e.preventDefault();\n });\n return /*#__PURE__*/React.cloneElement( /*#__PURE__*/React.isValidElement(icon) ? icon : /*#__PURE__*/React.createElement(\"span\", null, icon), iconProps);\n };\n var renderPassword = function renderPassword(_ref) {\n var getPrefixCls = _ref.getPrefixCls;\n var className = props.className,\n customizePrefixCls = props.prefixCls,\n customizeInputPrefixCls = props.inputPrefixCls,\n size = props.size,\n restProps = __rest(props, [\"className\", \"prefixCls\", \"inputPrefixCls\", \"size\"]);\n var inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n var prefixCls = getPrefixCls('input-password', customizePrefixCls);\n var suffixIcon = visibilityToggle && getIcon(prefixCls);\n var inputClassName = classNames(prefixCls, className, _defineProperty({}, \"\".concat(prefixCls, \"-\").concat(size), !!size));\n var omittedProps = _extends(_extends({}, 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, _extends({\n ref: composeRef(ref, inputRef)\n }, omittedProps));\n };\n return /*#__PURE__*/React.createElement(ConfigConsumer, null, renderPassword);\n});\nif (process.env.NODE_ENV !== 'production') {\n Password.displayName = 'Password';\n}\nexport default Password;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\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 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';\nvar Search = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var customizePrefixCls = props.prefixCls,\n customizeInputPrefixCls = props.inputPrefixCls,\n className = props.className,\n customizeSize = props.size,\n suffix = props.suffix,\n _props$enterButton = props.enterButton,\n enterButton = _props$enterButton === void 0 ? false : _props$enterButton,\n addonAfter = props.addonAfter,\n loading = props.loading,\n disabled = props.disabled,\n customOnSearch = props.onSearch,\n customOnChange = props.onChange,\n onCompositionStart = props.onCompositionStart,\n onCompositionEnd = props.onCompositionEnd,\n restProps = __rest(props, [\"prefixCls\", \"inputPrefixCls\", \"className\", \"size\", \"suffix\", \"enterButton\", \"addonAfter\", \"loading\", \"disabled\", \"onSearch\", \"onChange\", \"onCompositionStart\", \"onCompositionEnd\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n var contextSize = React.useContext(SizeContext);\n var composedRef = React.useRef(false);\n var prefixCls = getPrefixCls('input-search', customizePrefixCls);\n var inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls);\n var _useCompactItemContex = useCompactItemContext(prefixCls, direction),\n compactSize = _useCompactItemContex.compactSize;\n var size = compactSize || customizeSize || contextSize;\n var inputRef = React.useRef(null);\n var onChange = function 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 var onMouseDown = function 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 var onSearch = function 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 var onPressEnter = function onPressEnter(e) {\n if (composedRef.current || loading) {\n return;\n }\n onSearch(e);\n };\n var searchIcon = typeof enterButton === 'boolean' ? /*#__PURE__*/React.createElement(SearchOutlined, null) : null;\n var btnClassName = \"\".concat(prefixCls, \"-button\");\n var button;\n var enterButtonAsElement = enterButton || {};\n var isAntdButton = enterButtonAsElement.type && enterButtonAsElement.type.__ANT_BUTTON === true;\n if (isAntdButton || enterButtonAsElement.type === 'button') {\n button = cloneElement(enterButtonAsElement, _extends({\n onMouseDown: onMouseDown,\n onClick: function 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: 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 var cls = classNames(prefixCls, _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-\").concat(size), !!size), \"\".concat(prefixCls, \"-with-button\"), !!enterButton), className);\n var handleOnCompositionStart = function handleOnCompositionStart(e) {\n composedRef.current = true;\n onCompositionStart === null || onCompositionStart === void 0 ? void 0 : onCompositionStart(e);\n };\n var handleOnCompositionEnd = function handleOnCompositionEnd(e) {\n composedRef.current = false;\n onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e);\n };\n return /*#__PURE__*/React.createElement(Input, _extends({\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 * 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'];\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 if (useCache && computedStyleCache[nodeRef]) {\n return computedStyleCache[nodeRef];\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 if (useCache && nodeRef) {\n computedStyleCache[nodeRef] = nodeInfo;\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 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 }\n // Fix wrap=\"off\" issue\n // https://github.com/ant-design/ant-design/issues/6577\n if (uiTextNode.getAttribute('wrap')) {\n hiddenTextarea.setAttribute('wrap', uiTextNode.getAttribute('wrap'));\n } else {\n hiddenTextarea.removeAttribute('wrap');\n }\n // Copy all CSS properties that have an impact on the height of the content in\n // the textbox\n var _calculateNodeStyling = calculateNodeStyling(uiTextNode, useCache),\n paddingSize = _calculateNodeStyling.paddingSize,\n borderSize = _calculateNodeStyling.borderSize,\n boxSizing = _calculateNodeStyling.boxSizing,\n sizingStyle = _calculateNodeStyling.sizingStyle;\n // 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 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 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 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 if (minRows !== null) {\n minHeight = singleRowHeight * minRows;\n if (boxSizing === 'border-box') {\n minHeight = minHeight + paddingSize + borderSize;\n }\n height = Math.max(minHeight, height);\n }\n if (maxRows !== null) {\n maxHeight = singleRowHeight * maxRows;\n if (boxSizing === 'border-box') {\n maxHeight = maxHeight + paddingSize + borderSize;\n }\n overflowY = height > maxHeight ? '' : 'hidden';\n height = Math.min(maxHeight, height);\n }\n }\n var style = {\n height: height,\n overflowY: overflowY,\n resize: 'none'\n };\n if (minHeight) {\n style.minHeight = minHeight;\n }\n if (maxHeight) {\n style.maxHeight = maxHeight;\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 * as React from 'react';\nimport ResizeObserver from 'rc-resize-observer';\nimport useLayoutEffect from \"rc-util/es/hooks/useLayoutEffect\";\nimport raf from \"rc-util/es/raf\";\nimport useMergedState from \"rc-util/es/hooks/useMergedState\";\nimport classNames from 'classnames';\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 _props$prefixCls = props.prefixCls,\n prefixCls = _props$prefixCls === void 0 ? 'rc-textarea' : _props$prefixCls,\n onPressEnter = props.onPressEnter,\n defaultValue = props.defaultValue,\n value = props.value,\n autoSize = props.autoSize,\n onResize = props.onResize,\n className = props.className,\n style = props.style,\n disabled = props.disabled,\n onChange = props.onChange,\n onInternalAutoSize = props.onInternalAutoSize,\n restProps = _objectWithoutProperties(props, _excluded);\n // =============================== Value ================================\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 var onInternalChange = function onInternalChange(event) {\n setMergedValue(event.target.value);\n onChange === null || onChange === void 0 ? void 0 : onChange(event);\n };\n // ================================ Ref =================================\n var textareaRef = React.useRef();\n React.useImperativeHandle(ref, function () {\n return {\n textArea: textareaRef.current\n };\n });\n // ============================== AutoSize ==============================\n var _React$useMemo = React.useMemo(function () {\n if (autoSize && _typeof(autoSize) === 'object') {\n return [autoSize.minRows, autoSize.maxRows];\n }\n return [];\n }, [autoSize]),\n _React$useMemo2 = _slicedToArray(_React$useMemo, 2),\n minRows = _React$useMemo2[0],\n maxRows = _React$useMemo2[1];\n var needAutoSize = !!autoSize;\n // =============================== Scroll ===============================\n // https://github.com/ant-design/ant-design/issues/21870\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;\n // 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 textareaRef.current.setSelectionRange(selectionStart, selectionEnd);\n textareaRef.current.scrollTop = scrollTop;\n }\n } catch (e) {\n // Fix error in Chrome:\n // Failed to read the 'selectionStart' property from 'HTMLInputElement'\n // http://stackoverflow.com/q/21177489/3040605\n }\n };\n // =============================== Resize ===============================\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 var _React$useState3 = React.useState(),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n autoSizeStyle = _React$useState4[0],\n setAutoSizeStyle = _React$useState4[1];\n var startResize = function startResize() {\n setResizeState(RESIZE_START);\n if (process.env.NODE_ENV === 'test') {\n onInternalAutoSize === null || onInternalAutoSize === void 0 ? void 0 : onInternalAutoSize();\n }\n };\n // Change to trigger resize measure\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);\n // 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 setResizeState(RESIZE_STABLE);\n setAutoSizeStyle(textareaStyles);\n } else {\n fixFirefoxAutoScroll();\n }\n }, [resizeState]);\n // We lock resize trigger by raf to avoid Safari warning\n var resizeRafRef = React.useRef();\n var cleanRaf = function cleanRaf() {\n raf.cancel(resizeRafRef.current);\n };\n var onInternalResize = function onInternalResize(size) {\n if (resizeState === RESIZE_STABLE) {\n onResize === null || onResize === void 0 ? void 0 : onResize(size);\n if (autoSize) {\n cleanRaf();\n resizeRafRef.current = raf(function () {\n startResize();\n });\n }\n }\n };\n React.useEffect(function () {\n return cleanRaf;\n }, []);\n // =============================== Render ===============================\n var mergedAutoSizeStyle = needAutoSize ? autoSizeStyle : null;\n var mergedStyle = _objectSpread(_objectSpread({}, style), mergedAutoSizeStyle);\n if (resizeState === RESIZE_START || resizeState === RESIZE_MEASURING) {\n mergedStyle.overflowY = 'hidden';\n mergedStyle.overflowX = 'hidden';\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 _extends from \"@babel/runtime/helpers/esm/extends\";\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\";\nimport * as React from 'react';\nimport ResizableTextArea from './ResizableTextArea';\nvar TextArea = /*#__PURE__*/function (_React$Component) {\n _inherits(TextArea, _React$Component);\n var _super = _createSuper(TextArea);\n function TextArea(props) {\n var _this;\n _classCallCheck(this, TextArea);\n _this = _super.call(this, props);\n _this.resizableTextArea = void 0;\n _this.focus = function () {\n _this.resizableTextArea.textArea.focus();\n };\n _this.saveTextArea = function (resizableTextArea) {\n _this.resizableTextArea = resizableTextArea;\n };\n _this.handleChange = function (e) {\n var onChange = _this.props.onChange;\n _this.setValue(e.target.value);\n if (onChange) {\n onChange(e);\n }\n };\n _this.handleKeyDown = function (e) {\n var _this$props = _this.props,\n onPressEnter = _this$props.onPressEnter,\n onKeyDown = _this$props.onKeyDown;\n if (e.keyCode === 13 && onPressEnter) {\n onPressEnter(e);\n }\n if (onKeyDown) {\n onKeyDown(e);\n }\n };\n var value = typeof props.value === 'undefined' || props.value === null ? props.defaultValue : props.value;\n _this.state = {\n value: value\n };\n return _this;\n }\n _createClass(TextArea, [{\n key: \"setValue\",\n value: function setValue(value, callback) {\n if (!('value' in this.props)) {\n this.setState({\n value: value\n }, callback);\n }\n }\n }, {\n key: \"blur\",\n value: function blur() {\n this.resizableTextArea.textArea.blur();\n }\n }, {\n key: \"render\",\n value: function render() {\n return /*#__PURE__*/React.createElement(ResizableTextArea, _extends({}, this.props, {\n value: this.state.value,\n onKeyDown: this.handleKeyDown,\n onChange: this.handleChange,\n ref: this.saveTextArea\n }));\n }\n }], [{\n key: \"getDerivedStateFromProps\",\n value: function getDerivedStateFromProps(nextProps) {\n if ('value' in nextProps) {\n return {\n value: nextProps.value\n };\n }\n return null;\n }\n }]);\n return TextArea;\n}(React.Component);\nexport { ResizableTextArea };\nexport default TextArea;","import _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _classCallCheck from \"@babel/runtime/helpers/esm/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/esm/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/esm/possibleConstructorReturn\";\nimport _isNativeReflectConstruct from \"@babel/runtime/helpers/esm/isNativeReflectConstruct\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/esm/getPrototypeOf\";\nimport _inherits from \"@babel/runtime/helpers/esm/inherits\";\nfunction _callSuper(t, o, e) {\n return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));\n}\nimport CloseCircleFilled from \"@ant-design/icons/es/icons/CloseCircleFilled\";\nimport classNames from 'classnames';\nimport * as React from 'react';\nimport { FormItemInputContext } from '../form/context';\nimport { cloneElement } from '../_util/reactNode';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport { tuple } from '../_util/type';\nvar ClearableInputType = tuple('text', 'input');\nfunction hasAddon(props) {\n return !!(props.addonBefore || props.addonAfter);\n}\nvar ClearableLabeledInput = /*#__PURE__*/function (_React$Component) {\n _inherits(ClearableLabeledInput, _React$Component);\n function ClearableLabeledInput() {\n _classCallCheck(this, ClearableLabeledInput);\n return _callSuper(this, ClearableLabeledInput, arguments);\n }\n _createClass(ClearableLabeledInput, [{\n key: \"renderClearIcon\",\n value: function renderClearIcon(prefixCls) {\n var _this$props = this.props,\n value = _this$props.value,\n disabled = _this$props.disabled,\n readOnly = _this$props.readOnly,\n handleReset = _this$props.handleReset,\n suffix = _this$props.suffix;\n var needClear = !disabled && !readOnly && value;\n var className = \"\".concat(prefixCls, \"-clear-icon\");\n return /*#__PURE__*/React.createElement(CloseCircleFilled, {\n onClick: handleReset,\n // Do not trigger onBlur when clear input\n // https://github.com/ant-design/ant-design/issues/31200\n onMouseDown: function onMouseDown(e) {\n return e.preventDefault();\n },\n className: classNames(_defineProperty(_defineProperty({}, \"\".concat(className, \"-hidden\"), !needClear), \"\".concat(className, \"-has-suffix\"), !!suffix), className),\n role: \"button\"\n });\n }\n }, {\n key: \"renderTextAreaWithClearIcon\",\n value: function renderTextAreaWithClearIcon(prefixCls, element, statusContext) {\n var _this$props2 = this.props,\n value = _this$props2.value,\n allowClear = _this$props2.allowClear,\n className = _this$props2.className,\n focused = _this$props2.focused,\n style = _this$props2.style,\n direction = _this$props2.direction,\n bordered = _this$props2.bordered,\n hidden = _this$props2.hidden,\n customStatus = _this$props2.status;\n var contextStatus = statusContext.status,\n hasFeedback = statusContext.hasFeedback;\n if (!allowClear) {\n return cloneElement(element, {\n value: value\n });\n }\n var affixWrapperCls = classNames(\"\".concat(prefixCls, \"-affix-wrapper\"), \"\".concat(prefixCls, \"-affix-wrapper-textarea-with-clear-btn\"), getStatusClassNames(\"\".concat(prefixCls, \"-affix-wrapper\"), getMergedStatus(contextStatus, customStatus), hasFeedback), _defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-affix-wrapper-focused\"), focused), \"\".concat(prefixCls, \"-affix-wrapper-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-affix-wrapper-borderless\"), !bordered), \"\".concat(className), !hasAddon(this.props) && className));\n return /*#__PURE__*/React.createElement(\"span\", {\n className: affixWrapperCls,\n style: style,\n hidden: hidden\n }, cloneElement(element, {\n style: null,\n value: value\n }), this.renderClearIcon(prefixCls));\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this = this;\n return /*#__PURE__*/React.createElement(FormItemInputContext.Consumer, null, function (statusContext) {\n var _this$props3 = _this.props,\n prefixCls = _this$props3.prefixCls,\n inputType = _this$props3.inputType,\n element = _this$props3.element;\n if (inputType === ClearableInputType[0]) {\n return _this.renderTextAreaWithClearIcon(prefixCls, element, statusContext);\n }\n });\n }\n }]);\n return ClearableLabeledInput;\n}(React.Component);\nexport default ClearableLabeledInput;","import _typeof from \"@babel/runtime/helpers/esm/typeof\";\nimport _defineProperty from \"@babel/runtime/helpers/esm/defineProperty\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport _slicedToArray from \"@babel/runtime/helpers/esm/slicedToArray\";\nimport _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 RcTextArea from 'rc-textarea';\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 DisabledContext from '../config-provider/DisabledContext';\nimport SizeContext from '../config-provider/SizeContext';\nimport { FormItemInputContext } from '../form/context';\nimport { getMergedStatus, getStatusClassNames } from '../_util/statusUtils';\nimport ClearableLabeledInput from './ClearableLabeledInput';\nimport { fixControlledValue, resolveOnChange, triggerFocus } from './Input';\nfunction fixEmojiLength(value, maxLength) {\n return _toConsumableArray(value || '').slice(0, maxLength).join('');\n}\nfunction setTriggerValue(isCursorInEnd, preValue, triggerValue, maxLength) {\n var newTriggerValue = triggerValue;\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 return newTriggerValue;\n}\nvar TextArea = /*#__PURE__*/React.forwardRef(function (_a, ref) {\n var customizePrefixCls = _a.prefixCls,\n _a$bordered = _a.bordered,\n bordered = _a$bordered === void 0 ? true : _a$bordered,\n _a$showCount = _a.showCount,\n showCount = _a$showCount === void 0 ? false : _a$showCount,\n maxLength = _a.maxLength,\n className = _a.className,\n style = _a.style,\n customizeSize = _a.size,\n customDisabled = _a.disabled,\n onCompositionStart = _a.onCompositionStart,\n onCompositionEnd = _a.onCompositionEnd,\n onChange = _a.onChange,\n onFocus = _a.onFocus,\n onBlur = _a.onBlur,\n customStatus = _a.status,\n props = __rest(_a, [\"prefixCls\", \"bordered\", \"showCount\", \"maxLength\", \"className\", \"style\", \"size\", \"disabled\", \"onCompositionStart\", \"onCompositionEnd\", \"onChange\", \"onFocus\", \"onBlur\", \"status\"]);\n var _React$useContext = React.useContext(ConfigContext),\n getPrefixCls = _React$useContext.getPrefixCls,\n direction = _React$useContext.direction;\n var size = React.useContext(SizeContext);\n // ===================== Disabled =====================\n var disabled = React.useContext(DisabledContext);\n var mergedDisabled = customDisabled !== null && customDisabled !== void 0 ? customDisabled : disabled;\n var _React$useContext2 = React.useContext(FormItemInputContext),\n contextStatus = _React$useContext2.status,\n hasFeedback = _React$useContext2.hasFeedback,\n isFormItemInput = _React$useContext2.isFormItemInput,\n feedbackIcon = _React$useContext2.feedbackIcon;\n var mergedStatus = getMergedStatus(contextStatus, customStatus);\n var innerRef = React.useRef(null);\n var clearableInputRef = React.useRef(null);\n var _React$useState = React.useState(false),\n _React$useState2 = _slicedToArray(_React$useState, 2),\n compositing = _React$useState2[0],\n setCompositing = _React$useState2[1];\n var _React$useState3 = React.useState(false),\n _React$useState4 = _slicedToArray(_React$useState3, 2),\n focused = _React$useState4[0],\n setFocused = _React$useState4[1];\n var oldCompositionValueRef = React.useRef();\n var oldSelectionStartRef = React.useRef(0);\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 var hidden = props.hidden;\n var handleSetValue = function handleSetValue(val, callback) {\n if (props.value === undefined) {\n setValue(val);\n callback === null || callback === void 0 ? void 0 : callback();\n }\n };\n // =========================== Value Update ===========================\n // Max length value\n var hasMaxLength = Number(maxLength) > 0;\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 var onInternalCompositionEnd = function onInternalCompositionEnd(e) {\n var _a;\n setCompositing(false);\n var triggerValue = e.currentTarget.value;\n if (hasMaxLength) {\n var isCursorInEnd = oldSelectionStartRef.current >= maxLength + 1 || oldSelectionStartRef.current === ((_a = oldCompositionValueRef.current) === null || _a === void 0 ? void 0 : _a.length);\n triggerValue = setTriggerValue(isCursorInEnd, oldCompositionValueRef.current, triggerValue, maxLength);\n }\n // Patch composition onChange when value changed\n if (triggerValue !== value) {\n handleSetValue(triggerValue);\n resolveOnChange(e.currentTarget, e, onChange, triggerValue);\n }\n onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e);\n };\n var handleChange = function handleChange(e) {\n var triggerValue = e.target.value;\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 handleSetValue(triggerValue);\n resolveOnChange(e.currentTarget, e, onChange, triggerValue);\n };\n var handleBlur = function handleBlur(e) {\n setFocused(false);\n onBlur === null || onBlur === void 0 ? void 0 : onBlur(e);\n };\n var handleFocus = function handleFocus(e) {\n setFocused(true);\n onFocus === null || onFocus === void 0 ? void 0 : onFocus(e);\n };\n React.useEffect(function () {\n setFocused(function (prev) {\n return !mergedDisabled && prev;\n });\n }, [mergedDisabled]);\n // ============================== Reset ===============================\n var handleReset = function handleReset(e) {\n var _a, _b, _c;\n handleSetValue('');\n (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.focus();\n resolveOnChange((_c = (_b = innerRef.current) === null || _b === void 0 ? void 0 : _b.resizableTextArea) === null || _c === void 0 ? void 0 : _c.textArea, e, onChange);\n };\n var prefixCls = getPrefixCls('input', customizePrefixCls);\n React.useImperativeHandle(ref, function () {\n var _a;\n return {\n resizableTextArea: (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.resizableTextArea,\n focus: function 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: function blur() {\n var _a;\n return (_a = innerRef.current) === null || _a === void 0 ? void 0 : _a.blur();\n }\n };\n });\n var textArea = /*#__PURE__*/React.createElement(RcTextArea, _extends({}, omit(props, ['allowClear']), {\n disabled: mergedDisabled,\n className: classNames(_defineProperty(_defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-borderless\"), !bordered), className, className && !showCount), \"\".concat(prefixCls, \"-sm\"), size === 'small' || customizeSize === 'small'), \"\".concat(prefixCls, \"-lg\"), size === 'large' || customizeSize === 'large'), getStatusClassNames(prefixCls, mergedStatus)),\n style: showCount ? {\n resize: style === null || style === void 0 ? void 0 : style.resize\n } : style,\n prefixCls: prefixCls,\n onCompositionStart: onInternalCompositionStart,\n onChange: handleChange,\n onBlur: handleBlur,\n onFocus: handleFocus,\n onCompositionEnd: onInternalCompositionEnd,\n ref: innerRef\n }));\n var val = fixControlledValue(value);\n if (!compositing && hasMaxLength && (props.value === null || props.value === undefined)) {\n // fix #27612 将value转为数组进行截取,解决 '😂'.length === 2 等emoji表情导致的截取乱码的问题\n val = fixEmojiLength(val, maxLength);\n }\n // TextArea\n var textareaNode = /*#__PURE__*/React.createElement(ClearableLabeledInput, _extends({\n disabled: mergedDisabled,\n focused: focused\n }, props, {\n prefixCls: prefixCls,\n direction: direction,\n inputType: \"text\",\n value: val,\n element: textArea,\n handleReset: handleReset,\n ref: clearableInputRef,\n bordered: bordered,\n status: customStatus,\n style: showCount ? undefined : style\n }));\n // Only show text area wrapper when needed\n if (showCount || hasFeedback) {\n var valueLength = _toConsumableArray(val).length;\n var dataCount = '';\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 return /*#__PURE__*/React.createElement(\"div\", {\n hidden: hidden,\n className: classNames(\"\".concat(prefixCls, \"-textarea\"), _defineProperty(_defineProperty(_defineProperty({}, \"\".concat(prefixCls, \"-textarea-rtl\"), direction === 'rtl'), \"\".concat(prefixCls, \"-textarea-show-count\"), showCount), \"\".concat(prefixCls, \"-textarea-in-form-item\"), isFormItemInput), getStatusClassNames(\"\".concat(prefixCls, \"-textarea\"), mergedStatus, hasFeedback), className),\n style: style,\n \"data-count\": dataCount\n }, textareaNode, hasFeedback && /*#__PURE__*/React.createElement(\"span\", {\n className: \"\".concat(prefixCls, \"-textarea-suffix\")\n }, feedbackIcon));\n }\n return textareaNode;\n});\nexport default TextArea;","import Group from './Group';\nimport InternalInput from './Input';\nimport Password from './Password';\nimport Search from './Search';\nimport TextArea from './TextArea';\nvar Input = InternalInput;\nInput.Group = Group;\nInput.Search = Search;\nInput.TextArea = TextArea;\nInput.Password = Password;\nexport default Input;","import React, { useState } from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/reservaStep2.module.css\"\nimport { Link } from \"@reach/router\"\nimport { Collapse, Input, Checkbox } from \"antd\"\nimport \"antd/dist/antd.css\"\nimport \"../../styles/quilmesTourStyles/index.css\"\nimport short from \"short-uuid\"\nimport { navigate } from \"@reach/router\"\nimport { Loader } from \"../Loader\"\nconst { Panel } = Collapse\n\nconst CompletaTusDatos = ({\n bases,\n tour,\n personas,\n fecha,\n selectedTime,\n discount,\n couponId,\n}) => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n const [value, setValue] = useState({})\n const [isLoading, setIsLoading] = useState(false)\n const [acepto, setAcepto] = useState(false)\n const [error, setError] = useState({})\n const [formHasBeenSubmitted, setFormHasBeenSubmitted] = useState(false)\n\n const checkWhetherAllFieldsAreComplete = () => {\n const objectValuesArray = Object.values(value)\n const emailsArray = objectValuesArray.map(person => person.email)\n if (\n objectValuesArray.length === personas &&\n !objectValuesArray\n .map(person =>\n Boolean(\n person.nombre &&\n person.edad &&\n person.email &&\n person.telefono &&\n person.DNI\n )\n )\n .includes(false) &&\n new Set(emailsArray).size === emailsArray.length\n )\n return true\n else return false\n }\n\n const onFocus = (index, e) => {\n const { name } = e.target\n setError({\n ...error,\n [index]: {\n ...error[index],\n [name]: { error: false },\n },\n })\n }\n\n const onBlur = (value, index, key) => {\n if (key === \"email\") {\n let email\n const mailformat = /^\\w+([\\.-]?\\w+)*@\\w+([\\.-]?\\w+)*(\\.\\w{2,3})+$/\n if (value[index]?.hasOwnProperty(\"email\")) {\n email = value[index][\"email\"]\n }\n if (email) {\n const emailValid = email.match(mailformat)\n if (emailValid === null) {\n setError({\n ...error,\n [index]: {\n ...error[index],\n [key]: { error: true, message: \"Ingrese un correo por favor\" },\n },\n })\n } else {\n let valuesArray = Object.values(value)\n const repeatedEmail = valuesArray.some(\n (person, someIndex) => person.email === email && index !== someIndex\n )\n if (repeatedEmail) {\n setError({\n ...error,\n [index]: {\n ...error[index],\n [key]: {\n error: true,\n message:\n \"Por favor ingrese el correo de cada participante para que cada uno reciba su entrada\",\n },\n },\n })\n }\n }\n } else {\n setError({\n ...error,\n [index]: {\n ...error[index],\n [key]: { error: true, message: \"Ingrese un correo por favor\" },\n },\n })\n }\n } else {\n let inputValue\n if (value[index]?.hasOwnProperty(key)) {\n inputValue = value[index][key]\n }\n if (inputValue) {\n setError({\n ...error,\n [index]: {\n ...error[index],\n [key]: { error: false },\n },\n })\n } else {\n setError({\n ...error,\n [index]: {\n ...error[index],\n [key]: {\n error: true,\n message:\n key === \"edad\"\n ? \"Ingrese una \" + key + \" por favor\"\n : \"Ingrese un \" + key + \" por favor\",\n },\n },\n })\n }\n }\n }\n\n const handleChange = (e, index) => {\n const key = e.target.name\n const inputValue = e.target.value\n const checked = e.target.checked\n setValue({\n ...value,\n [index]: {\n ...value[index],\n [key]: inputValue,\n conductor: checked,\n },\n })\n }\n\n const converter = obj => {\n const newObj = {\n nombre: [],\n email: [],\n edad: [],\n conductor: [],\n principal: [],\n disponibilidad: selectedTime.disponibilidad,\n codigo: [],\n telefono: [],\n DNI: [],\n guests: [],\n precio: tour.precio * ((100 - discount) / 100),\n descuento: discount,\n tour: tour.name,\n couponId,\n }\n for (const key in obj) {\n if (obj[key][\"nombre\"]) newObj[\"nombre\"].push(obj[key].nombre)\n if (obj[key][\"email\"]) newObj[\"email\"].push(obj[key].email)\n if (obj[key][\"edad\"]) newObj[\"edad\"].push(obj[key].edad)\n newObj[\"conductor\"].push(obj[key].conductor)\n newObj[\"codigo\"].push(short.generate())\n newObj[\"telefono\"].push(obj[key].telefono)\n newObj[\"DNI\"].push(obj[key].DNI)\n if (key === \"0\") newObj[\"principal\"].push(true)\n else newObj[\"principal\"].push(false)\n newObj[\"guests\"].push({\n nombre: obj[key][\"nombre\"],\n email: obj[key][\"email\"],\n edad: obj[key][\"edad\"],\n principal: key === \"0\" ? true : false,\n conductor: obj[key][\"conductor\"],\n telefono: obj[key][\"telefono\"],\n DNI: obj[key][\"DNI\"],\n })\n }\n return newObj\n }\n\n const api = \"https://wacopaamericamotmback-prd.azurewebsites.net/api\"\n // const api = \"https://wacopaamericamotmback-prd-stage.azurewebsites.net/api\"\n // const api = \"http://localhost:8080/api\"\n\n const handleSuccess = async () => {\n const convertedObject = converter(value)\n if (!formHasBeenSubmitted) {\n setIsLoading(true)\n setFormHasBeenSubmitted(true)\n fetch(`${api}/tourtest/createpreference/${selectedTime.idFecha}`, {\n method: \"POST\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(convertedObject),\n })\n .then(async response => {\n if (response.ok) {\n let data = await response.json()\n const { id, link } = data\n localStorage.setItem(\n \"pendingReservation\",\n JSON.stringify({\n id,\n email: convertedObject.email,\n nombre: convertedObject.nombre,\n codigo: convertedObject.codigo,\n telefono: convertedObject.telefono,\n DNI: convertedObject.DNI,\n tour: tour.name,\n fecha,\n horario: selectedTime.horaInicio,\n guests: convertedObject.guests,\n })\n )\n if (link) {\n setIsLoading(false)\n window.location.href = link\n } else {\n navigate(\"/lacasadequilmes/thanks?success=true\")\n }\n } else {\n throw new Error(response)\n }\n })\n .catch(error => console.error(\"Error cargando los datos. \\n\", error))\n }\n }\n\n return (\n
\n {!isLoading ? (\n <>\n
\n

Completá con tus datos

\n
\n \n {[...Array(personas)].map((persona, i) => {\n return (\n \n
\n
\n

\n Nombre y apellido\n

\n \n handleChange(e, i)}\n value={(value[i] && value[i][\"nombre\"]) || \"\"}\n onFocus={e => onFocus(i, e)}\n onBlur={() => onBlur(value, i, \"nombre\")}\n />\n \n {error[i] &&\n error[i].nombre &&\n error[i].nombre.message}\n \n\n \n handleChange(e, i)}\n >\n \n ¿Eres el conductor designado?\n \n
\n
\n
\n
\n

Email

\n handleChange(e, i)}\n value={(value[i] && value[i][\"email\"]) || \"\"}\n onFocus={e => onFocus(i, e)}\n onBlur={() => onBlur(value, i, \"email\")}\n />\n \n {error[i] && error[i].email && error[i].email.message}\n \n
\n
\n

Edad

\n handleChange(e, i)}\n value={value[i] && value[i][\"edad\"]}\n type=\"number\"\n onFocus={e => onFocus(i, e)}\n onBlur={() => onBlur(value, i, \"edad\")}\n />\n \n {error[i] && error[i].edad && error[i].edad.message}\n \n
\n
\n

Teléfono

\n handleChange(e, i)}\n value={value[i] && value[i][\"telefono\"]}\n onFocus={e => onFocus(i, e)}\n onBlur={() => onBlur(value, i, \"telefono\")}\n />\n \n {error[i] &&\n error[i].telefono &&\n error[i].telefono.message}\n \n
\n
\n

DNI

\n handleChange(e, i)}\n value={value[i] && value[i][\"DNI\"]}\n onFocus={e => onFocus(i, e)}\n onBlur={() => onBlur(value, i, \"DNI\")}\n />\n \n {error[i] && error[i].DNI && error[i].DNI.message}\n \n
\n \n \n )\n })}\n \n \n setAcepto(!acepto)}>\n \n He leído y acepto{\" \"}\n \n Bases y condiciones\n \n ,{\" \"}\n \n Términos y condiciones\n \n ,{\" \"}\n \n Políticas de privacidad\n {\" \"}\n y activaciones de marketing.\n \n \n
\n
\n \n

Volver

\n \n
\n\n {acepto && checkWhetherAllFieldsAreComplete() ? (\n handleSuccess()}\n >\n

\n {discount === 100 ? \"Confirmar\" : \"Continuar\"}\n

\n
\n ) : (\n \n

\n {discount === 100 ? \"Confirmar\" : \"Continuar\"}\n

\n \n )}\n \n \n ) : (\n \n )}\n \n )\n}\nexport default CompletaTusDatos\n","import React, { useEffect } from \"react\"\nimport { useMediaQuery } from \"react-responsive\"\nimport styles from \"../../styles/quilmesTourStyles/reservaStep3.module.css\"\nimport { Link, useLocation } from \"@reach/router\"\nimport queryString from \"query-string\"\n\nimport \"antd/dist/antd.css\"\nimport \"../../styles/quilmesTourStyles/index.css\"\n\nconst Reserva3 = () => {\n const mobile = useMediaQuery({ query: \"(max-width: 485px)\" })\n\n const location = useLocation()\n\n const query = queryString.parse(location.search)\n\n const api = \"https://wacopaamericamotmback-prd.azurewebsites.net/api\"\n // const api = \"https://wacopaamericamotmback-prd-stage.azurewebsites.net/api\"\n // const api = \"http://localhost:8080/api\"\n\n useEffect(() => {\n if (query.success) {\n let pendingReservation = JSON.parse(\n localStorage.getItem(\"pendingReservation\")\n )\n if (pendingReservation)\n fetch(`${api}/tour/reservation/${pendingReservation.id}/confirm`, {\n method: \"PUT\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n body: JSON.stringify(pendingReservation),\n })\n .then(async response => {\n if (response.ok) {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Reservation\",\n event_action: `Success`,\n // event_label: `${tour.name}`,\n interaction: true,\n component_name: \"boton_reservar\",\n element_text: \"Reservar\",\n })\n }\n if (!response.ok) {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Reservation\",\n event_action: `Error`,\n // event_label: `${tour.name}`,\n interaction: true,\n component_name: \"boton_reservar\",\n element_text: \"Reservar\",\n })\n throw new Error(response)\n }\n })\n .catch(error => console.error(\"Error cargando los datos. \\n\", error))\n }\n }, [])\n\n return (\n
\n
\n
\n
\n

TU PAGO FUE EXITOSO

\n
\n

\n Te vamos a enviar una confirmación por correo electrónico con el\n detalle de tu compra ¡Nos vemos pronto en el tour!\n

\n
\n
\n
\n
\n \n

Ir al Inicio

\n \n
\n
\n
\n
\n )\n}\n\nexport default Reserva3\n","import { Link } from \"gatsby\"\nimport PropTypes from \"prop-types\"\nimport React, { useState, useEffect } from \"react\"\nimport logoMenu from \"../../images/logos/logoMenu.svg\"\nimport styles from \"../../styles/quilmesTourStyles/headerQuilmesTour.module.css\"\nimport SideMenu from \"../sideMenu\"\nimport logoTour from \"../../images/logos/LCDQ_blanco.png\"\nimport logoReserva from \"../../images/logos/Vector.svg\"\n\nconst HeaderTour = ({ reserva, tourDescription }) => {\n const [activeMenu, setActiveMenu] = useState(true)\n\n // useEffect(() => {\n // console.log(\"header boolean\", reserva)\n // })\n\n return (\n <>\n {!tourDescription ? (\n <>\n \n
\n \n \n \n \n {\n setActiveMenu(!activeMenu)\n }}\n className={styles.menuHeader}\n >\n MENÚ\n \n
\n \n \n \n ) : (\n <>\n )}\n \n )\n}\n\nexport default HeaderTour\n","// import { Link } from \"gatsby\"\n// import PropTypes from \"prop-types\"\nimport React from \"react\"\nimport styles from \"../../styles/footer.module.css\"\nimport logoQ from \"../../images/logos/quilmesLogo.svg\"\nimport logoIg from \"../../images/logos/logoIg.svg\"\nimport logoFb from \"../../images/logos/logoFb.svg\"\nimport logoTw from \"../../images/logos/logoTw.svg\"\nimport logoYou from \"../../images/logos/logoYou.svg\"\nimport * as Scroll from \"react-scroll\"\n\nlet scroll = Scroll.animateScroll\nconst Footer = ({ bases }) => {\n function handleClick() {\n scroll.scrollToTop()\n }\n\n return (\n
\n \n\n
\n
\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Footer\",\n event_action: \"Click\",\n event_label: `${bases?.politica?.fileUrl}`,\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n

POLÍTICA DE PRIVACIDAD

\n \n

|

\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Footer\",\n event_action: \"Click\",\n event_label: `${bases?.bases?.fileUrl}`,\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n

BASES Y CONDICIONES

\n \n

|

\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Footer\",\n event_action: \"Click\",\n event_label: `${bases?.tyc?.fileUrl}`,\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n

TÉRMINOS Y CONDICIONES

\n \n

|

\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Footer\",\n event_action: \"Click\",\n event_label:\n \"https://www.cerveceriaymalteriaquilmes.com/carrera\",\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n

OPORTUNIDADES LABORALES

\n \n

|

\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Footer\",\n event_action: \"Click\",\n event_label:\n \"https://www.tapintoyourbeer.com/agegate?destination=age_check.cfm\",\n interaction: true,\n component_name: \"\",\n element_text: \"\",\n })\n }}\n >\n

INFORMACIÓN OFICIAL DE LA COMPAÑÍA

\n \n
\n \n BEBER CON MODERACIÓN.PROHIBIDA SU VENTA A MENORES DE 18 AÑOS. NO\n COMPARTA EL CONTENIDO CON MENORES. Quilmes®\n \n
\n
\n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.facebook.com/quilmescerveza/?ref=bookmarks`,\n interaction: true,\n component_name: \"boton_facebook\",\n element_text: \"Facebook\",\n })\n }}\n >\n \n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://twitter.com/Quilmes_Cerveza`,\n interaction: true,\n component_name: \"boton_twitter\",\n element_text: \"Twitter\",\n })\n }}\n >\n \n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.instagram.com/cervezaquilmes/?hl=es-la`,\n interaction: true,\n component_name: \"boton_instagram\",\n element_text: \"Instagram\",\n })\n }}\n >\n \n \n {\n window.dataLayer.push({\n event: \"GAEvent\",\n event_category: \"Social\",\n event_action: \"Click\",\n event_label: `https://www.youtube.com/user/Quilmes120Argentina`,\n interaction: true,\n component_name: \"boton_youtube\",\n element_text: \"Youtube\",\n })\n }}\n >\n \n \n
\n {/* */}\n
\n )\n}\nexport default Footer\n","import React from \"react\"\nimport HeaderTour from \"./headerQuilmesTour\"\nimport Footer from \"./footerQuilmesTour\"\nimport styles from \"./layoutTour.module.css\"\nimport \"bootstrap/dist/css/bootstrap.min.css\"\nconst LayoutTour = props => {\n // const [activeMenu, setActiveMenu] = useState(true)\n const reserva =\n props.location.pathname === \"/lacasadequilmes/reserva\" ||\n props.location.pathname === \"/lacasadequilmes/reserva/step2\" ||\n props.location.pathname === \"/lacasadequilmes/thanks\"\n\n const tourDescription =\n props.location.pathname === \"/lacasadequilmes/tourdescription\"\n\n return (\n <>\n
\n \n {props.children}\n {!reserva || tourDescription ?
: null}\n
\n \n )\n}\n\nexport default LayoutTour\n","import React, { useState, Fragment, useEffect } from \"react\"\nimport { Router, redirectTo } from \"@reach/router\"\nimport { navigate } from \"gatsby\"\nimport { cleanImagesArray } from \"../../utils/images\"\nimport SEO from \"../components/seo\"\nimport QuilmesTourIndex from \"../components/lacasadequilmes\"\nimport ReservaStep1 from \"../components/lacasadequilmes/reservaStep1\"\nimport ReservaStep2 from \"../components/lacasadequilmes/reservaStep2\"\nimport ReservaStep3 from \"../components/lacasadequilmes/reservaStep3\"\nimport LayoutTour from \"../components/lacasadequilmes/layoutQuilmesTour\"\nimport TourMobileDescription from \"../components/lacasadequilmes/tourMobileDescription\"\n\nconst LaCasaDeQuilmes = ({ data, location }) => {\n const [images, setImages] = useState(false)\n const [fecha, setFecha] = useState(\"\")\n const [tour, setTour] = useState({ name: null, id: null })\n const [personas, setPersonas] = useState(1)\n const [questions, setQuestions] = useState([])\n const [precauciones, setPrecauciones] = useState([])\n const [comollego, setComollego] = useState([])\n const [bases, setBases] = useState({})\n const [tourOptions, setTourOptions] = useState([])\n const [dateOptions, setDateOptions] = useState([])\n const [dateOptionsOfCurrentTour, setDateOptionsOfCurrentTour] = useState([])\n const [availability, setAvailability] = useState(0)\n const [selectedTime, setSelectedTime] = useState({})\n\n const dataFaq = data.allFaq.nodes\n const dataComollego = data.allComollego.nodes\n const dataPrecauciones = data.allPrecauciones.nodes\n const dataBases = data.allBases.nodes[0]\n useEffect(() => {\n setQuestions(dataFaq)\n setComollego(dataComollego)\n setPrecauciones(dataPrecauciones)\n setBases(dataBases)\n if (tour.id)\n setDateOptionsOfCurrentTour(\n dateOptions.find(array => {\n if (array.length) {\n return array[0].idTour === tour.id\n }\n })\n )\n }, [tour])\n\n useEffect(() => {\n window.dataLayer.push({\n brand: \"Quilmes\",\n Zone: \"SAZ\",\n country: \"ARG\",\n city: \"CABA\",\n campaign: `${\n window.location.search.includes(\"?cmp=\")\n ? window.location.search.split(\"?cmp=\")[1].split(\"&\")[0]\n : \"\"\n }`,\n cms: \"0\",\n event: \"pageView\",\n language: \"es\",\n login: false,\n pageName: \"La Casa de Quilmes\",\n pageType: \"Basic page\",\n SiteType: \"Brand\",\n product: \"NA\",\n sku: \"NA\",\n userUid: \"\",\n url: \"https://www.quilmes.com.ar/lacasadequilmes\",\n url_campaign: `${\n window.location.search.includes(\"utm_campaign=\")\n ? window.location.search.split(\"utm_campaign=\")[1]\n : \"\"\n }`,\n Step_number: \"\",\n })\n }, [])\n\n useEffect(() => {\n let local = localStorage.getItem(\"age\")\n let session = sessionStorage.getItem(\"age\")\n if (!session && !local)\n navigate(\"/agegate\", { state: { newPath: \"/lacasadequilmes\" } })\n setImages(cleanImagesArray(data))\n }, [])\n\n const api = \"https://wacopaamericamotmback-prd.azurewebsites.net/api\"\n // const api = \"http://localhost:8080/api\"\n\n useEffect(() => {\n fetch(`${api}/tour/tours/active`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n }).then(async response => {\n if (response.ok) {\n let data = await response.json()\n // console.log(\"TOOURS ===>\", data)\n setTourOptions(data)\n } else {\n console.error(\"Error cargando los datos. \\n\", response)\n }\n })\n }, [])\n\n useEffect(() => {\n if (tourOptions.length)\n fetch(`${api}/tour/calendario/active`, {\n method: \"GET\",\n headers: {\n \"Content-Type\": \"application/json\",\n },\n }).then(async response => {\n if (response.ok) {\n let data = await response.json()\n let newArray = tourOptions.map(tour =>\n data.filter(date => date.idTour === tour.idTour)\n )\n // console.log(\"CALENDARRIOOOO ===>\", data)\n setDateOptions(newArray)\n } else {\n console.error(\"Error cargando los datos. \\n\", response)\n }\n })\n }, [tourOptions])\n\n useEffect(() => {\n if (fecha && !tour.preventDateRefresh) setFecha(\"\")\n }, [tour])\n\n function onDateChange(date, dateString) {\n setFecha(dateString)\n let availableDates = dateOptionsOfCurrentTour.filter(\n date => date.fecha === dateString\n )\n if (availableDates.length) {\n let availabilityArray = availableDates.map(date => date.disponibilidad)\n let maximumAvailability = Math.max(...availabilityArray)\n setAvailability(maximumAvailability)\n } else {\n setAvailability(0)\n }\n }\n\n function counterUp() {\n if (personas < 5) {\n if (selectedTime.idFecha) {\n if (personas < selectedTime.disponibilidad) setPersonas(personas + 1)\n } else {\n if (personas < availability) setPersonas(personas + 1)\n }\n }\n }\n\n function counterDown() {\n personas > 1 && setPersonas(personas - 1)\n }\n\n useEffect(() => {\n if (availability && personas > availability) setPersonas(availability)\n }, [availability])\n\n function onTourChange(value) {\n setTour(JSON.parse(value))\n }\n\n const addPointsToNumber = number => {\n let originalString = number.toString()\n let newString = \"\"\n for (let i = originalString.length - 1; i >= 0; i--) {\n newString = originalString[i] + newString\n if (!((originalString.length - i) % 3) && i !== 0)\n newString = \".\" + newString\n }\n return newString\n }\n\n return (\n \n \n \n \n \n {/**/}\n {/**/}\n {/**/}\n {/**/}\n \n \n \n )\n}\n\nexport default LaCasaDeQuilmes\n\nexport const data = graphql`\n query QuilmesTour {\n allBases {\n nodes {\n bases {\n fileName\n fileUrl\n }\n tyc {\n fileName\n fileUrl\n }\n politica {\n fileName\n fileUrl\n }\n id\n }\n }\n allPrecauciones {\n nodes {\n id\n title\n items {\n item\n }\n }\n }\n allComollego {\n nodes {\n id\n iframe\n subtitle\n title\n googleMaps\n text\n colectivos {\n colectivo\n link\n }\n trenes {\n tren\n trenlink\n }\n }\n }\n allFaq {\n nodes {\n answer\n id\n index\n question\n }\n }\n imgsTour: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n imgsHome: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes/home\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n imgsLele: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes/lele\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n imgsComoLlegar: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes/comoLlegar\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n imgsCompartiExp: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes/compartiExp\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n imgsTourCompleto: allFile(\n filter: { relativeDirectory: { eq: \"lacasadequilmes/tourCompleto\" } }\n ) {\n edges {\n node {\n name\n base\n childImageSharp {\n fluid(quality: 75, maxWidth: 1080) {\n originalName\n ...GatsbyImageSharpFluid\n }\n }\n }\n }\n }\n }\n`\n","export const cleanImagesArray = data => {\n const keys = Object.keys(data)\n const Images = {}\n keys.forEach(key => {\n data[key].edges &&\n data[key].edges.forEach(img => {\n Images[key] = { ...Images[key], [img.node.name]: img.node }\n })\n })\n return Images\n}\n","var Symbol = require('./_Symbol'),\n arrayMap = require('./_arrayMap'),\n isArray = require('./isArray'),\n isSymbol = require('./isSymbol');\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nmodule.exports = baseToString;\n"],"sourceRoot":""}