├── .husky ├── .gitignore └── pre-commit ├── .npmrc ├── .codecov.yml ├── components ├── tree │ ├── breakchange.md │ └── __tests__ │ │ └── demo.test.js ├── vc-table │ ├── constant.ts │ ├── Panel │ │ └── index.tsx │ ├── Footer │ │ └── Row.tsx │ ├── context │ │ └── StickyContext.tsx │ └── sugar │ │ └── Column.tsx ├── modal │ ├── destroyFns.ts │ └── __tests__ │ │ └── demo.test.js ├── vc-pagination │ ├── index.ts │ ├── KeyCode.ts │ └── locale │ │ ├── zh_CN.ts │ │ ├── zh_TW.ts │ │ ├── nb_NO.ts │ │ ├── ja_JP.ts │ │ ├── ko_KR.ts │ │ ├── kk_KZ.ts │ │ ├── by_BY.ts │ │ ├── fa_IR.ts │ │ ├── ru_RU.ts │ │ ├── lt_LT.ts │ │ ├── pa_IN.ts │ │ ├── pb_IN.ts │ │ ├── sr_RS.ts │ │ ├── th_TH.ts │ │ ├── ur_PK.ts │ │ ├── da_DK.ts │ │ ├── en_GB.ts │ │ ├── en_US.ts │ │ ├── he_IL.ts │ │ ├── hi_IN.ts │ │ ├── is_IS.ts │ │ ├── kmr_IQ.ts │ │ ├── sv_SE.ts │ │ ├── vi_VN.ts │ │ ├── km_KH.ts │ │ ├── tr_TR.ts │ │ ├── ug_CN.ts │ │ ├── de_DE.ts │ │ ├── ka_GE.ts │ │ ├── az_AZ.ts │ │ ├── bn_BD.ts │ │ ├── mm_MM.ts │ │ ├── ar_EG.ts │ │ ├── fi_FI.ts │ │ ├── kn_IN.ts │ │ ├── ml_IN.ts │ │ ├── ca_ES.ts │ │ ├── fr_BE.ts │ │ ├── fr_CA.ts │ │ ├── fr_FR.ts │ │ ├── mn_MN.ts │ │ ├── pt_PT.ts │ │ ├── es_ES.ts │ │ ├── gl_ES.ts │ │ ├── it_IT.ts │ │ ├── nl_BE.ts │ │ ├── nl_NL.ts │ │ ├── pl_PL.ts │ │ ├── pt_BR.ts │ │ ├── sl_SI.ts │ │ ├── lv_LV.ts │ │ ├── mk_MK.ts │ │ ├── ro_RO.ts │ │ ├── ta_IN.ts │ │ ├── bg_BG.ts │ │ ├── cs_CZ.ts │ │ ├── et_EE.ts │ │ ├── hr_HR.ts │ │ ├── ms_MY.ts │ │ ├── el_GR.ts │ │ ├── id_ID.ts │ │ ├── uk_UA.ts │ │ ├── sk_SK.ts │ │ └── ga_IE.ts ├── vc-align │ └── index.ts ├── app │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── index.vue │ │ └── basic.vue ├── calendar │ ├── locale │ │ ├── ar_EG.ts │ │ ├── az_AZ.ts │ │ ├── bg_BG.ts │ │ ├── bn_BD.ts │ │ ├── by_BY.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_CA.ts │ │ ├── fr_FR.ts │ │ ├── ga_IE.ts │ │ ├── gl_ES.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 │ │ ├── ka_GE.ts │ │ ├── kk_KZ.ts │ │ ├── km_KH.ts │ │ ├── kn_IN.ts │ │ ├── ko_KR.ts │ │ ├── lt_LT.ts │ │ ├── lv_LV.ts │ │ ├── mk_MK.ts │ │ ├── ml_IN.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 │ │ ├── ta_IN.ts │ │ ├── th_TH.ts │ │ ├── tr_TR.ts │ │ ├── uk_UA.ts │ │ ├── ur_PK.ts │ │ ├── vi_VN.ts │ │ ├── zh_CN.ts │ │ ├── zh_TW.ts │ │ └── kmr_IQ.ts │ ├── index.tsx │ ├── __tests__ │ │ └── demo.test.js │ ├── dayjs.tsx │ ├── date-fns.tsx │ └── moment.tsx ├── tag │ └── __tests__ │ │ └── demo.test.js ├── vc-dropdown │ └── index.ts ├── vc-slider │ ├── index.ts │ └── src │ │ └── index.ts ├── _util │ ├── isValidValue.ts │ ├── static-style-extract │ │ └── interface.ts │ ├── isValid.ts │ ├── isNumeric.ts │ ├── cssinjs │ │ ├── transformers │ │ │ └── interface.ts │ │ ├── theme │ │ │ ├── index.ts │ │ │ └── interface.ts │ │ └── linters │ │ │ ├── interface.ts │ │ │ └── index.ts │ ├── canUseDom.ts │ ├── unreachableException.ts │ ├── easings.ts │ ├── firstNotUndefined.ts │ ├── hooks │ │ ├── useDestroyed.ts │ │ ├── _vueuse │ │ │ ├── resolveUnref.ts │ │ │ ├── useSupported.ts │ │ │ └── tryOnScopeDispose.ts │ │ └── useFlexGapSupport.ts │ ├── __mocks__ │ │ ├── Portal.tsx │ │ └── RenderSlot.tsx │ ├── __tests__ │ │ ├── unreachableException.test.js │ │ └── easings.test.js │ ├── omit.ts │ └── supportsPassive.js ├── affix │ └── __tests__ │ │ └── demo.test.js ├── alert │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── basic.vue │ │ └── close-text.vue ├── anchor │ └── __tests__ │ │ └── demo.test.js ├── avatar │ └── __tests__ │ │ └── demo.test.js ├── badge │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── link.vue │ │ └── title.vue ├── button │ └── __tests__ │ │ └── demo.test.js ├── card │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── simple.vue ├── drawer │ └── __tests__ │ │ └── demo.test.js ├── empty │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── basic.vue │ │ └── description.vue ├── flex │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── wrap.vue ├── grid │ ├── __tests__ │ │ └── demo.test.js │ └── index.ts ├── image │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── basic.vue ├── layout │ ├── __tests__ │ │ └── demo.test.js │ └── injectionKey.ts ├── menu │ └── __tests__ │ │ └── demo.test.js ├── qrcode │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── icon.vue ├── radio │ ├── __tests__ │ │ ├── demo.test.js │ │ └── __snapshots__ │ │ │ └── radio.test.js.snap │ └── demo │ │ └── basic.vue ├── rate │ ├── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js │ └── demo │ │ ├── disabled.vue │ │ ├── basic.vue │ │ └── half.vue ├── result │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── info.vue │ │ └── 500.vue ├── space │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── wrap.vue ├── spin │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── basic.vue ├── steps │ └── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js ├── switch │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── basic.vue ├── tour │ └── __tests__ │ │ └── demo.test.js ├── vc-slick │ └── index.js ├── carousel │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── abstract01.jpg │ │ ├── abstract02.jpg │ │ ├── abstract03.jpg │ │ └── abstract04.jpg ├── cascader │ └── __tests__ │ │ └── demo.test.js ├── checkbox │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── basic.vue ├── col │ ├── style │ │ └── index.ts │ └── index.ts ├── collapse │ └── __tests__ │ │ └── demo.test.js ├── comment │ └── __tests__ │ │ └── demo.test.js ├── divider │ ├── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js │ └── demo │ │ └── vertical.vue ├── dropdown │ └── __tests__ │ │ └── demo.test.js ├── mentions │ └── __tests__ │ │ └── demo.test.js ├── message │ └── __tests__ │ │ └── demo.test.js ├── popover │ └── __tests__ │ │ └── demo.test.js ├── progress │ ├── __tests__ │ │ └── demo.test.js │ ├── index.ts │ └── demo │ │ ├── circle.vue │ │ └── dashboard.vue ├── row │ ├── style │ │ └── index.ts │ └── index.ts ├── skeleton │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ ├── basic.vue │ │ ├── active.vue │ │ └── complex.vue ├── timeline │ └── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js ├── tooltip │ ├── __tests__ │ │ └── demo.test.js │ ├── index.ts │ └── demo │ │ └── basic.vue ├── transfer │ ├── __tests__ │ │ └── demo.test.js │ └── interface.ts ├── vc-tooltip │ └── index.ts ├── vc-virtual-list │ ├── index.ts │ ├── utils │ │ └── isFirefox.ts │ └── interface.ts ├── date-picker │ ├── __tests__ │ │ ├── demo.test.js │ │ └── mount.test.js │ ├── index.tsx │ ├── PickerTag.tsx │ └── PickerButton.tsx ├── input-number │ ├── src │ │ └── utils │ │ │ └── supportUtil.ts │ └── __tests__ │ │ └── demo.test.js ├── pagination │ ├── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js │ ├── index.ts │ └── demo │ │ ├── more.vue │ │ ├── simple.vue │ │ └── basic.vue ├── popconfirm │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── local.vue ├── segmented │ ├── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js │ ├── src │ │ └── index.ts │ └── index.ts ├── statistic │ └── __tests__ │ │ └── demo.test.js ├── time-picker │ ├── __tests__ │ │ └── demo.test.js │ ├── locale │ │ ├── pt_BR.ts │ │ ├── pt_PT.ts │ │ ├── zh_TW.ts │ │ ├── az_AZ.ts │ │ ├── cs_CZ.ts │ │ ├── et_EE.ts │ │ ├── he_IL.ts │ │ ├── is_IS.ts │ │ ├── mn_MN.ts │ │ ├── sk_SK.ts │ │ ├── sv_SE.ts │ │ ├── th_TH.ts │ │ ├── ar_EG.ts │ │ ├── bg_BG.ts │ │ ├── de_DE.ts │ │ ├── el_GR.ts │ │ ├── en_GB.ts │ │ ├── fi_FI.ts │ │ ├── gl_ES.ts │ │ ├── hu_HU.ts │ │ ├── id_ID.ts │ │ ├── kmr_IQ.ts │ │ ├── kn_IN.ts │ │ ├── mk_MK.ts │ │ ├── ms_MY.ts │ │ ├── pl_PL.ts │ │ ├── ro_RO.ts │ │ ├── sl_SI.ts │ │ ├── uk_UA.ts │ │ ├── vi_VN.ts │ │ ├── ca_ES.ts │ │ ├── es_ES.ts │ │ ├── fr_BE.ts │ │ ├── it_IT.ts │ │ ├── lv_LV.ts │ │ ├── ta_IN.ts │ │ ├── ja_JP.ts │ │ ├── ko_KR.ts │ │ ├── zh_CN.ts │ │ ├── nb_NO.ts │ │ ├── bn_BD.ts │ │ ├── en_US.ts │ │ ├── fa_IR.ts │ │ ├── km_KH.ts │ │ ├── da_DK.ts │ │ ├── ga_IE.ts │ │ ├── hi_IN.ts │ │ ├── nl_BE.ts │ │ ├── nl_NL.ts │ │ ├── ur_PK.ts │ │ ├── by_BY.ts │ │ ├── ka_GE.ts │ │ ├── ml_IN.ts │ │ ├── sr_RS.ts │ │ ├── tr_TR.ts │ │ ├── fr_CA.ts │ │ ├── fr_FR.ts │ │ ├── kk_KZ.ts │ │ ├── hr_HR.ts │ │ ├── lt_LT.ts │ │ └── ru_RU.ts │ ├── index.tsx │ └── demo │ │ ├── range-picker.vue │ │ ├── disabled.vue │ │ └── bordered.vue ├── tree-select │ └── __tests__ │ │ ├── demo.test.js │ │ └── index.test.js ├── typography │ └── __tests__ │ │ └── demo.test.js ├── vc-drawer │ └── index.ts ├── watermark │ ├── __tests__ │ │ ├── demo.test.js │ │ └── __snapshots__ │ │ │ └── index.test.js.snap │ └── demo │ │ └── basic.vue ├── auto-complete │ └── __tests__ │ │ └── demo.test.js ├── descriptions │ └── __tests__ │ │ └── demo.test.js ├── float-button │ ├── __tests__ │ │ └── demo.test.js │ ├── util.ts │ └── demo │ │ └── basic.vue ├── locale-provider │ ├── index.ts │ └── LocaleReceiver.tsx ├── notification │ └── __tests__ │ │ └── demo.test.js ├── icon │ ├── __tests__ │ │ └── demo.test.js │ └── index.tsx ├── table │ └── __tests__ │ │ └── demo.test.js ├── tabs │ ├── __tests__ │ │ └── demo.test.js │ └── src │ │ └── index.ts ├── form │ ├── __tests__ │ │ └── demo.test.js │ └── utils │ │ └── typeUtil.ts ├── select │ └── __tests__ │ │ └── demo.test.js ├── breadcrumb │ └── __tests__ │ │ └── demo.test.js ├── vc-image │ └── index.ts ├── version │ └── index.ts ├── input │ ├── __tests__ │ │ └── demo.test.js │ └── demo │ │ └── borderless.vue ├── upload │ ├── __tests__ │ │ ├── demo.test.js │ │ ├── requests.js │ │ └── mock.js │ └── style │ │ └── rtl.ts ├── page-header │ └── __tests__ │ │ └── demo.test.js ├── vc-steps │ ├── index.ts │ └── interface.ts ├── slider │ └── __tests__ │ │ └── demo.test.js ├── vc-select │ ├── utils │ │ ├── platformUtil.ts │ │ └── commonUtil.ts │ └── interface.ts ├── list │ ├── __tests__ │ │ ├── demo.test.js │ │ └── empty.test.js │ └── contextKey.ts ├── vc-overflow │ └── index.ts ├── vc-mentions │ └── index.ts ├── vc-upload │ ├── index.ts │ └── uid.ts ├── vc-dialog │ └── index.ts ├── vc-input │ └── utils │ │ └── types.ts ├── vc-notification │ └── index.ts ├── vc-progress │ ├── index.ts │ └── src │ │ └── index.ts ├── vc-util │ ├── devWarning.ts │ ├── Dom │ │ └── contains.ts │ └── get.ts ├── vc-trigger │ └── index.ts ├── vc-tour │ ├── index.ts │ └── util.ts ├── vc-picker │ ├── hooks │ │ └── useMergeProps.ts │ ├── utils │ │ └── getExtraFooter.tsx │ └── index.tsx ├── vc-tree │ └── index.ts ├── theme │ ├── __tests__ │ │ └── util.test.js │ └── themes │ │ ├── dark │ │ └── colorAlgorithm.ts │ │ ├── default │ │ └── colorAlgorithm.ts │ │ └── shared │ │ └── genControlHeight.ts ├── vc-cascader │ └── index.tsx └── vc-tree-select │ └── index.tsx ├── index.esm.js ├── .gitattributes ├── site ├── src │ ├── SymbolKey.ts │ ├── assets │ │ └── logo.png │ ├── components │ │ ├── antdv-token-previewer │ │ │ ├── meta │ │ │ │ └── index.ts │ │ │ ├── utils │ │ │ │ ├── isColor.ts │ │ │ │ └── getValueByPath.ts │ │ │ ├── overviews │ │ │ │ └── index.ts │ │ │ ├── component-demos │ │ │ │ ├── rate │ │ │ │ │ ├── index.ts │ │ │ │ │ └── rate.tsx │ │ │ │ ├── space │ │ │ │ │ └── index.ts │ │ │ │ ├── empty │ │ │ │ │ ├── index.ts │ │ │ │ │ └── empty.tsx │ │ │ │ ├── grid │ │ │ │ │ └── index.ts │ │ │ │ ├── icon │ │ │ │ │ └── index.ts │ │ │ │ ├── list │ │ │ │ │ └── index.ts │ │ │ │ ├── popover │ │ │ │ │ └── index.ts │ │ │ │ ├── skeleton │ │ │ │ │ ├── index.ts │ │ │ │ │ └── skeleton.tsx │ │ │ │ ├── spin │ │ │ │ │ ├── index.ts │ │ │ │ │ └── spin.tsx │ │ │ │ ├── switch │ │ │ │ │ └── index.ts │ │ │ │ ├── tooltip │ │ │ │ │ └── index.ts │ │ │ │ ├── divider │ │ │ │ │ └── index.ts │ │ │ │ ├── drawer │ │ │ │ │ └── index.ts │ │ │ │ ├── popconfirm │ │ │ │ │ └── index.ts │ │ │ │ ├── segmented │ │ │ │ │ └── index.ts │ │ │ │ ├── statistic │ │ │ │ │ └── index.ts │ │ │ │ ├── timePicker │ │ │ │ │ ├── index.ts │ │ │ │ │ └── time-picker.tsx │ │ │ │ ├── breadcrumb │ │ │ │ │ └── index.ts │ │ │ │ ├── carousel │ │ │ │ │ └── index.ts │ │ │ │ ├── collapse │ │ │ │ │ └── index.ts │ │ │ │ ├── dropdown │ │ │ │ │ └── index.ts │ │ │ │ ├── autoComplete │ │ │ │ │ └── index.ts │ │ │ │ ├── descriptions │ │ │ │ │ └── index.ts │ │ │ │ ├── steps │ │ │ │ │ └── index.ts │ │ │ │ ├── tabs │ │ │ │ │ └── index.ts │ │ │ │ ├── tree │ │ │ │ │ └── index.ts │ │ │ │ ├── image │ │ │ │ │ ├── index.ts │ │ │ │ │ └── disabled.tsx │ │ │ │ ├── table │ │ │ │ │ └── index.ts │ │ │ │ ├── calendar │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── calendar.tsx │ │ │ │ │ └── disabled.tsx │ │ │ │ ├── checkbox │ │ │ │ │ ├── index.ts │ │ │ │ │ └── disabled.tsx │ │ │ │ ├── slider │ │ │ │ │ └── index.ts │ │ │ │ ├── anchor │ │ │ │ │ └── index.ts │ │ │ │ ├── treeSelect │ │ │ │ │ └── index.ts │ │ │ │ ├── transfer │ │ │ │ │ ├── data.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── select │ │ │ │ │ └── data.ts │ │ │ │ ├── card │ │ │ │ │ └── index.ts │ │ │ │ ├── upload │ │ │ │ │ └── index.ts │ │ │ │ ├── form │ │ │ │ │ └── index.tsx │ │ │ │ ├── radio │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── disabled.tsx │ │ │ │ │ └── radio.tsx │ │ │ │ ├── timeline │ │ │ │ │ └── index.ts │ │ │ │ ├── pagination │ │ │ │ │ └── index.tsx │ │ │ │ ├── cascader │ │ │ │ │ └── index.ts │ │ │ │ ├── menu │ │ │ │ │ └── index.ts │ │ │ │ ├── avatar │ │ │ │ │ └── index.tsx │ │ │ │ ├── badge │ │ │ │ │ └── index.ts │ │ │ │ ├── datePicker │ │ │ │ │ ├── icon.tsx │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── danger.tsx │ │ │ │ │ └── warning.tsx │ │ │ │ ├── mentions │ │ │ │ │ └── index.ts │ │ │ │ ├── inputNumber │ │ │ │ │ ├── index.ts │ │ │ │ │ └── disabled.tsx │ │ │ │ ├── button │ │ │ │ │ └── defaultButton.tsx │ │ │ │ ├── input │ │ │ │ │ ├── disabled.tsx │ │ │ │ │ └── input.tsx │ │ │ │ ├── tag │ │ │ │ │ ├── closable.tsx │ │ │ │ │ ├── error.tsx │ │ │ │ │ ├── info.tsx │ │ │ │ │ ├── success.tsx │ │ │ │ │ └── warning.tsx │ │ │ │ ├── alert │ │ │ │ │ └── index.ts │ │ │ │ ├── message │ │ │ │ │ └── index.ts │ │ │ │ ├── notification │ │ │ │ │ └── index.ts │ │ │ │ ├── progress │ │ │ │ │ └── index.ts │ │ │ │ ├── modal │ │ │ │ │ └── index.ts │ │ │ │ ├── result │ │ │ │ │ └── index.ts │ │ │ │ └── typography │ │ │ │ │ ├── Heading4.tsx │ │ │ │ │ └── index.tsx │ │ │ └── locale │ │ │ │ ├── index.ts │ │ │ │ └── interface.tsx │ │ ├── vue-colorful │ │ │ ├── css │ │ │ │ └── styles.css.d.ts │ │ │ ├── utils │ │ │ │ ├── format.ts │ │ │ │ ├── round.ts │ │ │ │ └── clamp.ts │ │ │ ├── index.ts │ │ │ └── hooks │ │ │ │ └── useEventCallback.ts │ │ ├── SimpleLayout.vue │ │ └── Contributors │ │ │ └── constants.ts │ ├── SiteToken.vue │ ├── type.ts │ ├── services │ │ ├── user.js │ │ └── login.js │ ├── theme │ │ └── static │ │ │ ├── nprogress.less │ │ │ └── highlight.dark.less │ └── layouts │ │ └── Iframe.vue ├── public │ ├── logo.png │ ├── vue.png │ ├── favicon.ico │ └── jeecg-logo.png ├── debugger │ ├── demo │ │ └── demo.vue │ └── index.tsx └── typings.d.ts ├── logo.png ├── renovate.json ├── antd-tools ├── generator-types │ ├── README.md │ └── tsconfig.json └── getNpm.js ├── postcss.config.js ├── index.js ├── tests ├── __mocks__ │ └── copy-to-clipboard.js ├── setupAfterEnv.ts └── index.test.js ├── scripts ├── .npmrc.template ├── generate-version.js └── compact-vars.js ├── .github ├── FUNDING.yml └── workflows │ └── emoji-helper.yml ├── .huskyrc ├── .editorconfig ├── .eslintignore ├── index-with-locales.js ├── .prettierrc ├── .vcmrc ├── wrangler.jsonc └── .prettierignore /.husky/.gitignore: -------------------------------------------------------------------------------- 1 | _ 2 | -------------------------------------------------------------------------------- /.npmrc: -------------------------------------------------------------------------------- 1 | enable-pre-post-scripts=true 2 | -------------------------------------------------------------------------------- /.codecov.yml: -------------------------------------------------------------------------------- 1 | codecov: 2 | branch: master 3 | -------------------------------------------------------------------------------- /components/tree/breakchange.md: -------------------------------------------------------------------------------- 1 | title 的渲染逻辑 2 | -------------------------------------------------------------------------------- /index.esm.js: -------------------------------------------------------------------------------- 1 | export * from './components'; 2 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.jsx linguist-language=Vue 2 | *.tsx linguist-language=Vue 3 | -------------------------------------------------------------------------------- /components/vc-table/constant.ts: -------------------------------------------------------------------------------- 1 | export const EXPAND_COLUMN = {} as const; 2 | -------------------------------------------------------------------------------- /site/src/SymbolKey.ts: -------------------------------------------------------------------------------- 1 | export const GLOBAL_CONFIG = Symbol('globalConfig'); 2 | -------------------------------------------------------------------------------- /logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/logo.png -------------------------------------------------------------------------------- /renovate.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["config:base", ":preserveSemverRanges"] 3 | } 4 | -------------------------------------------------------------------------------- /antd-tools/generator-types/README.md: -------------------------------------------------------------------------------- 1 | fork github.com/youzan/vant packages/generator-types 2 | -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | plugins: [require('autoprefixer')], 3 | }; 4 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | require('./index-style-only'); 2 | 3 | module.exports = require('./components'); 4 | -------------------------------------------------------------------------------- /site/public/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/site/public/logo.png -------------------------------------------------------------------------------- /site/public/vue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/site/public/vue.png -------------------------------------------------------------------------------- /components/modal/destroyFns.ts: -------------------------------------------------------------------------------- 1 | const destroyFns: Array = []; 2 | export default destroyFns; 3 | -------------------------------------------------------------------------------- /components/vc-pagination/index.ts: -------------------------------------------------------------------------------- 1 | // based on rc-pagination 3.1.9 2 | export { default } from './Pagination'; 3 | -------------------------------------------------------------------------------- /site/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/site/public/favicon.ico -------------------------------------------------------------------------------- /site/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/site/src/assets/logo.png -------------------------------------------------------------------------------- /.husky/pre-commit: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | . "$(dirname "$0")/_/husky.sh" 3 | 4 | npx --no-install pretty-quick --staged 5 | -------------------------------------------------------------------------------- /components/vc-align/index.ts: -------------------------------------------------------------------------------- 1 | // based on rc-align 4.0.9 2 | import Align from './Align'; 3 | export default Align; 4 | -------------------------------------------------------------------------------- /site/public/jeecg-logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/site/public/jeecg-logo.png -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/meta/index.ts: -------------------------------------------------------------------------------- 1 | export { default as tokenCategory } from './category'; 2 | -------------------------------------------------------------------------------- /components/app/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('app'); 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ar_EG.ts: -------------------------------------------------------------------------------- 1 | import arEG from '../../date-picker/locale/ar_EG'; 2 | 3 | export default arEG; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/az_AZ.ts: -------------------------------------------------------------------------------- 1 | import azAZ from '../../date-picker/locale/az_AZ'; 2 | 3 | export default azAZ; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/bg_BG.ts: -------------------------------------------------------------------------------- 1 | import bgBG from '../../date-picker/locale/bg_BG'; 2 | 3 | export default bgBG; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/bn_BD.ts: -------------------------------------------------------------------------------- 1 | import bnBD from '../../date-picker/locale/bn_BD'; 2 | 3 | export default bnBD; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/by_BY.ts: -------------------------------------------------------------------------------- 1 | import byBY from '../../date-picker/locale/by_BY'; 2 | 3 | export default byBY; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ca_ES.ts: -------------------------------------------------------------------------------- 1 | import caES from '../../date-picker/locale/ca_ES'; 2 | 3 | export default caES; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/cs_CZ.ts: -------------------------------------------------------------------------------- 1 | import csCZ from '../../date-picker/locale/cs_CZ'; 2 | 3 | export default csCZ; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/da_DK.ts: -------------------------------------------------------------------------------- 1 | import daDK from '../../date-picker/locale/da_DK'; 2 | 3 | export default daDK; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/de_DE.ts: -------------------------------------------------------------------------------- 1 | import deDE from '../../date-picker/locale/de_DE'; 2 | 3 | export default deDE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/el_GR.ts: -------------------------------------------------------------------------------- 1 | import elGR from '../../date-picker/locale/el_GR'; 2 | 3 | export default elGR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/en_GB.ts: -------------------------------------------------------------------------------- 1 | import enGB from '../../date-picker/locale/en_GB'; 2 | 3 | export default enGB; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/en_US.ts: -------------------------------------------------------------------------------- 1 | import enUS from '../../date-picker/locale/en_US'; 2 | 3 | export default enUS; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/es_ES.ts: -------------------------------------------------------------------------------- 1 | import esES from '../../date-picker/locale/es_ES'; 2 | 3 | export default esES; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/et_EE.ts: -------------------------------------------------------------------------------- 1 | import etEE from '../../date-picker/locale/et_EE'; 2 | 3 | export default etEE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/fa_IR.ts: -------------------------------------------------------------------------------- 1 | import faIR from '../../date-picker/locale/fa_IR'; 2 | 3 | export default faIR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/fi_FI.ts: -------------------------------------------------------------------------------- 1 | import fiFI from '../../date-picker/locale/fi_FI'; 2 | 3 | export default fiFI; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/fr_BE.ts: -------------------------------------------------------------------------------- 1 | import frBE from '../../date-picker/locale/fr_BE'; 2 | 3 | export default frBE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/fr_CA.ts: -------------------------------------------------------------------------------- 1 | import frCA from '../../date-picker/locale/fr_CA'; 2 | 3 | export default frCA; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/fr_FR.ts: -------------------------------------------------------------------------------- 1 | import frFR from '../../date-picker/locale/fr_FR'; 2 | 3 | export default frFR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ga_IE.ts: -------------------------------------------------------------------------------- 1 | import gaIE from '../../date-picker/locale/ga_IE'; 2 | 3 | export default gaIE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/gl_ES.ts: -------------------------------------------------------------------------------- 1 | import glES from '../../date-picker/locale/gl_ES'; 2 | 3 | export default glES; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/he_IL.ts: -------------------------------------------------------------------------------- 1 | import heIL from '../../date-picker/locale/he_IL'; 2 | 3 | export default heIL; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/hi_IN.ts: -------------------------------------------------------------------------------- 1 | import hiIN from '../../date-picker/locale/hi_IN'; 2 | 3 | export default hiIN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/hr_HR.ts: -------------------------------------------------------------------------------- 1 | import hrHR from '../../date-picker/locale/hr_HR'; 2 | 3 | export default hrHR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/hu_HU.ts: -------------------------------------------------------------------------------- 1 | import huHU from '../../date-picker/locale/hu_HU'; 2 | 3 | export default huHU; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/id_ID.ts: -------------------------------------------------------------------------------- 1 | import idID from '../../date-picker/locale/id_ID'; 2 | 3 | export default idID; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/is_IS.ts: -------------------------------------------------------------------------------- 1 | import isIS from '../../date-picker/locale/is_IS'; 2 | 3 | export default isIS; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/it_IT.ts: -------------------------------------------------------------------------------- 1 | import itIT from '../../date-picker/locale/it_IT'; 2 | 3 | export default itIT; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ja_JP.ts: -------------------------------------------------------------------------------- 1 | import jaJP from '../../date-picker/locale/ja_JP'; 2 | 3 | export default jaJP; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ka_GE.ts: -------------------------------------------------------------------------------- 1 | import kaGE from '../../date-picker/locale/ka_GE'; 2 | 3 | export default kaGE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/kk_KZ.ts: -------------------------------------------------------------------------------- 1 | import kkKZ from '../../date-picker/locale/kk_KZ'; 2 | 3 | export default kkKZ; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/km_KH.ts: -------------------------------------------------------------------------------- 1 | import kmKH from '../../date-picker/locale/km_KH'; 2 | 3 | export default kmKH; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/kn_IN.ts: -------------------------------------------------------------------------------- 1 | import knIN from '../../date-picker/locale/kn_IN'; 2 | 3 | export default knIN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ko_KR.ts: -------------------------------------------------------------------------------- 1 | import koKR from '../../date-picker/locale/ko_KR'; 2 | 3 | export default koKR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/lt_LT.ts: -------------------------------------------------------------------------------- 1 | import ltLT from '../../date-picker/locale/lt_LT'; 2 | 3 | export default ltLT; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/lv_LV.ts: -------------------------------------------------------------------------------- 1 | import lvLV from '../../date-picker/locale/lv_LV'; 2 | 3 | export default lvLV; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/mk_MK.ts: -------------------------------------------------------------------------------- 1 | import mkMK from '../../date-picker/locale/mk_MK'; 2 | 3 | export default mkMK; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ml_IN.ts: -------------------------------------------------------------------------------- 1 | import mlIN from '../../date-picker/locale/ml_IN'; 2 | 3 | export default mlIN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/mn_MN.ts: -------------------------------------------------------------------------------- 1 | import mnMN from '../../date-picker/locale/mn_MN'; 2 | 3 | export default mnMN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ms_MY.ts: -------------------------------------------------------------------------------- 1 | import msMY from '../../date-picker/locale/ms_MY'; 2 | 3 | export default msMY; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/nb_NO.ts: -------------------------------------------------------------------------------- 1 | import nbNO from '../../date-picker/locale/nb_NO'; 2 | 3 | export default nbNO; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/nl_BE.ts: -------------------------------------------------------------------------------- 1 | import nlBE from '../../date-picker/locale/nl_BE'; 2 | 3 | export default nlBE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/nl_NL.ts: -------------------------------------------------------------------------------- 1 | import nlNL from '../../date-picker/locale/nl_NL'; 2 | 3 | export default nlNL; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/pl_PL.ts: -------------------------------------------------------------------------------- 1 | import plPL from '../../date-picker/locale/pl_PL'; 2 | 3 | export default plPL; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/pt_BR.ts: -------------------------------------------------------------------------------- 1 | import ptBR from '../../date-picker/locale/pt_BR'; 2 | 3 | export default ptBR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/pt_PT.ts: -------------------------------------------------------------------------------- 1 | import ptPT from '../../date-picker/locale/pt_PT'; 2 | 3 | export default ptPT; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ro_RO.ts: -------------------------------------------------------------------------------- 1 | import roRO from '../../date-picker/locale/ro_RO'; 2 | 3 | export default roRO; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ru_RU.ts: -------------------------------------------------------------------------------- 1 | import ruRU from '../../date-picker/locale/ru_RU'; 2 | 3 | export default ruRU; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/sk_SK.ts: -------------------------------------------------------------------------------- 1 | import skSK from '../../date-picker/locale/sk_SK'; 2 | 3 | export default skSK; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/sl_SI.ts: -------------------------------------------------------------------------------- 1 | import slSI from '../../date-picker/locale/sl_SI'; 2 | 3 | export default slSI; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/sr_RS.ts: -------------------------------------------------------------------------------- 1 | import srRS from '../../date-picker/locale/sr_RS'; 2 | 3 | export default srRS; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/sv_SE.ts: -------------------------------------------------------------------------------- 1 | import svSE from '../../date-picker/locale/sv_SE'; 2 | 3 | export default svSE; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ta_IN.ts: -------------------------------------------------------------------------------- 1 | import taIN from '../../date-picker/locale/ta_IN'; 2 | 3 | export default taIN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/th_TH.ts: -------------------------------------------------------------------------------- 1 | import thTH from '../../date-picker/locale/th_TH'; 2 | 3 | export default thTH; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/tr_TR.ts: -------------------------------------------------------------------------------- 1 | import trTR from '../../date-picker/locale/tr_TR'; 2 | 3 | export default trTR; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/uk_UA.ts: -------------------------------------------------------------------------------- 1 | import ukUA from '../../date-picker/locale/uk_UA'; 2 | 3 | export default ukUA; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/ur_PK.ts: -------------------------------------------------------------------------------- 1 | import urPK from '../../date-picker/locale/ur_PK'; 2 | 3 | export default urPK; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/vi_VN.ts: -------------------------------------------------------------------------------- 1 | import viVN from '../../date-picker/locale/vi_VN'; 2 | 3 | export default viVN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/zh_CN.ts: -------------------------------------------------------------------------------- 1 | import zhCN from '../../date-picker/locale/zh_CN'; 2 | 3 | export default zhCN; 4 | -------------------------------------------------------------------------------- /components/calendar/locale/zh_TW.ts: -------------------------------------------------------------------------------- 1 | import zhTW from '../../date-picker/locale/zh_TW'; 2 | 3 | export default zhTW; 4 | -------------------------------------------------------------------------------- /components/tag/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tag'); 4 | -------------------------------------------------------------------------------- /components/vc-dropdown/index.ts: -------------------------------------------------------------------------------- 1 | // base in 3.2.0 2 | import Dropdown from './Dropdown'; 3 | export default Dropdown; 4 | -------------------------------------------------------------------------------- /components/vc-slider/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-slider 9.7.2 2 | import Slider from './src/'; 3 | 4 | export default Slider; 5 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/css/styles.css.d.ts: -------------------------------------------------------------------------------- 1 | declare const cssString: string; 2 | export default cssString; 3 | -------------------------------------------------------------------------------- /tests/__mocks__/copy-to-clipboard.js: -------------------------------------------------------------------------------- 1 | function copy(str) { 2 | copy.lastStr = str; 3 | } 4 | 5 | export default copy; 6 | -------------------------------------------------------------------------------- /components/_util/isValidValue.ts: -------------------------------------------------------------------------------- 1 | export default function (val: any) { 2 | return val !== undefined && val !== null; 3 | } 4 | -------------------------------------------------------------------------------- /components/affix/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('affix'); 4 | -------------------------------------------------------------------------------- /components/alert/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('alert'); 4 | -------------------------------------------------------------------------------- /components/anchor/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('anchor'); 4 | -------------------------------------------------------------------------------- /components/avatar/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('avatar'); 4 | -------------------------------------------------------------------------------- /components/badge/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('badge'); 4 | -------------------------------------------------------------------------------- /components/button/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('button'); 4 | -------------------------------------------------------------------------------- /components/calendar/index.tsx: -------------------------------------------------------------------------------- 1 | import Calendar from './dayjs'; 2 | export * from './dayjs'; 3 | 4 | export default Calendar; 5 | -------------------------------------------------------------------------------- /components/calendar/locale/kmr_IQ.ts: -------------------------------------------------------------------------------- 1 | import kmrIQ from '../../date-picker/locale/kmr_IQ'; 2 | 3 | export default kmrIQ; 4 | -------------------------------------------------------------------------------- /components/card/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('card'); 4 | -------------------------------------------------------------------------------- /components/drawer/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('drawer'); 4 | -------------------------------------------------------------------------------- /components/empty/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('empty'); 4 | -------------------------------------------------------------------------------- /components/flex/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('flex'); 4 | -------------------------------------------------------------------------------- /components/grid/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('grid'); 4 | -------------------------------------------------------------------------------- /components/image/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('image'); 4 | -------------------------------------------------------------------------------- /components/layout/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('layout'); 4 | -------------------------------------------------------------------------------- /components/menu/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('menu'); 4 | -------------------------------------------------------------------------------- /components/modal/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('modal'); 4 | -------------------------------------------------------------------------------- /components/qrcode/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('qrcode'); 4 | -------------------------------------------------------------------------------- /components/radio/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('radio'); 4 | -------------------------------------------------------------------------------- /components/rate/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('rate'); 4 | -------------------------------------------------------------------------------- /components/result/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('result'); 4 | -------------------------------------------------------------------------------- /components/space/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('space'); 4 | -------------------------------------------------------------------------------- /components/spin/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('spin'); 4 | -------------------------------------------------------------------------------- /components/steps/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('steps'); 4 | -------------------------------------------------------------------------------- /components/switch/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('switch'); 4 | -------------------------------------------------------------------------------- /components/tour/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tour'); 4 | -------------------------------------------------------------------------------- /components/tree/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tree'); 4 | -------------------------------------------------------------------------------- /components/vc-slick/index.js: -------------------------------------------------------------------------------- 1 | // base react-slick 0.28.2 2 | import Slider from './slider'; 3 | 4 | export default Slider; 5 | -------------------------------------------------------------------------------- /site/src/components/SimpleLayout.vue: -------------------------------------------------------------------------------- 1 | 6 | -------------------------------------------------------------------------------- /components/calendar/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('calendar'); 4 | -------------------------------------------------------------------------------- /components/carousel/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('carousel'); 4 | -------------------------------------------------------------------------------- /components/cascader/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('cascader'); 4 | -------------------------------------------------------------------------------- /components/checkbox/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('checkbox'); 4 | -------------------------------------------------------------------------------- /components/col/style/index.ts: -------------------------------------------------------------------------------- 1 | // Compatible for babel-plugin-import 2 | 3 | /* istanbul ignore next */ 4 | export default {}; 5 | -------------------------------------------------------------------------------- /components/collapse/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('collapse'); 4 | -------------------------------------------------------------------------------- /components/comment/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('comment'); 4 | -------------------------------------------------------------------------------- /components/divider/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('divider'); 4 | -------------------------------------------------------------------------------- /components/dropdown/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('dropdown'); 4 | -------------------------------------------------------------------------------- /components/mentions/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('mentions'); 4 | -------------------------------------------------------------------------------- /components/message/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('message'); 4 | -------------------------------------------------------------------------------- /components/popover/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('popover'); 4 | -------------------------------------------------------------------------------- /components/progress/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('progress'); 4 | -------------------------------------------------------------------------------- /components/row/style/index.ts: -------------------------------------------------------------------------------- 1 | // Compatible for babel-plugin-import 2 | 3 | /* istanbul ignore next */ 4 | export default {}; 5 | -------------------------------------------------------------------------------- /components/skeleton/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('skeleton'); 4 | -------------------------------------------------------------------------------- /components/timeline/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('timeline'); 4 | -------------------------------------------------------------------------------- /components/tooltip/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tooltip'); 4 | -------------------------------------------------------------------------------- /components/transfer/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('transfer'); 4 | -------------------------------------------------------------------------------- /components/vc-tooltip/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-tooltip 5.1.1 2 | import Tooltip from './src/Tooltip'; 3 | 4 | export default Tooltip; 5 | -------------------------------------------------------------------------------- /components/vc-virtual-list/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-virtual-list 3.4.13 2 | import List from './List'; 3 | 4 | export default List; 5 | -------------------------------------------------------------------------------- /scripts/.npmrc.template: -------------------------------------------------------------------------------- 1 | //registry.npmjs.org/:_authToken=${NPM_TOKEN} 2 | loglevel=info 3 | registry=https://registry.npmjs.org/ 4 | -------------------------------------------------------------------------------- /components/date-picker/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('date-picker'); 4 | -------------------------------------------------------------------------------- /components/date-picker/index.tsx: -------------------------------------------------------------------------------- 1 | import DatePicker from './dayjs'; 2 | export * from './dayjs'; 3 | 4 | export default DatePicker; 5 | -------------------------------------------------------------------------------- /components/input-number/src/utils/supportUtil.ts: -------------------------------------------------------------------------------- 1 | export function supportBigInt() { 2 | return typeof BigInt === 'function'; 3 | } 4 | -------------------------------------------------------------------------------- /components/pagination/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('pagination'); 4 | -------------------------------------------------------------------------------- /components/popconfirm/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('popconfirm'); 4 | -------------------------------------------------------------------------------- /components/segmented/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('segmented'); 4 | -------------------------------------------------------------------------------- /components/statistic/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('statistic'); 4 | -------------------------------------------------------------------------------- /components/time-picker/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('time-picker'); 4 | -------------------------------------------------------------------------------- /components/tree-select/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tree-select'); 4 | -------------------------------------------------------------------------------- /components/typography/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('typography'); 4 | -------------------------------------------------------------------------------- /components/vc-drawer/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-drawer 4.4.3 2 | import Drawer from './src/DrawerWrapper'; 3 | 4 | export default Drawer; 5 | -------------------------------------------------------------------------------- /components/watermark/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('watermark'); 4 | -------------------------------------------------------------------------------- /components/auto-complete/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('auto-complete'); 4 | -------------------------------------------------------------------------------- /components/carousel/demo/abstract01.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/components/carousel/demo/abstract01.jpg -------------------------------------------------------------------------------- /components/carousel/demo/abstract02.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/components/carousel/demo/abstract02.jpg -------------------------------------------------------------------------------- /components/carousel/demo/abstract03.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/components/carousel/demo/abstract03.jpg -------------------------------------------------------------------------------- /components/carousel/demo/abstract04.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vueComponent/ant-design-vue/HEAD/components/carousel/demo/abstract04.jpg -------------------------------------------------------------------------------- /components/descriptions/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('descriptions'); 4 | -------------------------------------------------------------------------------- /components/float-button/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('float-button'); 4 | -------------------------------------------------------------------------------- /components/input-number/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('input-number'); 4 | -------------------------------------------------------------------------------- /components/locale-provider/index.ts: -------------------------------------------------------------------------------- 1 | import locale from '../locale'; 2 | 3 | export * from '../locale'; 4 | 5 | export default locale; 6 | -------------------------------------------------------------------------------- /components/notification/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('notification'); 4 | -------------------------------------------------------------------------------- /components/icon/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('icon', { skip: ['custom'] }); 4 | -------------------------------------------------------------------------------- /components/table/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('table', { skip: ['ajax'] }); 4 | -------------------------------------------------------------------------------- /components/tabs/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('tabs', { skip: ['position'] }); 4 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/utils/format.ts: -------------------------------------------------------------------------------- 1 | export const formatClassName = (names: unknown[]): string => names.filter(Boolean).join(' '); 2 | -------------------------------------------------------------------------------- /components/form/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('form', { skip: ['price-input'] }); 4 | -------------------------------------------------------------------------------- /components/select/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('select', { skip: ['big-data'] }); 4 | -------------------------------------------------------------------------------- /components/_util/static-style-extract/interface.ts: -------------------------------------------------------------------------------- 1 | import type { VueNode } from '../type'; 2 | 3 | export type CustomRender = (node: VueNode) => VueNode; 4 | -------------------------------------------------------------------------------- /components/breadcrumb/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('breadcrumb', { skip: ['router'] }); 4 | -------------------------------------------------------------------------------- /components/vc-image/index.ts: -------------------------------------------------------------------------------- 1 | // based on rc-image 4.3.2 2 | import Image from './src/Image'; 3 | export * from './src/Image'; 4 | export default Image; 5 | -------------------------------------------------------------------------------- /components/version/index.ts: -------------------------------------------------------------------------------- 1 | /* eslint import/no-unresolved: 0 */ 2 | // @ts-ignore 3 | import version from './version'; 4 | 5 | export default version; 6 | -------------------------------------------------------------------------------- /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: # [tangjinzhou] 4 | open_collective: ant-design-vue 5 | patreon: tangjinzhou 6 | -------------------------------------------------------------------------------- /components/input/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('input', { skip: ['autosize-textarea'] }); 4 | -------------------------------------------------------------------------------- /components/upload/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('upload', { skip: ['upload-manually'] }); 4 | -------------------------------------------------------------------------------- /components/vc-virtual-list/utils/isFirefox.ts: -------------------------------------------------------------------------------- 1 | const isFF = typeof navigator === 'object' && /Firefox/i.test(navigator.userAgent); 2 | 3 | export default isFF; 4 | -------------------------------------------------------------------------------- /components/page-header/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('page-header', { getDomFromElement: true }); 4 | -------------------------------------------------------------------------------- /components/vc-steps/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-steps 4.1.3 2 | import Steps from './Steps'; 3 | import Step from './Step'; 4 | 5 | export { Step }; 6 | export default Steps; 7 | -------------------------------------------------------------------------------- /components/_util/isValid.ts: -------------------------------------------------------------------------------- 1 | const isValid = (value: any): boolean => { 2 | return value !== undefined && value !== null && value !== ''; 3 | }; 4 | export default isValid; 5 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/utils/isColor.ts: -------------------------------------------------------------------------------- 1 | export default function isColor(str: string) { 2 | return str.startsWith('rgb') || str.startsWith('#'); 3 | } 4 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/index.ts: -------------------------------------------------------------------------------- 1 | export { HexColorPicker } from './components/HexColorPicker'; 2 | export { RgbaColorPicker } from './components/RgbaColorPicker'; 3 | -------------------------------------------------------------------------------- /components/_util/isNumeric.ts: -------------------------------------------------------------------------------- 1 | const isNumeric = (value: any): boolean => { 2 | return !isNaN(parseFloat(value)) && isFinite(value); 3 | }; 4 | 5 | export default isNumeric; 6 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/overviews/index.ts: -------------------------------------------------------------------------------- 1 | export * from './Primary'; 2 | export * from './Success'; 3 | export * from './Warning'; 4 | export * from './Error'; 5 | -------------------------------------------------------------------------------- /components/_util/cssinjs/transformers/interface.ts: -------------------------------------------------------------------------------- 1 | import type { CSSObject } from '..'; 2 | 3 | export interface Transformer { 4 | visit?: (cssObj: CSSObject) => CSSObject; 5 | } 6 | -------------------------------------------------------------------------------- /site/debugger/demo/demo.vue: -------------------------------------------------------------------------------- 1 | 7 | -------------------------------------------------------------------------------- /components/slider/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('slider', { skip: process.env.LIB_DIR === 'dist' && ['show-tooltip.md'] }); 4 | -------------------------------------------------------------------------------- /components/vc-select/utils/platformUtil.ts: -------------------------------------------------------------------------------- 1 | /* istanbul ignore file */ 2 | export function isPlatformMac(): boolean { 3 | return /(mac\sos|macintosh)/i.test(navigator.appVersion); 4 | } 5 | -------------------------------------------------------------------------------- /components/vc-table/Panel/index.tsx: -------------------------------------------------------------------------------- 1 | function Panel(_, { slots }) { 2 | return
{slots.default?.()}
; 3 | } 4 | 5 | Panel.displayName = 'Panel'; 6 | 7 | export default Panel; 8 | -------------------------------------------------------------------------------- /site/src/SiteToken.vue: -------------------------------------------------------------------------------- 1 | 4 | 8 | -------------------------------------------------------------------------------- /components/_util/canUseDom.ts: -------------------------------------------------------------------------------- 1 | function canUseDom() { 2 | return !!(typeof window !== 'undefined' && window.document && window.document.createElement); 3 | } 4 | 5 | export default canUseDom; 6 | -------------------------------------------------------------------------------- /components/col/index.ts: -------------------------------------------------------------------------------- 1 | import { Col } from '../grid'; 2 | import { withInstall } from '../_util/type'; 3 | export type { ColProps, ColSize } from '../grid'; 4 | export default withInstall(Col); 5 | -------------------------------------------------------------------------------- /components/list/__tests__/demo.test.js: -------------------------------------------------------------------------------- 1 | import demoTest from '../../../tests/shared/demoTest'; 2 | 3 | demoTest('list', { skip: ['infinite-virtualized-load', 'infinite-load', 'loadmore'] }); 4 | -------------------------------------------------------------------------------- /components/locale-provider/LocaleReceiver.tsx: -------------------------------------------------------------------------------- 1 | import LocaleReceiver from '../locale/LocaleReceiver'; 2 | 3 | export * from '../locale/LocaleReceiver'; 4 | 5 | export default LocaleReceiver; 6 | -------------------------------------------------------------------------------- /components/steps/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import Steps from '..'; 2 | import mountTest from '../../../tests/shared/mountTest'; 3 | 4 | describe('Steps', () => { 5 | mountTest(Steps); 6 | }); 7 | -------------------------------------------------------------------------------- /components/vc-overflow/index.ts: -------------------------------------------------------------------------------- 1 | import type { OverflowProps } from './Overflow'; 2 | import Overflow from './Overflow'; 3 | 4 | export type { OverflowProps }; 5 | 6 | export default Overflow; 7 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/utils/round.ts: -------------------------------------------------------------------------------- 1 | export const round = (number: number, digits = 0, base = Math.pow(10, digits)): number => { 2 | return Math.round(base * number) / base; 3 | }; 4 | -------------------------------------------------------------------------------- /components/row/index.ts: -------------------------------------------------------------------------------- 1 | import { Row } from '../grid'; 2 | import { withInstall } from '../_util/type'; 3 | 4 | export type { RowProps } from '../grid'; 5 | 6 | export default withInstall(Row); 7 | -------------------------------------------------------------------------------- /components/segmented/src/index.ts: -------------------------------------------------------------------------------- 1 | import Segmented from './segmented'; 2 | import type { SegmentedProps } from './segmented'; 3 | 4 | export type { SegmentedProps }; 5 | export default Segmented; 6 | -------------------------------------------------------------------------------- /components/time-picker/locale/pt_BR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Hora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/pt_PT.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Hora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/zh_TW.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: '請選擇時間', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/vc-mentions/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-mentions .6.2 2 | import Mentions from './src/Mentions'; 3 | import Option from './src/Option'; 4 | 5 | export { Option }; 6 | export default Mentions; 7 | -------------------------------------------------------------------------------- /components/divider/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import Divider from '..'; 2 | import mountTest from '../../../tests/shared/mountTest'; 3 | 4 | describe('Divider', () => { 5 | mountTest(Divider); 6 | }); 7 | -------------------------------------------------------------------------------- /components/time-picker/locale/az_AZ.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Vaxtı seç', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/cs_CZ.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Vybrat čas', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/et_EE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Vali aeg', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/he_IL.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'בחר שעה', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/is_IS.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Velja tíma', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/mn_MN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Цаг сонгох', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/sk_SK.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Vybrať čas', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/sv_SE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Välj tid', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/th_TH.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'เลือกเวลา', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/ar_EG.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'اختيار الوقت', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/bg_BG.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Избор на час', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/de_DE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Zeit auswählen', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/el_GR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Επιλέξτε ώρα', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/en_GB.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Select time', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/fi_FI.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Valitse aika', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/gl_ES.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Escolla hora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/hu_HU.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Válasszon időt', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/id_ID.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Pilih waktu', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/kmr_IQ.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Demê hilbijêre', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/kn_IN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'ಸಮಯ ಆಯ್ಕೆಮಾಡಿ', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/mk_MK.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Избери време', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/ms_MY.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Sila pilih masa', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/pl_PL.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Wybierz godzinę', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/ro_RO.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Selectează ora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/sl_SI.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Izberite čas', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/uk_UA.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Оберіть час', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/vi_VN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Chọn thời gian', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/vc-upload/index.ts: -------------------------------------------------------------------------------- 1 | // rc-upload 4.3.3 2 | import Upload from './Upload'; 3 | import type { UploadProps } from './interface'; 4 | 5 | export type { UploadProps }; 6 | 7 | export default Upload; 8 | -------------------------------------------------------------------------------- /components/vc-upload/uid.ts: -------------------------------------------------------------------------------- 1 | const now = +new Date(); 2 | let index = 0; 3 | 4 | export default function uid() { 5 | // eslint-disable-next-line no-plusplus 6 | return `vc-upload-${now}-${++index}`; 7 | } 8 | -------------------------------------------------------------------------------- /.huskyrc: -------------------------------------------------------------------------------- 1 | { 2 | "hooks": { 3 | "pre-commit": "pretty-quick --staged", 4 | "pre-publish": "npm run lint", 5 | "commit-msg": "commitlint -x @commitlint/config-conventional -e $GIT_PARAMS" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /components/pagination/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import Pagination from '..'; 2 | import mountTest from '../../../tests/shared/mountTest'; 3 | 4 | describe('Pagination', () => { 5 | mountTest(Pagination); 6 | }); 7 | -------------------------------------------------------------------------------- /components/progress/index.ts: -------------------------------------------------------------------------------- 1 | import Progress from './progress'; 2 | import { withInstall } from '../_util/type'; 3 | 4 | export type { ProgressProps } from './props'; 5 | 6 | export default withInstall(Progress); 7 | -------------------------------------------------------------------------------- /components/time-picker/locale/ca_ES.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Seleccionar hora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/es_ES.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Seleccionar hora', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/fr_BE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: "Sélectionner l'heure", 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/it_IT.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: "Selezionare l'orario", 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/lv_LV.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Izvēlieties laiku', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /tests/setupAfterEnv.ts: -------------------------------------------------------------------------------- 1 | import { defaultConfig } from '../components/theme/internal'; 2 | 3 | // Not use dynamic hashed for test env since version will change hash dynamically. 4 | defaultConfig.hashed = false; 5 | -------------------------------------------------------------------------------- /components/vc-dialog/index.ts: -------------------------------------------------------------------------------- 1 | // based on vc-dialog 8.6.0 2 | import DialogWrap from './DialogWrap'; 3 | import dialogProps from './IDialogPropTypes'; 4 | 5 | export { dialogProps }; 6 | 7 | export default DialogWrap; 8 | -------------------------------------------------------------------------------- /components/vc-input/utils/types.ts: -------------------------------------------------------------------------------- 1 | /** https://github.com/Microsoft/TypeScript/issues/29729 */ 2 | // eslint-disable-next-line @typescript-eslint/ban-types 3 | export type LiteralUnion = T | (U & {}); 4 | -------------------------------------------------------------------------------- /components/time-picker/locale/ta_IN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'நேரத்தைத் தேர்ந்தெடுக்கவும்', 5 | }; 6 | 7 | export default locale; 8 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # 🎨 editorconfig.org 2 | 3 | root = true 4 | 5 | [*] 6 | charset = utf-8 7 | end_of_line = lf 8 | indent_style = space 9 | indent_size = 2 10 | trim_trailing_whitespace = true 11 | insert_final_newline = true -------------------------------------------------------------------------------- /components/transfer/interface.ts: -------------------------------------------------------------------------------- 1 | export type PaginationType = 2 | | boolean 3 | | { 4 | pageSize?: number; 5 | simple?: boolean; 6 | showSizeChanger?: boolean; 7 | showLessItems?: boolean; 8 | }; 9 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | **/*.spec.* 3 | **/style/ 4 | *.html 5 | /components/test/* 6 | es/ 7 | lib/ 8 | _site/ 9 | dist/ 10 | site/dist/ 11 | components/version/version.ts 12 | site/src/router/demoRoutes.js 13 | locale/ -------------------------------------------------------------------------------- /components/_util/unreachableException.ts: -------------------------------------------------------------------------------- 1 | export default class UnreachableException { 2 | error: Error; 3 | 4 | constructor(value: any) { 5 | this.error = new Error(`unreachable case: ${JSON.stringify(value)}`); 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /components/form/utils/typeUtil.ts: -------------------------------------------------------------------------------- 1 | export function toArray(value?: T | T[] | null): T[] { 2 | if (value === undefined || value === null) { 3 | return []; 4 | } 5 | 6 | return Array.isArray(value) ? value : [value]; 7 | } 8 | -------------------------------------------------------------------------------- /components/timeline/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import TimeLine from '..'; 2 | import mountTest from '../../../tests/shared/mountTest'; 3 | 4 | describe('Tag', () => { 5 | mountTest(TimeLine); 6 | mountTest(TimeLine.Item); 7 | }); 8 | -------------------------------------------------------------------------------- /site/src/components/Contributors/constants.ts: -------------------------------------------------------------------------------- 1 | export const REPO_OWNER = 'VueComponent'; 2 | export const REPO_NAME = 'ant-design-vue'; 3 | export const REPO_PATH = `${REPO_OWNER}/${REPO_NAME}`; 4 | export const REPO_BRANCH = 'main'; 5 | -------------------------------------------------------------------------------- /components/segmented/index.ts: -------------------------------------------------------------------------------- 1 | import Segmented from './src'; 2 | import type { SegmentedProps } from './src'; 3 | import { withInstall } from '../_util/type'; 4 | 5 | export default withInstall(Segmented); 6 | export type { SegmentedProps }; 7 | -------------------------------------------------------------------------------- /components/time-picker/locale/ja_JP.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: '時間を選択', 5 | rangePlaceholder: ['開始時間', '終了時間'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/ko_KR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: '시간 선택', 5 | rangePlaceholder: ['시작 시간', '종료 시간'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/zh_CN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: '请选择时间', 5 | rangePlaceholder: ['开始时间', '结束时间'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/index.tsx: -------------------------------------------------------------------------------- 1 | import TimePicker from './dayjs'; 2 | export * from './dayjs'; 3 | export interface TimePickerLocale { 4 | placeholder?: string; 5 | rangePlaceholder?: [string, string]; 6 | } 7 | 8 | export default TimePicker; 9 | -------------------------------------------------------------------------------- /components/vc-slider/src/index.ts: -------------------------------------------------------------------------------- 1 | import Slider from './Slider'; 2 | import Range from './Range'; 3 | import Handle from './Handle'; 4 | 5 | Slider.Range = Range; 6 | Slider.Handle = Handle; 7 | export default Slider; 8 | export { Range, Handle }; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/nb_NO.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Velg tid', 5 | rangePlaceholder: ['Starttid', 'Sluttid'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/bn_BD.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'সময় নির্বাচন', 5 | rangePlaceholder: ['সময় শুরু', 'শেষ সময়'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/en_US.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Select time', 5 | rangePlaceholder: ['Start time', 'End time'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/fa_IR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'انتخاب زمان', 5 | rangePlaceholder: ['زمان شروع', 'زمان پایان'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/km_KH.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'រើសម៉ោង', 5 | rangePlaceholder: ['ម៉ោងចប់ផ្ដើម', 'ម៉ោងបញ្ចប់'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/rate/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './rate'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/space/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './space'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /components/time-picker/locale/da_DK.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Vælg tid', 5 | rangePlaceholder: ['Starttidspunkt', 'Sluttidspunkt'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/ga_IE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Roghnaigh am', 5 | rangePlaceholder: ['Am tosaigh', 'Am deiridh'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/hi_IN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'समय का चयन करें', 5 | rangePlaceholder: ['आरंभिक समय', 'अंत समय'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/nl_BE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Selecteer tijd', 5 | rangePlaceholder: ['Start tijd', 'Eind tijd'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/nl_NL.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Selecteer tijd', 5 | rangePlaceholder: ['Start tijd', 'Eind tijd'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/ur_PK.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'وقت منتخب کریں', 5 | rangePlaceholder: ['وقت منتخب کریں', 'آخر وقت'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /site/debugger/index.tsx: -------------------------------------------------------------------------------- 1 | // debugger tsx 2 | // import Demo from '../../components/select/demo/field-names.vue'; 3 | import Demo from './demo/demo.vue'; 4 | 5 | export default { 6 | setup() {}, 7 | render() { 8 | return ; 9 | }, 10 | }; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/empty/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './empty'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/grid/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './grid'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/icon/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './icon'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/list/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './list'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/popover/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './popover'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/skeleton/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './skeleton'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/spin/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './spin'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/switch/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './switch'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tooltip/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './tooltip'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /components/_util/cssinjs/theme/index.ts: -------------------------------------------------------------------------------- 1 | export { default as createTheme } from './createTheme'; 2 | export { default as Theme } from './Theme'; 3 | export { default as ThemeCache } from './ThemeCache'; 4 | export type { TokenType, DerivativeFunc } from './interface'; 5 | -------------------------------------------------------------------------------- /components/date-picker/PickerTag.tsx: -------------------------------------------------------------------------------- 1 | import type { TagProps } from '../tag'; 2 | import Tag from '../tag'; 3 | 4 | export default function PickerTag(props: TagProps, { slots, attrs }) { 5 | return ; 6 | } 7 | -------------------------------------------------------------------------------- /components/list/contextKey.ts: -------------------------------------------------------------------------------- 1 | import type { InjectionKey, Ref } from 'vue'; 2 | 3 | export interface ListContext { 4 | grid?: Ref; 5 | itemLayout?: Ref; 6 | } 7 | 8 | export const ListContextKey: InjectionKey = Symbol('ListContextKey'); 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/by_BY.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Выберыце час', 5 | rangePlaceholder: ['Час пачатку', 'Час заканчэння'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/ka_GE.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'აირჩიეთ დრო', 5 | rangePlaceholder: ['საწყისი თარიღი', 'საბოლოო თარიღი'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/ml_IN.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'സമയം തിരഞ്ഞെടുക്കുക', 5 | rangePlaceholder: ['ആരംഭ സമയം', 'അവസാന സമയം'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/sr_RS.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Izaberi vreme', 5 | rangePlaceholder: ['Vreme početka', 'Vreme završetka'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/tr_TR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Zaman seç', 5 | rangePlaceholder: ['Başlangıç zamanı', 'Bitiş zamanı'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/vc-pagination/KeyCode.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | ZERO: 48, 3 | NINE: 57, 4 | 5 | NUMPAD_ZERO: 96, 6 | NUMPAD_NINE: 105, 7 | 8 | BACKSPACE: 8, 9 | DELETE: 46, 10 | ENTER: 13, 11 | 12 | ARROW_UP: 38, 13 | ARROW_DOWN: 40, 14 | }; 15 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/divider/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './divider'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/drawer/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './drawer'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/popconfirm/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './popconfirm'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/segmented/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './segmented'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/statistic/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './statistic'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/timePicker/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './time-picker'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Demo]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/type.ts: -------------------------------------------------------------------------------- 1 | import type { Ref } from 'vue'; 2 | export interface GlobalConfig { 3 | isMobile: Ref; 4 | lang: Ref<'zh-CN' | 'en-US'>; 5 | isZhCN: Ref; 6 | responsive: Ref; 7 | blocked: Ref; 8 | } 9 | -------------------------------------------------------------------------------- /components/_util/easings.ts: -------------------------------------------------------------------------------- 1 | export function easeInOutCubic(t: number, b: number, c: number, d: number) { 2 | const cc = c - b; 3 | t /= d / 2; 4 | if (t < 1) { 5 | return (cc / 2) * t * t * t + b; 6 | } 7 | return (cc / 2) * ((t -= 2) * t * t + 2) + b; 8 | } 9 | -------------------------------------------------------------------------------- /components/rate/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import Rate from '..'; 2 | import focusTest from '../../../tests/shared/focusTest'; 3 | import mountTest from '../../../tests/shared/mountTest'; 4 | 5 | describe('Rate', () => { 6 | focusTest(Rate); 7 | mountTest(Rate); 8 | }); 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/fr_CA.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: "Sélectionner l'heure", 5 | rangePlaceholder: ['Heure de début', 'Heure de fin'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/fr_FR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: "Sélectionner l'heure", 5 | rangePlaceholder: ['Heure de début', 'Heure de fin'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/kk_KZ.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Уақытты таңдаңыз', 5 | rangePlaceholder: ['Бастау уақыты', 'Аяқталу уақыты'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/watermark/__tests__/__snapshots__/index.test.js.snap: -------------------------------------------------------------------------------- 1 | // Jest Snapshot v1, https://goo.gl/fbAQLP 2 | 3 | exports[`Watermark The watermark should render successfully 1`] = ` 4 |
5 | 6 |
7 | `; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/breadcrumb/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './breadcrumb'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/carousel/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './carousel'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/collapse/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './collapse'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/dropdown/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './dropdown'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /components/_util/cssinjs/linters/interface.ts: -------------------------------------------------------------------------------- 1 | export interface LinterInfo { 2 | path?: string; 3 | hashId?: string; 4 | parentSelectors: string[]; 5 | } 6 | 7 | export interface Linter { 8 | (key: string, value: string | number, info: LinterInfo): void; 9 | } 10 | -------------------------------------------------------------------------------- /components/_util/cssinjs/theme/interface.ts: -------------------------------------------------------------------------------- 1 | export type TokenType = object; 2 | export type DerivativeFunc = ( 3 | designToken: DesignToken, 4 | derivativeToken?: DerivativeToken, 5 | ) => DerivativeToken; 6 | -------------------------------------------------------------------------------- /components/time-picker/locale/hr_HR.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Odaberite vrijeme', 5 | rangePlaceholder: ['Vrijeme početka', 'Vrijeme završetka'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/time-picker/locale/lt_LT.ts: -------------------------------------------------------------------------------- 1 | import type { TimePickerLocale } from '../index'; 2 | 3 | const locale: TimePickerLocale = { 4 | placeholder: 'Pasirinkite laiką', 5 | rangePlaceholder: ['Pradžios laikas', 'Pabaigos laikas'], 6 | }; 7 | 8 | export default locale; 9 | -------------------------------------------------------------------------------- /components/vc-notification/index.ts: -------------------------------------------------------------------------------- 1 | import Notification from './Notification'; 2 | import useNotification from './useNotification'; 3 | import type { NotificationAPI } from './useNotification'; 4 | export { useNotification, NotificationAPI }; 5 | export default Notification; 6 | -------------------------------------------------------------------------------- /components/vc-progress/index.ts: -------------------------------------------------------------------------------- 1 | // based on rc-progress 3.1.4 2 | import Progress, { Line, Circle } from './src'; 3 | 4 | import type { ProgressProps } from './src'; 5 | export { Line, Circle }; 6 | 7 | export type { ProgressProps }; 8 | 9 | export default Progress; 10 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/autoComplete/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './auto-complete'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/descriptions/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './descriptions'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const previewerDemo: ComponentDemo[] = [Default]; 6 | 7 | export default previewerDemo; 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/locale/index.ts: -------------------------------------------------------------------------------- 1 | export { useProvideLocaleContext, useInjectLocaleContext } from './context'; 2 | export { default as enUS } from './en-US'; 3 | export type { Locale } from './interface'; 4 | export { default as zhCN } from './zh-CN'; 5 | -------------------------------------------------------------------------------- /components/vc-util/devWarning.ts: -------------------------------------------------------------------------------- 1 | import devWarning, { resetWarned } from './warning'; 2 | 3 | export { resetWarned }; 4 | 5 | export default (valid: boolean, component: string, message: string): void => { 6 | devWarning(valid, `[ant-design-vue: ${component}] ${message}`); 7 | }; 8 | -------------------------------------------------------------------------------- /site/typings.d.ts: -------------------------------------------------------------------------------- 1 | declare module '*.vue' { 2 | import type { DefineComponent } from 'vue'; 3 | // eslint-disable-next-line @typescript-eslint/ban-types 4 | const component: DefineComponent; 5 | export default component; 6 | } 7 | 8 | declare module '*.svg'; 9 | -------------------------------------------------------------------------------- /components/empty/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 简单的展示。 12 | 13 | ## en-US 14 | 15 | Simplest Usage. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/vc-progress/src/index.ts: -------------------------------------------------------------------------------- 1 | import Line from './Line'; 2 | import Circle from './Circle'; 3 | import type { ProgressProps } from './types'; 4 | 5 | export { Line, Circle }; 6 | 7 | export type { ProgressProps }; 8 | 9 | export default { 10 | Line, 11 | Circle, 12 | }; 13 | -------------------------------------------------------------------------------- /components/vc-table/Footer/Row.tsx: -------------------------------------------------------------------------------- 1 | import { defineComponent } from 'vue'; 2 | 3 | export default defineComponent({ 4 | compatConfig: { MODE: 3 }, 5 | name: 'ATableSummaryRow', 6 | setup(_props, { slots }) { 7 | return () => {slots.default?.()}; 8 | }, 9 | }); 10 | -------------------------------------------------------------------------------- /components/vc-trigger/index.ts: -------------------------------------------------------------------------------- 1 | // based on rc-trigger 5.2.10 2 | import Trigger from './Trigger'; 3 | import { triggerProps } from './interface'; 4 | import type { TriggerProps } from './interface'; 5 | 6 | export { triggerProps }; 7 | export type { TriggerProps }; 8 | export default Trigger; 9 | -------------------------------------------------------------------------------- /components/upload/__tests__/requests.js: -------------------------------------------------------------------------------- 1 | export const successRequest = ({ onSuccess, file }) => { 2 | setTimeout(() => { 3 | onSuccess(null, file); 4 | }); 5 | }; 6 | 7 | export const errorRequest = ({ onError }) => { 8 | setTimeout(() => { 9 | onError(); 10 | }); 11 | }; 12 | -------------------------------------------------------------------------------- /components/vc-tour/index.ts: -------------------------------------------------------------------------------- 1 | import Tour from './Tour'; 2 | export type { TourProps } from './Tour'; 3 | export { tourProps } from './Tour'; 4 | export type { TourStepInfo, TourStepProps } from './interface'; 5 | export { tourStepInfo, tourStepProps } from './interface'; 6 | export default Tour; 7 | -------------------------------------------------------------------------------- /components/tree-select/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import TreeSelect from '..'; 2 | import focusTest from '../../../tests/shared/focusTest'; 3 | import mountTest from '../../../tests/shared/mountTest'; 4 | 5 | describe('TreeSelect', () => { 6 | focusTest(TreeSelect); 7 | mountTest(TreeSelect); 8 | }); 9 | -------------------------------------------------------------------------------- /components/vc-picker/hooks/useMergeProps.ts: -------------------------------------------------------------------------------- 1 | import type { HTMLAttributes } from 'vue'; 2 | import { useAttrs } from 'vue'; 3 | 4 | // 仅用在函数式组件中,不用考虑响应式问题 5 | export default function useMergeProps(props: T) { 6 | const attrs: HTMLAttributes = useAttrs(); 7 | return { ...props, ...attrs }; 8 | } 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/steps/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './steps'; 2 | import danger from './danger'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Demo, danger]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tabs/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './tabs'; 2 | import card from './cardTabs'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, card]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /components/_util/firstNotUndefined.ts: -------------------------------------------------------------------------------- 1 | function firstNotUndefined(arr: T[] = []): T { 2 | for (let i = 0, len = arr.length; i < len; i++) { 3 | if (arr[i] !== undefined) { 4 | return arr[i]; 5 | } 6 | } 7 | return undefined; 8 | } 9 | 10 | export default firstNotUndefined; 11 | -------------------------------------------------------------------------------- /components/icon/index.tsx: -------------------------------------------------------------------------------- 1 | import warning from '../_util/warning'; 2 | import { withInstall } from '../_util/type'; 3 | 4 | const Icon = () => { 5 | warning(false, 'Icon', 'Empty Icon'); 6 | return null; 7 | }; 8 | 9 | Icon.displayName = 'AIcon'; 10 | 11 | export default withInstall(Icon); 12 | -------------------------------------------------------------------------------- /components/skeleton/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的占位效果。 12 | 13 | ## en-US 14 | 15 | Simplest Skeleton usage. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/spin/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 一个简单的 loading 状态。 12 | 13 | ## en-US 14 | 15 | A simple loading status. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/vc-util/Dom/contains.ts: -------------------------------------------------------------------------------- 1 | export default function contains(root: Node | null | undefined, n?: Node) { 2 | if (!root) { 3 | return false; 4 | } 5 | 6 | // Use native if support 7 | if (root.contains) { 8 | return root.contains(n); 9 | } 10 | 11 | return false; 12 | } 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tree/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './tree'; 2 | import disabled from './disabled'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Demo, disabled]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/image/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './image'; 2 | import disabled from './disabled'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, disabled]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/table/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './table'; 2 | import Filter from './filterTable'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, Filter]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /components/pagination/index.ts: -------------------------------------------------------------------------------- 1 | import Pagination from './Pagination'; 2 | import { withInstall } from '../_util/type'; 3 | 4 | export { paginationProps, paginationConfig } from './Pagination'; 5 | export type { PaginationProps, PaginationConfig } from './Pagination'; 6 | 7 | export default withInstall(Pagination); 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/calendar/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './calendar'; 2 | import disabled from './disabled'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, disabled]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/checkbox/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './checkbox'; 2 | import disabled from './disabled'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, disabled]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/slider/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './slider'; 2 | import SliderInBg from './sliderInBg'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Demo, SliderInBg]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /components/skeleton/demo/active.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 2 4 | title: 5 | zh-CN: 动画效果 6 | en-US: Active Animation 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 显示动画效果。 12 | 13 | ## en-US 14 | 15 | Display active animation. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /scripts/generate-version.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs-extra'); 2 | const path = require('path'); 3 | 4 | const { version } = require('../package.json'); 5 | 6 | fs.writeFileSync( 7 | path.join(__dirname, '..', 'components', 'version', 'version.ts'), 8 | `export default '${version}';`, 9 | 'utf8', 10 | ); 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/anchor/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './anchor'; 2 | import AnchorLayout from './anchorInLayout'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Demo, AnchorLayout]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/treeSelect/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './tree-select'; 2 | import disabled from './disabled'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [Default, disabled]; 7 | 8 | export default previewerDemo; 9 | -------------------------------------------------------------------------------- /components/_util/hooks/useDestroyed.ts: -------------------------------------------------------------------------------- 1 | import { onBeforeUnmount, shallowRef } from 'vue'; 2 | 3 | const useDestroyed = () => { 4 | const destroyed = shallowRef(false); 5 | onBeforeUnmount(() => { 6 | destroyed.value = true; 7 | }); 8 | 9 | return destroyed; 10 | }; 11 | 12 | export default useDestroyed; 13 | -------------------------------------------------------------------------------- /components/float-button/util.ts: -------------------------------------------------------------------------------- 1 | const getOffset = (radius: number): number => { 2 | if (radius === 0) { 3 | return 0; 4 | } 5 | // 如果要考虑通用性,这里应该用三角函数 Math.sin(45) 6 | // 但是这个场景比较特殊,始终是等腰直角三角形,所以直接用 Math.sqrt() 开方即可 7 | return radius - Math.sqrt(radius ** 2 / 2); 8 | }; 9 | 10 | export default getOffset; 11 | -------------------------------------------------------------------------------- /components/rate/demo/disabled.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 3 4 | title: 5 | zh-CN: 只读 6 | en-US: Read only 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 只读,无法进行鼠标交互。 12 | 13 | ## en-US 14 | 15 | Read only, can't use mouse to interact. 16 | 17 | 20 | -------------------------------------------------------------------------------- /components/grid/index.ts: -------------------------------------------------------------------------------- 1 | import Row from './Row'; 2 | import Col from './Col'; 3 | import useBreakpoint from '../_util/hooks/useBreakpoint'; 4 | 5 | export type { RowProps } from './Row'; 6 | 7 | export type { ColProps, ColSize } from './Col'; 8 | 9 | export { Row, Col }; 10 | 11 | export default { useBreakpoint }; 12 | -------------------------------------------------------------------------------- /components/time-picker/locale/ru_RU.ts: -------------------------------------------------------------------------------- 1 | /** Created by Andrey Gayvoronsky on 13/04/16. */ 2 | import type { TimePickerLocale } from '../index'; 3 | 4 | const locale: TimePickerLocale = { 5 | placeholder: 'Выберите время', 6 | rangePlaceholder: ['Время начала', 'Время окончания'], 7 | }; 8 | 9 | export default locale; 10 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/transfer/data.ts: -------------------------------------------------------------------------------- 1 | const mockData: any[] = []; 2 | for (let i = 0; i < 20; i++) { 3 | mockData.push({ 4 | key: i.toString(), 5 | title: `content${i + 1}`, 6 | description: `description of content${i + 1}`, 7 | }); 8 | } 9 | export default mockData; 10 | -------------------------------------------------------------------------------- /components/_util/hooks/_vueuse/resolveUnref.ts: -------------------------------------------------------------------------------- 1 | import { unref } from 'vue'; 2 | import type { MaybeComputedRef } from './types'; 3 | 4 | /** 5 | * Get the value of value/ref/getter. 6 | */ 7 | export function resolveUnref(r: MaybeComputedRef): T { 8 | return typeof r === 'function' ? (r as any)() : unref(r); 9 | } 10 | -------------------------------------------------------------------------------- /components/empty/demo/description.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 无描述 6 | en-US: No description 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 无描述展示。 12 | 13 | ## en-US 14 | 15 | Simplest Usage with no description. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/radio/__tests__/__snapshots__/radio.test.js.snap: -------------------------------------------------------------------------------- 1 | // Jest Snapshot v1, https://goo.gl/fbAQLP 2 | 3 | exports[`Radio should render correctly 1`] = ``; 4 | -------------------------------------------------------------------------------- /components/vc-select/interface.ts: -------------------------------------------------------------------------------- 1 | import type { Key } from '../_util/type'; 2 | import type { RawValueType } from './BaseSelect'; 3 | 4 | export interface FlattenOptionData { 5 | label?: any; 6 | data: OptionType; 7 | key: Key; 8 | value?: RawValueType; 9 | groupOption?: boolean; 10 | group?: boolean; 11 | } 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/select/data.ts: -------------------------------------------------------------------------------- 1 | import type { SelectProps } from 'ant-design-vue'; 2 | 3 | const options: SelectProps['options'] = []; 4 | 5 | for (let i = 10; i < 36; i++) { 6 | options.push({ value: i.toString(36) + i, label: i.toString(36) + i }); 7 | } 8 | 9 | export default options; 10 | -------------------------------------------------------------------------------- /components/vc-tree/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-tree 5.6.3 2 | import type { TreeProps, TreeNodeProps } from './props'; 3 | import Tree from './Tree'; 4 | import TreeNode from './TreeNode'; 5 | import type { BasicDataNode } from './interface'; 6 | export { TreeNode }; 7 | export type { TreeProps, TreeNodeProps, BasicDataNode }; 8 | export default Tree; 9 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/utils/getValueByPath.ts: -------------------------------------------------------------------------------- 1 | export default function getValueByPath(obj: any, path: string[]): any { 2 | if (!obj) { 3 | return undefined; 4 | } 5 | return path.reduce((prev, key) => { 6 | if (prev) { 7 | return prev[key]; 8 | } 9 | return undefined; 10 | }, obj); 11 | } 12 | -------------------------------------------------------------------------------- /site/src/services/user.js: -------------------------------------------------------------------------------- 1 | import request from '../utils/request'; 2 | 3 | export async function query() { 4 | return request('/api/users'); 5 | } 6 | 7 | export async function queryCurrent() { 8 | return request('/api/currentUser'); 9 | } 10 | 11 | export async function queryNotices() { 12 | return request('/api/notices'); 13 | } 14 | -------------------------------------------------------------------------------- /.github/workflows/emoji-helper.yml: -------------------------------------------------------------------------------- 1 | name: Emoji Helper 2 | 3 | on: 4 | release: 5 | types: [published] 6 | 7 | jobs: 8 | emoji: 9 | runs-on: ubuntu-latest 10 | steps: 11 | - uses: actions-cool/emoji-helper@v1.0.0 12 | with: 13 | type: 'release' 14 | emoji: '+1, laugh, heart, hooray, rocket, eyes' 15 | -------------------------------------------------------------------------------- /antd-tools/generator-types/tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "target": "ES2017", 4 | "outDir": "./lib", 5 | "module": "commonjs", 6 | "strict": true, 7 | "declaration": true, 8 | "skipLibCheck": true, 9 | "esModuleInterop": true, 10 | "lib": ["esnext"] 11 | }, 12 | "include": ["src/**/*"] 13 | } 14 | -------------------------------------------------------------------------------- /components/_util/hooks/useFlexGapSupport.ts: -------------------------------------------------------------------------------- 1 | import { onMounted, shallowRef } from 'vue'; 2 | import { detectFlexGapSupported } from '../styleChecker'; 3 | 4 | export default () => { 5 | const flexible = shallowRef(false); 6 | onMounted(() => { 7 | flexible.value = detectFlexGapSupported(); 8 | }); 9 | 10 | return flexible; 11 | }; 12 | -------------------------------------------------------------------------------- /components/alert/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法,适用于简短的警告提示。 12 | 13 | ## en-US 14 | 15 | The simplest usage for short messages. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/tabs/src/index.ts: -------------------------------------------------------------------------------- 1 | // base rc-tabs 11.12.0 2 | import Tabs from './Tabs'; 3 | import type { TabsProps } from './Tabs'; 4 | import TabPane from './TabPanelList/TabPane'; 5 | import type { TabPaneProps } from './TabPanelList/TabPane'; 6 | 7 | export type { TabsProps, TabPaneProps }; 8 | 9 | export { TabPane }; 10 | 11 | export default Tabs; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/card/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './card'; 2 | import inner from './inner'; 3 | import cardGrid from './cardGrid'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, inner, cardGrid]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/upload/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './upload'; 2 | import danger from './danger'; 3 | import avatar from './avatar'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, danger, avatar]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /components/_util/__mocks__/Portal.tsx: -------------------------------------------------------------------------------- 1 | import { defineComponent } from 'vue'; 2 | 3 | export default defineComponent({ 4 | compatConfig: { MODE: 3 }, 5 | name: 'Portal', 6 | inheritAttrs: false, 7 | props: ['getContainer'], 8 | setup(_props, { slots }) { 9 | return () => { 10 | return slots.default?.(); 11 | }; 12 | }, 13 | }); 14 | -------------------------------------------------------------------------------- /components/theme/__tests__/util.test.js: -------------------------------------------------------------------------------- 1 | import getAlphaColor from '../util/getAlphaColor'; 2 | 3 | describe('util', () => { 4 | describe('getAlphaColor', () => { 5 | it('should not process color with alpha', () => { 6 | expect(getAlphaColor('rgba(0, 0, 0, 0.5)', 'rgba(255, 255, 255)')).toBe('rgba(0, 0, 0, 0.5)'); 7 | }); 8 | }); 9 | }); 10 | -------------------------------------------------------------------------------- /components/vc-util/get.ts: -------------------------------------------------------------------------------- 1 | export default function get(entity: any, path: (string | number)[]) { 2 | let current = entity; 3 | 4 | for (let i = 0; i < path.length; i += 1) { 5 | if (current === null || current === undefined) { 6 | return undefined; 7 | } 8 | 9 | current = current[path[i]]; 10 | } 11 | 12 | return current; 13 | } 14 | -------------------------------------------------------------------------------- /index-with-locales.js: -------------------------------------------------------------------------------- 1 | const antd = require('./components'); 2 | 3 | const req = require.context('./components', true, /^\.\/locale\/.+_.+\.tsx?$/); 4 | 5 | antd.locales = {}; 6 | 7 | req.keys().forEach(mod => { 8 | const matches = mod.match(/\/([^/]+).tsx?$/); 9 | antd.locales[matches[1]] = req(mod).default; 10 | }); 11 | 12 | module.exports = antd; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/form/index.tsx: -------------------------------------------------------------------------------- 1 | import Default from './form'; 2 | 3 | import warning from './warning'; 4 | import danger from './danger'; 5 | 6 | import type { ComponentDemo } from '../../interface'; 7 | 8 | const previewerDemo: ComponentDemo[] = [Default, warning, danger]; 9 | 10 | export default previewerDemo; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/radio/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './radio'; 2 | import Button from './button'; 3 | import disabled from './disabled'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, Button, disabled]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/timeline/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './timeline'; 2 | import danger from './danger'; 3 | import success from './success'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, danger, success]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/utils/clamp.ts: -------------------------------------------------------------------------------- 1 | // Clamps a value between an upper and lower bound. 2 | // We use ternary operators because it makes the minified code 3 | // 2 times shorter then `Math.min(Math.max(a,b),c)` 4 | export const clamp = (number: number, min = 0, max = 1): number => { 5 | return number > max ? max : number < min ? min : number; 6 | }; 7 | -------------------------------------------------------------------------------- /site/src/services/login.js: -------------------------------------------------------------------------------- 1 | import request from '../utils/request'; 2 | 3 | export async function fakeAccountLogin(params) { 4 | return request('/api/login/account', { 5 | method: 'POST', 6 | data: params, 7 | }); 8 | } 9 | 10 | export async function getFakeCaptcha(mobile) { 11 | return request(`/api/login/captcha?mobile=${mobile}`); 12 | } 13 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/pagination/index.tsx: -------------------------------------------------------------------------------- 1 | import Demo from './pagination'; 2 | import disabled from './disabled'; 3 | import outline from './outline'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Demo, disabled, outline]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /site/src/theme/static/nprogress.less: -------------------------------------------------------------------------------- 1 | #nprogress { 2 | .bar { 3 | background: var(--primary-color); 4 | } 5 | 6 | .peg { 7 | box-shadow: 0 0 10px var(--primary-color), 0 0 5px var(--primary-color); 8 | } 9 | 10 | .spinner-icon { 11 | border-top-color: var(--primary-color); 12 | border-left-color: var(--primary-color); 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /components/_util/__mocks__/RenderSlot.tsx: -------------------------------------------------------------------------------- 1 | import { defineComponent } from 'vue'; 2 | import { customRenderSlot } from '../vnode'; 3 | 4 | export default defineComponent({ 5 | name: 'RenderSlot', 6 | setup(_props, { slots }) { 7 | return () => { 8 | return customRenderSlot(slots, 'default', {}, () => ['default value']); 9 | }; 10 | }, 11 | }); 12 | -------------------------------------------------------------------------------- /components/date-picker/__tests__/mount.test.js: -------------------------------------------------------------------------------- 1 | import DatePicker from '..'; 2 | import mountTest from '../../../tests/shared/mountTest'; 3 | 4 | const { MonthPicker, WeekPicker, RangePicker } = DatePicker; 5 | 6 | describe('mount', () => { 7 | mountTest(DatePicker); 8 | mountTest(MonthPicker); 9 | mountTest(WeekPicker); 10 | mountTest(RangePicker); 11 | }); 12 | -------------------------------------------------------------------------------- /components/time-picker/demo/range-picker.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 13 4 | title: 5 | zh-CN: 范围选择器 6 | en-US: Time Range Picker 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 通过 `TimeRangePicker` 使用时间范围选择器。 12 | 13 | ## en-US 14 | 15 | Use time range picker with `TimeRangePicker`. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/cascader/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './cascader'; 2 | import HighLight from './highlight'; 3 | import disable from './disable'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, HighLight, disable]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /components/skeleton/demo/complex.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 复杂的组合 6 | en-US: Complex combination 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 更复杂的组合。 12 | 13 | ## en-US 14 | 15 | Complex combination with avatar and multiple paragraphs. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/upload/__tests__/mock.js: -------------------------------------------------------------------------------- 1 | import mock from 'xhr-mock'; 2 | 3 | export function setup() { 4 | mock.setup(); 5 | mock.post('http://upload.com/', (req, res) => { 6 | req.headers({ 7 | 'content-length': 100, 8 | }); 9 | req.body('thisisbody'); 10 | return res; 11 | }); 12 | } 13 | 14 | export const teardown = mock.teardown.bind(mock); 15 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/watermark/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本 6 | en-US: Basic 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法。 12 | 13 | ## en-US 14 | 15 | The most basic usage. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/menu/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './menu'; 2 | import danger from './menuDanger'; 3 | import MenuInLayout from './menuInLayout'; 4 | 5 | import type { ComponentDemo } from '../../interface'; 6 | 7 | const previewerDemo: ComponentDemo[] = [Default, danger, MenuInLayout]; 8 | 9 | export default previewerDemo; 10 | -------------------------------------------------------------------------------- /site/src/layouts/Iframe.vue: -------------------------------------------------------------------------------- 1 | 4 | 14 | 15 | -------------------------------------------------------------------------------- /components/tooltip/index.ts: -------------------------------------------------------------------------------- 1 | import { withInstall } from '../_util/type'; 2 | import ToolTip, { tooltipProps } from './Tooltip'; 3 | 4 | export type { 5 | TooltipProps, 6 | AdjustOverflow, 7 | PlacementsConfig, 8 | TooltipAlignConfig, 9 | TooltipPlacement, 10 | } from './Tooltip'; 11 | 12 | export { tooltipProps }; 13 | 14 | export default withInstall(ToolTip); 15 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/avatar/index.tsx: -------------------------------------------------------------------------------- 1 | import Default from './avatar'; 2 | // import Progress from './progress'; 3 | 4 | import type { ComponentDemo } from '../../interface'; 5 | 6 | const previewerDemo: ComponentDemo[] = [ 7 | { 8 | demo: , 9 | key: 'default', 10 | }, 11 | ]; 12 | 13 | export default previewerDemo; 14 | -------------------------------------------------------------------------------- /tests/index.test.js: -------------------------------------------------------------------------------- 1 | const OLD_NODE_ENV = process.env.NODE_ENV; 2 | process.env.NODE_ENV = 'development'; 3 | const antd = require('..'); 4 | 5 | describe('antdv', () => { 6 | afterAll(() => { 7 | process.env.NODE_ENV = OLD_NODE_ENV; 8 | }); 9 | 10 | it('exports modules correctly', () => { 11 | expect(Object.keys(antd)).toMatchSnapshot(); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "singleQuote": true, 3 | "trailingComma": "all", 4 | "endOfLine": "lf", 5 | "printWidth": 100, 6 | "proseWrap": "never", 7 | "arrowParens": "avoid", 8 | "htmlWhitespaceSensitivity": "ignore", 9 | "overrides": [ 10 | { 11 | "files": ".prettierrc", 12 | "options": { 13 | "parser": "json" 14 | } 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /.vcmrc: -------------------------------------------------------------------------------- 1 | { 2 | "helpMessage": "\nPlease fix your commit message (and consider using https://www.npmjs.com/package/commitizen)\n", 3 | "types": [ 4 | "feat", 5 | "fix", 6 | "docs", 7 | "style", 8 | "refactor", 9 | "perf", 10 | "test", 11 | "chore", 12 | "revert", 13 | "ci" 14 | ], 15 | "warnOnFail": false, 16 | "autoFix": false 17 | } 18 | -------------------------------------------------------------------------------- /antd-tools/getNpm.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | const runCmd = require('./runCmd'); 4 | 5 | module.exports = function (done) { 6 | if (process.env.NPM_CLI) { 7 | done(process.env.NPM_CLI); 8 | return; 9 | } 10 | runCmd('which', ['tnpm'], code => { 11 | let npm = 'npm'; 12 | if (!code) { 13 | npm = 'tnpm'; 14 | } 15 | done(npm); 16 | }); 17 | }; 18 | -------------------------------------------------------------------------------- /components/segmented/__tests__/index.test.js: -------------------------------------------------------------------------------- 1 | import { mount } from '@vue/test-utils'; 2 | import Segmented from '../index'; 3 | describe('Segmented', () => { 4 | const wrapper = mount({ 5 | render() { 6 | return ; 7 | }, 8 | }); 9 | const todo = wrapper.get('[options="[1,2,3,4,5]"]'); 10 | expect(todo.text()).toBe('segmented'); 11 | }); 12 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/kk_KZ.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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/empty/empty.tsx: -------------------------------------------------------------------------------- 1 | import { Empty } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorTextDisabled'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/rate/rate.tsx: -------------------------------------------------------------------------------- 1 | import { Rate } from 'ant-design-vue'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const Demo = () => ; 6 | 7 | const componentDemo: ComponentDemo = { 8 | demo: , 9 | tokens: ['colorFillContent'], 10 | key: 'default', 11 | }; 12 | 13 | export default componentDemo; 14 | -------------------------------------------------------------------------------- /site/src/theme/static/highlight.dark.less: -------------------------------------------------------------------------------- 1 | html[data-doc-theme='dark'] { 2 | pre code { 3 | background: #262626; 4 | border-color: #262626; 5 | } 6 | 7 | code[class*='language-'], 8 | pre[class*='language-'] { 9 | color: black; 10 | } 11 | 12 | :not(pre) > code[class*='language-'], 13 | pre[class*='language-'] { 14 | background: #262626; 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /components/_util/__tests__/unreachableException.test.js: -------------------------------------------------------------------------------- 1 | import UnreachableException from '../unreachableException'; 2 | 3 | describe('UnreachableException', () => { 4 | it('error thrown matches snapshot', () => { 5 | const exception = new UnreachableException('some value'); 6 | expect(exception.error.message).toMatchInlineSnapshot(`"unreachable case: \\"some value\\""`); 7 | }); 8 | }); 9 | -------------------------------------------------------------------------------- /components/alert/demo/close-text.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 5 4 | title: 5 | zh-CN: 自定义关闭 6 | en-US: Customized Close Text 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 自定义图标让信息类型更加醒目。 12 | 13 | ## en-US 14 | 15 | Replace the default icon with customized text. 16 | 17 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /components/calendar/dayjs.tsx: -------------------------------------------------------------------------------- 1 | import generateConfig from '../vc-picker/generate/dayjs'; 2 | import { withInstall } from '../_util/type'; 3 | import type { CalendarProps } from './generateCalendar'; 4 | import generateCalendar from './generateCalendar'; 5 | 6 | const Calendar = generateCalendar(generateConfig); 7 | 8 | export type { CalendarProps }; 9 | export default withInstall(Calendar); 10 | -------------------------------------------------------------------------------- /components/_util/omit.ts: -------------------------------------------------------------------------------- 1 | function omit(obj: T, fields: K[]): Omit { 2 | // eslint-disable-next-line prefer-object-spread 3 | const shallowCopy = Object.assign({}, obj); 4 | for (let i = 0; i < fields.length; i += 1) { 5 | const key = fields[i]; 6 | delete shallowCopy[key]; 7 | } 8 | return shallowCopy; 9 | } 10 | export default omit; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/spin/spin.tsx: -------------------------------------------------------------------------------- 1 | import { Spin } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorPrimary', 'colorBgContainer'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /components/flex/demo/wrap.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 3 4 | title: 5 | zh-CN: 自动换行 6 | en-US: Wrap 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 自动换行。 12 | 13 | ## en-US 14 | 15 | Auto wrap line. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /components/tooltip/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法。 12 | 13 | ## en-US 14 | 15 | The simplest usage. 16 | 17 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/by_BY.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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/timePicker/time-picker.tsx: -------------------------------------------------------------------------------- 1 | import { TimePicker } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorPrimary'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /components/calendar/date-fns.tsx: -------------------------------------------------------------------------------- 1 | import generateConfig from '../vc-picker/generate/dateFns'; 2 | import { withInstall } from '../_util/type'; 3 | import type { CalendarProps } from './generateCalendar'; 4 | import generateCalendar from './generateCalendar'; 5 | 6 | const Calendar = generateCalendar(generateConfig); 7 | 8 | export type { CalendarProps }; 9 | export default withInstall(Calendar); 10 | -------------------------------------------------------------------------------- /components/date-picker/PickerButton.tsx: -------------------------------------------------------------------------------- 1 | import type { FunctionalComponent } from 'vue'; 2 | import type { ButtonProps } from '../button'; 3 | import Button from '../button'; 4 | 5 | const PickerButton: FunctionalComponent = (props: ButtonProps, { attrs, slots }) => { 6 | return ; 7 | }; 8 | export default PickerButton; 9 | -------------------------------------------------------------------------------- /components/list/__tests__/empty.test.js: -------------------------------------------------------------------------------- 1 | import { mount } from '@vue/test-utils'; 2 | import List from '..'; 3 | 4 | describe('List', () => { 5 | it('renders empty list', () => { 6 | const wrapper = mount({ 7 | render() { 8 | return } />; 9 | }, 10 | }); 11 | expect(wrapper.html()).toMatchSnapshot(); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /components/vc-tour/util.ts: -------------------------------------------------------------------------------- 1 | export function isInViewPort(element: HTMLElement) { 2 | const viewWidth = window.innerWidth || document.documentElement.clientWidth; 3 | const viewHeight = window.innerHeight || document.documentElement.clientHeight; 4 | const { top, right, bottom, left } = element.getBoundingClientRect(); 5 | 6 | return top >= 0 && left >= 0 && right <= viewWidth && bottom <= viewHeight; 7 | } 8 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/badge/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './badge'; 2 | import Progress from './progress'; 3 | import warning from './warning'; 4 | import success from './success'; 5 | 6 | import type { ComponentDemo } from '../../interface'; 7 | 8 | const previewerDemo: ComponentDemo[] = [Default, Progress, warning, success]; 9 | 10 | export default previewerDemo; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/datePicker/icon.tsx: -------------------------------------------------------------------------------- 1 | import { DatePicker } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorIcon', 'colorIconHover'], 9 | key: 'icon', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/mentions/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './mentions'; 2 | import danger from './danger'; 3 | import warning from './warning'; 4 | import disabled from './disabled'; 5 | 6 | import type { ComponentDemo } from '../../interface'; 7 | 8 | const previewerDemo: ComponentDemo[] = [Default, danger, warning, disabled]; 9 | 10 | export default previewerDemo; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/transfer/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './transfer'; 2 | import danger from './danger'; 3 | import warning from './warning'; 4 | import disabled from './disabled'; 5 | 6 | import type { ComponentDemo } from '../../interface'; 7 | 8 | const previewerDemo: ComponentDemo[] = [Default, warning, danger, disabled]; 9 | 10 | export default previewerDemo; 11 | -------------------------------------------------------------------------------- /components/rate/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法。 12 | 13 | ## en-US 14 | 15 | The simplest usage. 16 | 17 | 18 | 21 | 25 | -------------------------------------------------------------------------------- /components/space/demo/wrap.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 自动换行 6 | en-US: Basic Usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 自动换行。 12 | 13 | ## en-US 14 | 15 | Wrap 16 | 17 | 18 | 19 | 26 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/lt_LT.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ psl.', 4 | jump_to: 'Pereiti', 5 | jump_to_confirm: 'patvirtinti', 6 | page: '', 7 | 8 | // Pagination.jsx 9 | prev_page: 'Atgal', 10 | next_page: 'Pirmyn', 11 | prev_5: 'Grįžti 5 pls.', 12 | next_5: 'Peršokti 5 pls.', 13 | prev_3: 'Grįžti 3 pls.', 14 | next_3: 'Peršokti 3 pls.', 15 | }; 16 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/pa_IN.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ ਪੰਨਾ', 4 | jump_to: 'Goto', 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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/pb_IN.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ ਪੰਨਾ', 4 | jump_to: 'Goto', 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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/ur_PK.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 | -------------------------------------------------------------------------------- /components/vc-picker/utils/getExtraFooter.tsx: -------------------------------------------------------------------------------- 1 | import type { PanelMode } from '../interface'; 2 | 3 | export default function getExtraFooter( 4 | prefixCls: string, 5 | mode: PanelMode, 6 | renderExtraFooter?: (mode: PanelMode) => any, 7 | ) { 8 | if (!renderExtraFooter) { 9 | return null; 10 | } 11 | 12 | return ; 13 | } 14 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/locale/interface.tsx: -------------------------------------------------------------------------------- 1 | export type Locale = { 2 | _lang: string; 3 | followPrimary: string; 4 | reset: string; 5 | next: string; 6 | groupView: string; 7 | fill: string; 8 | background: string; 9 | border: string; 10 | text: string; 11 | demo: { 12 | overview: string; 13 | components: string; 14 | relatedTokens: string; 15 | }; 16 | }; 17 | -------------------------------------------------------------------------------- /components/image/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 单击图像可以放大显示。 12 | 13 | ## en-US 14 | 15 | Click the image to zoom in. 16 | 17 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /components/qrcode/demo/icon.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 带 Icon 的例子 6 | en-US: With Icon 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 带 Icon 的二维码。 12 | 13 | ## en-US 14 | QRCode with Icon. 15 | 16 | 17 | 24 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/en_GB.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ page', 4 | jump_to: 'Go to', 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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/en_US.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ page', 4 | jump_to: 'Go to', 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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/kmr_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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/inputNumber/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './inputNumber'; 2 | import danger from './danger'; 3 | import warning from './warning'; 4 | import disabled from './disabled'; 5 | 6 | import type { ComponentDemo } from '../../interface'; 7 | 8 | const previewerDemo: ComponentDemo[] = [Default, danger, warning, disabled]; 9 | 10 | export default previewerDemo; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/radio/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Radio } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Radio; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorBgContainerDisabled'], 9 | key: 'disabled', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /components/pagination/demo/more.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 更多 6 | en-US: More 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 更多分页。 12 | 13 | ## en-US 14 | 15 | More pages. 16 | 17 | 18 | 21 | 22 | 26 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/km_KH.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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-virtual-list/interface.ts: -------------------------------------------------------------------------------- 1 | import type { CSSProperties, VNodeTypes } from 'vue'; 2 | import type { Key } from '../_util/type'; 3 | 4 | export type RenderFunc = ( 5 | item: T, 6 | index: number, 7 | props: { style?: CSSProperties }, 8 | ) => VNodeTypes; 9 | 10 | export interface SharedConfig { 11 | getKey: (item: T) => Key; 12 | } 13 | 14 | export type GetKey = (item: T) => Key; 15 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/button/defaultButton.tsx: -------------------------------------------------------------------------------- 1 | import { Button } from 'ant-design-vue'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const Demo = () => ; 6 | 7 | const componentDemo: ComponentDemo = { 8 | demo: , 9 | tokens: ['colorBgContainer'], 10 | key: 'defaultButton', 11 | }; 12 | 13 | export default componentDemo; 14 | -------------------------------------------------------------------------------- /components/rate/demo/half.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 半星 6 | en-US: Half star 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 支持选中半星。 12 | 13 | ## en-US 14 | 15 | Support select half star. 16 | 17 | 18 | 21 | 25 | -------------------------------------------------------------------------------- /components/theme/themes/dark/colorAlgorithm.ts: -------------------------------------------------------------------------------- 1 | import { TinyColor } from '@ctrl/tinycolor'; 2 | 3 | export const getAlphaColor = (baseColor: string, alpha: number) => 4 | new TinyColor(baseColor).setAlpha(alpha).toRgbString(); 5 | 6 | export const getSolidColor = (baseColor: string, brightness: number) => { 7 | const instance = new TinyColor(baseColor); 8 | return instance.lighten(brightness).toHexString(); 9 | }; 10 | -------------------------------------------------------------------------------- /components/theme/themes/default/colorAlgorithm.ts: -------------------------------------------------------------------------------- 1 | import { TinyColor } from '@ctrl/tinycolor'; 2 | 3 | export const getAlphaColor = (baseColor: string, alpha: number) => 4 | new TinyColor(baseColor).setAlpha(alpha).toRgbString(); 5 | 6 | export const getSolidColor = (baseColor: string, brightness: number) => { 7 | const instance = new TinyColor(baseColor); 8 | return instance.darken(brightness).toHexString(); 9 | }; 10 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/ka_GE.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 | -------------------------------------------------------------------------------- /components/_util/hooks/_vueuse/useSupported.ts: -------------------------------------------------------------------------------- 1 | import { tryOnMounted } from './tryOnMounted'; 2 | import { shallowRef } from 'vue'; 3 | 4 | export function useSupported(callback: () => unknown, sync = false) { 5 | const isSupported = shallowRef(); 6 | 7 | const update = () => (isSupported.value = Boolean(callback())); 8 | 9 | update(); 10 | 11 | tryOnMounted(update, sync); 12 | return isSupported; 13 | } 14 | -------------------------------------------------------------------------------- /components/pagination/demo/simple.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 6 4 | title: 5 | zh-CN: 简洁 6 | en-US: Simple mode 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 简单的翻页。 12 | 13 | ## en-US 14 | 15 | Simple mode. 16 | 17 | 20 | 24 | -------------------------------------------------------------------------------- /components/vc-cascader/index.tsx: -------------------------------------------------------------------------------- 1 | // rc-cascader@3.4.2 2 | import Cascader, { 3 | internalCascaderProps as cascaderProps, 4 | SHOW_PARENT, 5 | SHOW_CHILD, 6 | } from './Cascader'; 7 | 8 | export type { 9 | CascaderProps, 10 | FieldNames, 11 | ShowSearchType, 12 | DefaultOptionType, 13 | BaseOptionType, 14 | } from './Cascader'; 15 | export { cascaderProps, SHOW_PARENT, SHOW_CHILD }; 16 | export default Cascader; 17 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/az_AZ.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ səhifə', 4 | jump_to: 'Get', 5 | jump_to_confirm: 'təsdiqlə', 6 | page: '', 7 | 8 | // Pagination.jsx 9 | prev_page: 'Əvvəlki Səhifə', 10 | next_page: 'Növbəti Səhifə', 11 | prev_5: 'Əvvəlki 5 Səhifə', 12 | next_5: 'Növbəti 5 Səhifə', 13 | prev_3: 'Əvvəlki 3 Səhifə', 14 | next_3: 'Növbəti 3 Səhifə', 15 | }; 16 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/bn_BD.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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-steps/interface.ts: -------------------------------------------------------------------------------- 1 | export type Status = 'error' | 'process' | 'finish' | 'wait'; 2 | export type StepIconRender = (info: { 3 | index: number; 4 | status: Status; 5 | title: any; 6 | description: any; 7 | node: any; 8 | }) => any; 9 | 10 | export type ProgressDotRender = (info: { 11 | iconDot: any; 12 | index: number; 13 | status: Status; 14 | title: any; 15 | description: any; 16 | }) => any; 17 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/input/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Input } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorBgContainerDisabled'], 9 | key: 'disabled', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tag/closable.tsx: -------------------------------------------------------------------------------- 1 | import { Tag } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Error; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorFillAlter', 'colorIcon', 'colorIconHover'], 9 | key: 'closable', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tag/error.tsx: -------------------------------------------------------------------------------- 1 | import { Tag } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Error; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorError', 'colorErrorBg', 'colorErrorBorder'], 9 | key: 'error', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tag/info.tsx: -------------------------------------------------------------------------------- 1 | import { Tag } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Info; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorInfo', 'colorInfoBg', 'colorInfoBorder'], 9 | key: 'info', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /wrangler.jsonc: -------------------------------------------------------------------------------- 1 | { 2 | "name": "antdv-v4", 3 | "compatibility_date": "2025-09-18", 4 | "assets": { 5 | "directory": "./site/dist", 6 | "not_found_handling": "single-page-application" 7 | }, 8 | "routes": [ 9 | { 10 | "pattern": "antdv.com/*", 11 | "zone_name": "antdv.com" 12 | }, 13 | { 14 | "pattern": "www.antdv.com/*", 15 | "zone_name": "antdv.com" 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /components/badge/demo/link.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 8 4 | title: 5 | zh-CN: 可点击 6 | en-US: Clickable 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 用 a 标签进行包裹即可。 12 | 13 | ## en-US 14 | The badge can be wrapped with `a` tag to make it linkable. 15 | 16 | 17 | 18 | 25 | -------------------------------------------------------------------------------- /components/card/demo/simple.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 8 4 | title: 5 | zh-CN: 简洁卡片 6 | en-US: Simple card 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 只包含内容区域。 12 | 13 | ## en-US 14 | 15 | A simple card only containing a content area. 16 | 17 | 18 | 19 | 26 | -------------------------------------------------------------------------------- /components/radio/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法。 12 | 13 | ## en-US 14 | 15 | The simplest usage. 16 | 17 | 18 | 21 | 25 | -------------------------------------------------------------------------------- /components/switch/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic Usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 最简单的用法。 12 | 13 | ## en-US 14 | 15 | The most basic usage. 16 | 17 | 18 | 19 | 22 | 26 | -------------------------------------------------------------------------------- /components/time-picker/demo/disabled.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 3 4 | title: 5 | zh-CN: 禁用 6 | en-US: Disabled 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 禁用时间选择。 12 | 13 | ## en-US 14 | 15 | A disabled state of the `TimePicker`. 16 | 17 | 18 | 19 | 22 | 25 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/ml_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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/alert/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './alert'; 2 | import error from './error'; 3 | import info from './info'; 4 | import success from './success'; 5 | import warning from './warning'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Default, error, info, success, warning]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/calendar/calendar.tsx: -------------------------------------------------------------------------------- 1 | import { Calendar } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorPrimary', 'colorPrimaryHover', 'colorBgContainer'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/message/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './message'; 2 | import error from './error'; 3 | import info from './info'; 4 | import success from './success'; 5 | import warning from './warning'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Default, error, info, success, warning]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/skeleton/skeleton.tsx: -------------------------------------------------------------------------------- 1 | import { Skeleton } from 'ant-design-vue'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const Demo = () => ; 6 | 7 | const componentDemo: ComponentDemo = { 8 | demo: , 9 | tokens: ['colorFillContent', 'colorTextPlaceholder'], 10 | key: 'default', 11 | }; 12 | 13 | export default componentDemo; 14 | -------------------------------------------------------------------------------- /components/_util/__tests__/easings.test.js: -------------------------------------------------------------------------------- 1 | import { easeInOutCubic } from '../easings'; 2 | 3 | describe('Test easings', () => { 4 | it('easeInOutCubic return value', () => { 5 | const nums = []; 6 | // eslint-disable-next-line no-plusplus 7 | for (let index = 0; index < 5; index++) { 8 | nums.push(easeInOutCubic(index, 1, 5, 4)); 9 | } 10 | 11 | expect(nums).toEqual([1, 1.25, 3, 4.75, 5]); 12 | }); 13 | }); 14 | -------------------------------------------------------------------------------- /components/app/demo/index.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 20 | -------------------------------------------------------------------------------- /components/badge/demo/title.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 6 4 | title: 5 | zh-CN: 自定义标题 6 | en-US: Title 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 设置鼠标放在状态点上时显示的文字 12 | 13 | ## en-US 14 | 15 | The badge will display `title` when hovered over, instead of `count`. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /components/float-button/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | iframe: 360 5 | title: 6 | zh-CN: 基本 7 | en-US: Basic Usage 8 | --- 9 | 10 | ## zh-CN 11 | 12 | 最简单的用法。 13 | 14 | ## en-US 15 | 16 | The most basic usage. 17 | 18 | 19 | 20 | 23 | 24 | 27 | -------------------------------------------------------------------------------- /components/pagination/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本 6 | en-US: Basic 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 基础分页。 12 | 13 | ## en-US 14 | 15 | Basic pagination. 16 | 17 | 18 | 19 | 22 | 26 | -------------------------------------------------------------------------------- /components/time-picker/demo/bordered.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 14 4 | title: 5 | zh-CN: 无边框 6 | en-US: Bordered-less 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 无边框样式。 12 | 13 | ## en-US 14 | 15 | Bordered-less style component. 16 | 17 | 18 | 19 | 25 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/fr_CA.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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/notification/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './notification'; 2 | import info from './info'; 3 | import error from './error'; 4 | import success from './success'; 5 | import warning from './warning'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Demo, info, error, success, warning]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/radio/radio.tsx: -------------------------------------------------------------------------------- 1 | import { Radio } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Radio; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorPrimary', 'controlOutline', 'colorBgContainer'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | **/*.svg 2 | lib/ 3 | es/ 4 | dist/ 5 | _site/ 6 | coverage/ 7 | CNAME 8 | LICENSE 9 | yarn.lock 10 | netlify.toml 11 | yarn-error.log 12 | *.sh 13 | *.snap 14 | .gitignore 15 | .npmignore 16 | .prettierignore 17 | .DS_Store 18 | .editorconfig 19 | .eslintignore 20 | **/*.yml 21 | **/assets 22 | .gitattributes 23 | .stylelintrc 24 | .vcmrc 25 | .png 26 | .npmrc.template 27 | .huskyrc 28 | .gitmodules 29 | *.png 30 | v2-doc/ 31 | 32 | -------------------------------------------------------------------------------- /components/_util/hooks/_vueuse/tryOnScopeDispose.ts: -------------------------------------------------------------------------------- 1 | import { getCurrentScope, onScopeDispose } from 'vue'; 2 | import type { Fn } from './types'; 3 | 4 | /** 5 | * Call onScopeDispose() if it's inside a effect scope lifecycle, if not, do nothing 6 | * 7 | * @param fn 8 | */ 9 | export function tryOnScopeDispose(fn: Fn) { 10 | if (getCurrentScope()) { 11 | onScopeDispose(fn); 12 | return true; 13 | } 14 | return false; 15 | } 16 | -------------------------------------------------------------------------------- /components/calendar/moment.tsx: -------------------------------------------------------------------------------- 1 | import type { Moment } from 'moment'; 2 | import generateConfig from '../vc-picker/generate/moment'; 3 | import { withInstall } from '../_util/type'; 4 | import type { CalendarProps } from './generateCalendar'; 5 | import generateCalendar from './generateCalendar'; 6 | 7 | const Calendar = generateCalendar(generateConfig); 8 | 9 | export type { CalendarProps }; 10 | export default withInstall(Calendar); 11 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/gl_ES.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ páxina', 4 | jump_to: 'Ir a', 5 | jump_to_confirm: 'confirmar', 6 | page: '', 7 | 8 | // Pagination.jsx 9 | prev_page: 'Páxina anterior', 10 | next_page: 'Páxina seguinte', 11 | prev_5: '5 páxinas previas', 12 | next_5: '5 páxinas seguintes', 13 | prev_3: '3 páxinas previas', 14 | next_3: '3 páxinas seguintes', 15 | }; 16 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/pl_PL.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: 'na stronę', 4 | jump_to: 'Idź do', 5 | jump_to_confirm: 'potwierdź', 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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tag/success.tsx: -------------------------------------------------------------------------------- 1 | import { Tag } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Success; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorSuccess', 'colorSuccessBg', 'colorSuccessBorder'], 9 | key: 'success', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/tag/warning.tsx: -------------------------------------------------------------------------------- 1 | import { Tag } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Warning; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorWarning', 'colorWarningBg', 'colorWarningBorder'], 9 | key: 'warning', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /components/checkbox/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本用法 6 | en-US: Basic 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 简单的 checkbox 12 | 13 | ## en-US 14 | 15 | Basic usage of checkbox 16 | 17 | 18 | 19 | 22 | 26 | -------------------------------------------------------------------------------- /components/input/demo/borderless.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 无边框 6 | en-US: Borderless 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 没有边框。 12 | 13 | ## en-US 14 | 15 | No border. 16 | 17 | 18 | 21 | 25 | -------------------------------------------------------------------------------- /components/progress/demo/circle.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 进度圈 6 | en-US: Circular progress bar 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 圈形的进度。 12 | 13 | ## en-US 14 | 15 | A circular progress bar. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /components/theme/themes/shared/genControlHeight.ts: -------------------------------------------------------------------------------- 1 | import type { HeightMapToken, SeedToken } from '../../interface'; 2 | 3 | const genControlHeight = (token: SeedToken): HeightMapToken => { 4 | const { controlHeight } = token; 5 | 6 | return { 7 | controlHeightSM: controlHeight * 0.75, 8 | controlHeightXS: controlHeight * 0.5, 9 | controlHeightLG: controlHeight * 1.25, 10 | }; 11 | }; 12 | 13 | export default genControlHeight; 14 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/mk_MK.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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/ta_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 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/datePicker/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './date-picker'; 2 | import danger from './danger'; 3 | import warning from './warning'; 4 | import icon from './icon'; 5 | import disabled from './disabled'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Default, danger, warning, icon, disabled]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/progress/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './progress'; 2 | import info from './info'; 3 | import danger from './danger'; 4 | import success from './success'; 5 | import progressInBg from './progressInBg'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Demo, info, danger, success, progressInBg]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-tree-select/index.tsx: -------------------------------------------------------------------------------- 1 | // base rc-tree-select@5.4.0 2 | import type { TreeSelectProps } from './TreeSelect'; 3 | import TreeSelect, { treeSelectProps } from './TreeSelect'; 4 | import TreeNode from './TreeNode'; 5 | import { SHOW_ALL, SHOW_CHILD, SHOW_PARENT } from './utils/strategyUtil'; 6 | 7 | export { TreeNode, SHOW_ALL, SHOW_CHILD, SHOW_PARENT, treeSelectProps }; 8 | export type { TreeSelectProps }; 9 | 10 | export default TreeSelect; 11 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/calendar/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Calendar } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => true} />; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorBgContainerDisabled', 'colorTextDisabled'], 9 | key: 'disabled', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/checkbox/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Checkbox } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => Checkbox; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorTextDisabled', 'colorBgContainerDisabled'], 9 | key: 'disabled', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/modal/index.ts: -------------------------------------------------------------------------------- 1 | import Default from './modal'; 2 | import info from './info'; 3 | import withButton from './modalWithButton'; 4 | import warning from './warning'; 5 | import success from './success'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Default, info, withButton, warning, success]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/result/index.ts: -------------------------------------------------------------------------------- 1 | import Demo from './result'; 2 | import info from './info'; 3 | import warning from './warning'; 4 | import danger from './danger'; 5 | import ResultWithDesc from './resultWithDesc'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [Demo, info, warning, danger, ResultWithDesc]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /components/result/demo/info.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: Info 6 | en-US: Info 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 展示处理结果。 12 | 13 | ## en-US 14 | 15 | Show processing results. 16 | 17 | 18 | 19 | 26 | -------------------------------------------------------------------------------- /components/upload/style/rtl.ts: -------------------------------------------------------------------------------- 1 | import type { UploadToken } from '.'; 2 | import type { GenerateStyle } from '../../theme/internal'; 3 | 4 | // =========================== Motion =========================== 5 | const genRtlStyle: GenerateStyle = token => { 6 | const { componentCls } = token; 7 | 8 | return { 9 | [`${componentCls}-rtl`]: { 10 | direction: 'rtl', 11 | }, 12 | }; 13 | }; 14 | 15 | export default genRtlStyle; 16 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-select/utils/commonUtil.ts: -------------------------------------------------------------------------------- 1 | export function toArray(value: T | T[]): T[] { 2 | if (Array.isArray(value)) { 3 | return value; 4 | } 5 | return value !== undefined ? [value] : []; 6 | } 7 | 8 | export const isClient = 9 | typeof window !== 'undefined' && window.document && window.document.documentElement; 10 | 11 | /** Is client side and not jsdom */ 12 | export const isBrowserClient = process.env.NODE_ENV !== 'test' && isClient; 13 | -------------------------------------------------------------------------------- /components/vc-table/context/StickyContext.tsx: -------------------------------------------------------------------------------- 1 | import isStyleSupport from '../../_util/styleChecker'; 2 | import { onMounted, shallowRef } from 'vue'; 3 | 4 | const supportSticky = shallowRef(false); 5 | export const useProvideSticky = () => { 6 | onMounted(() => { 7 | supportSticky.value = supportSticky.value || isStyleSupport('position', 'sticky'); 8 | }); 9 | }; 10 | 11 | export const useInjectSticky = () => { 12 | return supportSticky; 13 | }; 14 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/inputNumber/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { InputNumber } from 'ant-design-vue'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const Demo = () => ; 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorBgContainerDisabled'], 9 | key: 'disabled', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /components/result/demo/500.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 5 4 | title: 5 | zh-CN: 500 6 | en-US: 500 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 服务器发生了错误。 12 | 13 | ## en-US 14 | 15 | The server is wrong. 16 | 17 | 18 | 19 | 26 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/input/input.tsx: -------------------------------------------------------------------------------- 1 | import { Input } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorPrimary', 'colorPrimaryHover', 'controlOutline', 'colorBgContainer'], 9 | key: 'default', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/typography/Heading4.tsx: -------------------------------------------------------------------------------- 1 | import { Typography } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const { Title } = Typography; 5 | 6 | const Demo = () => Heading 4; 7 | 8 | const componentDemo: ComponentDemo = { 9 | demo: , 10 | tokens: ['fontSizeHeading4'], 11 | key: 'heading4', 12 | }; 13 | 14 | export default componentDemo; 15 | -------------------------------------------------------------------------------- /components/app/demo/basic.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 0 4 | title: 5 | zh-CN: 基本使用 6 | en-US: Basic Usage 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 获取 `message`、`notification`、`modal` 静态方法。 12 | 13 | ## en-US 14 | 15 | Static method for `message`, `notification`, `modal`. 16 | 17 | 18 | 23 | 24 | 27 | -------------------------------------------------------------------------------- /components/layout/injectionKey.ts: -------------------------------------------------------------------------------- 1 | import type { Ref, InjectionKey } from 'vue'; 2 | 3 | export type SiderCollapsed = Ref; 4 | 5 | export const SiderCollapsedKey: InjectionKey = Symbol('siderCollapsed'); 6 | 7 | export interface SiderHookProvider { 8 | addSider?: (id: string) => void; 9 | removeSider?: (id: string) => void; 10 | } 11 | 12 | export const SiderHookProviderKey: InjectionKey = Symbol('siderHookProvider'); 13 | -------------------------------------------------------------------------------- /components/vc-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 | -------------------------------------------------------------------------------- /components/vc-table/sugar/Column.tsx: -------------------------------------------------------------------------------- 1 | import type { FunctionalComponent } from 'vue'; 2 | import type { ColumnType } from '../interface'; 3 | 4 | export type ColumnProps = ColumnType; 5 | 6 | /* istanbul ignore next */ 7 | /** 8 | * This is a syntactic sugar for `columns` prop. 9 | * So HOC will not work on this. 10 | */ 11 | const Column: { (arg: T): FunctionalComponent> } = () => null; 12 | 13 | export default Column; 14 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/datePicker/danger.tsx: -------------------------------------------------------------------------------- 1 | import { DatePicker } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorError', 'colorErrorBorder', 'colorErrorHover', 'colorErrorOutline'], 9 | key: 'danger', 10 | }; 11 | 12 | export default componentDemo; 13 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/typography/index.tsx: -------------------------------------------------------------------------------- 1 | import TypographyDemo from './typography'; 2 | import Heading4 from './Heading4'; 3 | import warning from './warning'; 4 | import success from './success'; 5 | import error from './error'; 6 | 7 | import type { ComponentDemo } from '../../interface'; 8 | 9 | const previewerDemo: ComponentDemo[] = [TypographyDemo, Heading4, error, warning, success]; 10 | 11 | export default previewerDemo; 12 | -------------------------------------------------------------------------------- /site/src/components/vue-colorful/hooks/useEventCallback.ts: -------------------------------------------------------------------------------- 1 | import { ref } from 'vue'; 2 | 3 | // Saves incoming handler to the ref in order to avoid "useCallback hell" 4 | export function useEventCallback(handler?: (value: T) => void): (value: T) => void { 5 | const callbackRef = ref(handler); 6 | const fn = ref((value: T) => { 7 | callbackRef.value && callbackRef.value(value); 8 | }); 9 | callbackRef.value = handler; 10 | 11 | return fn.value; 12 | } 13 | -------------------------------------------------------------------------------- /components/_util/cssinjs/linters/index.ts: -------------------------------------------------------------------------------- 1 | export { default as contentQuotesLinter } from './contentQuotesLinter'; 2 | export { default as hashedAnimationLinter } from './hashedAnimationLinter'; 3 | export type { Linter } from './interface'; 4 | export { default as legacyNotSelectorLinter } from './legacyNotSelectorLinter'; 5 | export { default as logicalPropertiesLinter } from './logicalPropertiesLinter'; 6 | export { default as parentSelectorLinter } from './parentSelectorLinter'; 7 | -------------------------------------------------------------------------------- /components/_util/supportsPassive.js: -------------------------------------------------------------------------------- 1 | // Test via a getter in the options object to see if the passive property is accessed 2 | let supportsPassive = false; 3 | try { 4 | const opts = Object.defineProperty({}, 'passive', { 5 | get() { 6 | supportsPassive = true; 7 | }, 8 | }); 9 | window.addEventListener('testPassive', null, opts); 10 | window.removeEventListener('testPassive', null, opts); 11 | } catch (e) {} 12 | 13 | export default supportsPassive; 14 | -------------------------------------------------------------------------------- /components/popconfirm/demo/local.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 1 4 | title: 5 | zh-CN: 国际化 6 | en-US: Locale text 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 使用 `okText` 和 `cancelText` 自定义按钮文字。 12 | 13 | ## en-US 14 | 15 | Set `okText` and `cancelText` props to customize the button's labels. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/image/disabled.tsx: -------------------------------------------------------------------------------- 1 | import { Image } from 'ant-design-vue'; 2 | 3 | import type { ComponentDemo } from '../../interface'; 4 | 5 | const Demo = () => { 6 | return ; 7 | }; 8 | 9 | const componentDemo: ComponentDemo = { 10 | demo: , 11 | tokens: ['colorBgContainerDisabled'], 12 | key: 'disabled', 13 | }; 14 | 15 | export default componentDemo; 16 | -------------------------------------------------------------------------------- /components/progress/demo/dashboard.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 7 4 | title: 5 | zh-CN: 仪表盘 6 | en-US: Dashboard 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 通过设置 `type=dashboard`,可以很方便地实现仪表盘样式的进度条。若想要修改缺口的角度,可以设置 `gapDegree` 为你想要的值。 12 | 13 | ## en-US 14 | 15 | By setting `type=dashboard`, you can get a dashboard style of progress easily. 16 | 17 | 18 | 19 | 24 | -------------------------------------------------------------------------------- /components/vc-picker/index.tsx: -------------------------------------------------------------------------------- 1 | // 2.6.7 2 | import type { PickerProps } from './Picker'; 3 | import Picker from './Picker'; 4 | import PickerPanel from './PickerPanel'; 5 | import RangePicker from './RangePicker'; 6 | import type { PickerPanelProps } from './PickerPanel'; 7 | import type { RangePickerProps } from './RangePicker'; 8 | 9 | export { PickerPanel, RangePicker }; 10 | export type { PickerProps, PickerPanelProps, RangePickerProps }; 11 | 12 | export default Picker; 13 | -------------------------------------------------------------------------------- /scripts/compact-vars.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs'); 2 | const path = require('path'); 3 | const lessToJs = require('less-vars-to-js'); 4 | 5 | const stylePath = path.join(__dirname, '..', 'components', 'style'); 6 | const compactLess = fs.readFileSync(path.join(stylePath, 'themes', 'compact.less'), 'utf8'); 7 | 8 | const compactPaletteLess = lessToJs(compactLess, { 9 | stripPrefix: true, 10 | resolveVariables: false, 11 | }); 12 | 13 | module.exports = compactPaletteLess; 14 | -------------------------------------------------------------------------------- /components/divider/demo/vertical.vue: -------------------------------------------------------------------------------- 1 | 2 | --- 3 | order: 2 4 | title: 5 | zh-CN: 垂直分割线 6 | en-US: Vertical 7 | --- 8 | 9 | ## zh-CN 10 | 11 | 使用 `type="vertical"` 设置为行内的垂直分割线。 12 | 13 | ## en-US 14 | 15 | Use `type="vertical"` make it vertical. 16 | 17 | 18 | 27 | -------------------------------------------------------------------------------- /components/vc-pagination/locale/ga_IE.ts: -------------------------------------------------------------------------------- 1 | export default { 2 | // Options.jsx 3 | items_per_page: '/ leathanach', 4 | jump_to: 'Téigh', 5 | jump_to_confirm: 'dheimhnigh', 6 | page: '', 7 | 8 | // Pagination.jsx 9 | prev_page: 'Leathanach Roimhe Seo', 10 | next_page: 'An chéad leathanach eile', 11 | prev_5: '5 leathanach roimhe seo', 12 | next_5: 'Ar Aghaidh 5 Leathanaigh', 13 | prev_3: '3 leathanach roimhe seo', 14 | next_3: 'Ar Aghaidh 3 Leathanaigh', 15 | }; 16 | -------------------------------------------------------------------------------- /site/src/components/antdv-token-previewer/component-demos/datePicker/warning.tsx: -------------------------------------------------------------------------------- 1 | import { DatePicker } from 'ant-design-vue'; 2 | import type { ComponentDemo } from '../../interface'; 3 | 4 | const Demo = () => ; 5 | 6 | const componentDemo: ComponentDemo = { 7 | demo: , 8 | tokens: ['colorWarning', 'colorWarningBorder', 'colorWarningHover', 'colorWarningOutline'], 9 | key: 'warning', 10 | }; 11 | 12 | export default componentDemo; 13 | --------------------------------------------------------------------------------