@yoka-ui/ui 1.0.10-test → 1.1.1
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/@Docs-yoka/exports.generated.md +68 -62
- package/LICENSE +21 -0
- package/README.md +40 -189
- package/dist/es/assets/image/skills.zip +0 -0
- package/dist/es/business/AiChat/aichat-logo.svg +1 -0
- package/dist/es/business/AiChat/index.d.ts +3 -3
- package/dist/es/business/AiChat/index.js +322 -137
- package/dist/es/business/AiChat/index.js.map +3 -3
- package/dist/es/business/AiChat/index.module.less +24 -0
- package/dist/es/business/AiChat/intentRecognizer.js.map +1 -1
- package/dist/es/business/AiChat/navigationManager.js +6 -6
- package/dist/es/business/AiChat/navigationManager.js.map +2 -2
- package/dist/es/business/AiChat/sse.d.ts +15 -0
- package/dist/es/business/AiChat/sse.js +118 -7
- package/dist/es/business/AiChat/sse.js.map +2 -2
- package/dist/es/business/AiChat/type.d.ts +22 -23
- package/dist/es/business/AiChat/useAiChat.js +105 -75
- package/dist/es/business/AiChat/useAiChat.js.map +3 -3
- package/dist/es/business/AiChat/useTaskWorkflow.d.ts +1 -2
- package/dist/es/business/AiChat/useTaskWorkflow.js +2 -36
- package/dist/es/business/AiChat/useTaskWorkflow.js.map +2 -2
- package/dist/es/business/DrawerPageInfo/index.js.map +1 -1
- package/dist/es/business/Editor/index.d.ts +1 -1
- package/dist/es/business/Editor/index.js.map +2 -2
- package/dist/es/business/Empty/index.js +1 -1
- package/dist/es/business/Empty/index.js.map +1 -1
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js +2 -2
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js.map +2 -2
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js +3 -3
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js.map +2 -2
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js +2 -2
- package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js.map +2 -2
- package/dist/es/business/ModCommonFilter/index.d.ts +1 -1
- package/dist/es/business/ModCommonFilter/index.js.map +2 -2
- package/dist/es/business/YkCharts/Area.d.ts +18 -0
- package/dist/es/business/YkCharts/Area.js +336 -0
- package/dist/es/business/YkCharts/Area.js.map +7 -0
- package/dist/es/business/YkCharts/Bar.d.ts +21 -0
- package/dist/es/business/YkCharts/Bar.js +316 -0
- package/dist/es/business/YkCharts/Bar.js.map +7 -0
- package/dist/es/business/YkCharts/BarProperty.d.ts +21 -0
- package/dist/es/business/YkCharts/BarProperty.js +357 -0
- package/dist/es/business/YkCharts/BarProperty.js.map +7 -0
- package/dist/es/business/YkCharts/BarTotal.d.ts +21 -0
- package/dist/es/business/YkCharts/BarTotal.js +292 -0
- package/dist/es/business/YkCharts/BarTotal.js.map +7 -0
- package/dist/es/business/YkCharts/Line.d.ts +21 -0
- package/dist/es/business/YkCharts/Line.js +342 -0
- package/dist/es/business/YkCharts/Line.js.map +7 -0
- package/dist/es/business/YkCharts/Pie.d.ts +19 -0
- package/dist/es/business/YkCharts/Pie.js +107 -0
- package/dist/es/business/YkCharts/Pie.js.map +7 -0
- package/dist/es/business/YkCharts/PieProperty.d.ts +18 -0
- package/dist/es/business/YkCharts/PieProperty.js +180 -0
- package/dist/es/business/YkCharts/PieProperty.js.map +7 -0
- package/dist/es/business/YkCharts/Pies.d.ts +26 -0
- package/dist/es/business/YkCharts/Pies.js +352 -0
- package/dist/es/business/YkCharts/Pies.js.map +7 -0
- package/dist/es/business/YkCharts/constants.d.ts +1 -0
- package/dist/es/business/YkCharts/constants.js +47 -0
- package/dist/es/business/YkCharts/constants.js.map +7 -0
- package/dist/es/business/YkCharts/hooks.d.ts +4 -0
- package/dist/es/business/YkCharts/hooks.js +37 -0
- package/dist/es/business/YkCharts/hooks.js.map +7 -0
- package/dist/es/business/YkCharts/index.d.ts +9 -0
- package/dist/es/business/YkCharts/index.js +20 -0
- package/dist/es/business/YkCharts/index.js.map +7 -0
- package/dist/es/business/YkCharts/index.module.less +164 -0
- package/dist/es/business/YkCharts/tooltip.less +92 -0
- package/dist/es/business/YkCharts/transformData.js +16 -0
- package/dist/es/business/YkCharts/transformData.js.map +7 -0
- package/dist/es/business/YkCharts/typing.d.ts +74 -0
- package/dist/es/business/YkCharts/typing.js +1 -0
- package/dist/es/business/YkCharts/typing.js.map +7 -0
- package/dist/es/business/YkCharts/utils.d.ts +4 -0
- package/dist/es/business/YkCharts/utils.js +109 -0
- package/dist/es/business/YkCharts/utils.js.map +7 -0
- package/dist/es/business/YkCharts/variables.less +13 -0
- package/dist/es/business/YkLoginModule/SmsLoginForm.d.ts +25 -0
- package/dist/es/business/YkLoginModule/SmsLoginForm.js +178 -0
- package/dist/es/business/YkLoginModule/SmsLoginForm.js.map +7 -0
- package/dist/es/business/YkLoginModule/index.d.ts +48 -0
- package/dist/es/business/YkLoginModule/index.js +198 -0
- package/dist/es/business/YkLoginModule/index.js.map +7 -0
- package/dist/es/business/YkLoginModule/styles.module.less +169 -0
- package/dist/es/business/YkPorjectSelect/index.d.ts +1 -1
- package/dist/es/business/YkPorjectSelect/index.js +2 -2
- package/dist/es/business/YkPorjectSelect/index.js.map +2 -2
- package/dist/es/business/YkSqlEdit/code-mirror-custom.module.less +154 -0
- package/dist/es/business/YkSqlEdit/index.d.ts +20 -0
- package/dist/es/business/YkSqlEdit/index.js +180 -0
- package/dist/es/business/YkSqlEdit/index.js.map +7 -0
- package/dist/es/business/YkSqlEdit/sql-language.d.ts +11 -0
- package/dist/es/business/YkSqlEdit/sql-language.js +1460 -0
- package/dist/es/business/YkSqlEdit/sql-language.js.map +7 -0
- package/dist/es/components/DebounceInput/index.js.map +2 -2
- package/dist/es/components/MultipleSelect/index.d.ts +14 -0
- package/dist/es/components/MultipleSelect/index.js +1 -1
- package/dist/es/components/MultipleSelect/index.js.map +2 -2
- package/dist/es/components/RefreshButton/index.js.map +2 -2
- package/dist/es/components/SearchWithHistory/index.js +1 -1
- package/dist/es/components/SearchWithHistory/index.js.map +2 -2
- package/dist/es/components/TextWithToolTip/index.d.ts +1 -1
- package/dist/es/components/TextWithToolTip/index.js.map +2 -2
- package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +1 -24
- package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js +2 -2
- package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js.map +2 -2
- package/dist/es/components/TreeTransfer/index.d.ts +1 -24
- package/dist/es/components/TreeTransfer/index.js +8 -8
- package/dist/es/components/TreeTransfer/index.js.map +2 -2
- package/dist/es/components/TreeTransfer/utils/index.d.ts +1 -1
- package/dist/es/components/TreeTransfer/utils/index.js.map +2 -2
- package/dist/es/components/YKMarkdown/index.d.ts +11 -0
- package/dist/es/components/YKMarkdown/index.js +236 -0
- package/dist/es/components/YKMarkdown/index.js.map +7 -0
- package/dist/es/components/YKMarkdown/index.module.less +83 -0
- package/dist/es/components/YkDateRangePicker/YkDateRangePicker.mdx +194 -0
- package/dist/es/components/YkDateRangePicker/index.d.ts +9 -1
- package/dist/es/components/YkDateRangePicker/index.js +127 -61
- package/dist/es/components/YkDateRangePicker/index.js.map +2 -2
- package/dist/es/components/YkDateRangePicker/index.module.less +33 -9
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +1 -1
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +3 -2
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +2 -2
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +1 -1
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +23 -3
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +2 -2
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +1 -1
- package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +2 -2
- package/dist/es/components/YkRangeDateWithVS/index.d.ts +2 -2
- package/dist/es/components/YkRangeDateWithVS/index.js.map +2 -2
- package/dist/es/components/YkRangeDateWithVS/index.module.less +22 -4
- package/dist/es/components/YkRangeTimeWithRecent/index.d.ts +1 -1
- package/dist/es/components/YkRangeTimeWithRecent/index.js.map +2 -2
- package/dist/es/creative/ArcCheckbox/index.d.ts +12 -0
- package/dist/es/creative/ArcCheckbox/index.js +49 -0
- package/dist/es/creative/ArcCheckbox/index.js.map +7 -0
- package/dist/es/creative/ArcCheckbox/index.module.less +102 -0
- package/dist/es/creative/ButtonRadioWithInfo/index.js.map +1 -1
- package/dist/es/creative/ButtonWithProgress/index.d.ts +1 -1
- package/dist/es/creative/ButtonWithProgress/index.js.map +2 -2
- package/dist/es/creative/GlassSegmentedRadio/index.d.ts +24 -0
- package/dist/es/creative/GlassSegmentedRadio/index.js +75 -0
- package/dist/es/creative/GlassSegmentedRadio/index.js.map +7 -0
- package/dist/es/creative/GlassSegmentedRadio/index.module.less +241 -0
- package/dist/es/creative/SkillsWriter/index.d.ts +3 -0
- package/dist/es/creative/SkillsWriter/index.js +191 -0
- package/dist/es/creative/SkillsWriter/index.js.map +7 -0
- package/dist/es/creative/SkillsWriter/index.module.less +21 -0
- package/dist/es/index.d.ts +32 -24
- package/dist/es/index.js +90 -80
- package/dist/es/index.js.map +2 -2
- package/dist/es/index.less +45 -0
- package/dist/es/layout/FlexGrid/index.d.ts +1 -1
- package/dist/es/layout/FlexGrid/index.js.map +2 -2
- package/dist/es/layout/YkContainer/index.js.map +1 -1
- package/dist/es/layout/YkDrawer/index.d.ts +1 -1
- package/dist/es/layout/YkDrawer/index.js.map +2 -2
- package/dist/es/ui/LabelSelect/demo.js +1 -1
- package/dist/es/ui/LabelSelect/demo.js.map +2 -2
- package/dist/es/ui/LabelSelect/index.d.ts +1 -1
- package/dist/es/ui/LabelSelect/index.js +1 -1
- package/dist/es/ui/LabelSelect/index.js.map +2 -2
- package/dist/es/ui/LogicOperator/index.d.ts +1 -1
- package/dist/es/ui/LogicOperator/index.js.map +2 -2
- package/dist/es/ui/YkButton/index.d.ts +1 -1
- package/dist/es/ui/YkButton/index.js.map +2 -2
- package/dist/es/ui/YkCard/index.d.ts +1 -1
- package/dist/es/ui/YkCard/index.js +1 -1
- package/dist/es/ui/YkCard/index.js.map +2 -2
- package/dist/es/ui/YkCheckbox/index.d.ts +1 -1
- package/dist/es/ui/YkCheckbox/index.js.map +2 -2
- package/dist/es/ui/YkDescriptions/index.d.ts +1 -1
- package/dist/es/ui/YkDescriptions/index.js.map +2 -2
- package/dist/es/ui/YkPagination/index.d.ts +1 -1
- package/dist/es/ui/YkPagination/index.js.map +2 -2
- package/dist/es/ui/YkRadio/index.d.ts +1 -1
- package/dist/es/ui/YkRadio/index.js.map +2 -2
- package/dist/es/ui/YkSegmented/index.d.ts +1 -1
- package/dist/es/ui/YkSegmented/index.js.map +2 -2
- package/dist/es/ui/YkSelect/index.d.ts +1 -1
- package/dist/es/ui/YkSelect/index.js.map +2 -2
- package/dist/es/ui/YkSpin/index.d.ts +1 -1
- package/dist/es/ui/YkSpin/index.js.map +2 -2
- package/dist/es/ui/YkStatistic/index.d.ts +1 -1
- package/dist/es/ui/YkStatistic/index.js.map +2 -2
- package/dist/es/ui/YkSwitch/index.d.ts +1 -1
- package/dist/es/ui/YkSwitch/index.js.map +2 -2
- package/dist/es/ui/YkTabs/index.d.ts +1 -1
- package/dist/es/ui/YkTabs/index.js.map +2 -2
- package/dist/es/ui/YkTooltip/index.d.ts +1 -1
- package/dist/es/ui/YkTooltip/index.js.map +2 -2
- package/dist/es/utils/styleUtils.js.map +2 -2
- package/dist/es/utils/ykStorybookDoc.d.ts +15 -0
- package/dist/es/utils/ykStorybookDoc.js +24 -2
- package/dist/es/utils/ykStorybookDoc.js.map +2 -2
- package/dist/lib/assets/image/skills.zip +0 -0
- package/dist/lib/business/AiChat/aichat-logo.svg +1 -0
- package/dist/lib/business/AiChat/index.d.ts +3 -3
- package/dist/lib/business/AiChat/index.js +311 -129
- package/dist/lib/business/AiChat/index.js.map +3 -3
- package/dist/lib/business/AiChat/index.module.less +24 -0
- package/dist/lib/business/AiChat/intentRecognizer.js.map +1 -1
- package/dist/lib/business/AiChat/navigationManager.js +6 -6
- package/dist/lib/business/AiChat/navigationManager.js.map +2 -2
- package/dist/lib/business/AiChat/sse.d.ts +15 -0
- package/dist/lib/business/AiChat/sse.js +117 -7
- package/dist/lib/business/AiChat/sse.js.map +2 -2
- package/dist/lib/business/AiChat/type.d.ts +22 -23
- package/dist/lib/business/AiChat/type.js.map +1 -1
- package/dist/lib/business/AiChat/useAiChat.js +104 -74
- package/dist/lib/business/AiChat/useAiChat.js.map +3 -3
- package/dist/lib/business/AiChat/useTaskWorkflow.d.ts +1 -2
- package/dist/lib/business/AiChat/useTaskWorkflow.js +0 -34
- package/dist/lib/business/AiChat/useTaskWorkflow.js.map +2 -2
- package/dist/lib/business/DrawerPageInfo/index.js.map +1 -1
- package/dist/lib/business/Editor/index.d.ts +1 -1
- package/dist/lib/business/Editor/index.js.map +2 -2
- package/dist/lib/business/Empty/index.js +1 -1
- package/dist/lib/business/Empty/index.js.map +1 -1
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js +3 -3
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js.map +2 -2
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js +4 -4
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js.map +2 -2
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js +3 -3
- package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js.map +2 -2
- package/dist/lib/business/ModCommonFilter/index.d.ts +1 -1
- package/dist/lib/business/ModCommonFilter/index.js.map +2 -2
- package/dist/lib/business/YkCharts/Area.d.ts +18 -0
- package/dist/lib/business/YkCharts/Area.js +346 -0
- package/dist/lib/business/YkCharts/Area.js.map +7 -0
- package/dist/lib/business/YkCharts/Bar.d.ts +21 -0
- package/dist/lib/business/YkCharts/Bar.js +323 -0
- package/dist/lib/business/YkCharts/Bar.js.map +7 -0
- package/dist/lib/business/YkCharts/BarProperty.d.ts +21 -0
- package/dist/lib/business/YkCharts/BarProperty.js +370 -0
- package/dist/lib/business/YkCharts/BarProperty.js.map +7 -0
- package/dist/lib/business/YkCharts/BarTotal.d.ts +21 -0
- package/dist/lib/business/YkCharts/BarTotal.js +298 -0
- package/dist/lib/business/YkCharts/BarTotal.js.map +7 -0
- package/dist/lib/business/YkCharts/Line.d.ts +21 -0
- package/dist/lib/business/YkCharts/Line.js +349 -0
- package/dist/lib/business/YkCharts/Line.js.map +7 -0
- package/dist/lib/business/YkCharts/Pie.d.ts +19 -0
- package/dist/lib/business/YkCharts/Pie.js +117 -0
- package/dist/lib/business/YkCharts/Pie.js.map +7 -0
- package/dist/lib/business/YkCharts/PieProperty.d.ts +18 -0
- package/dist/lib/business/YkCharts/PieProperty.js +193 -0
- package/dist/lib/business/YkCharts/PieProperty.js.map +7 -0
- package/dist/lib/business/YkCharts/Pies.d.ts +26 -0
- package/dist/lib/business/YkCharts/Pies.js +341 -0
- package/dist/lib/business/YkCharts/Pies.js.map +7 -0
- package/dist/lib/business/YkCharts/constants.d.ts +1 -0
- package/dist/lib/business/YkCharts/constants.js +71 -0
- package/dist/lib/business/YkCharts/constants.js.map +7 -0
- package/dist/lib/business/YkCharts/hooks.d.ts +4 -0
- package/dist/lib/business/YkCharts/hooks.js +62 -0
- package/dist/lib/business/YkCharts/hooks.js.map +7 -0
- package/dist/lib/business/YkCharts/index.d.ts +9 -0
- package/dist/lib/business/YkCharts/index.js +61 -0
- package/dist/lib/business/YkCharts/index.js.map +7 -0
- package/dist/lib/business/YkCharts/index.module.less +164 -0
- package/dist/lib/business/YkCharts/tooltip.less +92 -0
- package/dist/lib/business/YkCharts/transformData.js +40 -0
- package/dist/lib/business/YkCharts/transformData.js.map +7 -0
- package/dist/lib/business/YkCharts/typing.d.ts +74 -0
- package/dist/lib/business/YkCharts/typing.js +18 -0
- package/dist/lib/business/YkCharts/typing.js.map +7 -0
- package/dist/lib/business/YkCharts/utils.d.ts +4 -0
- package/dist/lib/business/YkCharts/utils.js +143 -0
- package/dist/lib/business/YkCharts/utils.js.map +7 -0
- package/dist/lib/business/YkCharts/variables.less +13 -0
- package/dist/lib/business/YkLoginModule/SmsLoginForm.d.ts +25 -0
- package/dist/lib/business/YkLoginModule/SmsLoginForm.js +171 -0
- package/dist/lib/business/YkLoginModule/SmsLoginForm.js.map +7 -0
- package/dist/lib/business/YkLoginModule/index.d.ts +48 -0
- package/dist/lib/business/YkLoginModule/index.js +206 -0
- package/dist/lib/business/YkLoginModule/index.js.map +7 -0
- package/dist/lib/business/YkLoginModule/styles.module.less +169 -0
- package/dist/lib/business/YkPorjectSelect/index.d.ts +1 -1
- package/dist/lib/business/YkPorjectSelect/index.js +3 -3
- package/dist/lib/business/YkPorjectSelect/index.js.map +2 -2
- package/dist/lib/business/YkSqlEdit/code-mirror-custom.module.less +154 -0
- package/dist/lib/business/YkSqlEdit/index.d.ts +20 -0
- package/dist/lib/business/YkSqlEdit/index.js +202 -0
- package/dist/lib/business/YkSqlEdit/index.js.map +7 -0
- package/dist/lib/business/YkSqlEdit/sql-language.d.ts +11 -0
- package/dist/lib/business/YkSqlEdit/sql-language.js +1493 -0
- package/dist/lib/business/YkSqlEdit/sql-language.js.map +7 -0
- package/dist/lib/components/DebounceInput/index.js.map +2 -2
- package/dist/lib/components/MultipleSelect/index.d.ts +14 -0
- package/dist/lib/components/MultipleSelect/index.js +1 -1
- package/dist/lib/components/MultipleSelect/index.js.map +2 -2
- package/dist/lib/components/RefreshButton/index.js.map +2 -2
- package/dist/lib/components/SearchWithHistory/index.js +1 -1
- package/dist/lib/components/SearchWithHistory/index.js.map +2 -2
- package/dist/lib/components/TextWithToolTip/index.d.ts +1 -1
- package/dist/lib/components/TextWithToolTip/index.js.map +2 -2
- package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +1 -24
- package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js +2 -2
- package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js.map +2 -2
- package/dist/lib/components/TreeTransfer/index.d.ts +1 -24
- package/dist/lib/components/TreeTransfer/index.js +3 -3
- package/dist/lib/components/TreeTransfer/index.js.map +2 -2
- package/dist/lib/components/TreeTransfer/utils/index.d.ts +1 -1
- package/dist/lib/components/TreeTransfer/utils/index.js.map +2 -2
- package/dist/lib/components/YKMarkdown/index.d.ts +11 -0
- package/dist/lib/components/YKMarkdown/index.js +188 -0
- package/dist/lib/components/YKMarkdown/index.js.map +7 -0
- package/dist/lib/components/YKMarkdown/index.module.less +83 -0
- package/dist/lib/components/YkDateRangePicker/YkDateRangePicker.mdx +194 -0
- package/dist/lib/components/YkDateRangePicker/index.d.ts +9 -1
- package/dist/lib/components/YkDateRangePicker/index.js +127 -61
- package/dist/lib/components/YkDateRangePicker/index.js.map +2 -2
- package/dist/lib/components/YkDateRangePicker/index.module.less +33 -9
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +1 -1
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +3 -2
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +2 -2
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +1 -1
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +22 -2
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +2 -2
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +1 -1
- package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +2 -2
- package/dist/lib/components/YkRangeDateWithVS/index.d.ts +2 -2
- package/dist/lib/components/YkRangeDateWithVS/index.js.map +2 -2
- package/dist/lib/components/YkRangeDateWithVS/index.module.less +22 -4
- package/dist/lib/components/YkRangeTimeWithRecent/index.d.ts +1 -1
- package/dist/lib/components/YkRangeTimeWithRecent/index.js.map +2 -2
- package/dist/lib/creative/ArcCheckbox/index.d.ts +12 -0
- package/dist/lib/creative/ArcCheckbox/index.js +50 -0
- package/dist/lib/creative/ArcCheckbox/index.js.map +7 -0
- package/dist/lib/creative/ArcCheckbox/index.module.less +102 -0
- package/dist/lib/creative/ButtonRadioWithInfo/index.js.map +1 -1
- package/dist/lib/creative/ButtonWithProgress/index.d.ts +1 -1
- package/dist/lib/creative/ButtonWithProgress/index.js.map +2 -2
- package/dist/lib/creative/GlassSegmentedRadio/index.d.ts +24 -0
- package/dist/lib/creative/GlassSegmentedRadio/index.js +78 -0
- package/dist/lib/creative/GlassSegmentedRadio/index.js.map +7 -0
- package/dist/lib/creative/GlassSegmentedRadio/index.module.less +241 -0
- package/dist/lib/creative/SkillsWriter/index.d.ts +3 -0
- package/dist/lib/creative/SkillsWriter/index.js +200 -0
- package/dist/lib/creative/SkillsWriter/index.js.map +7 -0
- package/dist/lib/creative/SkillsWriter/index.module.less +21 -0
- package/dist/lib/index.d.ts +32 -24
- package/dist/lib/index.js +39 -24
- package/dist/lib/index.js.map +2 -2
- package/dist/lib/index.less +45 -0
- package/dist/lib/layout/FlexGrid/index.d.ts +1 -1
- package/dist/lib/layout/FlexGrid/index.js.map +2 -2
- package/dist/lib/layout/YkContainer/index.js.map +1 -1
- package/dist/lib/layout/YkDrawer/index.d.ts +1 -1
- package/dist/lib/layout/YkDrawer/index.js.map +2 -2
- package/dist/lib/ui/LabelSelect/demo.js +1 -1
- package/dist/lib/ui/LabelSelect/demo.js.map +2 -2
- package/dist/lib/ui/LabelSelect/index.d.ts +1 -1
- package/dist/lib/ui/LabelSelect/index.js +1 -1
- package/dist/lib/ui/LabelSelect/index.js.map +2 -2
- package/dist/lib/ui/LogicOperator/index.d.ts +1 -1
- package/dist/lib/ui/LogicOperator/index.js.map +2 -2
- package/dist/lib/ui/YkButton/index.d.ts +1 -1
- package/dist/lib/ui/YkButton/index.js.map +2 -2
- package/dist/lib/ui/YkCard/index.d.ts +1 -1
- package/dist/lib/ui/YkCard/index.js.map +2 -2
- package/dist/lib/ui/YkCheckbox/index.d.ts +1 -1
- package/dist/lib/ui/YkCheckbox/index.js.map +2 -2
- package/dist/lib/ui/YkDescriptions/index.d.ts +1 -1
- package/dist/lib/ui/YkDescriptions/index.js.map +2 -2
- package/dist/lib/ui/YkPagination/index.d.ts +1 -1
- package/dist/lib/ui/YkPagination/index.js.map +2 -2
- package/dist/lib/ui/YkRadio/index.d.ts +1 -1
- package/dist/lib/ui/YkRadio/index.js.map +2 -2
- package/dist/lib/ui/YkSegmented/index.d.ts +1 -1
- package/dist/lib/ui/YkSegmented/index.js.map +2 -2
- package/dist/lib/ui/YkSelect/index.d.ts +1 -1
- package/dist/lib/ui/YkSelect/index.js.map +2 -2
- package/dist/lib/ui/YkSpin/index.d.ts +1 -1
- package/dist/lib/ui/YkSpin/index.js.map +2 -2
- package/dist/lib/ui/YkStatistic/index.d.ts +1 -1
- package/dist/lib/ui/YkStatistic/index.js.map +2 -2
- package/dist/lib/ui/YkSwitch/index.d.ts +1 -1
- package/dist/lib/ui/YkSwitch/index.js.map +2 -2
- package/dist/lib/ui/YkTabs/index.d.ts +1 -1
- package/dist/lib/ui/YkTabs/index.js.map +2 -2
- package/dist/lib/ui/YkTooltip/index.d.ts +1 -1
- package/dist/lib/ui/YkTooltip/index.js.map +2 -2
- package/dist/lib/utils/styleUtils.js.map +2 -2
- package/dist/lib/utils/ykStorybookDoc.d.ts +15 -0
- package/dist/lib/utils/ykStorybookDoc.js +23 -1
- package/dist/lib/utils/ykStorybookDoc.js.map +2 -2
- package/package.json +151 -144
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/YkRangeDateWithVS/YkRangeDateWithVSRange.tsx"],
|
|
4
|
-
"sourcesContent": ["import type { DatePickerProps, TimeRangePickerProps } from 'antd';\nimport { Anchor, ConfigProvider, DatePicker, Flex, Popover, Tooltip, theme } from 'antd';\nimport classNames from 'classnames';\nimport dayjs, { Dayjs } from 'dayjs';\nimport { findIndex, isEqual } from 'lodash';\nimport React, { useEffect, useMemo, useState, type ReactNode } from 'react';\nimport styles from './styles';\n\ntype DateValue = Dayjs | null;\ntype RangeValue = [DateValue, DateValue] | null;\ntype dateOptionType = {\n label: string;\n value: () => RangeValue;\n};\n\nexport type YkRangeDateWithVSRangeProps = {\n timeType: string;\n rangeDate: RangeValue;\n timeOptions: string[];\n dateCompare: boolean;\n onChange: (value: { timeType: string; rangeDate: RangeValue }) => void;\n getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;\n disabledDate?: DatePickerProps['disabledDate'];\n presetsOptions?: { label: string; value: () => [Dayjs, Dayjs] }[];\n /** 1: 运营节点 2: 广告节点 */\n milestoneFilterType?: 1 | 2;\n /** 项目节点列表(日历侧栏与日期标记) */\n milestone?: ProjectNodeItem[];\n /** 节假日(与里程碑一并用于日期 cell 标记) */\n holidays?: ProjectNodeItem[];\n /** 自定义主区间输入框展示文案(string / ReactNode);传入后默认日期格式文案由覆盖层展示,仍通过面板改期 */\n rangeDisplayLabel?: ReactNode;\n};\n\nconst itemCheckIconClass = (className: string) => {\n return classNames('iconfont', className, styles.active);\n};\n\nconst past: (n: number, picker: 'week' | 'day' | 'month' | 'year', today?: boolean) => RangeValue = (\n n,\n picker,\n today = false,\n) => [dayjs().subtract(n, picker).startOf(picker), today ? dayjs() : dayjs().subtract(n, picker).endOf(picker)];\n\nconst dateOptions: dateOptionType[] = [\n { label: '今天', value: () => past(0, 'day', true) },\n { label: '昨天', value: () => past(1, 'day') },\n { label: '本周', value: () => past(0, 'week', true) },\n { label: '上周', value: () => past(1, 'week') },\n { label: '本月', value: () => past(0, 'month', true) },\n { label: '上月', value: () => past(1, 'month') },\n { label: '今年', value: () => past(0, 'year', true) },\n { label: '去年', value: () => past(1, 'year') },\n { label: '近7天', value: () => past(6, 'day', true) },\n { label: '近14天', value: () => past(13, 'day', true) },\n { label: '近30天', value: () => past(29, 'day', true) },\n { label: '近60天', value: () => past(59, 'day', true) },\n { label: '近90天', value: () => past(89, 'day', true) },\n { label: '近180天', value: () => past(179, 'day', true) },\n {\n label: '前7天',\n value: () => [dayjs().subtract(7, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前14天',\n value: () => [dayjs().subtract(14, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前30天',\n value: () => [dayjs().subtract(30, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前60天',\n value: () => [dayjs().subtract(60, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n];\nconst weekOptions: dateOptionType[] = [\n { label: '本周', value: () => past(0, 'week', true) },\n { label: '上周', value: () => past(1, 'week') },\n { label: '近3周', value: () => past(2, 'week', true) },\n { label: '近4周', value: () => past(3, 'week', true) },\n { label: '近5周', value: () => past(4, 'week', true) },\n { label: '近6周', value: () => past(5, 'week', true) },\n { label: '近7周', value: () => past(6, 'week', true) },\n { label: '近14周', value: () => past(13, 'week', true) },\n { label: '近30周', value: () => past(29, 'week', true) },\n { label: '近60周', value: () => past(59, 'week', true) },\n {\n label: '前2周',\n value: () => [dayjs().subtract(2, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前3周',\n value: () => [dayjs().subtract(3, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前4周',\n value: () => [dayjs().subtract(4, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前5周',\n value: () => [dayjs().subtract(5, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n];\nconst monthOptions: dateOptionType[] = [\n { label: '本月', value: () => past(0, 'month', true) },\n { label: '上月', value: () => past(1, 'month') },\n { label: '今年', value: () => past(0, 'year', true) },\n { label: '去年', value: () => past(1, 'year') },\n { label: '近3月', value: () => past(2, 'month', true) },\n { label: '近4月', value: () => past(3, 'month', true) },\n { label: '近5月', value: () => past(4, 'month', true) },\n { label: '近6月', value: () => past(5, 'month', true) },\n { label: '近7月', value: () => past(6, 'month', true) },\n { label: '近8月', value: () => past(7, 'month', true) },\n { label: '近9月', value: () => past(8, 'month', true) },\n { label: '近10月', value: () => past(9, 'month', true) },\n { label: '近11月', value: () => past(10, 'month', true) },\n { label: '近12月', value: () => past(11, 'month', true) },\n {\n label: '前2月',\n value: () => [dayjs().subtract(2, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前3月',\n value: () => [dayjs().subtract(3, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前4月',\n value: () => [dayjs().subtract(4, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前5月',\n value: () => [dayjs().subtract(5, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前6月',\n value: () => [dayjs().subtract(6, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前7月',\n value: () => [dayjs().subtract(7, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前8月',\n value: () => [dayjs().subtract(8, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前9月',\n value: () => [dayjs().subtract(9, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前10月',\n value: () => [dayjs().subtract(10, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前11月',\n value: () => [dayjs().subtract(11, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前12月',\n value: () => [dayjs().subtract(12, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n];\nconst startWeekOption: dateOptionType[] = [\n { label: '近7天', value: () => past(6, 'day', true) },\n { label: '近14天', value: () => past(13, 'day', true) },\n { label: '近21天', value: () => past(20, 'day', true) },\n { label: '近28天', value: () => past(27, 'day', true) },\n { label: '近98天', value: () => past(97, 'day', true) },\n { label: '近210天', value: () => past(209, 'day', true) },\n];\nconst startMonthOption: dateOptionType[] = [\n { label: '近30天', value: () => past(29, 'day', true) },\n { label: '近60天', value: () => past(59, 'day', true) },\n { label: '近90天', value: () => past(89, 'day', true) },\n { label: '近120天', value: () => past(119, 'day', true) },\n { label: '近150天', value: () => past(149, 'day', true) },\n { label: '近180天', value: () => past(179, 'day', true) },\n { label: '近210天', value: () => past(209, 'day', true) },\n { label: '近240天', value: () => past(239, 'day', true) },\n { label: '近270天', value: () => past(269, 'day', true) },\n { label: '近300天', value: () => past(299, 'day', true) },\n { label: '近330天', value: () => past(329, 'day', true) },\n { label: '近360天', value: () => past(359, 'day', true) },\n];\n\nconst pickerMap: {\n [key: string]: 'date' | 'week' | 'month';\n} = {\n 按自然周: 'week',\n 按自然月: 'month',\n 按周: 'week',\n 按月: 'month',\n};\n\nconst optionsMap: {\n [key: string]: {\n options: dateOptionType[];\n default: () => RangeValue;\n };\n} = {\n 按日: { options: dateOptions, default: () => past(14, 'day', true) },\n 按周: { options: weekOptions, default: () => past(13, 'week', true) },\n 按月: { options: monthOptions, default: () => past(11, 'month', true) },\n 按自然周: { options: weekOptions, default: () => past(13, 'week', true) },\n 按自然月: { options: monthOptions, default: () => past(11, 'month', true) },\n 按起始周: {\n options: startWeekOption,\n default: () => past(14 * 7 - 1, 'day', true),\n },\n 按起始月: {\n options: startMonthOption,\n default: () => past(12 * 30 - 1, 'day', true),\n },\n};\n\nconst YkRangeDateWithVSRange: React.FC<YkRangeDateWithVSRangeProps> = ({\n timeType,\n rangeDate,\n timeOptions,\n dateCompare,\n getPopupContainer,\n onChange,\n disabledDate = undefined,\n presetsOptions = undefined,\n milestoneFilterType = 1,\n milestone = [],\n holidays = [],\n rangeDisplayLabel,\n}) => {\n const { token } = theme.useToken();\n const hasCustomRangeDisplay = rangeDisplayLabel != null;\n const [groupOpen, setGroupOpen] = useState(false);\n // 判断数据是否变更,若未变更,则初始化日期\n const [isChange, setIsChange] = useState(false);\n const filterType = milestoneFilterType;\n const [cacheRangeDate, setCacheRangeDate] = useState<RangeValue>([null, null]);\n const [cacheTimeType, setCacheTimeType] = useState<string>(timeType);\n const [groupIndex, setGroupIndex] = useState<number | null>(null);\n const picker = cacheTimeType && pickerMap[cacheTimeType] ? pickerMap[cacheTimeType] : 'date';\n const options = presetsOptions\n ? presetsOptions\n : optionsMap[cacheTimeType]\n ? optionsMap[cacheTimeType].options\n : optionsMap['按日'].options;\n\n // 周报月报不显示项目节点(但外面选了周月,里面有按日的type,选按日时依旧可以显示项目节点,例如分包详情里的日期组件)\n const showProjectNode = useMemo(() => {\n return (\n (!timeType.includes('周') &&\n !timeType.includes('月') &&\n !cacheTimeType.includes('周') &&\n !cacheTimeType.includes('月')) ||\n cacheTimeType.includes('日')\n );\n }, [timeType, cacheTimeType]);\n\n const timeOptionAnchors =\n timeOptions?.map((v) => {\n return {\n key: v,\n title: v,\n href: v,\n };\n }) || [];\n\n // 初始化日期与日周月\n const initRangeDate = () => {\n setCacheRangeDate(rangeDate);\n setCacheTimeType(timeType);\n setIsChange(false);\n };\n\n useEffect(() => {\n if (groupOpen) {\n setGroupIndex(\n findIndex(options, (item) => {\n return isEqual(\n item.value()?.map((v) => v?.format('YYYY-MM-DD')),\n cacheRangeDate?.map((v) => v?.format('YYYY-MM-DD')),\n );\n }),\n );\n } else if (!isChange) {\n initRangeDate();\n }\n }, [cacheTimeType, groupOpen]);\n\n useEffect(() => {\n initRangeDate();\n }, [rangeDate, timeType]);\n\n const customFormat: DatePickerProps['format'] = (value) => {\n return `${dayjs(value).format('YYYY-MM-DD')}`;\n };\n\n const milestoneSelected = (id: number) => {\n const dates = milestone.find((m) => m.id === id)?.range_day.map((m) => dayjs(m)) || [];\n let [start, end] = dates;\n if (end > dayjs().endOf('day')) end = dayjs().endOf('day');\n setIsChange(true);\n setCacheRangeDate([start, end]);\n onChange({\n rangeDate: [start, end],\n timeType: cacheTimeType,\n });\n setGroupOpen(false);\n };\n\n const checkPresets = (v) => {\n if (\n cacheRangeDate &&\n dayjs(v[0]).format('YYYY-MM-DD') === dayjs(cacheRangeDate[0]).format('YYYY-MM-DD') &&\n dayjs(v[1]).format('YYYY-MM-DD') === dayjs(cacheRangeDate[1]).format('YYYY-MM-DD')\n ) {\n return true;\n } else {\n return false;\n }\n };\n\n // 活动详情内容\n const popoverContent = (event: ProjectNodeItem) => {\n return (\n <div\n style={{\n height: 30,\n lineHeight: '30px',\n textAlign: 'left',\n color: '#666',\n padding: '0 10px 0 10px',\n fontSize: 12,\n }}\n >\n {event.tag +\n ' ' +\n (event.range_day[0] === event.range_day[1] ? event.range_day[0] : event.range_day.join(' ~ '))}\n </div>\n );\n };\n\n const milestoneListFilter = milestone\n .filter((f) => f.type === filterType)\n .filter((f) => dayjs(f.range_day[0]) <= dayjs().endOf('day'))\n .filter((f) => dayjs(f.range_day[0]) >= dayjs().startOf('year').subtract(1, 'year'))\n .sort(\n (a: ProjectNodeItem, b: ProjectNodeItem) => dayjs(b.range_day[0]).valueOf() - dayjs(a.range_day[0]).valueOf(),\n );\n const milestoneList = (\n <div className={styles.milestoneListBox}>\n {milestoneListFilter.map((v) => {\n // Popover 须高于 DatePicker 弹层(约 zIndexPopupBase+50),否则悬停内容被挡在面板下\n return (\n <Popover\n key={v.id}\n trigger=\"hover\"\n placement=\"right\"\n zIndex={token.zIndexPopupBase + 120}\n getPopupContainer={() => document.body}\n styles={{\n root: {\n // width: 200,\n },\n body: {\n borderRadius: 2,\n padding: 0,\n },\n }}\n content={popoverContent(v)}\n >\n <div\n data-track\n id={`milestoneListItem-${v.id}`}\n key={v.id}\n className={classNames(\n styles.milestoneListItem,\n checkPresets(v.range_day.map((m) => dayjs(m))) && styles.milestoneListActive,\n )}\n style={{\n textAlign: 'left',\n padding: '0 10px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }}\n onClick={() => {\n milestoneSelected(v.id as number);\n }}\n >\n {v.tag}\n </div>\n </Popover>\n );\n })}\n </div>\n );\n\n const dateGourpRender = (panelNode: React.ReactNode) => {\n return (\n <div>\n {dateCompare && (\n <div className={styles.ykRangeDateWithVsHeader}>\n <Anchor\n className={styles.ykRangeDateWithVsHeaderAnchor}\n direction=\"horizontal\"\n items={timeOptionAnchors}\n getCurrentAnchor={() => cacheTimeType}\n onClick={(event, link) => {\n event.preventDefault();\n event.stopPropagation();\n setCacheTimeType(link.href);\n const defaultFn = optionsMap[link.href] ? optionsMap[link.href].default : optionsMap['按日'].default;\n setCacheRangeDate(defaultFn());\n }}\n />\n </div>\n )}\n <Flex>\n {milestoneListFilter && milestoneListFilter.length > 0 && showProjectNode ? (\n <div className={classNames(styles.milestoneList, 'scroll-reset')}>{milestoneList}</div>\n ) : null}\n <div className={styles.ykRangeDateWithVsGroup}>\n <div className={styles.ykRangeDateWithVsPanel}>{panelNode}</div>\n </div>\n </Flex>\n </div>\n );\n };\n\n // 当节点有已选时,不高亮presetsNode\n let hasSelect = false;\n if (milestoneListFilter && milestoneListFilter.length > 0) {\n milestoneListFilter.forEach((item) => {\n if (checkPresets(item.range_day.map((m) => dayjs(m))) && picker === 'date' && showProjectNode) {\n hasSelect = true;\n }\n });\n }\n\n const presetsNode = options.map((v, i) => {\n return {\n label: (\n <div\n className={classNames(\n 'ant-picker-presets-li',\n groupIndex === i && !hasSelect && 'ant-picker-presets-li-item',\n )}\n onClick={() => {\n setGroupIndex(i);\n }}\n >\n {v.label}\n </div>\n ),\n value: v.value,\n };\n }) as TimeRangePickerProps['presets'];\n\n /** 默认挂到 body,避免父级 overflow/transform/弹层导致点击判定异常或面板误关;业务可继续覆盖 */\n const resolvePopupContainer = getPopupContainer ?? (() => document.body);\n\n // 项目节点与节假日\n const dateTags: ProjectNodeItem[] = (milestoneListFilter || []).concat(holidays || []).map((m) => {\n return {\n ...m,\n date: m.range_day[0],\n };\n });\n const dateTagsMap = {};\n dateTags.forEach((m: any) => {\n if (dateTagsMap[m.date]) {\n dateTagsMap[m.date].push(m);\n } else {\n dateTagsMap[m.date] = [m];\n }\n });\n\n const eventsTooltips = (date: Dayjs) => {\n const dateStr = dayjs(date).format('YYYY-MM-DD');\n const tags = dateTagsMap[dateStr] || [];\n // 只展示最新创建的节点\n const lastTag =\n tags.length > 0\n ? tags.reduce((prev: ProjectNodeItem, curr: ProjectNodeItem) =>\n dayjs(prev.created_at).isAfter(dayjs(curr.created_at)) ? prev : curr,\n )\n : null;\n return lastTag ? (\n <Tooltip\n placement=\"right\"\n title={\n lastTag.tag +\n ' ' +\n (lastTag.range_day[0] === lastTag.range_day[1] ? lastTag.range_day[0] : lastTag.range_day.join(' ~ '))\n }\n color=\"#fff\"\n styles={{\n root: {\n maxWidth: 270,\n },\n body: {\n borderRadius: 2,\n color: '#666',\n },\n }}\n >\n <div key={lastTag.id} className={styles.ykRangeDateWithVsTag}>\n {lastTag.tag}\n </div>\n </Tooltip>\n ) : (\n <></>\n );\n };\n\n const cellRender: DatePickerProps<Dayjs>['cellRender'] = (current, info) => {\n if (info.type !== 'date') {\n return info.originNode;\n }\n if (typeof current === 'number' || typeof current === 'string') {\n return <div className=\"ant-picker-cell-inner\">{current}</div>;\n }\n return (\n <div\n className={classNames('ant-picker-cell-inner')}\n style={{ width: 45, height: 40, lineHeight: holidays && holidays.length > 0 ? '26px' : '40px', fontSize: 12 }}\n >\n {current.date()}\n {holidays && holidays.length > 0 && (\n <div\n style={{\n position: 'absolute',\n bottom: 2,\n height: 16,\n width: '100%',\n fontSize: '12px',\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n }}\n >\n {eventsTooltips(current)}\n </div>\n )}\n </div>\n );\n };\n\n const rangePicker = (\n <DatePicker.RangePicker\n id=\"ykRangeDateWithVsRange\"\n classNames={{\n popup: {\n root: styles.globalItemDatePanel,\n },\n }}\n styles={{\n root: {\n opacity: hasCustomRangeDisplay ? 0 : 1,\n },\n }}\n getPopupContainer={resolvePopupContainer}\n disabledDate={\n disabledDate\n ? disabledDate\n : (current) => {\n return current && current > dayjs().endOf('day');\n }\n }\n inputReadOnly={hasCustomRangeDisplay}\n open={groupOpen}\n picker={picker}\n cellRender={cellRender}\n value={cacheRangeDate}\n panelRender={dateGourpRender}\n presets={presetsNode}\n variant=\"borderless\"\n allowClear={false}\n format={customFormat}\n showWeek={false}\n separator=\"~\"\n className={styles.globalItemDate}\n suffixIcon={false}\n onCalendarChange={(dates) => {\n if (!dates) return;\n const [v0, v1] = dates;\n setIsChange(true);\n const start = v0 ? v0.startOf(picker) : null;\n let end: DateValue = null;\n if (v1) {\n const endRaw = v1.endOf(picker);\n end = endRaw > dayjs() ? dayjs() : endRaw;\n }\n setCacheRangeDate([start, end]);\n }}\n onChange={(val) => {\n if (!val || (!val[0] && !val[1])) {\n setIsChange(true);\n setCacheRangeDate([null, null]);\n onChange({\n rangeDate: [null, null],\n timeType: cacheTimeType,\n });\n return;\n }\n const [v0, v1] = val;\n if (v0 && !v1) {\n setIsChange(true);\n setCacheRangeDate([v0.startOf(picker), null]);\n return;\n }\n if (!v0 && v1) {\n setIsChange(true);\n const end = v1.endOf(picker) > dayjs() ? dayjs() : v1.endOf(picker);\n setCacheRangeDate([null, end]);\n return;\n }\n const start = v0.startOf(picker);\n const end = v1.endOf(picker) > dayjs() ? dayjs() : v1.endOf(picker);\n setIsChange(true);\n setCacheRangeDate([start, end]);\n onChange({\n rangeDate: [start, end],\n timeType: cacheTimeType,\n });\n }}\n onOpenChange={(open) => {\n setGroupOpen(open);\n }}\n />\n );\n\n return (\n <div className={classNames(styles.globalMl, styles.globalItem)}>\n {dateCompare && !!options.length && (\n <label onClick={() => setGroupOpen(true)} className={styles.globalItemDateTerm}>\n <span style={{ marginRight: '5px', fontSize: 14 }}>{timeType}</span>\n <i style={{ marginRight: '10px' }} className={classNames('iconfont icon-xiala1')}></i>\n </label>\n )}\n <i className={itemCheckIconClass('icon-riqi1')} style={{ fontSize: 14 }} />\n <ConfigProvider\n theme={{\n components: {\n DatePicker: {\n cellWidth: 60,\n cellHeight: 40,\n timeColumnWidth: 40,\n },\n },\n token: {},\n }}\n >\n {hasCustomRangeDisplay ? (\n <div className={styles.rangePickerCustomDisplay}>\n <span className={styles.rangePickerCustomDisplayLabel}>{rangeDisplayLabel}</span>\n {rangePicker}\n </div>\n ) : (\n rangePicker\n )}\n </ConfigProvider>\n </div>\n );\n};\n\nexport default YkRangeDateWithVSRange;\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["import type { DatePickerProps, TimeRangePickerProps } from 'antd';\nimport { Anchor, ConfigProvider, DatePicker, Flex, Popover, Tooltip, theme } from 'antd';\nimport classNames from 'classnames';\nimport dayjs, { type Dayjs } from 'dayjs';\nimport { findIndex, isEqual } from 'lodash';\nimport React, { type ReactNode, useEffect, useMemo, useRef, useState } from 'react';\nimport styles from './styles';\n\ntype DateValue = Dayjs | null;\ntype RangeValue = [DateValue, DateValue] | null;\ntype dateOptionType = {\n label: string;\n value: () => RangeValue;\n};\n\nexport type YkRangeDateWithVSRangeProps = {\n timeType: string;\n rangeDate: RangeValue;\n timeOptions: string[];\n dateCompare: boolean;\n onChange: (value: { timeType: string; rangeDate: RangeValue }) => void;\n getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;\n disabledDate?: DatePickerProps['disabledDate'];\n presetsOptions?: { label: string; value: () => [Dayjs, Dayjs] }[];\n /** 1: 运营节点 2: 广告节点 */\n milestoneFilterType?: 1 | 2;\n /** 项目节点列表(日历侧栏与日期标记) */\n milestone?: ProjectNodeItem[];\n /** 节假日(与里程碑一并用于日期 cell 标记) */\n holidays?: ProjectNodeItem[];\n /** 自定义主区间输入框展示文案(string / ReactNode);传入后默认日期格式文案由覆盖层展示,仍通过面板改期 */\n rangeDisplayLabel?: ReactNode;\n};\n\nconst itemCheckIconClass = (className: string) => {\n return classNames('iconfont', className, styles.active);\n};\n\nconst past: (n: number, picker: 'week' | 'day' | 'month' | 'year', today?: boolean) => RangeValue = (\n n,\n picker,\n today = false,\n) => [dayjs().subtract(n, picker).startOf(picker), today ? dayjs() : dayjs().subtract(n, picker).endOf(picker)];\n\nconst dateOptions: dateOptionType[] = [\n { label: '今天', value: () => past(0, 'day', true) },\n { label: '昨天', value: () => past(1, 'day') },\n { label: '本周', value: () => past(0, 'week', true) },\n { label: '上周', value: () => past(1, 'week') },\n { label: '本月', value: () => past(0, 'month', true) },\n { label: '上月', value: () => past(1, 'month') },\n { label: '今年', value: () => past(0, 'year', true) },\n { label: '去年', value: () => past(1, 'year') },\n { label: '近7天', value: () => past(6, 'day', true) },\n { label: '近14天', value: () => past(13, 'day', true) },\n { label: '近30天', value: () => past(29, 'day', true) },\n { label: '近60天', value: () => past(59, 'day', true) },\n { label: '近90天', value: () => past(89, 'day', true) },\n { label: '近180天', value: () => past(179, 'day', true) },\n {\n label: '前7天',\n value: () => [dayjs().subtract(7, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前14天',\n value: () => [dayjs().subtract(14, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前30天',\n value: () => [dayjs().subtract(30, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n {\n label: '前60天',\n value: () => [dayjs().subtract(60, 'day').startOf('day'), dayjs().subtract(1, 'day').endOf('day')],\n },\n];\nconst weekOptions: dateOptionType[] = [\n { label: '本周', value: () => past(0, 'week', true) },\n { label: '上周', value: () => past(1, 'week') },\n { label: '近3周', value: () => past(2, 'week', true) },\n { label: '近4周', value: () => past(3, 'week', true) },\n { label: '近5周', value: () => past(4, 'week', true) },\n { label: '近6周', value: () => past(5, 'week', true) },\n { label: '近7周', value: () => past(6, 'week', true) },\n { label: '近14周', value: () => past(13, 'week', true) },\n { label: '近30周', value: () => past(29, 'week', true) },\n { label: '近60周', value: () => past(59, 'week', true) },\n {\n label: '前2周',\n value: () => [dayjs().subtract(2, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前3周',\n value: () => [dayjs().subtract(3, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前4周',\n value: () => [dayjs().subtract(4, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n {\n label: '前5周',\n value: () => [dayjs().subtract(5, 'week').startOf('week'), dayjs().subtract(1, 'week').endOf('week')],\n },\n];\nconst monthOptions: dateOptionType[] = [\n { label: '本月', value: () => past(0, 'month', true) },\n { label: '上月', value: () => past(1, 'month') },\n { label: '今年', value: () => past(0, 'year', true) },\n { label: '去年', value: () => past(1, 'year') },\n { label: '近3月', value: () => past(2, 'month', true) },\n { label: '近4月', value: () => past(3, 'month', true) },\n { label: '近5月', value: () => past(4, 'month', true) },\n { label: '近6月', value: () => past(5, 'month', true) },\n { label: '近7月', value: () => past(6, 'month', true) },\n { label: '近8月', value: () => past(7, 'month', true) },\n { label: '近9月', value: () => past(8, 'month', true) },\n { label: '近10月', value: () => past(9, 'month', true) },\n { label: '近11月', value: () => past(10, 'month', true) },\n { label: '近12月', value: () => past(11, 'month', true) },\n {\n label: '前2月',\n value: () => [dayjs().subtract(2, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前3月',\n value: () => [dayjs().subtract(3, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前4月',\n value: () => [dayjs().subtract(4, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前5月',\n value: () => [dayjs().subtract(5, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前6月',\n value: () => [dayjs().subtract(6, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前7月',\n value: () => [dayjs().subtract(7, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前8月',\n value: () => [dayjs().subtract(8, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前9月',\n value: () => [dayjs().subtract(9, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前10月',\n value: () => [dayjs().subtract(10, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前11月',\n value: () => [dayjs().subtract(11, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n {\n label: '前12月',\n value: () => [dayjs().subtract(12, 'month').startOf('month'), dayjs().subtract(1, 'month').endOf('month')],\n },\n];\nconst startWeekOption: dateOptionType[] = [\n { label: '近7天', value: () => past(6, 'day', true) },\n { label: '近14天', value: () => past(13, 'day', true) },\n { label: '近21天', value: () => past(20, 'day', true) },\n { label: '近28天', value: () => past(27, 'day', true) },\n { label: '近98天', value: () => past(97, 'day', true) },\n { label: '近210天', value: () => past(209, 'day', true) },\n];\nconst startMonthOption: dateOptionType[] = [\n { label: '近30天', value: () => past(29, 'day', true) },\n { label: '近60天', value: () => past(59, 'day', true) },\n { label: '近90天', value: () => past(89, 'day', true) },\n { label: '近120天', value: () => past(119, 'day', true) },\n { label: '近150天', value: () => past(149, 'day', true) },\n { label: '近180天', value: () => past(179, 'day', true) },\n { label: '近210天', value: () => past(209, 'day', true) },\n { label: '近240天', value: () => past(239, 'day', true) },\n { label: '近270天', value: () => past(269, 'day', true) },\n { label: '近300天', value: () => past(299, 'day', true) },\n { label: '近330天', value: () => past(329, 'day', true) },\n { label: '近360天', value: () => past(359, 'day', true) },\n];\n\nconst pickerMap: {\n [key: string]: 'date' | 'week' | 'month';\n} = {\n 按自然周: 'week',\n 按自然月: 'month',\n 按周: 'week',\n 按月: 'month',\n};\n\nconst optionsMap: {\n [key: string]: {\n options: dateOptionType[];\n default: () => RangeValue;\n };\n} = {\n 按日: { options: dateOptions, default: () => past(14, 'day', true) },\n 按周: { options: weekOptions, default: () => past(13, 'week', true) },\n 按月: { options: monthOptions, default: () => past(11, 'month', true) },\n 按自然周: { options: weekOptions, default: () => past(13, 'week', true) },\n 按自然月: { options: monthOptions, default: () => past(11, 'month', true) },\n 按起始周: {\n options: startWeekOption,\n default: () => past(14 * 7 - 1, 'day', true),\n },\n 按起始月: {\n options: startMonthOption,\n default: () => past(12 * 30 - 1, 'day', true),\n },\n};\n\nconst YkRangeDateWithVSRange: React.FC<YkRangeDateWithVSRangeProps> = ({\n timeType,\n rangeDate,\n timeOptions,\n dateCompare,\n getPopupContainer,\n onChange,\n disabledDate = undefined,\n presetsOptions = undefined,\n milestoneFilterType = 1,\n milestone = [],\n holidays = [],\n rangeDisplayLabel,\n}) => {\n const { token } = theme.useToken();\n const hasCustomRangeDisplay = rangeDisplayLabel != null;\n const triggerWrapRef = useRef<HTMLDivElement>(null);\n const [groupOpen, setGroupOpen] = useState(false);\n // 判断数据是否变更,若未变更,则初始化日期\n const [isChange, setIsChange] = useState(false);\n const filterType = milestoneFilterType;\n const [cacheRangeDate, setCacheRangeDate] = useState<RangeValue>([null, null]);\n const [cacheTimeType, setCacheTimeType] = useState<string>(timeType);\n const [groupIndex, setGroupIndex] = useState<number | null>(null);\n const picker = cacheTimeType && pickerMap[cacheTimeType] ? pickerMap[cacheTimeType] : 'date';\n const options = presetsOptions\n ? presetsOptions\n : optionsMap[cacheTimeType]\n ? optionsMap[cacheTimeType].options\n : optionsMap['按日'].options;\n\n // 周报月报不显示项目节点(但外面选了周月,里面有按日的type,选按日时依旧可以显示项目节点,例如分包详情里的日期组件)\n const showProjectNode = useMemo(() => {\n return (\n (!timeType.includes('周') &&\n !timeType.includes('月') &&\n !cacheTimeType.includes('周') &&\n !cacheTimeType.includes('月')) ||\n cacheTimeType.includes('日')\n );\n }, [timeType, cacheTimeType]);\n\n const timeOptionAnchors =\n timeOptions?.map((v) => {\n return {\n key: v,\n title: v,\n href: v,\n };\n }) || [];\n\n // 初始化日期与日周月\n const initRangeDate = () => {\n setCacheRangeDate(rangeDate);\n setCacheTimeType(timeType);\n setIsChange(false);\n };\n\n useEffect(() => {\n if (groupOpen) {\n setGroupIndex(\n findIndex(options, (item) => {\n return isEqual(\n item.value()?.map((v) => v?.format('YYYY-MM-DD')),\n cacheRangeDate?.map((v) => v?.format('YYYY-MM-DD')),\n );\n }),\n );\n } else if (!isChange) {\n initRangeDate();\n }\n }, [cacheTimeType, groupOpen]);\n\n useEffect(() => {\n initRangeDate();\n }, [rangeDate, timeType]);\n\n /** 切换日/周/月后 rc-picker 嵌套面板偶发无法收到「点击外部」;与 window 捕获阶段兜底关闭对齐 */\n useEffect(() => {\n if (!groupOpen) return;\n const onPointerDownCapture = (e: PointerEvent) => {\n const el = e.target;\n if (!(el instanceof Element)) return;\n if (triggerWrapRef.current?.contains(el)) return;\n if (el.closest('[data-yk-range-date-with-vs-panel]')) return;\n if (styles.globalItemDatePanel && el.closest(`.${styles.globalItemDatePanel}`)) return;\n setGroupOpen(false);\n };\n window.addEventListener('pointerdown', onPointerDownCapture, true);\n return () => window.removeEventListener('pointerdown', onPointerDownCapture, true);\n }, [groupOpen]);\n\n const customFormat: DatePickerProps['format'] = (value) => {\n return `${dayjs(value).format('YYYY-MM-DD')}`;\n };\n\n const milestoneSelected = (id: number) => {\n const dates = milestone.find((m) => m.id === id)?.range_day.map((m) => dayjs(m)) || [];\n let [start, end] = dates;\n if (end > dayjs().endOf('day')) end = dayjs().endOf('day');\n setIsChange(true);\n setCacheRangeDate([start, end]);\n onChange({\n rangeDate: [start, end],\n timeType: cacheTimeType,\n });\n setGroupOpen(false);\n };\n\n const checkPresets = (v) => {\n if (\n cacheRangeDate &&\n dayjs(v[0]).format('YYYY-MM-DD') === dayjs(cacheRangeDate[0]).format('YYYY-MM-DD') &&\n dayjs(v[1]).format('YYYY-MM-DD') === dayjs(cacheRangeDate[1]).format('YYYY-MM-DD')\n ) {\n return true;\n } else {\n return false;\n }\n };\n\n // 活动详情内容\n const popoverContent = (event: ProjectNodeItem) => {\n return (\n <div\n style={{\n height: 30,\n lineHeight: '30px',\n textAlign: 'left',\n color: '#666',\n padding: '0 10px 0 10px',\n fontSize: 12,\n }}\n >\n {event.tag +\n ' ' +\n (event.range_day[0] === event.range_day[1] ? event.range_day[0] : event.range_day.join(' ~ '))}\n </div>\n );\n };\n\n const milestoneListFilter = milestone\n .filter((f) => f.type === filterType)\n .filter((f) => dayjs(f.range_day[0]) <= dayjs().endOf('day'))\n .filter((f) => dayjs(f.range_day[0]) >= dayjs().startOf('year').subtract(1, 'year'))\n .sort(\n (a: ProjectNodeItem, b: ProjectNodeItem) => dayjs(b.range_day[0]).valueOf() - dayjs(a.range_day[0]).valueOf(),\n );\n const milestoneList = (\n <div className={styles.milestoneListBox}>\n {milestoneListFilter.map((v) => {\n // Popover 须高于 DatePicker 弹层(约 zIndexPopupBase+50),否则悬停内容被挡在面板下\n return (\n <Popover\n key={v.id}\n trigger='hover'\n placement='right'\n zIndex={token.zIndexPopupBase + 120}\n getPopupContainer={() => document.body}\n styles={{\n root: {\n // width: 200,\n },\n body: {\n borderRadius: 2,\n padding: 0,\n },\n }}\n content={popoverContent(v)}\n >\n <div\n data-track\n id={`milestoneListItem-${v.id}`}\n key={v.id}\n className={classNames(\n styles.milestoneListItem,\n checkPresets(v.range_day.map((m) => dayjs(m))) && styles.milestoneListActive,\n )}\n style={{\n textAlign: 'left',\n padding: '0 10px',\n whiteSpace: 'nowrap',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n }}\n onClick={() => {\n milestoneSelected(v.id as number);\n }}\n >\n {v.tag}\n </div>\n </Popover>\n );\n })}\n </div>\n );\n\n const dateGourpRender = (panelNode: React.ReactNode) => {\n return (\n <div data-yk-range-date-with-vs-panel>\n {dateCompare && (\n <div className={styles.ykRangeDateWithVsHeader}>\n <Anchor\n className={styles.ykRangeDateWithVsHeaderAnchor}\n direction='horizontal'\n items={timeOptionAnchors}\n getCurrentAnchor={() => cacheTimeType}\n onClick={(event, link) => {\n event.preventDefault();\n event.stopPropagation();\n setCacheTimeType(link.href);\n const defaultFn = optionsMap[link.href] ? optionsMap[link.href].default : optionsMap['按日'].default;\n setCacheRangeDate(defaultFn());\n }}\n />\n </div>\n )}\n <Flex>\n {milestoneListFilter && milestoneListFilter.length > 0 && showProjectNode ? (\n <div className={classNames(styles.milestoneList, 'scroll-reset')}>{milestoneList}</div>\n ) : null}\n <div className={styles.ykRangeDateWithVsGroup}>\n <div className={styles.ykRangeDateWithVsPanel}>{panelNode}</div>\n </div>\n </Flex>\n </div>\n );\n };\n\n // 当节点有已选时,不高亮presetsNode\n let hasSelect = false;\n if (milestoneListFilter && milestoneListFilter.length > 0) {\n milestoneListFilter.forEach((item) => {\n if (checkPresets(item.range_day.map((m) => dayjs(m))) && picker === 'date' && showProjectNode) {\n hasSelect = true;\n }\n });\n }\n\n const presetsNode = options.map((v, i) => {\n return {\n label: (\n <div\n className={classNames(\n 'ant-picker-presets-li',\n groupIndex === i && !hasSelect && 'ant-picker-presets-li-item',\n )}\n onClick={() => {\n setGroupIndex(i);\n }}\n >\n {v.label}\n </div>\n ),\n value: v.value,\n };\n }) as TimeRangePickerProps['presets'];\n\n /** 默认挂到 body,避免父级 overflow/transform/弹层导致点击判定异常或面板误关;业务可继续覆盖 */\n const resolvePopupContainer = getPopupContainer ?? (() => document.body);\n\n // 项目节点与节假日\n const dateTags: ProjectNodeItem[] = (milestoneListFilter || []).concat(holidays || []).map((m) => {\n return {\n ...m,\n date: m.range_day[0],\n };\n });\n const dateTagsMap = {};\n dateTags.forEach((m: any) => {\n if (dateTagsMap[m.date]) {\n dateTagsMap[m.date].push(m);\n } else {\n dateTagsMap[m.date] = [m];\n }\n });\n\n const eventsTooltips = (date: Dayjs) => {\n const dateStr = dayjs(date).format('YYYY-MM-DD');\n const tags = dateTagsMap[dateStr] || [];\n // 只展示最新创建的节点\n const lastTag =\n tags.length > 0\n ? tags.reduce((prev: ProjectNodeItem, curr: ProjectNodeItem) =>\n dayjs(prev.created_at).isAfter(dayjs(curr.created_at)) ? prev : curr,\n )\n : null;\n return lastTag ? (\n <Tooltip\n placement='right'\n title={\n lastTag.tag +\n ' ' +\n (lastTag.range_day[0] === lastTag.range_day[1] ? lastTag.range_day[0] : lastTag.range_day.join(' ~ '))\n }\n color='#fff'\n styles={{\n root: {\n maxWidth: 270,\n },\n body: {\n borderRadius: 2,\n color: '#666',\n },\n }}\n >\n <div key={lastTag.id} className={styles.ykRangeDateWithVsTag}>\n {lastTag.tag}\n </div>\n </Tooltip>\n ) : (\n <></>\n );\n };\n\n const cellRender: DatePickerProps<Dayjs>['cellRender'] = (current, info) => {\n if (info.type !== 'date') {\n return info.originNode;\n }\n if (typeof current === 'number' || typeof current === 'string') {\n return <div className='ant-picker-cell-inner'>{current}</div>;\n }\n return (\n <div\n className={classNames('ant-picker-cell-inner')}\n style={{ width: 45, height: 40, lineHeight: holidays && holidays.length > 0 ? '26px' : '40px', fontSize: 12 }}\n >\n {current.date()}\n {holidays && holidays.length > 0 && (\n <div\n style={{\n position: 'absolute',\n bottom: 2,\n height: 16,\n width: '100%',\n fontSize: '12px',\n lineHeight: '16px',\n whiteSpace: 'nowrap',\n }}\n >\n {eventsTooltips(current)}\n </div>\n )}\n </div>\n );\n };\n\n const rangePicker = (\n <DatePicker.RangePicker\n id='ykRangeDateWithVsRange'\n classNames={{\n popup: {\n root: styles.globalItemDatePanel,\n },\n }}\n styles={{\n root: {\n opacity: hasCustomRangeDisplay ? 0 : 1,\n },\n }}\n getPopupContainer={resolvePopupContainer}\n disabledDate={\n disabledDate\n ? disabledDate\n : (current) => {\n return current && current > dayjs().endOf('day');\n }\n }\n inputReadOnly={hasCustomRangeDisplay}\n open={groupOpen}\n picker={picker}\n cellRender={cellRender}\n value={cacheRangeDate}\n panelRender={dateGourpRender}\n presets={presetsNode}\n variant='borderless'\n allowClear={false}\n format={customFormat}\n showWeek={false}\n separator='~'\n className={styles.globalItemDate}\n suffixIcon={false}\n onCalendarChange={(dates) => {\n if (!dates) return;\n const [v0, v1] = dates;\n setIsChange(true);\n const start = v0 ? v0.startOf(picker) : null;\n let end: DateValue = null;\n if (v1) {\n const endRaw = v1.endOf(picker);\n end = endRaw > dayjs() ? dayjs() : endRaw;\n }\n setCacheRangeDate([start, end]);\n }}\n onChange={(val) => {\n if (!val || (!val[0] && !val[1])) {\n setIsChange(true);\n setCacheRangeDate([null, null]);\n onChange({\n rangeDate: [null, null],\n timeType: cacheTimeType,\n });\n return;\n }\n const [v0, v1] = val;\n if (v0 && !v1) {\n setIsChange(true);\n setCacheRangeDate([v0.startOf(picker), null]);\n return;\n }\n if (!v0 && v1) {\n setIsChange(true);\n const end = v1.endOf(picker) > dayjs() ? dayjs() : v1.endOf(picker);\n setCacheRangeDate([null, end]);\n return;\n }\n const start = v0.startOf(picker);\n const end = v1.endOf(picker) > dayjs() ? dayjs() : v1.endOf(picker);\n setIsChange(true);\n setCacheRangeDate([start, end]);\n onChange({\n rangeDate: [start, end],\n timeType: cacheTimeType,\n });\n }}\n onOpenChange={(open) => {\n setGroupOpen(open);\n }}\n />\n );\n\n return (\n <div ref={triggerWrapRef} className={classNames(styles.globalMl, styles.globalItem)}>\n {dateCompare && !!options.length && (\n <label onClick={() => setGroupOpen(true)} className={styles.globalItemDateTerm}>\n <span style={{ marginRight: '5px', fontSize: 14 }}>{timeType}</span>\n <i style={{ marginRight: '10px' }} className={classNames('iconfont icon-xiala1')}></i>\n </label>\n )}\n <i className={itemCheckIconClass('icon-riqi1')} style={{ fontSize: 14 }} />\n <ConfigProvider\n theme={{\n components: {\n DatePicker: {\n cellWidth: 60,\n cellHeight: 40,\n timeColumnWidth: 40,\n },\n },\n token: {},\n }}\n >\n {hasCustomRangeDisplay ? (\n <div className={styles.rangePickerCustomDisplay}>\n <span className={styles.rangePickerCustomDisplayLabel}>{rangeDisplayLabel}</span>\n {rangePicker}\n </div>\n ) : (\n rangePicker\n )}\n </ConfigProvider>\n </div>\n );\n};\n\nexport default YkRangeDateWithVSRange;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["classNames", "styles", "dayjs", "React", "end"]
|
|
7
7
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.tsx"],
|
|
4
|
-
"sourcesContent": ["import { Dropdown } from 'antd';\nimport classNames from 'classnames';\nimport React, { FC, ReactNode, useState } from 'react';\nimport styles from './styles';\n\nexport type optionsType = {\n label: string;\n value: string | number | boolean;\n parent?: string;\n};\n\ntype PropsType = {\n trigger?: Array<'click' | 'hover' | 'contextMenu'>;\n options: optionsType[];\n onChange: (value: optionsType) => void;\n children: ReactNode;\n value?: string | number | boolean | null;\n disabled?: boolean;\n};\n\nconst YkRangeDateWithVSSelect: FC<PropsType> = ({\n trigger = ['click'],\n options,\n onChange,\n children,\n value,\n disabled = false,\n}) => {\n const [open, setOpen] = useState(false);\n\n const itemClass = (v: string | number | boolean) => {\n return classNames(styles.globalDropdownItem, { [styles.checked]: value === v });\n };\n const dateDropDown = (menus: React.ReactNode) => {\n return (\n <div className={styles.globalDropdown}>\n {options.map((v) => (\n <div\n key={v.value + v.label}\n className={itemClass(v.value)}\n onClick={() => {\n checkItem(v);\n }}\n >\n {v.label}\n </div>\n ))}\n </div>\n );\n };\n const checkItem = (v: optionsType) => {\n setOpen(false);\n onChange(v);\n };\n return (\n <Dropdown\n placement='bottom'\n getPopupContainer={(triggerNode) => triggerNode.parentNode as HTMLElement}\n popupRender={dateDropDown}\n trigger={trigger}\n disabled={disabled}\n open={open}\n onOpenChange={(flag: boolean) => {\n setOpen(flag);\n }}\n >\n {children}\n </Dropdown>\n );\n};\n\nexport default YkRangeDateWithVSSelect;\n"],
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAyB;AACzB,wBAAuB;AACvB,
|
|
4
|
+
"sourcesContent": ["import { Dropdown } from 'antd';\nimport classNames from 'classnames';\nimport React, { type FC, type ReactNode, useState } from 'react';\nimport styles from './styles';\n\nexport type optionsType = {\n label: string;\n value: string | number | boolean;\n parent?: string;\n};\n\ntype PropsType = {\n trigger?: Array<'click' | 'hover' | 'contextMenu'>;\n options: optionsType[];\n onChange: (value: optionsType) => void;\n children: ReactNode;\n value?: string | number | boolean | null;\n disabled?: boolean;\n};\n\nconst YkRangeDateWithVSSelect: FC<PropsType> = ({\n trigger = ['click'],\n options,\n onChange,\n children,\n value,\n disabled = false,\n}) => {\n const [open, setOpen] = useState(false);\n\n const itemClass = (v: string | number | boolean) => {\n return classNames(styles.globalDropdownItem, { [styles.checked]: value === v });\n };\n const dateDropDown = (menus: React.ReactNode) => {\n return (\n <div className={styles.globalDropdown}>\n {options.map((v) => (\n <div\n key={v.value + v.label}\n className={itemClass(v.value)}\n onClick={() => {\n checkItem(v);\n }}\n >\n {v.label}\n </div>\n ))}\n </div>\n );\n };\n const checkItem = (v: optionsType) => {\n setOpen(false);\n onChange(v);\n };\n return (\n <Dropdown\n placement='bottom'\n getPopupContainer={(triggerNode) => triggerNode.parentNode as HTMLElement}\n popupRender={dateDropDown}\n trigger={trigger}\n disabled={disabled}\n open={open}\n onOpenChange={(flag: boolean) => {\n setOpen(flag);\n }}\n >\n {children}\n </Dropdown>\n );\n};\n\nexport default YkRangeDateWithVSSelect;\n"],
|
|
5
|
+
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,kBAAyB;AACzB,wBAAuB;AACvB,mBAAyD;AACzD,oBAAmB;AAiBnB,IAAM,0BAAyC,CAAC;AAAA,EAC9C,UAAU,CAAC,OAAO;AAAA,EAClB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA,WAAW;AACb,MAAM;AACJ,QAAM,CAAC,MAAM,OAAO,QAAI,uBAAS,KAAK;AAEtC,QAAM,YAAY,CAAC,MAAiC;AAClD,eAAO,kBAAAA,SAAW,cAAAC,QAAO,oBAAoB,EAAE,CAAC,cAAAA,QAAO,OAAO,GAAG,UAAU,EAAE,CAAC;AAAA,EAChF;AACA,QAAM,eAAe,CAAC,UAA2B;AAC/C,WACE,6BAAAC,QAAA,cAAC,SAAI,WAAW,cAAAD,QAAO,kBACpB,QAAQ,IAAI,CAAC,MACZ,6BAAAC,QAAA;AAAA,MAAC;AAAA;AAAA,QACC,KAAK,EAAE,QAAQ,EAAE;AAAA,QACjB,WAAW,UAAU,EAAE,KAAK;AAAA,QAC5B,SAAS,MAAM;AACb,oBAAU,CAAC;AAAA,QACb;AAAA;AAAA,MAEC,EAAE;AAAA,IACL,CACD,CACH;AAAA,EAEJ;AACA,QAAM,YAAY,CAAC,MAAmB;AACpC,YAAQ,KAAK;AACb,aAAS,CAAC;AAAA,EACZ;AACA,SACE,6BAAAA,QAAA;AAAA,IAAC;AAAA;AAAA,MACC,WAAU;AAAA,MACV,mBAAmB,CAAC,gBAAgB,YAAY;AAAA,MAChD,aAAa;AAAA,MACb;AAAA,MACA;AAAA,MACA;AAAA,MACA,cAAc,CAAC,SAAkB;AAC/B,gBAAQ,IAAI;AAAA,MACd;AAAA;AAAA,IAEC;AAAA,EACH;AAEJ;AAEA,IAAO,kCAAQ;",
|
|
6
6
|
"names": ["classNames", "styles", "React"]
|
|
7
7
|
}
|
|
@@ -8,9 +8,9 @@
|
|
|
8
8
|
* - YkRangeDateWithVSCompare:对比区间,依赖主区间长度(dayLine)自动对齐结束日
|
|
9
9
|
*/
|
|
10
10
|
import type { DatePickerProps } from 'antd';
|
|
11
|
-
import { Dayjs } from 'dayjs';
|
|
11
|
+
import { type Dayjs } from 'dayjs';
|
|
12
12
|
import 'dayjs/locale/zh-cn';
|
|
13
|
-
import { FC, type ReactNode } from 'react';
|
|
13
|
+
import { type FC, type ReactNode } from 'react';
|
|
14
14
|
/** 受控值:主区间字符串、对比区间、聚合维度(与后端约定的中文枚举,如「按日」) */
|
|
15
15
|
export type YkRangeDateWithVSValue = {
|
|
16
16
|
start?: string | null;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/YkRangeDateWithVS/index.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * YkRangeDateWithVS — 主时间区间 + 可选「日期对比」的组合筛选条(With Versus)。\n *\n * 设计为纯受控组件:不使用 dva `connect` / `dispatch`,由外层持有 `value` 并合并 `onChange` 返回的局部字段。\n *\n * 子组件:\n * - YkRangeDateWithVSRange:主 RangePicker,可选日/周/月维度 Tab(由 timeOptions 控制)\n * - YkRangeDateWithVSCompare:对比区间,依赖主区间长度(dayLine)自动对齐结束日\n */\nimport type { DatePickerProps } from 'antd';\nimport { ConfigProvider } from 'antd';\nimport zhCN from 'antd/locale/zh_CN';\nimport classNames from 'classnames';\nimport dayjs, { Dayjs } from 'dayjs';\nimport 'dayjs/locale/zh-cn';\nimport React, { FC, useEffect, useMemo
|
|
5
|
-
"mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAUA,kBAA+B;AAC/B,mBAAiB;AACjB,wBAAuB;AACvB,
|
|
4
|
+
"sourcesContent": ["/**\n * YkRangeDateWithVS — 主时间区间 + 可选「日期对比」的组合筛选条(With Versus)。\n *\n * 设计为纯受控组件:不使用 dva `connect` / `dispatch`,由外层持有 `value` 并合并 `onChange` 返回的局部字段。\n *\n * 子组件:\n * - YkRangeDateWithVSRange:主 RangePicker,可选日/周/月维度 Tab(由 timeOptions 控制)\n * - YkRangeDateWithVSCompare:对比区间,依赖主区间长度(dayLine)自动对齐结束日\n */\nimport type { DatePickerProps } from 'antd';\nimport { ConfigProvider } from 'antd';\nimport zhCN from 'antd/locale/zh_CN';\nimport classNames from 'classnames';\nimport dayjs, { type Dayjs } from 'dayjs';\nimport 'dayjs/locale/zh-cn';\nimport React, { type FC, type ReactNode, useEffect, useMemo } from 'react';\nimport styles from './styles';\nimport YkRangeDateWithVSCompare from './YkRangeDateWithVSCompare';\nimport YkRangeDateWithVSRange from './YkRangeDateWithVSRange';\n\ndayjs.locale({\n ...dayjs.Ls['zh-cn'],\n weekStart: 1,\n});\n\n/** 受控值:主区间字符串、对比区间、聚合维度(与后端约定的中文枚举,如「按日」) */\nexport type YkRangeDateWithVSValue = {\n start?: string | null;\n end?: string | null;\n cmpStart?: string | null;\n cmpEnd?: string | null;\n timeType?: string | null;\n};\n\n/** onChange 推送的增量;外层应合并进完整 value */\nexport type YkRangeDateWithVSChange = {\n start?: string;\n end?: string;\n cmpStart?: string | null;\n cmpEnd?: string | null;\n timeType?: string | null;\n};\n\ntype RangeValue = [Dayjs | null, Dayjs | null] | null;\ntype DateValue = Dayjs | null;\n\nexport type YkRangeDateWithVSProps = {\n /** 当前筛选状态(必填) */\n value: YkRangeDateWithVSValue;\n /** 字段级增量更新 */\n onChange?: (patch: YkRangeDateWithVSChange) => void;\n /** 是否展示「日期对比」整块(含对比区间选择) */\n timeCompare?: boolean;\n className?: string;\n /** 是否启用主选择器顶部的日/周/月 Tab;需与 timeOptions 同时使用 */\n dateCompare: boolean;\n /** 禁用对比能力(置灰快捷入口) */\n disableDateCompare?: boolean;\n /** Tab 文案列表,如 ['按日','按周','按月'];空数组则主面板不显示维度切换 */\n timeOptions?: string[];\n /** 弹层挂载容器;未传时默认 document.body,避免 Drawer/Modal/overflow 导致面板异常关闭 */\n getPopupContainer?: (triggerNode: HTMLElement) => HTMLElement;\n disabledDate?: DatePickerProps['disabledDate'];\n /** 若传入则覆盖 value 推导出的主区间展示 */\n rangeDate?: RangeValue;\n presetsOptions?: { label: string; value: () => [Dayjs, Dayjs] }[];\n /** 1 运营节点 2 广告节点(日历旁里程碑列表筛选,与旧版 usePageInfo 行为对齐) */\n milestoneFilterType?: 1 | 2;\n milestone?: ProjectNodeItem[];\n holidays?: ProjectNodeItem[];\n /** 主区间 RangePicker 输入框自定义展示(string / ReactNode) */\n rangeDisplayLabel?: ReactNode;\n};\n\nconst YkRangeDateWithVS: FC<YkRangeDateWithVSProps> = ({\n value,\n onChange = () => {},\n timeCompare,\n dateCompare,\n timeOptions = [],\n className,\n getPopupContainer,\n disableDateCompare = false,\n disabledDate,\n rangeDate,\n presetsOptions,\n milestoneFilterType = 1,\n milestone = [],\n holidays = [],\n rangeDisplayLabel,\n}) => {\n const start = value?.start ?? null;\n const end = value?.end ?? null;\n const cmpStart = value?.cmpStart ?? null;\n const cmpEnd = value?.cmpEnd ?? '';\n const timeType = value?.timeType ?? '';\n\n const dayLine = useMemo(() => {\n if (start && end) {\n return dayjs(end).diff(dayjs(start), 'day');\n }\n return 0;\n }, [start, end]);\n\n useEffect(() => {\n if (!timeCompare || !cmpStart || !cmpEnd) return;\n const endTime =\n dayjs(cmpStart).add(dayLine, 'day') > dayjs().endOf('day')\n ? dayjs().format('YYYY-MM-DD')\n : dayjs(cmpStart).add(dayLine, 'day').format('YYYY-MM-DD');\n if (endTime !== cmpEnd) {\n onChange({ cmpEnd: endTime });\n }\n }, [dayLine, timeCompare, cmpStart, cmpEnd, onChange]);\n\n return (\n <ConfigProvider\n locale={zhCN}\n theme={{\n components: {\n DatePicker: {\n paddingInline: 0,\n },\n },\n }}\n >\n <div className={classNames(className, styles.ykRangeDateWithVs)}>\n <YkRangeDateWithVSRange\n rangeDisplayLabel={rangeDisplayLabel}\n milestone={milestone}\n holidays={holidays}\n milestoneFilterType={milestoneFilterType}\n timeType={timeType}\n disabledDate={disabledDate}\n rangeDate={rangeDate ? rangeDate : [start ? dayjs(start) : null, end ? dayjs(end) : null]}\n presetsOptions={presetsOptions}\n timeOptions={timeOptions}\n getPopupContainer={getPopupContainer}\n dateCompare={dateCompare && timeOptions.length > 0}\n onChange={(v) => {\n onChange({\n timeType: v.timeType,\n start: (v.rangeDate as [DateValue, DateValue])[0]?.format('YYYY-MM-DD'),\n end: (v.rangeDate as [DateValue, DateValue])[1]?.format('YYYY-MM-DD'),\n });\n }}\n />\n {timeCompare && (\n <YkRangeDateWithVSCompare\n timeType={timeType}\n disableCompare={disableDateCompare}\n rangeDate={[cmpStart ? dayjs(cmpStart) : null, cmpEnd ? dayjs(cmpEnd) : null]}\n originDate={[start ? dayjs(start) : null, end ? dayjs(end) : null]}\n dayLine={dayLine}\n onChange={(v) => {\n onChange({\n cmpStart: (v.rangeDate as [DateValue, DateValue])[0]?.format('YYYY-MM-DD'),\n cmpEnd: (v.rangeDate as [DateValue, DateValue])[1]?.format('YYYY-MM-DD'),\n });\n }}\n />\n )}\n </div>\n </ConfigProvider>\n );\n};\n\nexport default YkRangeDateWithVS;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["dayjs", "React", "zhCN", "classNames", "styles", "YkRangeDateWithVSRange", "YkRangeDateWithVSCompare"]
|
|
7
7
|
}
|
|
@@ -20,10 +20,28 @@
|
|
|
20
20
|
padding: 0 10px;
|
|
21
21
|
color: #333333;
|
|
22
22
|
background-color: #ffffff;
|
|
23
|
-
border:
|
|
23
|
+
border: 1px solid #d9d9d9;
|
|
24
24
|
border-radius: 2px;
|
|
25
25
|
cursor: pointer;
|
|
26
|
-
transition:
|
|
26
|
+
transition: all 0.2s;
|
|
27
|
+
|
|
28
|
+
&:hover {
|
|
29
|
+
border-color: #66a8ff;
|
|
30
|
+
color: #66a8ff !important;
|
|
31
|
+
|
|
32
|
+
:global {
|
|
33
|
+
.ant-picker-input input,
|
|
34
|
+
.ant-picker-range-separator {
|
|
35
|
+
color: #66a8ff !important;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
:global {
|
|
41
|
+
.ant-picker-input input {
|
|
42
|
+
cursor: pointer;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
27
45
|
}
|
|
28
46
|
|
|
29
47
|
.globalItem i {
|
|
@@ -54,7 +72,7 @@
|
|
|
54
72
|
|
|
55
73
|
.globalItemDate,
|
|
56
74
|
.globalItemSingleDate {
|
|
57
|
-
width:
|
|
75
|
+
width: 200px;
|
|
58
76
|
padding: 0;
|
|
59
77
|
}
|
|
60
78
|
|
|
@@ -63,7 +81,7 @@
|
|
|
63
81
|
}
|
|
64
82
|
|
|
65
83
|
.globalItemDateSingle {
|
|
66
|
-
width:
|
|
84
|
+
width: 200px;
|
|
67
85
|
padding: 0;
|
|
68
86
|
}
|
|
69
87
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
3
|
"sources": ["../../../../src/components/YkRangeTimeWithRecent/index.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * 组件名称:YkRangeTimeWithRecent\n * 组件描述:时间范围 + 动态「最近 N 天」等能力的时间筛选(Range + Recent)\n * 组件使用场景:在需要选择时间范围的场景中使用,如筛选、排序等\n * 组件参数说明:\n * - value: {\n * time_range: [string, string] | null | undefined;\n * recent_day: string | null | undefined;\n * time_type: number | undefined;\n * }\n * - timeTypes: 时间类型选项\n * - onChange: 时间范围变化回调\n * - placement: 弹层位置\n * - placeholder: 占位符\n * - noTimeFilter: 是否禁用动态时间\n * - noIcon: 是否禁用图标\n */\nimport { ClockCircleOutlined } from '@ant-design/icons';\nimport {\n Button,\n ConfigProvider,\n DatePicker,\n DatePickerProps,\n Divider,\n InputNumber,\n message,\n Popover,\n Radio,\n Select,\n Tabs,\n} from 'antd';\nimport datePickerZhCN from 'antd/es/date-picker/locale/zh_CN';\nimport zhCN from 'antd/locale/zh_CN';\nimport classNames from 'classnames';\nimport dayjs, { Dayjs } from 'dayjs';\nimport 'dayjs/locale/zh-cn';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport React, { FC, useEffect, useMemo, useRef, useState } from 'react';\nimport { endTimeOptions, optionsMap, pickerMap, recentOptionsMap, startTimeOptions } from './constants';\nimport styles from './index.module.less';\n\ndayjs.extend(isoWeek);\ndayjs.extend(weekOfYear);\ndayjs.locale({\n ...dayjs.Ls['zh-cn'],\n weekStart: 1,\n});\n\nconst { RangePicker } = DatePicker;\n\nexport type YkRangeTimeWithRecentTimeType = '合计' | '按小时' | '按天' | '按周' | '按月';\nexport interface YkRangeTimeWithRecentProps {\n style?: React.CSSProperties;\n clearable?: boolean;\n value: {\n time_range: [string, string] | null | undefined;\n recent_day: string | null | undefined;\n time_type: number | undefined;\n };\n timeTypes?: YkRangeTimeWithRecentTimeType[];\n onChange: (value: {\n time_range: [string, string] | null | undefined;\n recent_day: string | null | undefined;\n time_type: number | undefined;\n }) => void;\n placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight';\n placeholder?: string | React.ReactNode;\n noTimeFilter?: boolean;\n noIcon?: boolean;\n disabled?: boolean;\n dateFieldOptionName?: string;\n}\n\ntype RangeValue = [string, string] | null;\n\nconst timeTypeKeys = {\n 0: '合计',\n 1: '按小时',\n 2: '按天',\n 3: '按周',\n 4: '按月',\n};\n\n/** 未提供「合计」Tab 时,不应使用 time_type 0,回落为按天 */\nfunction normalizeTimeTypeForTimeTypes(\n timeType: number | undefined,\n timeTypes: YkRangeTimeWithRecentTimeType[] | undefined,\n): number {\n const raw = typeof timeType === 'number' ? timeType : 2;\n if (Array.isArray(timeTypes) && !timeTypes.includes('合计') && raw === 0) {\n return 2;\n }\n return raw;\n}\n\nconst YkRangeTimeWithRecent: FC<YkRangeTimeWithRecentProps> = ({\n value,\n onChange,\n timeTypes,\n style,\n clearable,\n placement = 'bottomLeft',\n placeholder = '开始时间 ~ 结束时间',\n noTimeFilter = false,\n noIcon = false,\n dateFieldOptionName = '',\n}) => {\n // 格式化时间\n const formatTime = (time: string) => {\n switch (normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) {\n case 1: // 按小时\n return dayjs(time).format('YYYY-MM-DD HH:mm');\n case 3: // 按周\n return dayjs(time).format('YYYY-MM-DD');\n case 4: // 按月\n return dayjs(time).format('YYYY-MM');\n case 2: // 按天\n case 0: // 合计\n default:\n return dayjs(time).format('YYYY-MM-DD');\n }\n };\n\n const [open, setOpen] = useState(false);\n /** 外层 Popover 与内层 RangePicker 均基于 rc-trigger,嵌套时外层常收不到「点击外部」;用捕获阶段统一判定 */\n const triggerWrapRef = useRef<HTMLDivElement>(null);\n const [active, setActive] = useState<'start' | 'end'>('start');\n // 是否静态时间 默认是静态时间\n const [timeFilterType, setTimeFilterType] = useState(0);\n // 弹层内时间\n const [localValue, setLocalValue] = useState<[Dayjs, Dayjs] | null>(null);\n // dayjs.isoWeek存在跨年问题,d=2025-12-30时,d.isoWeekYear()=2026\n const [startWeekDate, setStartWeekDate] = useState<Dayjs | null>(null);\n const [startMonth, setStartMonth] = useState<Dayjs | null>(null);\n // 弹层内时间类型\n const [localTimeType, setLocalTimeType] = useState<number | undefined>(() =>\n normalizeTimeTypeForTimeTypes(value?.time_type, timeTypes),\n );\n // 弹层内时间类型名称\n const localTimeTypeName = useMemo(() => {\n const type = typeof localTimeType === 'number' ? localTimeType : 2;\n return timeTypeKeys[type as keyof typeof timeTypeKeys] || timeTypeKeys[2];\n }, [localTimeType]);\n\n const getFormattedTimeRange = (recent: number, type: 'start' | 'end') => {\n const today = dayjs();\n switch (localTimeType) {\n case 1: // 按小时\n return today.subtract(recent, 'day').format(`YYYY-MM-DD ${type === 'start' ? '00:00' : '23:59'}`);\n case 3: // 按周\n return `${today.subtract(recent, 'week').format('YYYY')}年-${today.subtract(recent, 'week').week()}周 (${today.subtract(recent, 'week').startOf('week').format('MM.DD')}-${today.subtract(recent, 'week').endOf('week').format('MM.DD')})`;\n case 4: // 按月\n return today.subtract(recent, 'month').format('YYYY-MM月');\n default:\n return today.subtract(recent, 'day').format('YYYY-MM-DD');\n }\n };\n\n // 外部格式化\n const getFormattedRecentTime = (recent: number, type: 'start' | 'end') => {\n const today = dayjs();\n switch (localTimeType) {\n case 1: // 按小时\n return today.subtract(recent, 'day').format(`YYYY-MM-DD ${type === 'start' ? '00:00' : '23:59'}`);\n case 3: // 按周\n return `${today.subtract(recent, 'week').format('YYYY')}年-${today.subtract(recent, 'week').week()}周`;\n case 4: // 按月\n return today.subtract(recent, 'month').format('YYYY-MM月');\n default:\n return today.subtract(recent, 'day').format('YYYY-MM-DD');\n }\n };\n\n // 动态时间\n const [recentStart, setRecentStart] = useState<number>(0);\n const [recentEnd, setRecentEnd] = useState<number>(0);\n\n useEffect(() => {\n setRecentStart(value?.recent_day ? Number(value.recent_day.split('|')[1]) : 0);\n setRecentEnd(value?.recent_day ? Number(value.recent_day.split('|')[2]) : 0);\n }, [value?.recent_day]);\n\n // 显示时间\n const showRangeTime = useMemo(() => {\n if (value?.time_range && value?.time_range.length === 2) {\n return formatTime(value.time_range[0]) + ' ~ ' + formatTime(value.time_range[1]);\n } else if (value?.recent_day) {\n const [type, start, end] = value.recent_day.split('|');\n let showTimeText = '';\n const unit = type === 'D' ? '天' : type === 'W' ? '周' : '月';\n const options = recentOptionsMap[localTimeType || 2].options;\n if (options.map((m) => m.value).includes(value.recent_day)) {\n showTimeText = options.find((m) => m.value === value.recent_day)?.label || '';\n } else if (end === '0') {\n showTimeText = '近' + (Number(start) - Number(end) + 1) + unit;\n } else {\n showTimeText = start + unit + '前 ~ ' + end + unit + '前';\n }\n // 合计、按小时、按天 里本周上周本月上月特殊处理\n if (\n value.time_type !== undefined &&\n [0, 1, 2].includes(normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) &&\n (value.recent_day.split('|')[0] === 'W' || value.recent_day.split('|')[0] === 'M')\n ) {\n const today = dayjs();\n const lastDayOfLastMonth = today.subtract(1, 'month').endOf('month');\n const daysToLastMonthStart = today.diff(lastDayOfLastMonth.startOf('month'), 'day');\n const daysToLastMonthEnd = today.diff(lastDayOfLastMonth, 'day') + 1;\n let startNum, endNum;\n switch (value.recent_day) {\n case 'W|0|0':\n startNum = today.day() === 0 ? 6 : today.day() - 1;\n endNum = 0;\n showTimeText = '本周';\n break;\n case 'W|1|1':\n startNum = today.day() === 0 ? 13 : today.day() + 6;\n endNum = today.day() === 0 ? 7 : today.day();\n showTimeText = '上周';\n break;\n case 'M|0|0':\n startNum = today.date() - 1;\n endNum = 0;\n showTimeText = '本月';\n break;\n case 'M|1|1':\n startNum = daysToLastMonthStart;\n endNum = daysToLastMonthEnd;\n showTimeText = '上月';\n break;\n default:\n startNum = 0;\n endNum = 0;\n showTimeText = '';\n break;\n }\n return (\n <>\n {showTimeText}\n <Divider type=\"vertical\" />\n {getFormattedRecentTime(startNum, 'start')} ~ {getFormattedRecentTime(endNum, 'end')}\n </>\n );\n }\n return (\n <>\n {showTimeText}\n <Divider type=\"vertical\" />\n {getFormattedRecentTime(Number(start), 'start')} ~ {getFormattedRecentTime(Number(end), 'end')}\n </>\n );\n }\n return '';\n }, [value, timeTypes, localTimeType]);\n\n const recentType = useMemo(() => {\n switch (localTimeType) {\n case 3:\n return 'W';\n case 4:\n return 'M';\n default:\n return 'D';\n }\n }, [localTimeType]);\n\n // 显示的开始时间\n const showRecentStart = useMemo(() => {\n return getFormattedTimeRange(recentStart, 'start');\n }, [recentStart, localTimeType]);\n\n // 显示的结束时间\n const showRecentEnd = useMemo(() => {\n return getFormattedTimeRange(recentEnd, 'end');\n }, [recentEnd, localTimeType]);\n\n // 时间类型选项\n const timeTypeOptions = useMemo(() => {\n return (\n timeTypes?.map((item) => ({\n key: item,\n label: item,\n children: null,\n })) || []\n );\n }, [timeTypes]);\n\n // 时间类型 'date' | 'week' | 'month'\n const picker = useMemo(() => {\n return localTimeType ? pickerMap[localTimeType] : 'date';\n }, [localTimeType]);\n\n // 预选时间\n const presetsTime = useMemo(() => {\n if (timeFilterType === 1) {\n return recentOptionsMap[localTimeType || 2];\n }\n return optionsMap[localTimeType || 2];\n }, [localTimeType, timeFilterType]);\n\n const startTime = useMemo(() => {\n return Number(localValue?.[0]?.format('HH')) || 0;\n }, [localValue]);\n\n const endTime = useMemo(() => {\n return Number(localValue?.[1]?.format('HH')) || 0;\n }, [localValue]);\n\n // 过滤禁用开始时间\n const disabledStartHours = useMemo(() => {\n if (localValue?.[0] && dayjs(localValue[0]).isSame(dayjs(), 'day')) {\n const currentHour = dayjs().hour();\n return startTimeOptions.filter((option) => option.value <= currentHour);\n }\n return startTimeOptions;\n }, [localValue]);\n\n // 过滤禁用结束时间\n const disabledEndHours = useMemo(() => {\n if (localValue?.[1] && dayjs(localValue[1]).isSame(dayjs(), 'day')) {\n const currentHour = dayjs().hour();\n return endTimeOptions.filter((option) => option.value <= currentHour);\n }\n return endTimeOptions;\n }, [localValue]);\n\n useEffect(() => {\n if (value?.recent_day) {\n setTimeFilterType(1);\n }\n }, [value?.recent_day]);\n\n useEffect(() => {\n if (!open) return;\n const onPointerDownCapture = (e: PointerEvent) => {\n const el = e.target;\n if (!(el instanceof Element)) return;\n if (triggerWrapRef.current?.contains(el)) return;\n if (el.closest('[data-yk-range-time-with-recent-content]')) return;\n setOpen(false);\n };\n document.addEventListener('pointerdown', onPointerDownCapture, true);\n return () => document.removeEventListener('pointerdown', onPointerDownCapture, true);\n }, [open]);\n\n // 打开时,初始化时间范围和时间类型\n useEffect(() => {\n if (open) {\n setActive('start');\n setStartWeekDate(null);\n setStartMonth(null);\n const rangeStart = document.getElementById('RangeStart');\n setTimeout(() => {\n rangeStart?.focus();\n }, 10);\n setLocalTimeType(normalizeTimeTypeForTimeTypes(value?.time_type, timeTypes));\n if (value?.recent_day) {\n // 合计、按小时、按天 里本周上周本月上月特殊处理\n if (\n value.time_type !== undefined &&\n [0, 1, 2].includes(normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) &&\n (value.recent_day.split('|')[0] === 'W' || value.recent_day.split('|')[0] === 'M')\n ) {\n const today = dayjs();\n const lastDayOfLastMonth = today.subtract(1, 'month').endOf('month');\n const daysToLastMonthStart = today.diff(lastDayOfLastMonth.startOf('month'), 'day');\n const daysToLastMonthEnd = today.diff(lastDayOfLastMonth, 'day') + 1;\n switch (value.recent_day) {\n case 'W|0|0':\n setRecentStart(today.day() === 0 ? 6 : today.day() - 1);\n setRecentEnd(0);\n break;\n case 'W|1|1':\n setRecentStart(today.day() === 0 ? 13 : today.day() + 6);\n setRecentEnd(today.day() === 0 ? 7 : today.day());\n break;\n case 'M|0|0':\n setRecentStart(today.date() - 1);\n setRecentEnd(0);\n break;\n case 'M|1|1':\n setRecentStart(daysToLastMonthStart);\n setRecentEnd(daysToLastMonthEnd);\n break;\n default:\n setRecentStart(0);\n setRecentEnd(0);\n break;\n }\n } else {\n setRecentStart(Number(value.recent_day.split('|')[1]));\n setRecentEnd(Number(value.recent_day.split('|')[2]));\n }\n } else {\n setLocalValue([dayjs(value?.time_range?.[0]), dayjs(value?.time_range?.[1])]);\n }\n }\n }, [open]);\n\n const timeChange = (hour: number, type: 'start' | 'end') => {\n const [start, end] = localValue || [];\n if (type === 'start') {\n setLocalValue([dayjs(start).hour(hour), end]);\n } else {\n setLocalValue([start, dayjs(end).hour(hour)]);\n }\n };\n\n // 预选时间点击\n const presetClick = (item: { value: () => RangeValue }) => {\n setLocalValue(item.value()?.map((time) => dayjs(time)) as [Dayjs, Dayjs] | null);\n switch (localTimeType) {\n case 1:\n onChange({\n time_range: [\n dayjs(item.value()?.[0]).format('YYYY-MM-DD HH:00'),\n dayjs(item.value()?.[1]).format('YYYY-MM-DD HH:59'),\n ],\n recent_day: null,\n time_type: localTimeType,\n });\n break;\n default:\n onChange({\n time_range: [dayjs(item.value()?.[0]).format('YYYY-MM-DD'), dayjs(item.value()?.[1]).format('YYYY-MM-DD')],\n recent_day: null,\n time_type: localTimeType,\n });\n }\n setOpen(false);\n };\n\n // 点击日期\n const cellClick = (current: Dayjs, type: string) => {\n // 提取公共方法\n const handleInputFocus = (isStart: boolean) => {\n const element = document.getElementById('YkRangeTimeWithRecent');\n const inputs = element?.querySelectorAll('input');\n inputs?.[isStart ? 0 : 1].focus();\n };\n const handleDateChange = (start: Dayjs, end: Dayjs, closePopup = true) => {\n setLocalValue([start, end]);\n setActive(active === 'start' ? 'end' : 'start');\n handleInputFocus(active === 'end');\n if (closePopup) {\n const format = localTimeType === 4 ? 'YYYY-MM' : 'YYYY-MM-DD';\n onChange({\n time_range: [dayjs(start).format(format), dayjs(end).format(format)],\n recent_day: null,\n time_type: localTimeType,\n });\n setOpen(false);\n }\n };\n\n // 处理不同类型的日期选择\n const dateTypeHandlers = {\n month: () => {\n const selectedMonth = current.startOf('month');\n if (active === 'start') {\n setStartMonth(selectedMonth);\n setActive('end');\n handleInputFocus(false);\n } else {\n if (!startMonth) return;\n const endMonth = selectedMonth;\n const [start, end] =\n endMonth.isAfter(startMonth) || endMonth.isSame(startMonth)\n ? [startMonth, endMonth]\n : [endMonth, startMonth.endOf('month')];\n handleDateChange(start, end);\n }\n },\n week: () => {\n if (active === 'start') {\n setStartWeekDate(current.startOf('week'));\n setActive('end');\n handleInputFocus(false);\n } else {\n if (!startWeekDate) return;\n const startWeekStart = startWeekDate;\n const endWeekStart = current.startOf('week');\n if (endWeekStart.isAfter(startWeekStart) || endWeekStart.isSame(startWeekStart)) {\n const start = startWeekStart;\n const end = endWeekStart.isSame(dayjs().startOf('week')) ? dayjs() : endWeekStart.endOf('week');\n handleDateChange(start, end);\n } else {\n const start = endWeekStart;\n const end = startWeekStart.endOf('week');\n const finalEnd = end.isAfter(dayjs()) ? dayjs() : end;\n handleDateChange(start, finalEnd);\n }\n }\n },\n date: () => {\n if (active === 'start') {\n handleDateChange(current, localValue?.[1] || current, false);\n } else {\n if (!localValue?.[0]) return;\n const [start, end] = localValue[0] > current ? [current, localValue[0]] : [localValue[0], current];\n handleDateChange(start, end, localTimeType !== 1);\n }\n },\n };\n\n const handler = dateTypeHandlers[type as keyof typeof dateTypeHandlers];\n if (handler) handler();\n };\n\n // 日期单元格渲染\n const cellRender: DatePickerProps<Dayjs>['cellRender'] = (current, info) => {\n if (typeof current === 'number' || typeof current === 'string') {\n // 不确定什么时候会是number或string\n return <div className=\"ant-picker-cell-inner\">{current}</div>;\n }\n if (info.type !== 'date') {\n return (\n <div style={{ width: 36 }} onClick={() => cellClick(current, info.type)}>\n {info.originNode}\n </div>\n );\n }\n return (\n <div className=\"ant-picker-cell-inner\" style={{ width: 36 }} onClick={() => cellClick(current, info.type)}>\n {current.date()}\n </div>\n );\n };\n\n const content = (\n <div className={styles.popoverContent} data-yk-range-time-with-recent-content>\n {!timeTypes && noTimeFilter ? null : (\n <div className={styles.header}>\n {timeTypes && timeTypes.length > 0 && (\n <Tabs\n activeKey={localTimeTypeName}\n items={timeTypeOptions}\n onChange={(key) => {\n const timeTypeKey = Object.entries(timeTypeKeys).find(([_, label]) => label === key)?.[0];\n setLocalTimeType(Number(timeTypeKey));\n setLocalValue(\n optionsMap[timeTypeKey !== undefined ? Number(timeTypeKey) : 2]\n .default()\n ?.map((time) => dayjs(time)) as [Dayjs, Dayjs] | null,\n );\n }}\n />\n )}\n {!noTimeFilter && (\n <Radio.Group\n optionType=\"button\"\n value={timeFilterType}\n style={{\n marginLeft: 'auto',\n }}\n onChange={(e) => {\n setTimeFilterType(e.target.value);\n }}\n >\n <Radio\n value={0}\n style={{\n borderRadius: '2px 0 0 2px',\n height: 26,\n lineHeight: '24px',\n padding: '0 10px',\n }}\n >\n 静态时间\n </Radio>\n <Radio\n value={1}\n style={{\n borderRadius: '0 2px 2px 0',\n height: 26,\n lineHeight: '24px',\n padding: '0 10px',\n }}\n >\n 动态时间\n </Radio>\n </Radio.Group>\n )}\n </div>\n )}\n <div\n className={classNames(styles.body, {\n [styles.showTimes]: localTimeType === 1 && timeFilterType === 0,\n })}\n >\n <div className={styles.left}>\n {presetsTime.options.map((item) => (\n <Button\n key={item.label}\n className={styles.presetBtn}\n onClick={() => {\n if (timeFilterType === 1) {\n onChange({\n time_range: null,\n recent_day: item.value as string,\n time_type: localTimeType,\n });\n setOpen(false);\n } else {\n presetClick(item as { value: () => RangeValue });\n }\n }}\n >\n {item.label}\n </Button>\n ))}\n </div>\n {timeFilterType === 0 ? (\n <div className={styles.right} id=\"YkRangeTimeWithRecent\" key={open ? 'open' : 'close'}>\n <RangePicker\n id=\"RangeStart\"\n locale={datePickerZhCN}\n className={styles.rangePicker}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n open={open}\n cellRender={cellRender}\n picker={picker}\n autoFocus\n showWeek={false}\n onOpenChange={() => {}}\n classNames={{ popup: { root: styles.rangePickerPopup } }}\n value={localValue}\n placement=\"bottomLeft\"\n />\n {localTimeType === 1 && (\n <div className={styles.boxTimes}>\n <Select\n options={disabledStartHours}\n value={startTime}\n defaultValue={startTimeOptions[0].value}\n prefix={<ClockCircleOutlined />}\n className={styles.timeSelectItem}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n onChange={(hour) => {\n timeChange(hour, 'start');\n }}\n />\n <Select\n options={disabledEndHours}\n value={endTime}\n defaultValue={endTimeOptions[endTimeOptions.length - 1].value}\n prefix={<ClockCircleOutlined />}\n className={styles.timeSelectItem}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n onChange={(hour) => {\n timeChange(hour, 'end');\n }}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={styles.rightDynamic}>\n <div className={styles.dynamicItem}>\n <div className={styles.dynamicItemTitle}>\n <span>开始时间:{showRecentStart}</span>\n </div>\n <div className={styles.dynamicItemContent}>\n <InputNumber\n min={0}\n className={styles.inputNumber}\n value={recentStart}\n onChange={(next) => {\n const newStart = next || 0;\n // 确保开始时间大于等于结束时间\n if (newStart < recentEnd) {\n setRecentStart(newStart);\n setRecentEnd(newStart);\n } else {\n setRecentStart(newStart);\n }\n }}\n />\n <span style={{ color: '#333' }}>{recentType === 'D' ? '天' : recentType === 'W' ? '周' : '月'}前</span>\n </div>\n </div>\n <div className={styles.dynamicItem}>\n <div className={styles.dynamicItemTitle}>\n <span>结束时间:{showRecentEnd}</span>\n </div>\n <div className={styles.dynamicItemContent}>\n <InputNumber\n min={0}\n className={styles.inputNumber}\n value={recentEnd}\n onChange={(next) => {\n const newEnd = next || 0;\n // 确保结束时间小于等于开始时间\n if (newEnd > recentStart) {\n setRecentEnd(newEnd);\n setRecentStart(newEnd);\n } else {\n setRecentEnd(newEnd);\n }\n }}\n />\n <span style={{ color: '#333' }}>{recentType === 'D' ? '天' : recentType === 'W' ? '周' : '月'}前</span>\n </div>\n </div>\n </div>\n )}\n </div>\n {(localTimeType === 1 || timeFilterType === 1) && (\n <div className={styles.footer}>\n <Button\n onClick={() => {\n if (timeFilterType === 1) {\n // 动态时间\n onChange({\n time_range: null,\n recent_day: `${recentType}|${recentStart}|${recentEnd}`,\n time_type: localTimeType,\n });\n } else {\n // 如果是按小时,结束时间不能早于开始时间\n if (localTimeType === 1) {\n if (dayjs(localValue?.[1]).isBefore(dayjs(localValue?.[0]))) {\n message.warning('结束时间不能早于开始时间');\n return;\n }\n }\n // 静态时间\n onChange({\n time_range: [\n dayjs(localValue?.[0]).format('YYYY-MM-DD HH:00'),\n dayjs(localValue?.[1]).format('YYYY-MM-DD HH:59'),\n ],\n recent_day: null,\n time_type: localTimeType,\n });\n }\n setOpen(false);\n }}\n type=\"primary\"\n >\n 确认\n </Button>\n </div>\n )}\n </div>\n );\n return (\n <ConfigProvider locale={zhCN}>\n <Popover\n open={open}\n onOpenChange={setOpen}\n content={content}\n arrow={false}\n placement={placement}\n trigger=\"click\"\n styles={{ body: { borderRadius: 2, padding: 0 } }}\n >\n <div className={styles.btnRange} style={style} ref={triggerWrapRef}>\n {timeTypes && timeTypes.length > 0 && (\n <>\n <span className={styles.btnTimeType}>\n {timeTypeKeys[normalizeTimeTypeForTimeTypes(value.time_type, timeTypes) as keyof typeof timeTypeKeys]}\n </span>\n <Divider type=\"vertical\" />\n </>\n )}\n {dateFieldOptionName && (\n <>\n <span className={styles.btnTimeType}>{dateFieldOptionName}</span>\n <Divider type=\"vertical\" />\n </>\n )}\n {!noIcon && <i className=\"iconfont icon-date\" style={{ color: '#3B86F9' }} />}\n {/* 显示时间 */}\n {showRangeTime ? (\n <span className={styles.btnRangeValue} style={!noIcon ? { marginLeft: 5 } : undefined}>\n {showRangeTime}\n </span>\n ) : placeholder ? (\n <div className={styles.placeholder}>{placeholder}</div>\n ) : null}\n {/* 清除 */}\n {clearable && (value.time_range || value.recent_day) && (\n <i\n onClick={(e) => {\n e.stopPropagation();\n onChange({\n time_range: null,\n recent_day: null,\n time_type: localTimeType,\n });\n }}\n className={classNames(styles.clearIcon, 'iconfont icon-guanbi1')}\n />\n )}\n </div>\n </Popover>\n </ConfigProvider>\n );\n};\n\nexport default YkRangeTimeWithRecent;\n"],
|
|
5
|
-
"mappings": "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",
|
|
4
|
+
"sourcesContent": ["/**\n * 组件名称:YkRangeTimeWithRecent\n * 组件描述:时间范围 + 动态「最近 N 天」等能力的时间筛选(Range + Recent)\n * 组件使用场景:在需要选择时间范围的场景中使用,如筛选、排序等\n * 组件参数说明:\n * - value: {\n * time_range: [string, string] | null | undefined;\n * recent_day: string | null | undefined;\n * time_type: number | undefined;\n * }\n * - timeTypes: 时间类型选项\n * - onChange: 时间范围变化回调\n * - placement: 弹层位置\n * - placeholder: 占位符\n * - noTimeFilter: 是否禁用动态时间\n * - noIcon: 是否禁用图标\n */\nimport { ClockCircleOutlined } from '@ant-design/icons';\nimport {\n Button,\n ConfigProvider,\n DatePicker,\n type DatePickerProps,\n Divider,\n InputNumber,\n message,\n Popover,\n Radio,\n Select,\n Tabs,\n} from 'antd';\nimport datePickerZhCN from 'antd/es/date-picker/locale/zh_CN';\nimport zhCN from 'antd/locale/zh_CN';\nimport classNames from 'classnames';\nimport dayjs, { type Dayjs } from 'dayjs';\nimport 'dayjs/locale/zh-cn';\nimport isoWeek from 'dayjs/plugin/isoWeek';\nimport weekOfYear from 'dayjs/plugin/weekOfYear';\nimport React, { type FC, useEffect, useMemo, useRef, useState } from 'react';\nimport { endTimeOptions, optionsMap, pickerMap, recentOptionsMap, startTimeOptions } from './constants';\nimport styles from './index.module.less';\n\ndayjs.extend(isoWeek);\ndayjs.extend(weekOfYear);\ndayjs.locale({\n ...dayjs.Ls['zh-cn'],\n weekStart: 1,\n});\n\nconst { RangePicker } = DatePicker;\n\nexport type YkRangeTimeWithRecentTimeType = '合计' | '按小时' | '按天' | '按周' | '按月';\nexport interface YkRangeTimeWithRecentProps {\n style?: React.CSSProperties;\n clearable?: boolean;\n value: {\n time_range: [string, string] | null | undefined;\n recent_day: string | null | undefined;\n time_type: number | undefined;\n };\n timeTypes?: YkRangeTimeWithRecentTimeType[];\n onChange: (value: {\n time_range: [string, string] | null | undefined;\n recent_day: string | null | undefined;\n time_type: number | undefined;\n }) => void;\n placement?: 'bottomLeft' | 'bottomRight' | 'topLeft' | 'topRight';\n placeholder?: string | React.ReactNode;\n noTimeFilter?: boolean;\n noIcon?: boolean;\n disabled?: boolean;\n dateFieldOptionName?: string;\n}\n\ntype RangeValue = [string, string] | null;\n\nconst timeTypeKeys = {\n 0: '合计',\n 1: '按小时',\n 2: '按天',\n 3: '按周',\n 4: '按月',\n};\n\n/** 未提供「合计」Tab 时,不应使用 time_type 0,回落为按天 */\nfunction normalizeTimeTypeForTimeTypes(\n timeType: number | undefined,\n timeTypes: YkRangeTimeWithRecentTimeType[] | undefined,\n): number {\n const raw = typeof timeType === 'number' ? timeType : 2;\n if (Array.isArray(timeTypes) && !timeTypes.includes('合计') && raw === 0) {\n return 2;\n }\n return raw;\n}\n\nconst YkRangeTimeWithRecent: FC<YkRangeTimeWithRecentProps> = ({\n value,\n onChange,\n timeTypes,\n style,\n clearable,\n placement = 'bottomLeft',\n placeholder = '开始时间 ~ 结束时间',\n noTimeFilter = false,\n noIcon = false,\n dateFieldOptionName = '',\n}) => {\n // 格式化时间\n const formatTime = (time: string) => {\n switch (normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) {\n case 1: // 按小时\n return dayjs(time).format('YYYY-MM-DD HH:mm');\n case 3: // 按周\n return dayjs(time).format('YYYY-MM-DD');\n case 4: // 按月\n return dayjs(time).format('YYYY-MM');\n case 2: // 按天\n case 0: // 合计\n default:\n return dayjs(time).format('YYYY-MM-DD');\n }\n };\n\n const [open, setOpen] = useState(false);\n /** 外层 Popover 与内层 RangePicker 均基于 rc-trigger,嵌套时外层常收不到「点击外部」;用捕获阶段统一判定 */\n const triggerWrapRef = useRef<HTMLDivElement>(null);\n const [active, setActive] = useState<'start' | 'end'>('start');\n // 是否静态时间 默认是静态时间\n const [timeFilterType, setTimeFilterType] = useState(0);\n // 弹层内时间\n const [localValue, setLocalValue] = useState<[Dayjs, Dayjs] | null>(null);\n // dayjs.isoWeek存在跨年问题,d=2025-12-30时,d.isoWeekYear()=2026\n const [startWeekDate, setStartWeekDate] = useState<Dayjs | null>(null);\n const [startMonth, setStartMonth] = useState<Dayjs | null>(null);\n // 弹层内时间类型\n const [localTimeType, setLocalTimeType] = useState<number | undefined>(() =>\n normalizeTimeTypeForTimeTypes(value?.time_type, timeTypes),\n );\n // 弹层内时间类型名称\n const localTimeTypeName = useMemo(() => {\n const type = typeof localTimeType === 'number' ? localTimeType : 2;\n return timeTypeKeys[type as keyof typeof timeTypeKeys] || timeTypeKeys[2];\n }, [localTimeType]);\n\n const getFormattedTimeRange = (recent: number, type: 'start' | 'end') => {\n const today = dayjs();\n switch (localTimeType) {\n case 1: // 按小时\n return today.subtract(recent, 'day').format(`YYYY-MM-DD ${type === 'start' ? '00:00' : '23:59'}`);\n case 3: // 按周\n return `${today.subtract(recent, 'week').format('YYYY')}年-${today.subtract(recent, 'week').week()}周 (${today.subtract(recent, 'week').startOf('week').format('MM.DD')}-${today.subtract(recent, 'week').endOf('week').format('MM.DD')})`;\n case 4: // 按月\n return today.subtract(recent, 'month').format('YYYY-MM月');\n default:\n return today.subtract(recent, 'day').format('YYYY-MM-DD');\n }\n };\n\n // 外部格式化\n const getFormattedRecentTime = (recent: number, type: 'start' | 'end') => {\n const today = dayjs();\n switch (localTimeType) {\n case 1: // 按小时\n return today.subtract(recent, 'day').format(`YYYY-MM-DD ${type === 'start' ? '00:00' : '23:59'}`);\n case 3: // 按周\n return `${today.subtract(recent, 'week').format('YYYY')}年-${today.subtract(recent, 'week').week()}周`;\n case 4: // 按月\n return today.subtract(recent, 'month').format('YYYY-MM月');\n default:\n return today.subtract(recent, 'day').format('YYYY-MM-DD');\n }\n };\n\n // 动态时间\n const [recentStart, setRecentStart] = useState<number>(0);\n const [recentEnd, setRecentEnd] = useState<number>(0);\n\n useEffect(() => {\n setRecentStart(value?.recent_day ? Number(value.recent_day.split('|')[1]) : 0);\n setRecentEnd(value?.recent_day ? Number(value.recent_day.split('|')[2]) : 0);\n }, [value?.recent_day]);\n\n // 显示时间\n const showRangeTime = useMemo(() => {\n if (value?.time_range && value?.time_range.length === 2) {\n return formatTime(value.time_range[0]) + ' ~ ' + formatTime(value.time_range[1]);\n } else if (value?.recent_day) {\n const [type, start, end] = value.recent_day.split('|');\n let showTimeText = '';\n const unit = type === 'D' ? '天' : type === 'W' ? '周' : '月';\n const options = recentOptionsMap[localTimeType || 2].options;\n if (options.map((m) => m.value).includes(value.recent_day)) {\n showTimeText = options.find((m) => m.value === value.recent_day)?.label || '';\n } else if (end === '0') {\n showTimeText = '近' + (Number(start) - Number(end) + 1) + unit;\n } else {\n showTimeText = start + unit + '前 ~ ' + end + unit + '前';\n }\n // 合计、按小时、按天 里本周上周本月上月特殊处理\n if (\n value.time_type !== undefined &&\n [0, 1, 2].includes(normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) &&\n (value.recent_day.split('|')[0] === 'W' || value.recent_day.split('|')[0] === 'M')\n ) {\n const today = dayjs();\n const lastDayOfLastMonth = today.subtract(1, 'month').endOf('month');\n const daysToLastMonthStart = today.diff(lastDayOfLastMonth.startOf('month'), 'day');\n const daysToLastMonthEnd = today.diff(lastDayOfLastMonth, 'day') + 1;\n let startNum, endNum;\n switch (value.recent_day) {\n case 'W|0|0':\n startNum = today.day() === 0 ? 6 : today.day() - 1;\n endNum = 0;\n showTimeText = '本周';\n break;\n case 'W|1|1':\n startNum = today.day() === 0 ? 13 : today.day() + 6;\n endNum = today.day() === 0 ? 7 : today.day();\n showTimeText = '上周';\n break;\n case 'M|0|0':\n startNum = today.date() - 1;\n endNum = 0;\n showTimeText = '本月';\n break;\n case 'M|1|1':\n startNum = daysToLastMonthStart;\n endNum = daysToLastMonthEnd;\n showTimeText = '上月';\n break;\n default:\n startNum = 0;\n endNum = 0;\n showTimeText = '';\n break;\n }\n return (\n <>\n {showTimeText}\n <Divider type='vertical' />\n {getFormattedRecentTime(startNum, 'start')} ~ {getFormattedRecentTime(endNum, 'end')}\n </>\n );\n }\n return (\n <>\n {showTimeText}\n <Divider type='vertical' />\n {getFormattedRecentTime(Number(start), 'start')} ~ {getFormattedRecentTime(Number(end), 'end')}\n </>\n );\n }\n return '';\n }, [value, timeTypes, localTimeType]);\n\n const recentType = useMemo(() => {\n switch (localTimeType) {\n case 3:\n return 'W';\n case 4:\n return 'M';\n default:\n return 'D';\n }\n }, [localTimeType]);\n\n // 显示的开始时间\n const showRecentStart = useMemo(() => {\n return getFormattedTimeRange(recentStart, 'start');\n }, [recentStart, localTimeType]);\n\n // 显示的结束时间\n const showRecentEnd = useMemo(() => {\n return getFormattedTimeRange(recentEnd, 'end');\n }, [recentEnd, localTimeType]);\n\n // 时间类型选项\n const timeTypeOptions = useMemo(() => {\n return (\n timeTypes?.map((item) => ({\n key: item,\n label: item,\n children: null,\n })) || []\n );\n }, [timeTypes]);\n\n // 时间类型 'date' | 'week' | 'month'\n const picker = useMemo(() => {\n return localTimeType ? pickerMap[localTimeType] : 'date';\n }, [localTimeType]);\n\n // 预选时间\n const presetsTime = useMemo(() => {\n if (timeFilterType === 1) {\n return recentOptionsMap[localTimeType || 2];\n }\n return optionsMap[localTimeType || 2];\n }, [localTimeType, timeFilterType]);\n\n const startTime = useMemo(() => {\n return Number(localValue?.[0]?.format('HH')) || 0;\n }, [localValue]);\n\n const endTime = useMemo(() => {\n return Number(localValue?.[1]?.format('HH')) || 0;\n }, [localValue]);\n\n // 过滤禁用开始时间\n const disabledStartHours = useMemo(() => {\n if (localValue?.[0] && dayjs(localValue[0]).isSame(dayjs(), 'day')) {\n const currentHour = dayjs().hour();\n return startTimeOptions.filter((option) => option.value <= currentHour);\n }\n return startTimeOptions;\n }, [localValue]);\n\n // 过滤禁用结束时间\n const disabledEndHours = useMemo(() => {\n if (localValue?.[1] && dayjs(localValue[1]).isSame(dayjs(), 'day')) {\n const currentHour = dayjs().hour();\n return endTimeOptions.filter((option) => option.value <= currentHour);\n }\n return endTimeOptions;\n }, [localValue]);\n\n useEffect(() => {\n if (value?.recent_day) {\n setTimeFilterType(1);\n }\n }, [value?.recent_day]);\n\n useEffect(() => {\n if (!open) return;\n const onPointerDownCapture = (e: PointerEvent) => {\n const el = e.target;\n if (!(el instanceof Element)) return;\n if (triggerWrapRef.current?.contains(el)) return;\n if (el.closest('[data-yk-range-time-with-recent-content]')) return;\n setOpen(false);\n };\n document.addEventListener('pointerdown', onPointerDownCapture, true);\n return () => document.removeEventListener('pointerdown', onPointerDownCapture, true);\n }, [open]);\n\n // 打开时,初始化时间范围和时间类型\n useEffect(() => {\n if (open) {\n setActive('start');\n setStartWeekDate(null);\n setStartMonth(null);\n const rangeStart = document.getElementById('RangeStart');\n setTimeout(() => {\n rangeStart?.focus();\n }, 10);\n setLocalTimeType(normalizeTimeTypeForTimeTypes(value?.time_type, timeTypes));\n if (value?.recent_day) {\n // 合计、按小时、按天 里本周上周本月上月特殊处理\n if (\n value.time_type !== undefined &&\n [0, 1, 2].includes(normalizeTimeTypeForTimeTypes(value.time_type, timeTypes)) &&\n (value.recent_day.split('|')[0] === 'W' || value.recent_day.split('|')[0] === 'M')\n ) {\n const today = dayjs();\n const lastDayOfLastMonth = today.subtract(1, 'month').endOf('month');\n const daysToLastMonthStart = today.diff(lastDayOfLastMonth.startOf('month'), 'day');\n const daysToLastMonthEnd = today.diff(lastDayOfLastMonth, 'day') + 1;\n switch (value.recent_day) {\n case 'W|0|0':\n setRecentStart(today.day() === 0 ? 6 : today.day() - 1);\n setRecentEnd(0);\n break;\n case 'W|1|1':\n setRecentStart(today.day() === 0 ? 13 : today.day() + 6);\n setRecentEnd(today.day() === 0 ? 7 : today.day());\n break;\n case 'M|0|0':\n setRecentStart(today.date() - 1);\n setRecentEnd(0);\n break;\n case 'M|1|1':\n setRecentStart(daysToLastMonthStart);\n setRecentEnd(daysToLastMonthEnd);\n break;\n default:\n setRecentStart(0);\n setRecentEnd(0);\n break;\n }\n } else {\n setRecentStart(Number(value.recent_day.split('|')[1]));\n setRecentEnd(Number(value.recent_day.split('|')[2]));\n }\n } else {\n setLocalValue([dayjs(value?.time_range?.[0]), dayjs(value?.time_range?.[1])]);\n }\n }\n }, [open]);\n\n const timeChange = (hour: number, type: 'start' | 'end') => {\n const [start, end] = localValue || [];\n if (type === 'start') {\n setLocalValue([dayjs(start).hour(hour), end]);\n } else {\n setLocalValue([start, dayjs(end).hour(hour)]);\n }\n };\n\n // 预选时间点击\n const presetClick = (item: { value: () => RangeValue }) => {\n setLocalValue(item.value()?.map((time) => dayjs(time)) as [Dayjs, Dayjs] | null);\n switch (localTimeType) {\n case 1:\n onChange({\n time_range: [\n dayjs(item.value()?.[0]).format('YYYY-MM-DD HH:00'),\n dayjs(item.value()?.[1]).format('YYYY-MM-DD HH:59'),\n ],\n recent_day: null,\n time_type: localTimeType,\n });\n break;\n default:\n onChange({\n time_range: [dayjs(item.value()?.[0]).format('YYYY-MM-DD'), dayjs(item.value()?.[1]).format('YYYY-MM-DD')],\n recent_day: null,\n time_type: localTimeType,\n });\n }\n setOpen(false);\n };\n\n // 点击日期\n const cellClick = (current: Dayjs, type: string) => {\n // 提取公共方法\n const handleInputFocus = (isStart: boolean) => {\n const element = document.getElementById('YkRangeTimeWithRecent');\n const inputs = element?.querySelectorAll('input');\n inputs?.[isStart ? 0 : 1].focus();\n };\n const handleDateChange = (start: Dayjs, end: Dayjs, closePopup = true) => {\n setLocalValue([start, end]);\n setActive(active === 'start' ? 'end' : 'start');\n handleInputFocus(active === 'end');\n if (closePopup) {\n const format = localTimeType === 4 ? 'YYYY-MM' : 'YYYY-MM-DD';\n onChange({\n time_range: [dayjs(start).format(format), dayjs(end).format(format)],\n recent_day: null,\n time_type: localTimeType,\n });\n setOpen(false);\n }\n };\n\n // 处理不同类型的日期选择\n const dateTypeHandlers = {\n month: () => {\n const selectedMonth = current.startOf('month');\n if (active === 'start') {\n setStartMonth(selectedMonth);\n setActive('end');\n handleInputFocus(false);\n } else {\n if (!startMonth) return;\n const endMonth = selectedMonth;\n const [start, end] =\n endMonth.isAfter(startMonth) || endMonth.isSame(startMonth)\n ? [startMonth, endMonth]\n : [endMonth, startMonth.endOf('month')];\n handleDateChange(start, end);\n }\n },\n week: () => {\n if (active === 'start') {\n setStartWeekDate(current.startOf('week'));\n setActive('end');\n handleInputFocus(false);\n } else {\n if (!startWeekDate) return;\n const startWeekStart = startWeekDate;\n const endWeekStart = current.startOf('week');\n if (endWeekStart.isAfter(startWeekStart) || endWeekStart.isSame(startWeekStart)) {\n const start = startWeekStart;\n const end = endWeekStart.isSame(dayjs().startOf('week')) ? dayjs() : endWeekStart.endOf('week');\n handleDateChange(start, end);\n } else {\n const start = endWeekStart;\n const end = startWeekStart.endOf('week');\n const finalEnd = end.isAfter(dayjs()) ? dayjs() : end;\n handleDateChange(start, finalEnd);\n }\n }\n },\n date: () => {\n if (active === 'start') {\n handleDateChange(current, localValue?.[1] || current, false);\n } else {\n if (!localValue?.[0]) return;\n const [start, end] = localValue[0] > current ? [current, localValue[0]] : [localValue[0], current];\n handleDateChange(start, end, localTimeType !== 1);\n }\n },\n };\n\n const handler = dateTypeHandlers[type as keyof typeof dateTypeHandlers];\n if (handler) handler();\n };\n\n // 日期单元格渲染\n const cellRender: DatePickerProps<Dayjs>['cellRender'] = (current, info) => {\n if (typeof current === 'number' || typeof current === 'string') {\n // 不确定什么时候会是number或string\n return <div className='ant-picker-cell-inner'>{current}</div>;\n }\n if (info.type !== 'date') {\n return (\n <div style={{ width: 36 }} onClick={() => cellClick(current, info.type)}>\n {info.originNode}\n </div>\n );\n }\n return (\n <div className='ant-picker-cell-inner' style={{ width: 36 }} onClick={() => cellClick(current, info.type)}>\n {current.date()}\n </div>\n );\n };\n\n const content = (\n <div className={styles.popoverContent} data-yk-range-time-with-recent-content>\n {!timeTypes && noTimeFilter ? null : (\n <div className={styles.header}>\n {timeTypes && timeTypes.length > 0 && (\n <Tabs\n activeKey={localTimeTypeName}\n items={timeTypeOptions}\n onChange={(key) => {\n const timeTypeKey = Object.entries(timeTypeKeys).find(([_, label]) => label === key)?.[0];\n setLocalTimeType(Number(timeTypeKey));\n setLocalValue(\n optionsMap[timeTypeKey !== undefined ? Number(timeTypeKey) : 2]\n .default()\n ?.map((time) => dayjs(time)) as [Dayjs, Dayjs] | null,\n );\n }}\n />\n )}\n {!noTimeFilter && (\n <Radio.Group\n optionType='button'\n value={timeFilterType}\n style={{\n marginLeft: 'auto',\n }}\n onChange={(e) => {\n setTimeFilterType(e.target.value);\n }}\n >\n <Radio\n value={0}\n style={{\n borderRadius: '2px 0 0 2px',\n height: 26,\n lineHeight: '24px',\n padding: '0 10px',\n }}\n >\n 静态时间\n </Radio>\n <Radio\n value={1}\n style={{\n borderRadius: '0 2px 2px 0',\n height: 26,\n lineHeight: '24px',\n padding: '0 10px',\n }}\n >\n 动态时间\n </Radio>\n </Radio.Group>\n )}\n </div>\n )}\n <div\n className={classNames(styles.body, {\n [styles.showTimes]: localTimeType === 1 && timeFilterType === 0,\n })}\n >\n <div className={styles.left}>\n {presetsTime.options.map((item) => (\n <Button\n key={item.label}\n className={styles.presetBtn}\n onClick={() => {\n if (timeFilterType === 1) {\n onChange({\n time_range: null,\n recent_day: item.value as string,\n time_type: localTimeType,\n });\n setOpen(false);\n } else {\n presetClick(item as { value: () => RangeValue });\n }\n }}\n >\n {item.label}\n </Button>\n ))}\n </div>\n {timeFilterType === 0 ? (\n <div className={styles.right} id='YkRangeTimeWithRecent' key={open ? 'open' : 'close'}>\n <RangePicker\n id='RangeStart'\n locale={datePickerZhCN}\n className={styles.rangePicker}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n open={open}\n cellRender={cellRender}\n picker={picker}\n autoFocus\n showWeek={false}\n onOpenChange={() => {}}\n classNames={{ popup: { root: styles.rangePickerPopup } }}\n value={localValue}\n placement='bottomLeft'\n />\n {localTimeType === 1 && (\n <div className={styles.boxTimes}>\n <Select\n options={disabledStartHours}\n value={startTime}\n defaultValue={startTimeOptions[0].value}\n prefix={<ClockCircleOutlined />}\n className={styles.timeSelectItem}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n onChange={(hour) => {\n timeChange(hour, 'start');\n }}\n />\n <Select\n options={disabledEndHours}\n value={endTime}\n defaultValue={endTimeOptions[endTimeOptions.length - 1].value}\n prefix={<ClockCircleOutlined />}\n className={styles.timeSelectItem}\n getPopupContainer={(triggerNode) => triggerNode.parentElement as HTMLElement}\n onChange={(hour) => {\n timeChange(hour, 'end');\n }}\n />\n </div>\n )}\n </div>\n ) : (\n <div className={styles.rightDynamic}>\n <div className={styles.dynamicItem}>\n <div className={styles.dynamicItemTitle}>\n <span>开始时间:{showRecentStart}</span>\n </div>\n <div className={styles.dynamicItemContent}>\n <InputNumber\n min={0}\n className={styles.inputNumber}\n value={recentStart}\n onChange={(next) => {\n const newStart = next || 0;\n // 确保开始时间大于等于结束时间\n if (newStart < recentEnd) {\n setRecentStart(newStart);\n setRecentEnd(newStart);\n } else {\n setRecentStart(newStart);\n }\n }}\n />\n <span style={{ color: '#333' }}>{recentType === 'D' ? '天' : recentType === 'W' ? '周' : '月'}前</span>\n </div>\n </div>\n <div className={styles.dynamicItem}>\n <div className={styles.dynamicItemTitle}>\n <span>结束时间:{showRecentEnd}</span>\n </div>\n <div className={styles.dynamicItemContent}>\n <InputNumber\n min={0}\n className={styles.inputNumber}\n value={recentEnd}\n onChange={(next) => {\n const newEnd = next || 0;\n // 确保结束时间小于等于开始时间\n if (newEnd > recentStart) {\n setRecentEnd(newEnd);\n setRecentStart(newEnd);\n } else {\n setRecentEnd(newEnd);\n }\n }}\n />\n <span style={{ color: '#333' }}>{recentType === 'D' ? '天' : recentType === 'W' ? '周' : '月'}前</span>\n </div>\n </div>\n </div>\n )}\n </div>\n {(localTimeType === 1 || timeFilterType === 1) && (\n <div className={styles.footer}>\n <Button\n onClick={() => {\n if (timeFilterType === 1) {\n // 动态时间\n onChange({\n time_range: null,\n recent_day: `${recentType}|${recentStart}|${recentEnd}`,\n time_type: localTimeType,\n });\n } else {\n // 如果是按小时,结束时间不能早于开始时间\n if (localTimeType === 1) {\n if (dayjs(localValue?.[1]).isBefore(dayjs(localValue?.[0]))) {\n message.warning('结束时间不能早于开始时间');\n return;\n }\n }\n // 静态时间\n onChange({\n time_range: [\n dayjs(localValue?.[0]).format('YYYY-MM-DD HH:00'),\n dayjs(localValue?.[1]).format('YYYY-MM-DD HH:59'),\n ],\n recent_day: null,\n time_type: localTimeType,\n });\n }\n setOpen(false);\n }}\n type='primary'\n >\n 确认\n </Button>\n </div>\n )}\n </div>\n );\n return (\n <ConfigProvider locale={zhCN}>\n <Popover\n open={open}\n onOpenChange={setOpen}\n content={content}\n arrow={false}\n placement={placement}\n trigger='click'\n styles={{ body: { borderRadius: 2, padding: 0 } }}\n >\n <div className={styles.btnRange} style={style} ref={triggerWrapRef}>\n {timeTypes && timeTypes.length > 0 && (\n <>\n <span className={styles.btnTimeType}>\n {timeTypeKeys[normalizeTimeTypeForTimeTypes(value.time_type, timeTypes) as keyof typeof timeTypeKeys]}\n </span>\n <Divider type='vertical' />\n </>\n )}\n {dateFieldOptionName && (\n <>\n <span className={styles.btnTimeType}>{dateFieldOptionName}</span>\n <Divider type='vertical' />\n </>\n )}\n {!noIcon && <i className='iconfont icon-date' style={{ color: '#3B86F9' }} />}\n {/* 显示时间 */}\n {showRangeTime ? (\n <span className={styles.btnRangeValue} style={!noIcon ? { marginLeft: 5 } : undefined}>\n {showRangeTime}\n </span>\n ) : placeholder ? (\n <div className={styles.placeholder}>{placeholder}</div>\n ) : null}\n {/* 清除 */}\n {clearable && (value.time_range || value.recent_day) && (\n <i\n onClick={(e) => {\n e.stopPropagation();\n onChange({\n time_range: null,\n recent_day: null,\n time_type: localTimeType,\n });\n }}\n className={classNames(styles.clearIcon, 'iconfont icon-guanbi1')}\n />\n )}\n </div>\n </Popover>\n </ConfigProvider>\n );\n};\n\nexport default YkRangeTimeWithRecent;\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
6
|
"names": ["import_zh_CN", "dayjs", "isoWeek", "weekOfYear", "React", "styles", "classNames", "datePickerZhCN", "zhCN"]
|
|
7
7
|
}
|