@transsionfe/semi-ui-vue 0.0.1 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cjs/components/_sortable/Sortable.vue.cjs +1 -1
- package/lib/cjs/components/anchor/index.cjs +1 -1
- package/lib/cjs/components/autoComplete/AutoComplete.vue.cjs +1 -1
- package/lib/cjs/components/autoComplete/AutoComplete.vue.cjs.map +1 -1
- package/lib/cjs/components/autoComplete/Option.vue.cjs +1 -1
- package/lib/cjs/components/autoComplete/Option.vue.cjs.map +1 -1
- package/lib/cjs/components/autoComplete/index.cjs +1 -1
- package/lib/cjs/components/autoComplete/index.cjs.map +1 -1
- package/lib/cjs/components/avatar/index.cjs +1 -1
- package/lib/cjs/components/backTop/index.cjs +1 -1
- package/lib/cjs/components/badge/index.cjs +1 -1
- package/lib/cjs/components/banner/index.cjs +1 -1
- package/lib/cjs/components/breadcrumb/index.cjs +1 -1
- package/lib/cjs/components/breadcrumb/index.cjs.map +1 -1
- package/lib/cjs/components/button/Button.vue.cjs +1 -1
- package/lib/cjs/components/button/Button.vue.cjs.map +1 -1
- package/lib/cjs/components/button/index.cjs +1 -1
- package/lib/cjs/components/calendar/index.cjs +1 -1
- package/lib/cjs/components/card/index.cjs +1 -1
- package/lib/cjs/components/carousel/index.cjs +1 -1
- package/lib/cjs/components/cascader/Cascader.vue.cjs +1 -1
- package/lib/cjs/components/cascader/Cascader.vue.cjs.map +1 -1
- package/lib/cjs/components/cascader/CascaderPanel.vue.cjs +1 -1
- package/lib/cjs/components/cascader/CascaderPanel.vue.cjs.map +1 -1
- package/lib/cjs/components/cascader/index.cjs +1 -1
- package/lib/cjs/components/cascader/index.cjs.map +1 -1
- package/lib/cjs/components/checkbox/CheckboxInner.vue.cjs +1 -1
- package/lib/cjs/components/checkbox/index.cjs +1 -1
- package/lib/cjs/components/checkbox/index.cjs.map +1 -1
- package/lib/cjs/components/collapse/index.cjs +1 -1
- package/lib/cjs/components/collapse/index.cjs.map +1 -1
- package/lib/cjs/components/collapsible/index.cjs +1 -1
- package/lib/cjs/components/colorPicker/ColorPicker.vue.cjs +1 -1
- package/lib/cjs/components/colorPicker/ColorPicker.vue.cjs.map +1 -1
- package/lib/cjs/components/colorPicker/DataPart.vue.cjs +1 -1
- package/lib/cjs/components/colorPicker/DataPart.vue.cjs.map +1 -1
- package/lib/cjs/components/colorPicker/index.cjs +1 -1
- package/lib/cjs/components/datePicker/DatePicker.vue.cjs +1 -1
- package/lib/cjs/components/datePicker/DatePicker.vue.cjs.map +1 -1
- package/lib/cjs/components/datePicker/index.cjs +1 -1
- package/lib/cjs/components/datePicker/index.cjs.map +1 -1
- package/lib/cjs/components/descriptions/index.cjs +1 -1
- package/lib/cjs/components/descriptions/index.cjs.map +1 -1
- package/lib/cjs/components/divider/index.cjs +1 -1
- package/lib/cjs/components/divider/index.cjs.map +1 -1
- package/lib/cjs/components/dropdown/index.cjs +1 -1
- package/lib/cjs/components/dropdown/index.cjs.map +1 -1
- package/lib/cjs/components/empty/index.cjs +1 -1
- package/lib/cjs/components/form/FieldWrapper.vue.cjs +1 -1
- package/lib/cjs/components/form/FieldWrapper.vue.cjs.map +1 -1
- package/lib/cjs/components/form/Form.vue.cjs +1 -1
- package/lib/cjs/components/form/Form.vue.cjs.map +1 -1
- package/lib/cjs/components/form/Group.vue.cjs +1 -1
- package/lib/cjs/components/form/Group.vue.cjs.map +1 -1
- package/lib/cjs/components/form/Slot.vue.cjs +1 -1
- package/lib/cjs/components/form/Slot.vue.cjs.map +1 -1
- package/lib/cjs/components/form/index.cjs +1 -1
- package/lib/cjs/components/form/index.cjs.map +1 -1
- package/lib/cjs/components/highlight/index.cjs +1 -1
- package/lib/cjs/components/iconButton/IconButton.vue.cjs +1 -1
- package/lib/cjs/components/iconButton/IconButton.vue.cjs.map +1 -1
- package/lib/cjs/components/iconButton/index.cjs +1 -1
- package/lib/cjs/components/icons/{Icon.vue3.cjs → Icon.vue2.cjs} +2 -2
- package/lib/cjs/components/icons/Icon.vue2.cjs.map +1 -0
- package/lib/cjs/components/icons/icons/IconAbsoluteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAbsoluteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconActivity.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconActivity.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlarm.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlarm.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlertCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlertCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlertTriangle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlertTriangle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignBottom.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignBottom.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignCenter.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignCenter.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignCenterVertical.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignCenterVertical.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHCenterStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHCenterStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHRightStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignHRightStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignJustify.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignJustify.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignTop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignTop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVBotStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVBotStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVBottomStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVBottomStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVCenterStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVCenterStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVTopStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAlignVTopStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconApartment.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconApartment.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAppCenter.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAppCenter.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconApps.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconApps.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArchive.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArchive.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDownLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDownLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDownRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowDownRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUp.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUp.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUpLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUpLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUpRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArrowUpRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconArticle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconArticle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAscend.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAscend.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconAt.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconAt.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBackTop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBackTop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBackward.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBackward.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBarChartHStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBarChartHStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBarChartVStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBarChartVStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBeaker.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBeaker.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBell.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBell.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBellStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBellStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBold.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBold.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBolt.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBolt.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookH5Stroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookH5Stroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookOpenStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookOpenStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookmark.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookmark.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookmarkAddStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookmarkAddStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBookmarkDeleteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBookmarkDeleteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBottomCenterStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBottomCenterStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBottomLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBottomLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBottomRightStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBottomRightStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBox.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBox.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBrackets.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBrackets.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBranch.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBranch.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBriefStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBriefStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBriefcase.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBriefcase.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBulb.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBulb.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconButtonStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconButtonStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconBytedanceLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconBytedanceLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCalendar.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCalendar.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCalendarClock.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCalendarClock.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCalendarStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCalendarStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCamera.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCamera.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCandlestickChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCandlestickChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCaretdown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCaretdown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCaretup.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCaretup.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCarouselStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCarouselStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCart.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCart.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCaseSensitive.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCaseSensitive.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCenterLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCenterLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCenterRightStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCenterRightStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChainStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChainStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCheckChoiceStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCheckChoiceStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCheckCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCheckCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCheckList.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCheckList.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCheckboxIndeterminate.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCheckboxIndeterminate.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCheckboxTick.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCheckboxTick.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChecklistStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChecklistStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronDownStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronDownStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronRightStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronRightStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronUp.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronUp.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconChevronUpDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconChevronUpDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconClear.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconClear.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconClock.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconClock.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconClose.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconClose.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCloud.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCloud.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCloudStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCloudStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCloudUploadStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCloudUploadStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCode.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCode.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCodeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCodeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCoinMoneyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCoinMoneyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconColorPalette.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconColorPalette.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconColumnsStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconColumnsStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCommand.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCommand.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconComment.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconComment.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCommentStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCommentStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconComponent.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconComponent.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconComponentPlaceholderStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconComponentPlaceholderStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconComponentStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconComponentStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconConfigStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconConfigStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconConnectionPoint1.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconConnectionPoint1.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconConnectionPoint2.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconConnectionPoint2.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconContrast.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconContrast.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCopy.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCopy.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCopyAdd.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCopyAdd.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCopyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCopyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCornerRadiusStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCornerRadiusStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCreditCard.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCreditCard.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCrop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCrop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCrossCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCrossCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCrossStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCrossStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCrown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCrown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCustomerSupport.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCustomerSupport.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCustomerSupportStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCustomerSupportStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconCustomize.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconCustomize.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDelete.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDelete.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDeleteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDeleteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDescend.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDescend.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDescend2.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDescend2.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDesktop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDesktop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDisc.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDisc.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDislikeThumb.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDislikeThumb.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDivide.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDivide.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDongchediLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDongchediLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDoubleChevronLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDoubleChevronLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDoubleChevronRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDoubleChevronRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDownCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDownCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDownload.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDownload.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDownloadStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDownloadStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconDuration.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconDuration.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEdit.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEdit.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEdit2Stroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEdit2Stroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEditStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEditStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconElementStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconElementStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEmoji.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEmoji.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconExit.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconExit.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconExpand.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconExpand.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconExport.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconExport.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconExternalOpen.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconExternalOpen.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconExternalOpenStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconExternalOpenStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEyeClosed.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEyeClosed.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEyeClosedSolid.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEyeClosedSolid.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEyeOpened.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEyeOpened.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconEyedropper.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconEyedropper.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFacebook.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFacebook.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFaceuLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFaceuLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFastForward.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFastForward.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFastFoward.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFastFoward.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFavoriteList.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFavoriteList.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFeishuLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFeishuLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFemale.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFemale.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFigma.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFigma.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFile.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFile.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFillStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFillStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFilledArrowDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFilledArrowDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFilledArrowUp.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFilledArrowUp.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFilpVertical.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFilpVertical.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFilter.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFilter.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFingerLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFingerLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFixedStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFixedStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFlag.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFlag.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFlipHorizontal.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFlipHorizontal.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFlowChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFlowChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFolder.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFolder.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFolderOpen.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFolderOpen.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFolderStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFolderStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFollowStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFollowStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFont.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFont.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFontColor.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFontColor.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconForward.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconForward.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconForwardStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconForwardStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconFullScreenStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconFullScreenStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGallery.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGallery.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGift.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGift.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGiftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGiftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGit.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGit.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGithubLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGithubLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGitlabLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGitlabLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGlobe.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGlobe.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGlobeStroke.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGlobeStroke.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGridRectangle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGridRectangle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGridSquare.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGridSquare.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGridStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGridStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGridView.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGridView.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconGridView1.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconGridView1.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH1.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH1.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH2.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH2.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH3.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH3.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH4.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH4.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH5.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH5.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH6.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH6.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH7.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH7.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH8.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH8.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconH9.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconH9.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHandle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHandle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHash.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHash.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHeartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHeartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHelm.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHelm.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHelpCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHelpCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHelpCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHelpCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHistogram.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHistogram.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHistory.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHistory.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHn.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHn.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHome.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHome.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHomeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHomeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHorn.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHorn.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHourglass.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHourglass.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconHourglassStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconHourglassStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIdCard.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIdCard.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIdentity.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIdentity.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconImage.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconImage.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconImageStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconImageStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconImport.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconImport.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInbox.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInbox.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIndenpentCornersStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIndenpentCornersStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIndentLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIndentLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIndentRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIndentRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIndependentCornersStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconIndependentCornersStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInfoCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInfoCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInherit.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInherit.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInheritStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInheritStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInnerSectionStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInnerSectionStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInstagram.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInstagram.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInteractiveStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInteractiveStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconInviteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconInviteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconIssueStroked.cjs +2 -2
- package/lib/cjs/components/icons/icons/IconIssueStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconItalic.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconItalic.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconJianying.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconJianying.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconKanban.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconKanban.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconKey.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconKey.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconKeyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconKeyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLanguage.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLanguage.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLayers.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLayers.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLeftCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLeftCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLightningStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLightningStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLikeHeart.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLikeHeart.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLikeThumb.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLikeThumb.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLineChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLineChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLineHeight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLineHeight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLink.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLink.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconList.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconList.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconListView.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconListView.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLive.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLive.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLoading.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLoading.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLock.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLock.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLockStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLockStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconLoopTextStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconLoopTextStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMail.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMail.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMailStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMailStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMailStroked1.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMailStroked1.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMale.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMale.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMapPin.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMapPin.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMapPinStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMapPinStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMarginLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMarginLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMarginStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMarginStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMark.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMark.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMaximize.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMaximize.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMember.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMember.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMenu.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMenu.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMicrophone.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMicrophone.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMicrophoneOff.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMicrophoneOff.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMinimize.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMinimize.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMinus.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMinus.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMinusCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMinusCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMinusCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMinusCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMinusStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMinusStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconModalStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconModalStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMoneyExchangeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMoneyExchangeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMonitorStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMonitorStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMoon.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMoon.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMore.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMore.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMoreStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMoreStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMusic.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMusic.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMusicNoteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMusicNoteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconMute.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconMute.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconNineGridStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconNineGridStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconNoteMoneyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconNoteMoneyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconOption.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconOption.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconOrderedList.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconOrderedList.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconOrderedListStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconOrderedListStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPaperclip.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPaperclip.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPause.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPause.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPercentage.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPercentage.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPhone.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPhone.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPhoneStroke.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPhoneStroke.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPieChart2Stroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPieChart2Stroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPieChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPieChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPiechartH5Stroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPiechartH5Stroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPipixiaLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPipixiaLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlay.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlay.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlayCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlayCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlus.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlus.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlusCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlusCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlusCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlusCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPlusStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPlusStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPriceTag.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPriceTag.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPrint.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPrint.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPrizeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPrizeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPulse.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPulse.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconPuzzle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconPuzzle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconQingyan.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconQingyan.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconQrCode.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconQrCode.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconQuit.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconQuit.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconQuote.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconQuote.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRadio.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRadio.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRankingCardStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRankingCardStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRealSizeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRealSizeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRedo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRedo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRedoStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRedoStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRefresh.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRefresh.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRefresh2.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRefresh2.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRegExp.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRegExp.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconReply.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconReply.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconReplyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconReplyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconResso.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconResso.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRestart.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRestart.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRingChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRingChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRotate.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRotate.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRotationStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRotationStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRoute.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRoute.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconRowsStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconRowsStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSafe.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSafe.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSave.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSave.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSaveStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSaveStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconScan.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconScan.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconScissors.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconScissors.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSearch.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSearch.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSearchStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSearchStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSectionStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSectionStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSemiLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSemiLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSend.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSend.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSendMsgStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSendMsgStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSendStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSendStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconServer.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconServer.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconServerStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconServerStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSetting.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSetting.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSettingStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSettingStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShareMoneyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShareMoneyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShareStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShareStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShield.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShield.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShieldStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShieldStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShift.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShift.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShoppingBag.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShoppingBag.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShrink.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShrink.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconShrinkScreenStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconShrinkScreenStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSidebar.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSidebar.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSignal.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSignal.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSimilarity.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSimilarity.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleLeft.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleLeft.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleTop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmallTriangleTop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmartphoneCheckStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmartphoneCheckStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSmartphoneStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSmartphoneStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSong.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSong.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSonicStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSonicStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSort.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSort.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSortStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSortStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSourceControl.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSourceControl.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSpin.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSpin.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStackBarChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStackBarChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStar.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStar.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStarStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStarStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStopwatchStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStopwatchStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStoryStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStoryStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconStrikeThrough.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconStrikeThrough.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSun.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSun.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconSync.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconSync.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTabArrowStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTabArrowStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTabsStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTabsStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTaskMoneyStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTaskMoneyStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTemplate.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTemplate.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTemplateStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTemplateStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTerminal.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTerminal.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTestScoreStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTestScoreStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconText.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconText.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTextRectangle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTextRectangle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTextStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTextStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconThumbUpStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconThumbUpStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTick.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTick.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTicketCodeExchangeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTicketCodeExchangeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTicketCodeStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTicketCodeStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTiktokLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTiktokLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTop.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTop.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTopCenterStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTopCenterStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTopLeftStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTopLeftStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTopRightStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTopRightStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTopbuzzLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTopbuzzLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconToutiaoLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconToutiaoLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTransparentStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTransparentStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTreeTriangleDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTreeTriangleDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTreeTriangleRight.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTreeTriangleRight.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleArrow.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleArrow.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleArrowVertical.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleArrowVertical.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleDown.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleDown.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleUp.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTriangleUp.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTrueFalseStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTrueFalseStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTvCheckedStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTvCheckedStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTwitter.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTwitter.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconTypograph.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconTypograph.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUnChainStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUnChainStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUnderline.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUnderline.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUndo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUndo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUnlink.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUnlink.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUnlock.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUnlock.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUnlockStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUnlockStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUpload.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUpload.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUploadError.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUploadError.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUser.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUser.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserAdd.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserAdd.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserCardPhone.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserCardPhone.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserCardVideo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserCardVideo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserCircle.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserCircle.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserCircleStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserCircleStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserGroup.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserGroup.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserListStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserListStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserSetting.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserSetting.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconUserStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconUserStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVennChartStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVennChartStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVerify.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVerify.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVersionStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVersionStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVideo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVideo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVideoDouyinStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVideoDouyinStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVideoListStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVideoListStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVideoStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVideoStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVideoUrlStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVideoUrlStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVigoLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVigoLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVolume1.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVolume1.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVolume2.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVolume2.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVolumnSilent.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVolumnSilent.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVoteStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVoteStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconVoteVideoStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconVoteVideoStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconWeibo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconWeibo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconWholeWord.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconWholeWord.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconWifi.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconWifi.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconWindowAdaptionStroked.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconWindowAdaptionStroked.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconWrench.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconWrench.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconXiguaLogo.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconXiguaLogo.cjs.map +1 -1
- package/lib/cjs/components/icons/icons/IconYoutube.cjs +1 -1
- package/lib/cjs/components/icons/icons/IconYoutube.cjs.map +1 -1
- package/lib/cjs/components/image/index.cjs +1 -1
- package/lib/cjs/components/input/index.cjs +1 -1
- package/lib/cjs/components/input/index.cjs.map +1 -1
- package/lib/cjs/components/inputNumber/index.cjs +1 -1
- package/lib/cjs/components/inputNumber/index.cjs.map +1 -1
- package/lib/cjs/components/layout/index.cjs +1 -1
- package/lib/cjs/components/list/List.vue.cjs +1 -1
- package/lib/cjs/components/list/List.vue.cjs.map +1 -1
- package/lib/cjs/components/list/index.cjs +1 -1
- package/lib/cjs/components/list/index.cjs.map +1 -1
- package/lib/cjs/components/modal/index.cjs +1 -1
- package/lib/cjs/components/modal/index.cjs.map +1 -1
- package/lib/cjs/components/navigation/CollapseButton.vue.cjs +1 -1
- package/lib/cjs/components/navigation/CollapseButton.vue.cjs.map +1 -1
- package/lib/cjs/components/navigation/Item.vue.cjs +1 -1
- package/lib/cjs/components/navigation/Item.vue.cjs.map +1 -1
- package/lib/cjs/components/navigation/SubNav.vue.cjs +1 -1
- package/lib/cjs/components/navigation/SubNav.vue.cjs.map +1 -1
- package/lib/cjs/components/navigation/index.cjs +1 -1
- package/lib/cjs/components/navigation/index.cjs.map +1 -1
- package/lib/cjs/components/notification/index.cjs +1 -1
- package/lib/cjs/components/notification/index.cjs.map +1 -1
- package/lib/cjs/components/overflowList/index.cjs +1 -1
- package/lib/cjs/components/pagination/index.cjs +1 -1
- package/lib/cjs/components/pinCode/index.cjs +1 -1
- package/lib/cjs/components/popconfirm/index.cjs +1 -1
- package/lib/cjs/components/popover/index.cjs +1 -1
- package/lib/cjs/components/progress/index.cjs +1 -1
- package/lib/cjs/components/radio/Radio.vue.cjs +1 -1
- package/lib/cjs/components/radio/Radio.vue.cjs.map +1 -1
- package/lib/cjs/components/radio/{RadioInner.vue3.cjs → RadioInner.vue2.cjs} +2 -2
- package/lib/cjs/components/radio/RadioInner.vue2.cjs.map +1 -0
- package/lib/cjs/components/radio/index.cjs +1 -1
- package/lib/cjs/components/radio/index.cjs.map +1 -1
- package/lib/cjs/components/rating/Rating.vue.cjs +1 -1
- package/lib/cjs/components/rating/Rating.vue.cjs.map +1 -1
- package/lib/cjs/components/rating/index.cjs +1 -1
- package/lib/cjs/components/rating/index.cjs.map +1 -1
- package/lib/cjs/components/resizable/Resizable.vue.cjs +1 -1
- package/lib/cjs/components/resizable/Resizable.vue.cjs.map +1 -1
- package/lib/cjs/components/resizable/group/ResizeGroup.vue.cjs +1 -1
- package/lib/cjs/components/resizable/group/ResizeGroup.vue.cjs.map +1 -1
- package/lib/cjs/components/resizable/group/ResizeItem.vue.cjs +1 -1
- package/lib/cjs/components/resizable/group/ResizeItem.vue.cjs.map +1 -1
- package/lib/cjs/components/select/Select.vue.cjs +1 -1
- package/lib/cjs/components/select/Select.vue.cjs.map +1 -1
- package/lib/cjs/components/select/index.cjs +1 -1
- package/lib/cjs/components/select/index.cjs.map +1 -1
- package/lib/cjs/components/sideSheet/index.cjs +1 -1
- package/lib/cjs/components/skeleton/index.cjs +1 -1
- package/lib/cjs/components/skeleton/index.cjs.map +1 -1
- package/lib/cjs/components/slider/Slider.vue.cjs +1 -1
- package/lib/cjs/components/slider/Slider.vue.cjs.map +1 -1
- package/lib/cjs/components/slider/index.cjs +1 -1
- package/lib/cjs/components/slider/index.cjs.map +1 -1
- package/lib/cjs/components/space/index.cjs +1 -1
- package/lib/cjs/components/space/index.cjs.map +1 -1
- package/lib/cjs/components/spin/Spin.vue.cjs +1 -1
- package/lib/cjs/components/spin/Spin.vue.cjs.map +1 -1
- package/lib/cjs/components/spin/{SpinIcon.vue3.cjs → SpinIcon.vue2.cjs} +2 -2
- package/lib/cjs/components/spin/SpinIcon.vue2.cjs.map +1 -0
- package/lib/cjs/components/spin/index.cjs +1 -1
- package/lib/cjs/components/steps/FillSteps.vue.cjs +1 -1
- package/lib/cjs/components/steps/FillSteps.vue.cjs.map +1 -1
- package/lib/cjs/components/steps/index.cjs +1 -1
- package/lib/cjs/components/switch/index.cjs +1 -1
- package/lib/cjs/components/switch/index.cjs.map +1 -1
- package/lib/cjs/components/table/Table.vue.cjs +1 -1
- package/lib/cjs/components/table/Table.vue.cjs.map +1 -1
- package/lib/cjs/components/table/TableHeaderRow.vue2.cjs +1 -1
- package/lib/cjs/components/table/TableHeaderRow.vue2.cjs.map +1 -1
- package/lib/cjs/components/table/VirtualizedBody.vue2.cjs +1 -1
- package/lib/cjs/components/table/VirtualizedBody.vue2.cjs.map +1 -1
- package/lib/cjs/components/table/index.cjs +1 -1
- package/lib/cjs/components/table/index.cjs.map +1 -1
- package/lib/cjs/components/tabs/TabBar.vue.cjs +1 -1
- package/lib/cjs/components/tabs/TabBar.vue.cjs.map +1 -1
- package/lib/cjs/components/tabs/index.cjs +1 -1
- package/lib/cjs/components/tabs/index.cjs.map +1 -1
- package/lib/cjs/components/tag/TagGroup.vue.cjs +1 -1
- package/lib/cjs/components/tag/TagGroup.vue.cjs.map +1 -1
- package/lib/cjs/components/tag/index.cjs +1 -1
- package/lib/cjs/components/tagInput/index.cjs +1 -1
- package/lib/cjs/components/tagInput/index.cjs.map +1 -1
- package/lib/cjs/components/timePicker/TimePicker.vue.cjs +1 -1
- package/lib/cjs/components/timePicker/TimePicker.vue.cjs.map +1 -1
- package/lib/cjs/components/timePicker/index.cjs +1 -1
- package/lib/cjs/components/timePicker/index.cjs.map +1 -1
- package/lib/cjs/components/timeline/index.cjs +1 -1
- package/lib/cjs/components/timeline/index.cjs.map +1 -1
- package/lib/cjs/components/toast/index.cjs +1 -1
- package/lib/cjs/components/toast/index.cjs.map +1 -1
- package/lib/cjs/components/tooltip/index.cjs +1 -1
- package/lib/cjs/components/transfer/index.cjs +1 -1
- package/lib/cjs/components/tree/NodeCollapsible.vue.cjs +1 -1
- package/lib/cjs/components/tree/NodeCollapsible.vue.cjs.map +1 -1
- package/lib/cjs/components/tree/TreeNode.vue.cjs +1 -1
- package/lib/cjs/components/tree/TreeNode.vue.cjs.map +1 -1
- package/lib/cjs/components/tree/index.cjs +1 -1
- package/lib/cjs/components/treeSelect/TreeSelect.vue.cjs +1 -1
- package/lib/cjs/components/treeSelect/TreeSelect.vue.cjs.map +1 -1
- package/lib/cjs/components/treeSelect/index.cjs +1 -1
- package/lib/cjs/components/treeSelect/index.cjs.map +1 -1
- package/lib/cjs/components/typography/Base.vue.cjs +1 -1
- package/lib/cjs/components/typography/Base.vue.cjs.map +1 -1
- package/lib/cjs/components/typography/Copyable.vue.cjs +1 -1
- package/lib/cjs/components/typography/Copyable.vue.cjs.map +1 -1
- package/lib/cjs/components/typography/index.cjs +1 -1
- package/lib/cjs/components/typography/index.cjs.map +1 -1
- package/lib/cjs/components/upload/Upload.vue.cjs +1 -1
- package/lib/cjs/components/upload/Upload.vue.cjs.map +1 -1
- package/lib/cjs/components/upload/index.cjs +1 -1
- package/lib/cjs/components/upload/index.cjs.map +1 -1
- package/lib/cjs/index.cjs +1 -1
- package/lib/cjs/index.cjs.map +1 -1
- package/lib/cjs/style.css +1 -1
- package/lib/css/semi.css +22196 -135
- package/lib/es/components/_cssAnimation/index.vue2.js +5 -0
- package/lib/es/components/_cssAnimation/index.vue2.js.map +1 -0
- package/lib/es/components/_portal/Portal.vue2.js +5 -0
- package/lib/es/components/_portal/Portal.vue2.js.map +1 -0
- package/lib/es/components/_resizeObserver/index.vue2.js +5 -0
- package/lib/es/components/_resizeObserver/index.vue2.js.map +1 -0
- package/lib/es/components/_sortable/Sortable.vue.js +0 -2
- package/lib/es/components/_sortable/Sortable.vue.js.map +1 -1
- package/lib/es/components/_sortable/Sortable.vue2.js +118 -0
- package/lib/es/components/_sortable/Sortable.vue2.js.map +1 -0
- package/lib/es/components/anchor/Anchor.vue2.js +5 -0
- package/lib/es/components/anchor/Anchor.vue2.js.map +1 -0
- package/lib/es/components/anchor/Link.vue2.js +5 -0
- package/lib/es/components/anchor/Link.vue2.js.map +1 -0
- package/lib/es/components/anchor/index.js +2 -3
- package/lib/es/components/anchor/index.js.map +1 -1
- package/lib/es/components/autoComplete/AutoComplete.vue.js +2 -4
- package/lib/es/components/autoComplete/AutoComplete.vue.js.map +1 -1
- package/lib/es/components/autoComplete/AutoComplete.vue2.js +5 -0
- package/lib/es/components/autoComplete/AutoComplete.vue2.js.map +1 -0
- package/lib/es/components/autoComplete/Option.vue.js +2 -3
- package/lib/es/components/autoComplete/Option.vue.js.map +1 -1
- package/lib/es/components/autoComplete/Option.vue2.js +5 -0
- package/lib/es/components/autoComplete/Option.vue2.js.map +1 -0
- package/lib/es/components/autoComplete/index.js +0 -1
- package/lib/es/components/autoComplete/index.js.map +1 -1
- package/lib/es/components/avatar/Avatar.vue2.js +5 -0
- package/lib/es/components/avatar/Avatar.vue2.js.map +1 -0
- package/lib/es/components/avatar/AvatarGroup.vue2.js +5 -0
- package/lib/es/components/avatar/AvatarGroup.vue2.js.map +1 -0
- package/lib/es/components/avatar/TopSlotSvg.vue2.js +5 -0
- package/lib/es/components/avatar/TopSlotSvg.vue2.js.map +1 -0
- package/lib/es/components/avatar/index.js +0 -1
- package/lib/es/components/avatar/index.js.map +1 -1
- package/lib/es/components/backTop/BackTop.vue2.js +5 -0
- package/lib/es/components/backTop/BackTop.vue2.js.map +1 -0
- package/lib/es/components/backTop/index.js +2 -3
- package/lib/es/components/backTop/index.js.map +1 -1
- package/lib/es/components/badge/Badge.vue2.js +5 -0
- package/lib/es/components/badge/Badge.vue2.js.map +1 -0
- package/lib/es/components/badge/index.js +3 -4
- package/lib/es/components/badge/index.js.map +1 -1
- package/lib/es/components/banner/Banner.vue2.js +5 -0
- package/lib/es/components/banner/Banner.vue2.js.map +1 -0
- package/lib/es/components/banner/index.js +0 -1
- package/lib/es/components/banner/index.js.map +1 -1
- package/lib/es/components/breadcrumb/Breadcrumb.vue2.js +185 -0
- package/lib/es/components/breadcrumb/Breadcrumb.vue2.js.map +1 -0
- package/lib/es/components/breadcrumb/BreadcrumbItem.vue2.js +159 -0
- package/lib/es/components/breadcrumb/BreadcrumbItem.vue2.js.map +1 -0
- package/lib/es/components/breadcrumb/index.js +7 -8
- package/lib/es/components/breadcrumb/index.js.map +1 -1
- package/lib/es/components/button/Button.vue.js +2 -3
- package/lib/es/components/button/Button.vue.js.map +1 -1
- package/lib/es/components/button/Button.vue2.js +5 -0
- package/lib/es/components/button/Button.vue2.js.map +1 -0
- package/lib/es/components/button/ButtonGroup.vue2.js +5 -0
- package/lib/es/components/button/ButtonGroup.vue2.js.map +1 -0
- package/lib/es/components/button/SplitButtonGroup.vue2.js +5 -0
- package/lib/es/components/button/SplitButtonGroup.vue2.js.map +1 -0
- package/lib/es/components/button/index.js +3 -4
- package/lib/es/components/button/index.js.map +1 -1
- package/lib/es/components/calendar/Calendar.vue2.js +5 -0
- package/lib/es/components/calendar/Calendar.vue2.js.map +1 -0
- package/lib/es/components/calendar/DayCalendar.vue2.js +194 -0
- package/lib/es/components/calendar/DayCalendar.vue2.js.map +1 -0
- package/lib/es/components/calendar/DayCol.vue2.js +125 -0
- package/lib/es/components/calendar/DayCol.vue2.js.map +1 -0
- package/lib/es/components/calendar/MonthCalendar.vue2.js +228 -0
- package/lib/es/components/calendar/MonthCalendar.vue2.js.map +1 -0
- package/lib/es/components/calendar/MonthCalendarInner.vue2.js +5 -0
- package/lib/es/components/calendar/MonthCalendarInner.vue2.js.map +1 -0
- package/lib/es/components/calendar/RangeCalendar.vue2.js +178 -0
- package/lib/es/components/calendar/RangeCalendar.vue2.js.map +1 -0
- package/lib/es/components/calendar/RangeCalendarInner.vue2.js +5 -0
- package/lib/es/components/calendar/RangeCalendarInner.vue2.js.map +1 -0
- package/lib/es/components/calendar/TimeCol.vue2.js +54 -0
- package/lib/es/components/calendar/TimeCol.vue2.js.map +1 -0
- package/lib/es/components/calendar/WeekCalendar.vue2.js +178 -0
- package/lib/es/components/calendar/WeekCalendar.vue2.js.map +1 -0
- package/lib/es/components/calendar/WeekCalendarInner.vue2.js +5 -0
- package/lib/es/components/calendar/WeekCalendarInner.vue2.js.map +1 -0
- package/lib/es/components/calendar/index.js +2 -3
- package/lib/es/components/calendar/index.js.map +1 -1
- package/lib/es/components/card/Card.vue2.js +130 -0
- package/lib/es/components/card/Card.vue2.js.map +1 -0
- package/lib/es/components/card/CardGroup.vue2.js +5 -0
- package/lib/es/components/card/CardGroup.vue2.js.map +1 -0
- package/lib/es/components/card/index.js +3 -4
- package/lib/es/components/card/index.js.map +1 -1
- package/lib/es/components/carousel/Carousel.vue2.js +5 -0
- package/lib/es/components/carousel/Carousel.vue2.js.map +1 -0
- package/lib/es/components/carousel/CarouselArrow.vue2.js +5 -0
- package/lib/es/components/carousel/CarouselArrow.vue2.js.map +1 -0
- package/lib/es/components/carousel/CarouselIndicator.vue2.js +5 -0
- package/lib/es/components/carousel/CarouselIndicator.vue2.js.map +1 -0
- package/lib/es/components/carousel/index.js +2 -3
- package/lib/es/components/carousel/index.js.map +1 -1
- package/lib/es/components/cascader/Cascader.vue.js +40 -42
- package/lib/es/components/cascader/Cascader.vue.js.map +1 -1
- package/lib/es/components/cascader/Cascader.vue2.js +5 -0
- package/lib/es/components/cascader/Cascader.vue2.js.map +1 -0
- package/lib/es/components/cascader/CascaderPanel.vue.js +2 -3
- package/lib/es/components/cascader/CascaderPanel.vue.js.map +1 -1
- package/lib/es/components/cascader/CascaderPanel.vue2.js +5 -0
- package/lib/es/components/cascader/CascaderPanel.vue2.js.map +1 -0
- package/lib/es/components/cascader/Item.vue2.js +5 -0
- package/lib/es/components/cascader/Item.vue2.js.map +1 -0
- package/lib/es/components/cascader/index.js +5 -6
- package/lib/es/components/cascader/index.js.map +1 -1
- package/lib/es/components/checkbox/Checkbox.vue2.js +5 -0
- package/lib/es/components/checkbox/Checkbox.vue2.js.map +1 -0
- package/lib/es/components/checkbox/CheckboxGroup.vue2.js +5 -0
- package/lib/es/components/checkbox/CheckboxGroup.vue2.js.map +1 -0
- package/lib/es/components/checkbox/CheckboxInner.vue.js +3 -4
- package/lib/es/components/checkbox/CheckboxInner.vue.js.map +1 -1
- package/lib/es/components/checkbox/CheckboxInner.vue2.js +90 -0
- package/lib/es/components/checkbox/CheckboxInner.vue2.js.map +1 -0
- package/lib/es/components/checkbox/index.js +4 -5
- package/lib/es/components/checkbox/index.js.map +1 -1
- package/lib/es/components/collapse/Collapse.vue2.js +5 -0
- package/lib/es/components/collapse/Collapse.vue2.js.map +1 -0
- package/lib/es/components/collapse/CollapsePanel.vue2.js +5 -0
- package/lib/es/components/collapse/CollapsePanel.vue2.js.map +1 -0
- package/lib/es/components/collapse/index.js +0 -1
- package/lib/es/components/collapse/index.js.map +1 -1
- package/lib/es/components/collapsible/Collapsible.vue2.js +5 -0
- package/lib/es/components/collapsible/Collapsible.vue2.js.map +1 -0
- package/lib/es/components/collapsible/index.js +2 -3
- package/lib/es/components/collapsible/index.js.map +1 -1
- package/lib/es/components/colorPicker/AlphaSlider.vue2.js +5 -0
- package/lib/es/components/colorPicker/AlphaSlider.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/ColorChooseArea.vue2.js +5 -0
- package/lib/es/components/colorPicker/ColorChooseArea.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/ColorPicker.vue.js +2 -3
- package/lib/es/components/colorPicker/ColorPicker.vue.js.map +1 -1
- package/lib/es/components/colorPicker/ColorPicker.vue2.js +5 -0
- package/lib/es/components/colorPicker/ColorPicker.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/ColorPickerInner.vue2.js +5 -0
- package/lib/es/components/colorPicker/ColorPickerInner.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/ColorSlider.vue2.js +5 -0
- package/lib/es/components/colorPicker/ColorSlider.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/DataPart.vue.js +2 -3
- package/lib/es/components/colorPicker/DataPart.vue.js.map +1 -1
- package/lib/es/components/colorPicker/DataPart.vue2.js +5 -0
- package/lib/es/components/colorPicker/DataPart.vue2.js.map +1 -0
- package/lib/es/components/colorPicker/index.js +2 -3
- package/lib/es/components/colorPicker/index.js.map +1 -1
- package/lib/es/components/datePicker/DatePicker.vue.js +2 -3
- package/lib/es/components/datePicker/DatePicker.vue.js.map +1 -1
- package/lib/es/components/datePicker/DatePicker.vue2.js +5 -0
- package/lib/es/components/datePicker/DatePicker.vue2.js.map +1 -0
- package/lib/es/components/datePicker/Footer.vue2.js +5 -0
- package/lib/es/components/datePicker/Footer.vue2.js.map +1 -0
- package/lib/es/components/datePicker/Month.vue2.js +5 -0
- package/lib/es/components/datePicker/Month.vue2.js.map +1 -0
- package/lib/es/components/datePicker/MonthsGrid.vue2.js +5 -0
- package/lib/es/components/datePicker/MonthsGrid.vue2.js.map +1 -0
- package/lib/es/components/datePicker/Navigation.vue2.js +5 -0
- package/lib/es/components/datePicker/Navigation.vue2.js.map +1 -0
- package/lib/es/components/datePicker/Panel.vue2.js +5 -0
- package/lib/es/components/datePicker/Panel.vue2.js.map +1 -0
- package/lib/es/components/datePicker/QuickControl.vue2.js +5 -0
- package/lib/es/components/datePicker/QuickControl.vue2.js.map +1 -0
- package/lib/es/components/datePicker/YearAndMonth.vue2.js +5 -0
- package/lib/es/components/datePicker/YearAndMonth.vue2.js.map +1 -0
- package/lib/es/components/datePicker/index.js +2 -3
- package/lib/es/components/datePicker/index.js.map +1 -1
- package/lib/es/components/descriptions/Descriptions.vue2.js +5 -0
- package/lib/es/components/descriptions/Descriptions.vue2.js.map +1 -0
- package/lib/es/components/descriptions/DescriptionsItem.vue2.js +5 -0
- package/lib/es/components/descriptions/DescriptionsItem.vue2.js.map +1 -0
- package/lib/es/components/descriptions/index.js +0 -1
- package/lib/es/components/descriptions/index.js.map +1 -1
- package/lib/es/components/divider/Divider.vue2.js +5 -0
- package/lib/es/components/divider/Divider.vue2.js.map +1 -0
- package/lib/es/components/divider/index.js +0 -1
- package/lib/es/components/divider/index.js.map +1 -1
- package/lib/es/components/dropdown/ContextProvider.vue2.js +5 -0
- package/lib/es/components/dropdown/ContextProvider.vue2.js.map +1 -0
- package/lib/es/components/dropdown/Dropdown.vue2.js +5 -0
- package/lib/es/components/dropdown/Dropdown.vue2.js.map +1 -0
- package/lib/es/components/dropdown/DropdownDivider.vue2.js +5 -0
- package/lib/es/components/dropdown/DropdownDivider.vue2.js.map +1 -0
- package/lib/es/components/dropdown/DropdownItem.vue2.js +5 -0
- package/lib/es/components/dropdown/DropdownItem.vue2.js.map +1 -0
- package/lib/es/components/dropdown/DropdownMenu.vue2.js +5 -0
- package/lib/es/components/dropdown/DropdownMenu.vue2.js.map +1 -0
- package/lib/es/components/dropdown/DropdownTitle.vue2.js +5 -0
- package/lib/es/components/dropdown/DropdownTitle.vue2.js.map +1 -0
- package/lib/es/components/dropdown/index.js +6 -7
- package/lib/es/components/dropdown/index.js.map +1 -1
- package/lib/es/components/empty/Empty.vue2.js +5 -0
- package/lib/es/components/empty/Empty.vue2.js.map +1 -0
- package/lib/es/components/empty/index.js +3 -4
- package/lib/es/components/empty/index.js.map +1 -1
- package/lib/es/components/form/ArrayField.vue2.js +5 -0
- package/lib/es/components/form/ArrayField.vue2.js.map +1 -0
- package/lib/es/components/form/ErrorMessage.vue2.js +5 -0
- package/lib/es/components/form/ErrorMessage.vue2.js.map +1 -0
- package/lib/es/components/form/FieldWrapper.vue.js +2 -3
- package/lib/es/components/form/FieldWrapper.vue.js.map +1 -1
- package/lib/es/components/form/FieldWrapper.vue2.js +5 -0
- package/lib/es/components/form/FieldWrapper.vue2.js.map +1 -0
- package/lib/es/components/form/Form.vue.js +2 -3
- package/lib/es/components/form/Form.vue.js.map +1 -1
- package/lib/es/components/form/Form.vue2.js +5 -0
- package/lib/es/components/form/Form.vue2.js.map +1 -0
- package/lib/es/components/form/Group.vue.js +2 -3
- package/lib/es/components/form/Group.vue.js.map +1 -1
- package/lib/es/components/form/Group.vue2.js +5 -0
- package/lib/es/components/form/Group.vue2.js.map +1 -0
- package/lib/es/components/form/Label.vue2.js +5 -0
- package/lib/es/components/form/Label.vue2.js.map +1 -0
- package/lib/es/components/form/Section.vue2.js +37 -0
- package/lib/es/components/form/Section.vue2.js.map +1 -0
- package/lib/es/components/form/Slot.vue.js +13 -14
- package/lib/es/components/form/Slot.vue.js.map +1 -1
- package/lib/es/components/form/Slot.vue2.js +5 -0
- package/lib/es/components/form/Slot.vue2.js.map +1 -0
- package/lib/es/components/form/index.js +6 -7
- package/lib/es/components/form/index.js.map +1 -1
- package/lib/es/components/grid/Col.vue2.js +5 -0
- package/lib/es/components/grid/Col.vue2.js.map +1 -0
- package/lib/es/components/grid/Row.vue2.js +5 -0
- package/lib/es/components/grid/Row.vue2.js.map +1 -0
- package/lib/es/components/highlight/Highlight.vue2.js +5 -0
- package/lib/es/components/highlight/Highlight.vue2.js.map +1 -0
- package/lib/es/components/highlight/index.js +2 -3
- package/lib/es/components/highlight/index.js.map +1 -1
- package/lib/es/components/iconButton/IconButton.vue.js +29 -30
- package/lib/es/components/iconButton/IconButton.vue.js.map +1 -1
- package/lib/es/components/iconButton/IconButton.vue2.js +5 -0
- package/lib/es/components/iconButton/IconButton.vue2.js.map +1 -0
- package/lib/es/components/iconButton/index.js +2 -3
- package/lib/es/components/iconButton/index.js.map +1 -1
- package/lib/es/components/icons/Icon.vue2.js +5 -0
- package/lib/es/components/icons/Icon.vue2.js.map +1 -0
- package/lib/es/components/icons/icons/IconAbsoluteStroked.js +2 -3
- package/lib/es/components/icons/icons/IconAbsoluteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconActivity.js +0 -1
- package/lib/es/components/icons/icons/IconActivity.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlarm.js +2 -3
- package/lib/es/components/icons/icons/IconAlarm.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlertCircle.js +5 -6
- package/lib/es/components/icons/icons/IconAlertCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlertTriangle.js +3 -4
- package/lib/es/components/icons/icons/IconAlertTriangle.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignBottom.js +6 -7
- package/lib/es/components/icons/icons/IconAlignBottom.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignCenter.js +2 -3
- package/lib/es/components/icons/icons/IconAlignCenter.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignCenterVertical.js +5 -6
- package/lib/es/components/icons/icons/IconAlignCenterVertical.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignHCenterStroked.js +2 -3
- package/lib/es/components/icons/icons/IconAlignHCenterStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignHLeftStroked.js +2 -3
- package/lib/es/components/icons/icons/IconAlignHLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignHRightStroked.js +2 -3
- package/lib/es/components/icons/icons/IconAlignHRightStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignJustify.js +3 -4
- package/lib/es/components/icons/icons/IconAlignJustify.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignLeft.js +2 -3
- package/lib/es/components/icons/icons/IconAlignLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignRight.js +2 -3
- package/lib/es/components/icons/icons/IconAlignRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignTop.js +6 -7
- package/lib/es/components/icons/icons/IconAlignTop.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignVBotStroked.js +3 -4
- package/lib/es/components/icons/icons/IconAlignVBotStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignVBottomStroked.js +8 -9
- package/lib/es/components/icons/icons/IconAlignVBottomStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignVCenterStroked.js +3 -4
- package/lib/es/components/icons/icons/IconAlignVCenterStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconAlignVTopStroked.js +3 -4
- package/lib/es/components/icons/icons/IconAlignVTopStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconApartment.js +5 -6
- package/lib/es/components/icons/icons/IconApartment.js.map +1 -1
- package/lib/es/components/icons/icons/IconAppCenter.js +3 -4
- package/lib/es/components/icons/icons/IconAppCenter.js.map +1 -1
- package/lib/es/components/icons/icons/IconApps.js +0 -1
- package/lib/es/components/icons/icons/IconApps.js.map +1 -1
- package/lib/es/components/icons/icons/IconArchive.js +4 -5
- package/lib/es/components/icons/icons/IconArchive.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowDown.js +8 -9
- package/lib/es/components/icons/icons/IconArrowDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowDownLeft.js +0 -1
- package/lib/es/components/icons/icons/IconArrowDownLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowDownRight.js +11 -12
- package/lib/es/components/icons/icons/IconArrowDownRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowLeft.js +2 -3
- package/lib/es/components/icons/icons/IconArrowLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowRight.js +0 -1
- package/lib/es/components/icons/icons/IconArrowRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowUp.js +0 -1
- package/lib/es/components/icons/icons/IconArrowUp.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowUpLeft.js +2 -3
- package/lib/es/components/icons/icons/IconArrowUpLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconArrowUpRight.js +0 -1
- package/lib/es/components/icons/icons/IconArrowUpRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconArticle.js +1 -2
- package/lib/es/components/icons/icons/IconArticle.js.map +1 -1
- package/lib/es/components/icons/icons/IconAscend.js +2 -3
- package/lib/es/components/icons/icons/IconAscend.js.map +1 -1
- package/lib/es/components/icons/icons/IconAt.js +2 -3
- package/lib/es/components/icons/icons/IconAt.js.map +1 -1
- package/lib/es/components/icons/icons/IconBackTop.js +2 -3
- package/lib/es/components/icons/icons/IconBackTop.js.map +1 -1
- package/lib/es/components/icons/icons/IconBackward.js +6 -7
- package/lib/es/components/icons/icons/IconBackward.js.map +1 -1
- package/lib/es/components/icons/icons/IconBarChartHStroked.js +0 -1
- package/lib/es/components/icons/icons/IconBarChartHStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBarChartVStroked.js +0 -1
- package/lib/es/components/icons/icons/IconBarChartVStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBeaker.js +2 -3
- package/lib/es/components/icons/icons/IconBeaker.js.map +1 -1
- package/lib/es/components/icons/icons/IconBell.js +8 -9
- package/lib/es/components/icons/icons/IconBell.js.map +1 -1
- package/lib/es/components/icons/icons/IconBellStroked.js +3 -4
- package/lib/es/components/icons/icons/IconBellStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBold.js +5 -6
- package/lib/es/components/icons/icons/IconBold.js.map +1 -1
- package/lib/es/components/icons/icons/IconBolt.js +9 -10
- package/lib/es/components/icons/icons/IconBolt.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookH5Stroked.js +7 -8
- package/lib/es/components/icons/icons/IconBookH5Stroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookOpenStroked.js +0 -1
- package/lib/es/components/icons/icons/IconBookOpenStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookStroked.js +7 -8
- package/lib/es/components/icons/icons/IconBookStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookmark.js +2 -3
- package/lib/es/components/icons/icons/IconBookmark.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookmarkAddStroked.js +7 -8
- package/lib/es/components/icons/icons/IconBookmarkAddStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBookmarkDeleteStroked.js +2 -3
- package/lib/es/components/icons/icons/IconBookmarkDeleteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBottomCenterStroked.js +2 -3
- package/lib/es/components/icons/icons/IconBottomCenterStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBottomLeftStroked.js +3 -4
- package/lib/es/components/icons/icons/IconBottomLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBottomRightStroked.js +9 -10
- package/lib/es/components/icons/icons/IconBottomRightStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBox.js +2 -3
- package/lib/es/components/icons/icons/IconBox.js.map +1 -1
- package/lib/es/components/icons/icons/IconBrackets.js +0 -1
- package/lib/es/components/icons/icons/IconBrackets.js.map +1 -1
- package/lib/es/components/icons/icons/IconBranch.js +2 -3
- package/lib/es/components/icons/icons/IconBranch.js.map +1 -1
- package/lib/es/components/icons/icons/IconBriefStroked.js +2 -3
- package/lib/es/components/icons/icons/IconBriefStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBriefcase.js +2 -3
- package/lib/es/components/icons/icons/IconBriefcase.js.map +1 -1
- package/lib/es/components/icons/icons/IconBulb.js +8 -9
- package/lib/es/components/icons/icons/IconBulb.js.map +1 -1
- package/lib/es/components/icons/icons/IconButtonStroked.js +2 -3
- package/lib/es/components/icons/icons/IconButtonStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconBytedanceLogo.js +2 -3
- package/lib/es/components/icons/icons/IconBytedanceLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconCalendar.js +2 -3
- package/lib/es/components/icons/icons/IconCalendar.js.map +1 -1
- package/lib/es/components/icons/icons/IconCalendarClock.js +6 -7
- package/lib/es/components/icons/icons/IconCalendarClock.js.map +1 -1
- package/lib/es/components/icons/icons/IconCalendarStroked.js +8 -9
- package/lib/es/components/icons/icons/IconCalendarStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCamera.js +0 -1
- package/lib/es/components/icons/icons/IconCamera.js.map +1 -1
- package/lib/es/components/icons/icons/IconCandlestickChartStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCandlestickChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCaretdown.js +2 -3
- package/lib/es/components/icons/icons/IconCaretdown.js.map +1 -1
- package/lib/es/components/icons/icons/IconCaretup.js +2 -3
- package/lib/es/components/icons/icons/IconCaretup.js.map +1 -1
- package/lib/es/components/icons/icons/IconCarouselStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCarouselStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCart.js +2 -3
- package/lib/es/components/icons/icons/IconCart.js.map +1 -1
- package/lib/es/components/icons/icons/IconCaseSensitive.js +6 -7
- package/lib/es/components/icons/icons/IconCaseSensitive.js.map +1 -1
- package/lib/es/components/icons/icons/IconCenterLeftStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCenterLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCenterRightStroked.js +4 -5
- package/lib/es/components/icons/icons/IconCenterRightStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconChainStroked.js +6 -7
- package/lib/es/components/icons/icons/IconChainStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCheckChoiceStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCheckChoiceStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCheckCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCheckCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCheckList.js +6 -7
- package/lib/es/components/icons/icons/IconCheckList.js.map +1 -1
- package/lib/es/components/icons/icons/IconCheckboxIndeterminate.js +2 -3
- package/lib/es/components/icons/icons/IconCheckboxIndeterminate.js.map +1 -1
- package/lib/es/components/icons/icons/IconCheckboxTick.js +3 -4
- package/lib/es/components/icons/icons/IconCheckboxTick.js.map +1 -1
- package/lib/es/components/icons/icons/IconChecklistStroked.js +3 -4
- package/lib/es/components/icons/icons/IconChecklistStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronDown.js +1 -2
- package/lib/es/components/icons/icons/IconChevronDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronDownStroked.js +2 -3
- package/lib/es/components/icons/icons/IconChevronDownStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronLeft.js +2 -3
- package/lib/es/components/icons/icons/IconChevronLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronRight.js +2 -3
- package/lib/es/components/icons/icons/IconChevronRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronRightStroked.js +6 -7
- package/lib/es/components/icons/icons/IconChevronRightStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronUp.js +2 -3
- package/lib/es/components/icons/icons/IconChevronUp.js.map +1 -1
- package/lib/es/components/icons/icons/IconChevronUpDown.js +7 -8
- package/lib/es/components/icons/icons/IconChevronUpDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconClear.js +2 -3
- package/lib/es/components/icons/icons/IconClear.js.map +1 -1
- package/lib/es/components/icons/icons/IconClock.js +5 -6
- package/lib/es/components/icons/icons/IconClock.js.map +1 -1
- package/lib/es/components/icons/icons/IconClose.js +2 -3
- package/lib/es/components/icons/icons/IconClose.js.map +1 -1
- package/lib/es/components/icons/icons/IconCloud.js +5 -6
- package/lib/es/components/icons/icons/IconCloud.js.map +1 -1
- package/lib/es/components/icons/icons/IconCloudStroked.js +11 -12
- package/lib/es/components/icons/icons/IconCloudStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCloudUploadStroked.js +9 -10
- package/lib/es/components/icons/icons/IconCloudUploadStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCode.js +5 -6
- package/lib/es/components/icons/icons/IconCode.js.map +1 -1
- package/lib/es/components/icons/icons/IconCodeStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCodeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCoinMoneyStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCoinMoneyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconColorPalette.js +5 -6
- package/lib/es/components/icons/icons/IconColorPalette.js.map +1 -1
- package/lib/es/components/icons/icons/IconColumnsStroked.js +5 -6
- package/lib/es/components/icons/icons/IconColumnsStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCommand.js +2 -3
- package/lib/es/components/icons/icons/IconCommand.js.map +1 -1
- package/lib/es/components/icons/icons/IconComment.js +2 -3
- package/lib/es/components/icons/icons/IconComment.js.map +1 -1
- package/lib/es/components/icons/icons/IconCommentStroked.js +1 -2
- package/lib/es/components/icons/icons/IconCommentStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconComponent.js +3 -4
- package/lib/es/components/icons/icons/IconComponent.js.map +1 -1
- package/lib/es/components/icons/icons/IconComponentPlaceholderStroked.js +2 -3
- package/lib/es/components/icons/icons/IconComponentPlaceholderStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconComponentStroked.js +0 -1
- package/lib/es/components/icons/icons/IconComponentStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconConfigStroked.js +2 -3
- package/lib/es/components/icons/icons/IconConfigStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconConnectionPoint1.js +5 -6
- package/lib/es/components/icons/icons/IconConnectionPoint1.js.map +1 -1
- package/lib/es/components/icons/icons/IconConnectionPoint2.js +5 -6
- package/lib/es/components/icons/icons/IconConnectionPoint2.js.map +1 -1
- package/lib/es/components/icons/icons/IconContrast.js +2 -3
- package/lib/es/components/icons/icons/IconContrast.js.map +1 -1
- package/lib/es/components/icons/icons/IconCopy.js +6 -7
- package/lib/es/components/icons/icons/IconCopy.js.map +1 -1
- package/lib/es/components/icons/icons/IconCopyAdd.js +5 -6
- package/lib/es/components/icons/icons/IconCopyAdd.js.map +1 -1
- package/lib/es/components/icons/icons/IconCopyStroked.js +0 -1
- package/lib/es/components/icons/icons/IconCopyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCornerRadiusStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCornerRadiusStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCreditCard.js +2 -3
- package/lib/es/components/icons/icons/IconCreditCard.js.map +1 -1
- package/lib/es/components/icons/icons/IconCrop.js +3 -4
- package/lib/es/components/icons/icons/IconCrop.js.map +1 -1
- package/lib/es/components/icons/icons/IconCrossCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCrossCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCrossStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCrossStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCrown.js +6 -7
- package/lib/es/components/icons/icons/IconCrown.js.map +1 -1
- package/lib/es/components/icons/icons/IconCustomerSupport.js +8 -9
- package/lib/es/components/icons/icons/IconCustomerSupport.js.map +1 -1
- package/lib/es/components/icons/icons/IconCustomerSupportStroked.js +2 -3
- package/lib/es/components/icons/icons/IconCustomerSupportStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconCustomize.js +6 -7
- package/lib/es/components/icons/icons/IconCustomize.js.map +1 -1
- package/lib/es/components/icons/icons/IconDelete.js +5 -6
- package/lib/es/components/icons/icons/IconDelete.js.map +1 -1
- package/lib/es/components/icons/icons/IconDeleteStroked.js +2 -3
- package/lib/es/components/icons/icons/IconDeleteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconDescend.js +2 -3
- package/lib/es/components/icons/icons/IconDescend.js.map +1 -1
- package/lib/es/components/icons/icons/IconDescend2.js +2 -3
- package/lib/es/components/icons/icons/IconDescend2.js.map +1 -1
- package/lib/es/components/icons/icons/IconDesktop.js +7 -8
- package/lib/es/components/icons/icons/IconDesktop.js.map +1 -1
- package/lib/es/components/icons/icons/IconDisc.js +2 -3
- package/lib/es/components/icons/icons/IconDisc.js.map +1 -1
- package/lib/es/components/icons/icons/IconDislikeThumb.js +3 -4
- package/lib/es/components/icons/icons/IconDislikeThumb.js.map +1 -1
- package/lib/es/components/icons/icons/IconDivide.js +0 -1
- package/lib/es/components/icons/icons/IconDivide.js.map +1 -1
- package/lib/es/components/icons/icons/IconDongchediLogo.js +2 -3
- package/lib/es/components/icons/icons/IconDongchediLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconDoubleChevronLeft.js +4 -5
- package/lib/es/components/icons/icons/IconDoubleChevronLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconDoubleChevronRight.js +5 -6
- package/lib/es/components/icons/icons/IconDoubleChevronRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconDownCircleStroked.js +3 -4
- package/lib/es/components/icons/icons/IconDownCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconDownload.js +7 -8
- package/lib/es/components/icons/icons/IconDownload.js.map +1 -1
- package/lib/es/components/icons/icons/IconDownloadStroked.js +7 -8
- package/lib/es/components/icons/icons/IconDownloadStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconDuration.js +8 -9
- package/lib/es/components/icons/icons/IconDuration.js.map +1 -1
- package/lib/es/components/icons/icons/IconEdit.js +10 -11
- package/lib/es/components/icons/icons/IconEdit.js.map +1 -1
- package/lib/es/components/icons/icons/IconEdit2Stroked.js +2 -3
- package/lib/es/components/icons/icons/IconEdit2Stroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconEditStroked.js +2 -3
- package/lib/es/components/icons/icons/IconEditStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconElementStroked.js +2 -3
- package/lib/es/components/icons/icons/IconElementStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconEmoji.js +2 -3
- package/lib/es/components/icons/icons/IconEmoji.js.map +1 -1
- package/lib/es/components/icons/icons/IconExit.js +2 -3
- package/lib/es/components/icons/icons/IconExit.js.map +1 -1
- package/lib/es/components/icons/icons/IconExpand.js +3 -4
- package/lib/es/components/icons/icons/IconExpand.js.map +1 -1
- package/lib/es/components/icons/icons/IconExport.js +9 -10
- package/lib/es/components/icons/icons/IconExport.js.map +1 -1
- package/lib/es/components/icons/icons/IconExternalOpen.js +2 -3
- package/lib/es/components/icons/icons/IconExternalOpen.js.map +1 -1
- package/lib/es/components/icons/icons/IconExternalOpenStroked.js +2 -3
- package/lib/es/components/icons/icons/IconExternalOpenStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconEyeClosed.js +6 -7
- package/lib/es/components/icons/icons/IconEyeClosed.js.map +1 -1
- package/lib/es/components/icons/icons/IconEyeClosedSolid.js +2 -3
- package/lib/es/components/icons/icons/IconEyeClosedSolid.js.map +1 -1
- package/lib/es/components/icons/icons/IconEyeOpened.js +0 -1
- package/lib/es/components/icons/icons/IconEyeOpened.js.map +1 -1
- package/lib/es/components/icons/icons/IconEyedropper.js +5 -6
- package/lib/es/components/icons/icons/IconEyedropper.js.map +1 -1
- package/lib/es/components/icons/icons/IconFacebook.js +7 -8
- package/lib/es/components/icons/icons/IconFacebook.js.map +1 -1
- package/lib/es/components/icons/icons/IconFaceuLogo.js +0 -1
- package/lib/es/components/icons/icons/IconFaceuLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconFastForward.js +2 -3
- package/lib/es/components/icons/icons/IconFastForward.js.map +1 -1
- package/lib/es/components/icons/icons/IconFastFoward.js +2 -3
- package/lib/es/components/icons/icons/IconFastFoward.js.map +1 -1
- package/lib/es/components/icons/icons/IconFavoriteList.js +2 -3
- package/lib/es/components/icons/icons/IconFavoriteList.js.map +1 -1
- package/lib/es/components/icons/icons/IconFeishuLogo.js +0 -1
- package/lib/es/components/icons/icons/IconFeishuLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconFemale.js +5 -6
- package/lib/es/components/icons/icons/IconFemale.js.map +1 -1
- package/lib/es/components/icons/icons/IconFigma.js +2 -3
- package/lib/es/components/icons/icons/IconFigma.js.map +1 -1
- package/lib/es/components/icons/icons/IconFile.js +6 -7
- package/lib/es/components/icons/icons/IconFile.js.map +1 -1
- package/lib/es/components/icons/icons/IconFillStroked.js +5 -6
- package/lib/es/components/icons/icons/IconFillStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFilledArrowDown.js +7 -8
- package/lib/es/components/icons/icons/IconFilledArrowDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconFilledArrowUp.js +0 -1
- package/lib/es/components/icons/icons/IconFilledArrowUp.js.map +1 -1
- package/lib/es/components/icons/icons/IconFilpVertical.js +7 -8
- package/lib/es/components/icons/icons/IconFilpVertical.js.map +1 -1
- package/lib/es/components/icons/icons/IconFilter.js +1 -2
- package/lib/es/components/icons/icons/IconFilter.js.map +1 -1
- package/lib/es/components/icons/icons/IconFingerLeftStroked.js +2 -3
- package/lib/es/components/icons/icons/IconFingerLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFixedStroked.js +2 -3
- package/lib/es/components/icons/icons/IconFixedStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFlag.js +5 -6
- package/lib/es/components/icons/icons/IconFlag.js.map +1 -1
- package/lib/es/components/icons/icons/IconFlipHorizontal.js +5 -6
- package/lib/es/components/icons/icons/IconFlipHorizontal.js.map +1 -1
- package/lib/es/components/icons/icons/IconFlowChartStroked.js +2 -3
- package/lib/es/components/icons/icons/IconFlowChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFolder.js +4 -5
- package/lib/es/components/icons/icons/IconFolder.js.map +1 -1
- package/lib/es/components/icons/icons/IconFolderOpen.js +6 -7
- package/lib/es/components/icons/icons/IconFolderOpen.js.map +1 -1
- package/lib/es/components/icons/icons/IconFolderStroked.js +2 -3
- package/lib/es/components/icons/icons/IconFolderStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFollowStroked.js +11 -12
- package/lib/es/components/icons/icons/IconFollowStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFont.js +1 -2
- package/lib/es/components/icons/icons/IconFont.js.map +1 -1
- package/lib/es/components/icons/icons/IconFontColor.js +2 -3
- package/lib/es/components/icons/icons/IconFontColor.js.map +1 -1
- package/lib/es/components/icons/icons/IconForward.js +9 -10
- package/lib/es/components/icons/icons/IconForward.js.map +1 -1
- package/lib/es/components/icons/icons/IconForwardStroked.js +0 -1
- package/lib/es/components/icons/icons/IconForwardStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconFullScreenStroked.js +0 -1
- package/lib/es/components/icons/icons/IconFullScreenStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconGallery.js +7 -8
- package/lib/es/components/icons/icons/IconGallery.js.map +1 -1
- package/lib/es/components/icons/icons/IconGift.js +2 -3
- package/lib/es/components/icons/icons/IconGift.js.map +1 -1
- package/lib/es/components/icons/icons/IconGiftStroked.js +5 -6
- package/lib/es/components/icons/icons/IconGiftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconGit.js +7 -8
- package/lib/es/components/icons/icons/IconGit.js.map +1 -1
- package/lib/es/components/icons/icons/IconGithubLogo.js +0 -1
- package/lib/es/components/icons/icons/IconGithubLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconGitlabLogo.js +11 -12
- package/lib/es/components/icons/icons/IconGitlabLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconGlobe.js +7 -8
- package/lib/es/components/icons/icons/IconGlobe.js.map +1 -1
- package/lib/es/components/icons/icons/IconGlobeStroke.js +2 -3
- package/lib/es/components/icons/icons/IconGlobeStroke.js.map +1 -1
- package/lib/es/components/icons/icons/IconGridRectangle.js +3 -4
- package/lib/es/components/icons/icons/IconGridRectangle.js.map +1 -1
- package/lib/es/components/icons/icons/IconGridSquare.js +2 -3
- package/lib/es/components/icons/icons/IconGridSquare.js.map +1 -1
- package/lib/es/components/icons/icons/IconGridStroked.js +2 -3
- package/lib/es/components/icons/icons/IconGridStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconGridView.js +2 -3
- package/lib/es/components/icons/icons/IconGridView.js.map +1 -1
- package/lib/es/components/icons/icons/IconGridView1.js +2 -3
- package/lib/es/components/icons/icons/IconGridView1.js.map +1 -1
- package/lib/es/components/icons/icons/IconH1.js +6 -7
- package/lib/es/components/icons/icons/IconH1.js.map +1 -1
- package/lib/es/components/icons/icons/IconH2.js +9 -10
- package/lib/es/components/icons/icons/IconH2.js.map +1 -1
- package/lib/es/components/icons/icons/IconH3.js +6 -7
- package/lib/es/components/icons/icons/IconH3.js.map +1 -1
- package/lib/es/components/icons/icons/IconH4.js +6 -7
- package/lib/es/components/icons/icons/IconH4.js.map +1 -1
- package/lib/es/components/icons/icons/IconH5.js +6 -7
- package/lib/es/components/icons/icons/IconH5.js.map +1 -1
- package/lib/es/components/icons/icons/IconH6.js +6 -7
- package/lib/es/components/icons/icons/IconH6.js.map +1 -1
- package/lib/es/components/icons/icons/IconH7.js +6 -7
- package/lib/es/components/icons/icons/IconH7.js.map +1 -1
- package/lib/es/components/icons/icons/IconH8.js +6 -7
- package/lib/es/components/icons/icons/IconH8.js.map +1 -1
- package/lib/es/components/icons/icons/IconH9.js +6 -7
- package/lib/es/components/icons/icons/IconH9.js.map +1 -1
- package/lib/es/components/icons/icons/IconHandle.js +8 -9
- package/lib/es/components/icons/icons/IconHandle.js.map +1 -1
- package/lib/es/components/icons/icons/IconHash.js +2 -3
- package/lib/es/components/icons/icons/IconHash.js.map +1 -1
- package/lib/es/components/icons/icons/IconHeartStroked.js +0 -1
- package/lib/es/components/icons/icons/IconHeartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconHelm.js +2 -3
- package/lib/es/components/icons/icons/IconHelm.js.map +1 -1
- package/lib/es/components/icons/icons/IconHelpCircle.js +7 -8
- package/lib/es/components/icons/icons/IconHelpCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconHelpCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconHelpCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconHistogram.js +9 -10
- package/lib/es/components/icons/icons/IconHistogram.js.map +1 -1
- package/lib/es/components/icons/icons/IconHistory.js +2 -3
- package/lib/es/components/icons/icons/IconHistory.js.map +1 -1
- package/lib/es/components/icons/icons/IconHn.js +2 -3
- package/lib/es/components/icons/icons/IconHn.js.map +1 -1
- package/lib/es/components/icons/icons/IconHome.js +2 -3
- package/lib/es/components/icons/icons/IconHome.js.map +1 -1
- package/lib/es/components/icons/icons/IconHomeStroked.js +2 -3
- package/lib/es/components/icons/icons/IconHomeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconHorn.js +6 -7
- package/lib/es/components/icons/icons/IconHorn.js.map +1 -1
- package/lib/es/components/icons/icons/IconHourglass.js +2 -3
- package/lib/es/components/icons/icons/IconHourglass.js.map +1 -1
- package/lib/es/components/icons/icons/IconHourglassStroked.js +2 -3
- package/lib/es/components/icons/icons/IconHourglassStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconIdCard.js +2 -3
- package/lib/es/components/icons/icons/IconIdCard.js.map +1 -1
- package/lib/es/components/icons/icons/IconIdentity.js +2 -3
- package/lib/es/components/icons/icons/IconIdentity.js.map +1 -1
- package/lib/es/components/icons/icons/IconImage.js +2 -3
- package/lib/es/components/icons/icons/IconImage.js.map +1 -1
- package/lib/es/components/icons/icons/IconImageStroked.js +0 -1
- package/lib/es/components/icons/icons/IconImageStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconImport.js +2 -3
- package/lib/es/components/icons/icons/IconImport.js.map +1 -1
- package/lib/es/components/icons/icons/IconInbox.js +0 -1
- package/lib/es/components/icons/icons/IconInbox.js.map +1 -1
- package/lib/es/components/icons/icons/IconIndenpentCornersStroked.js +2 -3
- package/lib/es/components/icons/icons/IconIndenpentCornersStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconIndentLeft.js +0 -1
- package/lib/es/components/icons/icons/IconIndentLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconIndentRight.js +2 -3
- package/lib/es/components/icons/icons/IconIndentRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconIndependentCornersStroked.js +2 -3
- package/lib/es/components/icons/icons/IconIndependentCornersStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconInfoCircle.js +2 -3
- package/lib/es/components/icons/icons/IconInfoCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconInherit.js +2 -3
- package/lib/es/components/icons/icons/IconInherit.js.map +1 -1
- package/lib/es/components/icons/icons/IconInheritStroked.js +0 -1
- package/lib/es/components/icons/icons/IconInheritStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconInnerSectionStroked.js +0 -1
- package/lib/es/components/icons/icons/IconInnerSectionStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconInstagram.js +6 -7
- package/lib/es/components/icons/icons/IconInstagram.js.map +1 -1
- package/lib/es/components/icons/icons/IconInteractiveStroked.js +2 -3
- package/lib/es/components/icons/icons/IconInteractiveStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconInviteStroked.js +8 -9
- package/lib/es/components/icons/icons/IconInviteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconIssueStroked.js +2 -3
- package/lib/es/components/icons/icons/IconIssueStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconItalic.js +1 -2
- package/lib/es/components/icons/icons/IconItalic.js.map +1 -1
- package/lib/es/components/icons/icons/IconJianying.js +2 -3
- package/lib/es/components/icons/icons/IconJianying.js.map +1 -1
- package/lib/es/components/icons/icons/IconKanban.js +5 -6
- package/lib/es/components/icons/icons/IconKanban.js.map +1 -1
- package/lib/es/components/icons/icons/IconKey.js +3 -4
- package/lib/es/components/icons/icons/IconKey.js.map +1 -1
- package/lib/es/components/icons/icons/IconKeyStroked.js +2 -3
- package/lib/es/components/icons/icons/IconKeyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconLanguage.js +1 -2
- package/lib/es/components/icons/icons/IconLanguage.js.map +1 -1
- package/lib/es/components/icons/icons/IconLayers.js +5 -6
- package/lib/es/components/icons/icons/IconLayers.js.map +1 -1
- package/lib/es/components/icons/icons/IconLeftCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconLeftCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconLightningStroked.js +2 -3
- package/lib/es/components/icons/icons/IconLightningStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconLikeHeart.js +2 -3
- package/lib/es/components/icons/icons/IconLikeHeart.js.map +1 -1
- package/lib/es/components/icons/icons/IconLikeThumb.js +2 -3
- package/lib/es/components/icons/icons/IconLikeThumb.js.map +1 -1
- package/lib/es/components/icons/icons/IconLineChartStroked.js +2 -3
- package/lib/es/components/icons/icons/IconLineChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconLineHeight.js +2 -3
- package/lib/es/components/icons/icons/IconLineHeight.js.map +1 -1
- package/lib/es/components/icons/icons/IconLink.js +0 -1
- package/lib/es/components/icons/icons/IconLink.js.map +1 -1
- package/lib/es/components/icons/icons/IconList.js +9 -10
- package/lib/es/components/icons/icons/IconList.js.map +1 -1
- package/lib/es/components/icons/icons/IconListView.js +2 -3
- package/lib/es/components/icons/icons/IconListView.js.map +1 -1
- package/lib/es/components/icons/icons/IconLive.js +2 -3
- package/lib/es/components/icons/icons/IconLive.js.map +1 -1
- package/lib/es/components/icons/icons/IconLoading.js +2 -3
- package/lib/es/components/icons/icons/IconLoading.js.map +1 -1
- package/lib/es/components/icons/icons/IconLock.js +2 -3
- package/lib/es/components/icons/icons/IconLock.js.map +1 -1
- package/lib/es/components/icons/icons/IconLockStroked.js +2 -3
- package/lib/es/components/icons/icons/IconLockStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconLoopTextStroked.js +2 -3
- package/lib/es/components/icons/icons/IconLoopTextStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMail.js +5 -6
- package/lib/es/components/icons/icons/IconMail.js.map +1 -1
- package/lib/es/components/icons/icons/IconMailStroked.js +3 -4
- package/lib/es/components/icons/icons/IconMailStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMailStroked1.js +3 -4
- package/lib/es/components/icons/icons/IconMailStroked1.js.map +1 -1
- package/lib/es/components/icons/icons/IconMale.js +5 -6
- package/lib/es/components/icons/icons/IconMale.js.map +1 -1
- package/lib/es/components/icons/icons/IconMapPin.js +2 -3
- package/lib/es/components/icons/icons/IconMapPin.js.map +1 -1
- package/lib/es/components/icons/icons/IconMapPinStroked.js +2 -3
- package/lib/es/components/icons/icons/IconMapPinStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMarginLeftStroked.js +2 -3
- package/lib/es/components/icons/icons/IconMarginLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMarginStroked.js +3 -4
- package/lib/es/components/icons/icons/IconMarginStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMark.js +2 -3
- package/lib/es/components/icons/icons/IconMark.js.map +1 -1
- package/lib/es/components/icons/icons/IconMaximize.js +2 -3
- package/lib/es/components/icons/icons/IconMaximize.js.map +1 -1
- package/lib/es/components/icons/icons/IconMember.js +3 -4
- package/lib/es/components/icons/icons/IconMember.js.map +1 -1
- package/lib/es/components/icons/icons/IconMenu.js +2 -3
- package/lib/es/components/icons/icons/IconMenu.js.map +1 -1
- package/lib/es/components/icons/icons/IconMicrophone.js +2 -3
- package/lib/es/components/icons/icons/IconMicrophone.js.map +1 -1
- package/lib/es/components/icons/icons/IconMicrophoneOff.js +3 -4
- package/lib/es/components/icons/icons/IconMicrophoneOff.js.map +1 -1
- package/lib/es/components/icons/icons/IconMinimize.js +6 -7
- package/lib/es/components/icons/icons/IconMinimize.js.map +1 -1
- package/lib/es/components/icons/icons/IconMinus.js +0 -1
- package/lib/es/components/icons/icons/IconMinus.js.map +1 -1
- package/lib/es/components/icons/icons/IconMinusCircle.js +2 -3
- package/lib/es/components/icons/icons/IconMinusCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconMinusCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconMinusCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMinusStroked.js +1 -2
- package/lib/es/components/icons/icons/IconMinusStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconModalStroked.js +2 -3
- package/lib/es/components/icons/icons/IconModalStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMoneyExchangeStroked.js +0 -1
- package/lib/es/components/icons/icons/IconMoneyExchangeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMonitorStroked.js +7 -8
- package/lib/es/components/icons/icons/IconMonitorStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMoon.js +8 -9
- package/lib/es/components/icons/icons/IconMoon.js.map +1 -1
- package/lib/es/components/icons/icons/IconMore.js +2 -3
- package/lib/es/components/icons/icons/IconMore.js.map +1 -1
- package/lib/es/components/icons/icons/IconMoreStroked.js +2 -3
- package/lib/es/components/icons/icons/IconMoreStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMusic.js +0 -1
- package/lib/es/components/icons/icons/IconMusic.js.map +1 -1
- package/lib/es/components/icons/icons/IconMusicNoteStroked.js +2 -3
- package/lib/es/components/icons/icons/IconMusicNoteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconMute.js +2 -3
- package/lib/es/components/icons/icons/IconMute.js.map +1 -1
- package/lib/es/components/icons/icons/IconNineGridStroked.js +2 -3
- package/lib/es/components/icons/icons/IconNineGridStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconNoteMoneyStroked.js +6 -7
- package/lib/es/components/icons/icons/IconNoteMoneyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconOption.js +5 -6
- package/lib/es/components/icons/icons/IconOption.js.map +1 -1
- package/lib/es/components/icons/icons/IconOrderedList.js +2 -3
- package/lib/es/components/icons/icons/IconOrderedList.js.map +1 -1
- package/lib/es/components/icons/icons/IconOrderedListStroked.js +2 -3
- package/lib/es/components/icons/icons/IconOrderedListStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPaperclip.js +2 -3
- package/lib/es/components/icons/icons/IconPaperclip.js.map +1 -1
- package/lib/es/components/icons/icons/IconPause.js +7 -8
- package/lib/es/components/icons/icons/IconPause.js.map +1 -1
- package/lib/es/components/icons/icons/IconPercentage.js +2 -3
- package/lib/es/components/icons/icons/IconPercentage.js.map +1 -1
- package/lib/es/components/icons/icons/IconPhone.js +3 -4
- package/lib/es/components/icons/icons/IconPhone.js.map +1 -1
- package/lib/es/components/icons/icons/IconPhoneStroke.js +3 -4
- package/lib/es/components/icons/icons/IconPhoneStroke.js.map +1 -1
- package/lib/es/components/icons/icons/IconPieChart2Stroked.js +2 -3
- package/lib/es/components/icons/icons/IconPieChart2Stroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPieChartStroked.js +2 -3
- package/lib/es/components/icons/icons/IconPieChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPiechartH5Stroked.js +2 -3
- package/lib/es/components/icons/icons/IconPiechartH5Stroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPipixiaLogo.js +6 -7
- package/lib/es/components/icons/icons/IconPipixiaLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlay.js +2 -3
- package/lib/es/components/icons/icons/IconPlay.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlayCircle.js +6 -7
- package/lib/es/components/icons/icons/IconPlayCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlus.js +2 -3
- package/lib/es/components/icons/icons/IconPlus.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlusCircle.js +8 -9
- package/lib/es/components/icons/icons/IconPlusCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlusCircleStroked.js +2 -3
- package/lib/es/components/icons/icons/IconPlusCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPlusStroked.js +2 -3
- package/lib/es/components/icons/icons/IconPlusStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPriceTag.js +2 -3
- package/lib/es/components/icons/icons/IconPriceTag.js.map +1 -1
- package/lib/es/components/icons/icons/IconPrint.js +2 -3
- package/lib/es/components/icons/icons/IconPrint.js.map +1 -1
- package/lib/es/components/icons/icons/IconPrizeStroked.js +2 -3
- package/lib/es/components/icons/icons/IconPrizeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconPulse.js +5 -6
- package/lib/es/components/icons/icons/IconPulse.js.map +1 -1
- package/lib/es/components/icons/icons/IconPuzzle.js +5 -6
- package/lib/es/components/icons/icons/IconPuzzle.js.map +1 -1
- package/lib/es/components/icons/icons/IconQingyan.js +2 -3
- package/lib/es/components/icons/icons/IconQingyan.js.map +1 -1
- package/lib/es/components/icons/icons/IconQrCode.js +6 -7
- package/lib/es/components/icons/icons/IconQrCode.js.map +1 -1
- package/lib/es/components/icons/icons/IconQuit.js +3 -4
- package/lib/es/components/icons/icons/IconQuit.js.map +1 -1
- package/lib/es/components/icons/icons/IconQuote.js +2 -3
- package/lib/es/components/icons/icons/IconQuote.js.map +1 -1
- package/lib/es/components/icons/icons/IconRadio.js +2 -3
- package/lib/es/components/icons/icons/IconRadio.js.map +1 -1
- package/lib/es/components/icons/icons/IconRankingCardStroked.js +2 -3
- package/lib/es/components/icons/icons/IconRankingCardStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconRealSizeStroked.js +7 -8
- package/lib/es/components/icons/icons/IconRealSizeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconRedo.js +0 -1
- package/lib/es/components/icons/icons/IconRedo.js.map +1 -1
- package/lib/es/components/icons/icons/IconRedoStroked.js +6 -7
- package/lib/es/components/icons/icons/IconRedoStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconRefresh.js +5 -6
- package/lib/es/components/icons/icons/IconRefresh.js.map +1 -1
- package/lib/es/components/icons/icons/IconRefresh2.js +5 -6
- package/lib/es/components/icons/icons/IconRefresh2.js.map +1 -1
- package/lib/es/components/icons/icons/IconRegExp.js +8 -9
- package/lib/es/components/icons/icons/IconRegExp.js.map +1 -1
- package/lib/es/components/icons/icons/IconReply.js +2 -3
- package/lib/es/components/icons/icons/IconReply.js.map +1 -1
- package/lib/es/components/icons/icons/IconReplyStroked.js +6 -7
- package/lib/es/components/icons/icons/IconReplyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconResso.js +2 -3
- package/lib/es/components/icons/icons/IconResso.js.map +1 -1
- package/lib/es/components/icons/icons/IconRestart.js +4 -5
- package/lib/es/components/icons/icons/IconRestart.js.map +1 -1
- package/lib/es/components/icons/icons/IconRingChartStroked.js +6 -7
- package/lib/es/components/icons/icons/IconRingChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconRotate.js +0 -1
- package/lib/es/components/icons/icons/IconRotate.js.map +1 -1
- package/lib/es/components/icons/icons/IconRotationStroked.js +7 -8
- package/lib/es/components/icons/icons/IconRotationStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconRoute.js +3 -4
- package/lib/es/components/icons/icons/IconRoute.js.map +1 -1
- package/lib/es/components/icons/icons/IconRowsStroked.js +6 -7
- package/lib/es/components/icons/icons/IconRowsStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSafe.js +0 -1
- package/lib/es/components/icons/icons/IconSafe.js.map +1 -1
- package/lib/es/components/icons/icons/IconSave.js +2 -3
- package/lib/es/components/icons/icons/IconSave.js.map +1 -1
- package/lib/es/components/icons/icons/IconSaveStroked.js +0 -1
- package/lib/es/components/icons/icons/IconSaveStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconScan.js +2 -3
- package/lib/es/components/icons/icons/IconScan.js.map +1 -1
- package/lib/es/components/icons/icons/IconScissors.js +2 -3
- package/lib/es/components/icons/icons/IconScissors.js.map +1 -1
- package/lib/es/components/icons/icons/IconSearch.js +0 -1
- package/lib/es/components/icons/icons/IconSearch.js.map +1 -1
- package/lib/es/components/icons/icons/IconSearchStroked.js +2 -3
- package/lib/es/components/icons/icons/IconSearchStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSectionStroked.js +0 -1
- package/lib/es/components/icons/icons/IconSectionStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSemiLogo.js +2 -3
- package/lib/es/components/icons/icons/IconSemiLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconSend.js +3 -4
- package/lib/es/components/icons/icons/IconSend.js.map +1 -1
- package/lib/es/components/icons/icons/IconSendMsgStroked.js +0 -1
- package/lib/es/components/icons/icons/IconSendMsgStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSendStroked.js +0 -1
- package/lib/es/components/icons/icons/IconSendStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconServer.js +2 -3
- package/lib/es/components/icons/icons/IconServer.js.map +1 -1
- package/lib/es/components/icons/icons/IconServerStroked.js +2 -3
- package/lib/es/components/icons/icons/IconServerStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSetting.js +2 -3
- package/lib/es/components/icons/icons/IconSetting.js.map +1 -1
- package/lib/es/components/icons/icons/IconSettingStroked.js +2 -3
- package/lib/es/components/icons/icons/IconSettingStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconShareMoneyStroked.js +0 -1
- package/lib/es/components/icons/icons/IconShareMoneyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconShareStroked.js +0 -1
- package/lib/es/components/icons/icons/IconShareStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconShield.js +3 -4
- package/lib/es/components/icons/icons/IconShield.js.map +1 -1
- package/lib/es/components/icons/icons/IconShieldStroked.js +2 -3
- package/lib/es/components/icons/icons/IconShieldStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconShift.js +2 -3
- package/lib/es/components/icons/icons/IconShift.js.map +1 -1
- package/lib/es/components/icons/icons/IconShoppingBag.js +2 -3
- package/lib/es/components/icons/icons/IconShoppingBag.js.map +1 -1
- package/lib/es/components/icons/icons/IconShrink.js +6 -7
- package/lib/es/components/icons/icons/IconShrink.js.map +1 -1
- package/lib/es/components/icons/icons/IconShrinkScreenStroked.js +2 -3
- package/lib/es/components/icons/icons/IconShrinkScreenStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSidebar.js +2 -3
- package/lib/es/components/icons/icons/IconSidebar.js.map +1 -1
- package/lib/es/components/icons/icons/IconSignal.js +5 -6
- package/lib/es/components/icons/icons/IconSignal.js.map +1 -1
- package/lib/es/components/icons/icons/IconSimilarity.js +2 -3
- package/lib/es/components/icons/icons/IconSimilarity.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmallTriangleDown.js +6 -7
- package/lib/es/components/icons/icons/IconSmallTriangleDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmallTriangleLeft.js +6 -7
- package/lib/es/components/icons/icons/IconSmallTriangleLeft.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmallTriangleRight.js +9 -10
- package/lib/es/components/icons/icons/IconSmallTriangleRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmallTriangleTop.js +2 -3
- package/lib/es/components/icons/icons/IconSmallTriangleTop.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmartphoneCheckStroked.js +2 -3
- package/lib/es/components/icons/icons/IconSmartphoneCheckStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSmartphoneStroked.js +2 -3
- package/lib/es/components/icons/icons/IconSmartphoneStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSong.js +3 -4
- package/lib/es/components/icons/icons/IconSong.js.map +1 -1
- package/lib/es/components/icons/icons/IconSonicStroked.js +2 -3
- package/lib/es/components/icons/icons/IconSonicStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSort.js +0 -1
- package/lib/es/components/icons/icons/IconSort.js.map +1 -1
- package/lib/es/components/icons/icons/IconSortStroked.js +0 -1
- package/lib/es/components/icons/icons/IconSortStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconSourceControl.js +5 -6
- package/lib/es/components/icons/icons/IconSourceControl.js.map +1 -1
- package/lib/es/components/icons/icons/IconSpin.js +7 -8
- package/lib/es/components/icons/icons/IconSpin.js.map +1 -1
- package/lib/es/components/icons/icons/IconStackBarChartStroked.js +2 -3
- package/lib/es/components/icons/icons/IconStackBarChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconStar.js +7 -8
- package/lib/es/components/icons/icons/IconStar.js.map +1 -1
- package/lib/es/components/icons/icons/IconStarStroked.js +0 -1
- package/lib/es/components/icons/icons/IconStarStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconStop.js +9 -10
- package/lib/es/components/icons/icons/IconStop.js.map +1 -1
- package/lib/es/components/icons/icons/IconStopwatchStroked.js +2 -3
- package/lib/es/components/icons/icons/IconStopwatchStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconStoryStroked.js +2 -3
- package/lib/es/components/icons/icons/IconStoryStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconStrikeThrough.js +5 -6
- package/lib/es/components/icons/icons/IconStrikeThrough.js.map +1 -1
- package/lib/es/components/icons/icons/IconSun.js +2 -3
- package/lib/es/components/icons/icons/IconSun.js.map +1 -1
- package/lib/es/components/icons/icons/IconSync.js +0 -1
- package/lib/es/components/icons/icons/IconSync.js.map +1 -1
- package/lib/es/components/icons/icons/IconTabArrowStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTabArrowStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTabsStroked.js +0 -1
- package/lib/es/components/icons/icons/IconTabsStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTaskMoneyStroked.js +6 -7
- package/lib/es/components/icons/icons/IconTaskMoneyStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTemplate.js +5 -6
- package/lib/es/components/icons/icons/IconTemplate.js.map +1 -1
- package/lib/es/components/icons/icons/IconTemplateStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTemplateStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTerminal.js +3 -4
- package/lib/es/components/icons/icons/IconTerminal.js.map +1 -1
- package/lib/es/components/icons/icons/IconTestScoreStroked.js +0 -1
- package/lib/es/components/icons/icons/IconTestScoreStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconText.js +1 -2
- package/lib/es/components/icons/icons/IconText.js.map +1 -1
- package/lib/es/components/icons/icons/IconTextRectangle.js +2 -3
- package/lib/es/components/icons/icons/IconTextRectangle.js.map +1 -1
- package/lib/es/components/icons/icons/IconTextStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTextStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconThumbUpStroked.js +2 -3
- package/lib/es/components/icons/icons/IconThumbUpStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTick.js +2 -3
- package/lib/es/components/icons/icons/IconTick.js.map +1 -1
- package/lib/es/components/icons/icons/IconTicketCodeExchangeStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTicketCodeExchangeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTicketCodeStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTicketCodeStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTiktokLogo.js +0 -1
- package/lib/es/components/icons/icons/IconTiktokLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconTop.js +2 -3
- package/lib/es/components/icons/icons/IconTop.js.map +1 -1
- package/lib/es/components/icons/icons/IconTopCenterStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTopCenterStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTopLeftStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTopLeftStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTopRightStroked.js +6 -7
- package/lib/es/components/icons/icons/IconTopRightStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTopbuzzLogo.js +6 -7
- package/lib/es/components/icons/icons/IconTopbuzzLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconToutiaoLogo.js +2 -3
- package/lib/es/components/icons/icons/IconToutiaoLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconTransparentStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTransparentStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTreeTriangleDown.js +2 -3
- package/lib/es/components/icons/icons/IconTreeTriangleDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconTreeTriangleRight.js +6 -7
- package/lib/es/components/icons/icons/IconTreeTriangleRight.js.map +1 -1
- package/lib/es/components/icons/icons/IconTriangleArrow.js +2 -3
- package/lib/es/components/icons/icons/IconTriangleArrow.js.map +1 -1
- package/lib/es/components/icons/icons/IconTriangleArrowVertical.js +11 -12
- package/lib/es/components/icons/icons/IconTriangleArrowVertical.js.map +1 -1
- package/lib/es/components/icons/icons/IconTriangleDown.js +2 -3
- package/lib/es/components/icons/icons/IconTriangleDown.js.map +1 -1
- package/lib/es/components/icons/icons/IconTriangleUp.js +2 -3
- package/lib/es/components/icons/icons/IconTriangleUp.js.map +1 -1
- package/lib/es/components/icons/icons/IconTrueFalseStroked.js +2 -3
- package/lib/es/components/icons/icons/IconTrueFalseStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTvCheckedStroked.js +0 -1
- package/lib/es/components/icons/icons/IconTvCheckedStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconTwitter.js +2 -3
- package/lib/es/components/icons/icons/IconTwitter.js.map +1 -1
- package/lib/es/components/icons/icons/IconTypograph.js +2 -3
- package/lib/es/components/icons/icons/IconTypograph.js.map +1 -1
- package/lib/es/components/icons/icons/IconUnChainStroked.js +2 -3
- package/lib/es/components/icons/icons/IconUnChainStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconUnderline.js +2 -3
- package/lib/es/components/icons/icons/IconUnderline.js.map +1 -1
- package/lib/es/components/icons/icons/IconUndo.js +0 -1
- package/lib/es/components/icons/icons/IconUndo.js.map +1 -1
- package/lib/es/components/icons/icons/IconUnlink.js +3 -4
- package/lib/es/components/icons/icons/IconUnlink.js.map +1 -1
- package/lib/es/components/icons/icons/IconUnlock.js +6 -7
- package/lib/es/components/icons/icons/IconUnlock.js.map +1 -1
- package/lib/es/components/icons/icons/IconUnlockStroked.js +2 -3
- package/lib/es/components/icons/icons/IconUnlockStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconUpload.js +5 -6
- package/lib/es/components/icons/icons/IconUpload.js.map +1 -1
- package/lib/es/components/icons/icons/IconUploadError.js +2 -3
- package/lib/es/components/icons/icons/IconUploadError.js.map +1 -1
- package/lib/es/components/icons/icons/IconUser.js +6 -7
- package/lib/es/components/icons/icons/IconUser.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserAdd.js +6 -7
- package/lib/es/components/icons/icons/IconUserAdd.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserCardPhone.js +2 -3
- package/lib/es/components/icons/icons/IconUserCardPhone.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserCardVideo.js +2 -3
- package/lib/es/components/icons/icons/IconUserCardVideo.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserCircle.js +6 -7
- package/lib/es/components/icons/icons/IconUserCircle.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserCircleStroked.js +6 -7
- package/lib/es/components/icons/icons/IconUserCircleStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserGroup.js +2 -3
- package/lib/es/components/icons/icons/IconUserGroup.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserListStroked.js +2 -3
- package/lib/es/components/icons/icons/IconUserListStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserSetting.js +6 -7
- package/lib/es/components/icons/icons/IconUserSetting.js.map +1 -1
- package/lib/es/components/icons/icons/IconUserStroked.js +0 -1
- package/lib/es/components/icons/icons/IconUserStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVennChartStroked.js +0 -1
- package/lib/es/components/icons/icons/IconVennChartStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVerify.js +2 -3
- package/lib/es/components/icons/icons/IconVerify.js.map +1 -1
- package/lib/es/components/icons/icons/IconVersionStroked.js +2 -3
- package/lib/es/components/icons/icons/IconVersionStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVideo.js +2 -3
- package/lib/es/components/icons/icons/IconVideo.js.map +1 -1
- package/lib/es/components/icons/icons/IconVideoDouyinStroked.js +6 -7
- package/lib/es/components/icons/icons/IconVideoDouyinStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVideoListStroked.js +6 -7
- package/lib/es/components/icons/icons/IconVideoListStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVideoStroked.js +2 -3
- package/lib/es/components/icons/icons/IconVideoStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVideoUrlStroked.js +2 -3
- package/lib/es/components/icons/icons/IconVideoUrlStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVigoLogo.js +2 -3
- package/lib/es/components/icons/icons/IconVigoLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconVolume1.js +3 -4
- package/lib/es/components/icons/icons/IconVolume1.js.map +1 -1
- package/lib/es/components/icons/icons/IconVolume2.js +1 -2
- package/lib/es/components/icons/icons/IconVolume2.js.map +1 -1
- package/lib/es/components/icons/icons/IconVolumnSilent.js +2 -3
- package/lib/es/components/icons/icons/IconVolumnSilent.js.map +1 -1
- package/lib/es/components/icons/icons/IconVoteStroked.js +0 -1
- package/lib/es/components/icons/icons/IconVoteStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconVoteVideoStroked.js +6 -7
- package/lib/es/components/icons/icons/IconVoteVideoStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconWeibo.js +2 -3
- package/lib/es/components/icons/icons/IconWeibo.js.map +1 -1
- package/lib/es/components/icons/icons/IconWholeWord.js +6 -7
- package/lib/es/components/icons/icons/IconWholeWord.js.map +1 -1
- package/lib/es/components/icons/icons/IconWifi.js +6 -7
- package/lib/es/components/icons/icons/IconWifi.js.map +1 -1
- package/lib/es/components/icons/icons/IconWindowAdaptionStroked.js +8 -9
- package/lib/es/components/icons/icons/IconWindowAdaptionStroked.js.map +1 -1
- package/lib/es/components/icons/icons/IconWrench.js +1 -2
- package/lib/es/components/icons/icons/IconWrench.js.map +1 -1
- package/lib/es/components/icons/icons/IconXiguaLogo.js +8 -9
- package/lib/es/components/icons/icons/IconXiguaLogo.js.map +1 -1
- package/lib/es/components/icons/icons/IconYoutube.js +2 -3
- package/lib/es/components/icons/icons/IconYoutube.js.map +1 -1
- package/lib/es/components/image/Image.vue2.js +5 -0
- package/lib/es/components/image/Image.vue2.js.map +1 -0
- package/lib/es/components/image/Preview.vue2.js +5 -0
- package/lib/es/components/image/Preview.vue2.js.map +1 -0
- package/lib/es/components/image/PreviewFooter.vue2.js +5 -0
- package/lib/es/components/image/PreviewFooter.vue2.js.map +1 -0
- package/lib/es/components/image/PreviewHeader.vue2.js +5 -0
- package/lib/es/components/image/PreviewHeader.vue2.js.map +1 -0
- package/lib/es/components/image/PreviewImage.vue2.js +5 -0
- package/lib/es/components/image/PreviewImage.vue2.js.map +1 -0
- package/lib/es/components/image/PreviewInner.vue2.js +5 -0
- package/lib/es/components/image/PreviewInner.vue2.js.map +1 -0
- package/lib/es/components/image/index.js +0 -1
- package/lib/es/components/image/index.js.map +1 -1
- package/lib/es/components/input/Input.vue2.js +5 -0
- package/lib/es/components/input/Input.vue2.js.map +1 -0
- package/lib/es/components/input/InputGroup.vue2.js +5 -0
- package/lib/es/components/input/InputGroup.vue2.js.map +1 -0
- package/lib/es/components/input/TextArea.vue2.js +5 -0
- package/lib/es/components/input/TextArea.vue2.js.map +1 -0
- package/lib/es/components/input/index.js +5 -6
- package/lib/es/components/input/index.js.map +1 -1
- package/lib/es/components/inputNumber/InputNumber.vue2.js +5 -0
- package/lib/es/components/inputNumber/InputNumber.vue2.js.map +1 -0
- package/lib/es/components/inputNumber/index.js +5 -6
- package/lib/es/components/inputNumber/index.js.map +1 -1
- package/lib/es/components/layout/Content.vue2.js +5 -0
- package/lib/es/components/layout/Content.vue2.js.map +1 -0
- package/lib/es/components/layout/Footer.vue2.js +5 -0
- package/lib/es/components/layout/Footer.vue2.js.map +1 -0
- package/lib/es/components/layout/Header.vue2.js +5 -0
- package/lib/es/components/layout/Header.vue2.js.map +1 -0
- package/lib/es/components/layout/Layout.vue2.js +5 -0
- package/lib/es/components/layout/Layout.vue2.js.map +1 -0
- package/lib/es/components/layout/Sider.vue2.js +5 -0
- package/lib/es/components/layout/Sider.vue2.js.map +1 -0
- package/lib/es/components/layout/index.js +0 -1
- package/lib/es/components/layout/index.js.map +1 -1
- package/lib/es/components/list/List.vue.js +10 -11
- package/lib/es/components/list/List.vue.js.map +1 -1
- package/lib/es/components/list/List.vue2.js +5 -0
- package/lib/es/components/list/List.vue2.js.map +1 -0
- package/lib/es/components/list/ListItem.vue2.js +5 -0
- package/lib/es/components/list/ListItem.vue2.js.map +1 -0
- package/lib/es/components/list/index.js +0 -1
- package/lib/es/components/list/index.js.map +1 -1
- package/lib/es/components/locale/LocaleConsumer.vue2.js +5 -0
- package/lib/es/components/locale/LocaleConsumer.vue2.js.map +1 -0
- package/lib/es/components/locale/LocaleProvider.vue2.js +5 -0
- package/lib/es/components/locale/LocaleProvider.vue2.js.map +1 -0
- package/lib/es/components/modal/ConfirmModal.vue2.js +5 -0
- package/lib/es/components/modal/ConfirmModal.vue2.js.map +1 -0
- package/lib/es/components/modal/Modal.vue2.js +5 -0
- package/lib/es/components/modal/Modal.vue2.js.map +1 -0
- package/lib/es/components/modal/ModalContent.vue2.js +5 -0
- package/lib/es/components/modal/ModalContent.vue2.js.map +1 -0
- package/lib/es/components/modal/index.js +0 -1
- package/lib/es/components/modal/index.js.map +1 -1
- package/lib/es/components/navigation/CollapseButton.vue.js +7 -9
- package/lib/es/components/navigation/CollapseButton.vue.js.map +1 -1
- package/lib/es/components/navigation/CollapseButton.vue2.js +5 -0
- package/lib/es/components/navigation/CollapseButton.vue2.js.map +1 -0
- package/lib/es/components/navigation/Footer.vue2.js +5 -0
- package/lib/es/components/navigation/Footer.vue2.js.map +1 -0
- package/lib/es/components/navigation/Header.vue2.js +5 -0
- package/lib/es/components/navigation/Header.vue2.js.map +1 -0
- package/lib/es/components/navigation/Item.vue.js +2 -3
- package/lib/es/components/navigation/Item.vue.js.map +1 -1
- package/lib/es/components/navigation/Item.vue2.js +5 -0
- package/lib/es/components/navigation/Item.vue2.js.map +1 -0
- package/lib/es/components/navigation/Navigation.vue2.js +5 -0
- package/lib/es/components/navigation/Navigation.vue2.js.map +1 -0
- package/lib/es/components/navigation/SubNav.vue.js +2 -3
- package/lib/es/components/navigation/SubNav.vue.js.map +1 -1
- package/lib/es/components/navigation/SubNav.vue2.js +5 -0
- package/lib/es/components/navigation/SubNav.vue2.js.map +1 -0
- package/lib/es/components/navigation/index.js +7 -8
- package/lib/es/components/navigation/index.js.map +1 -1
- package/lib/es/components/notification/Notice.vue2.js +5 -0
- package/lib/es/components/notification/Notice.vue2.js.map +1 -0
- package/lib/es/components/notification/NotificationList.vue2.js +5 -0
- package/lib/es/components/notification/NotificationList.vue2.js.map +1 -0
- package/lib/es/components/notification/index.js +3 -4
- package/lib/es/components/notification/index.js.map +1 -1
- package/lib/es/components/overflowList/IntersectionObserver.vue2.js +5 -0
- package/lib/es/components/overflowList/IntersectionObserver.vue2.js.map +1 -0
- package/lib/es/components/overflowList/OverflowList.vue2.js +5 -0
- package/lib/es/components/overflowList/OverflowList.vue2.js.map +1 -0
- package/lib/es/components/overflowList/index.js +3 -4
- package/lib/es/components/overflowList/index.js.map +1 -1
- package/lib/es/components/pagination/Pagination.vue2.js +5 -0
- package/lib/es/components/pagination/Pagination.vue2.js.map +1 -0
- package/lib/es/components/pagination/RestPageList.vue2.js +5 -0
- package/lib/es/components/pagination/RestPageList.vue2.js.map +1 -0
- package/lib/es/components/pagination/index.js +2 -3
- package/lib/es/components/pagination/index.js.map +1 -1
- package/lib/es/components/pinCode/PinCode.vue2.js +5 -0
- package/lib/es/components/pinCode/PinCode.vue2.js.map +1 -0
- package/lib/es/components/pinCode/index.js +2 -3
- package/lib/es/components/pinCode/index.js.map +1 -1
- package/lib/es/components/popconfirm/Popconfirm.vue2.js +5 -0
- package/lib/es/components/popconfirm/Popconfirm.vue2.js.map +1 -0
- package/lib/es/components/popconfirm/index.js +3 -4
- package/lib/es/components/popconfirm/index.js.map +1 -1
- package/lib/es/components/popover/Arrow.vue2.js +59 -0
- package/lib/es/components/popover/Arrow.vue2.js.map +1 -0
- package/lib/es/components/popover/Popover.vue2.js +5 -0
- package/lib/es/components/popover/Popover.vue2.js.map +1 -0
- package/lib/es/components/popover/index.js +2 -3
- package/lib/es/components/popover/index.js.map +1 -1
- package/lib/es/components/progress/Progress.vue2.js +5 -0
- package/lib/es/components/progress/Progress.vue2.js.map +1 -0
- package/lib/es/components/progress/index.js +2 -3
- package/lib/es/components/progress/index.js.map +1 -1
- package/lib/es/components/radio/Radio.vue.js +2 -3
- package/lib/es/components/radio/Radio.vue.js.map +1 -1
- package/lib/es/components/radio/Radio.vue2.js +5 -0
- package/lib/es/components/radio/Radio.vue2.js.map +1 -0
- package/lib/es/components/radio/RadioGroup.vue2.js +5 -0
- package/lib/es/components/radio/RadioGroup.vue2.js.map +1 -0
- package/lib/es/components/radio/RadioInner.vue2.js +5 -0
- package/lib/es/components/radio/RadioInner.vue2.js.map +1 -0
- package/lib/es/components/radio/index.js +4 -5
- package/lib/es/components/radio/index.js.map +1 -1
- package/lib/es/components/rating/Rating.vue.js +17 -18
- package/lib/es/components/rating/Rating.vue.js.map +1 -1
- package/lib/es/components/rating/Rating.vue2.js +5 -0
- package/lib/es/components/rating/Rating.vue2.js.map +1 -0
- package/lib/es/components/rating/RatingItem.vue2.js +5 -0
- package/lib/es/components/rating/RatingItem.vue2.js.map +1 -0
- package/lib/es/components/rating/index.js +3 -4
- package/lib/es/components/rating/index.js.map +1 -1
- package/lib/es/components/resizable/Resizable.vue.js +2 -3
- package/lib/es/components/resizable/Resizable.vue.js.map +1 -1
- package/lib/es/components/resizable/Resizable.vue2.js +5 -0
- package/lib/es/components/resizable/Resizable.vue2.js.map +1 -0
- package/lib/es/components/resizable/ResizableHandler.vue2.js +5 -0
- package/lib/es/components/resizable/ResizableHandler.vue2.js.map +1 -0
- package/lib/es/components/resizable/group/ResizeGroup.vue.js +2 -3
- package/lib/es/components/resizable/group/ResizeGroup.vue.js.map +1 -1
- package/lib/es/components/resizable/group/ResizeGroup.vue2.js +5 -0
- package/lib/es/components/resizable/group/ResizeGroup.vue2.js.map +1 -0
- package/lib/es/components/resizable/group/ResizeHandler.vue2.js +5 -0
- package/lib/es/components/resizable/group/ResizeHandler.vue2.js.map +1 -0
- package/lib/es/components/resizable/group/ResizeItem.vue.js +2 -3
- package/lib/es/components/resizable/group/ResizeItem.vue.js.map +1 -1
- package/lib/es/components/resizable/group/ResizeItem.vue2.js +5 -0
- package/lib/es/components/resizable/group/ResizeItem.vue2.js.map +1 -0
- package/lib/es/components/resizeObserver/index.vue2.js +5 -0
- package/lib/es/components/resizeObserver/index.vue2.js.map +1 -0
- package/lib/es/components/scrollList/ScrollItem.vue2.js +5 -0
- package/lib/es/components/scrollList/ScrollItem.vue2.js.map +1 -0
- package/lib/es/components/scrollList/ScrollList.vue2.js +5 -0
- package/lib/es/components/scrollList/ScrollList.vue2.js.map +1 -0
- package/lib/es/components/select/Option.vue2.js +5 -0
- package/lib/es/components/select/Option.vue2.js.map +1 -0
- package/lib/es/components/select/OptionGroup.vue2.js +5 -0
- package/lib/es/components/select/OptionGroup.vue2.js.map +1 -0
- package/lib/es/components/select/Select.vue.js +2 -5
- package/lib/es/components/select/Select.vue.js.map +1 -1
- package/lib/es/components/select/Select.vue2.js +5 -0
- package/lib/es/components/select/Select.vue2.js.map +1 -0
- package/lib/es/components/select/index.js +0 -1
- package/lib/es/components/select/index.js.map +1 -1
- package/lib/es/components/sideSheet/SideSheet.vue2.js +5 -0
- package/lib/es/components/sideSheet/SideSheet.vue2.js.map +1 -0
- package/lib/es/components/sideSheet/SideSheetContent.vue2.js +5 -0
- package/lib/es/components/sideSheet/SideSheetContent.vue2.js.map +1 -0
- package/lib/es/components/sideSheet/index.js +3 -4
- package/lib/es/components/sideSheet/index.js.map +1 -1
- package/lib/es/components/skeleton/Skeleton.vue2.js +5 -0
- package/lib/es/components/skeleton/Skeleton.vue2.js.map +1 -0
- package/lib/es/components/skeleton/SkeletonAvatar.vue2.js +5 -0
- package/lib/es/components/skeleton/SkeletonAvatar.vue2.js.map +1 -0
- package/lib/es/components/skeleton/SkeletonButton.vue2.js +5 -0
- package/lib/es/components/skeleton/SkeletonButton.vue2.js.map +1 -0
- package/lib/es/components/skeleton/SkeletonImage.vue2.js +5 -0
- package/lib/es/components/skeleton/SkeletonImage.vue2.js.map +1 -0
- package/lib/es/components/skeleton/SkeletonParagraph.vue2.js +5 -0
- package/lib/es/components/skeleton/SkeletonParagraph.vue2.js.map +1 -0
- package/lib/es/components/skeleton/SkeletonTitle.vue2.js +5 -0
- package/lib/es/components/skeleton/SkeletonTitle.vue2.js.map +1 -0
- package/lib/es/components/skeleton/index.js +12 -13
- package/lib/es/components/skeleton/index.js.map +1 -1
- package/lib/es/components/slider/Slider.vue.js +2 -3
- package/lib/es/components/slider/Slider.vue.js.map +1 -1
- package/lib/es/components/slider/Slider.vue2.js +5 -0
- package/lib/es/components/slider/Slider.vue2.js.map +1 -0
- package/lib/es/components/slider/index.js +5 -6
- package/lib/es/components/slider/index.js.map +1 -1
- package/lib/es/components/space/Space.vue2.js +5 -0
- package/lib/es/components/space/Space.vue2.js.map +1 -0
- package/lib/es/components/space/index.js +0 -1
- package/lib/es/components/space/index.js.map +1 -1
- package/lib/es/components/spin/Spin.vue.js +2 -3
- package/lib/es/components/spin/Spin.vue.js.map +1 -1
- package/lib/es/components/spin/Spin.vue2.js +5 -0
- package/lib/es/components/spin/Spin.vue2.js.map +1 -0
- package/lib/es/components/spin/SpinIcon.vue2.js +5 -0
- package/lib/es/components/spin/SpinIcon.vue2.js.map +1 -0
- package/lib/es/components/spin/index.js +3 -4
- package/lib/es/components/spin/index.js.map +1 -1
- package/lib/es/components/steps/BasicStep.vue2.js +5 -0
- package/lib/es/components/steps/BasicStep.vue2.js.map +1 -0
- package/lib/es/components/steps/BasicSteps.vue2.js +5 -0
- package/lib/es/components/steps/BasicSteps.vue2.js.map +1 -0
- package/lib/es/components/steps/FillStep.vue2.js +5 -0
- package/lib/es/components/steps/FillStep.vue2.js.map +1 -0
- package/lib/es/components/steps/FillSteps.vue.js +2 -3
- package/lib/es/components/steps/FillSteps.vue.js.map +1 -1
- package/lib/es/components/steps/FillSteps.vue2.js +5 -0
- package/lib/es/components/steps/FillSteps.vue2.js.map +1 -0
- package/lib/es/components/steps/NavStep.vue2.js +5 -0
- package/lib/es/components/steps/NavStep.vue2.js.map +1 -0
- package/lib/es/components/steps/NavSteps.vue2.js +5 -0
- package/lib/es/components/steps/NavSteps.vue2.js.map +1 -0
- package/lib/es/components/steps/Step.vue2.js +5 -0
- package/lib/es/components/steps/Step.vue2.js.map +1 -0
- package/lib/es/components/steps/Steps.vue2.js +5 -0
- package/lib/es/components/steps/Steps.vue2.js.map +1 -0
- package/lib/es/components/steps/index.js +2 -3
- package/lib/es/components/steps/index.js.map +1 -1
- package/lib/es/components/switch/Switch.vue2.js +5 -0
- package/lib/es/components/switch/Switch.vue2.js.map +1 -0
- package/lib/es/components/switch/index.js +4 -5
- package/lib/es/components/switch/index.js.map +1 -1
- package/lib/es/components/table/Column.vue2.js +5 -0
- package/lib/es/components/table/Column.vue2.js.map +1 -0
- package/lib/es/components/table/ColumnFilter.vue2.js +133 -0
- package/lib/es/components/table/ColumnFilter.vue2.js.map +1 -0
- package/lib/es/components/table/ColumnSorter.vue2.js +73 -0
- package/lib/es/components/table/ColumnSorter.vue2.js.map +1 -0
- package/lib/es/components/table/CustomExpandIcon.vue2.js +63 -0
- package/lib/es/components/table/CustomExpandIcon.vue2.js.map +1 -0
- package/lib/es/components/table/ResizableHeaderCell.vue2.js +52 -0
- package/lib/es/components/table/ResizableHeaderCell.vue2.js.map +1 -0
- package/lib/es/components/table/Table.vue.js +358 -361
- package/lib/es/components/table/Table.vue.js.map +1 -1
- package/lib/es/components/table/Table.vue2.js +5 -0
- package/lib/es/components/table/Table.vue2.js.map +1 -0
- package/lib/es/components/table/TableCell.vue2.js +207 -0
- package/lib/es/components/table/TableCell.vue2.js.map +1 -0
- package/lib/es/components/table/TableHeader.vue2.js +93 -0
- package/lib/es/components/table/TableHeader.vue2.js.map +1 -0
- package/lib/es/components/table/TableHeaderRow.vue2.js +350 -0
- package/lib/es/components/table/TableHeaderRow.vue2.js.map +1 -0
- package/lib/es/components/table/TableSelectionCell.vue2.js +74 -0
- package/lib/es/components/table/TableSelectionCell.vue2.js.map +1 -0
- package/lib/es/components/table/VirtualizedBody.vue2.js +651 -0
- package/lib/es/components/table/VirtualizedBody.vue2.js.map +1 -0
- package/lib/es/components/table/index.js +0 -1
- package/lib/es/components/table/index.js.map +1 -1
- package/lib/es/components/tabs/TabBar.vue.js +2 -4
- package/lib/es/components/tabs/TabBar.vue.js.map +1 -1
- package/lib/es/components/tabs/TabBar.vue2.js +5 -0
- package/lib/es/components/tabs/TabBar.vue2.js.map +1 -0
- package/lib/es/components/tabs/TabItem.vue2.js +5 -0
- package/lib/es/components/tabs/TabItem.vue2.js.map +1 -0
- package/lib/es/components/tabs/TabPane.vue2.js +5 -0
- package/lib/es/components/tabs/TabPane.vue2.js.map +1 -0
- package/lib/es/components/tabs/Tabs.vue2.js +5 -0
- package/lib/es/components/tabs/Tabs.vue2.js.map +1 -0
- package/lib/es/components/tabs/index.js +0 -1
- package/lib/es/components/tabs/index.js.map +1 -1
- package/lib/es/components/tag/Tag.vue2.js +5 -0
- package/lib/es/components/tag/Tag.vue2.js.map +1 -0
- package/lib/es/components/tag/TagGroup.vue.js +12 -13
- package/lib/es/components/tag/TagGroup.vue.js.map +1 -1
- package/lib/es/components/tag/TagGroup.vue2.js +5 -0
- package/lib/es/components/tag/TagGroup.vue2.js.map +1 -0
- package/lib/es/components/tag/index.js +3 -4
- package/lib/es/components/tag/index.js.map +1 -1
- package/lib/es/components/tagInput/TagInput.vue2.js +412 -0
- package/lib/es/components/tagInput/TagInput.vue2.js.map +1 -0
- package/lib/es/components/tagInput/TagItem.vue2.js +5 -0
- package/lib/es/components/tagInput/TagItem.vue2.js.map +1 -0
- package/lib/es/components/tagInput/index.js +2 -3
- package/lib/es/components/tagInput/index.js.map +1 -1
- package/lib/es/components/timePicker/Combobox.vue2.js +5 -0
- package/lib/es/components/timePicker/Combobox.vue2.js.map +1 -0
- package/lib/es/components/timePicker/TimeInput.vue2.js +5 -0
- package/lib/es/components/timePicker/TimeInput.vue2.js.map +1 -0
- package/lib/es/components/timePicker/TimePicker.vue.js +2 -3
- package/lib/es/components/timePicker/TimePicker.vue.js.map +1 -1
- package/lib/es/components/timePicker/TimePicker.vue2.js +5 -0
- package/lib/es/components/timePicker/TimePicker.vue2.js.map +1 -0
- package/lib/es/components/timePicker/index.js +3 -4
- package/lib/es/components/timePicker/index.js.map +1 -1
- package/lib/es/components/timeline/Timeline.vue2.js +5 -0
- package/lib/es/components/timeline/Timeline.vue2.js.map +1 -0
- package/lib/es/components/timeline/TimelineItem.vue2.js +5 -0
- package/lib/es/components/timeline/TimelineItem.vue2.js.map +1 -0
- package/lib/es/components/timeline/index.js +3 -4
- package/lib/es/components/timeline/index.js.map +1 -1
- package/lib/es/components/toast/HookToast.vue2.js +5 -0
- package/lib/es/components/toast/HookToast.vue2.js.map +1 -0
- package/lib/es/components/toast/Toast.vue2.js +5 -0
- package/lib/es/components/toast/Toast.vue2.js.map +1 -0
- package/lib/es/components/toast/ToastList.vue2.js +5 -0
- package/lib/es/components/toast/ToastList.vue2.js.map +1 -0
- package/lib/es/components/toast/index.js +5 -6
- package/lib/es/components/toast/index.js.map +1 -1
- package/lib/es/components/tooltip/Tooltip.vue2.js +594 -0
- package/lib/es/components/tooltip/Tooltip.vue2.js.map +1 -0
- package/lib/es/components/tooltip/TriangleArrow.vue2.js +5 -0
- package/lib/es/components/tooltip/TriangleArrow.vue2.js.map +1 -0
- package/lib/es/components/tooltip/TriangleArrowVertical.vue2.js +5 -0
- package/lib/es/components/tooltip/TriangleArrowVertical.vue2.js.map +1 -0
- package/lib/es/components/tooltip/index.js +0 -1
- package/lib/es/components/tooltip/index.js.map +1 -1
- package/lib/es/components/transfer/Transfer.vue2.js +5 -0
- package/lib/es/components/transfer/Transfer.vue2.js.map +1 -0
- package/lib/es/components/transfer/TransferHeader.vue2.js +5 -0
- package/lib/es/components/transfer/TransferHeader.vue2.js.map +1 -0
- package/lib/es/components/transfer/TransferSelected.vue2.js +5 -0
- package/lib/es/components/transfer/TransferSelected.vue2.js.map +1 -0
- package/lib/es/components/transfer/TransferSource.vue2.js +5 -0
- package/lib/es/components/transfer/TransferSource.vue2.js.map +1 -0
- package/lib/es/components/transfer/index.js +3 -4
- package/lib/es/components/transfer/index.js.map +1 -1
- package/lib/es/components/tree/AutoSizer.vue2.js +5 -0
- package/lib/es/components/tree/AutoSizer.vue2.js.map +1 -0
- package/lib/es/components/tree/Indent.vue2.js +5 -0
- package/lib/es/components/tree/Indent.vue2.js.map +1 -0
- package/lib/es/components/tree/NodeCollapsible.vue.js +4 -5
- package/lib/es/components/tree/NodeCollapsible.vue.js.map +1 -1
- package/lib/es/components/tree/NodeCollapsible.vue2.js +5 -0
- package/lib/es/components/tree/NodeCollapsible.vue2.js.map +1 -0
- package/lib/es/components/tree/NodeList.vue2.js +5 -0
- package/lib/es/components/tree/NodeList.vue2.js.map +1 -0
- package/lib/es/components/tree/Tree.vue2.js +5 -0
- package/lib/es/components/tree/Tree.vue2.js.map +1 -0
- package/lib/es/components/tree/TreeNode.vue.js +2 -4
- package/lib/es/components/tree/TreeNode.vue.js.map +1 -1
- package/lib/es/components/tree/TreeNode.vue2.js +5 -0
- package/lib/es/components/tree/TreeNode.vue2.js.map +1 -0
- package/lib/es/components/tree/index.js +2 -3
- package/lib/es/components/tree/index.js.map +1 -1
- package/lib/es/components/treeSelect/TreeSelect.vue.js +2 -4
- package/lib/es/components/treeSelect/TreeSelect.vue.js.map +1 -1
- package/lib/es/components/treeSelect/TreeSelect.vue2.js +5 -0
- package/lib/es/components/treeSelect/TreeSelect.vue2.js.map +1 -0
- package/lib/es/components/treeSelect/index.js +2 -3
- package/lib/es/components/treeSelect/index.js.map +1 -1
- package/lib/es/components/trigger/Trigger.vue2.js +5 -0
- package/lib/es/components/trigger/Trigger.vue2.js.map +1 -0
- package/lib/es/components/typography/Base.vue.js +2 -4
- package/lib/es/components/typography/Base.vue.js.map +1 -1
- package/lib/es/components/typography/Base.vue2.js +5 -0
- package/lib/es/components/typography/Base.vue2.js.map +1 -0
- package/lib/es/components/typography/Copyable.vue.js +2 -3
- package/lib/es/components/typography/Copyable.vue.js.map +1 -1
- package/lib/es/components/typography/Copyable.vue2.js +5 -0
- package/lib/es/components/typography/Copyable.vue2.js.map +1 -0
- package/lib/es/components/typography/Paragraph.vue2.js +5 -0
- package/lib/es/components/typography/Paragraph.vue2.js.map +1 -0
- package/lib/es/components/typography/Text.vue2.js +5 -0
- package/lib/es/components/typography/Text.vue2.js.map +1 -0
- package/lib/es/components/typography/Title.vue2.js +5 -0
- package/lib/es/components/typography/Title.vue2.js.map +1 -0
- package/lib/es/components/typography/Typography.vue2.js +5 -0
- package/lib/es/components/typography/Typography.vue2.js.map +1 -0
- package/lib/es/components/typography/index.js +0 -1
- package/lib/es/components/typography/index.js.map +1 -1
- package/lib/es/components/upload/Upload.vue.js +2 -5
- package/lib/es/components/upload/Upload.vue.js.map +1 -1
- package/lib/es/components/upload/Upload.vue2.js +5 -0
- package/lib/es/components/upload/Upload.vue2.js.map +1 -0
- package/lib/es/components/upload/index.js +3 -4
- package/lib/es/components/upload/index.js.map +1 -1
- package/lib/es/index.js +938 -968
- package/lib/es/index.js.map +1 -1
- package/lib/es/style.css +1 -1
- package/package.json +5 -3
- package/lib/cjs/components/icons/Icon.vue3.cjs.map +0 -1
- package/lib/cjs/components/radio/RadioInner.vue3.cjs.map +0 -1
- package/lib/cjs/components/spin/SpinIcon.vue3.cjs.map +0 -1
- package/lib/es/components/icons/Icon.vue3.js +0 -6
- package/lib/es/components/icons/Icon.vue3.js.map +0 -1
- package/lib/es/components/radio/RadioInner.vue3.js +0 -6
- package/lib/es/components/radio/RadioInner.vue3.js.map +0 -1
- package/lib/es/components/spin/SpinIcon.vue3.js +0 -6
- package/lib/es/components/spin/SpinIcon.vue3.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Table.vue.cjs","sources":["../../../../src/components/table/Table.vue"],"sourcesContent":["<template>\n <div :class=\"wrapperCls\" :style=\"wrapperStyle\" :data-column-fixed=\"anyColumnFixed\" v-bind=\"getDataAttr()\">\n <Spin :spinning=\"props.loading\" size=\"large\">\n <div ref=\"wrapRef\" :class=\"wrapCls\">\n <template v-if=\"showPagination && (paginationPosition === 'top' || paginationPosition === 'both')\">\n <component :is=\"renderPagination\" v-if=\"renderPagination\" />\n <LocaleConsumer v-else-if=\"paginationProps\" component-name=\"Table\">\n <template #default=\"{ locale }\">\n <div :class=\"`${prefixCls}-pagination-outer`\">\n <span v-if=\"getPaginationInfo(locale)\" :class=\"`${prefixCls}-pagination-info`\">\n {{ getPaginationInfo(locale) }}\n </span>\n <span :class=\"`${prefixCls}-pagination-wrapper`\">\n <Pagination\n v-if=\"paginationProps && paginationProps.total > 0\"\n v-bind=\"paginationProps\"\n />\n </span>\n </div>\n </template>\n </LocaleConsumer>\n </template>\n <div v-if=\"props.title\" :class=\"`${prefixCls}-title`\">\n <component :is=\"renderTitle\" />\n </div>\n <div :class=\"tableWrapperCls\" :style=\"tableWrapperStyle\">\n <div\n v-if=\"useFixedHeader && showHeader\"\n ref=\"headerWrapRef\"\n :class=\"headerCls\"\n :style=\"getHeaderStyle()\"\n @scroll=\"handleHeaderScroll\"\n >\n <table :class=\"tableCls\" :style=\"headerTableStyle\" role=\"grid\">\n <colgroup :class=\"`${prefixCls}-colgroup`\">\n <col\n v-for=\"(column, index) in flattenColumns\"\n :key=\"index\"\n :class=\"`${prefixCls}-col`\"\n :style=\"getColumnStyle(column)\"\n />\n </colgroup>\n <TableHeader\n :columns=\"flattenColumns\"\n :components=\"props.components\"\n :prefix-cls=\"prefixCls\"\n :on-header-row=\"props.onHeaderRow\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :title-selection-props=\"titleSelectionProps\"\n :on-sorter-click=\"handleSorterClick\"\n :on-filter-select=\"handleFilterSelect\"\n :on-filter-dropdown-visible-change=\"handleFilterDropdownVisibleChange\"\n :on-resize=\"handleColumnResize\"\n />\n </table>\n </div>\n <VirtualizedBody\n v-if=\"props.virtualized\"\n ref=\"virtualizedBodyRef\"\n :data-source=\"sortedData\"\n :columns=\"flattenColumns\"\n :virtualized=\"props.virtualized\"\n :scroll=\"props.scroll\"\n :prefix-cls=\"prefixCls\"\n :size=\"props.size\"\n :on-scroll=\"virtualizedOnScroll\"\n :handle-body-scroll=\"handleBodyScroll\"\n :row-key=\"props.rowKey\"\n :components=\"props.components\"\n :expanded-row-keys=\"state.expandedRowKeys\"\n :expanded-row-render=\"props.expandedRowRender\"\n :on-row=\"props.onRow\"\n :row-expandable=\"isRowExpandable\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :disabled-row-keys-set=\"state.disabledRowKeysSet\"\n :render-expand-icon=\"renderExpandIcon\"\n :hide-expanded-column=\"props.hideExpandedColumn\"\n :expand-row-by-click=\"props.expandRowByClick\"\n :slots=\"slots\"\n :children-record-name=\"props.childrenRecordName\"\n :groups=\"state.groups\"\n :render-group-section=\"renderGroupSection\"\n :on-grouped-row=\"props.onGroupedRow\"\n :click-grouped-row-to-expand=\"props.clickGroupedRowToExpand\"\n :on-group-expand=\"handleGroupRowExpanded\"\n :indent-size=\"props.indentSize\"\n :expand-icon=\"props.expandIcon\"\n @items-rendered=\"handleItemsRendered\"\n >\n <template #empty>\n <component :is=\"props.empty\" v-if=\"props.empty\" />\n <LocaleConsumer v-else component-name=\"Table\">\n <template #default=\"{ locale }\">\n <Empty :description=\"(locale as any)?.emptyText || '暂无数据'\" />\n </template>\n </LocaleConsumer>\n </template>\n </VirtualizedBody>\n <div\n v-else\n ref=\"bodyWrapRef\"\n :class=\"`${prefixCls}-body`\"\n :style=\"getBodyStyle()\"\n @scroll=\"handleBodyScroll\"\n >\n <table :class=\"tableCls\" :style=\"bodyTableStyle\" role=\"grid\">\n <colgroup :class=\"`${prefixCls}-colgroup`\">\n <col\n v-for=\"(column, index) in flattenColumns\"\n :key=\"index\"\n :class=\"`${prefixCls}-col`\"\n :style=\"getColumnStyle(column)\"\n />\n </colgroup>\n <TableHeader\n v-if=\"!useFixedHeader && showHeader\"\n :columns=\"flattenColumns\"\n :components=\"props.components\"\n :prefix-cls=\"prefixCls\"\n :on-header-row=\"props.onHeaderRow\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :title-selection-props=\"titleSelectionProps\"\n :on-sorter-click=\"handleSorterClick\"\n :on-filter-select=\"handleFilterSelect\"\n :on-filter-dropdown-visible-change=\"handleFilterDropdownVisibleChange\"\n :on-resize=\"handleColumnResize\"\n />\n <tbody ref=\"bodyRef\" :class=\"`${prefixCls}-tbody`\">\n <template\n v-for=\"(record, rowIndex) in displayData\"\n :key=\"\n record.__semiTableGroupSection\n ? `group-${record.groupKey}`\n : getRecordKey(record, rowIndex)\n \"\n >\n <!-- 分组行 -->\n <tr\n v-if=\"record.__semiTableGroupSection\"\n :class=\"\n classnames(`${prefixCls}-row-section`, `${prefixCls}-row`, {\n [`${prefixCls}-row-section-on`]: isGroupExpanded(record.groupKey),\n })\n \"\n :data-row-key=\"record.groupKey\"\n :aria-rowindex=\"rowIndex + 1\"\n :aria-level=\"1\"\n v-bind=\"getGroupedRowProps(record.groupKey, rowIndex)\"\n @click=\"handleGroupedRowClick(record.groupKey, rowIndex, $event)\"\n >\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-row-cell`\">\n <div :class=\"`${prefixCls}-section-inner`\">\n <component\n :is=\"() => renderGroupExpandIcon(record.groupKey)\"\n v-if=\"props.expandIcon !== false\"\n />\n <component :is=\"() => renderGroupSection(record.groupKey)\" />\n </div>\n </td>\n </tr>\n <!-- 普通数据行 -->\n <tr\n v-else\n :class=\"getRowClass(record, rowIndex)\"\n :style=\"getRowStyle(record, rowIndex)\"\n v-bind=\"getRowProps(record, rowIndex)\"\n @click=\"handleRowClick(record, rowIndex, $event)\"\n @dblclick=\"handleRowDoubleClick(record, $event)\"\n @mouseenter=\"handleRowMouseEnter(record, $event)\"\n @mouseleave=\"handleRowMouseLeave(record, $event)\"\n >\n <TableCell\n v-for=\"(column, colIndex) in flattenColumns\"\n :key=\"colIndex\"\n :record=\"record\"\n :column=\"column\"\n :index=\"rowIndex\"\n :col-index=\"colIndex\"\n :prefix-cls=\"prefixCls\"\n :selected=\"isRowSelected(record)\"\n :expanded=\"isRowExpanded(record)\"\n :disabled=\"isRowDisabled(record)\"\n :indent=\"getRowIndent(record, colIndex)\"\n :selection-cell-props=\"\n isSelectionColumn(column) ? getRowSelectionProps(record) : undefined\n \"\n :expand-icon=\"getExpandIcon(record)\"\n :render-expand-icon=\"shouldProvideExpandIcon ? renderExpandIcon : undefined\"\n :expandable=\"isRowExpandable(record)\"\n :hide-expanded-column=\"props.hideExpandedColumn\"\n :first-data-column-index=\"firstDataColumnIndex\"\n :column-slot-name=\"getColumnSlotName(column)\"\n :has-slot=\"getColumnSlotName(column) && !!slots[getColumnSlotName(column)]\"\n :fixed-left=\"getFixedLeftOffset(column, colIndex)\"\n :last-fixed-left=\"isLastLeftFixed(flattenColumns, column)\"\n :fixed-right=\"getFixedRightOffset(column, colIndex)\"\n :first-fixed-right=\"isFirstFixedRight(flattenColumns, column)\"\n >\n <template\n v-if=\"getColumnSlotName(column) && slots[getColumnSlotName(column)]\"\n #[getColumnSlotName(column)]=\"slotProps\"\n >\n <slot\n :name=\"getColumnSlotName(column)\"\n v-bind=\"slotProps || {}\"\n :text=\"getColumnValue(record, column)\"\n :record=\"record\"\n :index=\"rowIndex\"\n />\n </template>\n </TableCell>\n </tr>\n <tr\n v-if=\"\n isRowExpanded(record) && props.expandedRowRender && isRowExpandable(record)\n \"\n :class=\"classnames(`${prefixCls}-row-expand`, `${prefixCls}-row`)\"\n >\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-row-cell`\">\n <div :class=\"`${prefixCls}-expand-inner`\">\n <component\n :is=\"() => props.expandedRowRender(record, rowIndex, true)\"\n />\n </div>\n </td>\n </tr>\n </template>\n <tr v-if=\"!pageData || pageData.length === 0\">\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-empty`\">\n <component :is=\"props.empty\" v-if=\"props.empty\" />\n <LocaleConsumer v-else component-name=\"Table\">\n <template #default=\"{ locale }\">\n <Empty :description=\"(locale as any)?.emptyText || '暂无数据'\" />\n </template>\n </LocaleConsumer>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <component :is=\"renderFooter\" v-if=\"renderFooter\" />\n <template v-if=\"showPagination && (paginationPosition === 'bottom' || paginationPosition === 'both')\">\n <component :is=\"renderPagination\" v-if=\"renderPagination\" />\n <LocaleConsumer v-else-if=\"paginationProps\" component-name=\"Table\">\n <template #default=\"{ locale }\">\n <div :class=\"`${prefixCls}-pagination-outer`\">\n <span v-if=\"getPaginationInfo(locale)\" :class=\"`${prefixCls}-pagination-info`\">\n {{ getPaginationInfo(locale) }}\n </span>\n <span :class=\"`${prefixCls}-pagination-wrapper`\">\n <Pagination\n v-if=\"paginationProps && paginationProps.total > 0\"\n v-bind=\"paginationProps\"\n />\n </span>\n </div>\n </template>\n </LocaleConsumer>\n </template>\n </div>\n </Spin>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, useSlots, onMounted, onUnmounted, nextTick, h, isVNode } from 'vue';\nimport classnames from 'classnames';\nimport { get, isEqual, flattenDeep, find, cloneDeep, noop } from 'lodash';\nimport TableFoundation, { TableAdapter } from '@douyinfe/semi-foundation/table/foundation';\nimport { cssClasses, strings, numbers } from '@douyinfe/semi-foundation/table/constants';\nimport {\n isSelectionColumn,\n isFixedLeft,\n isFixedRight,\n isLastLeftFixed,\n isFirstFixedRight,\n arrayAdd,\n assignColumnKeys,\n isInnerColumnKey,\n flattenColumns as flattenColumnsUtil,\n} from '@douyinfe/semi-foundation/table/utils';\nimport { provideTableContext } from './table-context';\nimport { useBaseComponent } from '../_utils';\nimport { useFoundation } from '../../_utils/useFoundation';\nimport Spin from '../spin';\nimport Empty from '../empty';\nimport Pagination from '../pagination';\nimport LocaleConsumer from '../locale/LocaleConsumer.vue';\nimport TableHeader from './TableHeader.vue';\nimport TableCell from './TableCell.vue';\nimport CustomExpandIcon from './CustomExpandIcon.vue';\nimport VirtualizedBody from './VirtualizedBody.vue';\nimport { useTableSelection } from './useTableSelection';\nimport type { TableProps, ColumnProps, Data, TablePaginationProps } from './interface';\nimport type { CSSProperties } from 'vue';\n\ndefineOptions({\n name: 'SemiTable',\n});\n\nconst props = withDefaults(defineProps<TableProps<Data>>(), {\n bordered: false,\n showHeader: true,\n hideExpandedColumn: true,\n size: 'default',\n tableLayout: '',\n prefixCls: cssClasses.PREFIX,\n pagination: true,\n childrenRecordName: 'children',\n dataSource: () => [],\n rowSelection: null,\n className: '',\n loading: false,\n expandCellFixed: false,\n indentSize: numbers.DEFAULT_INDENT_WIDTH,\n rowKey: 'key',\n defaultExpandedRowKeys: () => [],\n defaultExpandAllRows: false,\n defaultExpandAllGroupRows: false,\n expandAllRows: false,\n expandAllGroupRows: false,\n expandRowByClick: false,\n onChange: noop,\n onFilterDropdownVisibleChange: noop,\n onExpand: noop,\n onExpandedRowsChange: noop,\n});\n\nconst firstDataColumnIndex = computed(() => {\n let idx = 0;\n const cols = flattenColumns.value || [];\n while (idx < cols.length) {\n const key = (cols[idx] as any)?.key;\n if (key != null && isInnerColumnKey(key)) {\n idx += 1;\n continue;\n }\n break;\n }\n return idx;\n});\n\nconst childrenRecordName = computed(() => props.childrenRecordName || 'children');\n\nconst isTreeTable = computed(() => {\n const ds = props.dataSource || [];\n if (!Array.isArray(ds) || ds.length === 0) {\n return false;\n }\n const key = childrenRecordName.value;\n return ds.some((record: any) => Array.isArray(record?.[key]) && record[key].length > 0);\n});\n\nconst hasTreeChildren = (record: any) => {\n const key = childrenRecordName.value;\n return Array.isArray(record?.[key]) && record[key].length > 0;\n};\n\nconst getTreeLevel = (record: any): number => {\n return (record as any)?.__semiTableTreeLevel ?? 0;\n};\n\nconst getRowIndent = (record: any, colIndex: number): number => {\n if (!isTreeTable.value) {\n return 0;\n }\n if (colIndex !== firstDataColumnIndex.value) {\n return 0;\n }\n return getTreeLevel(record);\n};\n\nconst shouldProvideExpandIcon = computed(() => {\n return Boolean(props.expandedRowRender) || isTreeTable.value;\n});\n\nconst emit = defineEmits<{\n (e: 'change', changeInfo: any): void;\n (e: 'expand', expanded: boolean, record: Data, mouseEvent?: MouseEvent): void;\n (e: 'expandedRowsChange', expandedRows: Data[]): void;\n}>();\n\nconst prefixCls = computed(() => props.prefixCls || cssClasses.PREFIX);\n\n// 获取插槽\nconst slots = useSlots();\n\n// Refs\nconst bodyRef = ref<HTMLTableSectionElement | null>(null);\nconst bodyWrapRef = ref<HTMLDivElement | null>(null);\nconst headerWrapRef = ref<HTMLDivElement | null>(null);\nconst virtualizedBodyRef = ref<InstanceType<typeof VirtualizedBody> | null>(null);\nconst wrapRef = ref<HTMLDivElement | null>(null);\n\ntype BodyScrollPosition = 'both' | 'middle' | 'left' | 'right';\n\n// State\nconst state = ref({\n cachedColumns: [] as ColumnProps[],\n cachedChildren: null,\n flattenColumns: [] as ColumnProps[],\n queries: [] as ColumnProps[],\n dataSource: [] as Data[],\n flattenData: [] as Data[],\n expandedRowKeys: [] as (string | number)[],\n rowSelection: null as any,\n pagination: null as any,\n groups: null as any,\n groupKeys: [] as (string | number)[],\n allRowKeys: [] as (string | number)[],\n allDisabledRowKeys: [] as (string | number)[],\n disabledRowKeys: [] as (string | number)[],\n disabledRowKeysSet: new Set<string | number>(),\n selectedRowKeys: [] as (string | number)[],\n selectedRowKeysSet: new Set<string | number>(),\n hoveredRowKey: null as string | number | null,\n cachedFilteredSortedDataSource: [] as Data[],\n cachedFilteredSortedRowKeys: [] as (string | number)[],\n cachedFilteredSortedRowKeysSet: new Set<string | number>(),\n headWidths: [] as any[],\n bodyHasScrollBar: false,\n tableWidth: 0,\n});\n\n// 同一轮渲染/事件周期内的“写入锁”,用于打断 Vue 的递归更新(排序/筛选会导致 DOM 重排,click 可能被重复触发)\nlet applyingQueriesInTick = false;\nlet sortingInTick = false;\nconst releaseGuards = () => {\n applyingQueriesInTick = false;\n sortingInTick = false;\n};\n\nconst { adapter: baseAdapter, getDataAttr } = useBaseComponent(props, state);\n\nfunction getExpandedRowsByKeys(expandedRowKeys: (string | number)[]) {\n const keySet = new Set(expandedRowKeys);\n const dataSource = props.dataSource || [];\n return dataSource.filter((record, index) => keySet.has(getRecordKey(record, index)));\n}\n\ntype TableAdapterExt<RecordType> = TableAdapter<RecordType> & {\n notifyRowDoubleClick?: (record: RecordType, e: MouseEvent) => void;\n notifyRowMouseEnter?: (record: RecordType, e: MouseEvent) => void;\n notifyRowMouseLeave?: (record: RecordType, e: MouseEvent) => void;\n notifySelectInvert?: (selectedRows: RecordType[]) => void;\n setAllDisabledRowKeys?: (allDisabledRowKeys: (string | number)[]) => void;\n getAllDisabledRowKeys?: () => (string | number)[];\n getAllDisabledRowKeysSet?: () => Set<string | number>;\n};\n\n// 构建 adapter\nconst adapter = {\n ...baseAdapter,\n resetScrollY: () => {\n if (bodyRef.value) {\n bodyRef.value.scrollTop = 0;\n }\n },\n setSelectedRowKeys: (selectedRowKeys) => {\n state.value.rowSelection = {\n ...state.value.rowSelection,\n selectedRowKeys: [...selectedRowKeys],\n selectedRowKeysSet: new Set(selectedRowKeys),\n };\n },\n setDisabledRowKeys: (disabledRowKeys) => {\n state.value.disabledRowKeys = disabledRowKeys;\n state.value.disabledRowKeysSet = new Set(disabledRowKeys);\n },\n setCurrentPage: (currentPage) => {\n const { pagination } = state.value;\n if (typeof pagination === 'object') {\n state.value.pagination = { ...pagination, currentPage };\n } else {\n state.value.pagination = { currentPage };\n }\n },\n setPagination: (pagination) => {\n state.value.pagination = pagination;\n },\n setGroups: (groups) => {\n // Foundation 层可能会传入 Set 类型,我们需要转换为 Data[] 类型\n if (groups && groups instanceof Map) {\n const convertedGroups = new Map<string | number, Data[]>();\n const dataSource = props.dataSource || [];\n\n groups.forEach((value, key) => {\n if (value instanceof Set) {\n // 如果是 Set,需要检查 Set 中存储的是 key 还是 record 对象\n const setArray = Array.from(value);\n\n // 检查 Set 中的第一项是 key 还是 record 对象\n if (setArray.length > 0) {\n const firstItem = setArray[0];\n // 如果是字符串或数字(可能是 key),需要从 dataSource 中查找对应的 record\n if (typeof firstItem === 'string' || typeof firstItem === 'number') {\n const records: Data[] = [];\n setArray.forEach((itemKey) => {\n const record = dataSource.find((r) => {\n const rKey = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(r)\n : get(r, props.rowKey, '')\n : get(r, 'key', '');\n return rKey === itemKey;\n });\n if (record) {\n records.push(record);\n }\n });\n convertedGroups.set(key, records);\n } else {\n // 如果已经是对象,直接使用\n convertedGroups.set(key, setArray as Data[]);\n }\n } else {\n convertedGroups.set(key, []);\n }\n } else if (Array.isArray(value)) {\n // 如果已经是数组,检查数组中是否是对象\n const validRecords = value.filter(\n (item) => item && typeof item === 'object' && !Array.isArray(item)\n );\n convertedGroups.set(key, validRecords);\n }\n });\n state.value.groups = convertedGroups;\n } else {\n state.value.groups = groups;\n }\n },\n setDataSource: (dataSource) => {\n state.value.dataSource = dataSource;\n },\n setExpandedRowKeys: (expandedRowKeys) => {\n state.value.expandedRowKeys = [...expandedRowKeys];\n },\n setQuery: (query = {}) => {\n // 合并查询\n const queries = [...state.value.queries];\n const existingIndex = queries.findIndex((q) => q.key === query.key || q.dataIndex === query.dataIndex);\n if (existingIndex > -1) {\n queries[existingIndex] = { ...queries[existingIndex], ...query };\n } else {\n queries.push(query);\n }\n state.value.queries = queries;\n },\n setQueries: (queries) => {\n // 避免递归更新:某些场景下 foundation 会多次触发 setQueries,\n // 如果值没有变化则不写入响应式状态,防止触发自身依赖的 effect。\n if (queries === state.value.queries || isEqual(queries, state.value.queries)) {\n return;\n }\n // 同一 tick 内只允许写一次 queries,防止重复触发导致递归更新\n if (applyingQueriesInTick) {\n return;\n }\n applyingQueriesInTick = true;\n queueMicrotask(releaseGuards);\n state.value.queries = queries;\n },\n setFlattenData: (flattenData) => {\n state.value.flattenData = flattenData;\n },\n setAllRowKeys: (allRowKeys) => {\n state.value.allRowKeys = allRowKeys;\n },\n setHoveredRowKey: (hoveredRowKey) => {\n // 排序触发的重排过程中会产生大量 hover 事件,容易放大递归更新问题;这里在排序写入周期内跳过 hover\n if (sortingInTick) {\n return;\n }\n state.value.hoveredRowKey = hoveredRowKey;\n },\n setCachedFilteredSortedDataSource: (filteredSortedDataSource) => {\n state.value.cachedFilteredSortedDataSource = filteredSortedDataSource;\n },\n setCachedFilteredSortedRowKeys: (filteredSortedRowKeys) => {\n state.value.cachedFilteredSortedRowKeys = filteredSortedRowKeys;\n state.value.cachedFilteredSortedRowKeysSet = new Set(filteredSortedRowKeys);\n },\n setAllDisabledRowKeys: (allDisabledRowKeys) => {\n state.value.allDisabledRowKeys = allDisabledRowKeys;\n },\n getCurrentPage: () => get(state.value, 'pagination.currentPage', 1),\n getCurrentPageSize: () => get(state.value, 'pagination.pageSize', 10),\n getCachedFilteredSortedDataSource: () => state.value.cachedFilteredSortedDataSource,\n getCachedFilteredSortedRowKeys: () => state.value.cachedFilteredSortedRowKeys,\n getCachedFilteredSortedRowKeysSet: () => state.value.cachedFilteredSortedRowKeysSet,\n getAllDisabledRowKeys: () => state.value.allDisabledRowKeys,\n getAllDisabledRowKeysSet: () => new Set(state.value.allDisabledRowKeys),\n notifyFilterDropdownVisibleChange: (_visible, _dataIndex) => {\n // 筛选下拉框可见性变化通知\n // 注意:主要的逻辑已在 handleFilterDropdownVisibleChange 中处理(包括调用 column.onFilterDropdownVisibleChange)\n // 这里保持为空,避免重复调用。Foundation 层调用此方法是为了通知,但实际处理已在 Vue 层完成\n },\n notifyChange: (changeInfo) => {\n emit('change', changeInfo);\n },\n notifyExpand: (expanded, record, mouseEvent) => {\n emit('expand', expanded, record, mouseEvent);\n },\n notifyExpandedRowsChange: (expandedRows) => {\n emit('expandedRowsChange', expandedRows);\n },\n notifyRowDoubleClick: (_record: Data, _e: MouseEvent) => {\n // 双击事件已通过 handleRowDoubleClick 处理\n },\n notifyRowMouseEnter: (_record: Data, _e: MouseEvent) => {\n // 鼠标进入事件已通过 handleRowMouseEnter 处理\n },\n notifyRowMouseLeave: (_record: Data, _e: MouseEvent) => {\n // 鼠标离开事件已通过 handleRowMouseLeave 处理\n },\n notifySelect: (record: Data, selected: boolean, selectedRows: Data[], e: MouseEvent) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onSelect) {\n rowSelection.onSelect(record, selected, selectedRows, e);\n }\n },\n notifySelectAll: (selected: boolean, selectedRows: Data[], changeRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onSelectAll) {\n rowSelection.onSelectAll(selected, selectedRows, changeRows);\n }\n },\n notifySelectInvert: (selectedRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n const onSelectInvert = (rowSelection as any)?.onSelectInvert as undefined | ((rows: Data[]) => void);\n if (typeof onSelectInvert === 'function') {\n onSelectInvert(selectedRows);\n }\n },\n notifySelectionChange: (selectedRowKeys: (string | number)[], selectedRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onChange) {\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n },\n isAnyColumnFixed: () => {\n const columns = flattenColumns.value;\n return columns.some((col) => col.fixed === true || col.fixed === 'left' || col.fixed === 'right');\n },\n useFixedHeader: () => {\n const { scroll, sticky } = props;\n return Boolean(get(scroll, 'y') || sticky);\n },\n setHeadWidths: (widths: Array<{ width: number; key: any }>, index?: number) => {\n if (typeof index === 'number') {\n // 确保 headWidths 是数组\n if (!Array.isArray(state.value.headWidths)) {\n state.value.headWidths = [];\n }\n state.value.headWidths[index] = widths;\n } else {\n state.value.headWidths = widths;\n }\n },\n getHeadWidths: (index?: number) => {\n if (typeof index === 'number') {\n return state.value.headWidths[index] || [];\n }\n return state.value.headWidths;\n },\n getCellWidths: (columns?: ColumnProps[]) => {\n const cols = columns || flattenColumns.value;\n if (!Array.isArray(cols) || !cols.length) {\n return [];\n }\n\n const hw = state.value.headWidths as any;\n const flattenedWidths: Array<{ width: number; key: any }> = (() => {\n if (Array.isArray(hw) && hw.length) {\n if (Array.isArray(hw[0])) {\n return flattenDeep(hw) as Array<{ width: number; key: any }>;\n }\n return hw as Array<{ width: number; key: any }>;\n }\n return [];\n })();\n\n const result = cols.map((col) => {\n if (typeof col.width === 'number') {\n return col.width;\n }\n\n if (col.key != null && Array.isArray(flattenedWidths) && flattenedWidths.length) {\n const match = find(flattenedWidths, (item) => item && item.key != null && item.key === col.key);\n if (match) {\n return match.width;\n }\n }\n\n if (col.dataIndex != null && Array.isArray(flattenedWidths) && flattenedWidths.length) {\n const match = find(flattenedWidths, (item) => item && item.key != null && item.key === col.dataIndex);\n if (match) {\n return match.width;\n }\n }\n\n return 0;\n });\n\n return result;\n },\n mergedRowExpandable: () => false,\n isAnyColumnUseFullRender: () => false,\n getNormalizeColumns: () => () => [],\n getHandleColumns: () => () => [],\n getMergePagination: () => (pagination: any) => {\n // 合并分页配置,添加 onChange 回调\n return { onChange: foundation.setPage, ...pagination };\n },\n setBodyHasScrollbar: (bodyHasScrollBar) => {\n state.value.bodyHasScrollBar = bodyHasScrollBar;\n },\n getTableLayout: () => {\n // 如果明确指定了 tableLayout,使用指定的值\n if (props.tableLayout) {\n return props.tableLayout;\n }\n // 否则根据列的状态自动决定,与 React 版本保持一致\n let isFixed = false;\n const flattenedCols = flattenColumns.value;\n if (Array.isArray(flattenedCols)) {\n isFixed = flattenedCols.some((column) => Boolean(column.ellipsis) || Boolean(column.fixed));\n }\n if (useFixedHeader.value) {\n isFixed = true;\n }\n return isFixed ? 'fixed' : 'auto';\n },\n} as TableAdapterExt<Data>;\n\nconst { foundation } = useFoundation(TableFoundation, adapter);\n\n// Computed\nconst wrapperCls = computed(() =>\n classnames(\n props.className,\n `${prefixCls.value}-wrapper`,\n `${prefixCls.value}-wrapper-${props.direction || 'undefined'}`\n )\n);\n\nconst wrapperStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n // 当有 scroll.x 时,确保 wrapper 不会超出父容器\n // 注意:不要设置 overflowX: hidden,这会阻止横向滚动条显示\n // 只需要限制宽度即可,滚动条应该在 table-container 内的 body 中\n if (props.scroll?.x) {\n // 确保 wrapper 宽度不超过 100%,防止表格超出容器\n style.maxWidth = '100%';\n style.width = '100%';\n }\n return { ...props.style, ...style };\n});\n\nconst useFixedHeader = computed(() => {\n return Boolean(props.scroll?.y || props.sticky);\n});\n\nconst wrapCls = computed(() => {\n const y = props.scroll?.y;\n return classnames({\n [`${prefixCls.value}-${props.size}`]: props.size,\n [`${prefixCls.value}-virtualized`]: Boolean(props.virtualized),\n [`${prefixCls.value}-bordered`]: props.bordered,\n [`${prefixCls.value}-fixed-header`]: Boolean(y),\n });\n});\n\nconst tableWrapperCls = computed(() => {\n return `${prefixCls.value}-container`;\n});\n\nconst tableWrapperStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n // 当有 scroll.x 时,确保表格容器不会超出父容器\n // 注意:不要设置 overflowX: hidden,这会阻止横向滚动条显示\n // 只需要限制宽度即可\n if (props.scroll?.x) {\n style.maxWidth = '100%';\n style.width = '100%';\n }\n // 关键:当有 scroll.y 时,container 需要成为滚动上下文\n // 但实际滚动发生在 body 内,所以这里不设置 overflow\n // 表头的 sticky 定位需要相对于 container,但由于滚动在 body 内,我们需要特殊处理\n return style;\n});\n\nconst computedTableLayout = computed(() => {\n if (props.tableLayout) {\n return props.tableLayout;\n }\n return anyColumnFixed.value ? 'fixed' : 'auto';\n});\n\nconst tableCls = computed(() => {\n return classnames(prefixCls.value, {\n [`${prefixCls.value}-fixed`]: computedTableLayout.value === 'fixed',\n });\n});\n\nconst headerCls = computed(() => {\n const hasSticky = Boolean(props.sticky);\n return classnames(`${prefixCls.value}-header`, {\n [`${prefixCls.value}-header-sticky`]: hasSticky,\n [`${prefixCls.value}-header-hidden`]: !showHeader.value,\n });\n});\n\nconst headerTableStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n if (x) {\n style.width = typeof x === 'number' ? `${x}px` : x;\n }\n return style;\n});\n\nconst bodyTableStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n if (x) {\n style.width = typeof x === 'number' ? `${x}px` : x;\n }\n return style;\n});\n\nconst getHeaderStyle = (): CSSProperties => {\n const style: CSSProperties = {};\n (style as any).scrollbarGutter = 'stable';\n if (props.scroll?.y) {\n style.overflowY = 'scroll';\n }\n\n // 关键:当有固定列时,表头容器不能设置 overflow: hidden(CSS 默认值)\n // 因为这会阻止表头内固定列的 position: sticky 正常工作\n // 但是,CSS 中已经设置了 overflow: hidden,所以我们需要覆盖它\n // 当有固定列时,表头容器应该允许 overflow,以便固定列能正常工作\n if (anyColumnFixed.value && props.scroll?.y) {\n // 当有固定列和 scroll.y 时,表头容器需要允许 overflow\n // 但为了隐藏滚动条,我们只设置 overflowX: hidden(如果有横向滚动,由 bodyHasScrollBar 处理)\n // 注意:不能设置 overflow: hidden,这会阻止固定列的 sticky 定位\n if (!state.value.bodyHasScrollBar) {\n // 当没有滚动条时,允许 overflow(但不能是 hidden,因为会阻止 sticky)\n style.overflow = 'visible';\n }\n // 当有滚动条时,overflowY 已经设置为 'scroll',不需要额外设置\n }\n\n // 当有 sticky 时,设置 top 值\n // 根据 React 版本的 HeadTable.tsx:99-102\n if (props.sticky) {\n const stickyTop = typeof props.sticky === 'object' ? props.sticky.top : 0;\n if (typeof stickyTop === 'number') {\n style.top = stickyTop;\n }\n }\n\n return style;\n};\n\nconst getBodyStyle = (): CSSProperties => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n const y = props.scroll?.y;\n\n // 固定滚动条占位,避免首次滚动时布局“挤一下”导致 fixed 抖动\n (style as any).scrollbarGutter = 'stable';\n\n if (y) {\n style.maxHeight = typeof y === 'number' ? `${y}px` : y;\n }\n\n // 当有固定列且有数据时,使用 auto 而不是单独的 overflowX/overflowY(与 React 版本一致)\n // 注意:React 版本使用 size(dataSource),这里使用 props.dataSource 而不是 sortedData\n const dataSource = props.dataSource || [];\n const hasData = dataSource.length > 0;\n if (anyColumnFixed.value && hasData) {\n if (!props.virtualized) {\n style.overflow = 'auto';\n style.WebkitTransform = 'translate3d (0, 0, 0)';\n if (y) {\n style.overflowY = 'scroll';\n }\n }\n } else {\n if (!props.virtualized) {\n if (y) {\n style.overflowY = 'auto';\n }\n if (x) {\n style.overflowX = 'auto';\n style.width = '100%';\n }\n }\n }\n\n if (x && !anyColumnFixed.value) {\n style.width = '100%';\n }\n\n return style;\n};\n\nconst showHeader = computed(() => props.showHeader !== false);\n\nconst normalizeSelectionColumn = (): ColumnProps | null => {\n const { rowSelection } = props;\n if (!rowSelection || (typeof rowSelection === 'object' && rowSelection.hidden)) {\n return null;\n }\n\n const rowSelectionObj = typeof rowSelection === 'object' ? rowSelection : {};\n const column: ColumnProps = {\n key: strings.DEFAULT_KEY_COLUMN_SELECTION,\n width: numbers.DEFAULT_WIDTH_COLUMN_SELECTION,\n fixed: rowSelectionObj.fixed,\n className: classnames(`${prefixCls.value}-column-selection`, rowSelectionObj.className),\n title: 'selection',\n render: () => 'selection',\n };\n\n return column;\n};\n\nconst normalizeExpandColumn = (): ColumnProps | null => {\n if (!props.expandedRowRender || props.hideExpandedColumn !== false) {\n return null;\n }\n const column: ColumnProps = {\n key: strings.DEFAULT_KEY_COLUMN_EXPAND,\n width: numbers.DEFAULT_WIDTH_COLUMN_EXPAND,\n fixed: props.expandCellFixed,\n className: classnames(`${prefixCls.value}-column-expand`),\n title: '',\n // TableCell 会通过 isExpandedColumn(column) + renderExpandIcon 负责渲染展开按钮\n // 这里保持为空,避免误渲染\n render: () => null,\n };\n return column;\n};\n\n// 注意:Semi 的 assignColumnKeys 会对列对象做原地写入(补全 key)。\n// 在 Vue 中如果直接使用 props.columns 的引用,会触发 deep watch 以及潜在的递归更新。\n// 因此这里先递归 clone 一份 columns,再进行后续处理,避免修改 props。\nconst cloneColumns = (cols: ColumnProps[] = []): ColumnProps[] => {\n if (!Array.isArray(cols)) {\n return [];\n }\n return cols.map((col) => {\n if (!col || typeof col !== 'object') {\n return col;\n }\n const { children, ...rest } = col as any;\n const next: any = { ...rest };\n if (Array.isArray(children)) {\n next.children = cloneColumns(children);\n }\n return next as ColumnProps;\n });\n};\n\n// 第一步:展平和克隆列\nconst rawFlattenColumns = computed(() => {\n if (props.columns && props.columns.length > 0) {\n // 先展平嵌套的列(处理 children),然后克隆\n const flattened = flattenColumnsUtil(props.columns);\n return cloneColumns(flattened);\n }\n return [];\n});\n\n// 第二步:添加选择和展开列\nconst columnsWithSelectionAndExpand = computed(() => {\n const columns: ColumnProps[] = [...rawFlattenColumns.value];\n\n // 添加选择列\n const selectionColumn = normalizeSelectionColumn();\n if (selectionColumn) {\n const destIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_SELECTION);\n if (destIndex > -1) {\n columns[destIndex] = { ...selectionColumn, ...columns[destIndex] };\n } else if (selectionColumn.fixed === 'right') {\n columns.push(selectionColumn);\n } else {\n columns.unshift(selectionColumn);\n }\n }\n\n const expandColumn = normalizeExpandColumn();\n if (expandColumn) {\n const destIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_EXPAND);\n if (destIndex > -1) {\n columns[destIndex] = { ...expandColumn, ...columns[destIndex] };\n } else if (expandColumn.fixed === 'right') {\n columns.push(expandColumn);\n } else {\n // 默认插入到最前(若有 selection 列则放在 selection 后)\n const selectionIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_SELECTION);\n const insertIndex = selectionIndex > -1 ? selectionIndex + 1 : 0;\n columns.splice(insertIndex, 0, expandColumn);\n }\n }\n\n assignColumnKeys(columns as any[]);\n return columns;\n});\n\n// 第三步:合并 queries 中的列信息(包括宽度),用于支持列宽调整\nconst mergedColumnsWithQueries = computed(() => {\n const queries = state.value.queries;\n return columnsWithSelectionAndExpand.value.map((column) => {\n const queryColumn = queries.find(\n (q) => (q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)\n );\n if (queryColumn) {\n // 合并 queries 中的属性(包括 width、sortOrder 等)\n // 但是 filteredValue 优先使用 column 中的值(如果 column 中有定义),以支持自定义表头筛选\n const { filteredValue: queryFilteredValue, ...restQueryColumn } = queryColumn;\n const merged = { ...column, ...restQueryColumn };\n // 如果 column 中明确指定了 filteredValue,优先使用 column 中的值\n if (column.filteredValue !== undefined) {\n merged.filteredValue = column.filteredValue;\n } else if (queryFilteredValue !== undefined) {\n merged.filteredValue = queryFilteredValue;\n }\n return merged;\n }\n return column;\n });\n});\n\n// 第四步:处理排序、筛选、resizable 等逻辑\nconst flattenColumns = computed(() => {\n return mergedColumnsWithQueries.value.map((column) => {\n const hasSorter = Boolean(column.sorter);\n const hasFilter = Boolean(column.onFilter || column.filters);\n const useFullRender = column.useFullRender === true;\n const clickColumnToSorter = hasSorter && !hasFilter && !useFullRender;\n\n // 处理 resizable:当 Table 的 resizable prop 为 true 时,应用到所有有 width 的列\n let processedColumn = { ...column };\n\n // 如果 useFullRender 为 true,处理 title 函数,传递 selection、sorter、filter\n // 注意:需要返回一个函数,在每次渲染时调用,以便 selection 等能够响应状态变化\n if (useFullRender && typeof column.title === 'function') {\n const rawTitle = column.title;\n // 返回一个函数,在每次渲染时调用 rawTitle 并传递最新的 titleMap\n processedColumn = {\n ...processedColumn,\n title: () => {\n const titleMap: any = {};\n if (props.rowSelection) {\n // 每次渲染时重新创建 selection,确保响应状态变化\n titleMap.selection = renderSelection(undefined, true);\n }\n // sorter 和 filter 会在 TableHeaderRow 中处理\n return rawTitle(titleMap);\n },\n };\n }\n const tableResizable =\n props.resizable === true || (typeof props.resizable === 'object' && props.resizable !== null);\n\n // 将列的 resize 属性映射到 resizable(为了兼容性)\n if ('resize' in column) {\n processedColumn.resizable = column.resize;\n }\n\n // 如果 Table 的 resizable 为 true,且列有 width,则默认启用可伸缩(除非列明确设置了 resize: false)\n if (tableResizable && typeof column.width === 'number') {\n // 如果列没有明确设置 resize/resizable 属性,则启用可伸缩\n if (!('resize' in column) && !('resizable' in column)) {\n processedColumn.resizable = true;\n }\n // 如果列明确设置了 resize: false 或 resizable: false,则不启用(已经在上面处理了)\n }\n\n if (clickColumnToSorter) {\n return {\n ...processedColumn,\n clickToSort: (e: MouseEvent) => {\n e.stopPropagation();\n if (sortingInTick) {\n return;\n }\n sortingInTick = true;\n queueMicrotask(releaseGuards);\n foundation.handleSort(column, e, true);\n },\n mouseDown: (e: MouseEvent) => {\n foundation.handleMouseDown(e);\n },\n };\n }\n\n return processedColumn;\n });\n});\n\nconst anyColumnFixed = computed(() => {\n const result = flattenColumns.value.some(\n (col) => col.fixed === true || col.fixed === 'left' || col.fixed === 'right'\n );\n return result;\n});\n\nconst virtualizedOnScroll = computed(() => {\n return typeof props.virtualized === 'object' ? props.virtualized.onScroll : undefined;\n});\n\n// 提供 TableContext\n// 注意:renderSelection 会在后面定义,所以使用 getter 来延迟访问\nconst tableContext = {\n direction: (props.direction || 'ltr') as any,\n headWidths: computed(() => state.value.headWidths),\n tableWidth: computed(() => state.value.tableWidth),\n anyColumnFixed,\n flattenedColumns: computed(() => flattenColumns.value),\n setHeadWidths: adapter.setHeadWidths,\n getHeadWidths: adapter.getHeadWidths,\n getCellWidths: adapter.getCellWidths,\n getQuery: (dataIndex: string | number) => foundation.getQuery(dataIndex as string),\n isSortOrderValid: (sortOrder: any) => foundation.isSortOrderValid(sortOrder),\n get renderSelection() {\n // 延迟访问 renderSelection,在它定义后返回\n return renderSelection;\n },\n};\n\nprovideTableContext(tableContext);\n\nconst selectedRowKeysSet = computed<Set<string | number>>(() => {\n if (props.rowSelection) {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n const selectedRowKeys = (rowSelection.selectedRowKeys || []) as (string | number)[];\n return new Set(selectedRowKeys);\n }\n return new Set<string | number>();\n});\n\nconst mergedPagination = computed(() => {\n const pagination = props.pagination;\n // 如果 pagination 是 undefined,默认使用 true(显示分页)\n if (pagination === undefined || pagination === true) {\n return {\n currentPage: 1,\n pageSize: 10,\n ...(state.value.pagination || {}),\n };\n }\n if (pagination === false) {\n return false;\n }\n if (typeof pagination === 'object') {\n // 优先使用用户传入的值,然后合并 state 中的值(但不覆盖用户的值)\n return {\n currentPage: 1,\n pageSize: 10,\n ...(state.value.pagination || {}),\n ...pagination, // 用户传入的值优先级最高\n };\n }\n return state.value.pagination || { currentPage: 1, pageSize: 10 };\n});\n\n// 获取记录的 key(需要在 watch 之前定义)\nconst getRecordKey = (record: Data, index: number): string | number => {\n if (props.rowKey) {\n if (typeof props.rowKey === 'function') {\n return props.rowKey(record);\n }\n return get(record, props.rowKey, index);\n }\n return get(record, 'key', index);\n};\n\n// 分组数据处理(使用 watch 而不是 computed,因为需要副作用)\nwatch(\n () => [props.dataSource, props.groupBy],\n () => {\n const dataSource = props.dataSource || [];\n\n // 如果设置了 groupBy,进行分组\n const groupBy = props.groupBy;\n if (groupBy) {\n // 支持字符串、数字或函数类型\n let groupByFn: (record: Data) => string | number;\n if (typeof groupBy === 'function') {\n groupByFn = groupBy;\n } else if (typeof groupBy === 'string' || typeof groupBy === 'number') {\n // 字符串或数字类型:作为 dataIndex 使用\n groupByFn = (record: Data) => get(record, groupBy as string, '');\n } else {\n state.value.groups = null;\n state.value.groupKeys = [];\n return;\n }\n\n // 统一数据结构:使用 Map<string | number, Data[]> 与 React 版本保持一致\n const groups = new Map<string | number, Data[]>();\n const groupKeys: (string | number)[] = [];\n\n dataSource.forEach((record, _index) => {\n const groupKey = groupByFn(record);\n\n if (!groups.has(groupKey)) {\n groups.set(groupKey, []);\n groupKeys.push(groupKey);\n }\n\n groups.get(groupKey)!.push(record);\n });\n\n state.value.groups = groups;\n state.value.groupKeys = groupKeys;\n\n // 处理 defaultExpandAllGroupRows 和 expandAllGroupRows\n if (props.defaultExpandAllGroupRows || props.expandAllGroupRows) {\n const newExpandedRowKeys = [...state.value.expandedRowKeys];\n groupKeys.forEach((groupKey) => {\n if (!newExpandedRowKeys.includes(groupKey)) {\n newExpandedRowKeys.push(groupKey);\n }\n });\n state.value.expandedRowKeys = newExpandedRowKeys;\n }\n } else {\n state.value.groups = null;\n state.value.groupKeys = [];\n }\n\n // 处理树形数据的 defaultExpandAllRows 和 expandAllRows\n // 使用 foundation 的 initExpandedRowKeys 方法,与 React 版本保持一致\n // 需要在 nextTick 中调用,确保 foundation 已经初始化\n if (\n props.defaultExpandAllRows ||\n props.expandAllRows ||\n props.defaultExpandAllGroupRows ||\n props.expandAllGroupRows\n ) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n },\n { immediate: true }\n);\n\n// 监听 expandAllGroupRows 和 expandAllRows 的变化(defaultExpandAllGroupRows 和 defaultExpandAllRows 只在初始化时生效)\nwatch([() => props.expandAllGroupRows, () => props.expandAllRows], () => {\n if (props.expandAllGroupRows || props.expandAllRows) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n});\n\nconst groupedData = computed(() => {\n const dataSource = props.dataSource || [];\n\n // 如果设置了 groupBy,使用已计算的分组\n if (props.groupBy && state.value.groups) {\n // 返回分组后的数据\n const grouped: Array<{ type: 'section' | 'data'; groupKey?: string | number; data?: Data[] }> = [];\n\n state.value.groupKeys.forEach((groupKey) => {\n const groupData = (state.value.groups as Map<string | number, Data[]>).get(groupKey) || [];\n\n grouped.push({ type: 'section', groupKey });\n grouped.push({ type: 'data', data: groupData });\n });\n\n return grouped;\n }\n\n return dataSource;\n});\n\nconst rawDataForFilterSort = computed(() => {\n return Array.isArray(groupedData.value) &&\n groupedData.value.length > 0 &&\n typeof groupedData.value[0] === 'object' &&\n 'type' in groupedData.value[0]\n ? groupedData.value.filter((item: any) => item.type === 'data').flatMap((item: any) => item.data || [])\n : (groupedData.value as Data[]);\n});\n\n// 监听 columnsWithSelectionAndExpand 中 filteredValue 的变化,同步到 queries\n// 这样当用户在自定义表头筛选器中直接修改 filteredValue 时,能够触发筛选\n// 注意:这里监听 columnsWithSelectionAndExpand 而不是 mergedColumnsWithQueries,\n// 因为 mergedColumnsWithQueries 依赖于 queries,可能导致循环依赖\n// 性能优化:只提取有 filteredValue 和 onFilter 的列,避免不必要的遍历和深度比较\nwatch(\n () => {\n const columns = columnsWithSelectionAndExpand.value;\n if (!columns || columns.length === 0) {\n return null;\n }\n // 只提取有 onFilter 的列,减少不必要的处理\n const filterColumns = columns\n .filter((col) => {\n const dataIndex = col.dataIndex || col.key;\n return dataIndex && col.onFilter;\n })\n .map((col) => {\n const dataIndex = col.dataIndex || col.key;\n const filteredValue = col.filteredValue;\n // 只提取必要信息,避免创建大对象\n return {\n dataIndex: dataIndex as string,\n // 对于数组,使用 JSON.stringify 进行浅比较(比 isEqual 快)\n // 对于非数组,直接使用值\n filteredValueKey: Array.isArray(filteredValue)\n ? `${dataIndex}:${filteredValue.length}:${filteredValue.join(',')}`\n : filteredValue,\n filteredValue,\n onFilter: col.onFilter,\n };\n });\n return filterColumns.length > 0 ? filterColumns : null;\n },\n (columnFilters, oldColumnFilters) => {\n if (!columnFilters || columnFilters.length === 0) {\n return;\n }\n // 如果旧值存在且长度相同,可以快速比较\n if (oldColumnFilters && oldColumnFilters.length === columnFilters.length) {\n let hasChange = false;\n for (let i = 0; i < columnFilters.length; i++) {\n if (columnFilters[i].filteredValueKey !== oldColumnFilters[i]?.filteredValueKey) {\n hasChange = true;\n break;\n }\n }\n if (!hasChange) {\n return; // 没有变化,直接返回\n }\n }\n // 有变化时才进行详细比较和更新\n columnFilters.forEach((columnFilter) => {\n const { dataIndex, filteredValue: columnFilteredValue, onFilter } = columnFilter;\n if (!dataIndex || !onFilter || columnFilteredValue === undefined) {\n return;\n }\n const curQuery = foundation.getQuery(dataIndex);\n const queryFilteredValue = get(curQuery, 'filteredValue');\n // 快速比较:先比较引用,再比较值\n if (columnFilteredValue !== queryFilteredValue && !isEqual(columnFilteredValue, queryFilteredValue)) {\n adapter.setQuery({\n dataIndex,\n key: undefined, // 使用 dataIndex 作为 key\n filteredValue: Array.isArray(columnFilteredValue) ? columnFilteredValue : [],\n onFilter: onFilter,\n });\n }\n });\n },\n { flush: 'post' }\n);\n\n// 注意:排序/筛选属于\"带副作用的计算\"(foundation 内部可能会写缓存/状态)。\n// 不能放在 computed 里,否则会造成\"render -> computed -> 写响应式 -> render...\"的递归更新。\nwatch(\n [() => state.value.queries, () => rawDataForFilterSort.value],\n ([queries, dataSource]) => {\n // 无查询 / 无 foundation:直接回退到原始数据\n if (!foundation || !queries || queries.length === 0) {\n if (state.value.cachedFilteredSortedDataSource !== dataSource) {\n adapter.setCachedFilteredSortedDataSource(dataSource);\n }\n return;\n }\n\n try {\n const nextDataSource = foundation.getFilteredSortedDataSource(dataSource, queries);\n // 避免无意义写入触发更新\n if (!isEqual(nextDataSource, state.value.cachedFilteredSortedDataSource)) {\n adapter.setCachedFilteredSortedDataSource(nextDataSource);\n }\n } catch (e) {\n console.warn('Table sorting error:', e);\n // 出错时也回退到原始数据\n if (state.value.cachedFilteredSortedDataSource !== dataSource) {\n adapter.setCachedFilteredSortedDataSource(dataSource);\n }\n }\n },\n { immediate: true }\n);\n\nconst sortedData = computed(() => {\n return state.value.cachedFilteredSortedDataSource || rawDataForFilterSort.value;\n});\n\nconst pageData = computed(() => {\n const dataSource = sortedData.value;\n const pagination = mergedPagination.value;\n\n const propPagination = props.pagination;\n const isControlled = propPagination && typeof propPagination === 'object' && propPagination.currentPage != null;\n\n if (pagination && typeof pagination === 'object' && pagination !== false && !isControlled) {\n const currentPage = pagination.currentPage || 1;\n const pageSize = pagination.pageSize || 10;\n const start = (currentPage - 1) * pageSize;\n const end = start + pageSize;\n return dataSource.slice(start, end);\n }\n\n return dataSource;\n});\n\nconst displayData = computed(() => {\n // 如果有分组,需要将分组行和数据行合并\n if (props.groupBy && state.value.groups) {\n // 获取排序和筛选后的数据,如果为空或未初始化则使用原始数据源\n const sortedFilteredData =\n state.value.cachedFilteredSortedDataSource && state.value.cachedFilteredSortedDataSource.length > 0\n ? state.value.cachedFilteredSortedDataSource\n : props.dataSource || [];\n\n // 重新组织分组数据(基于排序和筛选后的数据)\n const result: any[] = [];\n const groupKeys = state.value.groupKeys || [];\n\n // 创建一个 Map 来快速查找 record 对应的 key\n const recordKeyMap = new Map<Data, string | number>();\n const allKeys = new Set<string | number>();\n sortedFilteredData.forEach((record) => {\n // 使用 record 本身来获取 key,不依赖索引\n const key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n if (key != null && key !== '') {\n recordKeyMap.set(record, key);\n allKeys.add(key);\n }\n });\n\n groupKeys.forEach((groupKey) => {\n const groupRecords = (state.value.groups as Map<string | number, Data[]>).get(groupKey);\n if (!Array.isArray(groupRecords) || groupRecords.length === 0) {\n return;\n }\n\n // 创建 groupRecords 的 key Set 用于快速查找\n const groupKeySet = new Set<string | number>();\n if (Array.isArray(groupRecords)) {\n groupRecords.forEach((record) => {\n const key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n if (key != null && key !== '') {\n groupKeySet.add(key);\n }\n });\n }\n\n // 获取该分组中在排序和筛选后数据中的记录\n // 如果 sortedFilteredData 为空,直接使用 groupRecords\n let groupData: Data[] = [];\n\n // 如果 groupKeySet 为空(说明无法从 groupRecords 中提取 key),直接使用 groupRecords\n if (groupKeySet.size === 0) {\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n } else if (sortedFilteredData.length > 0) {\n // 从 sortedFilteredData 中筛选出属于该分组的记录\n groupData = sortedFilteredData.filter((record) => {\n // 先尝试从 recordKeyMap 获取 key\n let key = recordKeyMap.get(record);\n if (key == null || key === '') {\n // 如果 recordKeyMap 中没有,直接计算 key\n key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n }\n return key != null && key !== '' && groupKeySet.has(key);\n });\n\n // 如果通过 key 匹配失败,直接使用 groupRecords\n if (groupData.length === 0 && groupRecords.length > 0) {\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n }\n } else {\n // 如果 sortedFilteredData 为空,直接使用 groupRecords\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n }\n\n // 只要分组在原始数据中存在,就添加分组行(即使排序筛选后没有数据)\n // 分组行应该总是显示,数据行根据展开状态和是否有匹配数据来决定\n result.push({ __semiTableGroupSection: true, groupKey });\n // 只有当分组展开且有匹配的数据时才添加数据行\n if (isGroupExpanded(groupKey) && groupData.length > 0) {\n result.push(...groupData);\n }\n });\n\n // 应用分页(如果有)\n const pagination = mergedPagination.value;\n const propPagination = props.pagination;\n const isControlled = propPagination && typeof propPagination === 'object' && propPagination.currentPage != null;\n\n if (pagination && typeof pagination === 'object' && pagination !== false && !isControlled) {\n // 分页时需要保持分组行的位置(简化处理:暂时不分页)\n return result;\n }\n\n return result;\n }\n\n if (!isTreeTable.value) {\n return pageData.value;\n }\n\n const ds = props.dataSource || [];\n const flat: any[] = [];\n const walk = (list: any[], level: number) => {\n list.forEach((item, idx) => {\n if (!item) {\n return;\n }\n // 为树形行注入 level(不改动原对象引用,避免影响用户数据)\n const row = { ...(item as any), __semiTableTreeLevel: level };\n flat.push(row);\n\n const key = getRecordKey(item, idx);\n const expanded = state.value.expandedRowKeys.includes(key);\n if (expanded && hasTreeChildren(item)) {\n walk((item as any)[childrenRecordName.value], level + 1);\n }\n });\n };\n walk(ds as any[], 0);\n return flat;\n});\n\nconst showPagination = computed(() => {\n return props.pagination !== false && mergedPagination.value !== false;\n});\n\nconst memoizedPagination = computed(() => {\n if (!mergedPagination.value || typeof mergedPagination.value !== 'object') {\n return null;\n }\n const result = foundation.memoizedPagination(mergedPagination.value);\n return result;\n});\n\nconst paginationProps = computed(() => {\n const pagination = memoizedPagination.value;\n if (!pagination) {\n return null;\n }\n // 从 mergedPagination 中获取原始 total,确保用户传入的 total 不会被覆盖\n const originalPagination = mergedPagination.value;\n let total: number;\n if (originalPagination && typeof originalPagination === 'object' && originalPagination.total !== undefined) {\n total = originalPagination.total;\n } else if (pagination.total !== undefined) {\n total = pagination.total;\n } else {\n total = (props.dataSource || []).length;\n }\n\n // 从原始 props.pagination 中获取回调函数\n const originalPaginationObj = props.pagination && typeof props.pagination === 'object' ? props.pagination : null;\n\n return {\n currentPage: pagination.currentPage || 1,\n pageSize: pagination.pageSize || 10,\n total,\n onPageChange: (page: number) => {\n adapter.setCurrentPage(page);\n if (originalPaginationObj && typeof originalPaginationObj.onPageChange === 'function') {\n originalPaginationObj.onPageChange(page, pagination.pageSize || 10);\n }\n },\n onPageSizeChange: (pageSize: number) => {\n adapter.setPagination({ ...pagination, pageSize, currentPage: 1 });\n if (originalPaginationObj && typeof originalPaginationObj.onPageSizeChange === 'function') {\n originalPaginationObj.onPageSizeChange(pageSize, 1);\n }\n },\n };\n});\n\nconst renderPagination = computed(() => {\n if (props.renderPagination) {\n return () => props.renderPagination(memoizedPagination.value as TablePaginationProps);\n }\n return null;\n});\n\nconst getPaginationInfo = (locale?: any) => {\n if (!memoizedPagination.value) {\n return '';\n }\n return foundation.formatPaginationInfo(memoizedPagination.value, locale?.pageText || '');\n};\n\nconst paginationPosition = computed(() => {\n const pagination = mergedPagination.value;\n if (pagination && typeof pagination === 'object') {\n return pagination.position || 'bottom';\n }\n return 'bottom';\n});\n\n// Methods\nconst getColumnStyle = (column: ColumnProps) => {\n const style: { width?: string; minWidth?: string } = {};\n if (column.width) {\n const width = typeof column.width === 'number' ? `${column.width}px` : column.width;\n style.width = width;\n style.minWidth = width;\n }\n return style;\n};\n\n// 获取列的插槽名称(用于作用域插槽)\nconst getColumnSlotName = (column: ColumnProps): string | null => {\n // 优先使用 key,其次使用 dataIndex\n if (column.key) {\n return String(column.key);\n }\n if (column.dataIndex) {\n return String(column.dataIndex);\n }\n return null;\n};\n\n// 获取列的值\nconst getColumnValue = (record: Data, column: ColumnProps): any => {\n if (column.dataIndex) {\n return get(record, column.dataIndex, '');\n }\n return record;\n};\n\nconst getRowClass = (record: Data, index: number) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n const key = getRecordKey(record, index);\n // 确保返回一个字符串,避免初始化时 className 不生效\n const baseClass = classnames(\n `${prefixCls.value}-row`,\n {\n [`${prefixCls.value}-row-selected`]: isRowSelected(record),\n [`${prefixCls.value}-row-expanded`]: isRowExpanded(record),\n [`${prefixCls.value}-row-disabled`]: isRowDisabled(record),\n [`${prefixCls.value}-row-hover`]: state.value.hoveredRowKey === key,\n },\n customRowProps.className\n );\n return baseClass || '';\n};\n\nconst getRowStyle = (record: Data, index: number): CSSProperties => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n // 确保返回一个响应式对象,避免初始化时样式不生效\n if (customRowProps && customRowProps.style) {\n return { ...customRowProps.style };\n }\n return {};\n};\n\nconst getRowProps = (record: Data, index: number) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n if (!customRowProps || typeof customRowProps !== 'object') {\n return {};\n }\n // class/style 已由 getRowClass/getRowStyle 处理;事件由各 handler 兜底触发,其他原生属性透传到 tr\n const {\n className: _className,\n style: _style,\n onClick: _onClick,\n onDoubleClick: _onDoubleClick,\n onMouseEnter: _onMouseEnter,\n onMouseLeave: _onMouseLeave,\n ...rest\n } = customRowProps as any;\n // 这些变量仅用于从对象中排除,不需要使用\n void _className;\n void _style;\n void _onClick;\n void _onDoubleClick;\n void _onMouseEnter;\n void _onMouseLeave;\n return rest;\n};\n\n// 获取分组行的属性\nconst getGroupedRowProps = (groupKey: string | number | undefined, index: number) => {\n if (!props.onGroupedRow) {\n return {};\n }\n // 构造分组 record 对象(与 React 版本一致)\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n // 直接使用 groupRecordsFromMap,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n const customProps = props.onGroupedRow(groupRecord, index);\n if (!customProps || typeof customProps !== 'object') {\n return {};\n }\n const { ...rest } = customProps as any;\n return rest;\n};\n\nconst handleGroupRowExpanded = (expanded: boolean, groupKey: string | number, e: MouseEvent) => {\n if (!props.clickGroupedRowToExpand) {\n return;\n }\n\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n\n if (!groupRecordsFromMap || groupRecordsFromMap.length === 0) {\n return;\n }\n\n const newExpanded = expanded;\n\n if (newExpanded) {\n // 展开:添加 groupKey 到 expandedRowKeys(分组行的展开状态)\n if (!state.value.expandedRowKeys.includes(groupKey)) {\n state.value.expandedRowKeys = [...state.value.expandedRowKeys, groupKey];\n }\n } else {\n // 收起:移除 groupKey\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => k !== groupKey);\n }\n\n // 触发 onExpand 和 onExpandedRowsChange 事件(如果需要)\n if (props.onExpand) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n props.onExpand(newExpanded, groupRecord, e);\n }\n\n if (props.onExpandedRowsChange) {\n const expandedRows = getExpandedRowsByKeys(state.value.expandedRowKeys);\n props.onExpandedRowsChange(expandedRows as any);\n }\n};\n\nconst handleGroupedRowClick = (groupKey: string | number | undefined, index: number, e: MouseEvent) => {\n if (props.clickGroupedRowToExpand) {\n // 如果启用了点击分组行展开,则切换该分组的展开状态\n const groupRecordsForExpand = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n if (Array.isArray(groupRecordsForExpand) && groupRecordsForExpand.length > 0) {\n const groupKeys = groupRecordsForExpand.map((record) => getRecordKey(record, 0));\n const allExpanded = groupKeys.every((key) => state.value.expandedRowKeys.includes(key));\n if (allExpanded) {\n // 全部展开则全部收起\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => !groupKeys.includes(k));\n } else {\n // 否则全部展开\n const newExpandedKeys = [...state.value.expandedRowKeys];\n groupKeys.forEach((key) => {\n if (!newExpandedKeys.includes(key)) {\n newExpandedKeys.push(key);\n }\n });\n state.value.expandedRowKeys = newExpandedKeys;\n }\n }\n }\n\n if (props.onGroupedRow) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n const customProps = props.onGroupedRow(groupRecord, index);\n if (customProps && typeof customProps === 'object' && customProps.onClick) {\n customProps.onClick(e);\n }\n }\n};\n\n// 渲染分组行内容\nconst renderGroupSection = (groupKey: string | number | undefined) => {\n if (!props.renderGroupSection) {\n return h('span', {}, String(groupKey || ''));\n }\n // 获取该分组的所有 row keys\n const groupRecords = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n // 从 groupRecords 中提取 rowKeys,确保 groupRecords 是数组\n const groupRowKeys =\n Array.isArray(groupRecords) && groupRecords.length > 0\n ? groupRecords.map((record) => getRecordKey(record, 0))\n : [];\n\n const result = props.renderGroupSection(groupKey, groupRowKeys);\n // 如果返回的是对象(包含 children),则返回 children,否则直接返回\n if (result && typeof result === 'object' && 'children' in result) {\n return result.children;\n }\n return result;\n};\n\n// 定义 isRowDisabled 函数(需要在 useTableSelection 之前定义)\nconst isRowDisabled = (record: Data): boolean => {\n const key = getRecordKey(record, 0);\n return state.value.disabledRowKeysSet.has(key);\n};\n\n// 使用 composable 处理选择逻辑\nconst { isRowSelected, getRowSelectionProps, titleSelectionProps, renderSelection } = useTableSelection({\n rowSelection: props.rowSelection,\n pageData,\n dataSource: computed(() => props.dataSource || []),\n state,\n adapter,\n getRecordKey,\n isRowDisabled,\n childrenRecordName: props.childrenRecordName,\n});\n\nconst isRowExpanded = (record: Data): boolean => {\n const key = getRecordKey(record, 0);\n return state.value.expandedRowKeys.includes(key);\n};\n\nconst isGroupExpanded = (groupKey: string | number | undefined): boolean => {\n if (groupKey == null) {\n return false;\n }\n // React 版本使用 isExpanded(expandedRowKeys, groupKey),直接检查 groupKey 是否在 expandedRowKeys 中\n return state.value.expandedRowKeys.includes(groupKey);\n};\n\n// 渲染分组行的展开图标\nconst renderGroupExpandIcon = (groupKey: string | number | undefined) => {\n if (props.expandIcon === false) {\n return null;\n }\n const expanded = isGroupExpanded(groupKey);\n // 如果有自定义的 renderExpandIcon,使用它(传递 groupKey 作为第三个参数)\n if (typeof props.renderExpandIcon === 'function') {\n const result = props.renderExpandIcon({ groupKey } as any, false, groupKey);\n if (result) {\n return result;\n }\n }\n return h(CustomExpandIcon, {\n expanded,\n componentType: 'expand',\n expandIcon: props.expandIcon,\n prefixCls: prefixCls.value,\n onClick: (nextExpand: boolean, e: MouseEvent) => handleGroupExpandClick(groupKey, e),\n });\n};\n\nconst handleGroupExpandClick = (groupKey: string | number | undefined, e: MouseEvent) => {\n if (groupKey == null) {\n return;\n }\n const expanded = isGroupExpanded(groupKey);\n const newExpanded = !expanded;\n\n // 更新 expandedRowKeys:直接使用 groupKey\n if (newExpanded) {\n // 展开:添加 groupKey\n if (!state.value.expandedRowKeys.includes(groupKey)) {\n state.value.expandedRowKeys = [...state.value.expandedRowKeys, groupKey];\n }\n } else {\n // 收起:移除 groupKey\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => k !== groupKey);\n }\n\n // 触发 onExpand 和 onExpandedRowsChange 事件\n if (props.onExpand) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n props.onExpand(newExpanded, groupRecord, e);\n }\n\n if (props.onExpandedRowsChange) {\n const expandedRows = getExpandedRowsByKeys(state.value.expandedRowKeys);\n props.onExpandedRowsChange(expandedRows as any);\n }\n\n adapter.notifyExpand(newExpanded, { groupKey } as any, e);\n adapter.notifyExpandedRowsChange(getExpandedRowsByKeys(state.value.expandedRowKeys) as any);\n};\n\nconst handleRowClick = (record: Data, index: number, e: MouseEvent) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n if (customRowProps.onClick) {\n customRowProps.onClick(e);\n }\n\n // 如果启用了 expandRowByClick,点击行时切换展开状态\n if (props.expandRowByClick && props.expandedRowRender) {\n const key = getRecordKey(record, index);\n toggleExpandRow(key, record, e);\n }\n};\n\nconst handleRowDoubleClick = (record: Data, e: MouseEvent) => {\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onDoubleClick) {\n customRowProps.onDoubleClick(e);\n }\n adapter.notifyRowDoubleClick?.(record, e);\n};\n\nconst handleRowMouseEnter = (record: Data, e: MouseEvent) => {\n const key = getRecordKey(record, 0);\n adapter.setHoveredRowKey(key);\n\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onMouseEnter) {\n customRowProps.onMouseEnter(e);\n }\n adapter.notifyRowMouseEnter?.(record, e);\n};\n\nconst handleRowMouseLeave = (record: Data, e: MouseEvent) => {\n adapter.setHoveredRowKey(null);\n\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onMouseLeave) {\n customRowProps.onMouseLeave(e);\n }\n adapter.notifyRowMouseLeave?.(record, e);\n};\n\nconst handleSorterClick = (column: ColumnProps, e: MouseEvent) => {\n if (!column.sorter) {\n return;\n }\n e.stopPropagation();\n if (sortingInTick) {\n return;\n }\n sortingInTick = true;\n queueMicrotask(releaseGuards);\n foundation.handleSort(column, e);\n};\n\nconst handleFilterSelect = (column: ColumnProps, data: any) => {\n const dataIndex = column.dataIndex || column.key;\n if (dataIndex) {\n foundation.handleFilterSelect(dataIndex as string, data);\n }\n};\n\nconst handleFilterDropdownVisibleChange = (column: ColumnProps, visible: boolean) => {\n if (column.onFilterDropdownVisibleChange) {\n column.onFilterDropdownVisibleChange(visible);\n }\n adapter.notifyFilterDropdownVisibleChange(visible, column.dataIndex || '');\n};\n\nconst getFixedLeftOffset = (column: ColumnProps, colIndex: number) => {\n if (!isFixedLeft(column)) {\n return false;\n }\n const widths = adapter.getCellWidths(flattenColumns.value) || [];\n return Math.round(arrayAdd(widths, 0, colIndex));\n};\n\nconst getFixedRightOffset = (column: ColumnProps, colIndex: number) => {\n if (!isFixedRight(column)) {\n return false;\n }\n const widths = adapter.getCellWidths(flattenColumns.value) || [];\n return Math.round(arrayAdd(widths, colIndex + 1));\n};\n\n// 滚动事件处理:同步表头和表体的横向滚动\n// 横向滚动同步不依赖 lastScrollLeft,避免首帧不同步\nlet scrollPositionRafId: number | null = null;\nlet scrollPositionTimeoutId: number | null = null;\n\nconst applyScrollPositionClassName = (position: BodyScrollPosition) => {\n const el = wrapRef.value;\n if (!el) {\n return;\n }\n const { value: p } = prefixCls;\n const positionAll = [\n `${p}-scroll-position-both`,\n `${p}-scroll-position-middle`,\n `${p}-scroll-position-left`,\n `${p}-scroll-position-right`,\n ];\n if (position === 'both') {\n const accept = [`${p}-scroll-position-left`, `${p}-scroll-position-right`];\n el.classList.remove(...positionAll.filter((c) => !accept.includes(c)));\n el.classList.add(...accept);\n return;\n }\n const accept = [`${p}-scroll-position-${position}`];\n el.classList.remove(...positionAll.filter((c) => !accept.includes(c)));\n el.classList.add(...accept);\n};\n\nconst setScrollPositionClassName = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const node =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (node && node.children && node.children.length) {\n const scrollToLeft = node.scrollLeft === 0;\n // why use Math.abs? @see https://bugzilla.mozilla.org/show_bug.cgi?id=1447743\n const tableEl = node.children[0] as HTMLElement;\n const scrollToRight =\n Math.abs(node.scrollLeft) + 1 >= tableEl.getBoundingClientRect().width - node.getBoundingClientRect().width;\n if (scrollToLeft && scrollToRight) {\n applyScrollPositionClassName('both');\n } else if (scrollToLeft) {\n applyScrollPositionClassName('left');\n } else if (scrollToRight) {\n applyScrollPositionClassName('right');\n } else {\n applyScrollPositionClassName('middle');\n }\n }\n};\n\nconst scheduleSetScrollPositionClassName = () => {\n if (scrollPositionRafId != null) {\n return;\n }\n scrollPositionRafId = window.requestAnimationFrame(() => {\n scrollPositionRafId = null;\n setScrollPositionClassName();\n });\n};\n\n// 在横向滚动过程中频繁读写布局容易导致 fixed sticky 首帧抖动\n// 这里改成滚动停止后再更新阴影边界 class(体验上阴影会延迟几十毫秒出现,但能换来稳定的 fixed)\nconst scheduleSetScrollPositionClassNameAfterScrollEnd = () => {\n if (scrollPositionTimeoutId != null) {\n window.clearTimeout(scrollPositionTimeoutId);\n }\n scrollPositionTimeoutId = window.setTimeout(() => {\n scrollPositionTimeoutId = null;\n scheduleSetScrollPositionClassName();\n }, 80);\n};\n\nconst handleHeaderScroll = (e: Event) => {\n const target = e.target as HTMLElement;\n if (target !== e.currentTarget) {\n return;\n }\n const nextLeft = target.scrollLeft;\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const body =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (body && body.scrollLeft !== nextLeft) {\n body.scrollLeft = nextLeft;\n }\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nconst handleBodyScroll = (e: Event) => {\n const target = e.target as HTMLElement;\n // 当使用虚拟滚动时,滚动事件来自 VirtualizedBody 的 containerRef\n // 此时不检查 target !== e.currentTarget\n if (!props.virtualized && target !== e.currentTarget) {\n return;\n }\n const nextLeft = target.scrollLeft;\n if (headerWrapRef.value && headerWrapRef.value.scrollLeft !== nextLeft) {\n headerWrapRef.value.scrollLeft = nextLeft;\n }\n // 不在滚动时触发布局测量,阴影边界交由 scroll-end 更新\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nlet lastScrollTop = 0;\nconst isIE11 = () => window.navigator.userAgent.match(/Trident\\/7\\./);\n\n// 获取表体滚动容器(虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef)\nconst getBodyScrollContainer = (): HTMLElement | null => {\n if (props.virtualized && virtualizedBodyRef.value?.containerRef) {\n return virtualizedBodyRef.value.containerRef;\n }\n return bodyWrapRef.value;\n};\n\n// 仅用于 IE11/需要 preventDefault 的场景(非 passive 监听)\nconst handleWheelNonPassive = (e: WheelEvent) => {\n const { scroll = {} } = props;\n const body = getBodyScrollContainer();\n // 关键:在 fixed header 模式下,优先接管横向滚动,确保 header/body 同步(避免首帧不同步造成\"抖动错觉\")\n // 说明:trackpad/鼠标滚轮的横向滚动会先触发 wheel,再触发 scroll;在这里同步能避免第一帧 header 还没跟上。\n if (useFixedHeader.value && (e.deltaX !== 0 || e.shiftKey) && body) {\n // shift+wheel 通常表示横向滚动,deltaY 作为横向增量\n const dx = e.deltaX !== 0 ? e.deltaX : e.deltaY;\n const maxLeft = Math.max(0, body.scrollWidth - body.clientWidth);\n const nextLeft = Math.min(maxLeft, Math.max(0, body.scrollLeft + dx));\n // 阻止浏览器先滚 body 再异步同步 header 产生的首帧错位\n e.preventDefault();\n body.scrollLeft = nextLeft;\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n return;\n }\n // 针对 IE11 的特殊处理\n if (isIE11() && scroll.y) {\n e.preventDefault();\n const wd = e.deltaY;\n const { target } = e;\n const bodyTable = body;\n\n let scrollTop = 0;\n\n if (lastScrollTop) {\n scrollTop = lastScrollTop + wd;\n } else {\n scrollTop = wd;\n }\n\n if (bodyTable && target !== bodyTable) {\n bodyTable.scrollTop = scrollTop;\n }\n lastScrollTop = scrollTop;\n }\n};\n\n// 默认 wheel 处理:用 passive 监听,避免 Chrome 的 non-passive 警告\n// 不在这里调用 preventDefault(否则会触发 “Unable to preventDefault inside passive event listener”)\nconst handleWheelPassive = (_e: WheelEvent) => {\n if (!useFixedHeader.value) {\n return;\n }\n // 仅用于快速同步阴影边界 className(无需阻塞滚动)\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nlet unregisterWheelListener: null | (() => void) = null;\n\nconst registerWheelListener = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const body =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (!body) {\n return;\n }\n const { scroll = {} } = props;\n // IE11 需要 preventDefault 的分支,保留非 passive\n const shouldNonPassive = Boolean(isIE11() && scroll.y);\n const handler = shouldNonPassive ? handleWheelNonPassive : handleWheelPassive;\n body.addEventListener('wheel', handler, { passive: !shouldNonPassive });\n unregisterWheelListener = () => {\n body.removeEventListener('wheel', handler as any);\n unregisterWheelListener = null;\n };\n};\n\nconst handleColumnResize = (column: ColumnProps, _e: { width: number }) => {\n // 更新 queries 中对应列的宽度\n const updatedQueries = state.value.queries.map((q) => {\n if ((q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)) {\n return { ...q, width: _e.width };\n }\n return q;\n });\n\n // 如果 queries 中没有对应的列,添加一个\n const existingQuery = updatedQueries.find(\n (q) => (q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)\n );\n if (!existingQuery) {\n const newQuery = {\n ...column,\n width: _e.width,\n };\n updatedQueries.push(newQuery);\n }\n\n // 更新查询状态\n adapter.setQueries(updatedQueries);\n\n // 触发 onChange 事件\n if (props.onChange) {\n const changeInfo = {\n filters: [],\n sorter: undefined,\n pagination: mergedPagination.value,\n extra: { changeType: 'resize' as const },\n };\n props.onChange(changeInfo as any);\n }\n};\n\nconst toggleExpandRow = (key: string | number, record: Data, e: MouseEvent) => {\n const expandedRowKeys = [...state.value.expandedRowKeys];\n const index = expandedRowKeys.indexOf(key);\n\n if (index > -1) {\n expandedRowKeys.splice(index, 1);\n } else {\n expandedRowKeys.push(key);\n }\n\n state.value.expandedRowKeys = expandedRowKeys;\n\n if (props.onExpand) {\n props.onExpand(!(index > -1), record, e);\n }\n\n if (props.onExpandedRowsChange) {\n props.onExpandedRowsChange(getExpandedRowsByKeys(expandedRowKeys) as any);\n }\n\n adapter.notifyExpand(!(index > -1), record, e);\n adapter.notifyExpandedRowsChange(getExpandedRowsByKeys(expandedRowKeys) as any);\n};\n\nconst getExpandIcon = (_record: Data) => {\n if (props.expandIcon) {\n return props.expandIcon;\n }\n return undefined;\n};\n\nconst isRowExpandable = (record: Data) => {\n const hasExpandedRowRender = typeof props.expandedRowRender === 'function';\n const hasRowExpandable = typeof props.rowExpandable === 'function';\n const hasChildren = hasTreeChildren(record as any);\n const strictExpandableResult = hasRowExpandable && props.rowExpandable!(record);\n const looseExpandableResult = !hasRowExpandable || strictExpandableResult;\n\n return (\n ((hasExpandedRowRender || hasChildren) && looseExpandableResult) ||\n (!(hasExpandedRowRender || hasChildren) && strictExpandableResult)\n );\n};\n\nconst renderExpandIcon = (record: Data, isNested = false) => {\n if (props.renderExpandIcon) {\n return props.renderExpandIcon(record, isNested);\n }\n\n if (!isRowExpandable(record)) {\n return () => null;\n }\n\n const key = getRecordKey(record, 0);\n const expanded = isRowExpanded(record);\n\n return () => {\n return h(CustomExpandIcon, {\n expanded,\n componentType: props.hideExpandedColumn || isNested ? 'tree' : 'expand',\n expandIcon: getExpandIcon(record),\n prefixCls: prefixCls.value,\n onClick: (nextExpand: boolean, e: MouseEvent) => toggleExpandRow(key, record, e),\n });\n };\n};\n\nconst handleItemsRendered = (_props: {\n overscanStartIndex: number;\n overscanStopIndex: number;\n visibleStartIndex: number;\n visibleStopIndex: number;\n}) => {\n // 虚拟滚动可见项变化时的处理\n // 可以用于优化渲染性能\n};\n\n// 选择相关逻辑已从 useTableSelection composable 中获取\n\nconst renderTitle = computed(() => {\n if (typeof props.title === 'function') {\n return () => props.title(pageData.value);\n }\n return () => props.title;\n});\n\nconst renderFooter = computed(() => {\n if (!props.footer) {\n return null;\n }\n let footer = props.footer;\n if (typeof footer === 'function') {\n footer = footer(pageData.value);\n }\n // 检查是否是有效的 VNode 或字符串\n if (typeof footer === 'string' || isVNode(footer)) {\n return () => h('div', { class: `${prefixCls.value}-footer`, 'x-semi-prop': 'footer' }, footer);\n }\n return null;\n});\n\n// Watch\n// 使用浅层监听 dataSource,只在数组引用变化时触发,减少不必要的重新计算\nwatch(\n () => props.dataSource,\n () => {\n if (foundation) {\n foundation.init();\n }\n },\n { immediate: false }\n);\n\nwatch(\n () => props.columns,\n () => {\n // 初始化 queries 从 columns\n const queries = TableFoundation.initColumnsFilteredValueAndSorterOrder([...flattenColumns.value]);\n adapter.setQueries(queries);\n if (foundation) {\n foundation.init();\n }\n },\n { immediate: true }\n // 注意:移除 deep: true,因为 columns 数组引用变化时已经足够触发更新\n // 如果用户需要修改单个 column 对象,应该替换整个 columns 数组\n);\n\n// ResizeObserver 用于检测滚动条\nlet resizeObserver: ResizeObserver | null = null;\n\nconst observeBodyResize = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const bodyWrapDOM =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n\n if (!bodyWrapDOM) {\n return;\n }\n\n const syncScrollbarState = () => {\n if (!bodyWrapDOM) {\n return;\n }\n const { offsetWidth, clientWidth } = bodyWrapDOM;\n const bodyHasScrollBar = clientWidth < offsetWidth;\n adapter.setBodyHasScrollbar(bodyHasScrollBar);\n setScrollPositionClassName();\n };\n\n // 检测滚动条的回调\n const resizeCallback = () => {\n const update = () => syncScrollbarState();\n const requestAnimationFrame = window.requestAnimationFrame || window.setTimeout;\n requestAnimationFrame(update);\n };\n\n // 使用 ResizeObserver 监听 body 容器大小变化\n if (window.ResizeObserver) {\n if (resizeObserver) {\n resizeObserver.unobserve(bodyWrapDOM);\n resizeObserver = null;\n }\n resizeObserver = new ResizeObserver(resizeCallback);\n resizeObserver.observe(bodyWrapDOM);\n }\n\n // 关键:立刻同步一次,避免首次横向滚动时才触发布局更新导致 fixed 抖动\n syncScrollbarState();\n};\n\n// 当 virtualizedBodyRef 挂载后,调用 getVirtualizedListRef\nwatch(\n () => virtualizedBodyRef.value,\n (newVal) => {\n if (newVal && props.getVirtualizedListRef && props.virtualized) {\n // 传递一个类似 react-window List 的对象,包含 scrollToItem 等方法\n props.getVirtualizedListRef(newVal);\n }\n },\n { immediate: true }\n);\n\n// 初始化 queries\nonMounted(() => {\n const queries = TableFoundation.initColumnsFilteredValueAndSorterOrder([...flattenColumns.value]);\n adapter.setQueries(queries);\n if (foundation) {\n foundation.init();\n // 如果设置了 defaultExpandAllRows,需要在 init 之后再次调用 initExpandedRowKeys\n // 因为 init 时可能使用的是旧的 dataSource,需要确保使用最新的 dataSource\n if (\n props.defaultExpandAllRows ||\n props.expandAllRows ||\n props.defaultExpandAllGroupRows ||\n props.expandAllGroupRows\n ) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n }\n\n nextTick(() => {\n setScrollPositionClassName();\n // 使用 passive wheel 监听,避免浏览器 non-passive 警告\n registerWheelListener();\n // 当有 scroll.y 时,监听 body 容器大小变化以检测滚动条\n if (props.scroll?.y) {\n observeBodyResize();\n }\n // 确保 virtualizedBodyRef 已挂载后调用 getVirtualizedListRef\n if (virtualizedBodyRef.value && props.getVirtualizedListRef && props.virtualized) {\n props.getVirtualizedListRef(virtualizedBodyRef.value);\n }\n });\n});\n\nwatch(\n () => props.scroll?.y,\n (y, prevY) => {\n if (y && y !== prevY) {\n nextTick(() => {\n observeBodyResize();\n });\n }\n }\n);\n\nconst handleWindowResize = () => {\n setScrollPositionClassName();\n};\n\nonMounted(() => {\n window.addEventListener('resize', handleWindowResize);\n});\n\nonUnmounted(() => {\n window.removeEventListener('resize', handleWindowResize);\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const bodyWrapDOM =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (resizeObserver && bodyWrapDOM) {\n resizeObserver.unobserve(bodyWrapDOM);\n resizeObserver = null;\n }\n unregisterWheelListener?.();\n});\n\n// 暴露方法供外部调用\nconst getCurrentPageData = () => {\n const retObj: { dataSource?: Data[]; groups?: Map<string | number, Data[]> | null } = {};\n if (pageData.value) {\n retObj.dataSource = pageData.value;\n }\n if (state.value.groups) {\n retObj.groups = state.value.groups;\n }\n return cloneDeep(retObj);\n};\n\n/**\n * 重置表格垂直滚动位置到顶部\n */\nconst resetScrollY = () => {\n adapter.resetScrollY();\n};\n\n/**\n * 根据 rowKeys 获取对应的 record 对象数组\n * 支持树形数据:如果当前层级找不到所有记录,递归查找子节点\n * @param rowKeys - 行的 key 数组,如果不传则使用当前选中的 rowKeys\n * @returns 对应的 record 对象数组\n */\nconst getSelectedRows = (rowKeys?: (string | number)[]): Data[] => {\n const keysToFind = rowKeys || state.value.rowSelection?.selectedRowKeys || [];\n if (!keysToFind || keysToFind.length === 0) {\n return [];\n }\n const keySet = new Set(keysToFind);\n let dataSourceForRows: Data[];\n // 优先使用已排序筛选的数据源\n dataSourceForRows = adapter.getCachedFilteredSortedDataSource() || [];\n if (!dataSourceForRows || dataSourceForRows.length === 0) {\n dataSourceForRows = pageData.value || [];\n }\n if (!dataSourceForRows || dataSourceForRows.length === 0) {\n dataSourceForRows = props.dataSource || [];\n }\n\n const selectedRows: Data[] = [];\n\n /**\n * 递归查找匹配的 record\n * 如果当前层级未找到所有记录,继续在子节点中查找(支持树形数据)\n */\n const findRows = (data: Data[]): void => {\n if (!Array.isArray(data) || data.length === 0) {\n return;\n }\n for (const record of data) {\n const key = getRecordKey(record, 0);\n if (keySet.has(key)) {\n selectedRows.push(record);\n }\n }\n\n // 如果还有未找到的记录,递归查找子节点\n if (selectedRows.length < keysToFind.length) {\n const childrenRecordName = props.childrenRecordName || 'children';\n for (const record of data) {\n const children = get(record, childrenRecordName);\n if (Array.isArray(children) && children.length > 0) {\n findRows(children);\n }\n }\n }\n };\n\n findRows(dataSourceForRows);\n return cloneDeep(selectedRows);\n};\n\n/**\n * 获取所有行的 keys\n * @returns 所有行的 key 数组\n */\nconst getAllRowKeys = (): (string | number)[] => {\n // 优先使用缓存的已排序筛选的 rowKeys\n const cachedRowKeys = adapter.getCachedFilteredSortedRowKeys();\n if (cachedRowKeys && cachedRowKeys.length > 0) {\n return [...cachedRowKeys];\n }\n // 否则使用 state 中的 allRowKeys\n if (state.value.allRowKeys && state.value.allRowKeys.length > 0) {\n return [...state.value.allRowKeys];\n }\n // 如果都没有,则从当前数据源计算\n const dataSource = props.dataSource || [];\n const keys: (string | number)[] = [];\n const collectKeys = (data: Data[]) => {\n for (const record of data) {\n const key = getRecordKey(record, 0);\n keys.push(key);\n const childrenRecordName = props.childrenRecordName || 'children';\n const children = get(record, childrenRecordName);\n if (Array.isArray(children) && children.length > 0) {\n collectKeys(children);\n }\n }\n };\n collectKeys(dataSource);\n return keys;\n};\n\ndefineExpose({\n getCurrentPageData,\n resetScrollY,\n getSelectedRows,\n getAllRowKeys,\n});\n</script>\n"],"names":["props","__props","firstDataColumnIndex","computed","idx","cols","flattenColumns","key","_a","isInnerColumnKey","childrenRecordName","isTreeTable","ds","record","hasTreeChildren","getTreeLevel","getRowIndent","colIndex","shouldProvideExpandIcon","emit","__emit","prefixCls","cssClasses","slots","useSlots","bodyRef","ref","bodyWrapRef","headerWrapRef","virtualizedBodyRef","wrapRef","state","applyingQueriesInTick","sortingInTick","releaseGuards","baseAdapter","getDataAttr","useBaseComponent","getExpandedRowsByKeys","expandedRowKeys","keySet","index","getRecordKey","adapter","selectedRowKeys","disabledRowKeys","currentPage","pagination","groups","convertedGroups","dataSource","value","setArray","firstItem","records","itemKey","r","get","validRecords","item","query","queries","existingIndex","q","isEqual","flattenData","allRowKeys","hoveredRowKey","filteredSortedDataSource","filteredSortedRowKeys","allDisabledRowKeys","_visible","_dataIndex","changeInfo","expanded","mouseEvent","expandedRows","_record","_e","selected","selectedRows","e","rowSelection","changeRows","onSelectInvert","col","scroll","sticky","widths","columns","hw","flattenedWidths","flattenDeep","match","find","foundation","bodyHasScrollBar","isFixed","flattenedCols","column","useFixedHeader","useFoundation","TableFoundation","wrapperCls","classnames","wrapperStyle","style","wrapCls","y","tableWrapperCls","tableWrapperStyle","computedTableLayout","anyColumnFixed","tableCls","headerCls","hasSticky","showHeader","headerTableStyle","x","bodyTableStyle","getHeaderStyle","_b","stickyTop","getBodyStyle","hasData","normalizeSelectionColumn","rowSelectionObj","strings","numbers","normalizeExpandColumn","cloneColumns","children","rest","next","rawFlattenColumns","flattened","flattenColumnsUtil","columnsWithSelectionAndExpand","selectionColumn","destIndex","expandColumn","selectionIndex","insertIndex","assignColumnKeys","mergedColumnsWithQueries","queryColumn","queryFilteredValue","restQueryColumn","merged","hasSorter","hasFilter","useFullRender","clickColumnToSorter","processedColumn","rawTitle","titleMap","renderSelection","tableResizable","virtualizedOnScroll","tableContext","dataIndex","sortOrder","provideTableContext","selectedRowKeysSet","mergedPagination","watch","groupBy","groupByFn","groupKeys","_index","groupKey","newExpandedRowKeys","nextTick","groupedData","grouped","groupData","rawDataForFilterSort","filterColumns","filteredValue","columnFilters","oldColumnFilters","hasChange","i","columnFilter","columnFilteredValue","onFilter","curQuery","nextDataSource","sortedData","pageData","propPagination","isControlled","pageSize","start","end","displayData","sortedFilteredData","result","recordKeyMap","allKeys","groupRecords","groupKeySet","isGroupExpanded","flat","walk","list","level","row","showPagination","memoizedPagination","paginationProps","originalPagination","total","originalPaginationObj","page","renderPagination","getPaginationInfo","locale","paginationPosition","getColumnStyle","width","getColumnSlotName","getColumnValue","getRowClass","customRowProps","isRowSelected","isRowExpanded","isRowDisabled","getRowStyle","getRowProps","_className","_style","_onClick","_onDoubleClick","_onMouseEnter","_onMouseLeave","getGroupedRowProps","groupRecordsFromMap","groupRecord","customProps","handleGroupRowExpanded","newExpanded","k","handleGroupedRowClick","groupRecordsForExpand","newExpandedKeys","renderGroupSection","h","groupRowKeys","getRowSelectionProps","titleSelectionProps","useTableSelection","renderGroupExpandIcon","CustomExpandIcon","nextExpand","handleGroupExpandClick","handleRowClick","toggleExpandRow","handleRowDoubleClick","handleRowMouseEnter","handleRowMouseLeave","handleSorterClick","handleFilterSelect","data","handleFilterDropdownVisibleChange","visible","getFixedLeftOffset","isFixedLeft","arrayAdd","getFixedRightOffset","isFixedRight","scrollPositionRafId","scrollPositionTimeoutId","applyScrollPositionClassName","position","el","p","positionAll","accept","c","setScrollPositionClassName","node","scrollToLeft","tableEl","scrollToRight","scheduleSetScrollPositionClassName","scheduleSetScrollPositionClassNameAfterScrollEnd","handleHeaderScroll","target","nextLeft","body","handleBodyScroll","lastScrollTop","isIE11","getBodyScrollContainer","handleWheelNonPassive","dx","maxLeft","wd","bodyTable","scrollTop","handleWheelPassive","unregisterWheelListener","registerWheelListener","shouldNonPassive","handler","handleColumnResize","updatedQueries","newQuery","getExpandIcon","isRowExpandable","hasExpandedRowRender","hasRowExpandable","hasChildren","strictExpandableResult","renderExpandIcon","isNested","handleItemsRendered","_props","renderTitle","renderFooter","footer","isVNode","resizeObserver","observeBodyResize","bodyWrapDOM","syncScrollbarState","offsetWidth","clientWidth","resizeCallback","update","newVal","onMounted","prevY","handleWindowResize","onUnmounted","__expose","retObj","cloneDeep","rowKeys","keysToFind","dataSourceForRows","findRows","cachedRowKeys","keys","collectKeys","_openBlock","_createElementBlock","_mergeProps","_unref","_createVNode","Spin","_createElementVNode","_Fragment","_createBlock","_resolveDynamicComponent","LocaleConsumer","_withCtx","_toDisplayString","_renderList","_normalizeStyle","TableHeader","VirtualizedBody","Empty","rowIndex","$event","TableCell","isSelectionColumn","isLastLeftFixed","isFirstFixedRight","slotProps","_renderSlot","_ctx","_normalizeClass","_hoisted_6"],"mappings":"moFA6SA,MAAMA,EAAQC,GA4BRC,GAAuBC,EAAAA,SAAS,IAAM,OACxC,IAAIC,EAAM,EACV,MAAMC,EAAOC,EAAe,OAAS,CAAA,EACrC,KAAOF,EAAMC,EAAK,QAAQ,CACtB,MAAME,GAAOC,EAAAH,EAAKD,CAAG,IAAR,YAAAI,EAAmB,IAChC,GAAID,GAAO,MAAQE,EAAAA,iBAAiBF,CAAG,EAAG,CACtCH,GAAO,EACP,QACJ,CACA,KACJ,CACA,OAAOA,CACX,CAAC,EAEKM,GAAqBP,EAAAA,SAAS,IAAMH,EAAM,oBAAsB,UAAU,EAE1EW,GAAcR,EAAAA,SAAS,IAAM,CAC/B,MAAMS,EAAKZ,EAAM,YAAc,CAAA,EAC/B,GAAI,CAAC,MAAM,QAAQY,CAAE,GAAKA,EAAG,SAAW,EACpC,MAAO,GAEX,MAAML,EAAMG,GAAmB,MAC/B,OAAOE,EAAG,KAAMC,GAAgB,MAAM,QAAQA,GAAA,YAAAA,EAASN,EAAI,GAAKM,EAAON,CAAG,EAAE,OAAS,CAAC,CAC1F,CAAC,EAEKO,GAAmBD,GAAgB,CACrC,MAAMN,EAAMG,GAAmB,MAC/B,OAAO,MAAM,QAAQG,GAAA,YAAAA,EAASN,EAAI,GAAKM,EAAON,CAAG,EAAE,OAAS,CAChE,EAEMQ,GAAgBF,IACVA,GAAA,YAAAA,EAAgB,uBAAwB,EAG9CG,GAAe,CAACH,EAAaI,IAC3B,CAACN,GAAY,OAGbM,IAAaf,GAAqB,MAC3B,EAEJa,GAAaF,CAAM,EAGxBK,GAA0Bf,EAAAA,SAAS,IAC9B,EAAQH,EAAM,mBAAsBW,GAAY,KAC1D,EAEKQ,GAAOC,GAMPC,EAAYlB,EAAAA,SAAS,IAAMH,EAAM,WAAasB,EAAAA,WAAW,MAAM,EAG/DC,GAAQC,EAAAA,SAAA,EAGRC,GAAUC,EAAAA,IAAoC,IAAI,EAClDC,EAAcD,EAAAA,IAA2B,IAAI,EAC7CE,EAAgBF,EAAAA,IAA2B,IAAI,EAC/CG,EAAqBH,EAAAA,IAAiD,IAAI,EAC1EI,GAAUJ,EAAAA,IAA2B,IAAI,EAKzCK,EAAQL,EAAAA,IAAI,CACd,cAAe,CAAA,EACf,eAAgB,KAChB,eAAgB,CAAA,EAChB,QAAS,CAAA,EACT,WAAY,CAAA,EACZ,YAAa,CAAA,EACb,gBAAiB,CAAA,EACjB,aAAc,KACd,WAAY,KACZ,OAAQ,KACR,UAAW,CAAA,EACX,WAAY,CAAA,EACZ,mBAAoB,CAAA,EACpB,gBAAiB,CAAA,EACjB,uBAAwB,IACxB,gBAAiB,CAAA,EACjB,uBAAwB,IACxB,cAAe,KACf,+BAAgC,CAAA,EAChC,4BAA6B,CAAA,EAC7B,mCAAoC,IACpC,WAAY,CAAA,EACZ,iBAAkB,GAClB,WAAY,CAAA,CACf,EAGD,IAAIM,GAAwB,GACxBC,EAAgB,GACpB,MAAMC,GAAgB,IAAM,CACxBF,GAAwB,GACxBC,EAAgB,EACpB,EAEM,CAAE,QAASE,GAAa,YAAAC,IAAgBC,GAAAA,iBAAiBrC,EAAO+B,CAAK,EAE3E,SAASO,EAAsBC,EAAsC,CACjE,MAAMC,EAAS,IAAI,IAAID,CAAe,EAEtC,OADmBvC,EAAM,YAAc,CAAA,GACrB,OAAO,CAACa,EAAQ4B,IAAUD,EAAO,IAAIE,EAAa7B,EAAQ4B,CAAK,CAAC,CAAC,CACvF,CAaA,MAAME,EAAU,CACZ,GAAGR,GACH,aAAc,IAAM,CACZV,GAAQ,QACRA,GAAQ,MAAM,UAAY,EAElC,EACA,mBAAqBmB,GAAoB,CACrCb,EAAM,MAAM,aAAe,CACvB,GAAGA,EAAM,MAAM,aACf,gBAAiB,CAAC,GAAGa,CAAe,EACpC,mBAAoB,IAAI,IAAIA,CAAe,CAAA,CAEnD,EACA,mBAAqBC,GAAoB,CACrCd,EAAM,MAAM,gBAAkBc,EAC9Bd,EAAM,MAAM,mBAAqB,IAAI,IAAIc,CAAe,CAC5D,EACA,eAAiBC,GAAgB,CAC7B,KAAM,CAAE,WAAAC,GAAehB,EAAM,MACzB,OAAOgB,GAAe,SACtBhB,EAAM,MAAM,WAAa,CAAE,GAAGgB,EAAY,YAAAD,CAAA,EAE1Cf,EAAM,MAAM,WAAa,CAAE,YAAAe,CAAA,CAEnC,EACA,cAAgBC,GAAe,CAC3BhB,EAAM,MAAM,WAAagB,CAC7B,EACA,UAAYC,GAAW,CAEnB,GAAIA,GAAUA,aAAkB,IAAK,CACjC,MAAMC,MAAsB,IACtBC,EAAalD,EAAM,YAAc,CAAA,EAEvCgD,EAAO,QAAQ,CAACG,EAAO5C,IAAQ,CAC3B,GAAI4C,aAAiB,IAAK,CAEtB,MAAMC,EAAW,MAAM,KAAKD,CAAK,EAGjC,GAAIC,EAAS,OAAS,EAAG,CACrB,MAAMC,EAAYD,EAAS,CAAC,EAE5B,GAAI,OAAOC,GAAc,UAAY,OAAOA,GAAc,SAAU,CAChE,MAAMC,EAAkB,CAAA,EACxBF,EAAS,QAASG,GAAY,CAC1B,MAAM1C,EAASqC,EAAW,KAAMM,IACfxD,EAAM,OACb,OAAOA,EAAM,QAAW,WACpBA,EAAM,OAAOwD,CAAC,EACdC,MAAID,EAAGxD,EAAM,OAAQ,EAAE,EAC3ByD,MAAID,EAAG,MAAO,EAAE,KACND,CACnB,EACG1C,GACAyC,EAAQ,KAAKzC,CAAM,CAE3B,CAAC,EACDoC,EAAgB,IAAI1C,EAAK+C,CAAO,CACpC,MAEIL,EAAgB,IAAI1C,EAAK6C,CAAkB,CAEnD,MACIH,EAAgB,IAAI1C,EAAK,EAAE,CAEnC,SAAW,MAAM,QAAQ4C,CAAK,EAAG,CAE7B,MAAMO,EAAeP,EAAM,OACtBQ,GAASA,GAAQ,OAAOA,GAAS,UAAY,CAAC,MAAM,QAAQA,CAAI,CAAA,EAErEV,EAAgB,IAAI1C,EAAKmD,CAAY,CACzC,CACJ,CAAC,EACD3B,EAAM,MAAM,OAASkB,CACzB,MACIlB,EAAM,MAAM,OAASiB,CAE7B,EACA,cAAgBE,GAAe,CAC3BnB,EAAM,MAAM,WAAamB,CAC7B,EACA,mBAAqBX,GAAoB,CACrCR,EAAM,MAAM,gBAAkB,CAAC,GAAGQ,CAAe,CACrD,EACA,SAAU,CAACqB,EAAQ,KAAO,CAEtB,MAAMC,EAAU,CAAC,GAAG9B,EAAM,MAAM,OAAO,EACjC+B,EAAgBD,EAAQ,UAAWE,GAAMA,EAAE,MAAQH,EAAM,KAAOG,EAAE,YAAcH,EAAM,SAAS,EACjGE,EAAgB,GAChBD,EAAQC,CAAa,EAAI,CAAE,GAAGD,EAAQC,CAAa,EAAG,GAAGF,CAAA,EAEzDC,EAAQ,KAAKD,CAAK,EAEtB7B,EAAM,MAAM,QAAU8B,CAC1B,EACA,WAAaA,GAAY,CAGjBA,IAAY9B,EAAM,MAAM,SAAWiC,UAAQH,EAAS9B,EAAM,MAAM,OAAO,GAIvEC,KAGJA,GAAwB,GACxB,eAAeE,EAAa,EAC5BH,EAAM,MAAM,QAAU8B,EAC1B,EACA,eAAiBI,GAAgB,CAC7BlC,EAAM,MAAM,YAAckC,CAC9B,EACA,cAAgBC,GAAe,CAC3BnC,EAAM,MAAM,WAAamC,CAC7B,EACA,iBAAmBC,GAAkB,CAE7BlC,IAGJF,EAAM,MAAM,cAAgBoC,EAChC,EACA,kCAAoCC,GAA6B,CAC7DrC,EAAM,MAAM,+BAAiCqC,CACjD,EACA,+BAAiCC,GAA0B,CACvDtC,EAAM,MAAM,4BAA8BsC,EAC1CtC,EAAM,MAAM,+BAAiC,IAAI,IAAIsC,CAAqB,CAC9E,EACA,sBAAwBC,GAAuB,CAC3CvC,EAAM,MAAM,mBAAqBuC,CACrC,EACA,eAAgB,IAAMb,EAAAA,IAAI1B,EAAM,MAAO,yBAA0B,CAAC,EAClE,mBAAoB,IAAM0B,EAAAA,IAAI1B,EAAM,MAAO,sBAAuB,EAAE,EACpE,kCAAmC,IAAMA,EAAM,MAAM,+BACrD,+BAAgC,IAAMA,EAAM,MAAM,4BAClD,kCAAmC,IAAMA,EAAM,MAAM,+BACrD,sBAAuB,IAAMA,EAAM,MAAM,mBACzC,yBAA0B,IAAM,IAAI,IAAIA,EAAM,MAAM,kBAAkB,EACtE,kCAAmC,CAACwC,EAAUC,IAAe,CAI7D,EACA,aAAeC,GAAe,CAC1BtD,GAAK,SAAUsD,CAAU,CAC7B,EACA,aAAc,CAACC,EAAU7D,EAAQ8D,IAAe,CAC5CxD,GAAK,SAAUuD,EAAU7D,EAAQ8D,CAAU,CAC/C,EACA,yBAA2BC,GAAiB,CACxCzD,GAAK,qBAAsByD,CAAY,CAC3C,EACA,qBAAsB,CAACC,EAAeC,IAAmB,CAEzD,EACA,oBAAqB,CAACD,EAAeC,IAAmB,CAExD,EACA,oBAAqB,CAACD,EAAeC,IAAmB,CAExD,EACA,aAAc,CAACjE,EAAckE,EAAmBC,EAAsBC,IAAkB,CACpF,MAAMC,EAAe,OAAOlF,EAAM,cAAiB,SAAWA,EAAM,aAAe,CAAA,EAC/EkF,EAAa,UACbA,EAAa,SAASrE,EAAQkE,EAAUC,EAAcC,CAAC,CAE/D,EACA,gBAAiB,CAACF,EAAmBC,EAAsBG,IAAuB,CAC9E,MAAMD,EAAe,OAAOlF,EAAM,cAAiB,SAAWA,EAAM,aAAe,CAAA,EAC/EkF,EAAa,aACbA,EAAa,YAAYH,EAAUC,EAAcG,CAAU,CAEnE,EACA,mBAAqBH,GAAyB,CAC1C,MAAME,EAAe,OAAOlF,EAAM,cAAiB,SAAWA,EAAM,aAAe,CAAA,EAC7EoF,EAAkBF,GAAA,YAAAA,EAAsB,eAC1C,OAAOE,GAAmB,YAC1BA,EAAeJ,CAAY,CAEnC,EACA,sBAAuB,CAACpC,EAAsCoC,IAAyB,CACnF,MAAME,EAAe,OAAOlF,EAAM,cAAiB,SAAWA,EAAM,aAAe,CAAA,EAC/EkF,EAAa,UACbA,EAAa,SAAStC,EAAiBoC,CAAY,CAE3D,EACA,iBAAkB,IACE1E,EAAe,MAChB,KAAM+E,GAAQA,EAAI,QAAU,IAAQA,EAAI,QAAU,QAAUA,EAAI,QAAU,OAAO,EAEpG,eAAgB,IAAM,CAClB,KAAM,CAAE,OAAAC,EAAQ,OAAAC,CAAA,EAAWvF,EAC3B,MAAO,GAAQyD,EAAAA,IAAI6B,EAAQ,GAAG,GAAKC,EACvC,EACA,cAAe,CAACC,EAA4C/C,IAAmB,CACvE,OAAOA,GAAU,UAEZ,MAAM,QAAQV,EAAM,MAAM,UAAU,IACrCA,EAAM,MAAM,WAAa,CAAA,GAE7BA,EAAM,MAAM,WAAWU,CAAK,EAAI+C,GAEhCzD,EAAM,MAAM,WAAayD,CAEjC,EACA,cAAgB/C,GACR,OAAOA,GAAU,SACVV,EAAM,MAAM,WAAWU,CAAK,GAAK,CAAA,EAErCV,EAAM,MAAM,WAEvB,cAAgB0D,GAA4B,CACxC,MAAMpF,EAAOoF,GAAWnF,EAAe,MACvC,GAAI,CAAC,MAAM,QAAQD,CAAI,GAAK,CAACA,EAAK,OAC9B,MAAO,CAAA,EAGX,MAAMqF,EAAK3D,EAAM,MAAM,WACjB4D,EACE,MAAM,QAAQD,CAAE,GAAKA,EAAG,OACpB,MAAM,QAAQA,EAAG,CAAC,CAAC,EACZE,EAAAA,YAAYF,CAAE,EAElBA,EAEJ,CAAA,EAyBX,OAtBerF,EAAK,IAAKgF,GAAQ,CAC7B,GAAI,OAAOA,EAAI,OAAU,SACrB,OAAOA,EAAI,MAGf,GAAIA,EAAI,KAAO,MAAQ,MAAM,QAAQM,CAAe,GAAKA,EAAgB,OAAQ,CAC7E,MAAME,EAAQC,EAAAA,KAAKH,EAAkBhC,GAASA,GAAQA,EAAK,KAAO,MAAQA,EAAK,MAAQ0B,EAAI,GAAG,EAC9F,GAAIQ,EACA,OAAOA,EAAM,KAErB,CAEA,GAAIR,EAAI,WAAa,MAAQ,MAAM,QAAQM,CAAe,GAAKA,EAAgB,OAAQ,CACnF,MAAME,EAAQC,EAAAA,KAAKH,EAAkBhC,GAASA,GAAQA,EAAK,KAAO,MAAQA,EAAK,MAAQ0B,EAAI,SAAS,EACpG,GAAIQ,EACA,OAAOA,EAAM,KAErB,CAEA,MAAO,EACX,CAAC,CAGL,EACA,oBAAqB,IAAM,GAC3B,yBAA0B,IAAM,GAChC,oBAAqB,IAAM,IAAM,CAAA,EACjC,iBAAkB,IAAM,IAAM,CAAA,EAC9B,mBAAoB,IAAO9C,IAEhB,CAAE,SAAUgD,EAAW,QAAS,GAAGhD,CAAA,GAE9C,oBAAsBiD,GAAqB,CACvCjE,EAAM,MAAM,iBAAmBiE,CACnC,EACA,eAAgB,IAAM,CAElB,GAAIhG,EAAM,YACN,OAAOA,EAAM,YAGjB,IAAIiG,EAAU,GACd,MAAMC,EAAgB5F,EAAe,MACrC,OAAI,MAAM,QAAQ4F,CAAa,IAC3BD,EAAUC,EAAc,KAAMC,GAAW,EAAQA,EAAO,UAAa,EAAQA,EAAO,KAAM,GAE1FC,EAAe,QACfH,EAAU,IAEPA,EAAU,QAAU,MAC/B,CAAA,EAGE,CAAE,WAAAF,CAAA,EAAeM,iBAAcC,GAAiB3D,CAAO,EAGvD4D,GAAapG,EAAAA,SAAS,IACxBqG,EACIxG,EAAM,UACN,GAAGqB,EAAU,KAAK,WAClB,GAAGA,EAAU,KAAK,YAAYrB,EAAM,WAAa,WAAW,EAAA,CAChE,EAGEyG,GAAetG,EAAAA,SAAwB,IAAM,OAC/C,MAAMuG,EAAuB,CAAA,EAI7B,OAAIlG,EAAAR,EAAM,SAAN,MAAAQ,EAAc,IAEdkG,EAAM,SAAW,OACjBA,EAAM,MAAQ,QAEX,CAAE,GAAG1G,EAAM,MAAO,GAAG0G,CAAA,CAChC,CAAC,EAEKN,EAAiBjG,EAAAA,SAAS,IAAM,OAClC,MAAO,IAAQK,EAAAR,EAAM,SAAN,MAAAQ,EAAc,GAAKR,EAAM,OAC5C,CAAC,EAEK2G,GAAUxG,EAAAA,SAAS,IAAM,OAC3B,MAAMyG,GAAIpG,EAAAR,EAAM,SAAN,YAAAQ,EAAc,EACxB,OAAOgG,EAAW,CACd,CAAC,GAAGnF,EAAU,KAAK,IAAIrB,EAAM,IAAI,EAAE,EAAGA,EAAM,KAC5C,CAAC,GAAGqB,EAAU,KAAK,cAAc,EAAG,EAAQrB,EAAM,YAClD,CAAC,GAAGqB,EAAU,KAAK,WAAW,EAAGrB,EAAM,SACvC,CAAC,GAAGqB,EAAU,KAAK,eAAe,EAAG,EAAQuF,CAAC,CACjD,CACL,CAAC,EAEKC,GAAkB1G,EAAAA,SAAS,IACtB,GAAGkB,EAAU,KAAK,YAC5B,EAEKyF,GAAoB3G,EAAAA,SAAwB,IAAM,OACpD,MAAMuG,EAAuB,CAAA,EAI7B,OAAIlG,EAAAR,EAAM,SAAN,MAAAQ,EAAc,IACdkG,EAAM,SAAW,OACjBA,EAAM,MAAQ,QAKXA,CACX,CAAC,EAEKK,GAAsB5G,EAAAA,SAAS,IAC7BH,EAAM,YACCA,EAAM,YAEVgH,EAAe,MAAQ,QAAU,MAC3C,EAEKC,GAAW9G,EAAAA,SAAS,IACfqG,EAAWnF,EAAU,MAAO,CAC/B,CAAC,GAAGA,EAAU,KAAK,QAAQ,EAAG0F,GAAoB,QAAU,OAAA,CAC/D,CACJ,EAEKG,GAAY/G,EAAAA,SAAS,IAAM,CAC7B,MAAMgH,EAAY,EAAQnH,EAAM,OAChC,OAAOwG,EAAW,GAAGnF,EAAU,KAAK,UAAW,CAC3C,CAAC,GAAGA,EAAU,KAAK,gBAAgB,EAAG8F,EACtC,CAAC,GAAG9F,EAAU,KAAK,gBAAgB,EAAG,CAAC+F,GAAW,KAAA,CACrD,CACL,CAAC,EAEKC,GAAmBlH,EAAAA,SAAwB,IAAM,OACnD,MAAMuG,EAAuB,CAAA,EACvBY,GAAI9G,EAAAR,EAAM,SAAN,YAAAQ,EAAc,EACxB,OAAI8G,IACAZ,EAAM,MAAQ,OAAOY,GAAM,SAAW,GAAGA,CAAC,KAAOA,GAE9CZ,CACX,CAAC,EAEKa,GAAiBpH,EAAAA,SAAwB,IAAM,OACjD,MAAMuG,EAAuB,CAAA,EACvBY,GAAI9G,EAAAR,EAAM,SAAN,YAAAQ,EAAc,EACxB,OAAI8G,IACAZ,EAAM,MAAQ,OAAOY,GAAM,SAAW,GAAGA,CAAC,KAAOA,GAE9CZ,CACX,CAAC,EAEKc,GAAiB,IAAqB,SACxC,MAAMd,EAAuB,CAAA,EAuB7B,GAtBCA,EAAc,gBAAkB,UAC7BlG,EAAAR,EAAM,SAAN,MAAAQ,EAAc,IACdkG,EAAM,UAAY,UAOlBM,EAAe,SAASS,EAAAzH,EAAM,SAAN,MAAAyH,EAAc,KAIjC1F,EAAM,MAAM,mBAEb2E,EAAM,SAAW,YAOrB1G,EAAM,OAAQ,CACd,MAAM0H,EAAY,OAAO1H,EAAM,QAAW,SAAWA,EAAM,OAAO,IAAM,EACpE,OAAO0H,GAAc,WACrBhB,EAAM,IAAMgB,EAEpB,CAEA,OAAOhB,CACX,EAEMiB,GAAe,IAAqB,SACtC,MAAMjB,EAAuB,CAAA,EACvBY,GAAI9G,EAAAR,EAAM,SAAN,YAAAQ,EAAc,EAClBoG,GAAIa,EAAAzH,EAAM,SAAN,YAAAyH,EAAc,EAGvBf,EAAc,gBAAkB,SAE7BE,IACAF,EAAM,UAAY,OAAOE,GAAM,SAAW,GAAGA,CAAC,KAAOA,GAMzD,MAAMgB,GADa5H,EAAM,YAAc,CAAA,GACZ,OAAS,EACpC,OAAIgH,EAAe,OAASY,EACnB5H,EAAM,cACP0G,EAAM,SAAW,OACjBA,EAAM,gBAAkB,wBACpBE,IACAF,EAAM,UAAY,WAIrB1G,EAAM,cACH4G,IACAF,EAAM,UAAY,QAElBY,IACAZ,EAAM,UAAY,OAClBA,EAAM,MAAQ,SAKtBY,GAAK,CAACN,EAAe,QACrBN,EAAM,MAAQ,QAGXA,CACX,EAEMU,GAAajH,EAAAA,SAAS,IAAMH,EAAM,aAAe,EAAK,EAEtD6H,GAA2B,IAA0B,CACvD,KAAM,CAAE,aAAA3C,GAAiBlF,EACzB,GAAI,CAACkF,GAAiB,OAAOA,GAAiB,UAAYA,EAAa,OACnE,OAAO,KAGX,MAAM4C,EAAkB,OAAO5C,GAAiB,SAAWA,EAAe,CAAA,EAU1E,MAT4B,CACxB,IAAK6C,EAAAA,QAAQ,6BACb,MAAOC,EAAAA,QAAQ,+BACf,MAAOF,EAAgB,MACvB,UAAWtB,EAAW,GAAGnF,EAAU,KAAK,oBAAqByG,EAAgB,SAAS,EACtF,MAAO,YACP,OAAQ,IAAM,WAAA,CAItB,EAEMG,GAAwB,IACtB,CAACjI,EAAM,mBAAqBA,EAAM,qBAAuB,GAClD,KAEiB,CACxB,IAAK+H,EAAAA,QAAQ,0BACb,MAAOC,EAAAA,QAAQ,4BACf,MAAOhI,EAAM,gBACb,UAAWwG,EAAW,GAAGnF,EAAU,KAAK,gBAAgB,EACxD,MAAO,GAGP,OAAQ,IAAM,IAAA,EAQhB6G,GAAe,CAAC7H,EAAsB,KACnC,MAAM,QAAQA,CAAI,EAGhBA,EAAK,IAAKgF,GAAQ,CACrB,GAAI,CAACA,GAAO,OAAOA,GAAQ,SACvB,OAAOA,EAEX,KAAM,CAAE,SAAA8C,EAAU,GAAGC,CAAA,EAAS/C,EACxBgD,EAAY,CAAE,GAAGD,CAAA,EACvB,OAAI,MAAM,QAAQD,CAAQ,IACtBE,EAAK,SAAWH,GAAaC,CAAQ,GAElCE,CACX,CAAC,EAZU,CAAA,EAgBTC,GAAoBnI,EAAAA,SAAS,IAAM,CACrC,GAAIH,EAAM,SAAWA,EAAM,QAAQ,OAAS,EAAG,CAE3C,MAAMuI,EAAYC,EAAAA,eAAmBxI,EAAM,OAAO,EAClD,OAAOkI,GAAaK,CAAS,CACjC,CACA,MAAO,CAAA,CACX,CAAC,EAGKE,GAAgCtI,EAAAA,SAAS,IAAM,CACjD,MAAMsF,EAAyB,CAAC,GAAG6C,GAAkB,KAAK,EAGpDI,EAAkBb,GAAA,EACxB,GAAIa,EAAiB,CACjB,MAAMC,EAAYlD,EAAQ,UAAW9B,GAASA,EAAK,MAAQoE,EAAAA,QAAQ,4BAA4B,EAC3FY,EAAY,GACZlD,EAAQkD,CAAS,EAAI,CAAE,GAAGD,EAAiB,GAAGjD,EAAQkD,CAAS,CAAA,EACxDD,EAAgB,QAAU,QACjCjD,EAAQ,KAAKiD,CAAe,EAE5BjD,EAAQ,QAAQiD,CAAe,CAEvC,CAEA,MAAME,EAAeX,GAAA,EACrB,GAAIW,EAAc,CACd,MAAMD,EAAYlD,EAAQ,UAAW9B,GAASA,EAAK,MAAQoE,EAAAA,QAAQ,yBAAyB,EAC5F,GAAIY,EAAY,GACZlD,EAAQkD,CAAS,EAAI,CAAE,GAAGC,EAAc,GAAGnD,EAAQkD,CAAS,CAAA,UACrDC,EAAa,QAAU,QAC9BnD,EAAQ,KAAKmD,CAAY,MACtB,CAEH,MAAMC,EAAiBpD,EAAQ,UAAW9B,GAASA,EAAK,MAAQoE,EAAAA,QAAQ,4BAA4B,EAC9Fe,EAAcD,EAAiB,GAAKA,EAAiB,EAAI,EAC/DpD,EAAQ,OAAOqD,EAAa,EAAGF,CAAY,CAC/C,CACJ,CAEAG,OAAAA,EAAAA,iBAAiBtD,CAAgB,EAC1BA,CACX,CAAC,EAGKuD,GAA2B7I,EAAAA,SAAS,IAAM,CAC5C,MAAM0D,EAAU9B,EAAM,MAAM,QAC5B,OAAO0G,GAA8B,MAAM,IAAKtC,GAAW,CACvD,MAAM8C,EAAcpF,EAAQ,KACvBE,GAAOA,EAAE,KAAOA,EAAE,MAAQoC,EAAO,KAASpC,EAAE,WAAaA,EAAE,YAAcoC,EAAO,SAAA,EAErF,GAAI8C,EAAa,CAGb,KAAM,CAAE,cAAeC,EAAoB,GAAGC,GAAoBF,EAC5DG,EAAS,CAAE,GAAGjD,EAAQ,GAAGgD,CAAA,EAE/B,OAAIhD,EAAO,gBAAkB,OACzBiD,EAAO,cAAgBjD,EAAO,cACvB+C,IAAuB,SAC9BE,EAAO,cAAgBF,GAEpBE,CACX,CACA,OAAOjD,CACX,CAAC,CACL,CAAC,EAGK7F,EAAiBH,EAAAA,SAAS,IACrB6I,GAAyB,MAAM,IAAK7C,GAAW,CAClD,MAAMkD,EAAY,EAAQlD,EAAO,OAC3BmD,EAAY,GAAQnD,EAAO,UAAYA,EAAO,SAC9CoD,EAAgBpD,EAAO,gBAAkB,GACzCqD,EAAsBH,GAAa,CAACC,GAAa,CAACC,EAGxD,IAAIE,EAAkB,CAAE,GAAGtD,CAAA,EAI3B,GAAIoD,GAAiB,OAAOpD,EAAO,OAAU,WAAY,CACrD,MAAMuD,EAAWvD,EAAO,MAExBsD,EAAkB,CACd,GAAGA,EACH,MAAO,IAAM,CACT,MAAME,EAAgB,CAAA,EACtB,OAAI3J,EAAM,eAEN2J,EAAS,UAAYC,GAAgB,OAAW,EAAI,GAGjDF,EAASC,CAAQ,CAC5B,CAAA,CAER,CACA,MAAME,EACF7J,EAAM,YAAc,IAAS,OAAOA,EAAM,WAAc,UAAYA,EAAM,YAAc,KAgB5F,MAbI,WAAYmG,IACZsD,EAAgB,UAAYtD,EAAO,QAInC0D,GAAkB,OAAO1D,EAAO,OAAU,UAEtC,EAAE,WAAYA,IAAW,EAAE,cAAeA,KAC1CsD,EAAgB,UAAY,IAKhCD,EACO,CACH,GAAGC,EACH,YAAcxE,GAAkB,CAC5BA,EAAE,gBAAA,EACE,CAAAhD,IAGJA,EAAgB,GAChB,eAAeC,EAAa,EAC5B6D,EAAW,WAAWI,EAAQlB,EAAG,EAAI,EACzC,EACA,UAAYA,GAAkB,CAC1Bc,EAAW,gBAAgBd,CAAC,CAChC,CAAA,EAIDwE,CACX,CAAC,CACJ,EAEKzC,EAAiB7G,EAAAA,SAAS,IACbG,EAAe,MAAM,KAC/B+E,GAAQA,EAAI,QAAU,IAAQA,EAAI,QAAU,QAAUA,EAAI,QAAU,OAAA,CAG5E,EAEKyE,GAAsB3J,EAAAA,SAAS,IAC1B,OAAOH,EAAM,aAAgB,SAAWA,EAAM,YAAY,SAAW,MAC/E,EAIK+J,GAAe,CACjB,UAAY/J,EAAM,WAAa,MAC/B,WAAYG,EAAAA,SAAS,IAAM4B,EAAM,MAAM,UAAU,EACjD,WAAY5B,EAAAA,SAAS,IAAM4B,EAAM,MAAM,UAAU,EACjD,eAAAiF,EACA,iBAAkB7G,EAAAA,SAAS,IAAMG,EAAe,KAAK,EACrD,cAAeqC,EAAQ,cACvB,cAAeA,EAAQ,cACvB,cAAeA,EAAQ,cACvB,SAAWqH,GAA+BjE,EAAW,SAASiE,CAAmB,EACjF,iBAAmBC,GAAmBlE,EAAW,iBAAiBkE,CAAS,EAC3E,IAAI,iBAAkB,CAElB,OAAOL,EACX,CAAA,EAGJM,GAAAA,oBAAoBH,EAAY,EAEhC,MAAMI,GAAqBhK,EAAAA,SAA+B,IAAM,CAC5D,GAAIH,EAAM,aAAc,CAEpB,MAAM4C,GADe,OAAO5C,EAAM,cAAiB,SAAWA,EAAM,aAAe,CAAA,GAC7C,iBAAmB,CAAA,EACzD,OAAO,IAAI,IAAI4C,CAAe,CAClC,CACA,WAAW,GACf,CAAC,EAEKwH,EAAmBjK,EAAAA,SAAS,IAAM,CACpC,MAAM4C,EAAa/C,EAAM,WAEzB,OAAI+C,IAAe,QAAaA,IAAe,GACpC,CACH,YAAa,EACb,SAAU,GACV,GAAIhB,EAAM,MAAM,YAAc,CAAA,CAAC,EAGnCgB,IAAe,GACR,GAEP,OAAOA,GAAe,SAEf,CACH,YAAa,EACb,SAAU,GACV,GAAIhB,EAAM,MAAM,YAAc,CAAA,EAC9B,GAAGgB,CAAA,EAGJhB,EAAM,MAAM,YAAc,CAAE,YAAa,EAAG,SAAU,EAAA,CACjE,CAAC,EAGKW,EAAe,CAAC7B,EAAc4B,IAC5BzC,EAAM,OACF,OAAOA,EAAM,QAAW,WACjBA,EAAM,OAAOa,CAAM,EAEvB4C,EAAAA,IAAI5C,EAAQb,EAAM,OAAQyC,CAAK,EAEnCgB,MAAI5C,EAAQ,MAAO4B,CAAK,EAInC4H,EAAAA,MACI,IAAM,CAACrK,EAAM,WAAYA,EAAM,OAAO,EACtC,IAAM,CACF,MAAMkD,EAAalD,EAAM,YAAc,CAAA,EAGjCsK,EAAUtK,EAAM,QACtB,GAAIsK,EAAS,CAET,IAAIC,EACJ,GAAI,OAAOD,GAAY,WACnBC,EAAYD,UACL,OAAOA,GAAY,UAAY,OAAOA,GAAY,SAEzDC,EAAa1J,GAAiB4C,EAAAA,IAAI5C,EAAQyJ,EAAmB,EAAE,MAC5D,CACHvI,EAAM,MAAM,OAAS,KACrBA,EAAM,MAAM,UAAY,CAAA,EACxB,MACJ,CAGA,MAAMiB,MAAa,IACbwH,EAAiC,CAAA,EAiBvC,GAfAtH,EAAW,QAAQ,CAACrC,EAAQ4J,IAAW,CACnC,MAAMC,EAAWH,EAAU1J,CAAM,EAE5BmC,EAAO,IAAI0H,CAAQ,IACpB1H,EAAO,IAAI0H,EAAU,EAAE,EACvBF,EAAU,KAAKE,CAAQ,GAG3B1H,EAAO,IAAI0H,CAAQ,EAAG,KAAK7J,CAAM,CACrC,CAAC,EAEDkB,EAAM,MAAM,OAASiB,EACrBjB,EAAM,MAAM,UAAYyI,EAGpBxK,EAAM,2BAA6BA,EAAM,mBAAoB,CAC7D,MAAM2K,EAAqB,CAAC,GAAG5I,EAAM,MAAM,eAAe,EAC1DyI,EAAU,QAASE,GAAa,CACvBC,EAAmB,SAASD,CAAQ,GACrCC,EAAmB,KAAKD,CAAQ,CAExC,CAAC,EACD3I,EAAM,MAAM,gBAAkB4I,CAClC,CACJ,MACI5I,EAAM,MAAM,OAAS,KACrBA,EAAM,MAAM,UAAY,CAAA,GAOxB/B,EAAM,sBACNA,EAAM,eACNA,EAAM,2BACNA,EAAM,qBAEN4K,EAAAA,SAAS,IAAM,CACX7E,EAAW,oBAAoB,CAAE,OAAQhE,EAAM,MAAM,OAAQ,CACjE,CAAC,CAET,EACA,CAAE,UAAW,EAAA,CAAK,EAItBsI,EAAAA,MAAM,CAAC,IAAMrK,EAAM,mBAAoB,IAAMA,EAAM,aAAa,EAAG,IAAM,EACjEA,EAAM,oBAAsBA,EAAM,gBAClC4K,EAAAA,SAAS,IAAM,CACX7E,EAAW,oBAAoB,CAAE,OAAQhE,EAAM,MAAM,OAAQ,CACjE,CAAC,CAET,CAAC,EAED,MAAM8I,EAAc1K,EAAAA,SAAS,IAAM,CAC/B,MAAM+C,EAAalD,EAAM,YAAc,CAAA,EAGvC,GAAIA,EAAM,SAAW+B,EAAM,MAAM,OAAQ,CAErC,MAAM+I,EAA0F,CAAA,EAEhG,OAAA/I,EAAM,MAAM,UAAU,QAAS2I,GAAa,CACxC,MAAMK,EAAahJ,EAAM,MAAM,OAAwC,IAAI2I,CAAQ,GAAK,CAAA,EAExFI,EAAQ,KAAK,CAAE,KAAM,UAAW,SAAAJ,EAAU,EAC1CI,EAAQ,KAAK,CAAE,KAAM,OAAQ,KAAMC,EAAW,CAClD,CAAC,EAEMD,CACX,CAEA,OAAO5H,CACX,CAAC,EAEK8H,GAAuB7K,EAAAA,SAAS,IAC3B,MAAM,QAAQ0K,EAAY,KAAK,GAClCA,EAAY,MAAM,OAAS,GAC3B,OAAOA,EAAY,MAAM,CAAC,GAAM,UAChC,SAAUA,EAAY,MAAM,CAAC,EAC3BA,EAAY,MAAM,OAAQlH,GAAcA,EAAK,OAAS,MAAM,EAAE,QAASA,GAAcA,EAAK,MAAQ,CAAA,CAAE,EACnGkH,EAAY,KACtB,EAODR,EAAAA,MACI,IAAM,CACF,MAAM5E,EAAUgD,GAA8B,MAC9C,GAAI,CAAChD,GAAWA,EAAQ,SAAW,EAC/B,OAAO,KAGX,MAAMwF,EAAgBxF,EACjB,OAAQJ,IACaA,EAAI,WAAaA,EAAI,MACnBA,EAAI,QAC3B,EACA,IAAKA,GAAQ,CACV,MAAM2E,EAAY3E,EAAI,WAAaA,EAAI,IACjC6F,EAAgB7F,EAAI,cAE1B,MAAO,CACH,UAAA2E,EAGA,iBAAkB,MAAM,QAAQkB,CAAa,EACvC,GAAGlB,CAAS,IAAIkB,EAAc,MAAM,IAAIA,EAAc,KAAK,GAAG,CAAC,GAC/DA,EACN,cAAAA,EACA,SAAU7F,EAAI,QAAA,CAEtB,CAAC,EACL,OAAO4F,EAAc,OAAS,EAAIA,EAAgB,IACtD,EACA,CAACE,EAAeC,IAAqB,OACjC,GAAI,GAACD,GAAiBA,EAAc,SAAW,GAI/C,IAAIC,GAAoBA,EAAiB,SAAWD,EAAc,OAAQ,CACtE,IAAIE,EAAY,GAChB,QAASC,EAAI,EAAGA,EAAIH,EAAc,OAAQG,IACtC,GAAIH,EAAcG,CAAC,EAAE,qBAAqB9K,EAAA4K,EAAiBE,CAAC,IAAlB,YAAA9K,EAAqB,kBAAkB,CAC7E6K,EAAY,GACZ,KACJ,CAEJ,GAAI,CAACA,EACD,MAER,CAEAF,EAAc,QAASI,GAAiB,CACpC,KAAM,CAAE,UAAAvB,EAAW,cAAewB,EAAqB,SAAAC,GAAaF,EACpE,GAAI,CAACvB,GAAa,CAACyB,GAAYD,IAAwB,OACnD,OAEJ,MAAME,EAAW3F,EAAW,SAASiE,CAAS,EACxCd,EAAqBzF,EAAAA,IAAIiI,EAAU,eAAe,EAEpDF,IAAwBtC,GAAsB,CAAClF,EAAAA,QAAQwH,EAAqBtC,CAAkB,GAC9FvG,EAAQ,SAAS,CACb,UAAAqH,EACA,IAAK,OACL,cAAe,MAAM,QAAQwB,CAAmB,EAAIA,EAAsB,CAAA,EAC1E,SAAAC,CAAA,CACH,CAET,CAAC,EACL,EACA,CAAE,MAAO,MAAA,CAAO,EAKpBpB,EAAAA,MACI,CAAC,IAAMtI,EAAM,MAAM,QAAS,IAAMiJ,GAAqB,KAAK,EAC5D,CAAC,CAACnH,EAASX,CAAU,IAAM,CAEvB,GAAI,CAAC6C,GAAc,CAAClC,GAAWA,EAAQ,SAAW,EAAG,CAC7C9B,EAAM,MAAM,iCAAmCmB,GAC/CP,EAAQ,kCAAkCO,CAAU,EAExD,MACJ,CAEA,GAAI,CACA,MAAMyI,EAAiB5F,EAAW,4BAA4B7C,EAAYW,CAAO,EAE5EG,EAAAA,QAAQ2H,EAAgB5J,EAAM,MAAM,8BAA8B,GACnEY,EAAQ,kCAAkCgJ,CAAc,CAEhE,OAAS1G,EAAG,CACR,QAAQ,KAAK,uBAAwBA,CAAC,EAElClD,EAAM,MAAM,iCAAmCmB,GAC/CP,EAAQ,kCAAkCO,CAAU,CAE5D,CACJ,EACA,CAAE,UAAW,EAAA,CAAK,EAGtB,MAAM0I,GAAazL,EAAAA,SAAS,IACjB4B,EAAM,MAAM,gCAAkCiJ,GAAqB,KAC7E,EAEKa,EAAW1L,EAAAA,SAAS,IAAM,CAC5B,MAAM+C,EAAa0I,GAAW,MACxB7I,EAAaqH,EAAiB,MAE9B0B,EAAiB9L,EAAM,WACvB+L,EAAeD,GAAkB,OAAOA,GAAmB,UAAYA,EAAe,aAAe,KAE3G,GAAI/I,GAAc,OAAOA,GAAe,UAAYA,IAAe,IAAS,CAACgJ,EAAc,CACvF,MAAMjJ,EAAcC,EAAW,aAAe,EACxCiJ,EAAWjJ,EAAW,UAAY,GAClCkJ,GAASnJ,EAAc,GAAKkJ,EAC5BE,EAAMD,EAAQD,EACpB,OAAO9I,EAAW,MAAM+I,EAAOC,CAAG,CACtC,CAEA,OAAOhJ,CACX,CAAC,EAEKiJ,GAAchM,EAAAA,SAAS,IAAM,CAE/B,GAAIH,EAAM,SAAW+B,EAAM,MAAM,OAAQ,CAErC,MAAMqK,EACFrK,EAAM,MAAM,gCAAkCA,EAAM,MAAM,+BAA+B,OAAS,EAC5FA,EAAM,MAAM,+BACZ/B,EAAM,YAAc,CAAA,EAGxBqM,EAAgB,CAAA,EAChB7B,EAAYzI,EAAM,MAAM,WAAa,CAAA,EAGrCuK,MAAmB,IACnBC,MAAc,IACpBH,EAAmB,QAASvL,GAAW,CAEnC,MAAMN,EAAMP,EAAM,OACZ,OAAOA,EAAM,QAAW,WACpBA,EAAM,OAAOa,CAAM,EACnB4C,MAAI5C,EAAQb,EAAM,OAAQ,EAAE,EAChCyD,MAAI5C,EAAQ,MAAO,EAAE,EACvBN,GAAO,MAAQA,IAAQ,KACvB+L,EAAa,IAAIzL,EAAQN,CAAG,EAC5BgM,EAAQ,IAAIhM,CAAG,EAEvB,CAAC,EAEDiK,EAAU,QAASE,GAAa,CAC5B,MAAM8B,EAAgBzK,EAAM,MAAM,OAAwC,IAAI2I,CAAQ,EACtF,GAAI,CAAC,MAAM,QAAQ8B,CAAY,GAAKA,EAAa,SAAW,EACxD,OAIJ,MAAMC,OAAkB,IACpB,MAAM,QAAQD,CAAY,GAC1BA,EAAa,QAAS3L,GAAW,CAC7B,MAAMN,EAAMP,EAAM,OACZ,OAAOA,EAAM,QAAW,WACpBA,EAAM,OAAOa,CAAM,EACnB4C,MAAI5C,EAAQb,EAAM,OAAQ,EAAE,EAChCyD,MAAI5C,EAAQ,MAAO,EAAE,EACvBN,GAAO,MAAQA,IAAQ,IACvBkM,GAAY,IAAIlM,CAAG,CAE3B,CAAC,EAKL,IAAIwK,EAAoB,CAAA,EAGpB0B,GAAY,OAAS,EAErB1B,EAAYyB,EAAa,OAAQ7I,GAASA,GAAQ,OAAOA,GAAS,UAAY,CAAC,MAAM,QAAQA,CAAI,CAAC,EAC3FyI,EAAmB,OAAS,GAEnCrB,EAAYqB,EAAmB,OAAQvL,GAAW,CAE9C,IAAIN,EAAM+L,EAAa,IAAIzL,CAAM,EACjC,OAAIN,GAAO,MAAQA,IAAQ,MAEvBA,EAAMP,EAAM,OACN,OAAOA,EAAM,QAAW,WACpBA,EAAM,OAAOa,CAAM,EACnB4C,EAAAA,IAAI5C,EAAQb,EAAM,OAAQ,EAAE,EAChCyD,MAAI5C,EAAQ,MAAO,EAAE,GAExBN,GAAO,MAAQA,IAAQ,IAAMkM,GAAY,IAAIlM,CAAG,CAC3D,CAAC,EAGGwK,EAAU,SAAW,GAAKyB,EAAa,OAAS,IAEhDzB,EAAYyB,EAAa,OAAQ7I,GAASA,GAAQ,OAAOA,GAAS,UAAY,CAAC,MAAM,QAAQA,CAAI,CAAC,IAKtGoH,EAAYyB,EAAa,OAAQ7I,GAASA,GAAQ,OAAOA,GAAS,UAAY,CAAC,MAAM,QAAQA,CAAI,CAAC,EAKtG0I,EAAO,KAAK,CAAE,wBAAyB,GAAM,SAAA3B,EAAU,EAEnDgC,EAAgBhC,CAAQ,GAAKK,EAAU,OAAS,GAChDsB,EAAO,KAAK,GAAGtB,CAAS,CAEhC,CAAC,EAGD,MAAMhI,EAAaqH,EAAiB,MAC9B0B,EAAiB9L,EAAM,WACvB+L,EAAeD,GAAkB,OAAOA,GAAmB,UAAYA,EAAe,aAAe,KAE3G,OAEWO,CAIf,CAEA,GAAI,CAAC1L,GAAY,MACb,OAAOkL,EAAS,MAGpB,MAAMjL,EAAKZ,EAAM,YAAc,CAAA,EACzB2M,EAAc,CAAA,EACdC,EAAO,CAACC,EAAaC,IAAkB,CACzCD,EAAK,QAAQ,CAAClJ,EAAMvD,IAAQ,CACxB,GAAI,CAACuD,EACD,OAGJ,MAAMoJ,EAAM,CAAE,GAAIpJ,EAAc,qBAAsBmJ,CAAA,EACtDH,EAAK,KAAKI,CAAG,EAEb,MAAMxM,EAAMmC,EAAaiB,EAAMvD,CAAG,EACjB2B,EAAM,MAAM,gBAAgB,SAASxB,CAAG,GACzCO,GAAgB6C,CAAI,GAChCiJ,EAAMjJ,EAAajD,GAAmB,KAAK,EAAGoM,EAAQ,CAAC,CAE/D,CAAC,CACL,EACA,OAAAF,EAAKhM,EAAa,CAAC,EACZ+L,CACX,CAAC,EAEKK,GAAiB7M,EAAAA,SAAS,IACrBH,EAAM,aAAe,IAASoK,EAAiB,QAAU,EACnE,EAEK6C,EAAqB9M,EAAAA,SAAS,IAC5B,CAACiK,EAAiB,OAAS,OAAOA,EAAiB,OAAU,SACtD,KAEIrE,EAAW,mBAAmBqE,EAAiB,KAAK,CAEtE,EAEK8C,EAAkB/M,EAAAA,SAAS,IAAM,CACnC,MAAM4C,EAAakK,EAAmB,MACtC,GAAI,CAAClK,EACD,OAAO,KAGX,MAAMoK,EAAqB/C,EAAiB,MAC5C,IAAIgD,EACAD,GAAsB,OAAOA,GAAuB,UAAYA,EAAmB,QAAU,OAC7FC,EAAQD,EAAmB,MACpBpK,EAAW,QAAU,OAC5BqK,EAAQrK,EAAW,MAEnBqK,GAASpN,EAAM,YAAc,CAAA,GAAI,OAIrC,MAAMqN,EAAwBrN,EAAM,YAAc,OAAOA,EAAM,YAAe,SAAWA,EAAM,WAAa,KAE5G,MAAO,CACH,YAAa+C,EAAW,aAAe,EACvC,SAAUA,EAAW,UAAY,GACjC,MAAAqK,EACA,aAAeE,GAAiB,CAC5B3K,EAAQ,eAAe2K,CAAI,EACvBD,GAAyB,OAAOA,EAAsB,cAAiB,YACvEA,EAAsB,aAAaC,EAAMvK,EAAW,UAAY,EAAE,CAE1E,EACA,iBAAmBiJ,GAAqB,CACpCrJ,EAAQ,cAAc,CAAE,GAAGI,EAAY,SAAAiJ,EAAU,YAAa,EAAG,EAC7DqB,GAAyB,OAAOA,EAAsB,kBAAqB,YAC3EA,EAAsB,iBAAiBrB,EAAU,CAAC,CAE1D,CAAA,CAER,CAAC,EAEKuB,EAAmBpN,EAAAA,SAAS,IAC1BH,EAAM,iBACC,IAAMA,EAAM,iBAAiBiN,EAAmB,KAA6B,EAEjF,IACV,EAEKO,EAAqBC,GAClBR,EAAmB,MAGjBlH,EAAW,qBAAqBkH,EAAmB,OAAOQ,GAAA,YAAAA,EAAQ,WAAY,EAAE,EAF5E,GAKTC,EAAqBvN,EAAAA,SAAS,IAAM,CACtC,MAAM4C,EAAaqH,EAAiB,MACpC,OAAIrH,GAAc,OAAOA,GAAe,UAC7BA,EAAW,UAAY,QAGtC,CAAC,EAGK4K,GAAkBxH,GAAwB,CAC5C,MAAMO,EAA+C,CAAA,EACrD,GAAIP,EAAO,MAAO,CACd,MAAMyH,EAAQ,OAAOzH,EAAO,OAAU,SAAW,GAAGA,EAAO,KAAK,KAAOA,EAAO,MAC9EO,EAAM,MAAQkH,EACdlH,EAAM,SAAWkH,CACrB,CACA,OAAOlH,CACX,EAGMmH,EAAqB1H,GAEnBA,EAAO,IACA,OAAOA,EAAO,GAAG,EAExBA,EAAO,UACA,OAAOA,EAAO,SAAS,EAE3B,KAIL2H,GAAiB,CAACjN,EAAcsF,IAC9BA,EAAO,UACA1C,EAAAA,IAAI5C,EAAQsF,EAAO,UAAW,EAAE,EAEpCtF,EAGLkN,GAAc,CAAClN,EAAc4B,IAAkB,CACjD,MAAMuL,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ4B,CAAK,EAAI,CAAA,EAC5DlC,EAAMmC,EAAa7B,EAAQ4B,CAAK,EAYtC,OAVkB+D,EACd,GAAGnF,EAAU,KAAK,OAClB,CACI,CAAC,GAAGA,EAAU,KAAK,eAAe,EAAG4M,GAAcpN,CAAM,EACzD,CAAC,GAAGQ,EAAU,KAAK,eAAe,EAAG6M,EAAcrN,CAAM,EACzD,CAAC,GAAGQ,EAAU,KAAK,eAAe,EAAG8M,GAActN,CAAM,EACzD,CAAC,GAAGQ,EAAU,KAAK,YAAY,EAAGU,EAAM,MAAM,gBAAkBxB,CAAA,EAEpEyN,EAAe,SAAA,GAEC,EACxB,EAEMI,GAAc,CAACvN,EAAc4B,IAAiC,CAChE,MAAMuL,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ4B,CAAK,EAAI,CAAA,EAElE,OAAIuL,GAAkBA,EAAe,MAC1B,CAAE,GAAGA,EAAe,KAAA,EAExB,CAAA,CACX,EAEMK,GAAc,CAACxN,EAAc4B,IAAkB,CACjD,MAAMuL,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ4B,CAAK,EAAI,CAAA,EAClE,GAAI,CAACuL,GAAkB,OAAOA,GAAmB,SAC7C,MAAO,CAAA,EAGX,KAAM,CACF,UAAWM,EACX,MAAOC,EACP,QAASC,EACT,cAAeC,EACf,aAAcC,EACd,aAAcC,EACd,GAAGvG,CAAA,EACH4F,EAQJ,OAAO5F,CACX,EAGMwG,GAAqB,CAAClE,EAAuCjI,IAAkB,CACjF,GAAI,CAACzC,EAAM,aACP,MAAO,CAAA,EAGX,MAAM6O,EAAsB9M,EAAM,MAAM,OACjCA,EAAM,MAAM,OAAwC,IAAI2I,CAAS,EAClE,KAEAoE,EAAc,CAAE,SAAApE,EAAU,QAASmE,GAAuB,CAAA,CAAC,EAC3DE,EAAc/O,EAAM,aAAa8O,EAAarM,CAAK,EACzD,GAAI,CAACsM,GAAe,OAAOA,GAAgB,SACvC,MAAO,CAAA,EAEX,KAAM,CAAE,GAAG3G,CAAA,EAAS2G,EACpB,OAAO3G,CACX,EAEM4G,GAAyB,CAACtK,EAAmBgG,EAA2BzF,IAAkB,CAC5F,GAAI,CAACjF,EAAM,wBACP,OAGJ,MAAM6O,EAAsB9M,EAAM,MAAM,OACjCA,EAAM,MAAM,OAAwC,IAAI2I,CAAQ,EACjE,KAEN,GAAI,CAACmE,GAAuBA,EAAoB,SAAW,EACvD,OAGJ,MAAMI,EAAcvK,EAapB,GAXIuK,EAEKlN,EAAM,MAAM,gBAAgB,SAAS2I,CAAQ,IAC9C3I,EAAM,MAAM,gBAAkB,CAAC,GAAGA,EAAM,MAAM,gBAAiB2I,CAAQ,GAI3E3I,EAAM,MAAM,gBAAkBA,EAAM,MAAM,gBAAgB,OAAQmN,GAAMA,IAAMxE,CAAQ,EAItF1K,EAAM,SAAU,CAEhB,MAAM6O,EAAsB9M,EAAM,MAAM,OACjCA,EAAM,MAAM,OAAwC,IAAI2I,CAAQ,EACjE,KACAoE,EAAc,CAAE,SAAApE,EAAU,QAASmE,GAAuB,CAAA,CAAC,EACjE7O,EAAM,SAASiP,EAAaH,EAAa7J,CAAC,CAC9C,CAEA,GAAIjF,EAAM,qBAAsB,CAC5B,MAAM4E,EAAetC,EAAsBP,EAAM,MAAM,eAAe,EACtE/B,EAAM,qBAAqB4E,CAAmB,CAClD,CACJ,EAEMuK,GAAwB,CAACzE,EAAuCjI,EAAewC,IAAkB,CACnG,GAAIjF,EAAM,wBAAyB,CAE/B,MAAMoP,EAAwBrN,EAAM,MAAM,OACnCA,EAAM,MAAM,OAAwC,IAAI2I,CAAS,EAClE,KACN,GAAI,MAAM,QAAQ0E,CAAqB,GAAKA,EAAsB,OAAS,EAAG,CAC1E,MAAM5E,EAAY4E,EAAsB,IAAKvO,GAAW6B,EAAa7B,EAAQ,CAAC,CAAC,EAE/E,GADoB2J,EAAU,MAAOjK,GAAQwB,EAAM,MAAM,gBAAgB,SAASxB,CAAG,CAAC,EAGlFwB,EAAM,MAAM,gBAAkBA,EAAM,MAAM,gBAAgB,OAAQmN,GAAM,CAAC1E,EAAU,SAAS0E,CAAC,CAAC,MAC3F,CAEH,MAAMG,EAAkB,CAAC,GAAGtN,EAAM,MAAM,eAAe,EACvDyI,EAAU,QAASjK,GAAQ,CAClB8O,EAAgB,SAAS9O,CAAG,GAC7B8O,EAAgB,KAAK9O,CAAG,CAEhC,CAAC,EACDwB,EAAM,MAAM,gBAAkBsN,CAClC,CACJ,CACJ,CAEA,GAAIrP,EAAM,aAAc,CAEpB,MAAM6O,EAAsB9M,EAAM,MAAM,OACjCA,EAAM,MAAM,OAAwC,IAAI2I,CAAS,EAClE,KACAoE,EAAc,CAAE,SAAApE,EAAU,QAASmE,GAAuB,CAAA,CAAC,EAC3DE,EAAc/O,EAAM,aAAa8O,EAAarM,CAAK,EACrDsM,GAAe,OAAOA,GAAgB,UAAYA,EAAY,SAC9DA,EAAY,QAAQ9J,CAAC,CAE7B,CACJ,EAGMqK,GAAsB5E,GAA0C,CAClE,GAAI,CAAC1K,EAAM,mBACP,OAAOuP,EAAAA,EAAE,OAAQ,CAAA,EAAI,OAAO7E,GAAY,EAAE,CAAC,EAG/C,MAAM8B,EAAezK,EAAM,MAAM,OAC1BA,EAAM,MAAM,OAAwC,IAAI2I,CAAS,EAClE,KAEA8E,EACF,MAAM,QAAQhD,CAAY,GAAKA,EAAa,OAAS,EAC/CA,EAAa,IAAK3L,GAAW6B,EAAa7B,EAAQ,CAAC,CAAC,EACpD,CAAA,EAEJwL,EAASrM,EAAM,mBAAmB0K,EAAU8E,CAAY,EAE9D,OAAInD,GAAU,OAAOA,GAAW,UAAY,aAAcA,EAC/CA,EAAO,SAEXA,CACX,EAGM8B,GAAiBtN,GAA0B,CAC7C,MAAMN,EAAMmC,EAAa7B,EAAQ,CAAC,EAClC,OAAOkB,EAAM,MAAM,mBAAmB,IAAIxB,CAAG,CACjD,EAGM,CAAE,cAAA0N,GAAe,qBAAAwB,GAAsB,oBAAAC,GAAqB,gBAAA9F,EAAA,EAAoB+F,GAAAA,kBAAkB,CACpG,aAAc3P,EAAM,aACpB,SAAA6L,EACA,WAAY1L,EAAAA,SAAS,IAAMH,EAAM,YAAc,CAAA,CAAE,EACjD,MAAA+B,EACA,QAAAY,EACA,aAAAD,EACA,cAAAyL,GACA,mBAAoBnO,EAAM,kBAAA,CAC7B,EAEKkO,EAAiBrN,GAA0B,CAC7C,MAAMN,EAAMmC,EAAa7B,EAAQ,CAAC,EAClC,OAAOkB,EAAM,MAAM,gBAAgB,SAASxB,CAAG,CACnD,EAEMmM,EAAmBhC,GACjBA,GAAY,KACL,GAGJ3I,EAAM,MAAM,gBAAgB,SAAS2I,CAAQ,EAIlDkF,GAAyBlF,GAA0C,CACrE,GAAI1K,EAAM,aAAe,GACrB,OAAO,KAEX,MAAM0E,EAAWgI,EAAgBhC,CAAQ,EAEzC,GAAI,OAAO1K,EAAM,kBAAqB,WAAY,CAC9C,MAAMqM,EAASrM,EAAM,iBAAiB,CAAE,SAAA0K,CAAA,EAAmB,GAAOA,CAAQ,EAC1E,GAAI2B,EACA,OAAOA,CAEf,CACA,OAAOkD,EAAAA,EAAEM,GAAAA,QAAkB,CACvB,SAAAnL,EACA,cAAe,SACf,WAAY1E,EAAM,WAClB,UAAWqB,EAAU,MACrB,QAAS,CAACyO,EAAqB7K,IAAkB8K,GAAuBrF,EAAUzF,CAAC,CAAA,CACtF,CACL,EAEM8K,GAAyB,CAACrF,EAAuCzF,IAAkB,CACrF,GAAIyF,GAAY,KACZ,OAGJ,MAAMuE,EAAc,CADHvC,EAAgBhC,CAAQ,EAezC,GAXIuE,EAEKlN,EAAM,MAAM,gBAAgB,SAAS2I,CAAQ,IAC9C3I,EAAM,MAAM,gBAAkB,CAAC,GAAGA,EAAM,MAAM,gBAAiB2I,CAAQ,GAI3E3I,EAAM,MAAM,gBAAkBA,EAAM,MAAM,gBAAgB,OAAQmN,GAAMA,IAAMxE,CAAQ,EAItF1K,EAAM,SAAU,CAEhB,MAAM6O,EAAsB9M,EAAM,MAAM,OACjCA,EAAM,MAAM,OAAwC,IAAI2I,CAAQ,EACjE,KACAoE,EAAc,CAAE,SAAApE,EAAU,QAASmE,GAAuB,CAAA,CAAC,EACjE7O,EAAM,SAASiP,EAAaH,EAAa7J,CAAC,CAC9C,CAEA,GAAIjF,EAAM,qBAAsB,CAC5B,MAAM4E,EAAetC,EAAsBP,EAAM,MAAM,eAAe,EACtE/B,EAAM,qBAAqB4E,CAAmB,CAClD,CAEAjC,EAAQ,aAAasM,EAAa,CAAE,SAAAvE,CAAA,EAAmBzF,CAAC,EACxDtC,EAAQ,yBAAyBL,EAAsBP,EAAM,MAAM,eAAe,CAAQ,CAC9F,EAEMiO,GAAiB,CAACnP,EAAc4B,EAAewC,IAAkB,CACnE,MAAM+I,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ4B,CAAK,EAAI,CAAA,EAMlE,GALIuL,EAAe,SACfA,EAAe,QAAQ/I,CAAC,EAIxBjF,EAAM,kBAAoBA,EAAM,kBAAmB,CACnD,MAAMO,EAAMmC,EAAa7B,EAAQ4B,CAAK,EACtCwN,GAAgB1P,EAAKM,EAAQoE,CAAC,CAClC,CACJ,EAEMiL,GAAuB,CAACrP,EAAcoE,IAAkB,OAC1D,MAAM+I,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ,CAAC,EAAI,CAAA,EAC1DmN,EAAe,eACfA,EAAe,cAAc/I,CAAC,GAElCzE,EAAAmC,EAAQ,uBAAR,MAAAnC,EAAA,KAAAmC,EAA+B9B,EAAQoE,EAC3C,EAEMkL,GAAsB,CAACtP,EAAcoE,IAAkB,OACzD,MAAM1E,EAAMmC,EAAa7B,EAAQ,CAAC,EAClC8B,EAAQ,iBAAiBpC,CAAG,EAE5B,MAAMyN,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ,CAAC,EAAI,CAAA,EAC1DmN,EAAe,cACfA,EAAe,aAAa/I,CAAC,GAEjCzE,EAAAmC,EAAQ,sBAAR,MAAAnC,EAAA,KAAAmC,EAA8B9B,EAAQoE,EAC1C,EAEMmL,GAAsB,CAACvP,EAAcoE,IAAkB,OACzDtC,EAAQ,iBAAiB,IAAI,EAE7B,MAAMqL,EAAiBhO,EAAM,MAAQA,EAAM,MAAMa,EAAQ,CAAC,EAAI,CAAA,EAC1DmN,EAAe,cACfA,EAAe,aAAa/I,CAAC,GAEjCzE,EAAAmC,EAAQ,sBAAR,MAAAnC,EAAA,KAAAmC,EAA8B9B,EAAQoE,EAC1C,EAEMoL,GAAoB,CAAClK,EAAqBlB,IAAkB,CACzDkB,EAAO,SAGZlB,EAAE,gBAAA,EACE,CAAAhD,IAGJA,EAAgB,GAChB,eAAeC,EAAa,EAC5B6D,EAAW,WAAWI,EAAQlB,CAAC,GACnC,EAEMqL,GAAqB,CAACnK,EAAqBoK,IAAc,CAC3D,MAAMvG,EAAY7D,EAAO,WAAaA,EAAO,IACzC6D,GACAjE,EAAW,mBAAmBiE,EAAqBuG,CAAI,CAE/D,EAEMC,GAAoC,CAACrK,EAAqBsK,IAAqB,CAC7EtK,EAAO,+BACPA,EAAO,8BAA8BsK,CAAO,EAEhD9N,EAAQ,kCAAkC8N,EAAStK,EAAO,WAAa,EAAE,CAC7E,EAEMuK,GAAqB,CAACvK,EAAqBlF,IAAqB,CAClE,GAAI,CAAC0P,EAAAA,YAAYxK,CAAM,EACnB,MAAO,GAEX,MAAMX,EAAS7C,EAAQ,cAAcrC,EAAe,KAAK,GAAK,CAAA,EAC9D,OAAO,KAAK,MAAMsQ,EAAAA,SAASpL,EAAQ,EAAGvE,CAAQ,CAAC,CACnD,EAEM4P,GAAsB,CAAC1K,EAAqBlF,IAAqB,CACnE,GAAI,CAAC6P,EAAAA,aAAa3K,CAAM,EACpB,MAAO,GAEX,MAAMX,EAAS7C,EAAQ,cAAcrC,EAAe,KAAK,GAAK,CAAA,EAC9D,OAAO,KAAK,MAAMsQ,EAAAA,SAASpL,EAAQvE,EAAW,CAAC,CAAC,CACpD,EAIA,IAAI8P,GAAqC,KACrCC,EAAyC,KAE7C,MAAMC,EAAgCC,GAAiC,CACnE,MAAMC,EAAKrP,GAAQ,MACnB,GAAI,CAACqP,EACD,OAEJ,KAAM,CAAE,MAAOC,CAAA,EAAM/P,EACfgQ,EAAc,CAChB,GAAGD,CAAC,wBACJ,GAAGA,CAAC,0BACJ,GAAGA,CAAC,wBACJ,GAAGA,CAAC,wBAAA,EAER,GAAIF,IAAa,OAAQ,CACrB,MAAMI,EAAS,CAAC,GAAGF,CAAC,wBAAyB,GAAGA,CAAC,wBAAwB,EACzED,EAAG,UAAU,OAAO,GAAGE,EAAY,OAAQE,GAAM,CAACD,EAAO,SAASC,CAAC,CAAC,CAAC,EACrEJ,EAAG,UAAU,IAAI,GAAGG,CAAM,EAC1B,MACJ,CACA,MAAMA,EAAS,CAAC,GAAGF,CAAC,oBAAoBF,CAAQ,EAAE,EAClDC,EAAG,UAAU,OAAO,GAAGE,EAAY,OAAQE,GAAM,CAACD,EAAO,SAASC,CAAC,CAAC,CAAC,EACrEJ,EAAG,UAAU,IAAI,GAAGG,CAAM,CAC9B,EAEME,EAA6B,IAAM,OAErC,MAAMC,EACFzR,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACzCqB,EAAmB,MAAM,aACzBF,EAAY,MACtB,GAAI8P,GAAQA,EAAK,UAAYA,EAAK,SAAS,OAAQ,CAC/C,MAAMC,EAAeD,EAAK,aAAe,EAEnCE,EAAUF,EAAK,SAAS,CAAC,EACzBG,EACF,KAAK,IAAIH,EAAK,UAAU,EAAI,GAAKE,EAAQ,sBAAA,EAAwB,MAAQF,EAAK,wBAAwB,MAEtGR,EADAS,GAAgBE,EACa,OACtBF,EACsB,OACtBE,EACsB,QAEA,QANM,CAQ3C,CACJ,EAEMC,GAAqC,IAAM,CACzCd,IAAuB,OAG3BA,GAAsB,OAAO,sBAAsB,IAAM,CACrDA,GAAsB,KACtBS,EAAA,CACJ,CAAC,EACL,EAIMM,EAAmD,IAAM,CACvDd,GAA2B,MAC3B,OAAO,aAAaA,CAAuB,EAE/CA,EAA0B,OAAO,WAAW,IAAM,CAC9CA,EAA0B,KAC1Ba,GAAA,CACJ,EAAG,EAAE,CACT,EAEME,GAAsB,GAAa,OACrC,MAAMC,EAAS,EAAE,OACjB,GAAIA,IAAW,EAAE,cACb,OAEJ,MAAMC,EAAWD,EAAO,WAElBE,EACFlS,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACzCqB,EAAmB,MAAM,aACzBF,EAAY,MAClBuQ,GAAQA,EAAK,aAAeD,IAC5BC,EAAK,WAAaD,GAEtBH,EAAA,CACJ,EAEMK,GAAoB,GAAa,CACnC,MAAMH,EAAS,EAAE,OAGjB,GAAI,CAAChS,EAAM,aAAegS,IAAW,EAAE,cACnC,OAEJ,MAAMC,EAAWD,EAAO,WACpBpQ,EAAc,OAASA,EAAc,MAAM,aAAeqQ,IAC1DrQ,EAAc,MAAM,WAAaqQ,GAGrCH,EAAA,CACJ,EAEA,IAAIM,GAAgB,EACpB,MAAMC,GAAS,IAAM,OAAO,UAAU,UAAU,MAAM,cAAc,EAG9DC,GAAyB,IAA0B,OACrD,OAAItS,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACxCqB,EAAmB,MAAM,aAE7BF,EAAY,KACvB,EAGM4Q,GAAyB,GAAkB,CAC7C,KAAM,CAAE,OAAAjN,EAAS,CAAA,CAAC,EAAMtF,EAClBkS,EAAOI,GAAA,EAGb,GAAIlM,EAAe,QAAU,EAAE,SAAW,GAAK,EAAE,WAAa8L,EAAM,CAEhE,MAAMM,EAAK,EAAE,SAAW,EAAI,EAAE,OAAS,EAAE,OACnCC,EAAU,KAAK,IAAI,EAAGP,EAAK,YAAcA,EAAK,WAAW,EACzDD,EAAW,KAAK,IAAIQ,EAAS,KAAK,IAAI,EAAGP,EAAK,WAAaM,CAAE,CAAC,EAEpE,EAAE,eAAA,EACFN,EAAK,WAAaD,EAClBH,EAAA,EACA,MACJ,CAEA,GAAIO,GAAA,GAAY/M,EAAO,EAAG,CACtB,EAAE,eAAA,EACF,MAAMoN,EAAK,EAAE,OACP,CAAE,OAAAV,GAAW,EACbW,EAAYT,EAElB,IAAIU,EAAY,EAEZR,GACAQ,EAAYR,GAAgBM,EAE5BE,EAAYF,EAGZC,GAAaX,IAAWW,IACxBA,EAAU,UAAYC,GAE1BR,GAAgBQ,CACpB,CACJ,EAIMC,GAAsB/N,GAAmB,CACtCsB,EAAe,OAIpB0L,EAAA,CACJ,EAEA,IAAIgB,EAA+C,KAEnD,MAAMC,GAAwB,IAAM,OAEhC,MAAMb,EACFlS,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACzCqB,EAAmB,MAAM,aACzBF,EAAY,MACtB,GAAI,CAACuQ,EACD,OAEJ,KAAM,CAAE,OAAA5M,EAAS,CAAA,CAAC,EAAMtF,EAElBgT,EAAmB,GAAQX,GAAA,GAAY/M,EAAO,GAC9C2N,EAAUD,EAAmBT,GAAwBM,GAC3DX,EAAK,iBAAiB,QAASe,EAAS,CAAE,QAAS,CAACD,EAAkB,EACtEF,EAA0B,IAAM,CAC5BZ,EAAK,oBAAoB,QAASe,CAAc,EAChDH,EAA0B,IAC9B,CACJ,EAEMI,GAAqB,CAAC/M,EAAqBrB,IAA0B,CAEvE,MAAMqO,EAAiBpR,EAAM,MAAM,QAAQ,IAAKgC,GACvCA,EAAE,KAAOA,EAAE,MAAQoC,EAAO,KAASpC,EAAE,WAAaA,EAAE,YAAcoC,EAAO,UACnE,CAAE,GAAGpC,EAAG,MAAOe,EAAG,KAAA,EAEtBf,CACV,EAMD,GAAI,CAHkBoP,EAAe,KAChCpP,GAAOA,EAAE,KAAOA,EAAE,MAAQoC,EAAO,KAASpC,EAAE,WAAaA,EAAE,YAAcoC,EAAO,SAAA,EAEjE,CAChB,MAAMiN,EAAW,CACb,GAAGjN,EACH,MAAOrB,EAAG,KAAA,EAEdqO,EAAe,KAAKC,CAAQ,CAChC,CAMA,GAHAzQ,EAAQ,WAAWwQ,CAAc,EAG7BnT,EAAM,SAAU,CAChB,MAAMyE,EAAa,CACf,QAAS,CAAA,EACT,OAAQ,OACR,WAAY2F,EAAiB,MAC7B,MAAO,CAAE,WAAY,QAAA,CAAkB,EAE3CpK,EAAM,SAASyE,CAAiB,CACpC,CACJ,EAEMwL,GAAkB,CAAC1P,EAAsBM,EAAcoE,IAAkB,CAC3E,MAAM1C,EAAkB,CAAC,GAAGR,EAAM,MAAM,eAAe,EACjDU,EAAQF,EAAgB,QAAQhC,CAAG,EAErCkC,EAAQ,GACRF,EAAgB,OAAOE,EAAO,CAAC,EAE/BF,EAAgB,KAAKhC,CAAG,EAG5BwB,EAAM,MAAM,gBAAkBQ,EAE1BvC,EAAM,UACNA,EAAM,SAAS,EAAEyC,EAAQ,IAAK5B,EAAQoE,CAAC,EAGvCjF,EAAM,sBACNA,EAAM,qBAAqBsC,EAAsBC,CAAe,CAAQ,EAG5EI,EAAQ,aAAa,EAAEF,EAAQ,IAAK5B,EAAQoE,CAAC,EAC7CtC,EAAQ,yBAAyBL,EAAsBC,CAAe,CAAQ,CAClF,EAEM8Q,GAAiBxO,GAAkB,CACrC,GAAI7E,EAAM,WACN,OAAOA,EAAM,UAGrB,EAEMsT,EAAmBzS,GAAiB,CACtC,MAAM0S,EAAuB,OAAOvT,EAAM,mBAAsB,WAC1DwT,EAAmB,OAAOxT,EAAM,eAAkB,WAClDyT,EAAc3S,GAAgBD,CAAa,EAC3C6S,EAAyBF,GAAoBxT,EAAM,cAAea,CAAM,EAG9E,OACM0S,GAAwBE,KAHA,CAACD,GAAoBE,IAI9C,EAAEH,GAAwBE,IAAgBC,CAEnD,EAEMC,GAAmB,CAAC9S,EAAc+S,EAAW,KAAU,CACzD,GAAI5T,EAAM,iBACN,OAAOA,EAAM,iBAAiBa,EAAQ+S,CAAQ,EAGlD,GAAI,CAACN,EAAgBzS,CAAM,EACvB,MAAO,IAAM,KAGjB,MAAMN,EAAMmC,EAAa7B,EAAQ,CAAC,EAC5B6D,EAAWwJ,EAAcrN,CAAM,EAErC,MAAO,IACI0O,EAAAA,EAAEM,GAAAA,QAAkB,CACvB,SAAAnL,EACA,cAAe1E,EAAM,oBAAsB4T,EAAW,OAAS,SAC/D,WAAYP,GAAoB,EAChC,UAAWhS,EAAU,MACrB,QAAS,CAACyO,EAAqB7K,IAAkBgL,GAAgB1P,EAAKM,EAAQoE,CAAC,CAAA,CAClF,CAET,EAEM4O,GAAuBC,GAKvB,CAGN,EAIMC,GAAc5T,EAAAA,SAAS,IACrB,OAAOH,EAAM,OAAU,WAChB,IAAMA,EAAM,MAAM6L,EAAS,KAAK,EAEpC,IAAM7L,EAAM,KACtB,EAEKgU,GAAe7T,EAAAA,SAAS,IAAM,CAChC,GAAI,CAACH,EAAM,OACP,OAAO,KAEX,IAAIiU,EAASjU,EAAM,OAKnB,OAJI,OAAOiU,GAAW,aAClBA,EAASA,EAAOpI,EAAS,KAAK,GAG9B,OAAOoI,GAAW,UAAYC,EAAAA,QAAQD,CAAM,EACrC,IAAM1E,EAAAA,EAAE,MAAO,CAAE,MAAO,GAAGlO,EAAU,KAAK,UAAW,cAAe,QAAA,EAAY4S,CAAM,EAE1F,IACX,CAAC,EAID5J,EAAAA,MACI,IAAMrK,EAAM,WACZ,IAAM,CACE+F,GACAA,EAAW,KAAA,CAEnB,EACA,CAAE,UAAW,EAAA,CAAM,EAGvBsE,EAAAA,MACI,IAAMrK,EAAM,QACZ,IAAM,CAEF,MAAM6D,EAAUyC,GAAgB,uCAAuC,CAAC,GAAGhG,EAAe,KAAK,CAAC,EAChGqC,EAAQ,WAAWkB,CAAO,EACtBkC,GACAA,EAAW,KAAA,CAEnB,EACA,CAAE,UAAW,EAAA,CAAK,EAMtB,IAAIoO,EAAwC,KAE5C,MAAMC,GAAoB,IAAM,OAE5B,MAAMC,EACFrU,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACzCqB,EAAmB,MAAM,aACzBF,EAAY,MAEtB,GAAI,CAAC0S,EACD,OAGJ,MAAMC,EAAqB,IAAM,CAC7B,GAAI,CAACD,EACD,OAEJ,KAAM,CAAE,YAAAE,EAAa,YAAAC,CAAA,EAAgBH,EAC/BrO,EAAmBwO,EAAcD,EACvC5R,EAAQ,oBAAoBqD,CAAgB,EAC5CwL,EAAA,CACJ,EAGMiD,EAAiB,IAAM,CACzB,MAAMC,EAAS,IAAMJ,EAAA,GACS,OAAO,uBAAyB,OAAO,YAC/CI,CAAM,CAChC,EAGI,OAAO,iBACHP,IACAA,EAAe,UAAUE,CAAW,EACpCF,EAAiB,MAErBA,EAAiB,IAAI,eAAeM,CAAc,EAClDN,EAAe,QAAQE,CAAW,GAItCC,EAAA,CACJ,EAGAjK,EAAAA,MACI,IAAMxI,EAAmB,MACxB8S,GAAW,CACJA,GAAU3U,EAAM,uBAAyBA,EAAM,aAE/CA,EAAM,sBAAsB2U,CAAM,CAE1C,EACA,CAAE,UAAW,EAAA,CAAK,EAItBC,EAAAA,UAAU,IAAM,CACZ,MAAM/Q,EAAUyC,GAAgB,uCAAuC,CAAC,GAAGhG,EAAe,KAAK,CAAC,EAChGqC,EAAQ,WAAWkB,CAAO,EACtBkC,IACAA,EAAW,KAAA,GAIP/F,EAAM,sBACNA,EAAM,eACNA,EAAM,2BACNA,EAAM,qBAEN4K,EAAAA,SAAS,IAAM,CACX7E,EAAW,oBAAoB,CAAE,OAAQhE,EAAM,MAAM,OAAQ,CACjE,CAAC,GAIT6I,EAAAA,SAAS,IAAM,OACX4G,EAAA,EAEAuB,GAAA,GAEIvS,EAAAR,EAAM,SAAN,MAAAQ,EAAc,GACd4T,GAAA,EAGAvS,EAAmB,OAAS7B,EAAM,uBAAyBA,EAAM,aACjEA,EAAM,sBAAsB6B,EAAmB,KAAK,CAE5D,CAAC,CACL,CAAC,EAEDwI,EAAAA,MACI,IAAA,OAAM,OAAA7J,EAAAR,EAAM,SAAN,YAAAQ,EAAc,GACpB,CAACoG,EAAGiO,IAAU,CACNjO,GAAKA,IAAMiO,GACXjK,EAAAA,SAAS,IAAM,CACXwJ,GAAA,CACJ,CAAC,CAET,CAAA,EAGJ,MAAMU,GAAqB,IAAM,CAC7BtD,EAAA,CACJ,EAEAoD,OAAAA,EAAAA,UAAU,IAAM,CACZ,OAAO,iBAAiB,SAAUE,EAAkB,CACxD,CAAC,EAEDC,EAAAA,YAAY,IAAM,OACd,OAAO,oBAAoB,SAAUD,EAAkB,EAEvD,MAAMT,EACFrU,EAAM,eAAeQ,EAAAqB,EAAmB,QAAnB,MAAArB,EAA0B,cACzCqB,EAAmB,MAAM,aACzBF,EAAY,MAClBwS,GAAkBE,IAClBF,EAAe,UAAUE,CAAW,EACpCF,EAAiB,MAErBrB,GAAA,MAAAA,GACJ,CAAC,EA4GDkC,GAAa,CACT,mBA1GuB,IAAM,CAC7B,MAAMC,EAAgF,CAAA,EACtF,OAAIpJ,EAAS,QACToJ,EAAO,WAAapJ,EAAS,OAE7B9J,EAAM,MAAM,SACZkT,EAAO,OAASlT,EAAM,MAAM,QAEzBmT,EAAAA,UAAUD,CAAM,CAC3B,EAkGI,aA7FiB,IAAM,CACvBtS,EAAQ,aAAA,CACZ,EA4FI,gBApFqBwS,GAA0C,OAC/D,MAAMC,EAAaD,KAAW3U,EAAAuB,EAAM,MAAM,eAAZ,YAAAvB,EAA0B,kBAAmB,CAAA,EAC3E,GAAI,CAAC4U,GAAcA,EAAW,SAAW,EACrC,MAAO,CAAA,EAEX,MAAM5S,EAAS,IAAI,IAAI4S,CAAU,EACjC,IAAIC,EAEJA,EAAoB1S,EAAQ,kCAAA,GAAuC,CAAA,GAC/D,CAAC0S,GAAqBA,EAAkB,SAAW,KACnDA,EAAoBxJ,EAAS,OAAS,CAAA,IAEtC,CAACwJ,GAAqBA,EAAkB,SAAW,KACnDA,EAAoBrV,EAAM,YAAc,CAAA,GAG5C,MAAMgF,EAAuB,CAAA,EAMvBsQ,EAAY/E,GAAuB,CACrC,GAAI,GAAC,MAAM,QAAQA,CAAI,GAAKA,EAAK,SAAW,GAG5C,WAAW1P,KAAU0P,EAAM,CACvB,MAAMhQ,EAAMmC,EAAa7B,EAAQ,CAAC,EAC9B2B,EAAO,IAAIjC,CAAG,GACdyE,EAAa,KAAKnE,CAAM,CAEhC,CAGA,GAAImE,EAAa,OAASoQ,EAAW,OAAQ,CACzC,MAAM1U,EAAqBV,EAAM,oBAAsB,WACvD,UAAWa,KAAU0P,EAAM,CACvB,MAAMpI,EAAW1E,EAAAA,IAAI5C,EAAQH,CAAkB,EAC3C,MAAM,QAAQyH,CAAQ,GAAKA,EAAS,OAAS,GAC7CmN,EAASnN,CAAQ,CAEzB,CACJ,EACJ,EAEA,OAAAmN,EAASD,CAAiB,EACnBH,EAAAA,UAAUlQ,CAAY,CACjC,EAsCI,cAhCkB,IAA2B,CAE7C,MAAMuQ,EAAgB5S,EAAQ,+BAAA,EAC9B,GAAI4S,GAAiBA,EAAc,OAAS,EACxC,MAAO,CAAC,GAAGA,CAAa,EAG5B,GAAIxT,EAAM,MAAM,YAAcA,EAAM,MAAM,WAAW,OAAS,EAC1D,MAAO,CAAC,GAAGA,EAAM,MAAM,UAAU,EAGrC,MAAMmB,EAAalD,EAAM,YAAc,CAAA,EACjCwV,EAA4B,CAAA,EAC5BC,EAAelF,GAAiB,CAClC,UAAW1P,KAAU0P,EAAM,CACvB,MAAMhQ,EAAMmC,EAAa7B,EAAQ,CAAC,EAClC2U,EAAK,KAAKjV,CAAG,EACb,MAAMG,EAAqBV,EAAM,oBAAsB,WACjDmI,EAAW1E,EAAAA,IAAI5C,EAAQH,CAAkB,EAC3C,MAAM,QAAQyH,CAAQ,GAAKA,EAAS,OAAS,GAC7CsN,EAAYtN,CAAQ,CAE5B,CACJ,EACA,OAAAsN,EAAYvS,CAAU,EACfsS,CACX,CAMI,CACH,UA5hFGE,YAAA,EAAAC,qBAqQM,MArQNC,EAAAA,WAqQM,CArQA,MAAOrP,GAAA,MAAa,MAAOE,GAAA,MAAe,oBAAmBO,EAAA,KAAA,EAAwB6O,EAAAA,MAAAzT,EAAA,EAAA,CAAW,EAAA,CAClG0T,cAmQOD,EAAAA,MAAAE,GAAAA,OAAA,EAAA,CAnQA,SAAU/V,EAAM,QAAS,KAAK,OAAA,qBACjC,IAiQM,CAjQNgW,EAAAA,mBAiQM,MAAA,SAjQG,UAAJ,IAAIlU,GAAW,uBAAO6E,GAAA,KAAO,CAAA,GACdqG,GAAA,QAAmBU,EAAA,QAAkB,OAAcA,EAAA,QAAkB,uBAArFiI,EAAAA,mBAiBWM,EAAAA,SAAA,CAAA,IAAA,GAAA,CAhBiC1I,EAAA,OAAxCmI,YAAA,EAAAQ,EAAAA,YAA4DC,EAAAA,wBAA5C5I,EAAA,KAAgB,EAAA,CAAA,IAAA,CAAA,CAAA,GACLL,EAAA,qBAA3BgJ,EAAAA,YAciBE,UAAA,OAd2B,iBAAe,OAAA,GAC5C,QAAOC,EAAAA,QACd,CAUM,CAXY,OAAA5I,KAAM,CACxBuI,EAAAA,mBAUM,MAAA,CAVA,0BAAU3U,EAAA,KAAS,mBAAA,CAAA,GACTmM,EAAkBC,CAAM,iBAApCkI,EAAAA,mBAEO,OAAA,OAFiC,0BAAUtU,EAAA,KAAS,kBAAA,CAAA,EACpDiV,EAAAA,gBAAA9I,EAAkBC,CAAM,CAAA,EAAA,CAAA,+BAE/BuI,EAAAA,mBAKO,OAAA,CALA,0BAAU3U,EAAA,KAAS,qBAAA,CAAA,GAEZ6L,EAAA,OAAmBA,EAAA,MAAgB,MAAK,GADlDwI,EAAAA,YAAAQ,EAAAA,YAGEL,EAAAA,wDADU3I,EAAA,KAAe,CAAA,EAAA,KAAA,EAAA,8GAOpClN,EAAM,qBAAjB2V,EAAAA,mBAEM,MAAA,OAFmB,0BAAUtU,EAAA,KAAS,QAAA,CAAA,IACxCqU,EAAAA,YAAAQ,EAAAA,YAA+BC,EAAAA,wBAAfpC,GAAA,KAAW,CAAA,EAAA,kCAE/BiC,EAAAA,mBAuNM,MAAA,CAvNA,uBAAOnP,GAAA,KAAe,EAAG,uBAAOC,GAAA,KAAiB,CAAA,GAEzCV,EAAA,OAAkBgB,GAAA,qBAD5BuO,EAAAA,mBA6BM,MAAA,eA3BE,gBAAJ,IAAI/T,EACH,uBAAOsF,GAAA,KAAS,EAChB,uBAAOM,IAAc,EACrB,SAAQuK,EAAA,GAETiE,EAAAA,mBAqBQ,QAAA,CArBA,uBAAO/O,GAAA,KAAQ,EAAG,uBAAOI,GAAA,KAAgB,EAAE,KAAK,MAAA,GACpD2O,EAAAA,mBAOW,WAAA,CAPA,0BAAU3U,EAAA,KAAS,WAAA,CAAA,IAC1BqU,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAKEM,WAAA,KAAAM,EAAAA,WAJ4BjW,EAAA,MAAc,CAAhC6F,EAAQ1D,mBADpBkT,EAAAA,mBAKE,MAAA,CAHG,IAAKlT,EACL,0BAAUpB,EAAA,KAAS,MAAA,EACnB,MAAKmV,EAAAA,eAAE7I,GAAexH,CAAM,CAAA,CAAA,sBAGrC2P,EAAAA,YAWEW,GAAAA,QAAA,CAVG,QAASnW,EAAA,MACT,WAAYN,EAAM,WAClB,aAAYqB,EAAA,MACZ,gBAAerB,EAAM,YACrB,wBAAuBmK,GAAA,MACvB,wBAAuB0L,EAAAA,MAAAnG,EAAA,EACvB,kBAAiBW,GACjB,mBAAkBC,GAClB,oCAAmCE,GACnC,YAAW0C,EAAA,sJAKdlT,EAAM,2BADhBkW,EAAAA,YAyCkBQ,GAAAA,QAAA,eAvCV,qBAAJ,IAAI7U,EACH,cAAa+J,GAAA,MACb,QAAStL,EAAA,MACT,YAAaN,EAAM,YACnB,OAAQA,EAAM,OACd,aAAYqB,EAAA,MACZ,KAAMrB,EAAM,KACZ,YAAW8J,GAAA,MACX,qBAAoBqI,GACpB,UAASnS,EAAM,OACf,WAAYA,EAAM,WAClB,oBAAmB+B,EAAA,MAAM,gBACzB,sBAAqB/B,EAAM,kBAC3B,SAAQA,EAAM,MACd,iBAAgBsT,EAChB,wBAAuBnJ,GAAA,MACvB,wBAAuBpI,EAAA,MAAM,mBAC7B,qBAAoB4R,GACpB,uBAAsB3T,EAAM,mBAC5B,sBAAqBA,EAAM,iBAC3B,MAAO6V,EAAAA,MAAAtU,EAAA,EACP,uBAAsBvB,EAAM,mBAC5B,OAAQ+B,EAAA,MAAM,OACd,uBAAsBuN,GACtB,iBAAgBtP,EAAM,aACtB,8BAA6BA,EAAM,wBACnC,kBAAiBgP,GACjB,cAAahP,EAAM,WACnB,cAAaA,EAAM,WACnB,gBAAgB6T,EAAA,GAEN,gBACP,IAAkD,CAAf7T,EAAM,qBAAzCkW,EAAAA,YAAkDC,EAAAA,wBAAlCnW,EAAM,KAAK,EAAA,CAAA,IAAA,CAAA,CAAA,kBAC3BkW,EAAAA,YAIiBE,UAAA,OAJM,iBAAe,OAAA,GACvB,QAAOC,EAAAA,QACd,CAA6D,CAD3C,OAAA5I,KAAM,CACxBqI,cAA6DD,EAAAA,MAAAc,GAAAA,OAAA,EAAA,CAArD,aAAclJ,GAAA,YAAAA,EAAgB,YAAS,MAAA,waAK/DkI,EAAAA,mBA6IM,MAAA,eA3IE,cAAJ,IAAIhU,EACH,0BAAUN,EAAA,KAAS,OAAA,EACnB,uBAAOsG,IAAY,EACnB,SAAQwK,EAAA,GAET6D,EAAAA,mBAqIQ,QAAA,CArIA,uBAAO/O,GAAA,KAAQ,EAAG,uBAAOM,GAAA,KAAc,EAAE,KAAK,MAAA,GAClDyO,EAAAA,mBAOW,WAAA,CAPA,0BAAU3U,EAAA,KAAS,WAAA,CAAA,IAC1BqU,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAKEM,WAAA,KAAAM,EAAAA,WAJ4BjW,EAAA,MAAc,CAAhC6F,EAAQ1D,mBADpBkT,EAAAA,mBAKE,MAAA,CAHG,IAAKlT,EACL,0BAAUpB,EAAA,KAAS,MAAA,EACnB,MAAKmV,EAAAA,eAAE7I,GAAexH,CAAM,CAAA,CAAA,sBAI1B,CAAAC,EAAA,OAAkBgB,GAAA,qBAD7B8O,EAAAA,YAYEO,WAAA,OAVG,QAASnW,EAAA,MACT,WAAYN,EAAM,WAClB,aAAYqB,EAAA,MACZ,gBAAerB,EAAM,YACrB,wBAAuBmK,GAAA,MACvB,wBAAuB0L,EAAAA,MAAAnG,EAAA,EACvB,kBAAiBW,GACjB,mBAAkBC,GAClB,oCAAmCE,GACnC,YAAW0C,EAAA,6IAEhB8C,EAAAA,mBA8GQ,QAAA,SA9GG,UAAJ,IAAIvU,GAAW,0BAAUJ,EAAA,KAAS,QAAA,CAAA,IACrCqU,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAkGWM,WAAA,KAAAM,EAAAA,WAjGsBpK,GAAA,MAAW,CAAhCtL,EAAQ+V,wDAC+B/V,EAAO,wBAA+E,SAAAA,EAAO,QAAQ,GAAiD6B,EAAa7B,EAAQ+V,CAAQ,CAAA,GAQxN/V,EAAO,yBADjB6U,EAAAA,UAAA,EAAAC,EAAAA,mBAsBK,KAtBLC,EAAAA,WAsBK,OApBA,MAAoDC,EAAAA,MAAArP,CAAA,EAAU,GAAInF,EAAA,KAAS,eAAA,GAAmBA,EAAA,KAAS,OAAA,CAA8D,CAAA,GAAAA,EAAA,KAAS,iBAAA,EAAoBqL,EAAgB7L,EAAO,QAAQ,CAAA,GAKjO,eAAcA,EAAO,SACrB,gBAAe+V,EAAQ,EACvB,aAAY,CAAA,EACL,CAAA,QAAA,EAAA,EAAAhI,GAAmB/N,EAAO,SAAU+V,CAAQ,EAAA,CACnD,QAAKC,GAAE1H,GAAsBtO,EAAO,SAAU+V,EAAUC,CAAM,CAAA,IAE/Db,EAAAA,mBAQK,KAAA,CARA,QAAS1V,EAAA,MAAe,OAAS,0BAAUe,EAAA,KAAS,WAAA,CAAA,GACrD2U,EAAAA,mBAMM,MAAA,CANA,0BAAU3U,EAAA,KAAS,gBAAA,CAAA,GAGXrB,EAAM,aAAU,IAF1B0V,EAAAA,UAAA,EAAAQ,cAGEC,EAAAA,wBAAA,IAFavG,GAAsB/O,EAAO,QAAQ,CAAA,EAAA,CAAA,IAAA,CAAA,CAAA,gCAGpD6U,EAAAA,UAAA,EAAAQ,EAAAA,YAA6DC,EAAAA,wBAAA,IAAvC7G,GAAmBzO,EAAO,QAAQ,CAAA,CAAA,EAAA,uBAKpE6U,EAAAA,YAAAC,EAAAA,mBAkDK,KAlDLC,aAkDK,OAhDA,MAAO7H,GAAYlN,EAAQ+V,CAAQ,EACnC,MAAOxI,GAAYvN,EAAQ+V,CAAQ,CAAA,eAC5BvI,GAAYxN,EAAQ+V,CAAQ,EAAA,CACnC,WAAO5G,GAAenP,EAAQ+V,EAAUC,CAAM,EAC9C,WAAQA,GAAE3G,GAAqBrP,EAAQgW,CAAM,EAC7C,aAAUA,GAAE1G,GAAoBtP,EAAQgW,CAAM,EAC9C,aAAUA,GAAEzG,GAAoBvP,EAAQgW,CAAM,CAAA,KAE/CnB,EAAAA,UAAA,EAAA,EAAAC,EAAAA,mBAuCYM,WAAA,KAAAM,EAAAA,WAtCqBjW,EAAA,MAAc,CAAnC6F,EAAQlF,mBADpBiV,EAAAA,YAuCYY,WAAA,CArCP,IAAK7V,EACL,OAAAJ,EACA,OAAAsF,EACA,MAAOyQ,EACP,YAAW3V,EACX,aAAYI,EAAA,MACZ,SAAUwU,EAAAA,MAAA5H,EAAA,EAAcpN,CAAM,EAC9B,SAAUqN,EAAcrN,CAAM,EAC9B,SAAUsN,GAActN,CAAM,EAC9B,OAAQG,GAAaH,EAAQI,CAAQ,EACrC,uBAAuE4U,EAAAA,MAAAkB,EAAAA,iBAAA,EAAkB5Q,CAAM,EAAI0P,EAAAA,UAAqBhV,CAAM,EAAI,OAGlI,cAAawS,GAAoB,EACjC,qBAAoBnS,GAAA,MAA0ByS,GAAmB,OACjE,WAAYL,EAAgBzS,CAAM,EAClC,uBAAsBb,EAAM,mBAC5B,0BAAyBE,GAAA,MACzB,mBAAkB2N,EAAkB1H,CAAM,EAC1C,WAAU0H,EAAkB1H,CAAM,KAAO0P,EAAAA,MAAAtU,EAAA,EAAMsM,EAAkB1H,CAAM,CAAA,EACvE,aAAYuK,GAAmBvK,EAAQlF,CAAQ,EAC/C,kBAAiB4U,EAAAA,MAAAmB,EAAAA,eAAA,EAAgB1W,EAAA,MAAgB6F,CAAM,EACvD,cAAa0K,GAAoB1K,EAAQlF,CAAQ,EACjD,oBAAmB4U,EAAAA,MAAAoB,EAAAA,iBAAA,EAAkB3W,EAAA,MAAgB6F,CAAM,CAAA,uBAGlD0H,EAAkB1H,CAAM,GAAK0P,EAAAA,UAAMhI,EAAkB1H,CAAM,CAAA,GAChE,KAAA0H,EAAkB1H,CAAM,EAEzB,GAAAkQ,EAAAA,QAF8Ba,GAAS,CAEvCC,EAAAA,WAMEC,SALSvJ,EAAkB1H,CAAM,EADnCyP,aAME,aAJUsB,GAAS,CAAA,EAAA,CAChB,KAAMpJ,GAAejN,EAAQsF,CAAM,EACnC,OAAAtF,EACA,MAAO+V,CAAA,qWAM+B1I,EAAcrN,CAAM,GAAKb,EAAM,mBAAqBsT,EAAgBzS,CAAM,iBADjI8U,EAAAA,mBAaK,KAAA,OATA,MAAK0B,EAAAA,eAAExB,EAAAA,MAAArP,CAAA,EAAU,GAAInF,EAAA,KAAS,iBAAkBA,EAAA,KAAS,MAAA,CAAA,CAAA,GAE1D2U,EAAAA,mBAMK,KAAA,CANA,QAAS1V,EAAA,MAAe,OAAS,0BAAUe,EAAA,KAAS,WAAA,CAAA,GACrD2U,EAAAA,mBAIM,MAAA,CAJA,0BAAU3U,EAAA,KAAS,eAAA,CAAA,IACrBqU,YAAA,EAAAQ,cAEEC,EAAAA,4BADanW,EAAM,kBAAkBa,EAAQ+V,EAAQ,EAAA,CAAA,CAAA,EAAA,4DAM5D/K,EAAA,OAAYA,EAAA,MAAS,SAAM,iBAAtC8J,qBASK,KAAA2B,GAAA,CARDtB,EAAAA,mBAOK,KAAA,CAPA,QAAS1V,EAAA,MAAe,OAAS,0BAAUe,EAAA,KAAS,QAAA,CAAA,GAClBrB,EAAM,qBAAzCkW,EAAAA,YAAkDC,EAAAA,wBAAlCnW,EAAM,KAAK,EAAA,CAAA,IAAA,CAAA,CAAA,kBAC3BkW,EAAAA,YAIiBE,UAAA,OAJM,iBAAe,OAAA,GACvB,QAAOC,EAAAA,QACd,CAA6D,CAD3C,OAAA5I,KAAM,CACxBqI,cAA6DD,EAAAA,MAAAc,GAAAA,OAAA,EAAA,CAArD,aAAclJ,GAAA,YAAAA,EAAgB,YAAS,MAAA,4FAS3CuG,GAAA,OAApC0B,EAAAA,UAAA,EAAAQ,EAAAA,YAAoDC,EAAAA,wBAApCnC,GAAA,KAAY,EAAA,CAAA,IAAA,CAAA,CAAA,+BACZhH,GAAA,QAAmBU,EAAA,QAAkB,UAAiBA,EAAA,QAAkB,uBAAxFiI,EAAAA,mBAiBWM,EAAAA,SAAA,CAAA,IAAA,GAAA,CAhBiC1I,EAAA,OAAxCmI,YAAA,EAAAQ,EAAAA,YAA4DC,EAAAA,wBAA5C5I,EAAA,KAAgB,EAAA,CAAA,IAAA,CAAA,CAAA,GACLL,EAAA,qBAA3BgJ,EAAAA,YAciBE,UAAA,OAd2B,iBAAe,OAAA,GAC5C,QAAOC,EAAAA,QACd,CAUM,CAXY,OAAA5I,KAAM,CACxBuI,EAAAA,mBAUM,MAAA,CAVA,0BAAU3U,EAAA,KAAS,mBAAA,CAAA,GACTmM,EAAkBC,CAAM,iBAApCkI,EAAAA,mBAEO,OAAA,OAFiC,0BAAUtU,EAAA,KAAS,kBAAA,CAAA,EACpDiV,EAAAA,gBAAA9I,EAAkBC,CAAM,CAAA,EAAA,CAAA,+BAE/BuI,EAAAA,mBAKO,OAAA,CALA,0BAAU3U,EAAA,KAAS,qBAAA,CAAA,GAEZ6L,EAAA,OAAmBA,EAAA,MAAgB,MAAK,GADlDwI,EAAAA,YAAAQ,EAAAA,YAGEL,EAAAA,wDADU3I,EAAA,KAAe,CAAA,EAAA,KAAA,EAAA"}
|
|
1
|
+
{"version":3,"file":"Table.vue.cjs","sources":["../../../../src/components/table/Table.vue"],"sourcesContent":["<template>\n <div :class=\"wrapperCls\" :style=\"wrapperStyle\" :data-column-fixed=\"anyColumnFixed\" v-bind=\"getDataAttr()\">\n <Spin :spinning=\"props.loading\" size=\"large\">\n <div ref=\"wrapRef\" :class=\"wrapCls\">\n <template v-if=\"showPagination && (paginationPosition === 'top' || paginationPosition === 'both')\">\n <component :is=\"renderPagination\" v-if=\"renderPagination\" />\n <LocaleConsumer v-else-if=\"paginationProps\" component-name=\"Table\">\n <template #default=\"{ locale }\">\n <div :class=\"`${prefixCls}-pagination-outer`\">\n <span v-if=\"getPaginationInfo(locale)\" :class=\"`${prefixCls}-pagination-info`\">\n {{ getPaginationInfo(locale) }}\n </span>\n <span :class=\"`${prefixCls}-pagination-wrapper`\">\n <Pagination\n v-if=\"paginationProps && paginationProps.total > 0\"\n v-bind=\"paginationProps\"\n />\n </span>\n </div>\n </template>\n </LocaleConsumer>\n </template>\n <div v-if=\"props.title\" :class=\"`${prefixCls}-title`\">\n <component :is=\"renderTitle\" />\n </div>\n <div :class=\"tableWrapperCls\" :style=\"tableWrapperStyle\">\n <div\n v-if=\"useFixedHeader && showHeader\"\n ref=\"headerWrapRef\"\n :class=\"headerCls\"\n :style=\"getHeaderStyle()\"\n @scroll=\"handleHeaderScroll\"\n >\n <table :class=\"tableCls\" :style=\"headerTableStyle\" role=\"grid\">\n <colgroup :class=\"`${prefixCls}-colgroup`\">\n <col\n v-for=\"(column, index) in flattenColumns\"\n :key=\"index\"\n :class=\"`${prefixCls}-col`\"\n :style=\"getColumnStyle(column)\"\n />\n </colgroup>\n <TableHeader\n :columns=\"flattenColumns\"\n :components=\"props.components\"\n :prefix-cls=\"prefixCls\"\n :on-header-row=\"props.onHeaderRow\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :title-selection-props=\"titleSelectionProps\"\n :on-sorter-click=\"handleSorterClick\"\n :on-filter-select=\"handleFilterSelect\"\n :on-filter-dropdown-visible-change=\"handleFilterDropdownVisibleChange\"\n :on-resize=\"handleColumnResize\"\n />\n </table>\n </div>\n <VirtualizedBody\n v-if=\"props.virtualized\"\n ref=\"virtualizedBodyRef\"\n :data-source=\"sortedData\"\n :columns=\"flattenColumns\"\n :virtualized=\"props.virtualized\"\n :scroll=\"props.scroll\"\n :prefix-cls=\"prefixCls\"\n :size=\"props.size\"\n :on-scroll=\"virtualizedOnScroll\"\n :handle-body-scroll=\"handleBodyScroll\"\n :row-key=\"props.rowKey\"\n :components=\"props.components\"\n :expanded-row-keys=\"state.expandedRowKeys\"\n :expanded-row-render=\"props.expandedRowRender\"\n :on-row=\"props.onRow\"\n :row-expandable=\"isRowExpandable\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :disabled-row-keys-set=\"state.disabledRowKeysSet\"\n :render-expand-icon=\"renderExpandIcon\"\n :hide-expanded-column=\"props.hideExpandedColumn\"\n :expand-row-by-click=\"props.expandRowByClick\"\n :slots=\"slots\"\n :children-record-name=\"props.childrenRecordName\"\n :groups=\"state.groups\"\n :render-group-section=\"renderGroupSection\"\n :on-grouped-row=\"props.onGroupedRow\"\n :click-grouped-row-to-expand=\"props.clickGroupedRowToExpand\"\n :on-group-expand=\"handleGroupRowExpanded\"\n :indent-size=\"props.indentSize\"\n :expand-icon=\"props.expandIcon\"\n @items-rendered=\"handleItemsRendered\"\n >\n <template #empty>\n <component :is=\"props.empty\" v-if=\"props.empty\" />\n <LocaleConsumer v-else component-name=\"Table\">\n <template #default=\"{ locale }\">\n <Empty :description=\"(locale as any)?.emptyText || '暂无数据'\" />\n </template>\n </LocaleConsumer>\n </template>\n </VirtualizedBody>\n <div\n v-else\n ref=\"bodyWrapRef\"\n :class=\"`${prefixCls}-body`\"\n :style=\"getBodyStyle()\"\n @scroll=\"handleBodyScroll\"\n >\n <table :class=\"tableCls\" :style=\"bodyTableStyle\" role=\"grid\">\n <colgroup :class=\"`${prefixCls}-colgroup`\">\n <col\n v-for=\"(column, index) in flattenColumns\"\n :key=\"index\"\n :class=\"`${prefixCls}-col`\"\n :style=\"getColumnStyle(column)\"\n />\n </colgroup>\n <TableHeader\n v-if=\"!useFixedHeader && showHeader\"\n :columns=\"flattenColumns\"\n :components=\"props.components\"\n :prefix-cls=\"prefixCls\"\n :on-header-row=\"props.onHeaderRow\"\n :selected-row-keys-set=\"selectedRowKeysSet\"\n :title-selection-props=\"titleSelectionProps\"\n :on-sorter-click=\"handleSorterClick\"\n :on-filter-select=\"handleFilterSelect\"\n :on-filter-dropdown-visible-change=\"handleFilterDropdownVisibleChange\"\n :on-resize=\"handleColumnResize\"\n />\n <tbody ref=\"bodyRef\" :class=\"`${prefixCls}-tbody`\">\n <template\n v-for=\"(record, rowIndex) in displayData\"\n :key=\"\n record.__semiTableGroupSection\n ? `group-${record.groupKey}`\n : getRecordKey(record, rowIndex)\n \"\n >\n <!-- 分组行 -->\n <tr\n v-if=\"record.__semiTableGroupSection\"\n :class=\"\n classnames(`${prefixCls}-row-section`, `${prefixCls}-row`, {\n [`${prefixCls}-row-section-on`]: isGroupExpanded(record.groupKey),\n })\n \"\n :data-row-key=\"record.groupKey\"\n :aria-rowindex=\"rowIndex + 1\"\n :aria-level=\"1\"\n v-bind=\"getGroupedRowProps(record.groupKey, rowIndex)\"\n @click=\"handleGroupedRowClick(record.groupKey, rowIndex, $event)\"\n >\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-row-cell`\">\n <div :class=\"`${prefixCls}-section-inner`\">\n <component\n :is=\"() => renderGroupExpandIcon(record.groupKey)\"\n v-if=\"props.expandIcon !== false\"\n />\n <component :is=\"() => renderGroupSection(record.groupKey)\" />\n </div>\n </td>\n </tr>\n <!-- 普通数据行 -->\n <tr\n v-else\n :class=\"getRowClass(record, rowIndex)\"\n :style=\"getRowStyle(record, rowIndex)\"\n v-bind=\"getRowProps(record, rowIndex)\"\n @click=\"handleRowClick(record, rowIndex, $event)\"\n @dblclick=\"handleRowDoubleClick(record, $event)\"\n @mouseenter=\"handleRowMouseEnter(record, $event)\"\n @mouseleave=\"handleRowMouseLeave(record, $event)\"\n >\n <TableCell\n v-for=\"(column, colIndex) in flattenColumns\"\n :key=\"colIndex\"\n :record=\"record\"\n :column=\"column\"\n :index=\"rowIndex\"\n :col-index=\"colIndex\"\n :prefix-cls=\"prefixCls\"\n :selected=\"isRowSelected(record)\"\n :expanded=\"isRowExpanded(record)\"\n :disabled=\"isRowDisabled(record)\"\n :indent=\"getRowIndent(record, colIndex)\"\n :selection-cell-props=\"\n isSelectionColumn(column) ? getRowSelectionProps(record) : undefined\n \"\n :expand-icon=\"getExpandIcon(record)\"\n :render-expand-icon=\"shouldProvideExpandIcon ? renderExpandIcon : undefined\"\n :expandable=\"isRowExpandable(record)\"\n :hide-expanded-column=\"props.hideExpandedColumn\"\n :first-data-column-index=\"firstDataColumnIndex\"\n :column-slot-name=\"getColumnSlotName(column)\"\n :has-slot=\"getColumnSlotName(column) && !!slots[getColumnSlotName(column)]\"\n :fixed-left=\"getFixedLeftOffset(column, colIndex)\"\n :last-fixed-left=\"isLastLeftFixed(flattenColumns, column)\"\n :fixed-right=\"getFixedRightOffset(column, colIndex)\"\n :first-fixed-right=\"isFirstFixedRight(flattenColumns, column)\"\n >\n <template\n v-if=\"getColumnSlotName(column) && slots[getColumnSlotName(column)]\"\n #[getColumnSlotName(column)]=\"slotProps\"\n >\n <slot\n :name=\"getColumnSlotName(column)\"\n v-bind=\"slotProps || {}\"\n :text=\"getColumnValue(record, column)\"\n :record=\"record\"\n :index=\"rowIndex\"\n />\n </template>\n </TableCell>\n </tr>\n <tr\n v-if=\"\n isRowExpanded(record) && props.expandedRowRender && isRowExpandable(record)\n \"\n :class=\"classnames(`${prefixCls}-row-expand`, `${prefixCls}-row`)\"\n >\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-row-cell`\">\n <div :class=\"`${prefixCls}-expand-inner`\">\n <component\n :is=\"() => props.expandedRowRender(record, rowIndex, true)\"\n />\n </div>\n </td>\n </tr>\n </template>\n <tr v-if=\"!pageData || pageData.length === 0\">\n <td :colspan=\"flattenColumns.length\" :class=\"`${prefixCls}-empty`\">\n <component :is=\"props.empty\" v-if=\"props.empty\" />\n <LocaleConsumer v-else component-name=\"Table\">\n <template #default=\"{ locale }\">\n <Empty :description=\"(locale as any)?.emptyText || '暂无数据'\" />\n </template>\n </LocaleConsumer>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n </div>\n <component :is=\"renderFooter\" v-if=\"renderFooter\" />\n <template v-if=\"showPagination && (paginationPosition === 'bottom' || paginationPosition === 'both')\">\n <component :is=\"renderPagination\" v-if=\"renderPagination\" />\n <LocaleConsumer v-else-if=\"paginationProps\" component-name=\"Table\">\n <template #default=\"{ locale }\">\n <div :class=\"`${prefixCls}-pagination-outer`\">\n <span v-if=\"getPaginationInfo(locale)\" :class=\"`${prefixCls}-pagination-info`\">\n {{ getPaginationInfo(locale) }}\n </span>\n <span :class=\"`${prefixCls}-pagination-wrapper`\">\n <Pagination\n v-if=\"paginationProps && paginationProps.total > 0\"\n v-bind=\"paginationProps\"\n />\n </span>\n </div>\n </template>\n </LocaleConsumer>\n </template>\n </div>\n </Spin>\n </div>\n</template>\n\n<script setup lang=\"ts\">\nimport { ref, computed, watch, useSlots, onMounted, onUnmounted, nextTick, h, isVNode } from 'vue';\nimport classnames from 'classnames';\nimport { get, isEqual, flattenDeep, find, cloneDeep, noop } from 'lodash';\nimport TableFoundation, { TableAdapter } from '@douyinfe/semi-foundation/table/foundation';\nimport { cssClasses, strings, numbers } from '@douyinfe/semi-foundation/table/constants';\nimport {\n isSelectionColumn,\n isFixedLeft,\n isFixedRight,\n isLastLeftFixed,\n isFirstFixedRight,\n arrayAdd,\n assignColumnKeys,\n isInnerColumnKey,\n flattenColumns as flattenColumnsUtil,\n} from '@douyinfe/semi-foundation/table/utils';\nimport { provideTableContext } from './table-context';\nimport { useBaseComponent } from '../_utils';\nimport { useFoundation } from '../../_utils/useFoundation';\nimport Spin from '../spin';\nimport Empty from '../empty';\nimport Pagination from '../pagination';\nimport LocaleConsumer from '../locale/LocaleConsumer.vue';\nimport TableHeader from './TableHeader.vue';\nimport TableCell from './TableCell.vue';\nimport CustomExpandIcon from './CustomExpandIcon.vue';\nimport VirtualizedBody from './VirtualizedBody.vue';\nimport { useTableSelection } from './useTableSelection';\nimport type { TableProps, ColumnProps, Data, TablePaginationProps } from './interface';\nimport type { CSSProperties } from 'vue';\n\ndefineOptions({\n name: 'SemiTable',\n});\n\nconst props = withDefaults(defineProps<TableProps<Data>>(), {\n bordered: false,\n showHeader: true,\n hideExpandedColumn: true,\n size: 'default',\n tableLayout: '',\n prefixCls: cssClasses.PREFIX,\n pagination: true,\n childrenRecordName: 'children',\n dataSource: () => [],\n rowSelection: null,\n className: '',\n loading: false,\n expandCellFixed: false,\n indentSize: numbers.DEFAULT_INDENT_WIDTH,\n rowKey: 'key',\n defaultExpandedRowKeys: () => [],\n defaultExpandAllRows: false,\n defaultExpandAllGroupRows: false,\n expandAllRows: false,\n expandAllGroupRows: false,\n expandRowByClick: false,\n onChange: noop,\n onFilterDropdownVisibleChange: noop,\n onExpand: noop,\n onExpandedRowsChange: noop,\n});\n\nconst firstDataColumnIndex = computed(() => {\n let idx = 0;\n const cols = flattenColumns.value || [];\n while (idx < cols.length) {\n const key = (cols[idx] as any)?.key;\n if (key != null && isInnerColumnKey(key)) {\n idx += 1;\n continue;\n }\n break;\n }\n return idx;\n});\n\nconst childrenRecordName = computed(() => props.childrenRecordName || 'children');\n\nconst isTreeTable = computed(() => {\n const ds = props.dataSource || [];\n if (!Array.isArray(ds) || ds.length === 0) {\n return false;\n }\n const key = childrenRecordName.value;\n return ds.some((record: any) => Array.isArray(record?.[key]) && record[key].length > 0);\n});\n\nconst hasTreeChildren = (record: any) => {\n const key = childrenRecordName.value;\n return Array.isArray(record?.[key]) && record[key].length > 0;\n};\n\nconst getTreeLevel = (record: any): number => {\n return (record as any)?.__semiTableTreeLevel ?? 0;\n};\n\nconst getRowIndent = (record: any, colIndex: number): number => {\n if (!isTreeTable.value) {\n return 0;\n }\n if (colIndex !== firstDataColumnIndex.value) {\n return 0;\n }\n return getTreeLevel(record);\n};\n\nconst shouldProvideExpandIcon = computed(() => {\n return Boolean(props.expandedRowRender) || isTreeTable.value;\n});\n\nconst emit = defineEmits<{\n (e: 'change', changeInfo: any): void;\n (e: 'expand', expanded: boolean, record: Data, mouseEvent?: MouseEvent): void;\n (e: 'expandedRowsChange', expandedRows: Data[]): void;\n}>();\n\nconst prefixCls = computed(() => props.prefixCls || cssClasses.PREFIX);\n\n// 获取插槽\nconst slots = useSlots();\n\n// Refs\nconst bodyRef = ref<HTMLTableSectionElement | null>(null);\nconst bodyWrapRef = ref<HTMLDivElement | null>(null);\nconst headerWrapRef = ref<HTMLDivElement | null>(null);\nconst virtualizedBodyRef = ref<InstanceType<typeof VirtualizedBody> | null>(null);\nconst wrapRef = ref<HTMLDivElement | null>(null);\n\ntype BodyScrollPosition = 'both' | 'middle' | 'left' | 'right';\n\n// State\nconst state = ref({\n cachedColumns: [] as ColumnProps[],\n cachedChildren: null,\n flattenColumns: [] as ColumnProps[],\n queries: [] as ColumnProps[],\n dataSource: [] as Data[],\n flattenData: [] as Data[],\n expandedRowKeys: [] as (string | number)[],\n rowSelection: null as any,\n pagination: null as any,\n groups: null as any,\n groupKeys: [] as (string | number)[],\n allRowKeys: [] as (string | number)[],\n allDisabledRowKeys: [] as (string | number)[],\n disabledRowKeys: [] as (string | number)[],\n disabledRowKeysSet: new Set<string | number>(),\n selectedRowKeys: [] as (string | number)[],\n selectedRowKeysSet: new Set<string | number>(),\n hoveredRowKey: null as string | number | null,\n cachedFilteredSortedDataSource: [] as Data[],\n cachedFilteredSortedRowKeys: [] as (string | number)[],\n cachedFilteredSortedRowKeysSet: new Set<string | number>(),\n headWidths: [] as any[],\n bodyHasScrollBar: false,\n tableWidth: 0,\n});\n\n// 同一轮渲染/事件周期内的“写入锁”,用于打断 Vue 的递归更新(排序/筛选会导致 DOM 重排,click 可能被重复触发)\nlet applyingQueriesInTick = false;\nlet sortingInTick = false;\nconst releaseGuards = () => {\n applyingQueriesInTick = false;\n sortingInTick = false;\n};\n\nconst { adapter: baseAdapter, getDataAttr } = useBaseComponent(props, state);\n\nfunction getExpandedRowsByKeys(expandedRowKeys: (string | number)[]) {\n const keySet = new Set(expandedRowKeys);\n const dataSource = props.dataSource || [];\n return dataSource.filter((record, index) => keySet.has(getRecordKey(record, index)));\n}\n\ntype TableAdapterExt<RecordType> = TableAdapter<RecordType> & {\n notifyRowDoubleClick?: (record: RecordType, e: MouseEvent) => void;\n notifyRowMouseEnter?: (record: RecordType, e: MouseEvent) => void;\n notifyRowMouseLeave?: (record: RecordType, e: MouseEvent) => void;\n notifySelectInvert?: (selectedRows: RecordType[]) => void;\n setAllDisabledRowKeys?: (allDisabledRowKeys: (string | number)[]) => void;\n getAllDisabledRowKeys?: () => (string | number)[];\n getAllDisabledRowKeysSet?: () => Set<string | number>;\n};\n\n// 构建 adapter\nconst adapter = {\n ...baseAdapter,\n resetScrollY: () => {\n if (bodyRef.value) {\n bodyRef.value.scrollTop = 0;\n }\n },\n setSelectedRowKeys: (selectedRowKeys) => {\n state.value.rowSelection = {\n ...state.value.rowSelection,\n selectedRowKeys: [...selectedRowKeys],\n selectedRowKeysSet: new Set(selectedRowKeys),\n };\n },\n setDisabledRowKeys: (disabledRowKeys) => {\n state.value.disabledRowKeys = disabledRowKeys;\n state.value.disabledRowKeysSet = new Set(disabledRowKeys);\n },\n setCurrentPage: (currentPage) => {\n const { pagination } = state.value;\n if (typeof pagination === 'object') {\n state.value.pagination = { ...pagination, currentPage };\n } else {\n state.value.pagination = { currentPage };\n }\n },\n setPagination: (pagination) => {\n state.value.pagination = pagination;\n },\n setGroups: (groups) => {\n // Foundation 层可能会传入 Set 类型,我们需要转换为 Data[] 类型\n if (groups && groups instanceof Map) {\n const convertedGroups = new Map<string | number, Data[]>();\n const dataSource = props.dataSource || [];\n\n groups.forEach((value, key) => {\n if (value instanceof Set) {\n // 如果是 Set,需要检查 Set 中存储的是 key 还是 record 对象\n const setArray = Array.from(value);\n\n // 检查 Set 中的第一项是 key 还是 record 对象\n if (setArray.length > 0) {\n const firstItem = setArray[0];\n // 如果是字符串或数字(可能是 key),需要从 dataSource 中查找对应的 record\n if (typeof firstItem === 'string' || typeof firstItem === 'number') {\n const records: Data[] = [];\n setArray.forEach((itemKey) => {\n const record = dataSource.find((r) => {\n const rKey = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(r)\n : get(r, props.rowKey, '')\n : get(r, 'key', '');\n return rKey === itemKey;\n });\n if (record) {\n records.push(record);\n }\n });\n convertedGroups.set(key, records);\n } else {\n // 如果已经是对象,直接使用\n convertedGroups.set(key, setArray as Data[]);\n }\n } else {\n convertedGroups.set(key, []);\n }\n } else if (Array.isArray(value)) {\n // 如果已经是数组,检查数组中是否是对象\n const validRecords = value.filter(\n (item) => item && typeof item === 'object' && !Array.isArray(item)\n );\n convertedGroups.set(key, validRecords);\n }\n });\n state.value.groups = convertedGroups;\n } else {\n state.value.groups = groups;\n }\n },\n setDataSource: (dataSource) => {\n state.value.dataSource = dataSource;\n },\n setExpandedRowKeys: (expandedRowKeys) => {\n state.value.expandedRowKeys = [...expandedRowKeys];\n },\n setQuery: (query = {}) => {\n // 合并查询\n const queries = [...state.value.queries];\n const existingIndex = queries.findIndex((q) => q.key === query.key || q.dataIndex === query.dataIndex);\n if (existingIndex > -1) {\n queries[existingIndex] = { ...queries[existingIndex], ...query };\n } else {\n queries.push(query);\n }\n state.value.queries = queries;\n },\n setQueries: (queries) => {\n // 避免递归更新:某些场景下 foundation 会多次触发 setQueries,\n // 如果值没有变化则不写入响应式状态,防止触发自身依赖的 effect。\n if (queries === state.value.queries || isEqual(queries, state.value.queries)) {\n return;\n }\n // 同一 tick 内只允许写一次 queries,防止重复触发导致递归更新\n if (applyingQueriesInTick) {\n return;\n }\n applyingQueriesInTick = true;\n queueMicrotask(releaseGuards);\n state.value.queries = queries;\n },\n setFlattenData: (flattenData) => {\n state.value.flattenData = flattenData;\n },\n setAllRowKeys: (allRowKeys) => {\n state.value.allRowKeys = allRowKeys;\n },\n setHoveredRowKey: (hoveredRowKey) => {\n // 排序触发的重排过程中会产生大量 hover 事件,容易放大递归更新问题;这里在排序写入周期内跳过 hover\n if (sortingInTick) {\n return;\n }\n state.value.hoveredRowKey = hoveredRowKey;\n },\n setCachedFilteredSortedDataSource: (filteredSortedDataSource) => {\n state.value.cachedFilteredSortedDataSource = filteredSortedDataSource;\n },\n setCachedFilteredSortedRowKeys: (filteredSortedRowKeys) => {\n state.value.cachedFilteredSortedRowKeys = filteredSortedRowKeys;\n state.value.cachedFilteredSortedRowKeysSet = new Set(filteredSortedRowKeys);\n },\n setAllDisabledRowKeys: (allDisabledRowKeys) => {\n state.value.allDisabledRowKeys = allDisabledRowKeys;\n },\n getCurrentPage: () => get(state.value, 'pagination.currentPage', 1),\n getCurrentPageSize: () => get(state.value, 'pagination.pageSize', 10),\n getCachedFilteredSortedDataSource: () => state.value.cachedFilteredSortedDataSource,\n getCachedFilteredSortedRowKeys: () => state.value.cachedFilteredSortedRowKeys,\n getCachedFilteredSortedRowKeysSet: () => state.value.cachedFilteredSortedRowKeysSet,\n getAllDisabledRowKeys: () => state.value.allDisabledRowKeys,\n getAllDisabledRowKeysSet: () => new Set(state.value.allDisabledRowKeys),\n notifyFilterDropdownVisibleChange: (_visible, _dataIndex) => {\n // 筛选下拉框可见性变化通知\n // 注意:主要的逻辑已在 handleFilterDropdownVisibleChange 中处理(包括调用 column.onFilterDropdownVisibleChange)\n // 这里保持为空,避免重复调用。Foundation 层调用此方法是为了通知,但实际处理已在 Vue 层完成\n },\n notifyChange: (changeInfo) => {\n emit('change', changeInfo);\n },\n notifyExpand: (expanded, record, mouseEvent) => {\n emit('expand', expanded, record, mouseEvent);\n },\n notifyExpandedRowsChange: (expandedRows) => {\n emit('expandedRowsChange', expandedRows);\n },\n notifyRowDoubleClick: (_record: Data, _e: MouseEvent) => {\n // 双击事件已通过 handleRowDoubleClick 处理\n },\n notifyRowMouseEnter: (_record: Data, _e: MouseEvent) => {\n // 鼠标进入事件已通过 handleRowMouseEnter 处理\n },\n notifyRowMouseLeave: (_record: Data, _e: MouseEvent) => {\n // 鼠标离开事件已通过 handleRowMouseLeave 处理\n },\n notifySelect: (record: Data, selected: boolean, selectedRows: Data[], e: MouseEvent) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onSelect) {\n rowSelection.onSelect(record, selected, selectedRows, e);\n }\n },\n notifySelectAll: (selected: boolean, selectedRows: Data[], changeRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onSelectAll) {\n rowSelection.onSelectAll(selected, selectedRows, changeRows);\n }\n },\n notifySelectInvert: (selectedRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n const onSelectInvert = (rowSelection as any)?.onSelectInvert as undefined | ((rows: Data[]) => void);\n if (typeof onSelectInvert === 'function') {\n onSelectInvert(selectedRows);\n }\n },\n notifySelectionChange: (selectedRowKeys: (string | number)[], selectedRows: Data[]) => {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n if (rowSelection.onChange) {\n rowSelection.onChange(selectedRowKeys, selectedRows);\n }\n },\n isAnyColumnFixed: () => {\n const columns = flattenColumns.value;\n return columns.some((col) => col.fixed === true || col.fixed === 'left' || col.fixed === 'right');\n },\n useFixedHeader: () => {\n const { scroll, sticky } = props;\n return Boolean(get(scroll, 'y') || sticky);\n },\n setHeadWidths: (widths: Array<{ width: number; key: any }>, index?: number) => {\n if (typeof index === 'number') {\n // 确保 headWidths 是数组\n if (!Array.isArray(state.value.headWidths)) {\n state.value.headWidths = [];\n }\n state.value.headWidths[index] = widths;\n } else {\n state.value.headWidths = widths;\n }\n },\n getHeadWidths: (index?: number) => {\n if (typeof index === 'number') {\n return state.value.headWidths[index] || [];\n }\n return state.value.headWidths;\n },\n getCellWidths: (columns?: ColumnProps[]) => {\n const cols = columns || flattenColumns.value;\n if (!Array.isArray(cols) || !cols.length) {\n return [];\n }\n\n const hw = state.value.headWidths as any;\n const flattenedWidths: Array<{ width: number; key: any }> = (() => {\n if (Array.isArray(hw) && hw.length) {\n if (Array.isArray(hw[0])) {\n return flattenDeep(hw) as Array<{ width: number; key: any }>;\n }\n return hw as Array<{ width: number; key: any }>;\n }\n return [];\n })();\n\n const result = cols.map((col) => {\n if (typeof col.width === 'number') {\n return col.width;\n }\n\n if (col.key != null && Array.isArray(flattenedWidths) && flattenedWidths.length) {\n const match = find(flattenedWidths, (item) => item && item.key != null && item.key === col.key);\n if (match) {\n return match.width;\n }\n }\n\n if (col.dataIndex != null && Array.isArray(flattenedWidths) && flattenedWidths.length) {\n const match = find(flattenedWidths, (item) => item && item.key != null && item.key === col.dataIndex);\n if (match) {\n return match.width;\n }\n }\n\n return 0;\n });\n\n return result;\n },\n mergedRowExpandable: () => false,\n isAnyColumnUseFullRender: () => false,\n getNormalizeColumns: () => () => [],\n getHandleColumns: () => () => [],\n getMergePagination: () => (pagination: any) => {\n // 合并分页配置,添加 onChange 回调\n return { onChange: foundation.setPage, ...pagination };\n },\n setBodyHasScrollbar: (bodyHasScrollBar) => {\n state.value.bodyHasScrollBar = bodyHasScrollBar;\n },\n getTableLayout: () => {\n // 如果明确指定了 tableLayout,使用指定的值\n if (props.tableLayout) {\n return props.tableLayout;\n }\n // 否则根据列的状态自动决定,与 React 版本保持一致\n let isFixed = false;\n const flattenedCols = flattenColumns.value;\n if (Array.isArray(flattenedCols)) {\n isFixed = flattenedCols.some((column) => Boolean(column.ellipsis) || Boolean(column.fixed));\n }\n if (useFixedHeader.value) {\n isFixed = true;\n }\n return isFixed ? 'fixed' : 'auto';\n },\n} as TableAdapterExt<Data>;\n\nconst { foundation } = useFoundation(TableFoundation, adapter);\n\n// Computed\nconst wrapperCls = computed(() =>\n classnames(\n props.className,\n `${prefixCls.value}-wrapper`,\n `${prefixCls.value}-wrapper-${props.direction || 'undefined'}`\n )\n);\n\nconst wrapperStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n // 当有 scroll.x 时,确保 wrapper 不会超出父容器\n // 注意:不要设置 overflowX: hidden,这会阻止横向滚动条显示\n // 只需要限制宽度即可,滚动条应该在 table-container 内的 body 中\n if (props.scroll?.x) {\n // 确保 wrapper 宽度不超过 100%,防止表格超出容器\n style.maxWidth = '100%';\n style.width = '100%';\n }\n return { ...props.style, ...style };\n});\n\nconst useFixedHeader = computed(() => {\n return Boolean(props.scroll?.y || props.sticky);\n});\n\nconst wrapCls = computed(() => {\n const y = props.scroll?.y;\n return classnames({\n [`${prefixCls.value}-${props.size}`]: props.size,\n [`${prefixCls.value}-virtualized`]: Boolean(props.virtualized),\n [`${prefixCls.value}-bordered`]: props.bordered,\n [`${prefixCls.value}-fixed-header`]: Boolean(y),\n });\n});\n\nconst tableWrapperCls = computed(() => {\n return `${prefixCls.value}-container`;\n});\n\nconst tableWrapperStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n // 当有 scroll.x 时,确保表格容器不会超出父容器\n // 注意:不要设置 overflowX: hidden,这会阻止横向滚动条显示\n // 只需要限制宽度即可\n if (props.scroll?.x) {\n style.maxWidth = '100%';\n style.width = '100%';\n }\n // 关键:当有 scroll.y 时,container 需要成为滚动上下文\n // 但实际滚动发生在 body 内,所以这里不设置 overflow\n // 表头的 sticky 定位需要相对于 container,但由于滚动在 body 内,我们需要特殊处理\n return style;\n});\n\nconst computedTableLayout = computed(() => {\n if (props.tableLayout) {\n return props.tableLayout;\n }\n return anyColumnFixed.value ? 'fixed' : 'auto';\n});\n\nconst tableCls = computed(() => {\n return classnames(prefixCls.value, {\n [`${prefixCls.value}-fixed`]: computedTableLayout.value === 'fixed',\n });\n});\n\nconst headerCls = computed(() => {\n const hasSticky = Boolean(props.sticky);\n return classnames(`${prefixCls.value}-header`, {\n [`${prefixCls.value}-header-sticky`]: hasSticky,\n [`${prefixCls.value}-header-hidden`]: !showHeader.value,\n });\n});\n\nconst headerTableStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n if (x) {\n style.width = typeof x === 'number' ? `${x}px` : x;\n }\n return style;\n});\n\nconst bodyTableStyle = computed<CSSProperties>(() => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n if (x) {\n style.width = typeof x === 'number' ? `${x}px` : x;\n }\n return style;\n});\n\nconst getHeaderStyle = (): CSSProperties => {\n const style: CSSProperties = {};\n (style as any).scrollbarGutter = 'stable';\n if (props.scroll?.y) {\n style.overflowY = 'scroll';\n }\n\n // 关键:当有固定列时,表头容器不能设置 overflow: hidden(CSS 默认值)\n // 因为这会阻止表头内固定列的 position: sticky 正常工作\n // 但是,CSS 中已经设置了 overflow: hidden,所以我们需要覆盖它\n // 当有固定列时,表头容器应该允许 overflow,以便固定列能正常工作\n if (anyColumnFixed.value && props.scroll?.y) {\n // 当有固定列和 scroll.y 时,表头容器需要允许 overflow\n // 但为了隐藏滚动条,我们只设置 overflowX: hidden(如果有横向滚动,由 bodyHasScrollBar 处理)\n // 注意:不能设置 overflow: hidden,这会阻止固定列的 sticky 定位\n if (!state.value.bodyHasScrollBar) {\n // 当没有滚动条时,允许 overflow(但不能是 hidden,因为会阻止 sticky)\n style.overflow = 'visible';\n }\n // 当有滚动条时,overflowY 已经设置为 'scroll',不需要额外设置\n }\n\n // 当有 sticky 时,设置 top 值\n // 根据 React 版本的 HeadTable.tsx:99-102\n if (props.sticky) {\n const stickyTop = typeof props.sticky === 'object' ? props.sticky.top : 0;\n if (typeof stickyTop === 'number') {\n style.top = stickyTop;\n }\n }\n\n return style;\n};\n\nconst getBodyStyle = (): CSSProperties => {\n const style: CSSProperties = {};\n const x = props.scroll?.x;\n const y = props.scroll?.y;\n\n // 固定滚动条占位,避免首次滚动时布局“挤一下”导致 fixed 抖动\n (style as any).scrollbarGutter = 'stable';\n\n if (y) {\n style.maxHeight = typeof y === 'number' ? `${y}px` : y;\n }\n\n // 当有固定列且有数据时,使用 auto 而不是单独的 overflowX/overflowY(与 React 版本一致)\n // 注意:React 版本使用 size(dataSource),这里使用 props.dataSource 而不是 sortedData\n const dataSource = props.dataSource || [];\n const hasData = dataSource.length > 0;\n if (anyColumnFixed.value && hasData) {\n if (!props.virtualized) {\n style.overflow = 'auto';\n style.WebkitTransform = 'translate3d (0, 0, 0)';\n if (y) {\n style.overflowY = 'scroll';\n }\n }\n } else {\n if (!props.virtualized) {\n if (y) {\n style.overflowY = 'auto';\n }\n if (x) {\n style.overflowX = 'auto';\n style.width = '100%';\n }\n }\n }\n\n if (x && !anyColumnFixed.value) {\n style.width = '100%';\n }\n\n return style;\n};\n\nconst showHeader = computed(() => props.showHeader !== false);\n\nconst normalizeSelectionColumn = (): ColumnProps | null => {\n const { rowSelection } = props;\n if (!rowSelection || (typeof rowSelection === 'object' && rowSelection.hidden)) {\n return null;\n }\n\n const rowSelectionObj = typeof rowSelection === 'object' ? rowSelection : {};\n const column: ColumnProps = {\n key: strings.DEFAULT_KEY_COLUMN_SELECTION,\n width: numbers.DEFAULT_WIDTH_COLUMN_SELECTION,\n fixed: rowSelectionObj.fixed,\n className: classnames(`${prefixCls.value}-column-selection`, rowSelectionObj.className),\n title: 'selection',\n render: () => 'selection',\n };\n\n return column;\n};\n\nconst normalizeExpandColumn = (): ColumnProps | null => {\n if (!props.expandedRowRender || props.hideExpandedColumn !== false) {\n return null;\n }\n const column: ColumnProps = {\n key: strings.DEFAULT_KEY_COLUMN_EXPAND,\n width: numbers.DEFAULT_WIDTH_COLUMN_EXPAND,\n fixed: props.expandCellFixed,\n className: classnames(`${prefixCls.value}-column-expand`),\n title: '',\n // TableCell 会通过 isExpandedColumn(column) + renderExpandIcon 负责渲染展开按钮\n // 这里保持为空,避免误渲染\n render: () => null,\n };\n return column;\n};\n\n// 注意:Semi 的 assignColumnKeys 会对列对象做原地写入(补全 key)。\n// 在 Vue 中如果直接使用 props.columns 的引用,会触发 deep watch 以及潜在的递归更新。\n// 因此这里先递归 clone 一份 columns,再进行后续处理,避免修改 props。\nconst cloneColumns = (cols: ColumnProps[] = []): ColumnProps[] => {\n if (!Array.isArray(cols)) {\n return [];\n }\n return cols.map((col) => {\n if (!col || typeof col !== 'object') {\n return col;\n }\n const { children, ...rest } = col as any;\n const next: any = { ...rest };\n if (Array.isArray(children)) {\n next.children = cloneColumns(children);\n }\n return next as ColumnProps;\n });\n};\n\n// 第一步:展平和克隆列\nconst rawFlattenColumns = computed(() => {\n if (props.columns && props.columns.length > 0) {\n // 先展平嵌套的列(处理 children),然后克隆\n const flattened = flattenColumnsUtil(props.columns);\n return cloneColumns(flattened);\n }\n return [];\n});\n\n// 第二步:添加选择和展开列\nconst columnsWithSelectionAndExpand = computed(() => {\n const columns: ColumnProps[] = [...rawFlattenColumns.value];\n\n // 添加选择列\n const selectionColumn = normalizeSelectionColumn();\n if (selectionColumn) {\n const destIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_SELECTION);\n if (destIndex > -1) {\n columns[destIndex] = { ...selectionColumn, ...columns[destIndex] };\n } else if (selectionColumn.fixed === 'right') {\n columns.push(selectionColumn);\n } else {\n columns.unshift(selectionColumn);\n }\n }\n\n const expandColumn = normalizeExpandColumn();\n if (expandColumn) {\n const destIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_EXPAND);\n if (destIndex > -1) {\n columns[destIndex] = { ...expandColumn, ...columns[destIndex] };\n } else if (expandColumn.fixed === 'right') {\n columns.push(expandColumn);\n } else {\n // 默认插入到最前(若有 selection 列则放在 selection 后)\n const selectionIndex = columns.findIndex((item) => item.key === strings.DEFAULT_KEY_COLUMN_SELECTION);\n const insertIndex = selectionIndex > -1 ? selectionIndex + 1 : 0;\n columns.splice(insertIndex, 0, expandColumn);\n }\n }\n\n assignColumnKeys(columns as any[]);\n return columns;\n});\n\n// 第三步:合并 queries 中的列信息(包括宽度),用于支持列宽调整\nconst mergedColumnsWithQueries = computed(() => {\n const queries = state.value.queries;\n return columnsWithSelectionAndExpand.value.map((column) => {\n const queryColumn = queries.find(\n (q) => (q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)\n );\n if (queryColumn) {\n // 合并 queries 中的属性(包括 width、sortOrder 等)\n // 但是 filteredValue 优先使用 column 中的值(如果 column 中有定义),以支持自定义表头筛选\n const { filteredValue: queryFilteredValue, ...restQueryColumn } = queryColumn;\n const merged = { ...column, ...restQueryColumn };\n // 如果 column 中明确指定了 filteredValue,优先使用 column 中的值\n if (column.filteredValue !== undefined) {\n merged.filteredValue = column.filteredValue;\n } else if (queryFilteredValue !== undefined) {\n merged.filteredValue = queryFilteredValue;\n }\n return merged;\n }\n return column;\n });\n});\n\n// 第四步:处理排序、筛选、resizable 等逻辑\nconst flattenColumns = computed(() => {\n return mergedColumnsWithQueries.value.map((column) => {\n const hasSorter = Boolean(column.sorter);\n const hasFilter = Boolean(column.onFilter || column.filters);\n const useFullRender = column.useFullRender === true;\n const clickColumnToSorter = hasSorter && !hasFilter && !useFullRender;\n\n // 处理 resizable:当 Table 的 resizable prop 为 true 时,应用到所有有 width 的列\n let processedColumn = { ...column };\n\n // 如果 useFullRender 为 true,处理 title 函数,传递 selection、sorter、filter\n // 注意:需要返回一个函数,在每次渲染时调用,以便 selection 等能够响应状态变化\n if (useFullRender && typeof column.title === 'function') {\n const rawTitle = column.title;\n // 返回一个函数,在每次渲染时调用 rawTitle 并传递最新的 titleMap\n processedColumn = {\n ...processedColumn,\n title: () => {\n const titleMap: any = {};\n if (props.rowSelection) {\n // 每次渲染时重新创建 selection,确保响应状态变化\n titleMap.selection = renderSelection(undefined, true);\n }\n // sorter 和 filter 会在 TableHeaderRow 中处理\n return rawTitle(titleMap);\n },\n };\n }\n const tableResizable =\n props.resizable === true || (typeof props.resizable === 'object' && props.resizable !== null);\n\n // 将列的 resize 属性映射到 resizable(为了兼容性)\n if ('resize' in column) {\n processedColumn.resizable = column.resize;\n }\n\n // 如果 Table 的 resizable 为 true,且列有 width,则默认启用可伸缩(除非列明确设置了 resize: false)\n if (tableResizable && typeof column.width === 'number') {\n // 如果列没有明确设置 resize/resizable 属性,则启用可伸缩\n if (!('resize' in column) && !('resizable' in column)) {\n processedColumn.resizable = true;\n }\n // 如果列明确设置了 resize: false 或 resizable: false,则不启用(已经在上面处理了)\n }\n\n if (clickColumnToSorter) {\n return {\n ...processedColumn,\n clickToSort: (e: MouseEvent) => {\n e.stopPropagation();\n if (sortingInTick) {\n return;\n }\n sortingInTick = true;\n queueMicrotask(releaseGuards);\n foundation.handleSort(column, e, true);\n },\n mouseDown: (e: MouseEvent) => {\n foundation.handleMouseDown(e);\n },\n };\n }\n\n return processedColumn;\n });\n});\n\nconst anyColumnFixed = computed(() => {\n const result = flattenColumns.value.some(\n (col) => col.fixed === true || col.fixed === 'left' || col.fixed === 'right'\n );\n return result;\n});\n\nconst virtualizedOnScroll = computed(() => {\n return typeof props.virtualized === 'object' ? props.virtualized.onScroll : undefined;\n});\n\n// 提供 TableContext\n// 注意:renderSelection 会在后面定义,所以使用 getter 来延迟访问\nconst tableContext = {\n direction: (props.direction || 'ltr') as any,\n headWidths: computed(() => state.value.headWidths),\n tableWidth: computed(() => state.value.tableWidth),\n anyColumnFixed,\n flattenedColumns: computed(() => flattenColumns.value),\n setHeadWidths: adapter.setHeadWidths,\n getHeadWidths: adapter.getHeadWidths,\n getCellWidths: adapter.getCellWidths,\n getQuery: (dataIndex: string | number) => foundation.getQuery(dataIndex as string),\n isSortOrderValid: (sortOrder: any) => foundation.isSortOrderValid(sortOrder),\n get renderSelection() {\n // 延迟访问 renderSelection,在它定义后返回\n return renderSelection;\n },\n};\n\nprovideTableContext(tableContext);\n\nconst selectedRowKeysSet = computed<Set<string | number>>(() => {\n if (props.rowSelection) {\n const rowSelection = typeof props.rowSelection === 'object' ? props.rowSelection : {};\n const selectedRowKeys = (rowSelection.selectedRowKeys || []) as (string | number)[];\n return new Set(selectedRowKeys);\n }\n return new Set<string | number>();\n});\n\nconst mergedPagination = computed(() => {\n const pagination = props.pagination;\n // 如果 pagination 是 undefined,默认使用 true(显示分页)\n if (pagination === undefined || pagination === true) {\n return {\n currentPage: 1,\n pageSize: 10,\n ...(state.value.pagination || {}),\n };\n }\n if (pagination === false) {\n return false;\n }\n if (typeof pagination === 'object') {\n // 优先使用用户传入的值,然后合并 state 中的值(但不覆盖用户的值)\n return {\n currentPage: 1,\n pageSize: 10,\n ...(state.value.pagination || {}),\n ...pagination, // 用户传入的值优先级最高\n };\n }\n return state.value.pagination || { currentPage: 1, pageSize: 10 };\n});\n\n// 获取记录的 key(需要在 watch 之前定义)\nconst getRecordKey = (record: Data, index: number): string | number => {\n if (props.rowKey) {\n if (typeof props.rowKey === 'function') {\n return props.rowKey(record);\n }\n return get(record, props.rowKey, index);\n }\n return get(record, 'key', index);\n};\n\n// 分组数据处理(使用 watch 而不是 computed,因为需要副作用)\nwatch(\n () => [props.dataSource, props.groupBy],\n () => {\n const dataSource = props.dataSource || [];\n\n // 如果设置了 groupBy,进行分组\n const groupBy = props.groupBy;\n if (groupBy) {\n // 支持字符串、数字或函数类型\n let groupByFn: (record: Data) => string | number;\n if (typeof groupBy === 'function') {\n groupByFn = groupBy;\n } else if (typeof groupBy === 'string' || typeof groupBy === 'number') {\n // 字符串或数字类型:作为 dataIndex 使用\n groupByFn = (record: Data) => get(record, groupBy as string, '');\n } else {\n state.value.groups = null;\n state.value.groupKeys = [];\n return;\n }\n\n // 统一数据结构:使用 Map<string | number, Data[]> 与 React 版本保持一致\n const groups = new Map<string | number, Data[]>();\n const groupKeys: (string | number)[] = [];\n\n dataSource.forEach((record, _index) => {\n const groupKey = groupByFn(record);\n\n if (!groups.has(groupKey)) {\n groups.set(groupKey, []);\n groupKeys.push(groupKey);\n }\n\n groups.get(groupKey)!.push(record);\n });\n\n state.value.groups = groups;\n state.value.groupKeys = groupKeys;\n\n // 处理 defaultExpandAllGroupRows 和 expandAllGroupRows\n if (props.defaultExpandAllGroupRows || props.expandAllGroupRows) {\n const newExpandedRowKeys = [...state.value.expandedRowKeys];\n groupKeys.forEach((groupKey) => {\n if (!newExpandedRowKeys.includes(groupKey)) {\n newExpandedRowKeys.push(groupKey);\n }\n });\n state.value.expandedRowKeys = newExpandedRowKeys;\n }\n } else {\n state.value.groups = null;\n state.value.groupKeys = [];\n }\n\n // 处理树形数据的 defaultExpandAllRows 和 expandAllRows\n // 使用 foundation 的 initExpandedRowKeys 方法,与 React 版本保持一致\n // 需要在 nextTick 中调用,确保 foundation 已经初始化\n if (\n props.defaultExpandAllRows ||\n props.expandAllRows ||\n props.defaultExpandAllGroupRows ||\n props.expandAllGroupRows\n ) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n },\n { immediate: true }\n);\n\n// 监听 expandAllGroupRows 和 expandAllRows 的变化(defaultExpandAllGroupRows 和 defaultExpandAllRows 只在初始化时生效)\nwatch([() => props.expandAllGroupRows, () => props.expandAllRows], () => {\n if (props.expandAllGroupRows || props.expandAllRows) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n});\n\nconst groupedData = computed(() => {\n const dataSource = props.dataSource || [];\n\n // 如果设置了 groupBy,使用已计算的分组\n if (props.groupBy && state.value.groups) {\n // 返回分组后的数据\n const grouped: Array<{ type: 'section' | 'data'; groupKey?: string | number; data?: Data[] }> = [];\n\n state.value.groupKeys.forEach((groupKey) => {\n const groupData = (state.value.groups as Map<string | number, Data[]>).get(groupKey) || [];\n\n grouped.push({ type: 'section', groupKey });\n grouped.push({ type: 'data', data: groupData });\n });\n\n return grouped;\n }\n\n return dataSource;\n});\n\nconst rawDataForFilterSort = computed(() => {\n return Array.isArray(groupedData.value) &&\n groupedData.value.length > 0 &&\n typeof groupedData.value[0] === 'object' &&\n 'type' in groupedData.value[0]\n ? groupedData.value.filter((item: any) => item.type === 'data').flatMap((item: any) => item.data || [])\n : (groupedData.value as Data[]);\n});\n\n// 监听 columnsWithSelectionAndExpand 中 filteredValue 的变化,同步到 queries\n// 这样当用户在自定义表头筛选器中直接修改 filteredValue 时,能够触发筛选\n// 注意:这里监听 columnsWithSelectionAndExpand 而不是 mergedColumnsWithQueries,\n// 因为 mergedColumnsWithQueries 依赖于 queries,可能导致循环依赖\n// 性能优化:只提取有 filteredValue 和 onFilter 的列,避免不必要的遍历和深度比较\nwatch(\n () => {\n const columns = columnsWithSelectionAndExpand.value;\n if (!columns || columns.length === 0) {\n return null;\n }\n // 只提取有 onFilter 的列,减少不必要的处理\n const filterColumns = columns\n .filter((col) => {\n const dataIndex = col.dataIndex || col.key;\n return dataIndex && col.onFilter;\n })\n .map((col) => {\n const dataIndex = col.dataIndex || col.key;\n const filteredValue = col.filteredValue;\n // 只提取必要信息,避免创建大对象\n return {\n dataIndex: dataIndex as string,\n // 对于数组,使用 JSON.stringify 进行浅比较(比 isEqual 快)\n // 对于非数组,直接使用值\n filteredValueKey: Array.isArray(filteredValue)\n ? `${dataIndex}:${filteredValue.length}:${filteredValue.join(',')}`\n : filteredValue,\n filteredValue,\n onFilter: col.onFilter,\n };\n });\n return filterColumns.length > 0 ? filterColumns : null;\n },\n (columnFilters, oldColumnFilters) => {\n if (!columnFilters || columnFilters.length === 0) {\n return;\n }\n // 如果旧值存在且长度相同,可以快速比较\n if (oldColumnFilters && oldColumnFilters.length === columnFilters.length) {\n let hasChange = false;\n for (let i = 0; i < columnFilters.length; i++) {\n if (columnFilters[i].filteredValueKey !== oldColumnFilters[i]?.filteredValueKey) {\n hasChange = true;\n break;\n }\n }\n if (!hasChange) {\n return; // 没有变化,直接返回\n }\n }\n // 有变化时才进行详细比较和更新\n columnFilters.forEach((columnFilter) => {\n const { dataIndex, filteredValue: columnFilteredValue, onFilter } = columnFilter;\n if (!dataIndex || !onFilter || columnFilteredValue === undefined) {\n return;\n }\n const curQuery = foundation.getQuery(dataIndex);\n const queryFilteredValue = get(curQuery, 'filteredValue');\n // 快速比较:先比较引用,再比较值\n if (columnFilteredValue !== queryFilteredValue && !isEqual(columnFilteredValue, queryFilteredValue)) {\n adapter.setQuery({\n dataIndex,\n key: undefined, // 使用 dataIndex 作为 key\n filteredValue: Array.isArray(columnFilteredValue) ? columnFilteredValue : [],\n onFilter: onFilter,\n });\n }\n });\n },\n { flush: 'post' }\n);\n\n// 注意:排序/筛选属于\"带副作用的计算\"(foundation 内部可能会写缓存/状态)。\n// 不能放在 computed 里,否则会造成\"render -> computed -> 写响应式 -> render...\"的递归更新。\nwatch(\n [() => state.value.queries, () => rawDataForFilterSort.value],\n ([queries, dataSource]) => {\n // 无查询 / 无 foundation:直接回退到原始数据\n if (!foundation || !queries || queries.length === 0) {\n if (state.value.cachedFilteredSortedDataSource !== dataSource) {\n adapter.setCachedFilteredSortedDataSource(dataSource);\n }\n return;\n }\n\n try {\n const nextDataSource = foundation.getFilteredSortedDataSource(dataSource, queries);\n // 避免无意义写入触发更新\n if (!isEqual(nextDataSource, state.value.cachedFilteredSortedDataSource)) {\n adapter.setCachedFilteredSortedDataSource(nextDataSource);\n }\n } catch (e) {\n console.warn('Table sorting error:', e);\n // 出错时也回退到原始数据\n if (state.value.cachedFilteredSortedDataSource !== dataSource) {\n adapter.setCachedFilteredSortedDataSource(dataSource);\n }\n }\n },\n { immediate: true }\n);\n\nconst sortedData = computed(() => {\n return state.value.cachedFilteredSortedDataSource || rawDataForFilterSort.value;\n});\n\nconst pageData = computed(() => {\n const dataSource = sortedData.value;\n const pagination = mergedPagination.value;\n\n const propPagination = props.pagination;\n const isControlled = propPagination && typeof propPagination === 'object' && propPagination.currentPage != null;\n\n if (pagination && typeof pagination === 'object' && pagination !== false && !isControlled) {\n const currentPage = pagination.currentPage || 1;\n const pageSize = pagination.pageSize || 10;\n const start = (currentPage - 1) * pageSize;\n const end = start + pageSize;\n return dataSource.slice(start, end);\n }\n\n return dataSource;\n});\n\nconst displayData = computed(() => {\n // 如果有分组,需要将分组行和数据行合并\n if (props.groupBy && state.value.groups) {\n // 获取排序和筛选后的数据,如果为空或未初始化则使用原始数据源\n const sortedFilteredData =\n state.value.cachedFilteredSortedDataSource && state.value.cachedFilteredSortedDataSource.length > 0\n ? state.value.cachedFilteredSortedDataSource\n : props.dataSource || [];\n\n // 重新组织分组数据(基于排序和筛选后的数据)\n const result: any[] = [];\n const groupKeys = state.value.groupKeys || [];\n\n // 创建一个 Map 来快速查找 record 对应的 key\n const recordKeyMap = new Map<Data, string | number>();\n const allKeys = new Set<string | number>();\n sortedFilteredData.forEach((record) => {\n // 使用 record 本身来获取 key,不依赖索引\n const key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n if (key != null && key !== '') {\n recordKeyMap.set(record, key);\n allKeys.add(key);\n }\n });\n\n groupKeys.forEach((groupKey) => {\n const groupRecords = (state.value.groups as Map<string | number, Data[]>).get(groupKey);\n if (!Array.isArray(groupRecords) || groupRecords.length === 0) {\n return;\n }\n\n // 创建 groupRecords 的 key Set 用于快速查找\n const groupKeySet = new Set<string | number>();\n if (Array.isArray(groupRecords)) {\n groupRecords.forEach((record) => {\n const key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n if (key != null && key !== '') {\n groupKeySet.add(key);\n }\n });\n }\n\n // 获取该分组中在排序和筛选后数据中的记录\n // 如果 sortedFilteredData 为空,直接使用 groupRecords\n let groupData: Data[] = [];\n\n // 如果 groupKeySet 为空(说明无法从 groupRecords 中提取 key),直接使用 groupRecords\n if (groupKeySet.size === 0) {\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n } else if (sortedFilteredData.length > 0) {\n // 从 sortedFilteredData 中筛选出属于该分组的记录\n groupData = sortedFilteredData.filter((record) => {\n // 先尝试从 recordKeyMap 获取 key\n let key = recordKeyMap.get(record);\n if (key == null || key === '') {\n // 如果 recordKeyMap 中没有,直接计算 key\n key = props.rowKey\n ? typeof props.rowKey === 'function'\n ? props.rowKey(record)\n : get(record, props.rowKey, '')\n : get(record, 'key', '');\n }\n return key != null && key !== '' && groupKeySet.has(key);\n });\n\n // 如果通过 key 匹配失败,直接使用 groupRecords\n if (groupData.length === 0 && groupRecords.length > 0) {\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n }\n } else {\n // 如果 sortedFilteredData 为空,直接使用 groupRecords\n // 确保 groupRecords 中的所有项都是对象\n groupData = groupRecords.filter((item) => item && typeof item === 'object' && !Array.isArray(item));\n }\n\n // 只要分组在原始数据中存在,就添加分组行(即使排序筛选后没有数据)\n // 分组行应该总是显示,数据行根据展开状态和是否有匹配数据来决定\n result.push({ __semiTableGroupSection: true, groupKey });\n // 只有当分组展开且有匹配的数据时才添加数据行\n if (isGroupExpanded(groupKey) && groupData.length > 0) {\n result.push(...groupData);\n }\n });\n\n // 应用分页(如果有)\n const pagination = mergedPagination.value;\n const propPagination = props.pagination;\n const isControlled = propPagination && typeof propPagination === 'object' && propPagination.currentPage != null;\n\n if (pagination && typeof pagination === 'object' && pagination !== false && !isControlled) {\n // 分页时需要保持分组行的位置(简化处理:暂时不分页)\n return result;\n }\n\n return result;\n }\n\n if (!isTreeTable.value) {\n return pageData.value;\n }\n\n const ds = props.dataSource || [];\n const flat: any[] = [];\n const walk = (list: any[], level: number) => {\n list.forEach((item, idx) => {\n if (!item) {\n return;\n }\n // 为树形行注入 level(不改动原对象引用,避免影响用户数据)\n const row = { ...(item as any), __semiTableTreeLevel: level };\n flat.push(row);\n\n const key = getRecordKey(item, idx);\n const expanded = state.value.expandedRowKeys.includes(key);\n if (expanded && hasTreeChildren(item)) {\n walk((item as any)[childrenRecordName.value], level + 1);\n }\n });\n };\n walk(ds as any[], 0);\n return flat;\n});\n\nconst showPagination = computed(() => {\n return props.pagination !== false && mergedPagination.value !== false;\n});\n\nconst memoizedPagination = computed(() => {\n if (!mergedPagination.value || typeof mergedPagination.value !== 'object') {\n return null;\n }\n const result = foundation.memoizedPagination(mergedPagination.value);\n return result;\n});\n\nconst paginationProps = computed(() => {\n const pagination = memoizedPagination.value;\n if (!pagination) {\n return null;\n }\n // 从 mergedPagination 中获取原始 total,确保用户传入的 total 不会被覆盖\n const originalPagination = mergedPagination.value;\n let total: number;\n if (originalPagination && typeof originalPagination === 'object' && originalPagination.total !== undefined) {\n total = originalPagination.total;\n } else if (pagination.total !== undefined) {\n total = pagination.total;\n } else {\n total = (props.dataSource || []).length;\n }\n\n // 从原始 props.pagination 中获取回调函数\n const originalPaginationObj = props.pagination && typeof props.pagination === 'object' ? props.pagination : null;\n\n return {\n currentPage: pagination.currentPage || 1,\n pageSize: pagination.pageSize || 10,\n total,\n onPageChange: (page: number) => {\n adapter.setCurrentPage(page);\n if (originalPaginationObj && typeof originalPaginationObj.onPageChange === 'function') {\n originalPaginationObj.onPageChange(page, pagination.pageSize || 10);\n }\n },\n onPageSizeChange: (pageSize: number) => {\n adapter.setPagination({ ...pagination, pageSize, currentPage: 1 });\n if (originalPaginationObj && typeof originalPaginationObj.onPageSizeChange === 'function') {\n originalPaginationObj.onPageSizeChange(pageSize, 1);\n }\n },\n };\n});\n\nconst renderPagination = computed(() => {\n if (props.renderPagination) {\n return () => props.renderPagination(memoizedPagination.value as TablePaginationProps);\n }\n return null;\n});\n\nconst getPaginationInfo = (locale?: any) => {\n if (!memoizedPagination.value) {\n return '';\n }\n return foundation.formatPaginationInfo(memoizedPagination.value, locale?.pageText || '');\n};\n\nconst paginationPosition = computed(() => {\n const pagination = mergedPagination.value;\n if (pagination && typeof pagination === 'object') {\n return pagination.position || 'bottom';\n }\n return 'bottom';\n});\n\n// Methods\nconst getColumnStyle = (column: ColumnProps) => {\n const style: { width?: string; minWidth?: string } = {};\n if (column.width) {\n const width = typeof column.width === 'number' ? `${column.width}px` : column.width;\n style.width = width;\n style.minWidth = width;\n }\n return style;\n};\n\n// 获取列的插槽名称(用于作用域插槽)\nconst getColumnSlotName = (column: ColumnProps): string | null => {\n // 优先使用 key,其次使用 dataIndex\n if (column.key) {\n return String(column.key);\n }\n if (column.dataIndex) {\n return String(column.dataIndex);\n }\n return null;\n};\n\n// 获取列的值\nconst getColumnValue = (record: Data, column: ColumnProps): any => {\n if (column.dataIndex) {\n return get(record, column.dataIndex, '');\n }\n return record;\n};\n\nconst getRowClass = (record: Data, index: number) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n const key = getRecordKey(record, index);\n // 确保返回一个字符串,避免初始化时 className 不生效\n const baseClass = classnames(\n `${prefixCls.value}-row`,\n {\n [`${prefixCls.value}-row-selected`]: isRowSelected(record),\n [`${prefixCls.value}-row-expanded`]: isRowExpanded(record),\n [`${prefixCls.value}-row-disabled`]: isRowDisabled(record),\n [`${prefixCls.value}-row-hover`]: state.value.hoveredRowKey === key,\n },\n customRowProps.className\n );\n return baseClass || '';\n};\n\nconst getRowStyle = (record: Data, index: number): CSSProperties => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n // 确保返回一个响应式对象,避免初始化时样式不生效\n if (customRowProps && customRowProps.style) {\n return { ...customRowProps.style };\n }\n return {};\n};\n\nconst getRowProps = (record: Data, index: number) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n if (!customRowProps || typeof customRowProps !== 'object') {\n return {};\n }\n // class/style 已由 getRowClass/getRowStyle 处理;事件由各 handler 兜底触发,其他原生属性透传到 tr\n const {\n className: _className,\n style: _style,\n onClick: _onClick,\n onDoubleClick: _onDoubleClick,\n onMouseEnter: _onMouseEnter,\n onMouseLeave: _onMouseLeave,\n ...rest\n } = customRowProps as any;\n // 这些变量仅用于从对象中排除,不需要使用\n void _className;\n void _style;\n void _onClick;\n void _onDoubleClick;\n void _onMouseEnter;\n void _onMouseLeave;\n return rest;\n};\n\n// 获取分组行的属性\nconst getGroupedRowProps = (groupKey: string | number | undefined, index: number) => {\n if (!props.onGroupedRow) {\n return {};\n }\n // 构造分组 record 对象(与 React 版本一致)\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n // 直接使用 groupRecordsFromMap,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n const customProps = props.onGroupedRow(groupRecord, index);\n if (!customProps || typeof customProps !== 'object') {\n return {};\n }\n const { ...rest } = customProps as any;\n return rest;\n};\n\nconst handleGroupRowExpanded = (expanded: boolean, groupKey: string | number, e: MouseEvent) => {\n if (!props.clickGroupedRowToExpand) {\n return;\n }\n\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n\n if (!groupRecordsFromMap || groupRecordsFromMap.length === 0) {\n return;\n }\n\n const newExpanded = expanded;\n\n if (newExpanded) {\n // 展开:添加 groupKey 到 expandedRowKeys(分组行的展开状态)\n if (!state.value.expandedRowKeys.includes(groupKey)) {\n state.value.expandedRowKeys = [...state.value.expandedRowKeys, groupKey];\n }\n } else {\n // 收起:移除 groupKey\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => k !== groupKey);\n }\n\n // 触发 onExpand 和 onExpandedRowsChange 事件(如果需要)\n if (props.onExpand) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n props.onExpand(newExpanded, groupRecord, e);\n }\n\n if (props.onExpandedRowsChange) {\n const expandedRows = getExpandedRowsByKeys(state.value.expandedRowKeys);\n props.onExpandedRowsChange(expandedRows as any);\n }\n};\n\nconst handleGroupedRowClick = (groupKey: string | number | undefined, index: number, e: MouseEvent) => {\n if (props.clickGroupedRowToExpand) {\n // 如果启用了点击分组行展开,则切换该分组的展开状态\n const groupRecordsForExpand = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n if (Array.isArray(groupRecordsForExpand) && groupRecordsForExpand.length > 0) {\n const groupKeys = groupRecordsForExpand.map((record) => getRecordKey(record, 0));\n const allExpanded = groupKeys.every((key) => state.value.expandedRowKeys.includes(key));\n if (allExpanded) {\n // 全部展开则全部收起\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => !groupKeys.includes(k));\n } else {\n // 否则全部展开\n const newExpandedKeys = [...state.value.expandedRowKeys];\n groupKeys.forEach((key) => {\n if (!newExpandedKeys.includes(key)) {\n newExpandedKeys.push(key);\n }\n });\n state.value.expandedRowKeys = newExpandedKeys;\n }\n }\n }\n\n if (props.onGroupedRow) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n const customProps = props.onGroupedRow(groupRecord, index);\n if (customProps && typeof customProps === 'object' && customProps.onClick) {\n customProps.onClick(e);\n }\n }\n};\n\n// 渲染分组行内容\nconst renderGroupSection = (groupKey: string | number | undefined) => {\n if (!props.renderGroupSection) {\n return h('span', {}, String(groupKey || ''));\n }\n // 获取该分组的所有 row keys\n const groupRecords = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey!)\n : null;\n // 从 groupRecords 中提取 rowKeys,确保 groupRecords 是数组\n const groupRowKeys =\n Array.isArray(groupRecords) && groupRecords.length > 0\n ? groupRecords.map((record) => getRecordKey(record, 0))\n : [];\n\n const result = props.renderGroupSection(groupKey, groupRowKeys);\n // 如果返回的是对象(包含 children),则返回 children,否则直接返回\n if (result && typeof result === 'object' && 'children' in result) {\n return result.children;\n }\n return result;\n};\n\n// 定义 isRowDisabled 函数(需要在 useTableSelection 之前定义)\nconst isRowDisabled = (record: Data): boolean => {\n const key = getRecordKey(record, 0);\n return state.value.disabledRowKeysSet.has(key);\n};\n\n// 使用 composable 处理选择逻辑\nconst { isRowSelected, getRowSelectionProps, titleSelectionProps, renderSelection } = useTableSelection({\n rowSelection: props.rowSelection,\n pageData,\n dataSource: computed(() => props.dataSource || []),\n state,\n adapter,\n getRecordKey,\n isRowDisabled,\n childrenRecordName: props.childrenRecordName,\n});\n\nconst isRowExpanded = (record: Data): boolean => {\n const key = getRecordKey(record, 0);\n return state.value.expandedRowKeys.includes(key);\n};\n\nconst isGroupExpanded = (groupKey: string | number | undefined): boolean => {\n if (groupKey == null) {\n return false;\n }\n // React 版本使用 isExpanded(expandedRowKeys, groupKey),直接检查 groupKey 是否在 expandedRowKeys 中\n return state.value.expandedRowKeys.includes(groupKey);\n};\n\n// 渲染分组行的展开图标\nconst renderGroupExpandIcon = (groupKey: string | number | undefined) => {\n if (props.expandIcon === false) {\n return null;\n }\n const expanded = isGroupExpanded(groupKey);\n // 如果有自定义的 renderExpandIcon,使用它(传递 groupKey 作为第三个参数)\n if (typeof props.renderExpandIcon === 'function') {\n const result = props.renderExpandIcon({ groupKey } as any, false, groupKey);\n if (result) {\n return result;\n }\n }\n return h(CustomExpandIcon, {\n expanded,\n componentType: 'expand',\n expandIcon: props.expandIcon,\n prefixCls: prefixCls.value,\n onClick: (nextExpand: boolean, e: MouseEvent) => handleGroupExpandClick(groupKey, e),\n });\n};\n\nconst handleGroupExpandClick = (groupKey: string | number | undefined, e: MouseEvent) => {\n if (groupKey == null) {\n return;\n }\n const expanded = isGroupExpanded(groupKey);\n const newExpanded = !expanded;\n\n // 更新 expandedRowKeys:直接使用 groupKey\n if (newExpanded) {\n // 展开:添加 groupKey\n if (!state.value.expandedRowKeys.includes(groupKey)) {\n state.value.expandedRowKeys = [...state.value.expandedRowKeys, groupKey];\n }\n } else {\n // 收起:移除 groupKey\n state.value.expandedRowKeys = state.value.expandedRowKeys.filter((k) => k !== groupKey);\n }\n\n // 触发 onExpand 和 onExpandedRowsChange 事件\n if (props.onExpand) {\n // 直接使用 groups Map 中的 records,因为数据结构已经统一为 Map<string | number, Data[]>\n const groupRecordsFromMap = state.value.groups\n ? (state.value.groups as Map<string | number, Data[]>).get(groupKey)\n : null;\n const groupRecord = { groupKey, records: groupRecordsFromMap || [] } as any;\n props.onExpand(newExpanded, groupRecord, e);\n }\n\n if (props.onExpandedRowsChange) {\n const expandedRows = getExpandedRowsByKeys(state.value.expandedRowKeys);\n props.onExpandedRowsChange(expandedRows as any);\n }\n\n adapter.notifyExpand(newExpanded, { groupKey } as any, e);\n adapter.notifyExpandedRowsChange(getExpandedRowsByKeys(state.value.expandedRowKeys) as any);\n};\n\nconst handleRowClick = (record: Data, index: number, e: MouseEvent) => {\n const customRowProps = props.onRow ? props.onRow(record, index) : {};\n if (customRowProps.onClick) {\n customRowProps.onClick(e);\n }\n\n // 如果启用了 expandRowByClick,点击行时切换展开状态\n if (props.expandRowByClick && props.expandedRowRender) {\n const key = getRecordKey(record, index);\n toggleExpandRow(key, record, e);\n }\n};\n\nconst handleRowDoubleClick = (record: Data, e: MouseEvent) => {\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onDoubleClick) {\n customRowProps.onDoubleClick(e);\n }\n adapter.notifyRowDoubleClick?.(record, e);\n};\n\nconst handleRowMouseEnter = (record: Data, e: MouseEvent) => {\n const key = getRecordKey(record, 0);\n adapter.setHoveredRowKey(key);\n\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onMouseEnter) {\n customRowProps.onMouseEnter(e);\n }\n adapter.notifyRowMouseEnter?.(record, e);\n};\n\nconst handleRowMouseLeave = (record: Data, e: MouseEvent) => {\n adapter.setHoveredRowKey(null);\n\n const customRowProps = props.onRow ? props.onRow(record, 0) : {};\n if (customRowProps.onMouseLeave) {\n customRowProps.onMouseLeave(e);\n }\n adapter.notifyRowMouseLeave?.(record, e);\n};\n\nconst handleSorterClick = (column: ColumnProps, e: MouseEvent) => {\n if (!column.sorter) {\n return;\n }\n e.stopPropagation();\n if (sortingInTick) {\n return;\n }\n sortingInTick = true;\n queueMicrotask(releaseGuards);\n foundation.handleSort(column, e);\n};\n\nconst handleFilterSelect = (column: ColumnProps, data: any) => {\n const dataIndex = column.dataIndex || column.key;\n if (dataIndex) {\n foundation.handleFilterSelect(dataIndex as string, data);\n }\n};\n\nconst handleFilterDropdownVisibleChange = (column: ColumnProps, visible: boolean) => {\n if (column.onFilterDropdownVisibleChange) {\n column.onFilterDropdownVisibleChange(visible);\n }\n adapter.notifyFilterDropdownVisibleChange(visible, column.dataIndex || '');\n};\n\nconst getFixedLeftOffset = (column: ColumnProps, colIndex: number) => {\n if (!isFixedLeft(column)) {\n return false;\n }\n const widths = adapter.getCellWidths(flattenColumns.value) || [];\n return Math.round(arrayAdd(widths, 0, colIndex));\n};\n\nconst getFixedRightOffset = (column: ColumnProps, colIndex: number) => {\n if (!isFixedRight(column)) {\n return false;\n }\n const widths = adapter.getCellWidths(flattenColumns.value) || [];\n return Math.round(arrayAdd(widths, colIndex + 1));\n};\n\n// 滚动事件处理:同步表头和表体的横向滚动\n// 横向滚动同步不依赖 lastScrollLeft,避免首帧不同步\nlet scrollPositionRafId: number | null = null;\nlet scrollPositionTimeoutId: number | null = null;\n\nconst applyScrollPositionClassName = (position: BodyScrollPosition) => {\n const el = wrapRef.value;\n if (!el) {\n return;\n }\n const { value: p } = prefixCls;\n const positionAll = [\n `${p}-scroll-position-both`,\n `${p}-scroll-position-middle`,\n `${p}-scroll-position-left`,\n `${p}-scroll-position-right`,\n ];\n if (position === 'both') {\n const accept = [`${p}-scroll-position-left`, `${p}-scroll-position-right`];\n el.classList.remove(...positionAll.filter((c) => !accept.includes(c)));\n el.classList.add(...accept);\n return;\n }\n const accept = [`${p}-scroll-position-${position}`];\n el.classList.remove(...positionAll.filter((c) => !accept.includes(c)));\n el.classList.add(...accept);\n};\n\nconst setScrollPositionClassName = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const node =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (node && node.children && node.children.length) {\n const scrollToLeft = node.scrollLeft === 0;\n // why use Math.abs? @see https://bugzilla.mozilla.org/show_bug.cgi?id=1447743\n const tableEl = node.children[0] as HTMLElement;\n const scrollToRight =\n Math.abs(node.scrollLeft) + 1 >= tableEl.getBoundingClientRect().width - node.getBoundingClientRect().width;\n if (scrollToLeft && scrollToRight) {\n applyScrollPositionClassName('both');\n } else if (scrollToLeft) {\n applyScrollPositionClassName('left');\n } else if (scrollToRight) {\n applyScrollPositionClassName('right');\n } else {\n applyScrollPositionClassName('middle');\n }\n }\n};\n\nconst scheduleSetScrollPositionClassName = () => {\n if (scrollPositionRafId != null) {\n return;\n }\n scrollPositionRafId = window.requestAnimationFrame(() => {\n scrollPositionRafId = null;\n setScrollPositionClassName();\n });\n};\n\n// 在横向滚动过程中频繁读写布局容易导致 fixed sticky 首帧抖动\n// 这里改成滚动停止后再更新阴影边界 class(体验上阴影会延迟几十毫秒出现,但能换来稳定的 fixed)\nconst scheduleSetScrollPositionClassNameAfterScrollEnd = () => {\n if (scrollPositionTimeoutId != null) {\n window.clearTimeout(scrollPositionTimeoutId);\n }\n scrollPositionTimeoutId = window.setTimeout(() => {\n scrollPositionTimeoutId = null;\n scheduleSetScrollPositionClassName();\n }, 80);\n};\n\nconst handleHeaderScroll = (e: Event) => {\n const target = e.target as HTMLElement;\n if (target !== e.currentTarget) {\n return;\n }\n const nextLeft = target.scrollLeft;\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const body =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (body && body.scrollLeft !== nextLeft) {\n body.scrollLeft = nextLeft;\n }\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nconst handleBodyScroll = (e: Event) => {\n const target = e.target as HTMLElement;\n // 当使用虚拟滚动时,滚动事件来自 VirtualizedBody 的 containerRef\n // 此时不检查 target !== e.currentTarget\n if (!props.virtualized && target !== e.currentTarget) {\n return;\n }\n const nextLeft = target.scrollLeft;\n if (headerWrapRef.value && headerWrapRef.value.scrollLeft !== nextLeft) {\n headerWrapRef.value.scrollLeft = nextLeft;\n }\n // 不在滚动时触发布局测量,阴影边界交由 scroll-end 更新\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nlet lastScrollTop = 0;\nconst isIE11 = () => window.navigator.userAgent.match(/Trident\\/7\\./);\n\n// 获取表体滚动容器(虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef)\nconst getBodyScrollContainer = (): HTMLElement | null => {\n if (props.virtualized && virtualizedBodyRef.value?.containerRef) {\n return virtualizedBodyRef.value.containerRef;\n }\n return bodyWrapRef.value;\n};\n\n// 仅用于 IE11/需要 preventDefault 的场景(非 passive 监听)\nconst handleWheelNonPassive = (e: WheelEvent) => {\n const { scroll = {} } = props;\n const body = getBodyScrollContainer();\n // 关键:在 fixed header 模式下,优先接管横向滚动,确保 header/body 同步(避免首帧不同步造成\"抖动错觉\")\n // 说明:trackpad/鼠标滚轮的横向滚动会先触发 wheel,再触发 scroll;在这里同步能避免第一帧 header 还没跟上。\n if (useFixedHeader.value && (e.deltaX !== 0 || e.shiftKey) && body) {\n // shift+wheel 通常表示横向滚动,deltaY 作为横向增量\n const dx = e.deltaX !== 0 ? e.deltaX : e.deltaY;\n const maxLeft = Math.max(0, body.scrollWidth - body.clientWidth);\n const nextLeft = Math.min(maxLeft, Math.max(0, body.scrollLeft + dx));\n // 阻止浏览器先滚 body 再异步同步 header 产生的首帧错位\n e.preventDefault();\n body.scrollLeft = nextLeft;\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n return;\n }\n // 针对 IE11 的特殊处理\n if (isIE11() && scroll.y) {\n e.preventDefault();\n const wd = e.deltaY;\n const { target } = e;\n const bodyTable = body;\n\n let scrollTop = 0;\n\n if (lastScrollTop) {\n scrollTop = lastScrollTop + wd;\n } else {\n scrollTop = wd;\n }\n\n if (bodyTable && target !== bodyTable) {\n bodyTable.scrollTop = scrollTop;\n }\n lastScrollTop = scrollTop;\n }\n};\n\n// 默认 wheel 处理:用 passive 监听,避免 Chrome 的 non-passive 警告\n// 不在这里调用 preventDefault(否则会触发 “Unable to preventDefault inside passive event listener”)\nconst handleWheelPassive = (_e: WheelEvent) => {\n if (!useFixedHeader.value) {\n return;\n }\n // 仅用于快速同步阴影边界 className(无需阻塞滚动)\n scheduleSetScrollPositionClassNameAfterScrollEnd();\n};\n\nlet unregisterWheelListener: null | (() => void) = null;\n\nconst registerWheelListener = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const body =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (!body) {\n return;\n }\n const { scroll = {} } = props;\n // IE11 需要 preventDefault 的分支,保留非 passive\n const shouldNonPassive = Boolean(isIE11() && scroll.y);\n const handler = shouldNonPassive ? handleWheelNonPassive : handleWheelPassive;\n body.addEventListener('wheel', handler, { passive: !shouldNonPassive });\n unregisterWheelListener = () => {\n body.removeEventListener('wheel', handler as any);\n unregisterWheelListener = null;\n };\n};\n\nconst handleColumnResize = (column: ColumnProps, _e: { width: number }) => {\n // 更新 queries 中对应列的宽度\n const updatedQueries = state.value.queries.map((q) => {\n if ((q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)) {\n return { ...q, width: _e.width };\n }\n return q;\n });\n\n // 如果 queries 中没有对应的列,添加一个\n const existingQuery = updatedQueries.find(\n (q) => (q.key && q.key === column.key) || (q.dataIndex && q.dataIndex === column.dataIndex)\n );\n if (!existingQuery) {\n const newQuery = {\n ...column,\n width: _e.width,\n };\n updatedQueries.push(newQuery);\n }\n\n // 更新查询状态\n adapter.setQueries(updatedQueries);\n\n // 触发 onChange 事件\n if (props.onChange) {\n const changeInfo = {\n filters: [],\n sorter: undefined,\n pagination: mergedPagination.value,\n extra: { changeType: 'resize' as const },\n };\n props.onChange(changeInfo as any);\n }\n};\n\nconst toggleExpandRow = (key: string | number, record: Data, e: MouseEvent) => {\n const expandedRowKeys = [...state.value.expandedRowKeys];\n const index = expandedRowKeys.indexOf(key);\n\n if (index > -1) {\n expandedRowKeys.splice(index, 1);\n } else {\n expandedRowKeys.push(key);\n }\n\n state.value.expandedRowKeys = expandedRowKeys;\n\n if (props.onExpand) {\n props.onExpand(!(index > -1), record, e);\n }\n\n if (props.onExpandedRowsChange) {\n props.onExpandedRowsChange(getExpandedRowsByKeys(expandedRowKeys) as any);\n }\n\n adapter.notifyExpand(!(index > -1), record, e);\n adapter.notifyExpandedRowsChange(getExpandedRowsByKeys(expandedRowKeys) as any);\n};\n\nconst getExpandIcon = (_record: Data) => {\n if (props.expandIcon) {\n return props.expandIcon;\n }\n return undefined;\n};\n\nconst isRowExpandable = (record: Data) => {\n const hasExpandedRowRender = typeof props.expandedRowRender === 'function';\n const hasRowExpandable = typeof props.rowExpandable === 'function';\n const hasChildren = hasTreeChildren(record as any);\n const strictExpandableResult = hasRowExpandable && props.rowExpandable!(record);\n const looseExpandableResult = !hasRowExpandable || strictExpandableResult;\n\n return (\n ((hasExpandedRowRender || hasChildren) && looseExpandableResult) ||\n (!(hasExpandedRowRender || hasChildren) && strictExpandableResult)\n );\n};\n\nconst renderExpandIcon = (record: Data, isNested = false) => {\n if (props.renderExpandIcon) {\n return props.renderExpandIcon(record, isNested);\n }\n\n if (!isRowExpandable(record)) {\n return () => null;\n }\n\n const key = getRecordKey(record, 0);\n const expanded = isRowExpanded(record);\n\n return () => {\n return h(CustomExpandIcon, {\n expanded,\n componentType: props.hideExpandedColumn || isNested ? 'tree' : 'expand',\n expandIcon: getExpandIcon(record),\n prefixCls: prefixCls.value,\n onClick: (nextExpand: boolean, e: MouseEvent) => toggleExpandRow(key, record, e),\n });\n };\n};\n\nconst handleItemsRendered = (_props: {\n overscanStartIndex: number;\n overscanStopIndex: number;\n visibleStartIndex: number;\n visibleStopIndex: number;\n}) => {\n // 虚拟滚动可见项变化时的处理\n // 可以用于优化渲染性能\n};\n\n// 选择相关逻辑已从 useTableSelection composable 中获取\n\nconst renderTitle = computed(() => {\n if (typeof props.title === 'function') {\n return () => props.title(pageData.value);\n }\n return () => props.title;\n});\n\nconst renderFooter = computed(() => {\n if (!props.footer) {\n return null;\n }\n let footer = props.footer;\n if (typeof footer === 'function') {\n footer = footer(pageData.value);\n }\n // 检查是否是有效的 VNode 或字符串\n if (typeof footer === 'string' || isVNode(footer)) {\n return () => h('div', { class: `${prefixCls.value}-footer`, 'x-semi-prop': 'footer' }, footer);\n }\n return null;\n});\n\n// Watch\n// 使用浅层监听 dataSource,只在数组引用变化时触发,减少不必要的重新计算\nwatch(\n () => props.dataSource,\n () => {\n if (foundation) {\n foundation.init();\n }\n },\n { immediate: false }\n);\n\nwatch(\n () => props.columns,\n () => {\n // 初始化 queries 从 columns\n const queries = TableFoundation.initColumnsFilteredValueAndSorterOrder([...flattenColumns.value]);\n adapter.setQueries(queries);\n if (foundation) {\n foundation.init();\n }\n },\n { immediate: true }\n // 注意:移除 deep: true,因为 columns 数组引用变化时已经足够触发更新\n // 如果用户需要修改单个 column 对象,应该替换整个 columns 数组\n);\n\n// ResizeObserver 用于检测滚动条\nlet resizeObserver: ResizeObserver | null = null;\n\nconst observeBodyResize = () => {\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const bodyWrapDOM =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n\n if (!bodyWrapDOM) {\n return;\n }\n\n const syncScrollbarState = () => {\n if (!bodyWrapDOM) {\n return;\n }\n const { offsetWidth, clientWidth } = bodyWrapDOM;\n const bodyHasScrollBar = clientWidth < offsetWidth;\n adapter.setBodyHasScrollbar(bodyHasScrollBar);\n setScrollPositionClassName();\n };\n\n // 检测滚动条的回调\n const resizeCallback = () => {\n const update = () => syncScrollbarState();\n const requestAnimationFrame = window.requestAnimationFrame || window.setTimeout;\n requestAnimationFrame(update);\n };\n\n // 使用 ResizeObserver 监听 body 容器大小变化\n if (window.ResizeObserver) {\n if (resizeObserver) {\n resizeObserver.unobserve(bodyWrapDOM);\n resizeObserver = null;\n }\n resizeObserver = new ResizeObserver(resizeCallback);\n resizeObserver.observe(bodyWrapDOM);\n }\n\n // 关键:立刻同步一次,避免首次横向滚动时才触发布局更新导致 fixed 抖动\n syncScrollbarState();\n};\n\n// 当 virtualizedBodyRef 挂载后,调用 getVirtualizedListRef\nwatch(\n () => virtualizedBodyRef.value,\n (newVal) => {\n if (newVal && props.getVirtualizedListRef && props.virtualized) {\n // 传递一个类似 react-window List 的对象,包含 scrollToItem 等方法\n props.getVirtualizedListRef(newVal);\n }\n },\n { immediate: true }\n);\n\n// 初始化 queries\nonMounted(() => {\n const queries = TableFoundation.initColumnsFilteredValueAndSorterOrder([...flattenColumns.value]);\n adapter.setQueries(queries);\n if (foundation) {\n foundation.init();\n // 如果设置了 defaultExpandAllRows,需要在 init 之后再次调用 initExpandedRowKeys\n // 因为 init 时可能使用的是旧的 dataSource,需要确保使用最新的 dataSource\n if (\n props.defaultExpandAllRows ||\n props.expandAllRows ||\n props.defaultExpandAllGroupRows ||\n props.expandAllGroupRows\n ) {\n nextTick(() => {\n foundation.initExpandedRowKeys({ groups: state.value.groups });\n });\n }\n }\n\n nextTick(() => {\n setScrollPositionClassName();\n // 使用 passive wheel 监听,避免浏览器 non-passive 警告\n registerWheelListener();\n // 当有 scroll.y 时,监听 body 容器大小变化以检测滚动条\n if (props.scroll?.y) {\n observeBodyResize();\n }\n // 确保 virtualizedBodyRef 已挂载后调用 getVirtualizedListRef\n if (virtualizedBodyRef.value && props.getVirtualizedListRef && props.virtualized) {\n props.getVirtualizedListRef(virtualizedBodyRef.value);\n }\n });\n});\n\nwatch(\n () => props.scroll?.y,\n (y, prevY) => {\n if (y && y !== prevY) {\n nextTick(() => {\n observeBodyResize();\n });\n }\n }\n);\n\nconst handleWindowResize = () => {\n setScrollPositionClassName();\n};\n\nonMounted(() => {\n window.addEventListener('resize', handleWindowResize);\n});\n\nonUnmounted(() => {\n window.removeEventListener('resize', handleWindowResize);\n // 虚拟滚动时使用 virtualizedBodyRef.containerRef,非虚拟滚动时使用 bodyWrapRef\n const bodyWrapDOM =\n props.virtualized && virtualizedBodyRef.value?.containerRef\n ? virtualizedBodyRef.value.containerRef\n : bodyWrapRef.value;\n if (resizeObserver && bodyWrapDOM) {\n resizeObserver.unobserve(bodyWrapDOM);\n resizeObserver = null;\n }\n unregisterWheelListener?.();\n});\n\n// 暴露方法供外部调用\nconst getCurrentPageData = () => {\n const retObj: { dataSource?: Data[]; groups?: Map<string | number, Data[]> | null } = {};\n if (pageData.value) {\n retObj.dataSource = pageData.value;\n }\n if (state.value.groups) {\n retObj.groups = state.value.groups;\n }\n return cloneDeep(retObj);\n};\n\n/**\n * 重置表格垂直滚动位置到顶部\n */\nconst resetScrollY = () => {\n adapter.resetScrollY();\n};\n\n/**\n * 根据 rowKeys 获取对应的 record 对象数组\n * 支持树形数据:如果当前层级找不到所有记录,递归查找子节点\n * @param rowKeys - 行的 key 数组,如果不传则使用当前选中的 rowKeys\n * @returns 对应的 record 对象数组\n */\nconst getSelectedRows = (rowKeys?: (string | number)[]): Data[] => {\n const keysToFind = rowKeys || state.value.rowSelection?.selectedRowKeys || [];\n if (!keysToFind || keysToFind.length === 0) {\n return [];\n }\n const keySet = new Set(keysToFind);\n let dataSourceForRows: Data[];\n // 优先使用已排序筛选的数据源\n dataSourceForRows = adapter.getCachedFilteredSortedDataSource() || [];\n if (!dataSourceForRows || dataSourceForRows.length === 0) {\n dataSourceForRows = pageData.value || [];\n }\n if (!dataSourceForRows || dataSourceForRows.length === 0) {\n dataSourceForRows = props.dataSource || [];\n }\n\n const selectedRows: Data[] = [];\n\n /**\n * 递归查找匹配的 record\n * 如果当前层级未找到所有记录,继续在子节点中查找(支持树形数据)\n */\n const findRows = (data: Data[]): void => {\n if (!Array.isArray(data) || data.length === 0) {\n return;\n }\n for (const record of data) {\n const key = getRecordKey(record, 0);\n if (keySet.has(key)) {\n selectedRows.push(record);\n }\n }\n\n // 如果还有未找到的记录,递归查找子节点\n if (selectedRows.length < keysToFind.length) {\n const childrenRecordName = props.childrenRecordName || 'children';\n for (const record of data) {\n const children = get(record, childrenRecordName);\n if (Array.isArray(children) && children.length > 0) {\n findRows(children);\n }\n }\n }\n };\n\n findRows(dataSourceForRows);\n return cloneDeep(selectedRows);\n};\n\n/**\n * 获取所有行的 keys\n * @returns 所有行的 key 数组\n */\nconst getAllRowKeys = (): (string | number)[] => {\n // 优先使用缓存的已排序筛选的 rowKeys\n const cachedRowKeys = adapter.getCachedFilteredSortedRowKeys();\n if (cachedRowKeys && cachedRowKeys.length > 0) {\n return [...cachedRowKeys];\n }\n // 否则使用 state 中的 allRowKeys\n if (state.value.allRowKeys && state.value.allRowKeys.length > 0) {\n return [...state.value.allRowKeys];\n }\n // 如果都没有,则从当前数据源计算\n const dataSource = props.dataSource || [];\n const keys: (string | number)[] = [];\n const collectKeys = (data: Data[]) => {\n for (const record of data) {\n const key = getRecordKey(record, 0);\n keys.push(key);\n const childrenRecordName = props.childrenRecordName || 'children';\n const children = get(record, childrenRecordName);\n if (Array.isArray(children) && children.length > 0) {\n collectKeys(children);\n }\n }\n };\n collectKeys(dataSource);\n return keys;\n};\n\ndefineExpose({\n getCurrentPageData,\n resetScrollY,\n getSelectedRows,\n getAllRowKeys,\n});\n</script>\n"],"names":["props","__props","firstDataColumnIndex","computed","idx","cols","flattenColumns","key","_a","isInnerColumnKey","childrenRecordName","isTreeTable","ds","record","hasTreeChildren","getTreeLevel","getRowIndent","colIndex","shouldProvideExpandIcon","emit","__emit","prefixCls","cssClasses","slots","useSlots","bodyRef","ref","bodyWrapRef","headerWrapRef","virtualizedBodyRef","wrapRef","state","applyingQueriesInTick","sortingInTick","releaseGuards","baseAdapter","getDataAttr","useBaseComponent","getExpandedRowsByKeys","expandedRowKeys","keySet","index","getRecordKey","adapter","selectedRowKeys","disabledRowKeys","currentPage","pagination","groups","convertedGroups","dataSource","value","setArray","firstItem","records","itemKey","r","get","validRecords","item","query","queries","existingIndex","q","isEqual","flattenData","allRowKeys","hoveredRowKey","filteredSortedDataSource","filteredSortedRowKeys","allDisabledRowKeys","_visible","_dataIndex","changeInfo","expanded","mouseEvent","expandedRows","_record","_e","selected","selectedRows","e","rowSelection","changeRows","onSelectInvert","col","scroll","sticky","widths","columns","hw","flattenedWidths","flattenDeep","match","find","foundation","bodyHasScrollBar","isFixed","flattenedCols","column","useFixedHeader","useFoundation","TableFoundation","wrapperCls","classnames","wrapperStyle","style","wrapCls","y","tableWrapperCls","tableWrapperStyle","computedTableLayout","anyColumnFixed","tableCls","headerCls","hasSticky","showHeader","headerTableStyle","x","bodyTableStyle","getHeaderStyle","_b","stickyTop","getBodyStyle","hasData","normalizeSelectionColumn","rowSelectionObj","strings","numbers","normalizeExpandColumn","cloneColumns","children","rest","next","rawFlattenColumns","flattened","flattenColumnsUtil","columnsWithSelectionAndExpand","selectionColumn","destIndex","expandColumn","selectionIndex","insertIndex","assignColumnKeys","mergedColumnsWithQueries","queryColumn","queryFilteredValue","restQueryColumn","merged","hasSorter","hasFilter","useFullRender","clickColumnToSorter","processedColumn","rawTitle","titleMap","renderSelection","tableResizable","virtualizedOnScroll","tableContext","dataIndex","sortOrder","provideTableContext","selectedRowKeysSet","mergedPagination","watch","groupBy","groupByFn","groupKeys","_index","groupKey","newExpandedRowKeys","nextTick","groupedData","grouped","groupData","rawDataForFilterSort","filterColumns","filteredValue","columnFilters","oldColumnFilters","hasChange","i","columnFilter","columnFilteredValue","onFilter","curQuery","nextDataSource","sortedData","pageData","propPagination","isControlled","pageSize","start","end","displayData","sortedFilteredData","result","recordKeyMap","allKeys","groupRecords","groupKeySet","isGroupExpanded","flat","walk","list","level","row","showPagination","memoizedPagination","paginationProps","originalPagination","total","originalPaginationObj","page","renderPagination","getPaginationInfo","locale","paginationPosition","getColumnStyle","width","getColumnSlotName","getColumnValue","getRowClass","customRowProps","isRowSelected","isRowExpanded","isRowDisabled","getRowStyle","getRowProps","_className","_style","_onClick","_onDoubleClick","_onMouseEnter","_onMouseLeave","getGroupedRowProps","groupRecordsFromMap","groupRecord","customProps","handleGroupRowExpanded","newExpanded","k","handleGroupedRowClick","groupRecordsForExpand","newExpandedKeys","renderGroupSection","h","groupRowKeys","getRowSelectionProps","titleSelectionProps","useTableSelection","renderGroupExpandIcon","CustomExpandIcon","nextExpand","handleGroupExpandClick","handleRowClick","toggleExpandRow","handleRowDoubleClick","handleRowMouseEnter","handleRowMouseLeave","handleSorterClick","handleFilterSelect","data","handleFilterDropdownVisibleChange","visible","getFixedLeftOffset","isFixedLeft","arrayAdd","getFixedRightOffset","isFixedRight","scrollPositionRafId","scrollPositionTimeoutId","applyScrollPositionClassName","position","el","p","positionAll","accept","c","setScrollPositionClassName","node","scrollToLeft","tableEl","scrollToRight","scheduleSetScrollPositionClassName","scheduleSetScrollPositionClassNameAfterScrollEnd","handleHeaderScroll","target","nextLeft","body","handleBodyScroll","lastScrollTop","isIE11","getBodyScrollContainer","handleWheelNonPassive","dx","maxLeft","wd","bodyTable","scrollTop","handleWheelPassive","unregisterWheelListener","registerWheelListener","shouldNonPassive","handler","handleColumnResize","updatedQueries","newQuery","getExpandIcon","isRowExpandable","hasExpandedRowRender","hasRowExpandable","hasChildren","strictExpandableResult","renderExpandIcon","isNested","handleItemsRendered","_props","renderTitle","renderFooter","footer","isVNode","resizeObserver","observeBodyResize","bodyWrapDOM","syncScrollbarState","offsetWidth","clientWidth","resizeCallback","update","newVal","onMounted","prevY","handleWindowResize","onUnmounted","__expose","retObj","cloneDeep","rowKeys","keysToFind","dataSourceForRows","findRows","cachedRowKeys","keys","collectKeys","_openBlock","_createElementBlock","_mergeProps","_unref","_createVNode","Spin","_createElementVNode","_Fragment","_createBlock","_resolveDynamicComponent","LocaleConsumer","_withCtx","_toDisplayString","_renderList","_normalizeStyle","TableHeader","VirtualizedBody","Empty","rowIndex","$event","TableCell","isSelectionColumn","isLastLeftFixed","isFirstFixedRight","slotProps","_renderSlot","_ctx","_normalizeClass","_hoisted_6"],"mappings":"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"}
|