@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
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
import { Meta, ArgTypes } from '@storybook/addon-docs/blocks';
|
|
2
|
+
import * as YkDateRangePickerStories from './index.stories';
|
|
3
|
+
|
|
4
|
+
<Meta of={YkDateRangePickerStories} />
|
|
5
|
+
|
|
6
|
+
# YkDateRangePicker 事件日期范围选择器
|
|
7
|
+
|
|
8
|
+
事件类日期范围选择器,支持**紧凑预设标签**与**完整 RangePicker** 双模式切换,提供多项快捷预设与受控逻辑。
|
|
9
|
+
|
|
10
|
+
## ✨ 核心特性
|
|
11
|
+
|
|
12
|
+
- 🎯 **双模式交互**:紧凑模式(预设标签)↔ 完整模式(RangePicker)无缝切换
|
|
13
|
+
- ⚡ **智能预设**:内置 8 个常用时间快捷选项,2 列网格布局
|
|
14
|
+
- 🎨 **视觉反馈**:当前激活项高亮显示,蓝色背景标识选中状态
|
|
15
|
+
- 🤖 **智能默认**:无初始值时自动选中「近5分钟」预设
|
|
16
|
+
- 🔄 **受控组件**:精准区分「用户操作」与「外部赋值」,仅用户操作触发 `onChange`
|
|
17
|
+
- 🔒 **日期限制**:仅允许选择近 7 天(含今天)的时间范围
|
|
18
|
+
- 🗑️ **清除支持**:`allowClear` 一键清除,清除后自动重置预设状态
|
|
19
|
+
- 🔧 **ref 控制**:通过 `forwardRef` 暴露 `toggleFirstPreset()` 方法,支持外部强制切换预设
|
|
20
|
+
|
|
21
|
+
## 📦 依赖
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{
|
|
25
|
+
"react": "^18.3.1",
|
|
26
|
+
"antd": "^5.29.2",
|
|
27
|
+
"dayjs": "^1.x",
|
|
28
|
+
"classnames": "^2.5.1",
|
|
29
|
+
"@ant-design/icons": "^5.6.1"
|
|
30
|
+
}
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
## 🚀 快速开始
|
|
34
|
+
|
|
35
|
+
### 基础使用
|
|
36
|
+
|
|
37
|
+
```tsx
|
|
38
|
+
import { useState, useRef } from 'react';
|
|
39
|
+
import { YkDateRangePicker, type DateRangeValue, type YkDateRangePickerRef } from '@yoka-ui/ui';
|
|
40
|
+
import dayjs from 'dayjs';
|
|
41
|
+
|
|
42
|
+
function App() {
|
|
43
|
+
const [range, setRange] = useState<DateRangeValue | []>([]);
|
|
44
|
+
const pickerRef = useRef<YkDateRangePickerRef>(null);
|
|
45
|
+
|
|
46
|
+
return (
|
|
47
|
+
<YkDateRangePicker
|
|
48
|
+
value={range}
|
|
49
|
+
onChange={(dates) => setRange(dates ?? [])}
|
|
50
|
+
ref={pickerRef}
|
|
51
|
+
/>
|
|
52
|
+
);
|
|
53
|
+
}
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
### 外部控制
|
|
57
|
+
|
|
58
|
+
```tsx
|
|
59
|
+
// 强制切换到「近5分钟」预设
|
|
60
|
+
pickerRef.current?.toggleFirstPreset();
|
|
61
|
+
|
|
62
|
+
// 设置外部值
|
|
63
|
+
setRange([dayjs().subtract(1, 'hour'), dayjs()]);
|
|
64
|
+
|
|
65
|
+
// 清空选择
|
|
66
|
+
setRange([]);
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## 📋 API 文档
|
|
70
|
+
|
|
71
|
+
<ArgTypes of={YkDateRangePickerStories} />
|
|
72
|
+
|
|
73
|
+
## 💡 使用场景
|
|
74
|
+
|
|
75
|
+
### 1. 日志查询
|
|
76
|
+
|
|
77
|
+
适用于需要快速筛选最近时间段日志的场景,预设的「近5分钟」「近1小时」等选项大幅提升操作效率。
|
|
78
|
+
|
|
79
|
+
### 2. 数据分析
|
|
80
|
+
|
|
81
|
+
在数据报表页面中,用户可以通过预设快速切换常用分析周期,或通过自定义范围进行精细化查询。
|
|
82
|
+
|
|
83
|
+
### 3. 监控告警
|
|
84
|
+
|
|
85
|
+
结合实时监控需求,预设项帮助用户快速定位异常发生的时间段。
|
|
86
|
+
|
|
87
|
+
### 4. 自定义样式
|
|
88
|
+
|
|
89
|
+
通过 `className` 和 `style` 属性可以自定义组件的外观的类名和内联样式:
|
|
90
|
+
|
|
91
|
+
```tsx
|
|
92
|
+
// 自定义样式示例
|
|
93
|
+
<YkDateRangePicker
|
|
94
|
+
className="custom-date-picker"
|
|
95
|
+
style={{ marginTop: 16 }}
|
|
96
|
+
value={range}
|
|
97
|
+
onChange={handleChange}
|
|
98
|
+
/>
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
## 🎯 最佳实践
|
|
102
|
+
|
|
103
|
+
### 保持受控模式
|
|
104
|
+
|
|
105
|
+
始终使用受控模式(controlled mode),通过 `value` 和 `onChange` 管理状态,确保组件行为可预测:
|
|
106
|
+
|
|
107
|
+
```tsx
|
|
108
|
+
// ✅ 推荐:受控模式
|
|
109
|
+
const [value, setValue] = useState<DateRangeValue | []>([]);
|
|
110
|
+
<YkDateRangePicker value={value} onChange={setValue} />
|
|
111
|
+
|
|
112
|
+
// ❌ 避免:非受控模式可能导致状态不一致
|
|
113
|
+
<YkDateRangePicker defaultValue={initialValue} />
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### 合理使用 ref
|
|
117
|
+
|
|
118
|
+
ref 方法 `toggleFirstPreset()` 适用于特殊场景(如重置查询条件),日常使用中建议通过受控 props 控制组件:
|
|
119
|
+
|
|
120
|
+
```tsx
|
|
121
|
+
// 在重置按钮的回调中使用
|
|
122
|
+
const handleReset = () => {
|
|
123
|
+
setValue([]); // 清空值
|
|
124
|
+
pickerRef.current?.toggleFirstPreset(); // 重置到默认预设
|
|
125
|
+
};
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
### 处理空值
|
|
129
|
+
|
|
130
|
+
组件支持空数组 `[]` 作为值,表示未选择任何时间范围。清除后建议重置为 `[]` 而非 `undefined`:
|
|
131
|
+
|
|
132
|
+
```tsx
|
|
133
|
+
onChange={(val) => {
|
|
134
|
+
// ✅ 推荐:始终转换为数组
|
|
135
|
+
setValue(val || []);
|
|
136
|
+
}}
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## ⚠️ 注意事项
|
|
140
|
+
|
|
141
|
+
1. **样式引入**:业务侧使用 `@yoka-ui/ui` 时,需确保引入 Ant Design 全局样式和组件库样式:
|
|
142
|
+
```tsx
|
|
143
|
+
import 'antd/dist/reset.css';
|
|
144
|
+
import '@yoka-ui/ui/dist/index.less';
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
2. **版本要求**:需要 React 18+ 和 Ant Design 5+,与库的版本保持一致。
|
|
148
|
+
|
|
149
|
+
3. **日期限制**:组件默认限制只能选择近 7 天(含今天)的时间范围,如需调整需修改源码中的禁用逻辑。
|
|
150
|
+
|
|
151
|
+
4. **预设范围**:预设项的时长计算基于当前时间,每次展开时会重新计算。
|
|
152
|
+
|
|
153
|
+
5. **性能优化**:组件内部使用 `useMemo` 和 `useCallback` 优化预设计算和事件处理,避免不必要的重渲染。
|
|
154
|
+
|
|
155
|
+
## 🎨 预设项说明
|
|
156
|
+
|
|
157
|
+
| 预设标签 | 时间范围 | 使用场景 |
|
|
158
|
+
| --------- | --------- | --------- |
|
|
159
|
+
| 近5分钟 | 当前时间 - 5分钟 ~ 现在 | 实时监控、日志追踪 |
|
|
160
|
+
| 近15分钟 | 当前时间 - 15分钟 ~ 现在 | 短期数据分析 |
|
|
161
|
+
| 近30分钟 | 当前时间 - 30分钟 ~ 现在 | 中等时长监控 |
|
|
162
|
+
| 近1小时 | 当前时间 - 1小时 ~ 现在 | 小时级数据分析 |
|
|
163
|
+
| 近6小时 | 当前时间 - 6小时 ~ 现在 | 半日数据查看 |
|
|
164
|
+
| 近12小时 | 当前时间 - 12小时 ~ 现在 | 半日对比分析 |
|
|
165
|
+
| 近24小时 | 当前时间 - 24小时 ~ 现在 | 日级数据查询 |
|
|
166
|
+
| 近7天 | 当前时间 - 7天 ~ 现在 | 周级趋势分析 |
|
|
167
|
+
|
|
168
|
+
## 🔍 交互行为
|
|
169
|
+
|
|
170
|
+
### 预设选择流程
|
|
171
|
+
|
|
172
|
+
1. 用户点击紧凑模式的标签区域
|
|
173
|
+
2. 下拉面板展开,显示 8 个预设选项和完整的 RangePicker
|
|
174
|
+
3. 用户点击任意预设项,组件自动计算对应时间范围
|
|
175
|
+
4. 选择后立即触发 `onChange` 回调,并关闭面板
|
|
176
|
+
5. 紧凑模式标签更新为「预设名称 + 格式化时间」或「起止时间」
|
|
177
|
+
|
|
178
|
+
### 自定义时间选择
|
|
179
|
+
|
|
180
|
+
1. 用户在展开的面板中点击 RangePicker
|
|
181
|
+
2. 选择自定义开始和结束时间
|
|
182
|
+
3. 点击确定后触发 `onChange` 回调
|
|
183
|
+
4. 紧凑模式标签显示为「开始时间 ~ 结束时间」格式
|
|
184
|
+
|
|
185
|
+
### 清除行为
|
|
186
|
+
|
|
187
|
+
- 当设置 `allowClear=true` 时,标签右侧显示清除图标
|
|
188
|
+
- 点击清除图标后,值重置为 `[]`,预设状态被清除
|
|
189
|
+
- 触发 `onChange` 回调,参数为 `[]`
|
|
190
|
+
|
|
191
|
+
## 📚 相关组件
|
|
192
|
+
|
|
193
|
+
- [DatePicker](https://ant.design/components/date-picker) - Ant Design 基础日期选择器
|
|
194
|
+
- [RangePicker](https://ant.design/components/date-picker#rangepicker) - Ant Design 日期范围选择器
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
* pickerRef.current?.toggleFirstPreset();
|
|
28
28
|
* ```
|
|
29
29
|
*/
|
|
30
|
-
import { Dayjs } from 'dayjs';
|
|
30
|
+
import { type Dayjs } from 'dayjs';
|
|
31
31
|
import React from 'react';
|
|
32
32
|
/** 时间范围值 */
|
|
33
33
|
export type DateRangeValue = [Dayjs, Dayjs];
|
|
@@ -47,6 +47,14 @@ export interface YkDateRangePickerProps {
|
|
|
47
47
|
* 默认:「请选择时间范围」
|
|
48
48
|
*/
|
|
49
49
|
placeholder?: string;
|
|
50
|
+
/** 是否禁用选择器 */
|
|
51
|
+
disabled?: boolean;
|
|
52
|
+
/** 校验状态 */
|
|
53
|
+
status?: '' | 'error' | 'warning';
|
|
54
|
+
/** 自定义类名 */
|
|
55
|
+
className?: string;
|
|
56
|
+
/** 自定义内联样式 */
|
|
57
|
+
style?: React.CSSProperties;
|
|
50
58
|
}
|
|
51
59
|
/** 通过 ref 对父组件暴露的方法 */
|
|
52
60
|
export interface YkDateRangePickerRef {
|
|
@@ -39,15 +39,23 @@ var import_react = __toESM(require("react"));
|
|
|
39
39
|
var import_index_module = __toESM(require("./index.module.less"));
|
|
40
40
|
var { RangePicker } = import_antd.DatePicker;
|
|
41
41
|
function pastTime(n, unit) {
|
|
42
|
-
const fmt = "YYYY-MM-DD HH:mm:
|
|
42
|
+
const fmt = "YYYY-MM-DD HH:mm:ss";
|
|
43
43
|
return [(0, import_dayjs.default)((0, import_dayjs.default)().subtract(n, unit).format(fmt)), (0, import_dayjs.default)((0, import_dayjs.default)().format(fmt))];
|
|
44
44
|
}
|
|
45
45
|
var DISPLAY_FORMAT = "YYYY-MM-DD HH:mm:ss";
|
|
46
|
-
function
|
|
46
|
+
function formatToKey(d) {
|
|
47
47
|
return (0, import_dayjs.default)(d).format(DISPLAY_FORMAT);
|
|
48
48
|
}
|
|
49
|
-
function
|
|
50
|
-
|
|
49
|
+
function isValueEqual(a, b) {
|
|
50
|
+
if (a === b)
|
|
51
|
+
return true;
|
|
52
|
+
if (!a || !b)
|
|
53
|
+
return a === b;
|
|
54
|
+
if (a.length !== b.length)
|
|
55
|
+
return false;
|
|
56
|
+
if (a.length < 2 || b.length < 2)
|
|
57
|
+
return a.length === b.length;
|
|
58
|
+
return formatToKey(a[0]) === formatToKey(b[0]) && formatToKey(a[1]) === formatToKey(b[1]);
|
|
51
59
|
}
|
|
52
60
|
var RANGE_PRESETS = [
|
|
53
61
|
{
|
|
@@ -77,8 +85,8 @@ var RANGE_PRESETS = [
|
|
|
77
85
|
{
|
|
78
86
|
label: "今天",
|
|
79
87
|
value: () => [
|
|
80
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().startOf("day").format("YYYY-MM-DD HH:mm:
|
|
81
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().endOf("day").format("YYYY-MM-DD HH:mm:
|
|
88
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().startOf("day").format("YYYY-MM-DD HH:mm:ss")),
|
|
89
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().endOf("day").format("YYYY-MM-DD HH:mm:ss"))
|
|
82
90
|
],
|
|
83
91
|
// 紧凑模式只展示日期,如「03-25」
|
|
84
92
|
format: (v) => v[0].format("MM-DD")
|
|
@@ -86,31 +94,49 @@ var RANGE_PRESETS = [
|
|
|
86
94
|
{
|
|
87
95
|
label: "昨天",
|
|
88
96
|
value: () => [
|
|
89
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(1, "day").startOf("day").format("YYYY-MM-DD HH:mm:
|
|
90
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(1, "day").endOf("day").format("YYYY-MM-DD HH:mm:
|
|
97
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(1, "day").startOf("day").format("YYYY-MM-DD HH:mm:ss")),
|
|
98
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(1, "day").endOf("day").format("YYYY-MM-DD HH:mm:ss"))
|
|
91
99
|
],
|
|
92
100
|
format: (v) => v[0].format("MM-DD")
|
|
93
101
|
},
|
|
94
102
|
{
|
|
95
103
|
label: "近7天",
|
|
96
104
|
value: () => [
|
|
97
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(6, "day").startOf("day").format("YYYY-MM-DD HH:mm:
|
|
98
|
-
(0, import_dayjs.default)((0, import_dayjs.default)().endOf("day").format("YYYY-MM-DD HH:mm:
|
|
105
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().subtract(6, "day").startOf("day").format("YYYY-MM-DD HH:mm:ss")),
|
|
106
|
+
(0, import_dayjs.default)((0, import_dayjs.default)().endOf("day").format("YYYY-MM-DD HH:mm:ss"))
|
|
99
107
|
],
|
|
100
108
|
// 紧凑模式展示完整日期区间,如「2024-03-19 ~ 2024-03-25」
|
|
101
109
|
format: (v) => [v[0].format("YYYY-MM-DD"), v[1].format("YYYY-MM-DD")]
|
|
102
110
|
}
|
|
103
111
|
];
|
|
104
|
-
var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2({
|
|
112
|
+
var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2({
|
|
113
|
+
value,
|
|
114
|
+
onChange,
|
|
115
|
+
allowClear = false,
|
|
116
|
+
placeholder = "请选择时间范围",
|
|
117
|
+
disabled = false,
|
|
118
|
+
status = "",
|
|
119
|
+
className,
|
|
120
|
+
style
|
|
121
|
+
}, ref) {
|
|
105
122
|
const [showFullPicker, setShowFullPicker] = (0, import_react.useState)(false);
|
|
106
123
|
const [open, setOpen] = (0, import_react.useState)(false);
|
|
107
124
|
const [activePreset, setActivePreset] = (0, import_react.useState)(void 0);
|
|
108
125
|
const [presetFormatText, setPresetFormatText] = (0, import_react.useState)(void 0);
|
|
109
126
|
const selfChangeRef = (0, import_react.useRef)(false);
|
|
110
127
|
const isPresetClickRef = (0, import_react.useRef)(false);
|
|
128
|
+
const collapseTimerRef = (0, import_react.useRef)();
|
|
111
129
|
const wrapperRef = (0, import_react.useRef)(null);
|
|
112
130
|
const pickerRef = (0, import_react.useRef)(null);
|
|
113
131
|
const prevValueRef = (0, import_react.useRef)(value);
|
|
132
|
+
const scheduleCollapse = (0, import_react.useCallback)((delay) => {
|
|
133
|
+
clearTimeout(collapseTimerRef.current);
|
|
134
|
+
collapseTimerRef.current = setTimeout(() => {
|
|
135
|
+
setOpen(false);
|
|
136
|
+
setShowFullPicker(false);
|
|
137
|
+
}, delay ?? 0);
|
|
138
|
+
}, []);
|
|
139
|
+
(0, import_react.useEffect)(() => () => clearTimeout(collapseTimerRef.current), []);
|
|
114
140
|
(0, import_react.useEffect)(() => {
|
|
115
141
|
if (value && value.length === 2)
|
|
116
142
|
return;
|
|
@@ -123,7 +149,7 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
123
149
|
onChange == null ? void 0 : onChange(currentValue);
|
|
124
150
|
}, []);
|
|
125
151
|
(0, import_react.useEffect)(() => {
|
|
126
|
-
if (prevValueRef.current
|
|
152
|
+
if (isValueEqual(prevValueRef.current, value))
|
|
127
153
|
return;
|
|
128
154
|
prevValueRef.current = value;
|
|
129
155
|
if (!selfChangeRef.current) {
|
|
@@ -135,16 +161,16 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
135
161
|
const showState = (0, import_react.useMemo)(() => {
|
|
136
162
|
if (!value || value.length < 2)
|
|
137
163
|
return [];
|
|
138
|
-
return [
|
|
164
|
+
return [formatToKey(value[0]), formatToKey(value[1])];
|
|
139
165
|
}, [value]);
|
|
140
166
|
const activePresetIndex = (0, import_react.useMemo)(() => {
|
|
141
167
|
if (!value || value.length < 2)
|
|
142
168
|
return -1;
|
|
143
169
|
const [v0, v1] = value;
|
|
144
|
-
const valKeys = [
|
|
170
|
+
const valKeys = [formatToKey(v0), formatToKey(v1)];
|
|
145
171
|
return RANGE_PRESETS.findIndex((preset) => {
|
|
146
172
|
const presetVal = preset.value();
|
|
147
|
-
const presetKeys = [
|
|
173
|
+
const presetKeys = [formatToKey(presetVal[0]), formatToKey(presetVal[1])];
|
|
148
174
|
return valKeys[0] === presetKeys[0] && valKeys[1] === presetKeys[1];
|
|
149
175
|
});
|
|
150
176
|
}, [value, open]);
|
|
@@ -163,10 +189,7 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
163
189
|
setPresetFormatText(formatText);
|
|
164
190
|
selfChangeRef.current = true;
|
|
165
191
|
onChange == null ? void 0 : onChange(currentValue);
|
|
166
|
-
|
|
167
|
-
setOpen(false);
|
|
168
|
-
setShowFullPicker(false);
|
|
169
|
-
}, 0);
|
|
192
|
+
scheduleCollapse();
|
|
170
193
|
},
|
|
171
194
|
[onChange]
|
|
172
195
|
);
|
|
@@ -180,15 +203,12 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
180
203
|
onChange == null ? void 0 : onChange(dates);
|
|
181
204
|
} else {
|
|
182
205
|
onChange == null ? void 0 : onChange(null);
|
|
183
|
-
|
|
184
|
-
setOpen(false);
|
|
185
|
-
setShowFullPicker(false);
|
|
186
|
-
}, 0);
|
|
206
|
+
scheduleCollapse();
|
|
187
207
|
}
|
|
188
208
|
},
|
|
189
209
|
[onChange]
|
|
190
210
|
);
|
|
191
|
-
const
|
|
211
|
+
const activateCompactTag = (0, import_react.useCallback)(() => {
|
|
192
212
|
setShowFullPicker(true);
|
|
193
213
|
setTimeout(() => {
|
|
194
214
|
var _a;
|
|
@@ -200,14 +220,15 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
200
220
|
}
|
|
201
221
|
}, 0);
|
|
202
222
|
}, []);
|
|
203
|
-
const handleOpenChange = (0, import_react.useCallback)(
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
}
|
|
209
|
-
}
|
|
210
|
-
|
|
223
|
+
const handleOpenChange = (0, import_react.useCallback)(
|
|
224
|
+
(isOpen) => {
|
|
225
|
+
setOpen(isOpen);
|
|
226
|
+
if (!isOpen) {
|
|
227
|
+
scheduleCollapse(150);
|
|
228
|
+
}
|
|
229
|
+
},
|
|
230
|
+
[scheduleCollapse]
|
|
231
|
+
);
|
|
211
232
|
const disabledDate = (0, import_react.useCallback)((current) => {
|
|
212
233
|
return current && (current > (0, import_dayjs.default)().endOf("day") || current < (0, import_dayjs.default)().subtract(6, "day").startOf("day"));
|
|
213
234
|
}, []);
|
|
@@ -224,9 +245,19 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
224
245
|
className: (0, import_classnames.default)(import_index_module.default.yokaPresetItem, {
|
|
225
246
|
[import_index_module.default.yokaPresetItemActive]: isActive
|
|
226
247
|
}),
|
|
248
|
+
role: "option",
|
|
249
|
+
tabIndex: 0,
|
|
250
|
+
"aria-selected": isActive,
|
|
227
251
|
onClick: (e) => {
|
|
228
252
|
e.stopPropagation();
|
|
229
253
|
handlePresetClick(preset);
|
|
254
|
+
},
|
|
255
|
+
onKeyDown: (e) => {
|
|
256
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
257
|
+
e.preventDefault();
|
|
258
|
+
e.stopPropagation();
|
|
259
|
+
handlePresetClick(preset);
|
|
260
|
+
}
|
|
230
261
|
}
|
|
231
262
|
},
|
|
232
263
|
preset.label
|
|
@@ -245,37 +276,72 @@ var YkDateRangePicker = (0, import_react.forwardRef)(function YkDateRangePicker2
|
|
|
245
276
|
[handlePresetClick]
|
|
246
277
|
);
|
|
247
278
|
const pickerVisible = showFullPicker || open;
|
|
248
|
-
return /* @__PURE__ */ import_react.default.createElement(
|
|
249
|
-
|
|
250
|
-
/* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPresetLabel }, activePreset.label), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPresetFormat }, "(", presetFormatText, ")"))
|
|
251
|
-
) : showState.length === 2 ? (
|
|
252
|
-
// 自定义时间:「起始时间 ~ 结束时间」
|
|
253
|
-
/* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagDatetime }, showState[0]), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagSeparator }, "~"), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagDatetime }, showState[1]))
|
|
254
|
-
) : (
|
|
255
|
-
// 无值/清空:placeholder 居中显示
|
|
256
|
-
/* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPlaceholder }, placeholder)
|
|
257
|
-
))), /* @__PURE__ */ import_react.default.createElement("div", { className: import_index_module.default.yokaPickerWrapper, style: { display: pickerVisible ? "flex" : "none" } }, /* @__PURE__ */ import_react.default.createElement("i", { className: (0, import_classnames.default)("iconfont icon-riqi1", import_index_module.default.yokaPickerWrapperIcon) }), /* @__PURE__ */ import_react.default.createElement(
|
|
258
|
-
RangePicker,
|
|
279
|
+
return /* @__PURE__ */ import_react.default.createElement(
|
|
280
|
+
"div",
|
|
259
281
|
{
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
282
|
+
className: (0, import_classnames.default)(import_index_module.default.YkDateRangePicker, className, {
|
|
283
|
+
[import_index_module.default.yokaDisabled]: disabled
|
|
284
|
+
}),
|
|
285
|
+
ref: wrapperRef
|
|
286
|
+
},
|
|
287
|
+
!showFullPicker && /* @__PURE__ */ import_react.default.createElement(
|
|
288
|
+
"span",
|
|
289
|
+
{
|
|
290
|
+
className: import_index_module.default.yokaCompactTag,
|
|
291
|
+
style,
|
|
292
|
+
role: "button",
|
|
293
|
+
tabIndex: disabled ? -1 : 0,
|
|
294
|
+
"aria-haspopup": "dialog",
|
|
295
|
+
"aria-expanded": open,
|
|
296
|
+
"aria-disabled": disabled,
|
|
297
|
+
onClick: disabled ? void 0 : activateCompactTag,
|
|
298
|
+
onKeyDown: (e) => {
|
|
299
|
+
if (disabled)
|
|
300
|
+
return;
|
|
301
|
+
if (e.key === "Enter" || e.key === " ") {
|
|
302
|
+
e.preventDefault();
|
|
303
|
+
activateCompactTag();
|
|
304
|
+
}
|
|
305
|
+
}
|
|
272
306
|
},
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
|
|
307
|
+
/* @__PURE__ */ import_react.default.createElement("i", { className: (0, import_classnames.default)("iconfont icon-riqi1", import_index_module.default.yokaCompactTagIcon) }),
|
|
308
|
+
/* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagContent }, activePreset ? (
|
|
309
|
+
// 已选预设:「预设名称 (格式化时间)」
|
|
310
|
+
/* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPresetLabel }, activePreset.label), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPresetFormat }, "(", presetFormatText, ")"))
|
|
311
|
+
) : showState.length === 2 ? (
|
|
312
|
+
// 自定义时间:「起始时间 ~ 结束时间」
|
|
313
|
+
/* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagDatetime }, showState[0]), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagSeparator }, "~"), /* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagDatetime }, showState[1]))
|
|
314
|
+
) : (
|
|
315
|
+
// 无值/清空:placeholder 居中显示
|
|
316
|
+
/* @__PURE__ */ import_react.default.createElement("span", { className: import_index_module.default.yokaCompactTagPlaceholder }, placeholder)
|
|
317
|
+
))
|
|
318
|
+
),
|
|
319
|
+
/* @__PURE__ */ import_react.default.createElement("div", { className: import_index_module.default.yokaPickerWrapper, style: { display: pickerVisible ? "flex" : "none" } }, /* @__PURE__ */ import_react.default.createElement("i", { className: (0, import_classnames.default)("iconfont icon-riqi1", import_index_module.default.yokaPickerWrapperIcon) }), /* @__PURE__ */ import_react.default.createElement(
|
|
320
|
+
RangePicker,
|
|
321
|
+
{
|
|
322
|
+
ref: pickerRef,
|
|
323
|
+
value: value && value.length === 2 ? value : void 0,
|
|
324
|
+
onChange: handlePickerChange,
|
|
325
|
+
open,
|
|
326
|
+
onOpenChange: handleOpenChange,
|
|
327
|
+
variant: "borderless",
|
|
328
|
+
allowClear,
|
|
329
|
+
disabled,
|
|
330
|
+
status: status || void 0,
|
|
331
|
+
suffixIcon: null,
|
|
332
|
+
showTime: {
|
|
333
|
+
format: "HH:mm:ss",
|
|
334
|
+
hideDisabledOptions: true,
|
|
335
|
+
defaultValue: [(0, import_dayjs.default)("00:00", "HH:mm"), (0, import_dayjs.default)("23:59", "HH:mm")]
|
|
336
|
+
},
|
|
337
|
+
format: "YYYY-MM-DD HH:mm:ss",
|
|
338
|
+
disabledDate,
|
|
339
|
+
presets: presetsNode,
|
|
340
|
+
getPopupContainer,
|
|
341
|
+
classNames: { popup: { root: "yoka-daterangepicker-popup" } }
|
|
342
|
+
}
|
|
343
|
+
))
|
|
344
|
+
);
|
|
279
345
|
});
|
|
280
346
|
YkDateRangePicker.displayName = "YkDateRangePicker";
|
|
281
347
|
var YkDateRangePicker_default = YkDateRangePicker;
|