├── .babelrc
├── .editorconfig
├── .fecsignore
├── .fecsrc
├── .gitignore
├── .jest.js
├── .npmrc
├── .prettierrc
├── .stylelintrc
├── CHANGELOG.md
├── LICENSE
├── README-zh_CN.md
├── README.md
├── docs
├── i18n.md
├── introduce.md
├── quickstart.md
└── theme.md
├── issue-helper
├── assets
│ └── images
│ │ └── logo.png
├── components
│ ├── app.js
│ ├── createpreview.js
│ ├── header.js
│ ├── intro.js
│ ├── previewmodal.js
│ ├── report.js
│ └── repromodal.js
├── helpers
│ ├── index.js
│ └── query.js
├── i18n
│ ├── index.js
│ └── locales
│ │ ├── en.js
│ │ ├── en
│ │ ├── intro.md
│ │ ├── introModal.md
│ │ ├── motivationHelp.md
│ │ ├── proposalHelp.md
│ │ ├── reproHelp.md
│ │ ├── reproModal.md
│ │ └── stepsHelp.md
│ │ ├── zh.js
│ │ └── zh
│ │ ├── intro.md
│ │ ├── introModal.md
│ │ ├── motivationHelp.md
│ │ ├── proposalHelp.md
│ │ ├── reproHelp.md
│ │ ├── reproModal.md
│ │ └── stepsHelp.md
├── index.js
├── servies
│ └── request.js
└── style
│ └── index.less
├── karma.conf.js
├── package.json
├── postcss.config.js
├── scripts
├── build.sh
├── check.js
├── config.js
├── deploy.js
├── doc.js
├── issue.js
├── lib
│ ├── babel.js
│ ├── copy-file.js
│ ├── getChangeLog.js
│ ├── rollup.js
│ └── utils.js
├── preview.js
├── release.js
├── webpack.base.conf.js
├── webpack.dev.conf.js
├── webpack.doc.conf.js
└── webpack.issue.conf.js
├── site
├── index.html
├── preview
│ ├── index.js
│ └── style
│ │ └── preview.less
├── src
│ ├── containers
│ │ ├── Content.js
│ │ ├── Header.js
│ │ └── Navigator.js
│ ├── index.js
│ ├── lib
│ │ ├── emojify.js
│ │ ├── marked.js
│ │ └── routes.js
│ └── style
│ │ └── index.less
└── theme
│ └── static
│ ├── colors.less
│ ├── common.less
│ ├── demo.less
│ ├── docsearch.less
│ ├── footer.less
│ ├── header.less
│ ├── highlight.less
│ ├── home.less
│ ├── icons.less
│ ├── img
│ └── logo.svg
│ ├── index.less
│ ├── markdown.less
│ ├── mock-browser.less
│ ├── motion.less
│ ├── new-version-info-modal.less
│ ├── not-found.less
│ ├── nprogress.less
│ ├── page-nav.less
│ ├── preview-img.less
│ ├── resource.less
│ ├── responsive.less
│ ├── theme.less
│ └── toc.less
├── src
├── affix
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── offsetTop.md
│ │ └── target.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── alert
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── banner.md
│ │ ├── basic.md
│ │ ├── closable.md
│ │ ├── close-text.md
│ │ ├── custom-icon.md
│ │ ├── description.md
│ │ ├── head.md
│ │ ├── icon.md
│ │ ├── index.less
│ │ ├── index.ts
│ │ ├── smooth-closed.md
│ │ └── style.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── anchor
│ ├── Anchor.ts
│ ├── Link.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── change.md
│ │ ├── click.md
│ │ ├── custom.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── static.md
│ │ └── targetOffset.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── auto-complete
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── backfill.md
│ │ ├── basic.md
│ │ ├── custom.md
│ │ ├── focus.md
│ │ ├── group.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── lookup.md
│ │ ├── no-upcase.md
│ │ ├── option.md
│ │ └── uncertain-lookup.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── avatar
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── badge.md
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── dynamic.md
│ │ ├── index.js
│ │ └── type.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── back-top
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ └── self.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── responsive.less
├── badge
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── colors.md
│ │ ├── customTitle.md
│ │ ├── desc.md
│ │ ├── dot.md
│ │ ├── dynamic.md
│ │ ├── independent.md
│ │ ├── index.ts
│ │ ├── link.md
│ │ ├── overflow.md
│ │ ├── status.md
│ │ └── style.css
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── base
│ ├── docs
│ │ ├── basic.md
│ │ └── index.ts
│ └── index.ts
├── breadcrumb
│ ├── Item.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── separator.md
│ │ ├── withIcon.md
│ │ └── withroutes.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── button
│ ├── Button.ts
│ ├── ButtonGroup.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── block.md
│ │ ├── combo.md
│ │ ├── desc.md
│ │ ├── disable.md
│ │ ├── ghost.md
│ │ ├── group.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ ├── loading.md
│ │ ├── size.md
│ │ └── style.less
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ ├── index.less
│ │ └── mixin.less
├── calendar
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── customHeader.md
│ │ ├── customRender.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── select.md
│ │ └── small.md
│ ├── index.ts
│ ├── interface.ts
│ ├── locale
│ │ ├── ar_EG.js
│ │ ├── bg_BG.js
│ │ ├── ca_ES.js
│ │ ├── cs_CZ.js
│ │ ├── da_DK.js
│ │ ├── de_DE.js
│ │ ├── el_GR.js
│ │ ├── en_GB.js
│ │ ├── en_US.js
│ │ ├── es_ES.js
│ │ ├── et_EE.js
│ │ ├── fa_IR.js
│ │ ├── fi_FI.js
│ │ ├── fr_BE.js
│ │ ├── fr_FR.js
│ │ ├── he_IL.js
│ │ ├── hi_IN.js
│ │ ├── hr_HR.js
│ │ ├── hu_HU.js
│ │ ├── id_ID.js
│ │ ├── is_IS.js
│ │ ├── it_IT.js
│ │ ├── ja_JP.js
│ │ ├── kn_IN.js
│ │ ├── ko_KR.js
│ │ ├── ku_IQ.js
│ │ ├── lv_LV.js
│ │ ├── mn_MN.js
│ │ ├── nb_NO.js
│ │ ├── nl_BE.js
│ │ ├── nl_NL.js
│ │ ├── pl_PL.js
│ │ ├── pt_BR.js
│ │ ├── pt_PT.js
│ │ ├── ru_RU.js
│ │ ├── sk_SK.js
│ │ ├── sl_SI.js
│ │ ├── sr_RS.js
│ │ ├── sv_SE.js
│ │ ├── th_TH.js
│ │ ├── tr_TR.js
│ │ ├── uk_UA.js
│ │ ├── vi_VN.js
│ │ ├── zh_CN.js
│ │ └── zh_TW.js
│ ├── src
│ │ ├── Calendar.ts
│ │ ├── FullCalendar.ts
│ │ ├── MonthCalendar.ts
│ │ ├── RangeCalendar.ts
│ │ ├── calendar
│ │ │ ├── CalendarFooter.ts
│ │ │ ├── CalendarHeader.ts
│ │ │ ├── OkButton.ts
│ │ │ ├── TimepickerButton.ts
│ │ │ ├── TodayButton.ts
│ │ │ └── interface.ts
│ │ ├── date
│ │ │ ├── DateInput.ts
│ │ │ ├── DateTable.ts
│ │ │ └── interface.ts
│ │ ├── decade
│ │ │ ├── DecadePanel.ts
│ │ │ ├── DecadeTable.ts
│ │ │ └── interface.ts
│ │ ├── fullCalendarHeader.ts
│ │ ├── interface.ts
│ │ ├── locale
│ │ │ ├── ar_EG.js
│ │ │ ├── bg_BG.js
│ │ │ ├── ca_ES.js
│ │ │ ├── cs_CZ.js
│ │ │ ├── da_DK.js
│ │ │ ├── de_DE.js
│ │ │ ├── el_GR.js
│ │ │ ├── en_GB.js
│ │ │ ├── en_US.js
│ │ │ ├── es_ES.js
│ │ │ ├── et_EE.js
│ │ │ ├── fa_IR.js
│ │ │ ├── fi_FI.js
│ │ │ ├── fr_BE.js
│ │ │ ├── fr_FR.js
│ │ │ ├── he_IL.js
│ │ │ ├── hi_IN.js
│ │ │ ├── hr_HR.js
│ │ │ ├── hu_HU.js
│ │ │ ├── id_ID.js
│ │ │ ├── is_IS.js
│ │ │ ├── it_IT.js
│ │ │ ├── ja_JP.js
│ │ │ ├── kn_IN.js
│ │ │ ├── ko_KR.js
│ │ │ ├── ku_IQ.js
│ │ │ ├── lv_LV.js
│ │ │ ├── mm_MM.js
│ │ │ ├── mn_MN.js
│ │ │ ├── ms_MY.js
│ │ │ ├── nb_NO.js
│ │ │ ├── nl_BE.js
│ │ │ ├── nl_NL.js
│ │ │ ├── pl_PL.js
│ │ │ ├── pt_BR.js
│ │ │ ├── pt_PT.js
│ │ │ ├── ro_RO.js
│ │ │ ├── ru_RU.js
│ │ │ ├── sk_SK.js
│ │ │ ├── sl_SI.js
│ │ │ ├── sr_RS.js
│ │ │ ├── sv_SE.js
│ │ │ ├── th_TH.js
│ │ │ ├── tr_TR.js
│ │ │ ├── ug_CN.js
│ │ │ ├── uk_UA.js
│ │ │ ├── vi_VN.js
│ │ │ ├── zh_CN.js
│ │ │ └── zh_TW.js
│ │ ├── month
│ │ │ ├── MonthPanel.ts
│ │ │ ├── MonthTable.ts
│ │ │ └── interface.ts
│ │ ├── placements.ts
│ │ ├── range
│ │ │ ├── RangePanel.ts
│ │ │ └── interface.ts
│ │ ├── util
│ │ │ └── index.ts
│ │ └── year
│ │ │ ├── YearPanel.ts
│ │ │ ├── YearTable.ts
│ │ │ └── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── card
│ ├── Card.ts
│ ├── Grid.ts
│ ├── LoadingBlock.ts
│ ├── Meta.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── actions.md
│ │ ├── basic.md
│ │ ├── column.md
│ │ ├── desc.md
│ │ ├── grid.md
│ │ ├── index.ts
│ │ ├── meta.md
│ │ ├── nest.md
│ │ ├── noborder.md
│ │ ├── preload.md
│ │ ├── simple.md
│ │ └── tabs.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── size.less
├── carousel
│ ├── README.md
│ ├── Track.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── autoplay.md
│ │ ├── basic.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── position.md
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── cascader
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── change-on-select.md
│ │ ├── custom-render.md
│ │ ├── custom-trigger.md
│ │ ├── default-value.md
│ │ ├── disabled.md
│ │ ├── field-name.md
│ │ ├── head.md
│ │ ├── hover.md
│ │ ├── index.ts
│ │ ├── loaddata.md
│ │ ├── search.md
│ │ ├── size.md
│ │ └── style
│ │ │ └── index.less
│ ├── index.ts
│ ├── interface.ts
│ ├── src
│ │ ├── Cascader.ts
│ │ ├── Menus.ts
│ │ ├── arraytreefilter.ts
│ │ └── placements.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── checkbox
│ ├── Checkbox.ts
│ ├── Group.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── checkall.md
│ │ ├── controller.md
│ │ ├── desc.md
│ │ ├── disabled.md
│ │ ├── grid.md
│ │ ├── group.md
│ │ └── index.ts
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── col
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ └── index.ts
│ ├── index.ts
│ └── style
│ │ └── index.ts
├── collapse
│ ├── Collapse.ts
│ ├── Panel.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── accordion.md
│ │ ├── arrow.md
│ │ ├── basic.md
│ │ ├── custom.md
│ │ ├── extra.md
│ │ ├── head.md
│ │ ├── index.js
│ │ ├── nest.md
│ │ └── simple.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ ├── index.less
│ │ └── index.ts
├── comment
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── list.md
│ │ ├── nested.md
│ │ └── reply.md
│ ├── index.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── core
│ ├── constants.js
│ ├── styles
│ │ ├── color
│ │ │ ├── bezierEasing.less
│ │ │ ├── colorPalette.less
│ │ │ ├── colors.less
│ │ │ └── tinyColor.less
│ │ ├── core
│ │ │ ├── base.less
│ │ │ ├── iconfont.less
│ │ │ ├── index.less
│ │ │ ├── motion.less
│ │ │ └── motion
│ │ │ │ ├── fade.less
│ │ │ │ ├── move.less
│ │ │ │ ├── other.less
│ │ │ │ ├── slide.less
│ │ │ │ ├── swing.less
│ │ │ │ └── zoom.less
│ │ ├── index.js
│ │ ├── index.less
│ │ ├── mixins
│ │ │ ├── clearfix.less
│ │ │ ├── compatibility.less
│ │ │ ├── iconfont.less
│ │ │ ├── index.less
│ │ │ ├── motion.less
│ │ │ ├── reset.less
│ │ │ └── size.less
│ │ ├── themes
│ │ │ ├── default.deperated.less
│ │ │ └── default.less
│ │ ├── v2-compatible-reset.js
│ │ └── v2-compatible-reset.less
│ ├── trigger
│ │ ├── index.ts
│ │ ├── popup.ts
│ │ ├── popupInner.ts
│ │ ├── style
│ │ │ ├── index.js
│ │ │ └── index.less
│ │ └── util.ts
│ └── util
│ │ ├── animate.ts
│ │ ├── css-animation
│ │ ├── Event.ts
│ │ └── index.ts
│ │ ├── dom.ts
│ │ ├── getRequestAnimationFrame.ts
│ │ ├── index.ts
│ │ ├── inherits.js
│ │ ├── keyCode.ts
│ │ ├── openAnimation.ts
│ │ ├── renderEmpty.ts
│ │ ├── responsiveObserve.ts
│ │ └── wave.ts
├── date-picker
│ ├── README.md
│ ├── RangePicker.ts
│ ├── WeekPicker.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── createPicker.ts
│ ├── docs
│ │ ├── basic.md
│ │ ├── controlled.md
│ │ ├── customcell.md
│ │ ├── customdisabled.md
│ │ ├── customrange.md
│ │ ├── desc.md
│ │ ├── disabled.md
│ │ ├── footer.md
│ │ ├── format.md
│ │ ├── index.ts
│ │ ├── inputReadOnly.md
│ │ ├── range.md
│ │ ├── selectInRange.md
│ │ ├── size.md
│ │ └── time.md
│ ├── example.json
│ ├── index.ts
│ ├── interface.ts
│ ├── locale
│ │ ├── ar_EG.ts
│ │ ├── bg_BG.ts
│ │ ├── ca_ES.ts
│ │ ├── cs_CZ.ts
│ │ ├── da_DK.ts
│ │ ├── de_DE.ts
│ │ ├── el_GR.ts
│ │ ├── en_GB.ts
│ │ ├── en_US.ts
│ │ ├── es_ES.ts
│ │ ├── et_EE.ts
│ │ ├── fa_IR.ts
│ │ ├── fi_FI.ts
│ │ ├── fr_BE.ts
│ │ ├── fr_FR.ts
│ │ ├── he_IL.ts
│ │ ├── hi_IN.ts
│ │ ├── hr_HR.ts
│ │ ├── hu_HU.ts
│ │ ├── id_ID.ts
│ │ ├── is_IS.ts
│ │ ├── it_IT.ts
│ │ ├── ja_JP.ts
│ │ ├── kn_IN.ts
│ │ ├── ko_KR.ts
│ │ ├── ku_IQ.ts
│ │ ├── lv_LV.ts
│ │ ├── mn_MN.ts
│ │ ├── nb_NO.ts
│ │ ├── nl_BE.ts
│ │ ├── nl_NL.ts
│ │ ├── pl_PL.ts
│ │ ├── pt_BR.ts
│ │ ├── pt_PT.ts
│ │ ├── ru_RU.ts
│ │ ├── sk_SK.ts
│ │ ├── sl_SI.ts
│ │ ├── sr_RS.ts
│ │ ├── sv_SE.ts
│ │ ├── th_TH.ts
│ │ ├── tr_TR.ts
│ │ ├── uk_UA.ts
│ │ ├── vi_VN.ts
│ │ ├── zh_CN.ts
│ │ └── zh_TW.ts
│ ├── style
│ │ ├── calendar.less
│ │ ├── decadePanel.less
│ │ ├── index.js
│ │ ├── index.less
│ │ ├── monthPanel.less
│ │ ├── monthPicker.less
│ │ ├── picker.less
│ │ ├── rangePicker.less
│ │ ├── timePicker.less
│ │ ├── weekPicker.less
│ │ └── yearPanel.less
│ └── wrapPicker.ts
├── descriptions
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── bordered.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── responsive.md
│ │ ├── size.md
│ │ ├── vertical.md
│ │ └── verticalBordered.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── divider
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── desc.md
│ │ ├── horizontal.md
│ │ ├── index.ts
│ │ ├── orientation.md
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── drawer
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic-right.md
│ │ ├── form-in-drawer.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── placement.md
│ │ └── user-profile.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── dropdown
│ ├── Dropdown.ts
│ ├── DropdownButton.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── button.md
│ │ ├── click.md
│ │ ├── context-menu.md
│ │ ├── event.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── item.md
│ │ ├── menue.md
│ │ ├── overlay-visible.md
│ │ └── placement.md
│ ├── index.ts
│ ├── interface.ts
│ ├── placements.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── empty
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── choose.md
│ │ ├── custom.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ └── nodescription.md
│ ├── empty.svg
│ ├── index.ts
│ ├── interface.ts
│ ├── simple.svg
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── form
│ ├── Form.ts
│ ├── FormItem.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── advanced-search.md
│ │ ├── basic.md
│ │ ├── coordinated.md
│ │ ├── custom-data.md
│ │ ├── custom-form.md
│ │ ├── custom-validate.md
│ │ ├── data.md
│ │ ├── date.md
│ │ ├── desc.md
│ │ ├── dynamic-form-item.md
│ │ ├── dynamic-rule.md
│ │ ├── index.js
│ │ ├── layout.md
│ │ ├── login.md
│ │ ├── modal.md
│ │ ├── register.md
│ │ └── validate.md
│ ├── index.ts
│ ├── interface.ts
│ ├── src
│ │ ├── createBaseForm.ts
│ │ ├── createDOMForm.ts
│ │ ├── createFieldsStore.ts
│ │ ├── createFormField.ts
│ │ └── utils.ts
│ └── style
│ │ ├── index.js
│ │ ├── index.less
│ │ └── mixin.less
├── grid
│ ├── Col.ts
│ ├── README.md
│ ├── Row.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── config.md
│ │ ├── demo.js
│ │ ├── demo.less
│ │ ├── desc.md
│ │ ├── flex-align.md
│ │ ├── flex-order.md
│ │ ├── flex.md
│ │ ├── gutter.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── offset.md
│ │ ├── playfround.md
│ │ ├── responsive-more.md
│ │ ├── responsive.md
│ │ └── sort.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ ├── index.less
│ │ └── mixin.less
├── icon
│ ├── Icon.ts
│ ├── Iconfont.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── colorIcon.md
│ │ ├── desc.md
│ │ ├── iconDisplay
│ │ │ ├── fields.js
│ │ │ ├── index.js
│ │ │ ├── index.less
│ │ │ ├── manifest.js
│ │ │ └── themeIcons.js
│ │ ├── index.ts
│ │ └── script.md
│ ├── generate.ts
│ ├── index.ts
│ ├── interface.ts
│ ├── style
│ │ ├── index.js
│ │ └── index.less
│ ├── twoTonePrimaryColor.ts
│ └── utils.ts
├── image
│ ├── Image.ts
│ ├── Preview.ts
│ ├── PreviewGroup.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── fallback.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── preview-group-visible.md
│ │ └── preview-group.md
│ ├── dom
│ │ └── css.js
│ ├── getFixScaleEleTransPosition.ts
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── index.ts
├── input-number
│ ├── InputHandler.ts
│ ├── README.md
│ ├── docs
│ │ ├── autoFocus.md
│ │ ├── basic.md
│ │ ├── disable.md
│ │ ├── format.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── number.md
│ │ └── size.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ ├── index.ts
│ │ ├── mixin.less
│ │ └── number.less
├── input
│ ├── Base.ts
│ ├── Group.ts
│ ├── Input.ts
│ ├── InputPassword.ts
│ ├── InputSearch.ts
│ ├── README.md
│ ├── Textarea.ts
│ ├── calculateNodeHeight.ts
│ ├── docs
│ │ ├── addon.md
│ │ ├── allow-clear.md
│ │ ├── autosize-textarea.md
│ │ ├── basic.md
│ │ ├── group.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── loading.md
│ │ ├── password.md
│ │ ├── presuffix.md
│ │ ├── search.md
│ │ ├── size.md
│ │ ├── textarea.md
│ │ └── tooltip.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ ├── index.less
│ │ ├── mixin.less
│ │ └── search-input.less
├── layout
│ ├── Layout.ts
│ ├── README.md
│ ├── Sider.ts
│ ├── docs
│ │ ├── basic.md
│ │ ├── custom-trigger.md
│ │ ├── desc.md
│ │ ├── fixed.md
│ │ ├── index.ts
│ │ ├── responsive.md
│ │ ├── side.md
│ │ ├── style.less
│ │ ├── target.md
│ │ ├── top-side-2.md
│ │ ├── top-side-3.md
│ │ └── top.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── light.less
├── list
│ ├── Item.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── grid.md
│ │ ├── index.ts
│ │ ├── loadmore.md
│ │ ├── resposive.md
│ │ ├── simple.md
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── bordered.less
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── responsive.less
├── locale-provider
│ ├── ar_EG.ts
│ ├── bg_BG.ts
│ ├── ca_ES.ts
│ ├── cs_CZ.ts
│ ├── da_DK.ts
│ ├── de_DE.ts
│ ├── default.ts
│ ├── docs
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ └── locale.md
│ ├── el_GR.ts
│ ├── en_GB.ts
│ ├── en_US.ts
│ ├── es_ES.ts
│ ├── et_EE.ts
│ ├── fa_IR.ts
│ ├── fi_FI.ts
│ ├── fr_BE.ts
│ ├── fr_FR.ts
│ ├── he_IL.ts
│ ├── hi_IN.ts
│ ├── hr_HR.ts
│ ├── hu_HU 2.ts
│ ├── hu_HU.ts
│ ├── id_ID.ts
│ ├── index.ts
│ ├── interface.ts
│ ├── is_IS.ts
│ ├── it_IT.ts
│ ├── ja_JP.ts
│ ├── kn_IN.ts
│ ├── ko_KR.ts
│ ├── ku_IQ.ts
│ ├── lv_LV.ts
│ ├── mn_MN.ts
│ ├── nb_NO.ts
│ ├── ne-NP.ts
│ ├── nl_BE.ts
│ ├── nl_NL.ts
│ ├── pl_PL.ts
│ ├── pt_BR.ts
│ ├── pt_PT.ts
│ ├── receiver.ts
│ ├── ru_RU.ts
│ ├── sk_SK.ts
│ ├── sl_SI.ts
│ ├── sr_RS.ts
│ ├── sv_SE.ts
│ ├── th_TH.ts
│ ├── tr_TR.ts
│ ├── uk_UA.ts
│ ├── vi_VN.ts
│ ├── zh_CN.ts
│ └── zh_TW.ts
├── mention
│ ├── Mention.ts
│ ├── Nav.ts
│ ├── PlaceHolder.ts
│ ├── README.md
│ ├── Suggestions.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── avatar.md
│ │ ├── basic.md
│ │ ├── custom.md
│ │ ├── form.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── loading.md
│ │ ├── multiLines.md
│ │ ├── multiple-trigger.md
│ │ ├── placement.md
│ │ └── readonly.md
│ ├── index.ts
│ ├── interface.ts
│ ├── style
│ │ ├── index.less
│ │ └── index.ts
│ └── utils
│ │ └── index.ts
├── menu
│ ├── Divider.ts
│ ├── Menu.ts
│ ├── MenuItem.ts
│ ├── MenuItemGroup.ts
│ ├── README.md
│ ├── SubMenu.ts
│ ├── docs
│ │ ├── collapsed.md
│ │ ├── current.md
│ │ ├── head.md
│ │ ├── horizontal.md
│ │ ├── index.ts
│ │ ├── inline.md
│ │ ├── overflowedIndicator.md
│ │ ├── switch.md
│ │ ├── theme.md
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── animate.less
│ │ ├── dark.less
│ │ ├── index.js
│ │ ├── index.less
│ │ └── vertical.less
├── message
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── duration.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── info.md
│ │ ├── loading.md
│ │ ├── other.md
│ │ └── thenable.md
│ ├── index.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── modal
│ ├── ActionButton.ts
│ ├── ConfirmDialog.ts
│ ├── Dialog.ts
│ ├── Modal.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── confirm.ts
│ ├── docs
│ │ ├── async.md
│ │ ├── basic.md
│ │ ├── button-props.md
│ │ ├── confirm-promise.md
│ │ ├── confirm.md
│ │ ├── footer.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── info.md
│ │ ├── locale.md
│ │ ├── manual.md
│ │ └── position.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── confirm.less
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── modal.less
├── notification
│ ├── Notice.ts
│ ├── Notification.ts
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── custom-close.md
│ │ ├── custom-icon.md
│ │ ├── custom-style.md
│ │ ├── duration.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── placement.md
│ │ ├── update.md
│ │ ├── with-btn.md
│ │ └── with-icon.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── page-header
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── actions.md
│ │ ├── basic.md
│ │ ├── breadcrumb.md
│ │ ├── content.md
│ │ ├── head.md
│ │ └── index.ts
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── pagination
│ ├── Options.ts
│ ├── Pager.ts
│ ├── Pagination.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── change.md
│ │ ├── controlled.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── itemRender.md
│ │ ├── many.md
│ │ ├── mini.md
│ │ ├── quickJumper.md
│ │ ├── simple.md
│ │ └── totalNumber.md
│ ├── index.ts
│ ├── interface.ts
│ ├── locale
│ │ ├── ar_EG.ts
│ │ ├── bg_BG.ts
│ │ ├── ca_ES.ts
│ │ ├── cs_CZ.ts
│ │ ├── da_DK.ts
│ │ ├── de_DE.ts
│ │ ├── el_GR.ts
│ │ ├── en_GB.ts
│ │ ├── en_US.ts
│ │ ├── es_ES.ts
│ │ ├── et_EE.ts
│ │ ├── fa_IR.ts
│ │ ├── fi_FI.ts
│ │ ├── fr_BE.ts
│ │ ├── fr_FR.ts
│ │ ├── he_IL.ts
│ │ ├── hi_IN.ts
│ │ ├── hr_HR.ts
│ │ ├── hu_HU.ts
│ │ ├── id_ID.ts
│ │ ├── is_IS.ts
│ │ ├── it_IT.ts
│ │ ├── ja_JP.ts
│ │ ├── kn_IN.ts
│ │ ├── ko_KR.ts
│ │ ├── ku_IQ.ts
│ │ ├── lv_LV.ts
│ │ ├── mm_MM.ts
│ │ ├── mn_MN.ts
│ │ ├── ms_MY.ts
│ │ ├── nb_NO.ts
│ │ ├── nl_BE.ts
│ │ ├── nl_NL.ts
│ │ ├── pl_PL.ts
│ │ ├── pt_BR.ts
│ │ ├── pt_PT.ts
│ │ ├── ro_RO.ts
│ │ ├── ru_RU.ts
│ │ ├── sk_SK.ts
│ │ ├── sl_SI.ts
│ │ ├── sr_RS.ts
│ │ ├── sv_SE.ts
│ │ ├── th_TH.ts
│ │ ├── tr_TR.ts
│ │ ├── ug_CN.ts
│ │ ├── uk_UA.ts
│ │ ├── vi_VN.ts
│ │ ├── zh_CN.ts
│ │ └── zh_TW.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── popconfirm
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── condition.md
│ │ ├── desc.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ └── position.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ └── index.ts
├── popover
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── arrow.md
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── hover.md
│ │ ├── index.ts
│ │ ├── position.md
│ │ ├── trigger.md
│ │ └── visible.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── progress
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── circle-dynamic.md
│ │ ├── circle-mini.md
│ │ ├── circle.md
│ │ ├── dashboard.md
│ │ ├── dynamic.md
│ │ ├── format.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── line-mini.md
│ │ ├── line.md
│ │ ├── linecap.md
│ │ └── segment.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── radio
│ ├── Group.ts
│ ├── README.md
│ ├── Radio.ts
│ ├── RadioButton.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── button-size.md
│ │ ├── button-solid.md
│ │ ├── button.md
│ │ ├── desc.md
│ │ ├── disabled.md
│ │ ├── group-options.md
│ │ ├── group-with-name.md
│ │ ├── group.md
│ │ ├── index.ts
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── rate
│ ├── README.md
│ ├── Star.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── character.md
│ │ ├── clear.md
│ │ ├── desc.md
│ │ ├── disabled.md
│ │ ├── half.md
│ │ ├── index.ts
│ │ └── text.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── result
│ ├── NoFound.ts
│ ├── README.md
│ ├── ServerError.ts
│ ├── Unauthorized.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── 403.md
│ │ ├── 404.md
│ │ ├── 500.md
│ │ ├── custom.md
│ │ ├── desc.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ ├── info.md
│ │ ├── success.md
│ │ └── warning.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── row
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ └── index.ts
│ ├── index.ts
│ └── style
│ │ └── index.ts
├── select
│ ├── DropdownMenu.ts
│ ├── Input.ts
│ ├── MultipleSelector.ts
│ ├── OptGroup.ts
│ ├── Option.ts
│ ├── README.md
│ ├── Select.ts
│ ├── Selector.ts
│ ├── SingleSelector.ts
│ ├── docs
│ │ ├── automatic-tokenization.md
│ │ ├── basic.md
│ │ ├── coordinate.md
│ │ ├── custom-dropdown-menu.md
│ │ ├── head.md
│ │ ├── hide-selected.md
│ │ ├── index.ts
│ │ ├── label-in-value.md
│ │ ├── multiple.md
│ │ ├── optgroup.md
│ │ ├── option-label-prop.md
│ │ ├── search-box.md
│ │ ├── search.md
│ │ ├── select-users.md
│ │ ├── size.md
│ │ ├── suffix.md
│ │ └── tags.md
│ ├── index.ts
│ ├── interface.ts
│ ├── style
│ │ ├── index.js
│ │ └── index.less
│ └── util.ts
├── skeleton
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── active.md
│ │ ├── basic.md
│ │ ├── children.md
│ │ ├── complex.md
│ │ ├── desc.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ └── list.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── slider
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── event.md
│ │ ├── icon.md
│ │ ├── index.js
│ │ ├── input.md
│ │ ├── mark.md
│ │ ├── placement.md
│ │ ├── reverse.md
│ │ ├── tip.md
│ │ ├── tooltip.md
│ │ └── vertical.md
│ ├── index.ts
│ ├── interface.ts
│ ├── src
│ │ ├── Handle.ts
│ │ ├── Marks.ts
│ │ └── Steps.ts
│ └── style
│ │ ├── index.js
│ │ └── index.less
├── space
│ ├── README.md
│ ├── docs
│ │ ├── align.md
│ │ ├── basic.md
│ │ ├── customize.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── size.md
│ │ ├── vertical.md
│ │ └── wrap.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── spin
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── delay.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── indicator.md
│ │ ├── inside.md
│ │ ├── nested.md
│ │ ├── size.md
│ │ └── tip.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── statistic
│ ├── README.md
│ ├── Statistic.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── countdown.ts
│ ├── docs
│ │ ├── basic.md
│ │ ├── card.md
│ │ ├── countdown.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ └── unit.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── steps
│ ├── README.md
│ ├── Step.ts
│ ├── Steps.ts
│ ├── docs
│ │ ├── basic.md
│ │ ├── change.md
│ │ ├── click.md
│ │ ├── customDot.md
│ │ ├── desc.md
│ │ ├── error.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ ├── initial.md
│ │ ├── navigation.md
│ │ ├── progressDot.md
│ │ ├── size.md
│ │ ├── vertical.md
│ │ └── vertical_small.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── custom-icon.less
│ │ ├── index.less
│ │ ├── index.ts
│ │ ├── label-placement.less
│ │ ├── progress-dot.less
│ │ ├── small.less
│ │ └── vertical.less
├── switch
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── description.md
│ │ ├── disabled.md
│ │ ├── index.ts
│ │ ├── loading.md
│ │ ├── size.md
│ │ └── text.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── table
│ ├── README.md
│ ├── Table.ts
│ ├── Tbody.ts
│ ├── Td.ts
│ ├── Th.ts
│ ├── Thead.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── ajax.md
│ │ ├── basic.md
│ │ ├── bordered.md
│ │ ├── children.md
│ │ ├── colspan-rowspan.md
│ │ ├── columns-children.md
│ │ ├── combination.md
│ │ ├── control-filter-sort.md
│ │ ├── desc.md
│ │ ├── dynamic.md
│ │ ├── editable-cell.md
│ │ ├── editable-row.md
│ │ ├── ellipsis.md
│ │ ├── expanded-row-render.md
│ │ ├── expanded-table.md
│ │ ├── filter-sort.md
│ │ ├── filter.md
│ │ ├── fixed-column.md
│ │ ├── fixed-header-column.md
│ │ ├── fixed-header.md
│ │ ├── index.ts
│ │ ├── row-selection-custom.md
│ │ ├── row-selection-operation.md
│ │ ├── row-selection.md
│ │ ├── size.md
│ │ └── sticky.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ ├── index.ts
│ │ ├── patch.less
│ │ └── size.less
├── tabs
│ ├── README.md
│ ├── ScrollableInkTabBar.ts
│ ├── ScrollableTabBarNode.ts
│ ├── TabBarTabsNode.ts
│ ├── TabPane.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── card-top.md
│ │ ├── card.md
│ │ ├── center.md
│ │ ├── custom-add.md
│ │ ├── custom-bar.md
│ │ ├── desc.md
│ │ ├── disabled.md
│ │ ├── editable-card.md
│ │ ├── extra.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ ├── keyboard.md
│ │ ├── position.md
│ │ ├── size.md
│ │ └── slide.md
│ ├── index.ts
│ ├── interface.ts
│ ├── style
│ │ ├── cardStyle.less
│ │ ├── index.less
│ │ └── index.ts
│ └── utils.ts
├── tag
│ ├── CheckableTag.ts
│ ├── README.md
│ ├── docs
│ │ ├── basic.md
│ │ ├── checkable.md
│ │ ├── colorful.md
│ │ ├── control.md
│ │ ├── controlled.md
│ │ ├── desc.md
│ │ ├── hot-tags.md
│ │ ├── icon.md
│ │ └── index.ts
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── time-picker
│ ├── Combobox.ts
│ ├── Header.ts
│ ├── Panel.ts
│ ├── README.md
│ ├── Select.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── addon.md
│ │ ├── basic.md
│ │ ├── disable.md
│ │ ├── format.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── onchange.md
│ │ ├── size.md
│ │ ├── step.md
│ │ └── use12hours.md
│ ├── index.ts
│ ├── interface.ts
│ ├── locale
│ │ ├── ar_EG.ts
│ │ ├── bg_BG.ts
│ │ ├── ca_ES.ts
│ │ ├── cs_CZ.ts
│ │ ├── da_DK.ts
│ │ ├── de_DE.ts
│ │ ├── el_GR.ts
│ │ ├── en_GB.ts
│ │ ├── en_US.ts
│ │ ├── es_ES.ts
│ │ ├── et_EE.ts
│ │ ├── fa_IR.ts
│ │ ├── fi_FI.ts
│ │ ├── fr_BE.ts
│ │ ├── fr_FR.ts
│ │ ├── he_IL.ts
│ │ ├── hi_IN.ts
│ │ ├── hr_HR.ts
│ │ ├── hu_HU.ts
│ │ ├── id_ID.ts
│ │ ├── is_IS.ts
│ │ ├── it_IT.ts
│ │ ├── ja_JP.ts
│ │ ├── kn_IN.ts
│ │ ├── ko_KR.ts
│ │ ├── ku_IQ.ts
│ │ ├── lv_LV.ts
│ │ ├── mn_MN.ts
│ │ ├── nb_NO.ts
│ │ ├── nl_BE.ts
│ │ ├── nl_NL.ts
│ │ ├── pl_PL.ts
│ │ ├── pt_BR.ts
│ │ ├── pt_PT.ts
│ │ ├── ru_RU.ts
│ │ ├── sk_SK.ts
│ │ ├── sl_SI.ts
│ │ ├── sr_RS.ts
│ │ ├── sv_SE.ts
│ │ ├── th_TH.ts
│ │ ├── tr_TR.ts
│ │ ├── uk_UA.ts
│ │ ├── vi_VN.ts
│ │ ├── zh_CN.ts
│ │ └── zh_TW.ts
│ ├── placements.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── timeline
│ ├── Item.ts
│ ├── README.md
│ ├── Timeline.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── alternate.md
│ │ ├── basic.md
│ │ ├── color.md
│ │ ├── desc.md
│ │ ├── dot.md
│ │ ├── index.ts
│ │ ├── label.md
│ │ ├── mode.md
│ │ └── pending.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
├── tooltip
│ ├── README.md
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── arrow.md
│ │ ├── basic.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── position.md
│ │ └── preset.md
│ ├── index.ts
│ ├── interface.ts
│ ├── placements.ts
│ ├── style
│ │ ├── index.js
│ │ └── index.less
│ └── util.ts
├── transfer
│ ├── List.ts
│ ├── Operation.ts
│ ├── README.md
│ ├── RenderListBody.ts
│ ├── Search.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── advance.md
│ │ ├── basic.md
│ │ ├── head.md
│ │ ├── index.ts
│ │ ├── render.md
│ │ ├── search.md
│ │ ├── table.md
│ │ └── tree.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── customize.less
│ │ ├── index.less
│ │ └── index.ts
├── tree-select
│ ├── Input.ts
│ ├── MultipleSelector.ts
│ ├── README.md
│ ├── Selector.ts
│ ├── SingleSelector.ts
│ ├── TreeSelect.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── checkable.md
│ │ ├── desc.md
│ │ ├── index.ts
│ │ ├── loadData.md
│ │ ├── multiple.md
│ │ ├── replaceFields.md
│ │ ├── showicon.md
│ │ └── treeData.md
│ ├── index.ts
│ ├── interface.ts
│ ├── style
│ │ ├── checkboxMixin.less
│ │ ├── index.less
│ │ └── index.ts
│ └── treeStrategies.ts
├── tree
│ ├── DirectoryTree.ts
│ ├── README.md
│ ├── Tree.ts
│ ├── TreeNode.ts
│ ├── commonConst.ts
│ ├── docs
│ │ ├── async.md
│ │ ├── basic.md
│ │ ├── checkbox.md
│ │ ├── control.md
│ │ ├── desc.md
│ │ ├── directory.md
│ │ ├── icon.md
│ │ ├── index.ts
│ │ ├── line.md
│ │ ├── search.md
│ │ ├── switcher.md
│ │ └── virtual-scroll.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── checkbox-mixin.less
│ │ ├── directory.less
│ │ ├── index.less
│ │ ├── index.ts
│ │ └── mixin.less
├── typography
│ ├── Base.ts
│ ├── README.md
│ ├── Title.ts
│ ├── __tests__
│ │ └── index.spec.js
│ ├── docs
│ │ ├── basic.md
│ │ ├── editable.md
│ │ ├── ellipsis.md
│ │ ├── head.md
│ │ ├── index.js
│ │ ├── text.md
│ │ └── title.md
│ ├── index.ts
│ ├── interface.ts
│ └── style
│ │ ├── index.less
│ │ └── index.ts
└── upload
│ ├── Dragger.ts
│ ├── README.md
│ ├── Upload.ts
│ ├── UploadList.ts
│ ├── __tests__
│ └── index.spec.js
│ ├── docs
│ ├── avatar.md
│ ├── basic.md
│ ├── controlledFileList.md
│ ├── defaultFileList.md
│ ├── desc.md
│ ├── directory.md
│ ├── dragger.md
│ ├── index.ts
│ ├── manual.md
│ ├── maxCount.md
│ ├── picture.md
│ ├── picturewall.md
│ └── preview.md
│ ├── index.ts
│ ├── interface.ts
│ ├── src
│ ├── AjaxUploader.ts
│ ├── interface.ts
│ ├── request.ts
│ └── util.ts
│ ├── style
│ ├── index.js
│ └── index.less
│ └── utils.ts
├── tsconfig.esm.json
├── tsconfig.json
└── typings
├── async-validator.d.ts
└── custom-typings.d.ts
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [["@babel/preset-env"]],
3 | "plugins": [
4 | "@babel/plugin-proposal-class-properties"
5 | ]
6 | }
7 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | indent_style = space
5 | indent_size = 4
6 | end_of_line = lf
7 | charset = utf-8
8 | trim_trailing_whitespace = false
9 | insert_final_newline = false
--------------------------------------------------------------------------------
/.fecsignore:
--------------------------------------------------------------------------------
1 | src/**/__tests__/*
2 | src/**/docs/**
3 | dest/
4 | scripts/
5 | output/
6 | docs/
7 | issue-helper/
8 | *.conf.js
9 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | output/
2 | .svn
3 | .DS_Store
4 | .idea
5 | *.bak
6 | node_modules/
7 | **/node_modules/
8 | dest/
9 | dist/
10 | types/
11 | build/
12 | npm-debug.log
13 | package-lock.json
14 | coverage/
15 | lerna-debug.log
16 |
17 | santd/core/_util/
18 | yarn.lock
19 | yarn-error.log
20 |
21 | .vscode
22 |
23 | output
24 |
--------------------------------------------------------------------------------
/.npmrc:
--------------------------------------------------------------------------------
1 | registry=https://registry.npm.taobao.org
2 |
--------------------------------------------------------------------------------
/.prettierrc:
--------------------------------------------------------------------------------
1 | {
2 | "singleQuote": true,
3 | "semi": true,
4 | "printWidth": 120,
5 | "tabWidth": 4,
6 | "bracketSpacing": false,
7 | "overrides": [
8 | {
9 | "files": ".prettierrc",
10 | "options": { "parser": "json" }
11 | }
12 | ]
13 | }
14 |
--------------------------------------------------------------------------------
/issue-helper/assets/images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/ecomfe/santd/897f6c1b96679f81eaf7daae5b9a9de189aa3e07/issue-helper/assets/images/logo.png
--------------------------------------------------------------------------------
/issue-helper/helpers/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file issue helper helper index file
3 | **/
4 |
5 | // export * from './generate';
6 | // export * from './version-compare';
7 | export * from './query';
8 |
--------------------------------------------------------------------------------
/issue-helper/helpers/query.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file issue helper query file
3 | **/
4 |
5 | import qs from 'querystring';
6 |
7 | export function getQuery() {
8 | return qs.parse(window.location.search.slice(1));
9 | }
10 |
11 | export function updateQuery(query) {
12 | const {origin, pathname} = window.location;
13 | const newUrl = origin + pathname + '?' + qs.stringify(
14 | {...getQuery(), ...query},
15 | {encode: false}
16 | );
17 | window.history.pushState({
18 | path: newUrl
19 | }, '', newUrl);
20 | }
21 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/en/motivationHelp.md:
--------------------------------------------------------------------------------
1 | Explain your use case, context, and rationale behind this feature request. More importantly, what is the **end user experience** you are trying to build that led to the need for this feature?
2 |
3 | An important design goal of Ant Design San is keeping the API surface small and straightforward. In general, we only consider adding new features that solve a problem that cannot be easily dealt with using existing APIs (i.e. not just an alternative way of doing things that can already be done). The problem should also be common enough to justify the addition.
4 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/en/proposalHelp.md:
--------------------------------------------------------------------------------
1 | Describe how you propose to solve the problem and provide code samples of how the API would work once implemented. Note that you can use [Markdown](https://guides.github.com/features/mastering-markdown/) to format your code blocks.
2 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/en/reproHelp.md:
--------------------------------------------------------------------------------
1 | Please provide a link by forking these links [antd](https://codesandbox.io/s/2wpk21kzvr) or GitHub repo.
2 |
3 | [What is a minimal reproduction, and why is it required?](#repro-modal)
4 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/en/stepsHelp.md:
--------------------------------------------------------------------------------
1 | Clear and concise reproduction instructions are important for us to be
2 | able to triage your issue in a timely manner. Note that you can use
3 | [Markdown](https://guides.github.com/features/mastering-markdown/) to format lists and code.
4 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/zh/intro.md:
--------------------------------------------------------------------------------
1 | ## 在你开始之前...
2 |
3 | 首先,虽然我们为了中文用户的方便提供了中文的表单,但在填写时请**尽量使用英文**。Ant Design San 社区不只有中国人。如果你想让尽可能多的人能够看懂你的 issue,就请尽量用英文。
4 |
5 | 其次,Ant Design San 的 issue 列表只接受 bug 报告或是新功能请求 (feature requests)。这意味着**我们不接受用法问题**。如果你开的 issue 不符合规定,它将会被**立刻关闭**。[为什么要这么严格?](#intro-modal)
6 |
7 | 对于使用中遇到的问题,请使用以下资源:
8 |
9 | - 仔细阅读 [文档](/ant-design-vue/docs/vue/introduce-cn/)
10 |
11 | 最后,在开 issue 前,可以先搜索一下以往的旧 issue - 你遇到的问题可能已经有人提了,也可能已经在最新版本中被修正。注意:如果你发现一个已经关闭的旧 issue 在最新版本中仍然存在,请不要在旧 issue 下面留言,而应该用下面的表单开一个新的 issue。
12 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/zh/motivationHelp.md:
--------------------------------------------------------------------------------
1 | 请尽可能详尽地说明这个需求的用例和场景。最重要的是:解释清楚是怎样的**用户体验需求**催生了这个功能上的需求。
2 |
3 | Ant Design San 的一个重要设计原则是保持 API 的简洁和直接。通常来说,我们只考虑添加在现有的 API 下无法轻松实现的功能。新功能的用例也应当足够常见。
4 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/zh/proposalHelp.md:
--------------------------------------------------------------------------------
1 | 描述一下你期望这个新功能的 API 是如何使用的,并提供一些代码示例。请用 [Markdown](https://guides.github.com/features/mastering-markdown/) 格式化你的代码片段。
2 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/zh/reproHelp.md:
--------------------------------------------------------------------------------
1 | 请提供一个尽可能精简的链接 [antd](https://codesandbox.io/s/2wpk21kzvr) 或是 GitHub 仓库的链接。
2 |
3 | [什么是最小化重现,为什么这是必需的?](#repro-modal)
4 |
--------------------------------------------------------------------------------
/issue-helper/i18n/locales/zh/stepsHelp.md:
--------------------------------------------------------------------------------
1 | 简洁清晰的重现步骤能够帮助我们更迅速地定位问题所在。支持使用 [Markdown](https://guides.github.com/features/mastering-markdown/) 来格式化列表或是代码片段。
2 |
--------------------------------------------------------------------------------
/issue-helper/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file issue help index file
3 | **/
4 |
5 | import App from './components/app';
6 | import './style/index.less';
7 |
8 | const issueApp = new App();
9 | issueApp.attach(document.body);
10 |
--------------------------------------------------------------------------------
/postcss.config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file postcss config
3 | */
4 | /**
5 | * @file postcss config
6 | */
7 | const atImport = require('postcss-import');
8 | const autoprefixer = require('autoprefixer');
9 | const url = require('postcss-url');
10 | module.exports = {
11 | plugins: [
12 | url({
13 | url: 'inline',
14 | maxSize: 4000
15 | }),
16 | autoprefixer(),
17 | atImport()
18 | ]
19 | };
20 |
--------------------------------------------------------------------------------
/scripts/build.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | # 清空编译产物
4 | rm -rf dist types
5 |
6 | # 编译 ts
7 | pnpm build:esm
8 | pnpm build:cjs
--------------------------------------------------------------------------------
/scripts/lib/utils.js:
--------------------------------------------------------------------------------
1 | const {posix, resolve} = require('path');
2 | const config = require('../config');
3 |
4 | exports.resolve = pathname => resolve(__dirname, '../..', pathname);
5 |
6 | exports.assetsPath = path => {
7 | let assetsSubDirectory =
8 | process.env.NODE_ENV === 'production' ? config.build.assetsSubDirectory : config.dev.assetsSubDirectory;
9 | return posix.join(assetsSubDirectory, path);
10 | };
11 |
--------------------------------------------------------------------------------
/scripts/webpack.dev.conf.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 开发环境webpack配置
3 | * @author fuqiangqiang@baidu.com
4 | * wangyongqing01@baidu.com
5 | */
6 | // const path = require('path');
7 | const merge = require('webpack-merge');
8 | const baseWebpackConfig = require('./webpack.base.conf');
9 | const HotModuleReplacementPlugin = require('webpack/lib/HotModuleReplacementPlugin');
10 |
11 | module.exports = merge(baseWebpackConfig, {
12 | entry: {
13 | app: './site/preview/index.js'
14 | },
15 | plugins: [
16 | new HotModuleReplacementPlugin()
17 | ]
18 | });
19 |
--------------------------------------------------------------------------------
/site/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | Santd - San Toolkit for Ant Design
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/site/src/containers/Content.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file doc content
3 | * @author baozhixin
4 | */
5 |
6 | import {Component} from 'san';
7 |
8 | export default class Content extends Component {
9 | // eslint-disable-next-line
10 | static template = /*html*/ `
11 |
12 |
13 | {{content | raw}}
14 |
15 |
16 |
17 | `;
18 | }
19 |
--------------------------------------------------------------------------------
/site/src/style/index.less:
--------------------------------------------------------------------------------
1 | // @import "../../theme/static/index.less";
2 | // @import "santd/core/styles/themes/default.less";
3 | // @import "santd/core/styles/v2-compatible-reset.less";
4 |
5 | @import "../../preview/style/preview.less";
--------------------------------------------------------------------------------
/site/theme/static/docsearch.less:
--------------------------------------------------------------------------------
1 | .algolia-autocomplete {
2 | .ds-dropdown-menu {
3 | border: none;
4 | box-shadow: @box-shadow-base;
5 |
6 | [class^="ds-dataset-"] {
7 | border: none;
8 | }
9 |
10 | &:before {
11 | display: none;
12 | }
13 | }
14 |
15 | .algolia-docsearch-suggestion--title {
16 | color: @site-text-color;
17 | }
18 |
19 | .algolia-docsearch-suggestion--highlight {
20 | color: @primary-color;
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/site/theme/static/index.less:
--------------------------------------------------------------------------------
1 | @import './common';
2 | @import './header';
3 | @import './footer';
4 | @import './home';
5 | @import './page-nav';
6 | @import './markdown';
7 | @import './resource';
8 | @import './preview-img';
9 | @import './toc';
10 | @import './not-found';
11 | @import './highlight';
12 | @import './demo';
13 | @import './colors';
14 | @import './icons';
15 | @import './mock-browser';
16 | @import './new-version-info-modal';
17 | @import './motion';
18 | @import './responsive';
19 | @import './theme';
20 | @import './docsearch';
21 | @import './nprogress';
22 |
--------------------------------------------------------------------------------
/site/theme/static/new-version-info-modal.less:
--------------------------------------------------------------------------------
1 | .new-version-info-modal {
2 | img {
3 | width: 100px;
4 | position: absolute;
5 | left: 34px;
6 | top: 36px;
7 | }
8 | p {
9 | margin-top: 1em;
10 | }
11 | .anticon {
12 | display: none;
13 | }
14 | .ant-confirm-body {
15 | .ant-confirm-title {
16 | font-size: 18px;
17 | }
18 | margin-left: 120px;
19 | .ant-confirm-content {
20 | margin-left: 0;
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/site/theme/static/page-nav.less:
--------------------------------------------------------------------------------
1 | .prev-next-nav {
2 | margin-left: 64px;
3 | margin-right: 64px;
4 | font-size: 14px;
5 | border-top: 1px solid @site-border-color-split;
6 |
7 | > .prev-page,
8 | > .next-page {
9 | width: 50%;
10 | float: left;
11 | line-height: 72px;
12 | height: 72px;
13 | text-decoration: none;
14 | }
15 |
16 | > .next-page {
17 | text-align: right;
18 | float: right;
19 | }
20 |
21 | .chinese {
22 | margin-left: 0.5em;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/site/theme/static/theme.less:
--------------------------------------------------------------------------------
1 | @site-heading-color: #0d1a26;
2 | @site-text-color: #314659;
3 | @site-text-color-secondary: #697b8c;
4 | @site-border-color-split: #ebedf0;
5 |
--------------------------------------------------------------------------------
/src/affix/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 affix 测试文件
3 | * @author fuqiangqiang
4 | */
5 |
6 | describe('affix', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/affix/docs/head.md:
--------------------------------------------------------------------------------
1 |
2 | # Affix 固钉
3 |
4 | 将页面元素钉在可视范围。
5 |
6 | ## 何时使用
7 |
8 | 当内容区域比较长,需要滚动页面时,这部分内容对应的操作或者导航需要在滚动范围内始终展现。常用于侧边菜单和按钮组合。
9 |
10 | 页面可视范围过小时,慎用此功能以免遮挡页面内容。
11 |
12 | ## 代码演示
13 |
--------------------------------------------------------------------------------
/src/affix/docs/offsetTop.md:
--------------------------------------------------------------------------------
1 |
2 | #### 固定状态改变的回调
3 | 可以获得是否固定的状态。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 | 120px to affix top
11 |
12 |
13 |
14 |
27 | ```
28 |
--------------------------------------------------------------------------------
/src/affix/interface.ts:
--------------------------------------------------------------------------------
1 | export type Target = () => HTMLElement | Window;
2 |
3 | export type ObjectDetail = {[key: string]: string};
4 |
5 | export type Scroller = (() => void) | null | undefined;
6 |
7 | export interface State {
8 | offsetBottom?: number;
9 | offsetTop?: number;
10 | affix?: boolean;
11 | styles?: ObjectDetail;
12 | outerStyles?: ObjectDetail;
13 |
14 | }
15 |
16 | export interface Props {
17 | offsetBottom?: number;
18 | offsetTop?: number;
19 | target?: Target;
20 | styles?: ObjectDetail;
21 | }
--------------------------------------------------------------------------------
/src/affix/style/index.less:
--------------------------------------------------------------------------------
1 | @import "../../core/styles/themes/default";
2 |
3 | .@{ant-prefix}-affix {
4 | position: 'relative';
5 | z-index: @zindex-affix;
6 | display: inline-block;
7 | }
8 |
--------------------------------------------------------------------------------
/src/affix/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file affix 组件入口文件
3 | */
4 | import './index.less';
5 |
--------------------------------------------------------------------------------
/src/alert/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 alert
3 | * @author baozhixin
4 | */
5 |
6 | describe('alert', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/alert/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法,适用于简短的警告提示。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/alert/docs/close-text.md:
--------------------------------------------------------------------------------
1 |
2 | #### 自定义关闭
3 | 可以自定义关闭,自定义的文字会替换原先的关闭 `Icon`。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/alert/docs/head.md:
--------------------------------------------------------------------------------
1 | # Alert 警告提示
2 |
3 | 警告提示,展现需要关注的信息。
4 |
5 | ## 何时使用
6 |
7 | - 当某个页面需要向用户显示警告的信息时。
8 | - 非浮层的静态展现形式,始终展现,不会自动消失,用户可以点击关闭。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/alert/docs/index.less:
--------------------------------------------------------------------------------
1 | .code-box .santd-alert {
2 | margin-bottom: 10px;
3 | }
4 |
--------------------------------------------------------------------------------
/src/alert/docs/style.md:
--------------------------------------------------------------------------------
1 |
2 | #### 四种样式
3 | 共有四种样式 `success`、`info`、`warning`、`error`。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/alert/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {
2 |
3 | };
4 |
5 | export interface State {
6 | iconMap: {
7 | success: string;
8 | info: string;
9 | error: string;
10 | warning: string;
11 | };
12 | closing: boolean;
13 | };
14 |
15 | export interface Computed {
16 | classes: () => string[];
17 | };
--------------------------------------------------------------------------------
/src/alert/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/anchor/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('anchor', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/anchor/docs/head.md:
--------------------------------------------------------------------------------
1 | # Anchor 锚点
2 | 用于跳转到页面指定位置。
3 |
4 | ## 何时使用
5 | 需要展现当前页面上可供跳转的锚点链接,以及快速在锚点之间跳转。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/anchor/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd anchor root file
3 | * @author mayihui@baidu.com
4 | **/
5 |
6 | import Anchor from './Anchor';
7 | import Link from './Link';
8 |
9 | Anchor.Link = Link;
10 |
11 | export default Anchor;
12 |
--------------------------------------------------------------------------------
/src/anchor/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/auto-complete/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 auto-complete 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('auto-complete', () => {});
--------------------------------------------------------------------------------
/src/auto-complete/docs/head.md:
--------------------------------------------------------------------------------
1 |
2 | # AutoComplete 自动完成
3 |
4 | 输入框自动完成功能。
5 |
6 | ## 何时使用
7 | 需要自动完成时。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/auto-complete/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/avatar/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | icon | 设置头像的图标类型,参考 `Icon` 组件 | string | - |
6 | | shape | 指定头像的形状 | Enum{ 'circle', 'square' } | `circle` |
7 | | size | 设置头像的大小 | number \| Enum{ 'large', 'small', 'default' } | `default` |
8 | | src | 图片类头像的资源地址 | string | - |
9 | | srcSet | 设置图片类头像响应式资源地址 | string | - |
10 | | alt | 图像无法显示时的替代文本 | string | - |
11 | | gap | 字符类型距离左右两侧边界单位像素 | number | 4 |
12 | | on-error | 图片加载失败的事件,返回 false 会关闭组件默认的 fallback 行为 | () => boolean | - |
13 |
--------------------------------------------------------------------------------
/src/avatar/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('avatar', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/avatar/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Avatar 头像
2 | 用来代表用户或事物,支持图片、图标或字符展示。
3 |
4 | ## 设计师专属
5 | 安装 [Kitchen Sketch 插件](https://kitchen.alipay.com/) 💎,一键填充高逼格头像和文本.
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/avatar/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {}
2 |
3 | export interface State {
4 | prefixCls: string,
5 | shape: string,
6 | size: string,
7 | isImgExist: boolean,
8 | scaleId: string,
9 | gap: number
10 | }
11 |
12 | export interface Computed {}
--------------------------------------------------------------------------------
/src/avatar/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/back-top/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | target | 设置需要监听其滚动事件的元素,值为一个返回对应 DOM 元素的函数 | Function | `() => window` |
6 | | visibilityHeight |滚动高度达到此参数值才出现 backtop|number|400|
7 | | on-click |点击按钮的回调函数|Function|-|
8 |
--------------------------------------------------------------------------------
/src/back-top/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 单元测试代码
3 | * @author raowenjuan(raowenjuan@baidu.com)
4 | */
5 | import san from 'san';
6 | import BackTop from '../index';
7 |
8 | const sanInstance = () => {
9 | const BTop = san.defineComponent({
10 | components: {
11 | 'san-backtop': BackTop
12 | },
13 | template: `
14 |
15 |
16 |
17 | `
18 | });
19 | new BTop().attach(document.body);
20 | };
21 | sanInstance();
22 | describe('BackTop', () => {
23 | });
--------------------------------------------------------------------------------
/src/back-top/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 | Scroll down to see the bottom-right gray button.
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/back-top/docs/desc.md:
--------------------------------------------------------------------------------
1 | # BackTop 回到顶部
2 | 返回页面顶部的操作按钮。
3 |
4 | ## 何时使用
5 | * 当页面内容区域比较长时;
6 | * 当用户需要频繁返回顶部查看相关内容时。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/back-top/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {}
2 |
3 | export interface State {
4 | /**
5 | * 可见高度
6 | */
7 | visibilityHeight: number;
8 |
9 | /**
10 | * 返回window对象
11 | */
12 | target: () => HTMLElement | Window;
13 |
14 | /**
15 | * 是否可见
16 | */
17 | visible: boolean;
18 | }
19 |
20 | export interface Computed {}
--------------------------------------------------------------------------------
/src/back-top/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/back-top/style/responsive.less:
--------------------------------------------------------------------------------
1 | @media screen and (max-width: @screen-md) {
2 | .@{backtop-prefix-cls} {
3 | right: 60px;
4 | }
5 | }
6 |
7 | @media screen and (max-width: @screen-xs) {
8 | .@{backtop-prefix-cls} {
9 | right: 20px;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/badge/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | color | 自定义小圆点的颜色 | string | |
6 | | count | 展示的数字,大于 overflowCount 时显示为 `\${overflowCount}+`,为 0 时隐藏 | number | |
7 | | dot | 不展示数字,只有一个小红点 | boolean | `false` |
8 | | offset | 设置状态点的位置偏移,格式为 `[x, y]` | [number, number] | - |
9 | | overflowCount | 展示封顶的数字值 | number | 99 |
10 | | showZero | 当数值为 0 时,是否展示 Badge | boolean | `false` |
11 | | status | 设置 Badge 为状态点 | Enum{ 'success', 'processing, 'default', 'error', 'warning' } | '' |
12 | | text | 在设置了 `status` 的前提下有效,设置状态点的文本 | string | '' |
13 | | title | 设置鼠标放在状态点上时显示的文字 | string | `count` |
14 |
--------------------------------------------------------------------------------
/src/badge/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 badge 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('badge', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/badge/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Badge 徽标数
2 | 图标右上角的圆形徽标数字。
3 |
4 | ## 何时使用
5 | 一般出现在通知图标或头像的右上角,用于显示需要处理的消息条数,通过醒目视觉形式吸引用户处理。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/badge/docs/independent.md:
--------------------------------------------------------------------------------
1 |
2 | #### 独立使用
3 | 不包裹任何元素即是独立使用,可自定样式展现。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/badge/docs/link.md:
--------------------------------------------------------------------------------
1 |
2 | #### 可点击
3 | 用 a 标签进行包裹即可。
4 |
5 |
6 | ```html
7 |
8 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/badge/docs/style.css:
--------------------------------------------------------------------------------
1 | .santd-badge:not(.santd-badge-not-a-wrapper) {
2 | margin-right: 20px;
3 | }
4 | .head-example {
5 | width: 42px;
6 | height: 42px;
7 | border-radius: 4px;
8 | background: #eee;
9 | display: inline-block;
10 | }
11 |
--------------------------------------------------------------------------------
/src/badge/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/base/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### base
3 | santd base component
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/base/docs/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file docs入口文件
3 | */
4 |
5 | import {Component} from 'san';
6 | import Basic from './basic.md';
7 |
8 | export default class BaseDocs extends Component {
9 | static components = {
10 | basic: Basic,
11 | };
12 |
13 | static template = /* html */ `
14 |
15 |
16 |
17 | `;
18 | }
--------------------------------------------------------------------------------
/src/breadcrumb/docs/head.md:
--------------------------------------------------------------------------------
1 |
2 | # Breadcrumb 面包屑
3 |
4 | 显示当前页面在系统层级结构中的位置,并能向上返回。
5 |
6 | ## 何时使用
7 | - 当系统拥有超过两级以上的层级结构时;
8 | - 当需要告知用户『你在哪里』时;
9 | - 当需要向上导航的功能时。
10 |
11 | ## 代码演示
12 |
--------------------------------------------------------------------------------
/src/breadcrumb/style/index.ts:
--------------------------------------------------------------------------------
1 | import './index.less';
2 |
--------------------------------------------------------------------------------
/src/button/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 按钮类型
3 | 按钮有五种类型:主按钮、次按钮、虚线按钮、危险按钮和链接按钮。主按钮在同一个操作区域最多出现一次。
4 |
5 |
6 | ```html
7 |
8 |
9 | Primary
10 | Default
11 | Danger
12 | Dashed
13 | Link
14 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/button/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Button 按钮
2 |
3 | 按钮用于开始一个即时操作。
4 |
5 | ## 何时使用
6 |
7 | 标记了一个(或封装一组)操作命令,响应用户点击行为,触发相应的业务逻辑。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/button/docs/style.less:
--------------------------------------------------------------------------------
1 | .santd-btn {
2 | margin-right: 8px;
3 | margin-bottom: 12px;
4 | }
5 | .santd-btn-group {
6 | margin-right: 8px;
7 | }
8 | .santd-btn-group > .santd-btn {
9 | margin-right: 0;
10 | }
11 |
--------------------------------------------------------------------------------
/src/button/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file san-button按钮
3 | * @author fuqiangqiang@baidu.com
4 | */
5 | import Button from './Button';
6 | import ButtonGroup from './ButtonGroup';
7 |
8 | Button.Group = ButtonGroup;
9 |
10 | export default Button;
11 |
--------------------------------------------------------------------------------
/src/button/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/calendar/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 calendar 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('calendar', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/calendar/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 一个通用的日历面板,支持年/月切换。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/calendar/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Calendar 日历
2 | 按照日历形式展示数据的容器。
3 |
4 | ## 何时使用
5 | 当数据是日期或按照日期划分时,例如日程、课表、价格日历等,农历等。目前支持年/月切换。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/calendar/locale/ar_EG.js:
--------------------------------------------------------------------------------
1 | import ar_EG from '../../date-picker/locale/ar_EG';
2 | export default ar_EG;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/bg_BG.js:
--------------------------------------------------------------------------------
1 | import bg_BG from '../../date-picker/locale/bg_BG';
2 | export default bg_BG;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/ca_ES.js:
--------------------------------------------------------------------------------
1 | import ca_ES from '../../date-picker/locale/ca_ES';
2 | export default ca_ES;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/cs_CZ.js:
--------------------------------------------------------------------------------
1 | import cs_CZ from '../../date-picker/locale/cs_CZ';
2 | export default cs_CZ;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/da_DK.js:
--------------------------------------------------------------------------------
1 | import da_DK from '../../date-picker/locale/da_DK';
2 | export default da_DK;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/de_DE.js:
--------------------------------------------------------------------------------
1 | import de_DE from '../../date-picker/locale/de_DE';
2 | export default de_DE;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/el_GR.js:
--------------------------------------------------------------------------------
1 | import el_GR from '../../date-picker/locale/el_GR';
2 | export default el_GR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/en_GB.js:
--------------------------------------------------------------------------------
1 | import en_GB from '../../date-picker/locale/en_GB';
2 | export default en_GB;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/en_US.js:
--------------------------------------------------------------------------------
1 | import en_US from '../../date-picker/locale/en_US';
2 | export default en_US;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/es_ES.js:
--------------------------------------------------------------------------------
1 | import es_ES from '../../date-picker/locale/es_ES';
2 | export default es_ES;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/et_EE.js:
--------------------------------------------------------------------------------
1 | import et_EE from '../../date-picker/locale/et_EE';
2 | export default et_EE;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/fa_IR.js:
--------------------------------------------------------------------------------
1 | import fa_IR from '../../date-picker/locale/fa_IR';
2 | export default fa_IR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/fi_FI.js:
--------------------------------------------------------------------------------
1 | import fi_FI from '../../date-picker/locale/fi_FI';
2 | export default fi_FI;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/fr_BE.js:
--------------------------------------------------------------------------------
1 | import fr_BE from '../../date-picker/locale/fr_BE';
2 | export default fr_BE;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/fr_FR.js:
--------------------------------------------------------------------------------
1 | import fr_FR from '../../date-picker/locale/fr_FR';
2 | export default fr_FR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/he_IL.js:
--------------------------------------------------------------------------------
1 | import he_IL from '../../date-picker/locale/he_IL';
2 | export default he_IL;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/hi_IN.js:
--------------------------------------------------------------------------------
1 | import hi_IN from '../../date-picker/locale/hi_IN';
2 | export default hi_IN;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/hr_HR.js:
--------------------------------------------------------------------------------
1 | import hr_HR from '../../date-picker/locale/hr_HR';
2 | export default hr_HR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/hu_HU.js:
--------------------------------------------------------------------------------
1 | import hu_HU from '../../date-picker/locale/hu_HU';
2 | export default hu_HU;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/id_ID.js:
--------------------------------------------------------------------------------
1 | import id_ID from '../../date-picker/locale/id_ID';
2 | export default id_ID;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/is_IS.js:
--------------------------------------------------------------------------------
1 | import is_IS from '../../date-picker/locale/is_IS';
2 | export default is_IS;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/it_IT.js:
--------------------------------------------------------------------------------
1 | import it_IT from '../../date-picker/locale/it_IT';
2 | export default it_IT;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/ja_JP.js:
--------------------------------------------------------------------------------
1 | import ja_JP from '../../date-picker/locale/ja_JP';
2 | export default ja_JP;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/kn_IN.js:
--------------------------------------------------------------------------------
1 | import kn_IN from '../../date-picker/locale/kn_IN';
2 | export default kn_IN;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/ko_KR.js:
--------------------------------------------------------------------------------
1 | import ko_KR from '../../date-picker/locale/ko_KR';
2 | export default ko_KR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/ku_IQ.js:
--------------------------------------------------------------------------------
1 | import ku_IQ from '../../date-picker/locale/ku_IQ';
2 | export default ku_IQ;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/lv_LV.js:
--------------------------------------------------------------------------------
1 | import lv_LV from '../../date-picker/locale/lv_LV';
2 | export default lv_LV;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/mn_MN.js:
--------------------------------------------------------------------------------
1 | import mn_MN from '../../date-picker/locale/mn_MN';
2 | export default mn_MN;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/nb_NO.js:
--------------------------------------------------------------------------------
1 | import nb_NO from '../../date-picker/locale/nb_NO';
2 | export default nb_NO;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/nl_BE.js:
--------------------------------------------------------------------------------
1 | import nl_BE from '../../date-picker/locale/nl_BE';
2 | export default nl_BE;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/nl_NL.js:
--------------------------------------------------------------------------------
1 | import nl_NL from '../../date-picker/locale/nl_NL';
2 | export default nl_NL;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/pl_PL.js:
--------------------------------------------------------------------------------
1 | import pl_PL from '../../date-picker/locale/pl_PL';
2 | export default pl_PL;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/pt_BR.js:
--------------------------------------------------------------------------------
1 | import pt_BR from '../../date-picker/locale/pt_BR';
2 | export default pt_BR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/pt_PT.js:
--------------------------------------------------------------------------------
1 | import pt_PT from '../../date-picker/locale/pt_PT';
2 | export default pt_PT;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/ru_RU.js:
--------------------------------------------------------------------------------
1 | import ru_RU from '../../date-picker/locale/ru_RU';
2 | export default ru_RU;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/sk_SK.js:
--------------------------------------------------------------------------------
1 | import sk_SK from '../../date-picker/locale/sk_SK';
2 | export default sk_SK;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/sl_SI.js:
--------------------------------------------------------------------------------
1 | import sl_SI from '../../date-picker/locale/sl_SI';
2 | export default sl_SI;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/sr_RS.js:
--------------------------------------------------------------------------------
1 | import sr_RS from '../../date-picker/locale/sr_RS';
2 | export default sr_RS;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/sv_SE.js:
--------------------------------------------------------------------------------
1 | import sv_SE from '../../date-picker/locale/sv_SE';
2 | export default sv_SE;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/th_TH.js:
--------------------------------------------------------------------------------
1 | import th_TH from '../../date-picker/locale/th_TH';
2 | export default th_TH;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/tr_TR.js:
--------------------------------------------------------------------------------
1 | import tr_TR from '../../date-picker/locale/tr_TR';
2 | export default tr_TR;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/uk_UA.js:
--------------------------------------------------------------------------------
1 | import uk_UA from '../../date-picker/locale/uk_UA';
2 | export default uk_UA;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/vi_VN.js:
--------------------------------------------------------------------------------
1 | import vi_VN from '../../date-picker/locale/vi_VN';
2 | export default vi_VN;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/zh_CN.js:
--------------------------------------------------------------------------------
1 | import zh_CN from '../../date-picker/locale/zh_CN';
2 | export default zh_CN;
3 |
--------------------------------------------------------------------------------
/src/calendar/locale/zh_TW.js:
--------------------------------------------------------------------------------
1 | import zh_TW from '../../date-picker/locale/zh_TW';
2 | export default zh_TW;
3 |
--------------------------------------------------------------------------------
/src/calendar/src/range/interface.ts:
--------------------------------------------------------------------------------
1 | export interface RangePanelState {
2 | visible: boolean;
3 | prefixCls: string;
4 | showToday: boolean;
5 | showDateInput: boolean;
6 | focusablePanel: boolean;
7 | }
8 |
9 | export interface RangePanelProps {
10 | direction: string;
11 | }
12 |
13 | export interface RangePanelComputed {
14 | }
--------------------------------------------------------------------------------
/src/calendar/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/card/Grid.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 card
3 | * @author chenkai13
4 | */
5 |
6 | import './style/index.less';
7 | import Base from 'santd/base';
8 | import {classCreator} from '../core/util';
9 |
10 | const prefixCls = classCreator('card')();
11 |
12 | export default class extends Base {
13 | static template = `
14 |
15 | `;
16 | }
17 |
--------------------------------------------------------------------------------
/src/card/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 card 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('card', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/card/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Card 卡片
2 | 通用卡片容器。
3 |
4 | ## 何时使用
5 | 最基础的卡片容器,可承载文字、列表、图片、段落,常用于后台概览页面。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/card/docs/simple.md:
--------------------------------------------------------------------------------
1 |
2 | #### 简洁卡片
3 | 只包含内容区域。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 | Card content
11 | Card content
12 | Card content
13 |
14 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/card/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 card
3 | * @author chenkai13
4 | */
5 |
6 | import Card from './Card';
7 |
8 | export default Card;
--------------------------------------------------------------------------------
/src/card/interface.ts:
--------------------------------------------------------------------------------
1 | export interface State {
2 | bordered: boolean,
3 | type?: string,
4 | title?: string,
5 | size?: string,
6 | tabList?: any[],
7 | loading?: boolean,
8 | hoverable?: boolean,
9 | defaultActiveKey?: string,
10 | activeTabKey?: string,
11 | actions?: any[],
12 | }
13 |
--------------------------------------------------------------------------------
/src/card/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/carousel/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | on-afterChange | 切换面板的回调 | function(current) | 无 |
6 | | autoplay | 是否自动切换 | boolean | false |
7 | | on-beforeChange | 切换面板的回调 | function(param) | 无 |
8 | | dots | 是否显示面板指示点 | boolean | `true` |
9 | | easing | 动画效果 | string | linear |
10 | | dotPosition | 位置 可选 `top` `bottom` `left` `right` | string | `bottom` |
11 |
12 | ## 方法
13 |
14 | | 名称 | 描述 |
15 | | --- | --- |
16 | | goTo(slideNumber) | 切换到指定面板|
17 | | next() | 切换到下一面板 |
18 | | prev() | 切换到上一面板 |
19 |
--------------------------------------------------------------------------------
/src/carousel/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 carousel 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('carousel', () => {});
--------------------------------------------------------------------------------
/src/carousel/docs/head.md:
--------------------------------------------------------------------------------
1 | # Carousel 走马灯
2 | 旋转木马,一组轮播的区域。
3 |
4 | ## 何时使用
5 |
6 | - 当有一组平级的内容。
7 | - 当内容空间不足时,可以用走马灯的形式进行收纳,进行轮播展现。
8 | - 常用于一组图片或卡片轮播。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/carousel/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/cascader/docs/head.md:
--------------------------------------------------------------------------------
1 | # Cascader 级联选择
2 |
3 | 级联选择框。
4 |
5 | ## 何时使用
6 | - 需要从一组相关联的数据集合进行选择,例如省市区,公司层级,事物分类等。
7 | - 从一个较大的数据集合中进行选择时,用多级分类进行分隔,方便选择。
8 | - 比起 Select 组件,可以在同一个浮层中完成选择,有较好的体验。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/cascader/docs/style/index.less:
--------------------------------------------------------------------------------
1 | .san-cascader-picker {
2 | width: 300px;
3 | }
4 |
--------------------------------------------------------------------------------
/src/cascader/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口
3 | */
4 | import './index.less';
5 |
6 |
--------------------------------------------------------------------------------
/src/checkbox/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 Checkbox 测试文件
3 | * @author jinzhan
4 | */
5 |
6 | describe('Checkbox', () => {
7 | // todo
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/checkbox/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本用法
3 | 简单的checkbox
4 |
5 |
6 | ```html
7 |
8 |
9 | checkbox
10 |
11 |
12 |
13 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/checkbox/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Checkbox 多选框
2 |
3 | 多选框。
4 |
5 | ## 何时使用
6 |
7 | * 在一组可选项中进行多项选择时;
8 | * 单独使用可以表示两种状态之间的切换,和 `switch` 类似。区别在于切换 `switch` 会直接触发状态改变,而 `checkbox` 一般用于状态标记,需要和提交操作配合。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/checkbox/docs/disabled.md:
--------------------------------------------------------------------------------
1 |
2 | #### 不可用
3 | checkbox不可用。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/checkbox/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 Checkbox
3 | * @author jinzhan
4 | */
5 |
6 | import Checkbox from './Checkbox';
7 | import Group from './Group';
8 |
9 | Checkbox.Group = Group;
10 |
11 | export default Checkbox;
12 |
--------------------------------------------------------------------------------
/src/checkbox/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/col/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | col
4 |
5 |
6 | 详细属性:
7 |
8 | | 属性 | 说明 | 类型 | 默认值 |
9 | | --- | --- | --- | --- |
10 | | 属性名 | 组件属性的说明 | boolean | `false` |
11 |
--------------------------------------------------------------------------------
/src/col/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('col', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/col/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### col
3 | col
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
19 | ```
20 |
--------------------------------------------------------------------------------
/src/col/docs/index.ts:
--------------------------------------------------------------------------------
1 | import Readme from '../README.md';
2 | import Base from 'santd/base';
3 |
4 | export default class extends Base {
5 | static components = {
6 | readme: Readme
7 | };
8 | static template: /* html */ `
9 |
10 |
11 |
12 | `;
13 | }
--------------------------------------------------------------------------------
/src/col/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 col
3 | * @author wangyongqing01
4 | */
5 |
6 |
7 | import {Col} from '../grid';
8 |
9 | export default Col;
--------------------------------------------------------------------------------
/src/col/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import '../../core/styles/index';
5 | import '../../grid/style/index';
6 |
--------------------------------------------------------------------------------
/src/collapse/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 collapse 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('collapse', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/collapse/docs/head.md:
--------------------------------------------------------------------------------
1 | # Collapse 折叠面板
2 | 可以折叠/展开的内容区域。
3 |
4 | ## 何时使用
5 |
6 | - 对复杂区域进行分组和隐藏,保持页面的整洁。
7 | - 通过控制 Panel 的 `active` 属性,控制单个内容区域展开或隐藏。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/collapse/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 collapse
3 | * @author chenkai13
4 | */
5 |
6 | import Collapse from './Collapse';
7 | import './style/index.less';
8 |
9 | export default Collapse;
--------------------------------------------------------------------------------
/src/collapse/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/collapse/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/comment/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 属性 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | actions | 在评论内容下面呈现的操作项列表的容器 | Slot | - |
6 | | author | 要显示为注释作者的元素 | Slot | - |
7 | | avatar | 要显示为评论头像的元素 | Slot | - |
8 | | nested | 嵌套注释应作为注释的子项提供 | Slot | - |
9 | | content | 评论的主要内容 | Slot | - |
10 | | datetime | 展示时间描述 | Slot | - |
11 |
12 | ## Comment.Action
13 |
14 | 评论内容下面呈现的操作项,例:
15 |
16 | ```js
17 | Reply To
18 | ```
19 |
--------------------------------------------------------------------------------
/src/comment/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 comment 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('comment', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/comment/docs/head.md:
--------------------------------------------------------------------------------
1 | # Comment 评论
2 | 对网站内容的反馈、评价和讨论。
3 |
4 | ## 何时使用
5 | 评论组件可用于对事物的讨论,例如页面、博客文章、问题等等。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/comment/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/core/constants.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 常量
3 | * @author wangyongqing01@baidu.com
4 | */
5 |
6 | export const CLASSNAME_PREFIX = 'santd';
7 | export const MENU_FOLDED_ITEM_ID = CLASSNAME_PREFIX + '-menu-folded-item';
8 |
--------------------------------------------------------------------------------
/src/core/styles/core/iconfont.less:
--------------------------------------------------------------------------------
1 | @import '../themes/default';
2 | @import "../mixins/iconfont";
3 |
4 | .@{iconfont-css-prefix} {
5 | .iconfont-mixin();
6 | }
7 |
8 | .@{iconfont-css-prefix}-spin:before {
9 | display: inline-block;
10 | animation: loadingCircle 1s infinite linear;
11 | }
12 | .@{iconfont-css-prefix}-spin {
13 | display: inline-block;
14 | animation: loadingCircle 1s infinite linear;
15 | }
16 |
--------------------------------------------------------------------------------
/src/core/styles/core/index.less:
--------------------------------------------------------------------------------
1 | @import "../mixins/index";
2 | @import "base";
3 | @import "iconfont";
4 | @import "motion";
5 |
--------------------------------------------------------------------------------
/src/core/styles/core/motion.less:
--------------------------------------------------------------------------------
1 | @import "../mixins/motion";
2 | @import "motion/fade";
3 | @import "motion/move";
4 | @import "motion/other";
5 | @import "motion/slide";
6 | @import "motion/swing";
7 | @import "motion/zoom";
8 |
9 | // For common/openAnimation
10 | .san-motion-collapse-legacy {
11 | overflow: hidden;
12 | &-active {
13 | transition: height 0.15s @ease-in-out, opacity 0.15s @ease-in-out !important;
14 | }
15 | }
16 |
17 | .san-motion-collapse {
18 | overflow: hidden;
19 | transition: height 0.15s @ease-in-out, opacity 0.15s @ease-in-out !important;
20 | }
21 |
--------------------------------------------------------------------------------
/src/core/styles/core/motion/fade.less:
--------------------------------------------------------------------------------
1 | .fade-motion(@className, @keyframeName) {
2 | .make-motion(@className, @keyframeName);
3 | .@{className}-enter,
4 | .@{className}-appear {
5 | opacity: 0;
6 | animation-timing-function: linear;
7 | }
8 | .@{className}-leave {
9 | animation-timing-function: linear;
10 | }
11 | }
12 |
13 | .fade-motion(fade, antFade);
14 |
15 | @keyframes antFadeIn {
16 | 0% {
17 | opacity: 0;
18 | }
19 | 100% {
20 | opacity: 1;
21 | }
22 | }
23 |
24 | @keyframes antFadeOut {
25 | 0% {
26 | opacity: 1;
27 | }
28 | 100% {
29 | opacity: 0;
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/src/core/styles/index.js:
--------------------------------------------------------------------------------
1 | import './index.less';
2 |
--------------------------------------------------------------------------------
/src/core/styles/index.less:
--------------------------------------------------------------------------------
1 | @import "./themes/default";
2 | @import "./core/index";
3 |
--------------------------------------------------------------------------------
/src/core/styles/mixins/clearfix.less:
--------------------------------------------------------------------------------
1 | // mixins for clearfix
2 | // ------------------------
3 | .clearfix() {
4 | zoom: 1;
5 | &:before,
6 | &:after {
7 | content: "";
8 | display: table;
9 | }
10 | &:after {
11 | clear: both;
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/src/core/styles/mixins/index.less:
--------------------------------------------------------------------------------
1 | // Mixins
2 | // --------------------------------------------------
3 | @import "size";
4 | @import "compatibility";
5 | @import "clearfix";
6 | @import "iconfont";
7 | @import "motion";
8 | @import "reset";
9 |
--------------------------------------------------------------------------------
/src/core/styles/mixins/reset.less:
--------------------------------------------------------------------------------
1 | @import '../themes/default';
2 |
3 | .reset-component() {
4 | font-family: @font-family;
5 | font-size: @font-size-base;
6 | font-variant: tabular-nums;
7 | line-height: @line-height-base;
8 | color: @text-color;
9 | box-sizing: border-box;
10 | margin: 0;
11 | padding: 0;
12 | list-style: none;
13 | }
14 |
--------------------------------------------------------------------------------
/src/core/styles/mixins/size.less:
--------------------------------------------------------------------------------
1 | // Sizing shortcuts
2 |
3 | .size(@width; @height) {
4 | width: @width;
5 | height: @height;
6 | }
7 |
8 | .square(@size) {
9 | .size(@size; @size);
10 | }
11 |
--------------------------------------------------------------------------------
/src/core/styles/themes/default.deperated.less:
--------------------------------------------------------------------------------
1 | // Menu
2 | @menu-dark-item-selected-bg: @menu-dark-item-active-bg;
3 |
4 | // Tabs
5 | @tab-bar-margin: @tabs-bar-margin;
6 | @tab-horizontal-margin: @tabs-horizontal-margin;
7 | @tab-vertical-margin: @tabs-vertical-margin;
8 | @tab-horizontal-padding: @tabs-horizontal-padding;
9 | @tab-vertical-padding: @tabs-vertical-padding;
10 | @tab-scrolling-size: @tabs-scrolling-size;
11 | @tab-highlight-color: @tabs-highlight-color;
12 | @tab-hover-color: @tabs-hover-color;
13 | @tab-active-color: @tabs-active-color;
14 | @tabs-ink-bar-bg-color: @tabs-ink-bar-color;
15 |
--------------------------------------------------------------------------------
/src/core/styles/v2-compatible-reset.js:
--------------------------------------------------------------------------------
1 | import './v2-compatible-reset.less';
2 |
--------------------------------------------------------------------------------
/src/core/trigger/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd trigger style index file
3 | **/
4 | import './index.less';
5 |
--------------------------------------------------------------------------------
/src/core/util/keyCode.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 常用keyCode常量
3 | * @author fuqiangqiang@baidu.com
4 | */
5 | export default {
6 | ZERO: 48,
7 | NINE: 57,
8 |
9 | NUMPAD_ZERO: 96,
10 | NUMPAD_NINE: 105,
11 |
12 | BACKSPACE: 8,
13 | DELETE: 46,
14 | ENTER: 13,
15 |
16 | ARROW_LEFT: 37,
17 | ARROW_UP: 38,
18 | ARROW_RIGHT: 39,
19 | ARROW_DOWN: 40,
20 |
21 | LEFT: 37,
22 | UP: 38,
23 | RIGHT: 39,
24 | DOWN: 40,
25 |
26 | TAB: 9,
27 | ESC: 27,
28 | SPACE: 32
29 | };
30 |
--------------------------------------------------------------------------------
/src/date-picker/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file test
3 | * */
4 | describe('date-picker', () => {
5 | // todo
6 | });
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/date-picker/docs/desc.md:
--------------------------------------------------------------------------------
1 | # DatePicker 日期选择框
2 | 输入或选择日期的控件。
3 |
4 | ## 何时使用
5 | 当用户需要输入一个日期,可以点击标准输入框,弹出日期面板进行选择。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/date-picker/locale/bg_BG.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/bg_BG';
2 | import TimePickerLocale from '../../time-picker/locale/bg_BG';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Избор на дата',
8 | rangePlaceholder: ['Начална', 'Крайна'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/ca_ES.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/ca_ES';
2 | import TimePickerLocale from '../../time-picker/locale/ca_ES';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Seleccionar data',
8 | rangePlaceholder: ['Data inicial', 'Data final'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/cs_CZ.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/cs_CZ';
2 | import TimePickerLocale from '../../time-picker/locale/cs_CZ';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Vybrat datum',
8 | rangePlaceholder: ['Od', 'Do'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/da_DK.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/da_DK';
2 | import TimePickerLocale from '../../time-picker/locale/da_DK';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Vælg dato',
8 | rangePlaceholder: ['Startdato', 'Slutdato'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/de_DE.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/de_DE';
2 | import TimePickerLocale from '../../time-picker/locale/de_DE';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Datum auswählen',
8 | rangePlaceholder: ['Startdatum', 'Enddatum'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/el_GR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/el_GR';
2 | import TimePickerLocale from '../../time-picker/locale/el_GR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Επιλέξτε ημερομηνία',
8 | rangePlaceholder: ['Αρχική ημερομηνία', 'Τελική ημερομηνία'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/en_GB.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/en_GB';
2 | import TimePickerLocale from '../../time-picker/locale/en_GB';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Select date',
8 | rangePlaceholder: ['Start date', 'End date'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/en_US.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd date picker locale file
3 | **/
4 |
5 | import CalendarLocale from '../../calendar/src/locale/en_US';
6 | import TimePickerLocale from '../../time-picker/locale/en_US';
7 |
8 | // Merge into a locale object
9 | export default {
10 | lang: {
11 | placeholder: 'Select date',
12 | rangePlaceholder: ['Start date', 'End date'],
13 | ...CalendarLocale
14 | },
15 | timePickerLocale: {
16 | ...TimePickerLocale
17 | }
18 | };
19 |
--------------------------------------------------------------------------------
/src/date-picker/locale/es_ES.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/es_ES';
2 | import TimePickerLocale from '../../time-picker/locale/es_ES';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Seleccionar fecha',
8 | rangePlaceholder: ['Fecha inicial', 'Fecha final'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/et_EE.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/et_EE';
2 | import TimePickerLocale from '../../time-picker/locale/et_EE';
3 |
4 | // 统一合并为完整的 Locale
5 | export default {
6 | lang: {
7 | placeholder: 'Vali kuupäev',
8 | rangePlaceholder: ['Algus kuupäev', 'Lõpu kuupäev'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/fa_IR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/fa_IR';
2 | import TimePickerLocale from '../../time-picker/locale/fa_IR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'انتخاب تاریخ',
8 | rangePlaceholder: ['تاریخ شروع', 'تاریخ پایان'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/fi_FI.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/fi_FI';
2 | import TimePickerLocale from '../../time-picker/locale/fi_FI';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Valitse päivä',
8 | rangePlaceholder: ['Alku päivä', 'Loppu päivä'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/fr_BE.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/fr_BE';
2 | import TimePickerLocale from '../../time-picker/locale/fr_BE';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Sélectionner une date',
8 | rangePlaceholder: ['Date de début', 'Date de fin'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/fr_FR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/fr_FR';
2 | import TimePickerLocale from '../../time-picker/locale/fr_FR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Sélectionner une date',
8 | rangePlaceholder: ['Date de début', 'Date de fin'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/he_IL.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/he_IL';
2 | import TimePickerLocale from '../../time-picker/locale/he_IL';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'בחר תאריך',
8 | rangePlaceholder: ['תאריך התחלה', 'תאריך סיום'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/hi_IN.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/hi_IN';
2 | import TimePickerLocale from '../../time-picker/locale/hi_IN';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'तारीख़ चुनें',
8 | rangePlaceholder: ['प्रारंभ तिथि', 'समाप्ति तिथि'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/hr_HR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/hr_HR';
2 | import TimePickerLocale from '../../time-picker/locale/hr_HR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Odaberite datum',
8 | rangePlaceholder: ['Početni datum', 'Završni datum'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/hu_HU.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/hu_HU';
2 | import TimePickerLocale from '../../time-picker/locale/hu_HU';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Válasszon dátumot',
8 | rangePlaceholder: ['Kezdő dátum', 'Befejezés dátuma'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/id_ID.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/id_ID';
2 | import TimePickerLocale from '../../time-picker/locale/id_ID';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Pilih tanggal',
8 | rangePlaceholder: ['Mulai tanggal', 'Tanggal akhir'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/is_IS.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/is_IS';
2 | import TimePickerLocale from '../../time-picker/locale/is_IS';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Veldu dag',
8 | rangePlaceholder: ['Upphafsdagur', 'Lokadagur'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/it_IT.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/it_IT';
2 | import TimePickerLocale from '../../time-picker/locale/it_IT';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Selezionare la data',
8 | rangePlaceholder: ['Data d\'inizio', 'Data di fine'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/ja_JP.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/ja_JP';
2 | import TimePickerLocale from '../../time-picker/locale/ja_JP';
3 |
4 | export default {
5 | lang: {
6 | placeholder: '日付を選択',
7 | rangePlaceholder: ['開始日付', '終了日付'],
8 | ...CalendarLocale
9 | },
10 | timePickerLocale: {
11 | ...TimePickerLocale
12 | }
13 | };
14 |
--------------------------------------------------------------------------------
/src/date-picker/locale/kn_IN.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/kn_IN';
2 | import TimePickerLocale from '../../time-picker/locale/kn_IN';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'ದಿನಾಂಕ ಆಯ್ಕೆಮಾಡಿ',
8 | rangePlaceholder: ['ಪ್ರಾರಂಭ ದಿನಾಂಕ', 'ಅಂತಿಮ ದಿನಾಂಕ'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/ko_KR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/ko_KR';
2 | import TimePickerLocale from '../../time-picker/locale/ko_KR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: '날짜 선택',
8 | rangePlaceholder: ['시작일', '종료일'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/ku_IQ.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/ku_IQ';
2 | import TimePickerLocale from '../../time-picker/locale/ku_IQ';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Dîrok hilbijêre',
8 | rangePlaceholder: ['Dîroka destpêkê', 'Dîroka dawîn'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/lv_LV.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/lv_LV';
2 | import TimePickerLocale from '../../time-picker/locale/lv_LV';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Izvēlieties datumu',
8 | rangePlaceholder: ['Sākuma datums', 'Beigu datums'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/mn_MN.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/mn_MN';
2 | import TimePickerLocale from '../../time-picker/locale/mn_MN';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Огноо сонгох',
8 | rangePlaceholder: ['Эхлэх огноо', 'Дуусах огноо'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/nb_NO.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/nb_NO';
2 | import TimePickerLocale from '../../time-picker/locale/nb_NO';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Velg dato',
8 | rangePlaceholder: ['Startdato', 'Sluttdato'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/nl_BE.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/nl_BE';
2 | import TimePickerLocale from '../../time-picker/locale/nl_BE';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Selecteer datum',
8 | rangePlaceholder: ['Begin datum', 'Eind datum'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/nl_NL.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/nl_NL';
2 | import TimePickerLocale from '../../time-picker/locale/nl_NL';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Selecteer datum',
8 | rangePlaceholder: ['Begin datum', 'Eind datum'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/pl_PL.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/pl_PL';
2 | import TimePickerLocale from '../../time-picker/locale/pl_PL';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Wybierz datę',
8 | rangePlaceholder: ['Data początkowa', 'Data końcowa'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/pt_BR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/pt_BR';
2 | import TimePickerLocale from '../../time-picker/locale/pt_BR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Selecionar data',
8 | rangePlaceholder: ['Data de início', 'Data de fim'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/ru_RU.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/ru_RU';
2 | import TimePickerLocale from '../../time-picker/locale/ru_RU';
3 |
4 | export default {
5 | lang: {
6 | placeholder: 'Выберите дату',
7 | rangePlaceholder: ['Начальная дата', 'Конечная дата'],
8 | ...CalendarLocale
9 | },
10 | timePickerLocale: {
11 | ...TimePickerLocale
12 | }
13 | };
14 |
--------------------------------------------------------------------------------
/src/date-picker/locale/sk_SK.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/sk_SK';
2 | import TimePickerLocale from '../../time-picker/locale/sk_SK';
3 |
4 | // 统一合并为完整的 Locale
5 | export default {
6 | lang: {
7 | placeholder: 'Vybrať dátum',
8 | rangePlaceholder: ['Od', 'Do'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/sr_RS.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/sr_RS';
2 | import TimePickerLocale from '../../time-picker/locale/sr_RS';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Izaberite datum',
8 | rangePlaceholder: ['Početni datum', 'Krajnji datum'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/sv_SE.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/sv_SE';
2 | import TimePickerLocale from '../../time-picker/locale/sv_SE';
3 |
4 | export default {
5 | lang: {
6 | placeholder: 'Välj datum',
7 | rangePlaceholder: ['Startdatum', 'Slutdatum'],
8 | ...CalendarLocale
9 | },
10 | timePickerLocale: {
11 | ...TimePickerLocale
12 | }
13 | };
14 |
--------------------------------------------------------------------------------
/src/date-picker/locale/th_TH.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/th_TH';
2 | import TimePickerLocale from '../../time-picker/locale/th_TH';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'เลือกวันที่',
8 | rangePlaceholder: ['วันเริ่มต้น', 'วันสิ้นสุด'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/tr_TR.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/tr_TR';
2 | import TimePickerLocale from '../../time-picker/locale/tr_TR';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Tarih Seç',
8 | rangePlaceholder: ['Başlangıç Tarihi', 'Bitiş Tarihi'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/uk_UA.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/uk_UA';
2 | import TimePickerLocale from '../../time-picker/locale/uk_UA';
3 |
4 | export default {
5 | lang: {
6 | placeholder: 'Оберіть дату',
7 | rangePlaceholder: ['Початкова дата', 'Кінцева дата'],
8 | ...CalendarLocale
9 | },
10 | timePickerLocale: {
11 | ...TimePickerLocale
12 | }
13 | };
14 |
--------------------------------------------------------------------------------
/src/date-picker/locale/vi_VN.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/vi_VN';
2 | import TimePickerLocale from '../../time-picker/locale/vi_VN';
3 |
4 | // Merge into a locale object
5 | export default {
6 | lang: {
7 | placeholder: 'Chọn thời điểm',
8 | rangePlaceholder: ['Ngày bắt đầu', 'Ngày kết thúc'],
9 | ...CalendarLocale
10 | },
11 | timePickerLocale: {
12 | ...TimePickerLocale
13 | }
14 | };
15 |
--------------------------------------------------------------------------------
/src/date-picker/locale/zh_TW.ts:
--------------------------------------------------------------------------------
1 | import CalendarLocale from '../../calendar/src/locale/zh_TW';
2 | import TimePickerLocale from '../../time-picker/locale/zh_TW';
3 |
4 | const locale = {
5 | lang: {
6 | placeholder: '請選擇日期',
7 | rangePlaceholder: ['開始日期', '結束日期'],
8 | ...CalendarLocale
9 | },
10 | timePickerLocale: {
11 | ...TimePickerLocale
12 | }
13 | };
14 |
15 | locale.lang.ok = '確 定';
16 |
17 | // All settings at:
18 | // https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json
19 |
20 | export default locale;
21 |
--------------------------------------------------------------------------------
/src/date-picker/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
5 |
6 | import '../../input/style';
7 | import '../../time-picker/style';
8 | import '../../tag/style';
9 |
--------------------------------------------------------------------------------
/src/date-picker/style/index.less:
--------------------------------------------------------------------------------
1 | @import "../../core/styles/themes/default";
2 | @import "../../core/styles/mixins/index";
3 | @import '../../input/style/mixin';
4 | @import '../../button/style/mixin';
5 |
6 | @calendar-prefix-cls: ~'@{ant-prefix}-calendar';
7 | @calendar-timepicker-prefix-cls: ~'@{ant-prefix}-calendar-time-picker';
8 |
9 | @import './picker';
10 | @import './calendar';
11 | @import './monthPanel';
12 | @import './yearPanel';
13 | @import './decadePanel';
14 | @import './monthPicker';
15 | @import './rangePicker';
16 | @import './timePicker';
17 | @import './weekPicker';
18 |
--------------------------------------------------------------------------------
/src/date-picker/style/monthPicker.less:
--------------------------------------------------------------------------------
1 | .@{calendar-prefix-cls}-month {
2 | .@{calendar-prefix-cls}-month-header-wrap {
3 | position: relative;
4 | height: 288px;
5 | }
6 | .@{calendar-prefix-cls}-month-panel,
7 | .@{calendar-prefix-cls}-year-panel {
8 | top: 0;
9 | height: 100%;
10 | }
11 | }
12 |
--------------------------------------------------------------------------------
/src/descriptions/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('descriptions', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/descriptions/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Descriptions 描述列表
2 | 成组展示多个只读字段。
3 |
4 | ## 何时使用
5 | 常见于详情页的信息展示。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/descriptions/interface.ts:
--------------------------------------------------------------------------------
1 | import {Screens} from '../core/util/responsiveObserve';
2 | export interface State {
3 | bordered: boolean,
4 | title?: string,
5 | size: string,
6 | layout: string,
7 | column: object,
8 | screens: Screens,
9 | }
--------------------------------------------------------------------------------
/src/descriptions/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/divider/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | dashed | 是否虚线 | Boolean | false |
6 | | orientation | 分割线标题的位置 | enum: `left` `right` | `center` |
7 | | type | 水平还是垂直类型 | enum: `horizontal` `vertical` | `horizontal` |
8 |
--------------------------------------------------------------------------------
/src/divider/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('santd-divider', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/divider/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Divider 分割线
2 | 区隔内容的分割线。
3 |
4 | ## 何时使用
5 |
6 | * 对不同章节的文本段落进行分割。
7 | * 对行内文字/链接进行分割,例如表格的操作列。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/divider/docs/vertical.md:
--------------------------------------------------------------------------------
1 |
2 | #### 垂直分割线
3 | 使用 `type="vertical"` 设置为行内的垂直分割线。
4 |
5 |
6 | ```html
7 |
8 |
9 | Text
10 |
11 |
Link
12 |
13 |
Link
14 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/divider/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {}
2 |
3 | export interface State {
4 | /**
5 | * 水平或者垂直类型
6 | */
7 | type: 'horizontal' | 'vertical';
8 | }
9 |
10 | export interface Computed {
11 | /**
12 | * class集合
13 | */
14 | classes: () => string[];
15 | }
--------------------------------------------------------------------------------
/src/divider/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/drawer/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 drawer
3 | * @author baozhixin
4 | */
5 |
6 | describe('drawer', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/drawer/docs/head.md:
--------------------------------------------------------------------------------
1 | # Drawer 抽屉
2 |
3 | 抽屉从父窗体边缘滑入,覆盖住部分父窗体内容。用户在抽屉内操作时不必离开当前任务,操作完成后,可以平滑地回到到原任务。
4 |
5 | ## 何时使用
6 |
7 | - 当需要一个附加的面板来控制父窗体内容,这个面板在需要时呼出。比如,控制界面展示样式,往界面中添加内容。
8 | - 当需要在当前任务流中插入临时任务,创建或预览附加内容。比如展示协议条款,创建子对象。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/drawer/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/dropdown/docs/head.md:
--------------------------------------------------------------------------------
1 | # Dropdown 下拉菜单
2 |
3 | 向下弹出的列表。
4 |
5 | ## 何时使用
6 |
7 | 当页面上的操作命令过多时,用此组件可以收纳操作元素。点击或移入触点,会出现一个下拉菜单。可在列表中进行选择,并执行相应的命令。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/dropdown/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd dropdown index file
3 | */
4 |
5 | import Dropdown from './Dropdown';
6 | import DropdownButton from './DropdownButton';
7 |
8 | Dropdown.Button = DropdownButton;
9 | export default Dropdown;
10 |
--------------------------------------------------------------------------------
/src/dropdown/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 提供必要样式的引用
3 | */
4 | import './index.less';
5 |
--------------------------------------------------------------------------------
/src/empty/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | description | 自定义描述内容 | string \| slot \| bool | - |
6 | | imageStyle | 图片样式 | string | - |
7 | | image | 设置显示图片,为 string 时表示自定义图片地址。 | string | `Empty.PRESENTED_IMAGE_DEFAULT` |
8 |
--------------------------------------------------------------------------------
/src/empty/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 empty 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('empty', () => {});
--------------------------------------------------------------------------------
/src/empty/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 简单的展示。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/empty/docs/choose.md:
--------------------------------------------------------------------------------
1 |
2 | #### 选择图片
3 | 可以通过设置 image 为 Empty.PRESENTED_IMAGE_SIMPLE 选择另一种风格的图片。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
26 | ```
27 |
--------------------------------------------------------------------------------
/src/empty/docs/head.md:
--------------------------------------------------------------------------------
1 | # Empty 空状态
2 | 空状态时的展示占位图。
3 |
4 | ## 何时使用
5 |
6 | * 当目前没有数据时,用于显式的用户提示。
7 | * 初始化场景时的引导创建流程。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/empty/docs/nodescription.md:
--------------------------------------------------------------------------------
1 |
2 | #### 无描述
3 | 无描述展示。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/empty/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {};
2 |
3 | export interface State {
4 | /**
5 | * 组件名
6 | */
7 | componentName: 'Empty';
8 |
9 | /**
10 | * img svg
11 | */
12 | image: string;
13 |
14 | /**
15 | * img svg
16 | */
17 | simpleEmptyImg: string;
18 | /**
19 | * Mentions组件使用
20 | */
21 | small?: boolean;
22 | };
23 |
24 | export interface Computed {};
--------------------------------------------------------------------------------
/src/empty/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/form/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 form 测试文件
3 | * @author fuqiangqiang
4 | */
5 |
6 | describe('form', () => {
7 |
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/form/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Form 表单
2 |
3 | 具有数据收集、校验和提交功能的表单,包含复选框、单选框、输入框、下拉选择框等元素。
4 |
5 | ## 表单
6 |
7 | 我们为 `form` 提供了以下三种排列方式:
8 |
9 | * 水平排列:标签和表单控件水平排列;(默认)
10 | * 垂直排列:标签和表单控件上下垂直排列;
11 | * 行内排列:表单项水平行内排列。
12 |
13 | ## 表单域
14 |
15 | 表单一定会包含表单域,表单域可以是输入控件,标准表单域,标签,下拉菜单,文本域等。
16 |
17 | 这里我们封装了表单域 ``
18 |
19 | ```html
20 |
21 | ...
22 |
23 | ```
24 |
25 | ## 代码演示
26 |
--------------------------------------------------------------------------------
/src/form/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 form
3 | * @author fuqiangqiang
4 | */
5 |
6 | import Form from './Form';
7 | import FormItem from './FormItem';
8 |
9 | Form.FormItem = FormItem;
10 |
11 | export default Form;
--------------------------------------------------------------------------------
/src/form/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css文件加载
3 | */
4 |
5 | import './index.less';
6 |
7 | // style dependencies
8 | import '../../grid/style';
9 |
--------------------------------------------------------------------------------
/src/grid/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('grid', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/grid/docs/head.md:
--------------------------------------------------------------------------------
1 | # Grid 栅格
2 |
3 | 24 栅格系统
4 |
--------------------------------------------------------------------------------
/src/grid/docs/sort.md:
--------------------------------------------------------------------------------
1 |
2 | #### 栅格排序
3 | 列排序。
4 | 通过使用 `push` 和 `pull` 类就可以很容易的改变列(column)的顺序。
5 |
6 |
7 |
8 | ```html
9 |
10 |
11 |
12 | col-18 col-push-6
13 | col-6 col-pull-18
14 |
15 |
16 |
17 |
27 | ```
28 |
29 |
30 |
--------------------------------------------------------------------------------
/src/grid/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 grid
3 | */
4 | import './style/index.less';
5 | import Row from './Row';
6 | import Col from './Col';
7 |
8 | export {Row, Col};
9 | export default {Row, Col};
10 |
--------------------------------------------------------------------------------
/src/grid/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/icon/docs/colorIcon.md:
--------------------------------------------------------------------------------
1 |
2 | #### 多色图标
3 | 通过设置`theme`的属性为 `twoTone` 来渲染双色图标,并且可以设置主题色。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/icon/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Icon 图标
2 | 语义化的矢量图形。
3 |
4 |
5 | ## 图标列表
6 |
--------------------------------------------------------------------------------
/src/icon/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/icon/style/index.less:
--------------------------------------------------------------------------------
1 | @import "../../core/styles/index";
2 | @import "../../core/styles/mixins/index";
3 |
--------------------------------------------------------------------------------
/src/icon/twoTonePrimaryColor.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd icon twoTonePrimaryColor
3 | * @author mayihui@baidu.com
4 | **/
5 |
6 | import icon from './Icon';
7 |
8 | export function setTwoToneColor(primaryColor: string) {
9 | return icon.setTwoToneColors({
10 | primaryColor
11 | });
12 | }
13 |
14 | export function getTwoToneColor() {
15 | const colors = icon.getTwoToneColors();
16 | return colors.primaryColor;
17 | }
18 |
--------------------------------------------------------------------------------
/src/image/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | alt | 图像描述 | string | - |
6 | | fallback | 加载失败容错地址 | string | - |
7 | | height | 图像高度 | string \| number | - |
8 | | preview | 预览参数,为 `false` 时禁用 | boolean | true |
9 | | src | 图片地址 | string | - |
10 | | width | 图像宽度 | string \| number | - |
11 |
12 | 其他属性见 [<img>](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#Attributes)
--------------------------------------------------------------------------------
/src/image/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本用法
3 | 单击图像可以放大显示。
4 |
5 |
6 | ```html
7 |
8 |
9 |
12 |
13 |
14 |
15 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/image/docs/head.md:
--------------------------------------------------------------------------------
1 | # Image 图片
2 |
3 | 可预览的图片。
4 |
5 | ## 何时使用
6 | - 需要展示图片时使用。
7 | - 加载大图时显示 loading 或加载失败时容错处理。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/image/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file image 组件入口
3 | */
4 |
5 | import Image from './Image';
6 |
7 | export default Image;
8 |
--------------------------------------------------------------------------------
/src/image/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
--------------------------------------------------------------------------------
/src/input-number/docs/autoFocus.md:
--------------------------------------------------------------------------------
1 |
2 | #### autoFocus
3 |
4 | 自动获得焦点
5 |
6 |
7 |
8 | ```html
9 |
10 |
11 |
12 |
13 |
14 |
27 | ```
28 |
--------------------------------------------------------------------------------
/src/input-number/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 数字输入框。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/input-number/docs/head.md:
--------------------------------------------------------------------------------
1 | # InputNumber 数字输入框
2 |
3 | 通过鼠标或键盘,输入范围内的数值。
4 |
5 | ## 何时使用
6 | 当需要获取标准数值时。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/input-number/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
--------------------------------------------------------------------------------
/src/input/docs/allow-clear.md:
--------------------------------------------------------------------------------
1 |
2 | #### 带移除图标
3 | 带移除图标的输入框,点击图标删除所有内容
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/input/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本形式
3 | 基本使用
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/input/docs/head.md:
--------------------------------------------------------------------------------
1 | # Input 输入框
2 |
3 | 通过鼠标或键盘输入内容,是最基础的表单域的包装。
4 |
5 | ## 何时使用
6 | - 需要用户输入表单域内容时。
7 | - 提供组合型输入框,带搜索的输入框,还可以进行大小选择。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/input/docs/password.md:
--------------------------------------------------------------------------------
1 |
2 | #### 密码框
3 | 密码框
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/input/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file input 入口文件
3 | */
4 |
5 | import Input from './Input';
6 | import Search from './InputSearch';
7 | import TextArea from './Textarea';
8 | import Group from './Group';
9 | import Password from './InputPassword';
10 |
11 | Input.Search = Search;
12 | Input.TextArea = TextArea;
13 | Input.Group = Group;
14 | Input.Password = Password;
15 |
16 | export default Input;
17 |
--------------------------------------------------------------------------------
/src/input/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
7 | import '../../button/style';
8 |
--------------------------------------------------------------------------------
/src/layout/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Layout 入口文件
3 | */
4 |
5 | import Layout from './Layout';
6 | import Sider from './Sider';
7 |
8 | Layout.Sider = Sider;
9 |
10 | export default Layout;
11 |
--------------------------------------------------------------------------------
/src/layout/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file layout less入口文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
--------------------------------------------------------------------------------
/src/layout/style/light.less:
--------------------------------------------------------------------------------
1 | .@{layout-prefix-cls} {
2 | &-sider {
3 | &-light {
4 | background: @layout-sider-background-light;
5 | }
6 | &-light &-trigger {
7 | color: @layout-trigger-color-light;
8 | background: @layout-trigger-background-light;
9 | }
10 | &-light &-zero-width-trigger {
11 | color: @layout-trigger-color-light;
12 | background: @layout-trigger-background-light;
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/src/list/docs/desc.md:
--------------------------------------------------------------------------------
1 | # List 列表
2 | 通用列表。
3 |
4 | ## 何时使用
5 | 最基础的列表展示,可承载文字、列表、图片、段落,常用于后台数据展示页面。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/list/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
--------------------------------------------------------------------------------
/src/locale-provider/docs/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file docs入口文件
3 | */
4 |
5 | import Base from 'santd/base';
6 | import Desc from './desc.md';
7 | import Basic from './basic.md';
8 | import Locale from './locale.md';
9 |
10 | export default class extends Base {
11 | static components = {
12 | desc: Desc,
13 | basic: Basic,
14 | locale: Locale
15 | };
16 |
17 | static template = /* html */ `
18 |
19 |
20 |
21 |
22 |
23 | `;
24 | };
25 |
--------------------------------------------------------------------------------
/src/locale-provider/en_US.ts:
--------------------------------------------------------------------------------
1 | import defaultLocale from './default';
2 |
3 | export default defaultLocale;
4 |
--------------------------------------------------------------------------------
/src/locale-provider/interface.ts:
--------------------------------------------------------------------------------
1 | // import receiver from "./receiver";
2 | import localeProvider from './index';
3 |
4 | export interface ReceiverComputed {
5 | // locale: (this: receiver) => {};
6 |
7 | // localeCode: (this: receiver) => string;
8 | };
9 |
10 | export interface Messages {
11 | santd_add_locale_receiver: (this: localeProvider, payload: {value: never}) => void;
12 | };
13 |
14 | export interface State {
15 | locale: {
16 | [key: string]: JSONValue;
17 | };
18 |
19 | localeProvider: boolean;
20 | };
--------------------------------------------------------------------------------
/src/mention/PlaceHolder.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 Nav
3 | * @author zhangtingting12
4 | */
5 | import './style/index.less';
6 | import Base from 'santd/base';
7 |
8 | export default class PlaceHolder extends Base {
9 | static template = `
10 |
13 | `
14 | };
15 |
--------------------------------------------------------------------------------
/src/mention/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('mention', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/mention/docs/head.md:
--------------------------------------------------------------------------------
1 |
2 | # Mention 提及
3 |
4 | 提及组件。
5 |
6 | ## 何时使用
7 | 用于在输入中提及某人或某事,常用于发布、聊天或评论功能。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/mention/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd metion component file
3 | **/
4 | import Mention from './Mention';
5 | import Nav from './Nav';
6 |
7 | Mention.Nav = Nav;
8 | export default Mention;
9 |
--------------------------------------------------------------------------------
/src/mention/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/menu/Divider.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file divider 分割线
3 | * @author fuqiangqiang@baidu.com
4 | */
5 |
6 | import Base from 'santd/base';
7 | import {classCreator} from '../core/util';
8 | const prefixCls = classCreator('menu')();
9 |
10 | export default class Divider extends Base {
11 | static template = /* html */ `
12 |
13 | `
14 | };
15 |
16 | export type TDivider = typeof Divider;
17 |
--------------------------------------------------------------------------------
/src/menu/docs/head.md:
--------------------------------------------------------------------------------
1 |
2 | # Menu 导航菜单
3 |
4 | 为页面和功能提供导航的菜单列表。
5 |
6 | ## 何时使用
7 | 导航菜单是一个网站的灵魂,用户依赖导航在各个页面中进行跳转。一般分为顶部导航和侧边导航,顶部导航提供全局性的类目和功能,侧边导航提供多级结构来收纳和排列网站架构。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/menu/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file menu入口文件
3 | * @author fuqiangqiang@baidu.com
4 | */
5 | import Menu from './Menu';
6 | import MenuSub from './SubMenu';
7 | import MenuItem from './MenuItem';
8 | import MenuItemGroup from './MenuItemGroup';
9 | import MenuDivider from './Divider';
10 |
11 | Menu.Sub = MenuSub;
12 | Menu.Item = MenuItem;
13 | Menu.MenuItemGroup = MenuItemGroup;
14 | Menu.MenuDivider = MenuDivider;
15 |
16 | export default Menu;
17 |
--------------------------------------------------------------------------------
/src/menu/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/message/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 message
3 | * @author baozhixin
4 | */
5 |
6 | describe('message', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/message/docs/head.md:
--------------------------------------------------------------------------------
1 | # Message 全局提示
2 |
3 | 全局展示操作反馈信息。
4 |
5 | ## 何时使用
6 |
7 | - 可提供成功、警告和错误等反馈信息。
8 | - 顶部居中显示并自动消失,是一种不打断用户操作的轻量级提示方式。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/message/docs/info.md:
--------------------------------------------------------------------------------
1 |
2 | #### 普通提示
3 | 信息提醒反馈。
4 |
5 |
6 | ```html
7 |
8 |
9 | Display normal message
10 |
11 |
12 |
13 |
27 | ```
28 |
--------------------------------------------------------------------------------
/src/message/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/modal/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 modal
3 | * @author baozhixin
4 | */
5 |
6 | describe('modal', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/modal/docs/head.md:
--------------------------------------------------------------------------------
1 | # Modal 对话框
2 |
3 | 模态对话框。
4 |
5 | ## 何时使用
6 |
7 | 需要用户处理事务,又不希望跳转页面以致打断工作流程时,可以使用 `modal` 在当前页面正中打开一个浮层,承载相应的操作。
8 |
9 | 另外当需要一个简洁的确认框询问用户时,可以使用精心封装好的 `modal.confirm()` 等方法。
10 |
11 | ## 代码演示
12 |
--------------------------------------------------------------------------------
/src/modal/style/index.less:
--------------------------------------------------------------------------------
1 | @import "../../core/styles/themes/default";
2 | @import "../../core/styles/mixins/index";
3 |
4 | @import "./modal";
5 | @import "./confirm";
6 |
--------------------------------------------------------------------------------
/src/modal/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/notification/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 notification
3 | * @author baozhixin
4 | */
5 |
6 | describe('notification', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/notification/docs/head.md:
--------------------------------------------------------------------------------
1 | # Notification 通知提醒框
2 |
3 | 全局展示通知提醒信息。
4 |
5 | ## 何时使用
6 |
7 | 在系统四个角显示通知提醒信息。经常用于以下情况:
8 |
9 | - 较为复杂的通知内容。
10 | - 带有交互的通知,给出用户下一步的行动点。
11 | - 系统主动推送。
12 |
13 | ## 代码演示
14 |
--------------------------------------------------------------------------------
/src/notification/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
5 |
--------------------------------------------------------------------------------
/src/page-header/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | title | 自定义标题文字 | String | - |
6 | | subTitle | 自定义的二级标题文字 | String | - |
7 | | avatar | 标题栏旁的头像,参考 `Avatar` 组件 | Object | - |
8 | | backIcon | 自定义 back icon ,如果为 false 不渲染 back icon | slot \| boolean | `` |
9 | | tags | title 旁的 tag 列表 | slot | - |
10 | | extra | 操作区,位于 title 行的行尾 | slot | - |
11 | | breadcrumb | 面包屑的配置 | 详见Breadcrumb | - |
12 | | footer | PageHeader 的页脚,一般用于渲染 TabBar | slot | - |
13 | | onBack | 返回按钮的点击事件 | `()=>void` | `()=>history.back()` |
14 |
--------------------------------------------------------------------------------
/src/page-header/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 page-header 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('page-header', () => {});
--------------------------------------------------------------------------------
/src/page-header/docs/head.md:
--------------------------------------------------------------------------------
1 | # PageHeader 页头
2 |
3 | 页头可用于声明页面主题、展示用户所关注的页面重要信息,以及承载与当前页相关的操作项(包含页面级操作,页面间导航等)
4 |
5 | ## 何时使用
6 |
7 | 当需要使用户快速理解当前页是什么以及方便用户使用页面功能时使用,通常也可被用作页面间导航。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/page-header/interface.ts:
--------------------------------------------------------------------------------
1 | import { SlotChild } from "santd/base";
2 | import {TBreadcrumb} from '../breadcrumb';
3 |
4 | export interface Props {
5 | title?: string;
6 | subTitle?: string;
7 | avatar?: object;
8 | backIcon?: SlotChild | boolean;
9 | tags?: SlotChild;
10 | extra?: SlotChild;
11 | breadcrumb?: TBreadcrumb;
12 | footer?: SlotChild;
13 | onBack?: ()=>void;
14 | }
--------------------------------------------------------------------------------
/src/page-header/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/pagination/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 基础分页
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/pagination/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Pagination 分页
2 |
3 | 采用分页的形式分隔长列表,每次只加载一个页面。
4 |
5 | ## 何时使用
6 |
7 | * 当加载/渲染所有数据将花费很多时间时;
8 | * 可切换页码浏览数据。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/pagination/docs/many.md:
--------------------------------------------------------------------------------
1 |
2 | #### 更多
3 | 更多分页
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/pagination/docs/simple.md:
--------------------------------------------------------------------------------
1 |
2 | #### 简洁
3 | 简单的翻页。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/pagination/locale/ar_EG.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ الصفحة',
4 | jump_to: 'الذهاب إلى',
5 | jump_to_confirm: 'تأكيد',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'الصفحة السابقة',
10 | next_page: 'الصفحة التالية',
11 | prev_5: 'خمس صفحات سابقة',
12 | next_5: 'خمس صفحات تالية',
13 | prev_3: 'ثلاث صفحات سابقة',
14 | next_3: 'ثلاث صفحات تالية'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/bg_BG.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ страница',
4 | jump_to: 'Към',
5 | jump_to_confirm: 'потвърждавам',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Предишна страница',
10 | next_page: 'Следваща страница',
11 | prev_5: 'Предишни 5 страници',
12 | next_5: 'Следващи 5 страници',
13 | prev_3: 'Предишни 3 страници',
14 | next_3: 'Следващи 3 страници'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ca_ES.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ pàgina',
4 | jump_to: 'Anar a',
5 | jump_to_confirm: 'Confirma',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Pàgina prèvia',
10 | next_page: 'Pàgina següent',
11 | prev_5: '5 pàgines prèvies',
12 | next_5: '5 pàgines següents',
13 | prev_3: '3 pàgines prèvies',
14 | next_3: '3 pàgines següents'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/cs_CZ.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ strana',
4 | jump_to: 'Přejít',
5 | jump_to_confirm: 'potvrdit',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Předchozí strana',
10 | next_page: 'Následující strana',
11 | prev_5: 'Předchozích 5 stran',
12 | next_5: 'Následujících 5 stran',
13 | prev_3: 'Předchozí 3 strany',
14 | next_3: 'Následující 3 strany'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/da_DK.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ side',
4 | jump_to: 'Gå til',
5 | jump_to_confirm: 'bekræft',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Forrige Side',
10 | next_page: 'Næste Side',
11 | prev_5: 'Forrige 5 Sider',
12 | next_5: 'Næste 5 Sider',
13 | prev_3: 'Forrige 3 Sider',
14 | next_3: 'Næste 3 Sider'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/de_DE.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ Seite',
4 | jump_to: 'Gehe zu',
5 | jump_to_confirm: 'bestätigen',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Vorherige Seite',
10 | next_page: 'Nächste Seite',
11 | prev_5: '5 Seiten zurück',
12 | next_5: '5 Seiten vor',
13 | prev_3: '3 Seiten zurück',
14 | next_3: '3 Seiten vor'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/el_GR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ σελίδα',
4 | jump_to: 'Μετάβαση',
5 | jump_to_confirm: 'επιβεβαιώνω',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Προηγούμενη Σελίδα',
10 | next_page: 'Επόμενη Σελίδα',
11 | prev_5: 'Προηγούμενες 5 Σελίδες',
12 | next_5: 'Επόμενες 5 σελίδες',
13 | prev_3: 'Προηγούμενες 3 Σελίδες',
14 | next_3: 'Επόμενες 3 Σελίδες'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/en_GB.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ page',
4 | jump_to: 'Goto',
5 | jump_to_confirm: 'confirm',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Previous Page',
10 | next_page: 'Next Page',
11 | prev_5: 'Previous 5 Pages',
12 | next_5: 'Next 5 Pages',
13 | prev_3: 'Previous 3 Pages',
14 | next_3: 'Next 3 Pages'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/en_US.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ page',
4 | jump_to: 'Goto',
5 | jump_to_confirm: 'confirm',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Previous Page',
10 | next_page: 'Next Page',
11 | prev_5: 'Previous 5 Pages',
12 | next_5: 'Next 5 Pages',
13 | prev_3: 'Previous 3 Pages',
14 | next_3: 'Next 3 Pages'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/es_ES.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ página',
4 | jump_to: 'Ir a',
5 | jump_to_confirm: 'confirmar',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Página anterior',
10 | next_page: 'Página siguiente',
11 | prev_5: '5 páginas previas',
12 | next_5: '5 páginas siguientes',
13 | prev_3: '3 páginas previas',
14 | next_3: '3 páginas siguientes'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/et_EE.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ leheküljel',
4 | jump_to: 'Hüppa',
5 | jump_to_confirm: 'Kinnitage',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Eelmine leht',
10 | next_page: 'Järgmine leht',
11 | prev_5: 'Eelmised 5 lehekülge',
12 | next_5: 'Järgmised 5 lehekülge',
13 | prev_3: 'Eelmised 3 lehekülge',
14 | next_3: 'Järgmised 3 lehekülge'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/fa_IR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ صفحه',
4 | jump_to: 'برو به',
5 | jump_to_confirm: 'تایید',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'صفحه قبلی',
10 | next_page: 'صفحه بعدی',
11 | prev_5: '۵ صفحه قبلی',
12 | next_5: '۵ صفحه بعدی',
13 | prev_3: '۳ صفحه قبلی',
14 | next_3: '۳ صفحه بعدی'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/fi_FI.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ sivu',
4 | jump_to: 'Mene',
5 | jump_to_confirm: 'Potvrdite',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Edellinen sivu',
10 | next_page: 'Seuraava sivu',
11 | prev_5: 'Edelliset 5 sivua',
12 | next_5: 'Seuraavat 5 sivua',
13 | prev_3: 'Edelliset 3 sivua',
14 | next_3: 'Seuraavat 3 sivua'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/fr_BE.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ page',
4 | jump_to: 'Aller à',
5 | jump_to_confirm: 'confirmer',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Page précédente',
10 | next_page: 'Page suivante',
11 | prev_5: '5 Pages précédentes',
12 | next_5: '5 Pages suivantes',
13 | prev_3: '3 Pages précédentes',
14 | next_3: '3 Pages suivantes'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/fr_FR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ page',
4 | jump_to: 'Aller à',
5 | jump_to_confirm: 'confirmer',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Page précédente',
10 | next_page: 'Page suivante',
11 | prev_5: '5 Pages précédentes',
12 | next_5: '5 Pages suivantes',
13 | prev_3: '3 Pages précédentes',
14 | next_3: '3 Pages suivantes'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/he_IL.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ עמוד',
4 | jump_to: 'עבור אל',
5 | jump_to_confirm: 'אישור',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'העמוד הקודם',
10 | next_page: 'העמוד הבא',
11 | prev_5: '5 עמודים קודמים',
12 | next_5: '5 עמודים הבאים',
13 | prev_3: '3 עמודים קודמים',
14 | next_3: '3 עמודים הבאים'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/hi_IN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ पृष्ठ',
4 | jump_to: 'इस पर चलें',
5 | jump_to_confirm: 'पुष्टि करें',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'पिछला पृष्ठ',
10 | next_page: 'अगला पृष्ठ',
11 | prev_5: 'पिछले 5 पृष्ठ',
12 | next_5: 'अगले 5 पृष्ठ',
13 | prev_3: 'पिछले 3 पृष्ठ',
14 | next_3: 'अगले 3 पेज'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/hr_HR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ str',
4 | jump_to: 'Idi na',
5 | jump_to_confirm: 'potvrdi',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Prijašnja stranica',
10 | next_page: 'Sljedeća stranica',
11 | prev_5: 'Prijašnjih 5 stranica',
12 | next_5: 'Sljedećih 5 stranica',
13 | prev_3: 'Prijašnje 3 stranice',
14 | next_3: 'Sljedeće 3 stranice'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/hu_HU.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ oldal', // '/ page',
4 | jump_to: 'Ugrás', // 'Goto',
5 | jump_to_confirm: 'megerősít', // 'confirm',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Előző oldal', // 'Previous Page',
10 | next_page: 'Következő oldal', // 'Next Page',
11 | prev_5: 'Előző 5 oldal', // 'Previous 5 Pages',
12 | next_5: 'Következő 5 oldal', // 'Next 5 Pages',
13 | prev_3: 'Előző 3 oldal', // 'Previous 3 Pages',
14 | next_3: 'Következő 3 oldal' // 'Next 3 Pages',
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/id_ID.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ halaman',
4 | jump_to: 'Menuju',
5 | jump_to_confirm: 'konfirmasi',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Halaman Sebelumnya',
10 | next_page: 'Halaman Berikutnya',
11 | prev_5: '5 Halaman Sebelumnya',
12 | next_5: '5 Halaman Berikutnya',
13 | prev_3: '3 Halaman Sebelumnya',
14 | next_3: '3 Halaman Berikutnya'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/is_IS.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ síðu',
4 | jump_to: 'Síða',
5 | jump_to_confirm: 'staðfest',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Fyrri síða',
10 | next_page: 'Næsta síða',
11 | prev_5: 'Til baka 5 síður',
12 | next_5: 'Áfram 5 síður',
13 | prev_3: 'Til baka 3 síður',
14 | next_3: 'Áfram 3 síður'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/it_IT.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ pagina',
4 | jump_to: 'vai a',
5 | jump_to_confirm: 'Conferma',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Pagina precedente',
10 | next_page: 'Pagina successiva',
11 | prev_5: 'Precedente 5 pagine',
12 | next_5: 'Prossime 5 pagine',
13 | prev_3: 'Precedente 3 pagine',
14 | next_3: 'Prossime 3 pagine'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ja_JP.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ ページ',
4 | jump_to: '移動',
5 | jump_to_confirm: '確認する',
6 | page: 'ページ',
7 |
8 | // Pagination.jsx
9 | prev_page: '前のページ',
10 | next_page: '次のページ',
11 | prev_5: '前 5ページ',
12 | next_5: '次 5ページ',
13 | prev_3: '前 3ページ',
14 | next_3: '次 3ページ'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/kn_IN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ ಪುಟ',
4 | jump_to: 'ಜಿಗಿತವನ್ನು',
5 | jump_to_confirm: 'ಖಚಿತಪಡಿಸಲು ಜಿಗಿತವನ್ನು',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'ಹಿಂದಿನ ಪುಟ',
10 | next_page: 'ಮುಂದಿನ ಪುಟ',
11 | prev_5: 'ಹಿಂದಿನ 5 ಪುಟಗಳು',
12 | next_5: 'ಮುಂದಿನ 5 ಪುಟಗಳು',
13 | prev_3: 'ಹಿಂದಿನ 3 ಪುಟಗಳು',
14 | next_3: 'ಮುಂದಿನ 3 ಪುಟಗಳು'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ko_KR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ 쪽',
4 | jump_to: '이동하기',
5 | jump_to_confirm: '확인하다',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: '이전 페이지',
10 | next_page: '다음 페이지',
11 | prev_5: '이전 5 페이지',
12 | next_5: '다음 5 페이지',
13 | prev_3: '이전 3 페이지',
14 | next_3: '다음 3 페이지'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ku_IQ.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ rûpel',
4 | jump_to: 'Biçe',
5 | jump_to_confirm: 'piştrast bike',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Rûpelê Pêş',
10 | next_page: 'Rûpelê Paş',
11 | prev_5: '5 Rûpelên Pêş',
12 | next_5: '5 Rûpelên Paş',
13 | prev_3: '3 Rûpelên Pêş',
14 | next_3: '3 Rûpelên Paş'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/lv_LV.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ lappuse',
4 | jump_to: 'iet uz',
5 | jump_to_confirm: 'apstiprināt',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Iepriekšējā lapa',
10 | next_page: 'Nākamā lapaspuse',
11 | prev_5: 'Iepriekšējās 5 lapas',
12 | next_5: 'Nākamās 5 lapas',
13 | prev_3: 'Iepriekšējās 3 lapas',
14 | next_3: 'Nākamās 3 lapas'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/mm_MM.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ စာမျက်နှာ',
4 | jump_to: 'သွားရန်',
5 | jump_to_confirm: 'သေချာပြီ',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'ယခင်စာမျက်နှာ',
10 | next_page: 'နောက်စာမျက်နှာ',
11 | prev_5: 'ယခင် ၅ခုမြောက်',
12 | next_5: 'နောက် ၅ခုမြောက်',
13 | prev_3: 'ယခင် ၃ခုမြောက်',
14 | next_3: 'နောက် ၃ခုမြောက်'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/mn_MN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ хуудас',
4 | jump_to: 'Шилжих',
5 | jump_to_confirm: 'сонгох',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Өмнөх хуудас',
10 | next_page: 'Дараагийн хуудас',
11 | prev_5: 'Дараагийн 5 хуудас',
12 | next_5: 'Дараагийн 5 хуудас',
13 | prev_3: 'Дараагийн 3 хуудас',
14 | next_3: 'Дараагийн 3 хуудас'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ms_MY.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ halaman',
4 | jump_to: 'Lompat ke',
5 | jump_to_confirm: 'Sahkan',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Halaman sebelumnya',
10 | next_page: 'Halam seterusnya',
11 | prev_5: '5 halaman sebelum',
12 | next_5: '5 halaman seterusnya',
13 | prev_3: '3 halaman sebelumnya',
14 | next_3: '3 halaman seterusnya'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/nb_NO.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ side',
4 | jump_to: 'Gå til side',
5 | page: '',
6 |
7 | // Pagination.jsx
8 | prev_page: 'Forrige side',
9 | next_page: 'Neste side',
10 | prev_5: '5 forrige',
11 | next_5: '5 neste',
12 | prev_3: '3 forrige',
13 | next_3: '3 neste'
14 | };
15 |
--------------------------------------------------------------------------------
/src/pagination/locale/nl_BE.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ pagina',
4 | jump_to: 'Ga naar',
5 | jump_to_confirm: 'bevestigen',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Vorige pagina',
10 | next_page: 'Volgende pagina',
11 | prev_5: 'Vorige 5 pagina\'s',
12 | next_5: 'Volgende 5 pagina\'s',
13 | prev_3: 'Vorige 3 pagina\'s',
14 | next_3: 'Volgende 3 pagina\'s'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/nl_NL.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ pagina',
4 | jump_to: 'Ga naar',
5 | jump_to_confirm: 'bevestigen',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Vorige pagina',
10 | next_page: 'Volgende pagina',
11 | prev_5: 'Vorige 5 pagina\'s',
12 | next_5: 'Volgende 5 pagina\'s',
13 | prev_3: 'Vorige 3 pagina\'s',
14 | next_3: 'Volgende 3 pagina\'s'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/pl_PL.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ stronę',
4 | jump_to: 'Idź do',
5 | jump_to_confirm: 'potwierdzać',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Poprzednia strona',
10 | next_page: 'Następna strona',
11 | prev_5: 'Poprzednie 5 stron',
12 | next_5: 'Następne 5 stron',
13 | prev_3: 'Poprzednie 3 strony',
14 | next_3: 'Następne 3 strony'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/pt_BR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ página',
4 | jump_to: 'Vá até',
5 | jump_to_confirm: 'confirme',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Página anterior',
10 | next_page: 'Próxima página',
11 | prev_5: '5 páginas anteriores',
12 | next_5: '5 próximas páginas',
13 | prev_3: '3 páginas anteriores',
14 | next_3: '3 próximas páginas'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/pt_PT.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ página',
4 | jump_to: 'Saltar',
5 | jump_to_confirm: 'confirmar',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Página Anterior',
10 | next_page: 'Página Seguinte',
11 | prev_5: 'Recuar 5 Páginas',
12 | next_5: 'Avançar 5 Páginas',
13 | prev_3: 'Recuar 3 Páginas',
14 | next_3: 'Avançar 3 Páginas'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ro_RO.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ pagină',
4 | jump_to: 'Mergi la',
5 | jump_to_confirm: 'confirm',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Pagina Anterioară',
10 | next_page: 'Pagina Următoare',
11 | prev_5: '5 Pagini Anterioare',
12 | next_5: '5 Pagini Următoare',
13 | prev_3: '3 Pagini Anterioare',
14 | next_3: '3 Pagini Următoare'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ru_RU.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ стр.',
4 | jump_to: 'Перейти',
5 | jump_to_confirm: 'подтвердить',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Назад',
10 | next_page: 'Вперед',
11 | prev_5: 'Предыдущие 5',
12 | next_5: 'Следующие 5',
13 | prev_3: 'Предыдущие 3',
14 | next_3: 'Следующие 3'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/sk_SK.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ strana',
4 | jump_to: 'Choď na',
5 | jump_to_confirm: 'potvrdit',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Predchádzajúca strana',
10 | next_page: 'Nasledujúca strana',
11 | prev_5: 'Predchádzajúcich 5 strán',
12 | next_5: 'Nasledujúcich 5 strán',
13 | prev_3: 'Predchádzajúce 3 strany',
14 | next_3: 'Nasledujúce 3 strany'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/sl_SI.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ strani',
4 | jump_to: 'Pojdi na',
5 | jump_to_confirm: 'potrdi',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Prejšnja stran',
10 | next_page: 'Naslednja stran',
11 | prev_5: 'Prejšnjih 5 strani',
12 | next_5: 'Naslednjih 5 strani',
13 | prev_3: 'Prejšnje 3 strani',
14 | next_3: 'Naslednje 3 strani'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/sr_RS.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ strani',
4 | jump_to: 'Idi na',
5 | page: '',
6 |
7 | // Pagination.jsx
8 | prev_page: 'Prethodna strana',
9 | next_page: 'Sledeća strana',
10 | prev_5: 'Prethodnih 5 Strana',
11 | next_5: 'Sledećih 5 Strana',
12 | prev_3: 'Prethodnih 3 Strane',
13 | next_3: 'Sledećih 3 Strane'
14 | };
15 |
--------------------------------------------------------------------------------
/src/pagination/locale/sv_SE.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ sida',
4 | jump_to: 'Gå till',
5 | jump_to_confirm: 'bekräfta',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Föreg sida',
10 | next_page: 'Nästa sida',
11 | prev_5: 'Föreg 5 sidor',
12 | next_5: 'Nästa 5 sidor',
13 | prev_3: 'Föreg 3 sidor',
14 | next_3: 'Nästa 3 sidor'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/th_TH.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ หน้า',
4 | jump_to: 'ไปยัง',
5 | jump_to_confirm: 'ยืนยัน',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'หน้าก่อนหน้า',
10 | next_page: 'หน้าถัดไป',
11 | prev_5: 'ย้อนกลับ 5 หน้า',
12 | next_5: 'ถัดไป 5 หน้า',
13 | prev_3: 'ย้อนกลับ 3 หน้า',
14 | next_3: 'ถัดไป 3 หน้า'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/tr_TR.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ sayfa',
4 | jump_to: 'Git',
5 | jump_to_confirm: 'onayla',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Önceki Sayfa',
10 | next_page: 'Sonraki Sayfa',
11 | prev_5: 'Önceki 5 Sayfa',
12 | next_5: 'Sonraki 5 Sayfa',
13 | prev_3: 'Önceki 3 Sayfa',
14 | next_3: 'Sonraki 3 Sayfa'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/ug_CN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: 'تال/ھەر بەت',
4 | jump_to: 'بەتكە سەكرەش',
5 | jump_to_confirm: 'مۇقىملاشتۇرۇش',
6 | page: 'بەت',
7 | // Pagination.jsx
8 | prev_page: 'ئالدىنقى',
9 | next_page: 'كېيىنكى',
10 | prev_5: 'ئالدىغا 5 بەت',
11 | next_5: 'كەينىگە 5 بەت',
12 | prev_3: 'ئالدىغا 3 بەت',
13 | next_3: 'كەينىگە 3 بەت'
14 | };
15 |
--------------------------------------------------------------------------------
/src/pagination/locale/uk_UA.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ сторінці',
4 | jump_to: 'Перейти',
5 | jump_to_confirm: 'підтвердити',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Попередня сторінка',
10 | next_page: 'Наступна сторінка',
11 | prev_5: 'Попередні 5 сторінок',
12 | next_5: 'Наступні 5 сторінок',
13 | prev_3: 'Попередні 3 сторінки',
14 | next_3: 'Наступні 3 сторінки'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/vi_VN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '/ trang',
4 | jump_to: 'Đến',
5 | jump_to_confirm: 'xác nhận',
6 | page: '',
7 |
8 | // Pagination.jsx
9 | prev_page: 'Trang Trước',
10 | next_page: 'Trang Kế',
11 | prev_5: 'Về 5 Trang Trước',
12 | next_5: 'Đến 5 Trang Kế',
13 | prev_3: 'Về 3 Trang Trước',
14 | next_3: 'Đến 3 Trang Kế'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/zh_CN.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '条/页',
4 | jump_to: '跳至',
5 | jump_to_confirm: '确定',
6 | page: '页',
7 |
8 | // Pagination.jsx
9 | prev_page: '上一页',
10 | next_page: '下一页',
11 | prev_5: '向前 5 页',
12 | next_5: '向后 5 页',
13 | prev_3: '向前 3 页',
14 | next_3: '向后 3 页'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/locale/zh_TW.ts:
--------------------------------------------------------------------------------
1 | export default {
2 | // Options.jsx
3 | items_per_page: '條/頁',
4 | jump_to: '跳至',
5 | jump_to_confirm: '確定',
6 | page: '頁',
7 |
8 | // Pagination.jsx
9 | prev_page: '上一頁',
10 | next_page: '下一頁',
11 | prev_5: '向前 5 頁',
12 | next_5: '向後 5 頁',
13 | prev_3: '向前 3 頁',
14 | next_3: '向後 3 頁'
15 | };
16 |
--------------------------------------------------------------------------------
/src/pagination/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/popconfirm/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 popconfirm 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('popconfirm', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/popconfirm/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Popconfirm 气泡确认框
2 | 点击元素,弹出气泡式的确认框。
3 |
4 | ## 何时使用
5 | 目标元素的操作需要用户进一步的确认时,在目标元素附近弹出浮层提示,询问用户。
6 |
7 | 和 `confirm` 弹出的全屏居中模态对话框相比,交互形式更轻量。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/popconfirm/interface.ts:
--------------------------------------------------------------------------------
1 | import * as ToolTip from "santd/tooltip/interface";
2 |
3 | /**
4 | * State
5 | */
6 | export interface State extends ToolTip.State {
7 | /**
8 | * 组件名
9 | */
10 | componentName: 'Popconfirm';
11 |
12 | /**
13 | * 动画方式
14 | */
15 | transitionName: string;
16 |
17 | /**
18 | * 触发方式
19 | */
20 | trigger: 'click' | 'hover';
21 |
22 | /**
23 | * 确认按钮类型
24 | */
25 | okType: string;
26 | };
27 |
28 | /**
29 | * Computed
30 | */
31 | export interface Computed extends ToolTip.Computed {};
32 |
--------------------------------------------------------------------------------
/src/popconfirm/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import '../../core/styles/index';
5 | import '../../popover/style/index'; /* style-no-remove */
6 |
--------------------------------------------------------------------------------
/src/popover/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | content | 卡片内容 | string \| slot | 无 |
6 | | title | 卡片标题 | string \| slot | 无 |
7 |
8 | 更多属性请参考 [Tooltip](https://ecomfe.github.io/santd/#/components/tooltip)。
9 |
--------------------------------------------------------------------------------
/src/popover/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 popover 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('popover', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/popover/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Popover 气泡卡片
2 | 点击/鼠标移入元素,弹出气泡式的卡片浮层。
3 |
4 | ## 何时使用
5 | 当目标元素有进一步的描述和相关操作时,可以收纳到卡片中,根据用户的操作行为进行展现。
6 |
7 | 和 `Tooltip` 的区别是,用户可以对浮层上的元素进行操作,因此它可以承载更复杂的内容,比如链接或按钮等。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/popover/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {
2 | /**
3 | * 卡片内容
4 | */
5 | content?: string;
6 | /**
7 | * 卡片标题
8 | */
9 | title?: string;
10 | }
11 | export interface State {
12 | transitionName: string;
13 | prefixCls: string;
14 | }
15 | export interface Computed {}
--------------------------------------------------------------------------------
/src/popover/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/progress/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 progress
3 | * @author baozhixin
4 | */
5 |
6 | describe('progress', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/progress/docs/circle-mini.md:
--------------------------------------------------------------------------------
1 |
2 | #### 小型进度圈
3 | 小一号的圈形进度。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/progress/docs/dashboard.md:
--------------------------------------------------------------------------------
1 |
2 | #### 仪表盘
3 | 通过设置 `type=dashboard`,可以很方便地实现仪表盘样式的进度条。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/progress/docs/head.md:
--------------------------------------------------------------------------------
1 | # Progress 进度条
2 |
3 | 展示操作的当前进度。
4 |
5 | ## 何时使用
6 |
7 | 在操作需要较长时间才能完成时,为用户显示该操作的当前进度和状态。
8 |
9 | - 当一个操作会打断当前界面,或者需要在后台运行,且耗时可能超过2秒时;
10 | - 当需要显示一个操作完成的百分比时。
11 |
12 | ## 代码演示
13 |
--------------------------------------------------------------------------------
/src/progress/docs/line-mini.md:
--------------------------------------------------------------------------------
1 |
2 | #### 小型进度条
3 | 适合放在较狭窄的区域内。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/progress/docs/line.md:
--------------------------------------------------------------------------------
1 |
2 | #### 进度条
3 | 标准的进度条。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
26 | ```
27 |
--------------------------------------------------------------------------------
/src/progress/docs/linecap.md:
--------------------------------------------------------------------------------
1 |
2 | #### 圆角/方角边缘
3 | 通过设定 `strokeLinecap="square|round"` 可以调整进度条边缘的形状。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/progress/docs/segment.md:
--------------------------------------------------------------------------------
1 |
2 | #### 分段进度条
3 | 标准的进度条。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/progress/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/radio/RadioButton.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 radio
3 | * @author chenkai13
4 | */
5 |
6 | import './style/index.less';
7 | import {classCreator} from '../core/util';
8 | import Radio from './Radio';
9 | import {
10 | RadioButtonState as State
11 | } from './interface';
12 |
13 | const prefixCls = classCreator('radio-button')();
14 |
15 | export default class RadioButton extends Radio {
16 | initData(): State {
17 | return {
18 | ...Radio.prototype.initData(),
19 | prefixCls
20 | };
21 | }
22 | };
23 | export type TRadioButton = typeof RadioButton;
24 |
--------------------------------------------------------------------------------
/src/radio/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 radio 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('radio', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/radio/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法。
4 |
5 |
6 | ```html
7 |
8 |
9 | Radio
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/radio/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Radio 单选框
2 |
3 | 单选框。
4 |
5 | ## 何时使用
6 |
7 | * 用于在多个备选项中选中单个状态。
8 | * 和 Select 的区别是,Radio 所有选项默认可见,方便用户在比较中选择,因此选项不宜过多。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/radio/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 radio
3 | * @author chenkai13
4 | */
5 |
6 | import Radio from './Radio';
7 | import Group from './Group';
8 | import Button from './RadioButton';
9 |
10 | Radio.Group = Group;
11 | Radio.Button = Button;
12 |
13 | export default Radio;
--------------------------------------------------------------------------------
/src/radio/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/rate/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('rate', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/rate/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/rate/docs/clear.md:
--------------------------------------------------------------------------------
1 |
2 | #### 清除
3 | 支持允许或者禁用清除。
4 |
5 |
6 | ```html
7 |
8 |
9 | allowClear: true
10 |
11 | allowClear: false
12 |
13 |
14 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/rate/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Rate 评分
2 |
3 | 评分组件。
4 |
5 | ## 何时使用
6 |
7 | * 对评价进行展示。
8 | * 对事物进行快速的评级操作。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/rate/docs/disabled.md:
--------------------------------------------------------------------------------
1 |
2 | #### 只读
3 | 只读,无法进行鼠标交互。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/rate/docs/half.md:
--------------------------------------------------------------------------------
1 |
2 |
3 | #### 半星
4 | 支持选中半星。
5 |
6 |
7 | ```html
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/rate/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/result/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('result', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/result/docs/404.md:
--------------------------------------------------------------------------------
1 |
2 | #### 404
3 | 此页面未找到。
4 |
5 |
6 | ```html
7 |
8 |
9 |
14 | Back Home
15 |
16 |
17 |
18 |
28 | ```
29 |
--------------------------------------------------------------------------------
/src/result/docs/500.md:
--------------------------------------------------------------------------------
1 |
2 | #### 500
3 | 服务器发生了错误。
4 |
5 |
6 | ```html
7 |
8 |
9 |
14 | Back Home
15 |
16 |
17 |
18 |
28 | ```
29 |
--------------------------------------------------------------------------------
/src/result/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Result 结果
2 | 用于反馈一系列操作任务的处理结果。
3 |
4 | ## 何时使用
5 | 当有重要操作需告知用户处理结果,且反馈内容较为复杂时使用。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/result/docs/info.md:
--------------------------------------------------------------------------------
1 |
2 | #### Info
3 | 展示处理结果。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 | Go Console
11 |
12 |
13 |
14 |
24 | ```
25 |
--------------------------------------------------------------------------------
/src/result/docs/warning.md:
--------------------------------------------------------------------------------
1 |
2 | #### Warning
3 | 警告类型的结果。
4 |
5 |
6 | ```html
7 |
8 |
9 |
13 | Go Console
14 |
15 |
16 |
17 |
27 | ```
28 |
--------------------------------------------------------------------------------
/src/result/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/row/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | row
4 |
5 |
6 | 详细属性:
7 |
8 | | 属性 | 说明 | 类型 | 默认值 |
9 | | --- | --- | --- | --- |
10 | | 属性名 | 组件属性的说明 | boolean | `false` |
11 |
--------------------------------------------------------------------------------
/src/row/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 |
2 | describe('row', () => {
3 |
4 | });
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/src/row/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### row
3 | row
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
19 | ```
20 |
--------------------------------------------------------------------------------
/src/row/docs/index.ts:
--------------------------------------------------------------------------------
1 | import Readme from '../README.md';
2 | import Base from 'santd/base';
3 |
4 | export default class extends Base {
5 | static components = {
6 | readme: Readme
7 | };
8 | static template = /* html */ `
9 |
10 |
11 |
12 | `;
13 | }
--------------------------------------------------------------------------------
/src/row/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 row
3 | * @author wangyongqing01
4 | */
5 | import {Row} from '../grid';
6 |
7 | export default Row;
8 |
--------------------------------------------------------------------------------
/src/row/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import '../../core/styles/index';
5 | import '../../grid/style';
6 |
--------------------------------------------------------------------------------
/src/select/docs/head.md:
--------------------------------------------------------------------------------
1 | # Select 选择器
2 |
3 | 下拉选择器。
4 |
5 | ## 何时使用
6 |
7 | - 弹出一个下拉菜单给用户选择操作,用于代替原生的选择器,或者需要一个更优雅的多选器时。
8 | - 当选项少时(少于 5 项),建议直接将选项平铺,使用 Radio 是更好的选择。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/select/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 select 下拉选择器
3 | * @author
4 | */
5 |
6 | import './style/index';
7 | import Select from './Select';
8 | import Option from './Option';
9 | import OptGroup from './OptGroup';
10 |
11 | Select.Option = Option;
12 | Select.OptGroup = OptGroup;
13 |
14 | export default Select;
15 |
--------------------------------------------------------------------------------
/src/select/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口文件
3 | * @author
4 | */
5 |
6 | import '../../core/styles/index.less';
7 | import './index.less';
8 |
--------------------------------------------------------------------------------
/src/skeleton/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 skeleton
3 | * @author baozhixin
4 | */
5 |
6 | describe('skeleton', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/skeleton/docs/active.md:
--------------------------------------------------------------------------------
1 |
2 | #### 动画效果
3 | 显示动画效果。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/skeleton/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的占位效果。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/skeleton/docs/complex.md:
--------------------------------------------------------------------------------
1 |
2 | #### 复杂的组合
3 | 更复杂的组合。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
29 | ```
30 |
--------------------------------------------------------------------------------
/src/skeleton/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Skeleton 骨架屏
2 | 在需要等待加载内容的位置提供一个占位图形组合。
3 |
4 | ## 何时使用
5 | * 网络较慢,需要长时间等待加载处理的情况下。
6 | * 图文信息内容较多的列表/卡片中。
7 | * 只适合用在第一次加载数据的场景。
8 | * 可以被 Spin 完全代替,但是在可用的场景下可以比 Spin 提供更好的视觉效果和用户体验。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/skeleton/docs/head.md:
--------------------------------------------------------------------------------
1 | # Skeleton 骨架屏
2 | 在需要等待加载内容的位置提供一个占位图形组合。
3 |
4 | ## 何时使用
5 | * 网络较慢,需要长时间等待加载处理的情况下。
6 | * 图文信息内容较多的列表/卡片中。
7 | * 只适合用在第一次加载数据的场景。
8 | * 可以被 Spin 完全代替,但是在可用的场景下可以比 Spin 提供更好的视觉效果和用户体验。
9 |
10 | ## 代码演示
11 |
--------------------------------------------------------------------------------
/src/skeleton/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/slider/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 slider 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('slider', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/slider/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Slider 滑动输入条
2 | 滑动型输入器,展示当前值和可选范围。
3 |
4 | ## 何时使用
5 | 当用户需要在数值区间/自定义区间内进行选择时,可为连续或离散值。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/slider/docs/tooltip.md:
--------------------------------------------------------------------------------
1 |
2 | #### 控制 ToolTip 的显示
3 | 当 `tooltipVisible` 为 `true` 时,将始终显示 ToolTip;反之则始终不显示,即使在拖动、移入时也是如此。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/slider/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/space/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | | 参数 | 说明 | 类型 | 默认值 |
4 | | --- | --- | --- | --- |
5 | | align | 对齐方式 | 'start' \| 'end' \| 'center' \| 'baseline' | 在 `horizontal` 时为 'center', 在 `vertical` 时为 'start' |
6 | | direction | 间距方向 | 'horizontal' \| 'vertical' | 'horizontal' |
7 | | size | 间距大小 | [Size](#Size) \| [Size\[\]](#Size) | 'small' |
8 | | wrap | 是否自动换行,仅在 `horizontal` 时有效 | boolean | false |
9 |
10 | ### Size
11 |
12 | `'small' | 'middle' | 'large' | number`
13 |
--------------------------------------------------------------------------------
/src/space/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Space 间距
2 |
3 | 设置组件之间的间距。
4 |
5 | ## 何时使用
6 |
7 | 避免组件紧贴在一起,拉开统一的空间。
8 |
9 | - 可以设置水平和垂直间距。
10 | - 可以设置各种对齐方式。
11 |
12 | ## 代码演示
13 |
--------------------------------------------------------------------------------
/src/space/docs/wrap.md:
--------------------------------------------------------------------------------
1 |
2 | #### 自动换行
3 | 自动换行。
4 |
5 |
6 | ```html
7 |
8 |
9 | Button
10 |
11 |
12 |
13 |
28 | ```
29 |
--------------------------------------------------------------------------------
/src/space/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file space less 入口文件
3 | */
4 |
5 | import './index.less';
6 |
--------------------------------------------------------------------------------
/src/spin/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 spin
3 | * @author baozhixin
4 | */
5 |
6 | describe('spin', () => {
7 |
8 | });
9 |
--------------------------------------------------------------------------------
/src/spin/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本用法
3 | 一个简单的 loading 状态
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/spin/docs/head.md:
--------------------------------------------------------------------------------
1 | # Spin 加载中
2 | 用于页面和区块的加载中状态。
3 |
4 | ## 何时使用
5 |
6 | 页面局部处于等待异步数据或正在渲染过程时,合适的加载动效会有效缓解用户的焦虑。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/spin/docs/indicator.md:
--------------------------------------------------------------------------------
1 |
2 | #### 自定义指示符
3 | 使用自定义指示符。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/spin/docs/inside.md:
--------------------------------------------------------------------------------
1 |
2 | #### 容器
3 | 放入一个容器中。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 |
23 |
33 | ```
34 |
--------------------------------------------------------------------------------
/src/spin/docs/size.md:
--------------------------------------------------------------------------------
1 |
2 | #### 各种大小
3 | 小的用于文本加载,默认用于卡片容器级加载,大的用于**页面级**加载。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
24 |
25 |
30 | ```
31 |
--------------------------------------------------------------------------------
/src/spin/interface.ts:
--------------------------------------------------------------------------------
1 | export interface Props {};
2 |
3 | export interface State {
4 | /**
5 | * 是否有slot=content内容
6 | */
7 | hasContent: boolean;
8 |
9 | /**
10 | * 组件大小
11 | */
12 | size: 'small' | 'default' | 'large';
13 |
14 | /**
15 | * 是否为加载中状态
16 | */
17 | spinning: boolean;
18 | };
19 |
20 | export interface Computed {
21 | /**
22 | * classes合集
23 | */
24 | spinClasses: () => string[];
25 |
26 | /**
27 | * 当前加载状态
28 | */
29 | currentSpinning: () => boolean;
30 | };
--------------------------------------------------------------------------------
/src/spin/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/statistic/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 statistic 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('statistic', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/statistic/docs/head.md:
--------------------------------------------------------------------------------
1 | # Statistic 统计数值
2 | 展示统计数值。
3 |
4 | ## 何时使用
5 |
6 | * 当需要突出某个或某组数字时。
7 | * 当需要展示带描述的统计类数据时使用。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/statistic/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 statistic
3 | * @author chenkai13
4 | */
5 |
6 | import Statistic from './Statistic';
7 | import Countdown from './countdown';
8 |
9 | Statistic.Countdown = Countdown;
10 |
11 | export default Statistic;
--------------------------------------------------------------------------------
/src/statistic/interface.ts:
--------------------------------------------------------------------------------
1 | export interface State {
2 | groupSeparator: string;
3 | value: string | number;
4 | decimalSeparator: string;
5 | }
6 |
7 | export interface Props {
8 |
9 | }
10 |
11 | export interface Computed {
12 | showValue: () => {
13 | int: string;
14 | decimal?: string;
15 | }
16 | }
--------------------------------------------------------------------------------
/src/statistic/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/steps/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Steps 步骤条
2 |
3 | 引导用户按照流程完成任务的导航条。
4 |
5 | ## 何时使用
6 |
7 | 当任务复杂或者存在先后关系时,将其分解成一系列步骤,从而简化任务。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/steps/docs/size.md:
--------------------------------------------------------------------------------
1 |
2 | #### mini版
3 | 迷你版的步骤条,通过设置 `` 启用
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
26 | ```
27 |
--------------------------------------------------------------------------------
/src/steps/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 步骤条steps入口文件
3 | * @author fuqiangqiang@baidu.com
4 | */
5 |
6 | import Steps from './Steps';
7 | import Step from './Step';
8 |
9 | Steps.Step = Step;
10 |
11 | export default Steps;
--------------------------------------------------------------------------------
/src/steps/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file progress所用less文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
--------------------------------------------------------------------------------
/src/switch/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 测试文件
3 | */
4 | describe('switch ', () => {});
5 |
--------------------------------------------------------------------------------
/src/switch/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法
4 |
5 | ```html
6 |
7 |
8 |
9 |
10 |
11 |
28 | ```
29 |
--------------------------------------------------------------------------------
/src/switch/docs/description.md:
--------------------------------------------------------------------------------
1 | # Switch 开关
2 | 开关选择器
3 | ## 何时使用
4 | - 需要表示开关状态/两种状态之间的切换时;
5 | - 和 `checkbox`的区别是,切换 `switch` 会直接触发状态改变,而 `checkbox` 一般用于状态标记,需要和提交操作配合。
6 | ## 代码演示
--------------------------------------------------------------------------------
/src/switch/docs/loading.md:
--------------------------------------------------------------------------------
1 |
2 | #### 加载中
3 | 标识开关操作仍在执行中。
4 |
5 | ```html
6 |
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/switch/docs/size.md:
--------------------------------------------------------------------------------
1 |
2 | #### 两种大小
3 | `size="small"` 表示小号开关。
4 |
5 | ```html
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
22 | ```
23 |
--------------------------------------------------------------------------------
/src/switch/interface.ts:
--------------------------------------------------------------------------------
1 | interface SizeMap {
2 | [tag: string]: string;
3 | }
4 | export interface State {
5 | sizeMap: SizeMap,
6 | disabled: boolean,
7 | defaultChecked: boolean,
8 | checked: boolean,
9 | loading: boolean
10 | }
11 |
12 | export interface Props {
13 | }
14 |
15 | export interface Computed {
16 |
17 | }
--------------------------------------------------------------------------------
/src/switch/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/table/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 table 测试文件
3 | * @author fuqiangqiang
4 | */
5 |
6 | describe('table', () => {
7 |
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/table/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 table
3 | * @author fuqiangqiang
4 | */
5 |
6 | import Table from './Table';
7 |
8 | export default Table;
9 |
--------------------------------------------------------------------------------
/src/table/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 样式文件入口
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 | import '../../pagination/style';
7 |
--------------------------------------------------------------------------------
/src/tabs/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 tabs 测试文件
3 | * @author panming
4 | */
5 |
6 | describe('tabs', () => {
7 |
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/tabs/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Tabs 标签页
2 | 选项卡切换组件。
3 |
4 | ## 何时使用
5 |
6 | 提供平级的区域将大块内容进行收纳和展现,保持界面整洁。
7 |
8 | Ant Design 依次提供了三级选项卡,分别用于不同的场景。
9 |
10 | * 卡片式的页签,提供可关闭的样式,常用于容器顶部。
11 | * 标准线条式页签,用于容器内部的主功能切换,这是最常用的 Tabs。
12 | * RadioButton 可作为更次级的页签来使用。
13 |
14 | ## 代码演示
15 |
--------------------------------------------------------------------------------
/src/tabs/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/tag/README.md:
--------------------------------------------------------------------------------
1 | ## API
2 |
3 | ### Tag
4 |
5 | | 参数 | 说明 | 类型 | 默认值 |
6 | | --- | --- | --- | --- |
7 | | closable | 标签是否可以关闭 | boolean | false |
8 | | color | 标签色 | string | - |
9 | | closeIcon| 自定义关闭按钮 | slot | - |
10 | | on-close | 关闭时回调, closable为true时有效 | function | -|
11 | | visible| 是否显示标签 | boolean | `true` |
12 | | icon| 设置图标 | string | - |
13 |
14 | ### Tag.CheckableTag
15 | | 参数 | 说明 | 类型 | 默认值 |
16 | | --- | --- | --- | --- |
17 | | checked | 设置标签的选中状态 | boolean | false |
18 | | on-change | 点击标签时触发的回调,回调中的参数是选中状态 | (checked) => {} |
19 |
--------------------------------------------------------------------------------
/src/tag/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Tag 标签
2 | 进行标记和分类的小标签。
3 |
4 | ## 何时使用
5 | * 用于标记事物的属性和维度。
6 | * 进行分类。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/tag/interface.ts:
--------------------------------------------------------------------------------
1 | export interface ICheckableTag {
2 | checked: boolean;
3 | }
4 |
5 | export interface ITagProps {
6 | color?: string;
7 | closable: boolean;
8 | visible: boolean;
9 | icon: string;
10 | }
11 |
--------------------------------------------------------------------------------
/src/tag/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file tag所用less文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
--------------------------------------------------------------------------------
/src/time-picker/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 timepicker 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('timepicker', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/time-picker/docs/head.md:
--------------------------------------------------------------------------------
1 | # TimePicker 时间选择框
2 | 输入或选择时间的控件。
3 |
4 | ## 何时使用
5 |
6 | 当用户需要输入一个时间,可以点击标准输入框,弹出时间面板进行选择。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/time-picker/docs/onchange.md:
--------------------------------------------------------------------------------
1 |
2 | #### 受控组件
3 | value 和 on-change 需要配合使用。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
25 | ```
26 |
--------------------------------------------------------------------------------
/src/time-picker/docs/step.md:
--------------------------------------------------------------------------------
1 |
2 | #### 步长选项
3 | 可以使用 `hourStep` `minuteStep` `secondStep` 按步长展示可选的时分秒。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 |
11 |
12 |
21 | ```
22 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ar_EG.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'اختيار الوقت'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/bg_BG.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Избор на час'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ca_ES.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Seleccionar hora'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/cs_CZ.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Vybrat čas'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/da_DK.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Vælg tid'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/de_DE.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Zeit auswählen'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/el_GR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Επιλέξτε ώρα'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/en_GB.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Select time'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/en_US.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Select time'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/es_ES.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Seleccionar hora'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/et_EE.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Vali aeg'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/fa_IR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'انتخاب زمان'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/fi_FI.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Valitse aika'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/fr_BE.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Sélectionner l\'heure'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/fr_FR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Sélectionner l\'heure'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/he_IL.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'בחר שעה'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/hi_IN.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'समय का चयन करें'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/hr_HR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Odaberite vrijeme'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/hu_HU.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Válasszon időt'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/id_ID.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Pilih waktu'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/is_IS.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Velja tíma'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/it_IT.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Selezionare l\'orario'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ja_JP.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: '時刻を選択'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/kn_IN.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'ಸಮಯ ಆಯ್ಕೆಮಾಡಿ'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ko_KR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: '날짜 선택'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ku_IQ.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Demê hilbijêre'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/lv_LV.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Izvēlieties laiku'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/mn_MN.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Цаг сонгох'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/nb_NO.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Velg tid'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/nl_BE.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Selecteer tijd'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/nl_NL.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Selecteer tijd'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/pl_PL.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Wybierz godzinę'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/pt_BR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Hora'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/pt_PT.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Hora'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/ru_RU.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Выберите время'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/sk_SK.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Vybrať čas'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/sl_SI.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Izberite čas'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/sr_RS.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Izaberite vreme'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/sv_SE.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Välj tid'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/th_TH.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'เลือกเวลา'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/tr_TR.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Zaman Seç'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/uk_UA.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Оберіть час'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/vi_VN.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: 'Chọn thời gian'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/zh_CN.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: '请选择时间'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/locale/zh_TW.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file Santd time picker locale file
3 | **/
4 |
5 | export default {
6 | placeholder: '請選擇時間'
7 | };
8 |
--------------------------------------------------------------------------------
/src/time-picker/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
5 | import '../../input/style/index.less';
--------------------------------------------------------------------------------
/src/timeline/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 timeline 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('timeline', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/timeline/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Timeline 时间轴
2 | 垂直展示的时间流信息。
3 |
4 | ## 何时使用
5 | * 当有一系列信息需按时间排列时,可正序和倒序。
6 | * 需要有一条时间轴进行视觉上的串联时。
7 |
8 | ## 代码演示
9 |
--------------------------------------------------------------------------------
/src/timeline/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 timeline
3 | * @author chenkai13
4 | */
5 |
6 | import Timeline from './Timeline';
7 |
8 | export default Timeline;
9 |
--------------------------------------------------------------------------------
/src/timeline/interface.ts:
--------------------------------------------------------------------------------
1 | export interface IItemProps {
2 | color: string;
3 | pending: boolean;
4 | label: string;
5 | }
6 |
7 | export interface ITimelineProps {
8 | reverse: boolean,
9 | mode: 'left' | 'alternate' | 'right';
10 | labelClass: string;
11 | }
--------------------------------------------------------------------------------
/src/timeline/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/tooltip/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 tooltip 测试文件
3 | * @author zhangtingting12
4 | */
5 |
6 | describe('tooltip', () => {
7 |
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/tooltip/docs/basic.md:
--------------------------------------------------------------------------------
1 |
2 | #### 基本
3 | 最简单的用法。
4 |
5 |
6 | ```html
7 |
8 |
9 |
10 | Tooltip will show on mouse enter.
11 |
12 |
13 |
14 |
23 | ```
24 |
--------------------------------------------------------------------------------
/src/tooltip/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Tooltip 文字提示
2 | 简单的文字提示气泡框。
3 |
4 | ## 何时使用
5 | 鼠标移入则显示提示,移出消失,气泡浮层不承载复杂文本和操作。
6 |
7 | 可用来代替系统默认的 `title` 提示,提供一个按钮/文字/操作的文案解释。
8 |
9 | ## 代码演示
10 |
--------------------------------------------------------------------------------
/src/tooltip/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
--------------------------------------------------------------------------------
/src/transfer/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 transfer 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('transfer', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/transfer/docs/head.md:
--------------------------------------------------------------------------------
1 | # Transfer 穿梭框
2 |
3 | 双栏穿梭选择框。
4 |
5 | ## 何时使用
6 |
7 | - 需要在多个可选项中进行多选时。
8 | - 比起 Select 和 TreeSelect,穿梭框占据更大的空间,可以展示可选项的更多信息。
9 |
10 | 穿梭选择框用直观的方式在两栏中移动元素,完成选择行为。
11 |
12 | 选择一个或以上的选项后,点击对应的方向键,可以把选中的选项移动到另一栏。
13 | 其中,左边一栏为 `source`,右边一栏为 `target`,API 的设计也反映了这两个概念。
14 |
15 | ## 代码演示
16 |
--------------------------------------------------------------------------------
/src/transfer/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import '../../core/styles/index';
5 | import './index.less';
6 |
7 | import '../../empty/style';
8 | import '../../checkbox/style';
9 | import '../../button/style';
10 | import '../../input/style';
11 |
--------------------------------------------------------------------------------
/src/tree-select/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 tree-select 测试文件
3 | * @author fuqiangqiang
4 | */
5 |
6 | describe('tree-select', () => {
7 |
8 | });
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/src/tree-select/docs/desc.md:
--------------------------------------------------------------------------------
1 | # TreeSelect 树选择
2 | 树型选择控件。
3 |
4 | ## 何时使用
5 | 类似 Select 的选择控件,可选择的数据结构是一个树形结构时,可以使用 TreeSelect,例如公司层级、学科系统、分类目录等等。
6 |
7 | ## 代码演示
8 |
--------------------------------------------------------------------------------
/src/tree-select/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file tree-select 树选中组件
3 | * @author fuqiangqiang
4 | */
5 |
6 | import {SHOW_ALL, SHOW_PARENT, SHOW_CHILD} from './treeStrategies';
7 | import TreeSelect from './TreeSelect';
8 | import TreeNode from '../tree/TreeNode';
9 |
10 | TreeSelect.TreeNode = TreeNode;
11 | TreeSelect.SHOW_ALL = SHOW_ALL;
12 | TreeSelect.SHOW_PARENT = SHOW_PARENT;
13 | TreeSelect.SHOW_CHILD = SHOW_CHILD;
14 |
15 | export default TreeSelect;
16 |
--------------------------------------------------------------------------------
/src/tree-select/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file css入口文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
7 | import '../../select/style';
8 | import '../../checkbox/style';
9 | import '../../tree/style';
10 |
--------------------------------------------------------------------------------
/src/tree-select/treeStrategies.ts:
--------------------------------------------------------------------------------
1 | export const SHOW_ALL = 'SHOW_ALL';
2 | export const SHOW_PARENT = 'SHOW_PARENT';
3 | export const SHOW_CHILD = 'SHOW_CHILD';
4 |
--------------------------------------------------------------------------------
/src/tree/commonConst.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 该组件的共用常量
3 | * @author Lohoyo
4 | */
5 |
6 | export const LINE_UNIT_OFFEST_V = 18;
7 |
--------------------------------------------------------------------------------
/src/tree/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Tree 树形控件
2 | 多层次的结构列表。
3 |
4 | ## 何时使用
5 | 文件夹、组织架构、生物分类、国家地区等等,世间万物的大多数结构都是树形结构。使用 树控件 可以完整展现其中的层级关系,并具有展开收起选择等交互功能。
6 |
--------------------------------------------------------------------------------
/src/tree/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file menu入口文件
3 | * @author fuqiangqiang@baidu.com
4 | */
5 | import Tree from './Tree';
6 |
7 | export default Tree;
8 |
--------------------------------------------------------------------------------
/src/tree/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file tree组件入口文件
3 | */
4 | import '../../core/styles/index.less';
5 | import './index.less';
6 |
7 | // style dependencies
8 | import '../../checkbox/style';
--------------------------------------------------------------------------------
/src/typography/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 typography 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('typography', () => {});
--------------------------------------------------------------------------------
/src/typography/docs/head.md:
--------------------------------------------------------------------------------
1 | # Typograhpy 排版
2 |
3 | 文本的基本格式。
4 |
5 | ## 何时使用
6 |
7 | - 当需要展示标题、段落、列表内容时使用,如文章/博客/日志的文本样式。
8 | - 当需要一列基于文本的基础操作时,如拷贝/省略/可编辑。
9 |
--------------------------------------------------------------------------------
/src/typography/docs/title.md:
--------------------------------------------------------------------------------
1 |
2 | #### 标题组件
3 | 展示不同级别的标题。
4 |
5 |
6 | ```html
7 |
8 |
9 | h1. Santd
10 | h2. Santd
11 | h3. Santd
12 | h4. Santd
13 |
14 |
15 |
24 | ```
--------------------------------------------------------------------------------
/src/typography/style/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import './index.less';
5 | import '../../tooltip/style/index.less';
6 | import '../../input/style/index.less';
--------------------------------------------------------------------------------
/src/upload/Dragger.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 upload
3 | * @author chenkai13
4 | */
5 |
6 | import Upload from './Upload';
7 |
8 | export default class Danger extends Upload {
9 | initData() {
10 | let data = Upload.prototype.initData();
11 | data.type = 'drag';
12 |
13 | return data;
14 | }
15 | };
16 |
--------------------------------------------------------------------------------
/src/upload/__tests__/index.spec.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 upload 测试文件
3 | * @author chenkai13
4 | */
5 |
6 | describe('upload', () => {});
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/src/upload/docs/desc.md:
--------------------------------------------------------------------------------
1 | # Upload 上传
2 | 文件选择上传和拖拽上传控件。
3 |
4 | ## 何时使用
5 | 上传是将信息(网页、文字、图片、视频等)通过网页或者上传工具发布到远程服务器上的过程。
6 |
7 | * 当需要上传一个或一些文件时。
8 | * 当需要展现上传的进度时。
9 | * 当需要使用拖拽交互时。
10 |
11 | ## 代码演示
12 |
--------------------------------------------------------------------------------
/src/upload/index.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件 upload
3 | * @author chenkai13
4 | */
5 |
6 |
7 | import Upload from './Upload';
8 | import Dragger from './Dragger';
9 | import './style/index';
10 |
11 | Upload.Dragger = Dragger;
12 |
13 | export default Upload;
14 |
--------------------------------------------------------------------------------
/src/upload/style/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @file 组件样式入口
3 | */
4 | import '../../core/styles/index';
5 | import './index.less';
6 |
7 | import '../../progress/style';
8 | import '../../tooltip/style';
9 |
--------------------------------------------------------------------------------