Merge remote-tracking branch 'origin/master' into 2.0

# Conflicts:
#	antdv-demo
#	components/auto-complete/__tests__/__snapshots__/demo.test.js.snap
#	components/avatar/__tests__/__snapshots__/demo.test.js.snap
#	components/button/__tests__/__snapshots__/demo.test.js.snap
#	components/collapse/__tests__/__snapshots__/demo.test.js.snap
#	components/date-picker/__tests__/__snapshots__/demo.test.js.snap
#	components/form/__tests__/__snapshots__/demo.test.js.snap
#	components/input/__tests__/__snapshots__/demo.test.js.snap
#	components/locale-provider/__tests__/__snapshots__/index.test.js.snap
#	components/select/__tests__/__snapshots__/demo.test.js.snap
#	components/tag/__tests__/__snapshots__/demo.test.js.snap
#	components/vc-dialog/Dialog.jsx
pull/2999/head
tanjinzhou 2020-05-26 17:49:55 +08:00
commit 6069a254db
129 changed files with 4226 additions and 720 deletions

View File

@ -14,7 +14,8 @@
"plugins": ["markdown"],
"overrides": [
{
"files": ["**/demo/**"],
"files": ["**/demo/*.md"],
"processor": "markdown/markdown",
"rules": {
"no-console": "off"
}
@ -33,6 +34,7 @@
"vue/require-prop-types": "off",
"vue/require-default-prop": "off",
"vue/no-reserved-keys": "off",
"vue/comment-directive": "off",
"vue/prop-name-casing": "off",
"vue/max-attributes-per-line": [
2,

View File

@ -7,7 +7,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@master
uses: actions/checkout@v2
- name: cache package-lock.json
uses: actions/cache@v1
@ -40,10 +40,16 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@master
uses: actions/checkout@v2
with:
token: ${{ secrets.ACCESS_TOKEN }}
submodules: true
- name: Checkout submodules
uses: actions/checkout@v2
with:
repository: tangjinzhou/antdv-demo
token: ${{ secrets.ACCESS_TOKEN }}
path: antdv-demo
- name: restore cache from package-lock.json
uses: actions/cache@v1
@ -66,6 +72,5 @@ jobs:
uses: codecov/codecov-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
needs: setup
needs: setup

View File

@ -38,6 +38,12 @@
<a href="https://opencollective.com/ant-design-vue/backer/10/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/10/avatar.svg"></a>
</p>
<h2 align="center">Patreon</h2>
<p align="center">
<a href="https://www.mokeyjay.com" target="_blank"><img width="64" style="border-radius: 50%;" src="https://www.mokeyjay.com/headimg.png" title="donation by Patreon"></a>
</p>
<h2 align="center">支付宝/微信</h2>
### 使用支付宝/微信的赞助的用户,如需要添加名单,赞助后可发 github 账号到邮箱(antdv@foxmail.com)

View File

@ -1,4 +1,4 @@
# Change Log
# Change Log (The following content is translated by Google)
`ant-design-vue` strictly follows [Semantic Versioning 2.0.0](http://semver.org/).
@ -10,6 +10,67 @@
---
## 1.6.1
`2020-05-25`
- 🐞 Fix the problem of filling the current time when DatePicker blur [#2246](https://github.com/vueComponent/ant-design-vue/issues/2246)
- 🐞 Fix Drawer error when destroying [#2254](https://github.com/vueComponent/ant-design-vue/issues/2254)
- 🐞 Fix Tabs cannot remove tabs with 0 as key [55bbf9](https://github.com/vueComponent/ant-design-vue/commit/55bbf940401cf2a67114102da1c035abc4152f06)
- 🐞 Fix Menu trigger twice click event [#2266](https://github.com/vueComponent/ant-design-vue/issues/2266)
- 🐞 Fix Menu active class name is not added [ffc002](https://github.com/vueComponent/ant-design-vue/commit/ffc002f09454a56b531aeb08530303d566cf24f2)
- 🌟 TreeSelect add custom data field function [#2253](https://github.com/vueComponent/ant-design-vue/issues/2253)
- 🌟 Modal added dialogStyle and dialogClass instead of style and class before refactoring [#2285](https://github.com/vueComponent/ant-design-vue/issues/2285)
- 🐞 Fix Table sorting trigger infinite update issue [#2270](https://github.com/vueComponent/ant-design-vue/issues/2270)
## 1.6.0
`2020-05-15`
- 🌟 Tootip supports custom components [741897](https://github.com/vueComponent/ant-design-vue/commit/741897be6742c752f0b0d29481add702ee7e7fb0)
- 🐞 Refactor Modal's underlying Portal components to solve the problem of delayed content update in Modal [#2244](https://github.com/vueComponent/ant-design-vue/issues/2244)
- 🐞 Fix Select option focus border style in Input.Group [#2224](https://github.com/vueComponent/ant-design-vue/pull/2224)
- 🐞 Fix Cascader option icon color when disabled [#2223](https://github.com/vueComponent/ant-design-vue/pull/2223)
- 🐞 Fix DatePicker color when separator is disabled [#2222](https://github.com/vueComponent/ant-design-vue/pull/2222)
- 🐞 Fix Carousel keyboard switch to Radio / Checkbox on inactive slide.
- 🐞 Fix the problem that Table filter menu is not displayed when less version is `2.x`. [#23272](https://github.com/ant-design/ant-design/pull/23272)
- 🐞 Fix the failure of Table `column.filtered`.
- 🐞 Fix the style problem of Input in Safari browser in Select `multiple` mode. [#22586](https://github.com/ant-design/ant-design/pull/22586)
- 🐞 Fix the problem that Descriptions can not adapt in small size. [#22407](https://github.com/ant-design/ant-design/pull/22407)
## 1.5.6
`2020-05-09`
- 🐞 Fix the problem of missing css, min.js and other files in the dist folder
## 1.5.5
`2020-05-08`
- 🐞 Fix `Tabs` not showing issue under safari 13 [#2199](https://github.com/vueComponent/ant-design-vue/issues/2199)
- 🐞 Fix the first input failure of `Input` under FireFox [#2151](https://github.com/vueComponent/ant-design-vue/issues/2151)
- 🐞 Fix `Input` cursor shift issue in Modal component [#2207](https://github.com/vueComponent/ant-design-vue/issues/2207)
## 1.5.4
`2020-04-30`
- 🌟 `DatePicker` supports the align attribute and sets the popup position [#1112f2](https://github.com/vueComponent/ant-design-vue/commit/1112f2f791fd64866284ec82def90baefe81e798)
- 🌟 `DatePicker` supports inputReadOnly attribute [#138eae](https://github.com/vueComponent/ant-design-vue/commit/138eae594dd440ce815e45d811a0778cb3e7583f)
- 🌟 `DatePicker` `TimePicker` `Calendar` supports string-type binding values [#718](https://github.com/vueComponent/ant-design-vue/issues/718)
- 🌟 `Table` `ConfigProvider` adds `transformCellText` for transforming table rendering values, such as processing of empty data [#2109](https://github.com/vueComponent/ant-design-vue/issues/2109)
- 🌟 `FormModel` added validateMessages attribute [#2130](https://github.com/vueComponent/ant-design-vue/issues/2130)
- 🌟 Optimize pop-up window animation effect [#bf52f73](https://github.com/vueComponent/ant-design-vue/commit/bf52f73c5c2f8d05981e426b41a5f46d66e096db)
- 🐞 Fix the `tabBarGutter` attribute of the `Tabs` component does not take effect [#2083](https://github.com/vueComponent/ant-design-vue/issues/2083)
- 🐞 Fix renderTabBar of `Tabs` component not working [#2157](https://github.com/vueComponent/ant-design-vue/issues/2157)
- 🌟 `Tabs` component supports number 0 as key [#2167](https://github.com/vueComponent/ant-design-vue/issues/2167)
- 🐞 Fix the style of the Input.Search component is misaligned [#2077](https://github.com/vueComponent/ant-design-vue/issues/2077)
- 🐞 Fix the style misalignment of `Slider` component [#2097](https://github.com/vueComponent/ant-design-vue/issues/2097)
- 🐞 Fix `Tree.TreeNode` customTitle scope slot can not get selected status issue [#2006](https://github.com/vueComponent/ant-design-vue/issues/2006)
- 🐞 Fix `SelectTree` showSearch error when reporting [#2082](https://github.com/vueComponent/ant-design-vue/issues/2082)
- 🐞 Fix the inconsistent position of original dots in `Badge` dot state [#2121](https://github.com/vueComponent/ant-design-vue/issues/2121)
## 1.5.3
`2020-04-13`
@ -20,10 +81,10 @@
`2020-04-09`
- 🐞 Fix ts type of `FormModel` not introduced [# 1996](https://github.com/vueComponent/ant-design-vue/issues/1966)
- 🐞 Fix `DatePicker.WeekPicker` type file error [# 2044](https://github.com/vueComponent/ant-design-vue/issues/2044)
- 🐞 Fix "Tabs" tabClick event does not take effect [# 2030](https://github.com/vueComponent/ant-design-vue/issues/2030)
- 🐞 Fix `Table` resize error issue [# 2033](https://github.com/vueComponent/ant-design-vue/issues/2033)
- 🐞 Fix ts type of `FormModel` not introduced [#1996](https://github.com/vueComponent/ant-design-vue/issues/1966)
- 🐞 Fix `DatePicker.WeekPicker` type file error [#2044](https://github.com/vueComponent/ant-design-vue/issues/2044)
- 🐞 Fix "Tabs" tabClick event does not take effect [#2030](https://github.com/vueComponent/ant-design-vue/issues/2030)
- 🐞 Fix `Table` resize error issue [#2033](https://github.com/vueComponent/ant-design-vue/issues/2033)
## 1.5.1
@ -172,7 +233,7 @@
`2019-11-27`
- 🌟 `getPopupContainer` of`ConfigProvider` Added popup context as the second parameter for uniform configuration of `getPopupContainer` in`Modal` [7a3c88] (https://github.com/vueComponent/ant-design -vue / commit / 7a3c88107598b4b1cf6842d3254b43dc26103c14)
- 🌟 `getPopupContainer` of`ConfigProvider` Added popup context as the second parameter for uniform configuration of `getPopupContainer` in`Modal` [7a3c88](https://github.com/vueComponent/ant-design -vue / commit / 7a3c88107598b4b1cf6842d3254b43dc26103c14)
- 🐞 Fix `ConfigProvider` reporting error in Vue 2.5 [309baa](https://github.com/vueComponent/ant-design-vue/commit/309baa138a9c9a1885c17ef636c9132349024359)
- 🐞 Fix `Menu` click event is triggered twice [#1450](https://github.com/vueComponent/ant-design-vue/issues/1427)
- 🐞 Fix incorrect width of input box in `Select` [#1458](https://github.com/vueComponent/ant-design-vue/issues/1458)

View File

@ -10,6 +10,67 @@
---
## 1.6.1
`2020-05-25`
- 🐞 修复 DatePicker blur 时填充当前时间的问题 [#2246](https://github.com/vueComponent/ant-design-vue/issues/2246)
- 🐞 修复 Drawer 销毁时报错问题 [#2254](https://github.com/vueComponent/ant-design-vue/issues/2254)
- 🐞 修复 Tabs 不能移除已 0 作为 key 的选项卡 [55bbf9](https://github.com/vueComponent/ant-design-vue/commit/55bbf940401cf2a67114102da1c035abc4152f06)
- 🐞 修复 Menu 触发两次 click 事件的问题 [#2266](https://github.com/vueComponent/ant-design-vue/issues/2266)
- 🐞 修复 Menu active 类名没有添加问题 [ffc002](https://github.com/vueComponent/ant-design-vue/commit/ffc002f09454a56b531aeb08530303d566cf24f2)
- 🌟 TreeSelect 添加自定义数据字段功能 [#2253](https://github.com/vueComponent/ant-design-vue/issues/2253)
- 🌟 Modal 新增 dialogStyle、dialogClass 代替重构前的 style、class [#2285](https://github.com/vueComponent/ant-design-vue/issues/2285)
- 🐞 修复 Table 排序触发无限更新问题 [#2270](https://github.com/vueComponent/ant-design-vue/issues/2270)
## 1.6.0
`2020-05-15`
- 🌟 Tootip 支持自定义组件 [741897](https://github.com/vueComponent/ant-design-vue/commit/741897be6742c752f0b0d29481add702ee7e7fb0)
- 🐞 重构 Modal、Drawer 底层 Portal 组件,解决 Modal、Drawer 内容更新延迟问题 [#2244](https://github.com/vueComponent/ant-design-vue/issues/2244)
- 🐞 修复 Input.Group 中 Select 选项 focus 边框样式 [#2224](https://github.com/vueComponent/ant-design-vue/pull/2224)
- 🐞 修复 Cascader 选项图标禁用时的颜色 [#2223](https://github.com/vueComponent/ant-design-vue/pull/2223)
- 🐞 修复 DatePicker 分隔符禁用时颜色 [#2222](https://github.com/vueComponent/ant-design-vue/pull/2222)
- 🐞 修复 Carousel 键盘切换到非活跃 slide 上的 Radio/Checkbox 的问题。
- 🐞 修复 Table 筛选菜单在 less 版本为 `2.x` 时不显示的问题。[#23272](https://github.com/ant-design/ant-design/pull/23272)
- 🐞 修复 Table `column.filtered` 失效的问题。
- 🐞 修复 Select `multiple` 模式下Input 在 Safari 浏览器的样式问题。[#22586](https://github.com/ant-design/ant-design/pull/22586)
- 🐞 修复 Descriptions 在小尺寸下无法自适应的问题。[#22407](https://github.com/ant-design/ant-design/pull/22407)
## 1.5.6
`2020-05-09`
- 🐞 修复 dist 文件夹丢失 css、min.js 等文件问题
## 1.5.5
`2020-05-08`
- 🐞 修复 `Tabs` 在 safari 13 下不展示问题 [#2199](https://github.com/vueComponent/ant-design-vue/issues/2199)
- 🐞 修复 `Input` 在 FireFox 下第一次输入失败问题 [#2151](https://github.com/vueComponent/ant-design-vue/issues/2151)
- 🐞 修复 `Input` 在 Modal 组件中光标移位问题 [#2207](https://github.com/vueComponent/ant-design-vue/issues/2207)
## 1.5.4
`2020-04-30`
- 🌟 `DatePicker` 支持 align 属性,设置弹窗位置 [#1112f2](https://github.com/vueComponent/ant-design-vue/commit/1112f2f791fd64866284ec82def90baefe81e798)
- 🌟 `DatePicker` 支持 inputReadOnly 属性 [#138eae](https://github.com/vueComponent/ant-design-vue/commit/138eae594dd440ce815e45d811a0778cb3e7583f)
- 🌟 `DatePicker` `TimePicker` `Calendar` 支持字符串类型的绑定值 [#718](https://github.com/vueComponent/ant-design-vue/issues/718)
- 🌟 `Table` `ConfigProvider` 新增 `transformCellText` 用于转换表格渲染值, 如对空数据的处理 [#2109](https://github.com/vueComponent/ant-design-vue/issues/2109)
- 🌟 `FormModel` 新增 validateMessages 属性 [#2130](https://github.com/vueComponent/ant-design-vue/issues/2130)
- 🌟 优化弹窗动画效果 [#bf52f73](https://github.com/vueComponent/ant-design-vue/commit/bf52f73c5c2f8d05981e426b41a5f46d66e096db)
- 🐞 修复 `Tabs` 组件的 `tabBarGutter` 属性不生效问题 [#2083](https://github.com/vueComponent/ant-design-vue/issues/2083)
- 🐞 修复 `Tabs` 组件的 renderTabBar 不生效问题 [#2157](https://github.com/vueComponent/ant-design-vue/issues/2157)
- 🌟 `Tabs` 组件支持数字 0 作为 key [#2167](https://github.com/vueComponent/ant-design-vue/issues/2167)
- 🐞 修复 `Input.Search` 组件的样式错位问题 [#2077](https://github.com/vueComponent/ant-design-vue/issues/2077)
- 🐞 修复 `Slider` 组件的样式错位问题 [#2097](https://github.com/vueComponent/ant-design-vue/issues/2097)
- 🐞 修复 `Tree.TreeNode` customTitle 作用域插槽无法获取 selected 状态问题 [#2006](https://github.com/vueComponent/ant-design-vue/issues/2006)
- 🐞 修复 `SelectTree` showSearch 时报错问题 [#2082](https://github.com/vueComponent/ant-design-vue/issues/2082)
- 🐞 修复 `Badge` dot 状态的原圆点位置不一致问题 [#2121](https://github.com/vueComponent/ant-design-vue/issues/2121)
## 1.5.3
`2020-04-13`

View File

@ -107,4 +107,10 @@ Support us with a monthly donation and help us continue our activities. [[Become
<a href="https://opencollective.com/ant-design-vue/backer/0/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/0/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/1/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/1/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/2/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/2/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/3/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/3/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/4/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/4/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/5/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/5/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/6/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/6/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/7/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/7/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/8/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/8/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/9/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/9/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/10/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/10/avatar.svg"></a>
## Patreon
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://www.patreon.com/tangjinzhou)]
<a href="https://www.mokeyjay.com" target="_blank"><img width="64" style="border-radius: 50%;" src="https://www.mokeyjay.com/headimg.png" title="donation by Patreon"></a>
## [更多赞助者 (通过 Patreon、支付宝、微信、paypal 等等)](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md)

View File

@ -101,6 +101,12 @@ Support us with a monthly donation and help us continue our activities. [[Become
<a href="https://opencollective.com/ant-design-vue/backer/0/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/0/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/1/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/1/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/2/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/2/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/3/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/3/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/4/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/4/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/5/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/5/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/6/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/6/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/7/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/7/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/8/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/8/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/9/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/9/avatar.svg"></a> <a href="https://opencollective.com/ant-design-vue/backer/10/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/10/avatar.svg"></a><a href="https://opencollective.com/ant-design-vue/backer/9/website" target="_blank"><img src="https://opencollective.com/ant-design-vue/backer/9/avatar.svg"></a>
## Patreon
Support us with a monthly donation and help us continue our activities. [[Become a backer](https://www.patreon.com/tangjinzhou)]
<a href="https://www.mokeyjay.com" target="_blank"><img width="64" style="border-radius: 50%;" src="https://www.mokeyjay.com/headimg.png" title="donation by Patreon"></a>
## [More Sponsor (From Patreon、alipay、wechat、paypal...)](https://github.com/vueComponent/ant-design-vue/blob/master/BACKERS.md)
[![Let's fund issues in this repository](https://issuehunt.io/static/embed/issuehunt-button-v1.svg)](https://issuehunt.io/repos/104172832)

View File

@ -132,8 +132,10 @@ function getWebpackConfig(modules) {
{
loader: 'less-loader',
options: {
sourceMap: true,
javascriptEnabled: true,
lessOptions: {
sourceMap: true,
javascriptEnabled: true,
},
},
},
],

@ -1 +1 @@
Subproject commit f9276815b07efeec931404c2cad4e998eba7af14
Subproject commit 7457118702fced496e8b1d251b1ea2c50cd5071a

View File

@ -1,23 +1,20 @@
import { getOptionProps } from './props-util';
export default {
// directives: {
// ref: {
// bind: function (el, binding, vnode) {
// binding.value(vnode.componentInstance ? vnode.componentInstance : vnode.elm)
// },
// update: function (el, binding, vnode) {
// binding.value(vnode.componentInstance ? vnode.componentInstance : vnode.elm)
// },
// unbind: function (el, binding, vnode) {
// binding.value(null)
// },
// },
// },
methods: {
setState(state, callback) {
const newState = typeof state === 'function' ? state(this.$data, this.$props) : state;
// if (this.getDerivedStateFromProps) {
// Object.assign(newState, this.getDerivedStateFromProps(getOptionProps(this), { ...this.$data, ...newState }, true) || {})
// }
setState(state = {}, callback) {
let newState = typeof state === 'function' ? state(this.$data, this.$props) : state;
if (this.getDerivedStateFromProps) {
const s = this.getDerivedStateFromProps(getOptionProps(this), {
...this.$data,
...newState,
});
if (s === null) {
return;
} else {
newState = { ...newState, ...(s || {}) };
}
}
Object.assign(this.$data, newState);
this.$forceUpdate();
this.$nextTick(() => {

View File

@ -0,0 +1,51 @@
import PropTypes from './vue-types';
import { cloneElement } from './vnode';
export default {
name: 'Portal',
props: {
getContainer: PropTypes.func.isRequired,
children: PropTypes.any.isRequired,
didUpdate: PropTypes.func,
},
mounted() {
this.createContainer();
},
updated() {
const { didUpdate } = this.$props;
if (didUpdate) {
this.$nextTick(() => {
didUpdate(this.$props);
});
}
},
beforeDestroy() {
this.removeContainer();
},
methods: {
createContainer() {
this._container = this.$props.getContainer();
this.$forceUpdate();
},
removeContainer() {
if (this._container && this._container.parentNode) {
this._container.parentNode.removeChild(this._container);
}
},
},
render() {
if (this._container) {
return cloneElement(this.$props.children, {
directives: [
{
name: 'ant-portal',
value: this._container,
},
],
});
}
return null;
},
};

View File

@ -0,0 +1,156 @@
import PropTypes from './vue-types';
import switchScrollingEffect from './switchScrollingEffect';
import setStyle from './setStyle';
import Portal from './Portal';
let openCount = 0;
const windowIsUndefined = !(
typeof window !== 'undefined' &&
window.document &&
window.document.createElement
);
// https://github.com/ant-design/ant-design/issues/19340
// https://github.com/ant-design/ant-design/issues/19332
let cacheOverflow = {};
export default {
name: 'PortalWrapper',
props: {
wrapperClassName: PropTypes.string,
forceRender: PropTypes.bool,
getContainer: PropTypes.any,
children: PropTypes.func,
visible: PropTypes.bool,
},
data() {
const { visible } = this.$props;
openCount = visible ? openCount + 1 : openCount;
return {};
},
updated() {
this.setWrapperClassName();
},
watch: {
visible(val) {
openCount = val ? openCount + 1 : openCount - 1;
},
getContainer(getContainer, prevGetContainer) {
const getContainerIsFunc =
typeof getContainer === 'function' && typeof prevGetContainer === 'function';
if (
getContainerIsFunc
? getContainer.toString() !== prevGetContainer.toString()
: getContainer !== prevGetContainer
) {
this.removeCurrentContainer(false);
}
},
},
beforeDestroy() {
const { visible } = this.$props;
// 离开时不会 render 导到离开时数值不变,改用 func 。。
openCount = visible && openCount ? openCount - 1 : openCount;
this.removeCurrentContainer(visible);
},
methods: {
getParent() {
const { getContainer } = this.$props;
if (getContainer) {
if (typeof getContainer === 'string') {
return document.querySelectorAll(getContainer)[0];
}
if (typeof getContainer === 'function') {
return getContainer();
}
if (typeof getContainer === 'object' && getContainer instanceof window.HTMLElement) {
return getContainer;
}
}
return document.body;
},
getDomContainer() {
if (windowIsUndefined) {
return null;
}
if (!this.container) {
this.container = document.createElement('div');
const parent = this.getParent();
if (parent) {
parent.appendChild(this.container);
}
}
this.setWrapperClassName();
return this.container;
},
setWrapperClassName() {
const { wrapperClassName } = this.$props;
if (this.container && wrapperClassName && wrapperClassName !== this.container.className) {
this.container.className = wrapperClassName;
}
},
savePortal(c) {
// Warning: don't rename _component
// https://github.com/react-component/util/pull/65#discussion_r352407916
this._component = c;
},
removeCurrentContainer() {
this.container = null;
this._component = null;
},
/**
* Enhance ./switchScrollingEffect
* 1. Simulate document body scroll bar with
* 2. Record body has overflow style and recover when all of PortalWrapper invisible
* 3. Disable body scroll when PortalWrapper has open
*
* @memberof PortalWrapper
*/
switchScrollingEffect() {
if (openCount === 1 && !Object.keys(cacheOverflow).length) {
switchScrollingEffect();
// Must be set after switchScrollingEffect
cacheOverflow = setStyle({
overflow: 'hidden',
overflowX: 'hidden',
overflowY: 'hidden',
});
} else if (!openCount) {
setStyle(cacheOverflow);
cacheOverflow = {};
switchScrollingEffect(true);
}
},
},
render() {
const { children, forceRender, visible } = this.$props;
let portal = null;
const childProps = {
getOpenCount: () => openCount,
getContainer: this.getDomContainer,
switchScrollingEffect: this.switchScrollingEffect,
};
if (forceRender || visible || this._component) {
portal = (
<Portal
getContainer={this.getDomContainer}
children={children(childProps)}
{...{
directives: [
{
name: 'ant-ref',
value: this.savePortal,
},
],
}}
></Portal>
);
}
return portal;
},
};

View File

@ -1,11 +1,13 @@
import ref from 'vue-ref';
import { antInput } from './antInputDirective';
import { antDecorator } from './FormDecoratorDirective';
import { antPortal } from './portalDirective';
export default {
install: Vue => {
Vue.use(ref, { name: 'ant-ref' });
antInput(Vue);
antDecorator(Vue);
antPortal(Vue);
},
};

View File

@ -17,15 +17,12 @@ function makeMap(str, expectsLowerCase) {
const isTextInputType = makeMap('text,number,password,search,email,tel,url');
function onCompositionStart(e) {
e.target.originPlaceholder = e.target.placeholder;
e.target.placeholder = '';
e.target.composing = true;
}
function onCompositionEnd(e) {
// prevent triggering an input event for no reason
if (!e.target.composing) return;
e.target.placeholder = e.target.originPlaceholder;
e.target.composing = false;
trigger(e.target, 'input');
}

View File

@ -0,0 +1,4 @@
const isValid = value => {
return value !== undefined && value !== null && value !== '';
};
export default isValid;

View File

@ -0,0 +1,75 @@
import interopDefault from './interopDefault';
import * as moment from 'moment';
import warning from './warning';
import isNil from 'lodash/isNil';
export const TimeType = {
validator(value) {
return typeof value === 'string' || isNil(value) || moment.isMoment(value);
},
};
export const TimesType = {
validator(value) {
if (Array.isArray(value)) {
return (
value.length === 0 ||
value.findIndex(val => typeof val !== 'string') === -1 ||
value.findIndex(val => !isNil(val) && !moment.isMoment(val)) === -1
);
}
return false;
},
};
export const TimeOrTimesType = {
validator(value) {
if (Array.isArray(value)) {
return (
value.length === 0 ||
value.findIndex(val => typeof val !== 'string') === -1 ||
value.findIndex(val => !isNil(val) && !moment.isMoment(val)) === -1
);
} else {
return typeof value === 'string' || isNil(value) || moment.isMoment(value);
}
},
};
export function checkValidate(componentName, value, propName, valueFormat) {
const values = Array.isArray(value) ? value : [value];
values.forEach(val => {
if (!val) return;
valueFormat &&
warning(
interopDefault(moment)(val, valueFormat).isValid(),
componentName,
`When set \`valueFormat\`, \`${propName}\` should provides invalidate string time. `,
);
!valueFormat &&
warning(
interopDefault(moment).isMoment(val) && val.isValid(),
componentName,
`\`${propName}\` provides invalidate moment time. If you want to set empty value, use \`null\` instead.`,
);
});
}
export const stringToMoment = (value, valueFormat) => {
if (Array.isArray(value)) {
return value.map(val =>
typeof val === 'string' && val ? interopDefault(moment)(val, valueFormat) : val || null,
);
} else {
return typeof value === 'string' && value
? interopDefault(moment)(value, valueFormat)
: value || null;
}
};
export const momentToString = (value, valueFormat) => {
if (Array.isArray(value)) {
return value.map(val => (interopDefault(moment).isMoment(val) ? val.format(valueFormat) : val));
} else {
return interopDefault(moment).isMoment(value) ? value.format(valueFormat) : value;
}
};

View File

@ -0,0 +1,24 @@
export function antPortal(Vue) {
return Vue.directive('ant-portal', {
inserted(el, binding) {
const { value } = binding;
const parentNode = typeof value === 'function' ? value(el) : value;
if (parentNode !== el.parentNode) {
parentNode.appendChild(el);
}
},
componentUpdated(el, binding) {
const { value } = binding;
const parentNode = typeof value === 'function' ? value(el) : value;
if (parentNode !== el.parentNode) {
parentNode.appendChild(el);
}
},
});
}
export default {
install: Vue => {
antPortal(Vue);
},
};

View File

@ -198,6 +198,15 @@ export function getEvents(child) {
return { ...events };
}
// 获取 xxx.native 或者 原生标签 事件
export function getDataEvents(child) {
let events = {};
if (child.data && child.data.on) {
events = child.data.on;
}
return { ...events };
}
// use getListeners instead this.$listeners
// https://github.com/vueComponent/ant-design-vue/issues/1705
export function getListeners(context) {

View File

@ -0,0 +1,25 @@
/**
* Easy to set element style, return previous style
* IE browser compatible(IE browser doesn't merge overflow style, need to set it separately)
* https://github.com/ant-design/ant-design/issues/19393
*
*/
function setStyle(style, options = {}) {
const { element = document.body } = options;
const oldStyle = {};
const styleKeys = Object.keys(style);
// IE browser compatible
styleKeys.forEach(key => {
oldStyle[key] = element.style[key];
});
styleKeys.forEach(key => {
element.style[key] = style[key];
});
return oldStyle;
}
export default setStyle;

View File

@ -80,7 +80,6 @@ export default function connect(mapStateToProps) {
},
},
render() {
this.preProps = { ...this.$props };
const { $slots = {}, $scopedSlots, subscribed, store } = this;
const props = getOptionProps(this);
this.preProps = { ...omit(props, ['__propsSymbol__']) };

View File

@ -67,7 +67,7 @@ export function cloneElement(n, nodeProps = {}, deep) {
// !(node.fnOptions && node.fnOptions.functional),
// `can not use cloneElement for functional component (${node.fnOptions && node.fnOptions.name})`,
// );
const { props = {}, key, on = {}, children, directives = [] } = nodeProps;
const { props = {}, key, on = {}, nativeOn = {}, children, directives = [] } = nodeProps;
const data = node.data || {};
let cls = {};
let style = {};
@ -129,8 +129,12 @@ export function cloneElement(n, nodeProps = {}, deep) {
node.componentOptions.children = children;
}
} else {
if (children) {
node.children = children;
}
node.data.on = { ...(node.data.on || {}), ...on };
}
node.data.on = { ...(node.data.on || {}), ...nativeOn };
if (key !== undefined) {
node.key = key;

View File

@ -100,6 +100,8 @@ const Affix = {
clearTimeout(this.timeout);
removeObserveTarget(this);
this.updatePosition.cancel();
// https://github.com/ant-design/ant-design/issues/22683
this.lazyUpdatePosition.cancel();
},
methods: {
getOffsetTop() {

View File

@ -1,6 +1,7 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`renders ./antdv-demo/docs/auto-complete/demo/basic.md correctly 1`] = `
<<<<<<< HEAD
<div>
<div tabindex="0" class="ant-select ant-select-combobox ant-select-enabled ant-select-show-search ant-select-auto-complete" style="width: 200px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
@ -23,6 +24,17 @@ exports[`renders ./antdv-demo/docs/auto-complete/demo/basic.md correctly 1`] = `
</ul>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
</div>
=======
<div tabindex="0" class="ant-select ant-select-combobox ant-select-enabled ant-select-show-search ant-select-auto-complete" style="width: 200px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<ul>
<li class="ant-select-search ant-select-search--inline">
<div class="ant-select-search__field__wrap"><input placeholder="input here" type="text" value="" class="ant-input ant-select-search__field"><span class="ant-select-search__field__mirror">&nbsp;</span></div>
</li>
</ul>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
`;

View File

@ -9,6 +9,18 @@ exports[`renders ./antdv-demo/docs/avatar/demo/basic.md correctly 1`] = `
</div>
`;
exports[`renders ./antdv-demo/docs/avatar/demo/dynamic.md correctly 1`] = `<div><span class="ant-avatar ant-avatar-lg ant-avatar-square" style="background-color: rgb(245, 106, 0); vertical-align: middle;"><span class="ant-avatar-string" style="opacity: 0;">U</span></span> <button type="button" class="ant-btn ant-btn-sm" style="vertical-align: middle;"><span>改 变</span></button></div>`;
exports[`renders ./antdv-demo/docs/avatar/demo/dynamic.md correctly 1`] = `
<div><span class="ant-avatar ant-avatar-lg ant-avatar-square" style="background-color: rgb(245, 106, 0); vertical-align: middle;"><span class="ant-avatar-string" style="opacity: 0;">
U
</span></span> <button type="button" class="ant-btn ant-btn-sm" style="vertical-align: middle;"><span>改 变</span></button></div>
`;
<<<<<<< HEAD
exports[`renders ./antdv-demo/docs/avatar/demo/type.md correctly 1`] = `<div><span class="ant-avatar ant-avatar-circle ant-avatar-icon"><span role="img" aria-label="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span></span> <span class="ant-avatar ant-avatar-circle"><span class="ant-avatar-string" style="opacity: 0;">U</span></span> <span class="ant-avatar ant-avatar-circle"><span class="ant-avatar-string" style="opacity: 0;">USER</span></span> <span class="ant-avatar ant-avatar-circle ant-avatar-image"><img src="https://zos.alipayobjects.com/rmsportal/ODTLcjxAfvqbxHnVXCYX.png"></span> <span class="ant-avatar ant-avatar-circle" style="color: rgb(245, 106, 0); background-color: rgb(253, 227, 207);"><span class="ant-avatar-string" style="opacity: 0;">U</span></span> <span class="ant-avatar ant-avatar-circle ant-avatar-icon" style="background-color: rgb(135, 208, 104);"><span role="img" aria-label="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span></span></div>`;
=======
exports[`renders ./antdv-demo/docs/avatar/demo/type.md correctly 1`] = `
<div><span class="ant-avatar ant-avatar-circle ant-avatar-icon"><i aria-label="icon: user" class="anticon anticon-user"><svg viewBox="64 64 896 896" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M858.5 763.6a374 374 0 0 0-80.6-119.5 375.63 375.63 0 0 0-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 0 0-80.6 119.5A371.7 371.7 0 0 0 136 901.8a8 8 0 0 0 8 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 0 0 8-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></i></span> <span class="ant-avatar ant-avatar-circle ant-avatar-icon"><i aria-label="icon: user" class="anticon anticon-user"><svg viewBox="64 64 896 896" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M858.5 763.6a374 374 0 0 0-80.6-119.5 375.63 375.63 0 0 0-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 0 0-80.6 119.5A371.7 371.7 0 0 0 136 901.8a8 8 0 0 0 8 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 0 0 8-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></i></span> <span class="ant-avatar ant-avatar-circle"><span class="ant-avatar-string" style="opacity: 0;">U</span></span> <span class="ant-avatar ant-avatar-circle"><span class="ant-avatar-string" style="opacity: 0;">USER</span></span> <span class="ant-avatar ant-avatar-circle ant-avatar-image"><img src="https://zos.alipayobjects.com/rmsportal/ODTLcjxAfvqbxHnVXCYX.png"></span> <span class="ant-avatar ant-avatar-circle" style="color: rgb(245, 106, 0); background-color: rgb(253, 227, 207);"><span class="ant-avatar-string" style="opacity: 0;">
U
</span></span> <span class="ant-avatar ant-avatar-circle ant-avatar-icon" style="background-color: rgb(135, 208, 104);"><i aria-label="icon: user" class="anticon anticon-user"><svg viewBox="64 64 896 896" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M858.5 763.6a374 374 0 0 0-80.6-119.5 375.63 375.63 0 0 0-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 0 0-80.6 119.5A371.7 371.7 0 0 0 136 901.8a8 8 0 0 0 8 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 0 0 8-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></i></span></div>
`;
>>>>>>> origin/master

View File

@ -13,7 +13,9 @@ exports[`renders ./antdv-demo/docs/badge/demo/change.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/badge/demo/colors.md correctly 1`] = `
<div>
<h4 style="margin-bottom: 16px;">Presets:</h4>
<h4 style="margin-bottom: 16px;">
Presets:
</h4>
<div>
<div><span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot ant-badge-status-pink"></span><span class="ant-badge-status-text">pink</span></span></div>
<div><span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot ant-badge-status-red"></span><span class="ant-badge-status-text">red</span></span></div>
@ -29,7 +31,9 @@ exports[`renders ./antdv-demo/docs/badge/demo/colors.md correctly 1`] = `
<div><span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot ant-badge-status-gold"></span><span class="ant-badge-status-text">gold</span></span></div>
<div><span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot ant-badge-status-lime"></span><span class="ant-badge-status-text">lime</span></span></div>
</div>
<h4 style="margin: 16px 0px;">Custom:</h4>
<h4 style="margin: 16px 0px;">
Custom:
</h4>
<div><span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot" style="background: rgb(255, 85, 0);"></span><span class="ant-badge-status-text">#f50</span></span> <br> <span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot" style="background: rgb(45, 183, 245);"></span><span class="ant-badge-status-text">#2db7f5</span></span> <br> <span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot" style="background: rgb(135, 208, 104);"></span><span class="ant-badge-status-text">#87d068</span></span> <br> <span class="ant-badge ant-badge-status ant-badge-not-a-wrapper"><span class="ant-badge-status-dot" style="background: rgb(16, 142, 233);"></span><span class="ant-badge-status-text">#108ee9</span></span></div>
</div>
`;

View File

@ -6,12 +6,26 @@ exports[`renders ./antdv-demo/docs/breadcrumb/demo/overlay.md correctly 1`] = `<
exports[`renders ./antdv-demo/docs/breadcrumb/demo/separator.md correctly 1`] = `
<div>
<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><a class="ant-breadcrumb-link">Application Center</a><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><a class="ant-breadcrumb-link">Application List</a><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><span class="ant-breadcrumb-link">An Application</span><span class="ant-breadcrumb-separator">&gt;</span></span></div>
<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><a class="ant-breadcrumb-link">Application Center</a><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><a class="ant-breadcrumb-link">Application List</a><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><span class="ant-breadcrumb-link">An Application</span><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span></div>
<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><a class="ant-breadcrumb-link">
Application Center
</a><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><a class="ant-breadcrumb-link">
Application List
</a><span class="ant-breadcrumb-separator">&gt;</span></span><span class=""><span class="ant-breadcrumb-link">An Application</span><span class="ant-breadcrumb-separator">&gt;</span></span></div>
<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><a class="ant-breadcrumb-link">
Application Center
</a><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><a class="ant-breadcrumb-link">
Application List
</a><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span><span class=""><span class="ant-breadcrumb-link">An Application</span><span class="ant-breadcrumb-separator"><span style="color: red;">&gt;</span></span></span></div>
</div>
`;
exports[`renders ./antdv-demo/docs/breadcrumb/demo/separator-indepent.md correctly 1`] = `<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Location</span></span><span class="ant-breadcrumb-separator">:</span><span class=""><a class="ant-breadcrumb-link">Application Center</a></span><span class="ant-breadcrumb-separator">/</span><span class=""><a class="ant-breadcrumb-link">Application List</a></span><span class="ant-breadcrumb-separator">/</span><span class=""><span class="ant-breadcrumb-link">An Application</span></span></div>`;
exports[`renders ./antdv-demo/docs/breadcrumb/demo/separator-indepent.md correctly 1`] = `
<div class="ant-breadcrumb"><span class=""><span class="ant-breadcrumb-link">Location</span></span><span class="ant-breadcrumb-separator">:</span><span class=""><a class="ant-breadcrumb-link">
Application Center
</a></span><span class="ant-breadcrumb-separator">/</span><span class=""><a class="ant-breadcrumb-link">
Application List
</a></span><span class="ant-breadcrumb-separator">/</span><span class=""><span class="ant-breadcrumb-link">An Application</span></span></div>
`;
exports[`renders ./antdv-demo/docs/breadcrumb/demo/withIcon.md correctly 1`] = `
<div class="ant-breadcrumb"><span class=""><a class="ant-breadcrumb-link"><span role="img" aria-label="home" class="anticon anticon-home"><svg viewBox="64 64 896 896" focusable="false" data-icon="home" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M946.5 505L560.1 118.8l-25.9-25.9a31.5 31.5 0 00-44.4 0L77.5 505a63.9 63.9 0 00-18.8 46c.4 35.2 29.7 63.3 64.9 63.3h42.5V940h691.8V614.3h43.4c17.1 0 33.2-6.7 45.3-18.8a63.6 63.6 0 0018.7-45.3c0-17-6.7-33.1-18.8-45.2zM568 868H456V664h112v204zm217.9-325.7V868H632V640c0-22.1-17.9-40-40-40H432c-22.1 0-40 17.9-40 40v228H238.1V542.3h-96l370-369.7 23.1 23.1L882 542.3h-96.1z"></path></svg></span></a><span class="ant-breadcrumb-separator">/</span></span><span class=""><a class="ant-breadcrumb-link"><span role="img" aria-label="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span> <span>Application List</span></a><span class="ant-breadcrumb-separator">/</span></span><span class=""><span class="ant-breadcrumb-link">

View File

@ -32,7 +32,32 @@ exports[`renders ./antdv-demo/docs/button/demo/multiple.md correctly 1`] = `<div
exports[`renders ./antdv-demo/docs/button/demo/size.md correctly 1`] = `
<div>
<<<<<<< HEAD
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>Large</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>Default</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>Small</span></label></div> <br><br> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg"><span>Primary</span></button> <button type="button" class="ant-btn ant-btn-lg"><span>Normal</span></button> <button type="button" class="ant-btn ant-btn-dashed ant-btn-lg"><span>Dashed</span></button> <button type="button" class="ant-btn ant-btn-danger ant-btn-lg"><span>Danger</span></button> <button type="button" class="ant-btn ant-btn-link ant-btn-lg"><span>Link</span></button> <br> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg ant-btn-icon-only"><span role="img" aria-label="download" class="anticon anticon-download"><svg viewBox="64 64 896 896" focusable="false" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path></svg></span></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-circle ant-btn-lg ant-btn-icon-only"><span role="img" aria-label="download" class="anticon anticon-download"><svg viewBox="64 64 896 896" focusable="false" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path></svg></span></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-round ant-btn-lg"><span role="img" aria-label="download" class="anticon anticon-download"><svg viewBox="64 64 896 896" focusable="false" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path></svg></span><span>Download</span></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-round ant-btn-lg ant-btn-icon-only"><span role="img" aria-label="download" class="anticon anticon-download"><svg viewBox="64 64 896 896" focusable="false" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path></svg></span></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg"><span role="img" aria-label="download" class="anticon anticon-download"><svg viewBox="64 64 896 896" focusable="false" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M505.7 661a8 8 0 0012.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path></svg></span><span>Download</span></button> <br>
<div class="ant-btn-group ant-btn-group-lg"><button type="button" class="ant-btn ant-btn-primary"><span role="img" aria-label="left" class="anticon anticon-left"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span><span>Backward</span></button><button type="button" class="ant-btn ant-btn-primary"><span>Forward</span><span role="img" aria-label="right" class="anticon anticon-right"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></button></div>
=======
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>
Large
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>
Default
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>
Small
</span></label></div> <br><br> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg"><span>Primary</span></button> <button type="button" class="ant-btn ant-btn-lg"><span>Normal</span></button> <button type="button" class="ant-btn ant-btn-dashed ant-btn-lg"><span>Dashed</span></button> <button type="button" class="ant-btn ant-btn-danger ant-btn-lg"><span>Danger</span></button> <button type="button" class="ant-btn ant-btn-link ant-btn-lg"><span>Link</span></button> <br> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg ant-btn-icon-only"><i aria-label="icon: download" class="anticon anticon-download"><svg viewBox="64 64 896 896" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M505.7 661a8 8 0 0 0 12.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path>
</svg></i></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-circle ant-btn-lg ant-btn-icon-only"><i aria-label="icon: download" class="anticon anticon-download"><svg viewBox="64 64 896 896" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M505.7 661a8 8 0 0 0 12.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path>
</svg></i></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-round ant-btn-lg ant-btn-icon-only"><i aria-label="icon: download" class="anticon anticon-download"><svg viewBox="64 64 896 896" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M505.7 661a8 8 0 0 0 12.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path>
</svg></i></button>Download <button type="button" class="ant-btn ant-btn-primary ant-btn-round ant-btn-lg ant-btn-icon-only"><i aria-label="icon: download" class="anticon anticon-download"><svg viewBox="64 64 896 896" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M505.7 661a8 8 0 0 0 12.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path>
</svg></i></button> <button type="button" class="ant-btn ant-btn-primary ant-btn-lg"><i aria-label="icon: download" class="anticon anticon-download"><svg viewBox="64 64 896 896" data-icon="download" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M505.7 661a8 8 0 0 0 12.6 0l112-141.7c4.1-5.2.4-12.9-6.3-12.9h-74.1V168c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v338.3H400c-6.7 0-10.4 7.7-6.3 12.9l112 141.8zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z"></path>
</svg></i><span>Download</span></button> <br>
<div class="ant-btn-group ant-btn-group-lg"><button type="button" class="ant-btn ant-btn-primary"><i aria-label="icon: left" class="anticon anticon-left"><svg viewBox="64 64 896 896" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 0 0 0 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path>
</svg></i><span>Backward</span></button><button type="button" class="ant-btn ant-btn-primary"><span>Forward</span><i aria-label="icon: right" class="anticon anticon-right"><svg viewBox="64 64 896 896" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 0 0 302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 0 0 0-50.4z"></path>
</svg></i></button></div>
>>>>>>> origin/master
</div>
`;

View File

@ -9,6 +9,7 @@ import interopDefault from '../_util/interopDefault';
import { ConfigConsumerProps } from '../config-provider';
import enUS from './locale/en_US';
import Base from '../base';
import { checkValidate, stringToMoment, momentToString, TimeType } from '../_util/moment-util';
function noop() {
return null;
@ -20,12 +21,6 @@ function zerofixed(v) {
}
return `${v}`;
}
export const MomentType = {
type: Object,
validator(value) {
return moment.isMoment(value);
},
};
function isMomentArray(value) {
return Array.isArray(value) && !!value.find(val => moment.isMoment(val));
}
@ -33,8 +28,8 @@ export const CalendarMode = PropTypes.oneOf(['month', 'year']);
export const CalendarProps = () => ({
prefixCls: PropTypes.string,
value: MomentType,
defaultValue: MomentType,
value: TimeType,
defaultValue: TimeType,
mode: CalendarMode,
fullscreen: PropTypes.bool,
// dateCellRender: PropTypes.func,
@ -47,6 +42,7 @@ export const CalendarProps = () => ({
disabledDate: PropTypes.func,
validRange: PropTypes.custom(isMomentArray),
headerRender: PropTypes.func,
valueFormat: PropTypes.string,
});
const Calendar = {
@ -64,20 +60,21 @@ const Calendar = {
configProvider: { default: () => ConfigConsumerProps },
},
data() {
const value = this.value || this.defaultValue || interopDefault(moment)();
if (!interopDefault(moment).isMoment(value)) {
throw new Error('The value/defaultValue of Calendar must be a moment object, ');
}
const { value, defaultValue, valueFormat } = this;
const sValue = value || defaultValue || interopDefault(moment)();
checkValidate('Calendar', defaultValue, 'defaultValue', valueFormat);
checkValidate('Calendar', value, 'value', valueFormat);
this._sPrefixCls = undefined;
return {
sValue: value,
sValue: stringToMoment(sValue, valueFormat),
sMode: this.mode || 'month',
};
},
watch: {
value(val) {
checkValidate('Calendar', val, 'value', this.valueFormat);
this.setState({
sValue: val,
sValue: stringToMoment(val, this.valueFormat),
});
},
mode(val) {
@ -95,9 +92,10 @@ const Calendar = {
this.onPanelChange(this.sValue, mode);
},
onPanelChange(value, mode) {
this.$emit('panelChange', value, mode);
const val = this.valueFormat ? momentToString(value, this.valueFormat) : value;
this.$emit('panelChange', val, mode);
if (value !== this.sValue) {
this.$emit('change', value);
this.$emit('change', val);
}
},
@ -105,8 +103,8 @@ const Calendar = {
this.setValue(value, 'select');
},
setValue(value, way) {
const prevValue = this.value || this.sValue;
const { sMode: mode } = this;
const prevValue = this.value ? stringToMoment(this.value, this.valueFormat) : this.sValue;
const { sMode: mode, valueFormat } = this;
if (!hasProp(this, 'value')) {
this.setState({ sValue: value });
}
@ -114,7 +112,7 @@ const Calendar = {
if (prevValue && prevValue.month() !== value.month()) {
this.onPanelChange(value, mode);
}
this.$emit('select', value);
this.$emit('select', valueFormat ? momentToString(value, valueFormat) : value);
} else if (way === 'changePanel') {
this.onPanelChange(value, mode);
}

View File

@ -55,7 +55,9 @@ exports[`renders ./antdv-demo/docs/card/demo/flexible-content.md correctly 1`] =
<div class="ant-card-meta">
<div class="ant-card-meta-detail">
<div class="ant-card-meta-title">Europe Street beat</div>
<div class="ant-card-meta-description">www.instagram.com</div>
<div class="ant-card-meta-description">
www.instagram.com
</div>
</div>
</div>
</div>
@ -70,14 +72,30 @@ exports[`renders ./antdv-demo/docs/card/demo/grid-card.md correctly 1`] = `
</div>
</div>
<div class="ant-card-body">
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">Content</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
<div class="ant-card-grid ant-card-grid-hoverable" style="width: 25%; text-align: center;">
Content
</div>
</div>
</div>
`;
@ -321,7 +339,9 @@ exports[`renders ./antdv-demo/docs/card/demo/tabs.md correctly 1`] = `
</div>
</div>
<div class="ant-card-body">
<p>app content</p>
<p>
app content
</p>
</div>
</div>
</div>

View File

@ -351,7 +351,15 @@ exports[`renders ./antdv-demo/docs/carousel/demo/fade.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/carousel/demo/position.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>Top</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="bottom"><span class="ant-radio-button-inner"></span></span><span>Bottom</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>Left</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="right"><span class="ant-radio-button-inner"></span></span><span>Right</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>
Top
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="bottom"><span class="ant-radio-button-inner"></span></span><span>
Bottom
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>
Left
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="right"><span class="ant-radio-button-inner"></span></span><span>
Right
</span></label></div>
<div class="ant-carousel">
<div class="slick-slider slick-initialized">
<div class="slick-list">

View File

@ -31,8 +31,19 @@
.slick-slide {
pointer-events: none;
// https://github.com/ant-design/ant-design/issues/23294
input.@{ant-prefix}-radio-input,
input.@{ant-prefix}-checkbox-input {
visibility: hidden;
}
&.slick-active {
pointer-events: auto;
input.@{ant-prefix}-radio-input,
input.@{ant-prefix}-checkbox-input {
visibility: visible;
}
}
}
}

View File

@ -263,6 +263,7 @@ const Cascader = {
handleInputChange(e) {
const inputValue = e.target.value;
this.setState({ inputValue });
this.$emit('search', inputValue);
},
setValue(value, selectedOptions) {

View File

@ -218,6 +218,9 @@
position: absolute;
right: @control-padding-horizontal;
color: @text-color-secondary;
.@{cascader-prefix-cls}-menu-item-disabled& {
color: @disabled-color;
}
}
& &-keyword {

View File

@ -1,6 +1,10 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`renders ./antdv-demo/docs/checkbox/demo/basic.md correctly 1`] = `<label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value=""><span class="ant-checkbox-inner"></span></span><span>Checkbox</span></label>`;
exports[`renders ./antdv-demo/docs/checkbox/demo/basic.md correctly 1`] = `
<label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value=""><span class="ant-checkbox-inner"></span></span><span>
Checkbox
</span></label>
`;
exports[`renders ./antdv-demo/docs/checkbox/demo/check-all.md correctly 1`] = `
<div>
@ -34,11 +38,21 @@ exports[`renders ./antdv-demo/docs/checkbox/demo/group.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/checkbox/demo/layout.md correctly 1`] = `
<div class="ant-checkbox-group">
<div class="ant-row">
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="A"><span class="ant-checkbox-inner"></span></span><span>A</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="B"><span class="ant-checkbox-inner"></span></span><span>B</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="C"><span class="ant-checkbox-inner"></span></span><span>C</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="D"><span class="ant-checkbox-inner"></span></span><span>D</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="E"><span class="ant-checkbox-inner"></span></span><span>E</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="A"><span class="ant-checkbox-inner"></span></span><span>
A
</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="B"><span class="ant-checkbox-inner"></span></span><span>
B
</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="C"><span class="ant-checkbox-inner"></span></span><span>
C
</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="D"><span class="ant-checkbox-inner"></span></span><span>
D
</span></label></div>
<div class="ant-col ant-col-8"><label class="ant-checkbox-wrapper"><span class="ant-checkbox"><input type="checkbox" class="ant-checkbox-input" value="E"><span class="ant-checkbox-inner"></span></span><span>
E
</span></label></div>
</div>
</div>
`;

View File

@ -114,8 +114,15 @@ exports[`renders ./antdv-demo/docs/collapse/demo/extra.md correctly 1`] = `
<div tabindex="0" class="ant-select ant-select-enabled">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="left" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">left</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="left" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
left
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
</div>

View File

@ -74,7 +74,9 @@ exports[`renders ./antdv-demo/docs/comment/demo/list.md correctly 1`] = `
<div class="ant-comment-content">
<div class="ant-comment-content-author"><span class="ant-comment-content-author-name">Han Solo</span><span class="ant-comment-content-author-time"><span class="">a day ago</span></span></div>
<div class="ant-comment-content-detail">
<p>We supply a series of design principles, practical patterns and high quality design resources (Sketch and Axure), to help people create their product prototypes beautifully and efficiently.</p>
<p>
We supply a series of design principles, practical patterns and high quality design resources (Sketch and Axure), to help people create their product prototypes beautifully and efficiently.
</p>
</div>
<ul class="ant-comment-actions">
<li><span>Reply to</span></li>
@ -90,7 +92,9 @@ exports[`renders ./antdv-demo/docs/comment/demo/list.md correctly 1`] = `
<div class="ant-comment-content">
<div class="ant-comment-content-author"><span class="ant-comment-content-author-name">Han Solo</span><span class="ant-comment-content-author-time"><span class="">2 days ago</span></span></div>
<div class="ant-comment-content-detail">
<p>We supply a series of design principles, practical patterns and high quality design resources (Sketch and Axure), to help people create their product prototypes beautifully and efficiently.</p>
<p>
We supply a series of design principles, practical patterns and high quality design resources (Sketch and Axure), to help people create their product prototypes beautifully and efficiently.
</p>
</div>
<ul class="ant-comment-actions">
<li><span>Reply to</span></li>

View File

@ -292,6 +292,7 @@ export default {
localeCode,
format,
separator,
inputReadOnly,
} = props;
const getPrefixCls = this.configProvider.getPrefixCls;
const prefixCls = getPrefixCls('calendar', customizePrefixCls);
@ -351,6 +352,7 @@ export default {
value: showDate,
hoverValue,
showToday,
inputReadOnly,
},
on: {
change: calendarChange,

View File

@ -18,8 +18,19 @@ exports[`renders ./antdv-demo/docs/date-picker/demo/presetted-ranges.md correctl
exports[`renders ./antdv-demo/docs/date-picker/demo/size.md correctly 1`] = `
<div>
<<<<<<< HEAD
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>Large</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>Default</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>Small</span></label></div> <br><br> <span class="ant-calendar-picker ant-calendar-picker-default"><div class=""><input readonly="true" placeholder="Select date" class="ant-calendar-picker-input ant-input"><span role="img" aria-label="calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></span>
</div></span> <br> <span class="ant-calendar-picker ant-calendar-picker-default"><div class=""><input readonly="true" placeholder="Select Month" class="ant-calendar-picker-input ant-input"><span role="img" aria-label="calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></span></div></span> <br> <span tabindex="0" class="ant-calendar-picker ant-calendar-picker-default"><span class="ant-calendar-picker-input ant-input"><input readonly="true" placeholder="Start date" tabindex="-1" class="ant-calendar-range-picker-input"><span class="ant-calendar-range-picker-separator"> ~ </span><input readonly="true" placeholder="End date" tabindex="-1" class="ant-calendar-range-picker-input"><span class="ant-calendar-picker-icon"></span></span></span> <br> <span class="ant-calendar-picker ant-calendar-picker-default"><span class="" style="display: inline-block; width: 100%;"><input readonly="true" placeholder="Select Week" class="ant-calendar-picker-input ant-input"><span class="ant-calendar-picker-icon"></span></span></span></div>
=======
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>
Large
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>
Default
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>
Small
</span></label></div> <br><br> <span class="ant-calendar-picker ant-calendar-picker-default"><div class=""><input readonly="true" placeholder="Select date" class="ant-calendar-picker-input ant-input"><i aria-label="icon: calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></i></div></span> <br> <span class="ant-calendar-picker ant-calendar-picker-default"><div class=""><input readonly="true" placeholder="Select Month" class="ant-calendar-picker-input ant-input"><i aria-label="icon: calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></i></div></span> <br> <span tabindex="0" class="ant-calendar-picker ant-calendar-picker-default"><span class="ant-calendar-picker-input ant-input"><input readonly="true" placeholder="Start date" tabindex="-1" class="ant-calendar-range-picker-input"><span class="ant-calendar-range-picker-separator"> ~ </span><input readonly="true" placeholder="End date" tabindex="-1" class="ant-calendar-range-picker-input"><span class="ant-calendar-picker-icon"></span></span></span> <br> <span class="ant-calendar-picker ant-calendar-picker-default"><span class="" style="display: inline-block; width: 100%;"><input readonly="true" placeholder="Select Week" class="ant-calendar-picker-input ant-input"><span class="ant-calendar-picker-icon"></span></span></span>
</div>
>>>>>>> origin/master
`;
exports[`renders ./antdv-demo/docs/date-picker/demo/start-end.md correctly 1`] = `<div><span class="ant-calendar-picker" style="min-width: 195px;"><div class=""><input readonly="true" placeholder="Start" class="ant-calendar-picker-input ant-input"><span role="img" aria-label="calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></span></div></span> <span class="ant-calendar-picker" style="min-width: 195px;"><div class=""><input readonly="true" placeholder="End" class="ant-calendar-picker-input ant-input"><span role="img" aria-label="calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></span></div></span></div>`;

View File

@ -141,7 +141,7 @@ export default function createPicker(TheCalendar, props) {
const { panelChange = noop, focus = noop, blur = noop, ok = noop } = listeners;
const props = getOptionProps(this);
const { prefixCls: customizePrefixCls, locale, localeCode } = props;
const { prefixCls: customizePrefixCls, locale, localeCode, inputReadOnly } = props;
const getPrefixCls = this.configProvider.getPrefixCls;
const prefixCls = getPrefixCls('calendar', customizePrefixCls);
this._prefixCls = prefixCls;
@ -190,6 +190,7 @@ export default function createPicker(TheCalendar, props) {
monthCellContentRender,
renderFooter: this.renderFooter,
value: showDate,
inputReadOnly,
},
on: {
ok,

View File

@ -1,13 +1,6 @@
import * as moment from 'moment';
// import { TimePickerProps } from '../time-picker'
import PropTypes from '../_util/vue-types';
export const MomentType = {
type: Object,
validator(value) {
return value === undefined || moment.isMoment(value);
},
};
import { TimesType, TimeType } from '../_util/moment-util';
export const PickerProps = () => ({
name: PropTypes.string,
@ -36,12 +29,14 @@ export const PickerProps = () => ({
tagPrefixCls: PropTypes.string,
tabIndex: PropTypes.oneOfType([PropTypes.string, PropTypes.number]),
align: PropTypes.object.def(() => ({})),
inputReadOnly: PropTypes.bool,
valueFormat: PropTypes.string,
});
export const SinglePickerProps = () => ({
value: MomentType,
defaultValue: MomentType,
defaultPickerValue: MomentType,
value: TimeType,
defaultValue: TimeType,
defaultPickerValue: TimeType,
renderExtraFooter: PropTypes.any,
placeholder: PropTypes.string,
// onChange?: (date: moment.Moment, dateString: string) => void;
@ -64,27 +59,17 @@ export const MonthPickerProps = () => ({
placeholder: PropTypes.string,
monthCellContentRender: PropTypes.func,
});
function isMomentArray(value) {
if (Array.isArray(value)) {
return (
value.length === 0 || value.findIndex(val => val === undefined || moment.isMoment(val)) !== -1
);
}
return false;
}
export const RangePickerValue = PropTypes.custom(isMomentArray);
// export const RangePickerPresetRange = PropTypes.oneOfType([RangePickerValue, PropTypes.func])
// export const RangePickerPresetRange = PropTypes.oneOfType([TimesType, PropTypes.func])
export const RangePickerProps = () => ({
...PickerProps(),
tagPrefixCls: PropTypes.string,
value: RangePickerValue,
defaultValue: RangePickerValue,
defaultPickerValue: RangePickerValue,
value: TimesType,
defaultValue: TimesType,
defaultPickerValue: TimesType,
timePicker: PropTypes.any,
// onChange?: (dates: RangePickerValue, dateStrings: [string, string]) => void;
// onCalendarChange?: (dates: RangePickerValue, dateStrings: [string, string]) => void;
// onChange?: (dates: TimesType, dateStrings: [string, string]) => void;
// onCalendarChange?: (dates: TimesType, dateStrings: [string, string]) => void;
// onOk?: (selectedTime: moment.Moment) => void;
showTime: PropTypes.oneOfType([PropTypes.object, PropTypes.bool]),
ranges: PropTypes.object,
@ -94,7 +79,7 @@ export const RangePickerProps = () => ({
disabledTime: PropTypes.func,
showToday: PropTypes.bool,
renderExtraFooter: PropTypes.any,
// onPanelChange?: (value?: RangePickerValue, mode?: string | string[]) => void;
// onPanelChange?: (value?: TimesType, mode?: string | string[]) => void;
});
export const WeekPickerProps = () => ({

View File

@ -23,6 +23,9 @@
text-align: center;
vertical-align: top;
pointer-events: none;
.@{ant-prefix}-input-disabled & {
color: @disabled-color;
}
}
.@{calendar-prefix-cls}-range {

View File

@ -1,26 +1,11 @@
import TimePickerPanel from '../vc-time-picker/Panel';
import classNames from 'classnames';
import * as moment from 'moment';
import LocaleReceiver from '../locale-provider/LocaleReceiver';
import { generateShowHourMinuteSecond } from '../time-picker';
import enUS from './locale/en_US';
import interopDefault from '../_util/interopDefault';
import { getOptionProps, initDefaultProps, getListeners } from '../_util/props-util';
import { ConfigConsumerProps } from '../config-provider';
import warning from '../_util/warning';
function checkValidate(value, propName) {
const values = Array.isArray(value) ? value : [value];
values.forEach(val => {
if (!val) return;
warning(
!interopDefault(moment).isMoment(val) || val.isValid(),
'DatePicker',
`\`${propName}\` provides invalidate moment time. If you want to set empty value, use \`null\` instead.`,
);
});
}
import { checkValidate, stringToMoment, momentToString } from '../_util/moment-util';
const DEFAULT_FORMAT = {
date: 'YYYY-MM-DD',
@ -74,9 +59,9 @@ export default function wrapPicker(Picker, props, pickerType) {
};
},
mounted() {
const { autoFocus, disabled, value, defaultValue } = this;
checkValidate(defaultValue, 'defaultValue');
checkValidate(value, 'value');
const { autoFocus, disabled, value, defaultValue, valueFormat } = this;
checkValidate('DatePicker', defaultValue, 'defaultValue', valueFormat);
checkValidate('DatePicker', value, 'value', valueFormat);
if (autoFocus && !disabled) {
this.$nextTick(() => {
this.focus();
@ -85,7 +70,7 @@ export default function wrapPicker(Picker, props, pickerType) {
},
watch: {
value(val) {
checkValidate(val, 'value');
checkValidate('DatePicker', val, 'value', this.valueFormat);
},
},
methods: {
@ -123,7 +108,23 @@ export default function wrapPicker(Picker, props, pickerType) {
handleMouseLeave(e) {
this.$emit('mouseleave', e);
},
handleChange(date, dateString) {
this.$emit(
'change',
this.valueFormat ? momentToString(date, this.valueFormat) : date,
dateString,
);
},
handleOk(val) {
this.$emit('ok', this.valueFormat ? momentToString(val, this.valueFormat) : val);
},
handleCalendarChange(date, dateString) {
this.$emit(
'calendarChange',
this.valueFormat ? momentToString(date, this.valueFormat) : date,
dateString,
);
},
focus() {
this.$refs.picker.focus();
},
@ -132,8 +133,21 @@ export default function wrapPicker(Picker, props, pickerType) {
this.$refs.picker.blur();
},
transformValue(props) {
if ('value' in props) {
props.value = stringToMoment(props.value, this.valueFormat);
}
if ('defaultValue' in props) {
props.defaultValue = stringToMoment(props.defaultValue, this.valueFormat);
}
if ('defaultPickerValue' in props) {
props.defaultPickerValue = stringToMoment(props.defaultPickerValue, this.valueFormat);
}
},
renderPicker(locale, localeCode) {
const props = getOptionProps(this);
this.transformValue(props);
const {
prefixCls: customizePrefixCls,
inputPrefixCls: customizeInputPrefixCls,
@ -203,6 +217,9 @@ export default function wrapPicker(Picker, props, pickerType) {
blur: this.handleBlur,
mouseenter: this.handleMouseEnter,
mouseleave: this.handleMouseLeave,
change: this.handleChange,
ok: this.handleOk,
calendarChange: this.handleCalendarChange,
},
ref: 'picker',
scopedSlots: this.$scopedSlots || {},

View File

@ -7,12 +7,20 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/basic.md correctly 1`] = `
<table>
<tbody>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">UserName</span><span class="ant-descriptions-item-content">Zhou Maomao</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Telephone</span><span class="ant-descriptions-item-content">1810000000</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Live</span><span class="ant-descriptions-item-content">Hangzhou, Zhejiang</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">UserName</span><span class="ant-descriptions-item-content">
Zhou Maomao
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Telephone</span><span class="ant-descriptions-item-content">
1810000000
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Live</span><span class="ant-descriptions-item-content">
Hangzhou, Zhejiang
</span></td>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Remark</span><span class="ant-descriptions-item-content">empty</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Remark</span><span class="ant-descriptions-item-content">
empty
</span></td>
<td colspan="2" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Address</span><span class="ant-descriptions-item-content">
No. 18, Wantang Road, Xihu District, Hangzhou, Zhejiang, China
</span></td>
@ -31,15 +39,23 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/border.md correctly 1`] = `
<tbody>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Product</th>
<td colspan="1" class="ant-descriptions-item-content">Cloud Database</td>
<td colspan="1" class="ant-descriptions-item-content">
Cloud Database
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Billing Mode</th>
<td colspan="1" class="ant-descriptions-item-content">Prepaid</td>
<td colspan="1" class="ant-descriptions-item-content">
Prepaid
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Automatic Renewal</th>
<td colspan="1" class="ant-descriptions-item-content">YES</td>
<td colspan="1" class="ant-descriptions-item-content">
YES
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Order time</th>
<td colspan="1" class="ant-descriptions-item-content">2018-04-24 18:00:00</td>
<td colspan="1" class="ant-descriptions-item-content">
2018-04-24 18:00:00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Usage Time</th>
<td colspan="3" class="ant-descriptions-item-content">
2019-04-24 18:00:00
@ -51,11 +67,17 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/border.md correctly 1`] = `
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Negotiated Amount</th>
<td colspan="1" class="ant-descriptions-item-content">$80.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$80.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Discount</th>
<td colspan="1" class="ant-descriptions-item-content">$20.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$20.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Official Receipts</th>
<td colspan="1" class="ant-descriptions-item-content">$60.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$60.00
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Config Info</th>
@ -87,19 +109,31 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/responsive.md correctly 1`]
<tbody>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Product</th>
<td colspan="1" class="ant-descriptions-item-content">Cloud Database</td>
<td colspan="1" class="ant-descriptions-item-content">
Cloud Database
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Billing</th>
<td colspan="1" class="ant-descriptions-item-content">Prepaid</td>
<td colspan="1" class="ant-descriptions-item-content">
Prepaid
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Time</th>
<td colspan="1" class="ant-descriptions-item-content">18:00:00</td>
<td colspan="1" class="ant-descriptions-item-content">
18:00:00
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Amount</th>
<td colspan="1" class="ant-descriptions-item-content">$80.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$80.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Discount</th>
<td colspan="1" class="ant-descriptions-item-content">$20.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$20.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Official</th>
<td colspan="1" class="ant-descriptions-item-content">$60.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$60.00
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Config Info</th>
@ -126,7 +160,13 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/responsive.md correctly 1`]
exports[`renders ./antdv-demo/docs/descriptions/demo/size.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="default"><span class="ant-radio-inner"></span></span><span>default</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="middle"><span class="ant-radio-inner"></span></span><span>middle</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="small"><span class="ant-radio-inner"></span></span><span>small</span></label></div> <br> <br>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="default"><span class="ant-radio-inner"></span></span><span>
default
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="middle"><span class="ant-radio-inner"></span></span><span>
middle
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="small"><span class="ant-radio-inner"></span></span><span>
small
</span></label></div> <br> <br>
<div class="ant-descriptions ant-descriptions-bordered">
<div class="ant-descriptions-title">Custom Size</div>
<div class="ant-descriptions-view">
@ -134,19 +174,31 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/size.md correctly 1`] = `
<tbody>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Product</th>
<td colspan="1" class="ant-descriptions-item-content">Cloud Database</td>
<td colspan="1" class="ant-descriptions-item-content">
Cloud Database
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Billing</th>
<td colspan="1" class="ant-descriptions-item-content">Prepaid</td>
<td colspan="1" class="ant-descriptions-item-content">
Prepaid
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Time</th>
<td colspan="1" class="ant-descriptions-item-content">18:00:00</td>
<td colspan="1" class="ant-descriptions-item-content">
18:00:00
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Amount</th>
<td colspan="1" class="ant-descriptions-item-content">$80.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$80.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Discount</th>
<td colspan="1" class="ant-descriptions-item-content">$20.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$20.00
</td>
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Official</th>
<td colspan="1" class="ant-descriptions-item-content">$60.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$60.00
</td>
</tr>
<tr class="ant-descriptions-row">
<th class="ant-descriptions-item-label ant-descriptions-item-colon">Config Info</th>
@ -173,14 +225,26 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/size.md correctly 1`] = `
<table>
<tbody>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Product</span><span class="ant-descriptions-item-content">Cloud Database</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Billing</span><span class="ant-descriptions-item-content">Prepaid</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Time</span><span class="ant-descriptions-item-content">18:00:00</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Product</span><span class="ant-descriptions-item-content">
Cloud Database
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Billing</span><span class="ant-descriptions-item-content">
Prepaid
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Time</span><span class="ant-descriptions-item-content">
18:00:00
</span></td>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Amount</span><span class="ant-descriptions-item-content">$80.00</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Discount</span><span class="ant-descriptions-item-content">$20.00</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Official</span><span class="ant-descriptions-item-content">$60.00</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Amount</span><span class="ant-descriptions-item-content">
$80.00
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Discount</span><span class="ant-descriptions-item-content">
$20.00
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Official</span><span class="ant-descriptions-item-content">
$60.00
</span></td>
</tr>
</tbody>
</table>
@ -201,9 +265,15 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/vertical.md correctly 1`] =
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Live</span></td>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">Zhou Maomao</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">1810000000</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">Hangzhou, Zhejiang</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">
Zhou Maomao
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">
1810000000
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">
Hangzhou, Zhejiang
</span></td>
</tr>
<tr class="ant-descriptions-row">
<td colspan="2" class="ant-descriptions-item"><span class="ant-descriptions-item-label ant-descriptions-item-colon">Address</span></td>
@ -213,7 +283,9 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/vertical.md correctly 1`] =
<td colspan="2" class="ant-descriptions-item"><span class="ant-descriptions-item-content">
No. 18, Wantang Road, Xihu District, Hangzhou, Zhejiang, China
</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">empty</span></td>
<td colspan="1" class="ant-descriptions-item"><span class="ant-descriptions-item-content">
empty
</span></td>
</tr>
</tbody>
</table>
@ -233,16 +305,24 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/vertical-border.md correctl
<th colspan="1" class="ant-descriptions-item-label ant-descriptions-item-colon">Automatic Renewal</th>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item-content">Cloud Database</td>
<td colspan="1" class="ant-descriptions-item-content">Prepaid</td>
<td colspan="1" class="ant-descriptions-item-content">YES</td>
<td colspan="1" class="ant-descriptions-item-content">
Cloud Database
</td>
<td colspan="1" class="ant-descriptions-item-content">
Prepaid
</td>
<td colspan="1" class="ant-descriptions-item-content">
YES
</td>
</tr>
<tr class="ant-descriptions-row">
<th colspan="1" class="ant-descriptions-item-label ant-descriptions-item-colon">Order time</th>
<th colspan="3" class="ant-descriptions-item-label ant-descriptions-item-colon">Usage Time</th>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item-content">2018-04-24 18:00:00</td>
<td colspan="1" class="ant-descriptions-item-content">
2018-04-24 18:00:00
</td>
<td colspan="3" class="ant-descriptions-item-content">
2019-04-24 18:00:00
</td>
@ -259,9 +339,15 @@ exports[`renders ./antdv-demo/docs/descriptions/demo/vertical-border.md correctl
<th colspan="1" class="ant-descriptions-item-label ant-descriptions-item-colon">Official Receipts</th>
</tr>
<tr class="ant-descriptions-row">
<td colspan="1" class="ant-descriptions-item-content">$80.00</td>
<td colspan="1" class="ant-descriptions-item-content">$20.00</td>
<td colspan="1" class="ant-descriptions-item-content">$60.00</td>
<td colspan="1" class="ant-descriptions-item-content">
$80.00
</td>
<td colspan="1" class="ant-descriptions-item-content">
$20.00
</td>
<td colspan="1" class="ant-descriptions-item-content">
$60.00
</td>
</tr>
<tr class="ant-descriptions-row">
<th colspan="5" class="ant-descriptions-item-label ant-descriptions-item-colon">Config Info</th>

View File

@ -52,12 +52,16 @@ exports[`renders ./antdv-demo/docs/divider/demo/with-text.md correctly 1`] = `
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed nonne merninisti licere mihi ista
probare, quae sunt a te dicta? Refert tamen, quo modo.
</p>
<div role="separator" class="ant-divider ant-divider-horizontal ant-divider-with-text-left"><span class="ant-divider-inner-text">Left Text</span></div>
<div role="separator" class="ant-divider ant-divider-horizontal ant-divider-with-text-left"><span class="ant-divider-inner-text">
Left Text
</span></div>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed nonne merninisti licere mihi ista
probare, quae sunt a te dicta? Refert tamen, quo modo.
</p>
<div role="separator" class="ant-divider ant-divider-horizontal ant-divider-with-text-right"><span class="ant-divider-inner-text">Right Text</span></div>
<div role="separator" class="ant-divider ant-divider-horizontal ant-divider-with-text-right"><span class="ant-divider-inner-text">
Right Text
</span></div>
<p>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed nonne merninisti licere mihi ista
probare, quae sunt a te dicta? Refert tamen, quo modo.

View File

@ -1,7 +1,7 @@
// Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`Drawer class is test_drawer 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right test_drawer">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">
@ -17,7 +17,7 @@ exports[`Drawer class is test_drawer 1`] = `
`;
exports[`Drawer closable is false 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">
@ -32,7 +32,7 @@ exports[`Drawer closable is false 1`] = `
`;
exports[`Drawer destroyOnClose is true 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">
@ -47,7 +47,7 @@ exports[`Drawer destroyOnClose is true 1`] = `
`;
exports[`Drawer have a title 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">
@ -65,7 +65,7 @@ exports[`Drawer have a title 1`] = `
`;
exports[`Drawer render correctly 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 400px;">
@ -81,7 +81,7 @@ exports[`Drawer render correctly 1`] = `
`;
exports[`Drawer render top drawer 1`] = `
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-top">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateY(-100%); height: 400px;">

View File

@ -2,7 +2,7 @@
exports[`Drawer render correctly 1`] = `
<div><button type="button" class="ant-btn" ant-click-animating-without-extra-node="false"><span>open</span></button>
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">

View File

@ -20,7 +20,15 @@ exports[`renders ./antdv-demo/docs/drawer/demo/multi-level-drawer.md correctly 1
exports[`renders ./antdv-demo/docs/drawer/demo/placement.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-right: 8px;"><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="top"><span class="ant-radio-inner"></span></span><span>top</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="right"><span class="ant-radio-inner"></span></span><span>right</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="bottom"><span class="ant-radio-inner"></span></span><span>bottom</span></label><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="left"><span class="ant-radio-inner"></span></span><span>left</span></label></div> <button type="button" class="ant-btn ant-btn-primary"><span>Open</span></button>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-right: 8px;"><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="top"><span class="ant-radio-inner"></span></span><span>
top
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="right"><span class="ant-radio-inner"></span></span><span>
right
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="bottom"><span class="ant-radio-inner"></span></span><span>
bottom
</span></label><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="left"><span class="ant-radio-inner"></span></span><span>
left
</span></label></div> <button type="button" class="ant-btn ant-btn-primary"><span>Open</span></button>
<!---->
</div>
`;
@ -29,7 +37,7 @@ exports[`renders ./antdv-demo/docs/drawer/demo/render-in-current.md correctly 1`
<div style="height: 200px; overflow: hidden; position: relative; border: 1px solid #ebedf0; border-radius: 2px; padding: 48px; text-align: center; background: rgb(250, 250, 250);">
Render in this
<div style="margin-top: 16px;"><button type="button" class="ant-btn ant-btn-primary"><span>Open</span></button></div>
<div tabindex="-1" class="">
<div class="">
<div tabindex="-1" class="ant-drawer ant-drawer-right" style="position: absolute;">
<div class="ant-drawer-mask"></div>
<div class="ant-drawer-content-wrapper" style="transform: translateX(100%); width: 256px;">

View File

@ -77,7 +77,6 @@ const Drawer = {
// unmount drawer in child, clear push.
if (this.parentDrawer) {
this.parentDrawer.pull();
this.parentDrawer = null;
}
},
methods: {

View File

@ -107,8 +107,8 @@
> a {
display: block;
margin: -5px -@control-padding-horizontal;
padding: 5px @control-padding-horizontal;
margin: -@dropdown-vertical-padding -@control-padding-horizontal;
padding: @dropdown-vertical-padding @control-padding-horizontal;
color: @text-color;
transition: all 0.3s;
}

View File

@ -380,7 +380,11 @@ exports[`renders ./antdv-demo/docs/form/demo/register.vue correctly 1`] = `
<div class="ant-row ant-form-item">
<div class="ant-col ant-col-xs-24 ant-col-sm-8 ant-form-item-label"><label for="register_nickname" title="" class="ant-form-item-required"><span>
Nickname&nbsp;
<<<<<<< HEAD
<span role="img" aria-label="question-circle" class="anticon anticon-question-circle"><svg viewBox="64 64 896 896" focusable="false" data-icon="question-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0130.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1080 0 40 40 0 10-80 0z"></path></svg></span></span></label></div>
=======
<i aria-label="icon: question-circle-o" class="anticon anticon-question-circle-o"><svg viewBox="64 64 896 896" data-icon="question-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M623.6 316.7C593.6 290.4 554 276 512 276s-81.6 14.5-111.6 40.7C369.2 344 352 380.7 352 420v7.6c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V420c0-44.1 43.1-80 96-80s96 35.9 96 80c0 31.1-22 59.6-56.1 72.7-21.2 8.1-39.2 22.3-52.1 40.9-13.1 19-19.9 41.8-19.9 64.9V620c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8v-22.7a48.3 48.3 0 0 1 30.9-44.8c59-22.7 97.1-74.7 97.1-132.5.1-39.3-17.1-76-48.3-103.3zM472 732a40 40 0 1 0 80 0 40 40 0 1 0-80 0z"></path></svg></i></span></label></div>
>>>>>>> origin/master
<div class="ant-col ant-col-xs-24 ant-col-sm-16 ant-form-item-control-wrapper">
<div class="ant-form-item-control"><span class="ant-form-item-children"><input type="text" data-__meta="[object Object]" data-__field="[object Object]" id="register_nickname" class="ant-input"></span>
<!---->

View File

@ -3,19 +3,37 @@
exports[`renders ./antdv-demo/docs/grid/demo/basic.md correctly 1`] = `
<div>
<div class="ant-row">
<div class="ant-col ant-col-12">col-12</div>
<div class="ant-col ant-col-12">col-12</div>
<div class="ant-col ant-col-12">
col-12
</div>
<div class="ant-col ant-col-12">
col-12
</div>
</div>
<div class="ant-row">
<div class="ant-col ant-col-8">col-8</div>
<div class="ant-col ant-col-8">col-8</div>
<div class="ant-col ant-col-8">col-8</div>
<div class="ant-col ant-col-8">
col-8
</div>
<div class="ant-col ant-col-8">
col-8
</div>
<div class="ant-col ant-col-8">
col-8
</div>
</div>
<div class="ant-row">
<div class="ant-col ant-col-6">col-6</div>
<div class="ant-col ant-col-6">col-6</div>
<div class="ant-col ant-col-6">col-6</div>
<div class="ant-col ant-col-6">col-6</div>
<div class="ant-col ant-col-6">
col-6
</div>
<div class="ant-col ant-col-6">
col-6
</div>
<div class="ant-col ant-col-6">
col-6
</div>
<div class="ant-col ant-col-6">
col-6
</div>
</div>
</div>
`;
@ -24,38 +42,78 @@ exports[`renders ./antdv-demo/docs/grid/demo/flex.md correctly 1`] = `
<div>
<p>sub-element align left</p>
<div class="ant-row-flex ant-row-flex-start">
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
</div>
<p>sub-element align center</p>
<div class="ant-row-flex ant-row-flex-center">
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
</div>
<p>sub-element align right</p>
<div class="ant-row-flex ant-row-flex-end">
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
</div>
<p>sub-element monospaced arrangement</p>
<div class="ant-row-flex ant-row-flex-space-between">
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
</div>
<p>sub-element align full</p>
<div class="ant-row-flex ant-row-flex-space-around">
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">col-4</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
<div class="ant-col ant-col-4">
col-4
</div>
</div>
</div>
`;
@ -65,46 +123,70 @@ exports[`renders ./antdv-demo/docs/grid/demo/flex-align.md correctly 1`] = `
<p>Align Top</p>
<div class="ant-row-flex ant-row-flex-center ant-row-flex-top">
<div class="ant-col ant-col-4">
<p class="height-100">col-4</p>
<p class="height-100">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-50">col-4</p>
<p class="height-50">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-120">col-4</p>
<p class="height-120">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-80">col-4</p>
<p class="height-80">
col-4
</p>
</div>
</div>
<p>Align Center</p>
<div class="ant-row-flex ant-row-flex-space-around ant-row-flex-middle">
<div class="ant-col ant-col-4">
<p class="height-100">col-4</p>
<p class="height-100">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-50">col-4</p>
<p class="height-50">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-120">col-4</p>
<p class="height-120">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-80">col-4</p>
<p class="height-80">
col-4
</p>
</div>
</div>
<p>Align Bottom</p>
<div class="ant-row-flex ant-row-flex-space-between ant-row-flex-bottom">
<div class="ant-col ant-col-4">
<p class="height-100">col-4</p>
<p class="height-100">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-50">col-4</p>
<p class="height-50">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-120">col-4</p>
<p class="height-120">
col-4
</p>
</div>
<div class="ant-col ant-col-4">
<p class="height-80">col-4</p>
<p class="height-80">
col-4
</p>
</div>
</div>
</div>
@ -113,10 +195,18 @@ exports[`renders ./antdv-demo/docs/grid/demo/flex-align.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/grid/demo/flex-order.md correctly 1`] = `
<div>
<div class="ant-row-flex">
<div class="ant-col ant-col-6 ant-col-order-4">1 col-order-4</div>
<div class="ant-col ant-col-6 ant-col-order-3">2 col-order-3</div>
<div class="ant-col ant-col-6 ant-col-order-2">3 col-order-2</div>
<div class="ant-col ant-col-6 ant-col-order-1">4 col-order-1</div>
<div class="ant-col ant-col-6 ant-col-order-4">
1 col-order-4
</div>
<div class="ant-col ant-col-6 ant-col-order-3">
2 col-order-3
</div>
<div class="ant-col ant-col-6 ant-col-order-2">
3 col-order-2
</div>
<div class="ant-col ant-col-6 ant-col-order-1">
4 col-order-1
</div>
</div>
</div>
`;
@ -125,16 +215,24 @@ exports[`renders ./antdv-demo/docs/grid/demo/gutter.md correctly 1`] = `
<div class="gutter-example">
<div class="ant-row" style="margin-left: -8px; margin-right: -8px;">
<div class="gutter-row ant-col ant-col-6" style="padding-left: 8px; padding-right: 8px;">
<div class="gutter-box">col-6</div>
<div class="gutter-box">
col-6
</div>
</div>
<div class="gutter-row ant-col ant-col-6" style="padding-left: 8px; padding-right: 8px;">
<div class="gutter-box">col-6</div>
<div class="gutter-box">
col-6
</div>
</div>
<div class="gutter-row ant-col ant-col-6" style="padding-left: 8px; padding-right: 8px;">
<div class="gutter-box">col-6</div>
<div class="gutter-box">
col-6
</div>
</div>
<div class="gutter-row ant-col ant-col-6" style="padding-left: 8px; padding-right: 8px;">
<div class="gutter-box">col-6</div>
<div class="gutter-box">
col-6
</div>
</div>
</div>
</div>
@ -143,15 +241,25 @@ exports[`renders ./antdv-demo/docs/grid/demo/gutter.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/grid/demo/offset.md correctly 1`] = `
<div>
<div class="ant-row">
<div class="ant-col ant-col-8">col-8</div>
<div class="ant-col ant-col-8 ant-col-offset-8">col-8</div>
<div class="ant-col ant-col-8">
col-8
</div>
<div class="ant-col ant-col-8 ant-col-offset-8">
col-8
</div>
</div>
<div class="ant-row">
<div class="ant-col ant-col-6 ant-col-offset-6">col-6 col-offset-6</div>
<div class="ant-col ant-col-6 ant-col-offset-6">col-6 col-offset-6</div>
<div class="ant-col ant-col-6 ant-col-offset-6">
col-6 col-offset-6
</div>
<div class="ant-col ant-col-6 ant-col-offset-6">
col-6 col-offset-6
</div>
</div>
<div class="ant-row">
<div class="ant-col ant-col-12 ant-col-offset-6">col-12 col-offset-6</div>
<div class="ant-col ant-col-12 ant-col-offset-6">
col-12 col-offset-6
</div>
</div>
</div>
`;
@ -230,25 +338,41 @@ exports[`renders ./antdv-demo/docs/grid/demo/playfround.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/grid/demo/responsive.md correctly 1`] = `
<div class="ant-row">
<div class="ant-col ant-col-xs-2 ant-col-sm-4 ant-col-md-6 ant-col-lg-8 ant-col-xl-10">Col</div>
<div class="ant-col ant-col-xs-20 ant-col-sm-16 ant-col-md-12 ant-col-lg-8 ant-col-xl-4">Col</div>
<div class="ant-col ant-col-xs-2 ant-col-sm-4 ant-col-md-6 ant-col-lg-8 ant-col-xl-10">Col</div>
<div class="ant-col ant-col-xs-2 ant-col-sm-4 ant-col-md-6 ant-col-lg-8 ant-col-xl-10">
Col
</div>
<div class="ant-col ant-col-xs-20 ant-col-sm-16 ant-col-md-12 ant-col-lg-8 ant-col-xl-4">
Col
</div>
<div class="ant-col ant-col-xs-2 ant-col-sm-4 ant-col-md-6 ant-col-lg-8 ant-col-xl-10">
Col
</div>
</div>
`;
exports[`renders ./antdv-demo/docs/grid/demo/responsive-more.md correctly 1`] = `
<div class="ant-row">
<div class="ant-col ant-col-xs-5 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">Col</div>
<div class="ant-col ant-col-xs-11 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">Col</div>
<div class="ant-col ant-col-xs-5 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">Col</div>
<div class="ant-col ant-col-xs-5 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">
Col
</div>
<div class="ant-col ant-col-xs-11 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">
Col
</div>
<div class="ant-col ant-col-xs-5 ant-col-xs-offset-1 ant-col-lg-6 ant-col-lg-offset-2">
Col
</div>
</div>
`;
exports[`renders ./antdv-demo/docs/grid/demo/sort.md correctly 1`] = `
<div>
<div class="ant-row">
<div class="ant-col ant-col-18 ant-col-push-6">col-18 col-push-6</div>
<div class="ant-col ant-col-6 ant-col-pull-18">col-6 col-pull-18</div>
<div class="ant-col ant-col-18 ant-col-push-6">
col-18 col-push-6
</div>
<div class="ant-col ant-col-6 ant-col-pull-18">
col-6 col-pull-18
</div>
</div>
</div>
`;

View File

@ -66,7 +66,7 @@ export default {
const props = this.$props;
const value = typeof props.value === 'undefined' ? props.defaultValue : props.value;
return {
stateValue: value,
stateValue: typeof value === 'undefined' ? '' : value,
};
},
watch: {
@ -109,7 +109,9 @@ export default {
callback && callback();
});
} else {
this.$forceUpdate();
//
// https://github.com/vueComponent/ant-design-vue/issues/2207modal new
// this.$forceUpdate();
}
},
onChange(e) {
@ -172,7 +174,8 @@ export default {
},
handleChange(e) {
const { value, composing } = e.target;
if (composing && this.lazy) return;
// https://github.com/vueComponent/ant-design-vue/issues/2203
if (((e.isComposing || composing) && this.lazy) || this.stateValue === value) return;
this.setValue(value, this.clearPasswordValueAttribute);
resolveOnChange(this.$refs.input, e, this.onChange);
},

View File

@ -28,7 +28,7 @@ export default {
data() {
const value = typeof this.value === 'undefined' ? this.defaultValue : this.value;
return {
stateValue: value,
stateValue: typeof value === 'undefined' ? '' : value,
};
},
computed: {},
@ -52,7 +52,9 @@ export default {
callback && callback();
});
} else {
this.$forceUpdate();
//
// https://github.com/vueComponent/ant-design-vue/issues/2207modal new
// this.$forceUpdate();
}
},
handleKeyDown(e) {
@ -68,7 +70,7 @@ export default {
},
handleChange(e) {
const { value, composing } = e.target;
if (composing || this.stateValue === value) return;
if (((e.isComposing || composing) && this.lazy) || this.stateValue === value) return;
this.setValue(e.target.value, () => {
this.$refs.resizableTextArea.resizeTextarea();

View File

@ -3,8 +3,17 @@
exports[`renders ./antdv-demo/docs/input/demo/addon.md correctly 1`] = `
<div>
<div style="margin-bottom: 16px;"><span class="ant-input-group-wrapper"><span class="ant-input-wrapper ant-input-group"><span class="ant-input-group-addon">Http://</span><input type="text" class="ant-input"><span class="ant-input-group-addon">.com</span></span></span></div>
<<<<<<< HEAD
<div style="margin-bottom: 16px;"><span class="ant-input-group-wrapper"><span class="ant-input-wrapper ant-input-group"><span class="ant-input-group-addon"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 90px;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Http://" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Http://</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
</div></span><input type="text" class="ant-input"><span class="ant-input-group-addon"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 80px;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title=".com" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">.com</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
=======
<div style="margin-bottom: 16px;"><span class="ant-input-group-wrapper"><span class="ant-input-wrapper ant-input-group"><span class="ant-input-group-addon"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 90px;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Http://" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Http://
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
</div></span><input type="text" class="ant-input"><span class="ant-input-group-addon"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 80px;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title=".com" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
.com
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
>>>>>>> origin/master
</div></span></span></span></div>
<div style="margin-bottom: 16px;"><span class="ant-input-group-wrapper"><span class="ant-input-wrapper ant-input-group"><input type="text" class="ant-input"><span class="ant-input-group-addon"><span role="img" aria-label="setting" class="anticon anticon-setting"><svg viewBox="64 64 896 896" focusable="false" data-icon="setting" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M924.8 625.7l-65.5-56c3.1-19 4.7-38.4 4.7-57.8s-1.6-38.8-4.7-57.8l65.5-56a32.03 32.03 0 009.3-35.2l-.9-2.6a443.74 443.74 0 00-79.7-137.9l-1.8-2.1a32.12 32.12 0 00-35.1-9.5l-81.3 28.9c-30-24.6-63.5-44-99.7-57.6l-15.7-85a32.05 32.05 0 00-25.8-25.7l-2.7-.5c-52.1-9.4-106.9-9.4-159 0l-2.7.5a32.05 32.05 0 00-25.8 25.7l-15.8 85.4a351.86 351.86 0 00-99 57.4l-81.9-29.1a32 32 0 00-35.1 9.5l-1.8 2.1a446.02 446.02 0 00-79.7 137.9l-.9 2.6c-4.5 12.5-.8 26.5 9.3 35.2l66.3 56.6c-3.1 18.8-4.6 38-4.6 57.1 0 19.2 1.5 38.4 4.6 57.1L99 625.5a32.03 32.03 0 00-9.3 35.2l.9 2.6c18.1 50.4 44.9 96.9 79.7 137.9l1.8 2.1a32.12 32.12 0 0035.1 9.5l81.9-29.1c29.8 24.5 63.1 43.9 99 57.4l15.8 85.4a32.05 32.05 0 0025.8 25.7l2.7.5a449.4 449.4 0 00159 0l2.7-.5a32.05 32.05 0 0025.8-25.7l15.7-85a350 350 0 0099.7-57.6l81.3 28.9a32 32 0 0035.1-9.5l1.8-2.1c34.8-41.1 61.6-87.5 79.7-137.9l.9-2.6c4.5-12.3.8-26.3-9.3-35zM788.3 465.9c2.5 15.1 3.8 30.6 3.8 46.1s-1.3 31-3.8 46.1l-6.6 40.1 74.7 63.9a370.03 370.03 0 01-42.6 73.6L721 702.8l-31.4 25.8c-23.9 19.6-50.5 35-79.3 45.8l-38.1 14.3-17.9 97a377.5 377.5 0 01-85 0l-17.9-97.2-37.8-14.5c-28.5-10.8-55-26.2-78.7-45.7l-31.4-25.9-93.4 33.2c-17-22.9-31.2-47.6-42.6-73.6l75.5-64.5-6.5-40c-2.4-14.9-3.7-30.3-3.7-45.5 0-15.3 1.2-30.6 3.7-45.5l6.5-40-75.5-64.5c11.3-26.1 25.6-50.7 42.6-73.6l93.4 33.2 31.4-25.9c23.7-19.5 50.2-34.9 78.7-45.7l37.9-14.3 17.9-97.2c28.1-3.2 56.8-3.2 85 0l17.9 97 38.1 14.3c28.7 10.8 55.4 26.2 79.3 45.8l31.4 25.8 92.8-32.9c17 22.9 31.2 47.6 42.6 73.6L781.8 426l6.5 39.9zM512 326c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm79.2 255.2A111.6 111.6 0 01512 614c-29.9 0-58-11.7-79.2-32.8A111.6 111.6 0 01400 502c0-29.9 11.7-58 32.8-79.2C454 401.6 482.1 390 512 390c29.9 0 58 11.6 79.2 32.8A111.6 111.6 0 01624 502c0 29.9-11.7 58-32.8 79.2z"></path></svg></span></span></span></span></div>
</div>
@ -22,18 +31,44 @@ exports[`renders ./antdv-demo/docs/input/demo/autosize-textarea.md correctly 1`]
exports[`renders ./antdv-demo/docs/input/demo/basic.md correctly 1`] = `<input placeholder="Basic usage" type="text" class="ant-input">`;
exports[`renders ./antdv-demo/docs/input/demo/group.md correctly 1`] = `
<<<<<<< HEAD
<div><span class="ant-input-group ant-input-group-lg"><div class="ant-row" style="margin-left: -4px; margin-right: -4px;"><div class="ant-col ant-col-5" style="padding-left: 4px; padding-right: 4px;"><input type="text" class="ant-input"></div> <div class="ant-col ant-col-8" style="padding-left: 4px; padding-right: 4px;"><input type="text" class="ant-input"></div></div></span> <br> <span class="ant-input-group ant-input-group-compact"><input type="text" class="ant-input" style="width: 20%;"><input type="text" class="ant-input" style="width: 30%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Zhejiang" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Zhejiang</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
</div><input type="text" class="ant-input" style="width: 50%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Option1" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Option1</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
</div><input type="text" class="ant-input" style="width: 50%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><input type="text" class="ant-input" style="width: 50%;"><span class="ant-calendar-picker" style="width: 50%;"><div class=""><input readonly="true" placeholder="Select date" class="ant-calendar-picker-input ant-input"><span role="img" aria-label="calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></span></div></span></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Option1-1" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Option1-1</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
=======
<div><span class="ant-input-group ant-input-group-lg"><div class="ant-row" style="margin-left: -4px; margin-right: -4px;"><div class="ant-col ant-col-5" style="padding-left: 4px; padding-right: 4px;"><input type="text" class="ant-input"></div> <div class="ant-col ant-col-8" style="padding-left: 4px; padding-right: 4px;"><input type="text" class="ant-input"></div></div></span> <br> <span class="ant-input-group ant-input-group-compact"><input type="text" class="ant-input" style="width: 20%;"><input type="text" class="ant-input" style="width: 30%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Zhejiang" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Zhejiang
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
</div><input type="text" class="ant-input" style="width: 50%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Option1" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Option1
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
</div><input type="text" class="ant-input" style="width: 50%;"></span> <br> <span class="ant-input-group ant-input-group-compact"><input type="text" class="ant-input" style="width: 50%;"><span class="ant-calendar-picker" style="width: 50%;"><div class=""><input readonly="true" placeholder="Select date" class="ant-calendar-picker-input ant-input"><i aria-label="icon: calendar" class="anticon anticon-calendar ant-calendar-picker-icon"><svg viewBox="64 64 896 896" data-icon="calendar" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M880 184H712v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H384v-64c0-4.4-3.6-8-8-8h-56c-4.4 0-8 3.6-8 8v64H144c-17.7 0-32 14.3-32 32v664c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V216c0-17.7-14.3-32-32-32zm-40 656H184V460h656v380zM184 392V256h128v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h256v48c0 4.4 3.6 8 8 8h56c4.4 0 8-3.6 8-8v-48h128v136H184z"></path></svg></i></div></span></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Option1-1" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Option1-1
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
>>>>>>> origin/master
</div>
<div tabindex="0" class="ant-select ant-select-enabled">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Option2-2" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Option2-2</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
</div>
</div></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Between" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Between</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
</div><input placeholder="Minimum" type="text" class="ant-input" style="width: 100px; text-align: center;"><input placeholder="~" type="text" disabled="disabled" class="ant-input ant-input-disabled" style="width: 30px; pointer-events: none; background-color: rgb(255, 255, 255); border-left: 0;"><input placeholder="Maximum" type="text" class="ant-input" style="width: 100px; text-align: center; border-left: 0;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Sign Up" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Sign Up</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
=======
<div title="Option2-2" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Option2-2
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
</div>
</div></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Between" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Between
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
</div><input placeholder="Minimum" type="text" class="ant-input" style="width: 100px; text-align: center;"><input placeholder="~" type="text" disabled="disabled" class="ant-input ant-input-disabled" style="width: 30px; pointer-events: none; background-color: rgb(255, 255, 255); border-left: 0;"><input placeholder="Maximum" type="text" class="ant-input" style="width: 100px; text-align: center; border-left: 0;"></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Sign Up" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Sign Up
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
>>>>>>> origin/master
</div>
<div tabindex="0" class="ant-select ant-select-combobox ant-select-enabled ant-select-show-search ant-select-auto-complete" style="width: 200px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
@ -45,13 +80,26 @@ exports[`renders ./antdv-demo/docs/input/demo/group.md correctly 1`] = `
</ul>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
</div>
<<<<<<< HEAD
</div></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 30%;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Home" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Home</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></div>
</div><span tabindex="0" class="ant-cascader-picker" style="width: 70%;"><input placeholder="Select Address" type="text" readonly="true" class="ant-input ant-cascader-input "><span class="ant-cascader-picker-label"></span><span role="img" aria-label="down" class="anticon anticon-down ant-cascader-picker-arrow"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span></span></div>
=======
</div></span> <br> <span class="ant-input-group ant-input-group-compact"><div tabindex="0" class="ant-select ant-select-enabled" style="width: 30%;"><div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single"><div class="ant-select-selection__rendered"><div title="Home" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Home
</div></div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span></div>
</div><span tabindex="0" class="ant-cascader-picker" style="width: 70%;"><input placeholder="Select Address" type="text" readonly="true" class="ant-input ant-cascader-input "><span class="ant-cascader-picker-label"></span><i aria-label="icon: down" class="anticon anticon-down ant-cascader-picker-arrow"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path>
</svg></i></span></span></div>
>>>>>>> origin/master
`;
exports[`renders ./antdv-demo/docs/input/demo/password-input.md correctly 1`] = `<span class="ant-input-affix-wrapper ant-input-password"><input placeholder="input password" type="password" class="ant-input"><span class="ant-input-suffix"><span role="img" aria-label="eye-invisible" tabindex="-1" class="anticon anticon-eye-invisible ant-input-password-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="eye-invisible" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z"></path><path d="M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z"></path></svg></span></span></span>`;
<<<<<<< HEAD
exports[`renders ./antdv-demo/docs/input/demo/presuffix.md correctly 1`] = `<div class="components-input-demo-presuffix"><span class="ant-input-affix-wrapper"><span class="ant-input-prefix"><span role="img" aria-label="user" type="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span></span><input placeholder="Basic usage" type="text" class="ant-input"><span class="ant-input-suffix"><span role="img" aria-label="info-circle" class="anticon anticon-info-circle" style="color: rgba(0, 0, 0, 0.45);"><svg viewBox="64 64 896 896" focusable="false" data-icon="info-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z"></path></svg></span></span></span> <br> <br> <span class="ant-input-affix-wrapper"><span class="ant-input-prefix">¥</span><input type="text" class="ant-input"><span class="ant-input-suffix">RMB</span></span></div>`;
=======
exports[`renders ./antdv-demo/docs/input/demo/presuffix.md correctly 1`] = `<div class="components-input-demo-presuffix"><span class="ant-input-affix-wrapper"><span class="ant-input-prefix"><i aria-label="icon: user" class="anticon anticon-user"><svg viewBox="64 64 896 896" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M858.5 763.6a374 374 0 0 0-80.6-119.5 375.63 375.63 0 0 0-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 0 0-80.6 119.5A371.7 371.7 0 0 0 136 901.8a8 8 0 0 0 8 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 0 0 8-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></i></span><input placeholder="Basic usage" type="text" class="ant-input"><span class="ant-input-suffix"><i aria-label="icon: info-circle" class="anticon anticon-info-circle" style="color: rgba(0, 0, 0, 0.45);"><svg viewBox="64 64 896 896" data-icon="info-circle" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z"></path><path d="M464 336a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z"></path></svg></i></span></span> <br> <br> <span class="ant-input-affix-wrapper"><span class="ant-input-prefix">¥</span><input type="text" class="ant-input"><span class="ant-input-suffix">RMB</span></span></div>`;
>>>>>>> origin/master
exports[`renders ./antdv-demo/docs/input/demo/search-input.md correctly 1`] = `<div><span class="ant-input-affix-wrapper ant-input-search" style="width: 200px;"><input placeholder="input search text" type="text" class="ant-input"><span class="ant-input-suffix"><span role="img" aria-label="search" tabindex="-1" class="anticon anticon-search ant-input-search-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="search" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg></span></span></span> <br><br> <span class="ant-input-group-wrapper ant-input-search ant-input-search-enter-button"><span class="ant-input-wrapper ant-input-group"><input placeholder="input search text" type="text" class="ant-input"><span class="ant-input-group-addon"><button type="button" class="ant-btn ant-btn-primary ant-input-search-button"><span role="img" aria-label="search" class="anticon anticon-search"><svg viewBox="64 64 896 896" focusable="false" data-icon="search" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M909.6 854.5L649.9 594.8C690.2 542.7 712 479 712 412c0-80.2-31.3-155.4-87.9-212.1-56.6-56.7-132-87.9-212.1-87.9s-155.5 31.3-212.1 87.9C143.2 256.5 112 331.8 112 412c0 80.1 31.3 155.5 87.9 212.1C256.5 680.8 331.8 712 412 712c67 0 130.6-21.8 182.7-62l259.7 259.6a8.2 8.2 0 0011.6 0l43.6-43.5a8.2 8.2 0 000-11.6zM570.4 570.4C528 612.7 471.8 636 412 636s-116-23.3-158.4-65.6C211.3 528 188 471.8 188 412s23.3-116.1 65.6-158.4C296 211.3 352.2 188 412 188s116.1 23.2 158.4 65.6S636 352.2 636 412s-23.3 116.1-65.6 158.4z"></path></svg></span></button></span></span></span> <br><br> <span class="ant-input-group-wrapper ant-input-group-wrapper-lg ant-input-search ant-input-search-enter-button ant-input-search-large"><span class="ant-input-wrapper ant-input-group"><input placeholder="input search text" type="text" class="ant-input ant-input-lg"><span class="ant-input-group-addon"><button type="button" class="ant-btn ant-btn-primary ant-btn-lg ant-input-search-button"><span>Search</span></button></span></span></span> <br><br> <span class="ant-input-group-wrapper ant-input-group-wrapper-lg ant-input-search ant-input-search-enter-button ant-input-search-large"><span class="ant-input-wrapper ant-input-group"><input placeholder="input search text" type="text" class="ant-input ant-input-lg"><span class="ant-input-group-addon"><button type="button" class="ant-btn ant-btn-lg ant-input-search-button"><span>Custom</span></button></span></span></span></div>`;

View File

@ -327,6 +327,10 @@
}
}
& > .@{ant-prefix}-select-focused {
z-index: 1;
}
& > *:first-child,
& > .@{ant-prefix}-select:first-child > .@{ant-prefix}-select-selection,
& > .@{ant-prefix}-calendar-picker:first-child .@{ant-prefix}-input,

View File

@ -69,15 +69,21 @@ exports[`renders ./antdv-demo/docs/layout/demo/fixed.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 1</li>
<li role="menuitem" class="ant-menu-item">
nav 1
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">nav 2</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">
nav 2
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 3</li>
<li role="menuitem" class="ant-menu-item">
nav 3
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="visibility: hidden; position: absolute; display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
@ -85,7 +91,9 @@ exports[`renders ./antdv-demo/docs/layout/demo/fixed.md correctly 1`] = `
</header>
<main class="ant-layout-content" style="padding: 0px 50px; margin-top: 64px;">
<div class="ant-breadcrumb" style="margin: 16px 0px;"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator">/</span></span><span class=""><span class="ant-breadcrumb-link">List</span><span class="ant-breadcrumb-separator">/</span></span><span class=""><span class="ant-breadcrumb-link">App</span><span class="ant-breadcrumb-separator">/</span></span></div>
<div style="background: rgb(255, 255, 255); padding: 24px; min-height: 380px;">Content</div>
<div style="background: rgb(255, 255, 255); padding: 24px; min-height: 380px;">
Content
</div>
</main>
<footer class="ant-layout-footer" style="text-align: center;">
Ant Design ©2018 Created by Ant UED
@ -207,15 +215,21 @@ exports[`renders ./antdv-demo/docs/layout/demo/top.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 1</li>
<li role="menuitem" class="ant-menu-item">
nav 1
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">nav 2</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">
nav 2
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 3</li>
<li role="menuitem" class="ant-menu-item">
nav 3
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="visibility: hidden; position: absolute; display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
@ -223,7 +237,9 @@ exports[`renders ./antdv-demo/docs/layout/demo/top.md correctly 1`] = `
</header>
<main class="ant-layout-content" style="padding: 0px 50px;">
<div class="ant-breadcrumb" style="margin: 16px 0px;"><span class=""><span class="ant-breadcrumb-link">Home</span><span class="ant-breadcrumb-separator">/</span></span><span class=""><span class="ant-breadcrumb-link">List</span><span class="ant-breadcrumb-separator">/</span></span><span class=""><span class="ant-breadcrumb-link">App</span><span class="ant-breadcrumb-separator">/</span></span></div>
<div style="background: rgb(255, 255, 255); padding: 24px; min-height: 280px;">Content</div>
<div style="background: rgb(255, 255, 255); padding: 24px; min-height: 280px;">
Content
</div>
</main>
<footer class="ant-layout-footer" style="text-align: center;">
Ant Design ©2018 Created by Ant UED
@ -239,15 +255,21 @@ exports[`renders ./antdv-demo/docs/layout/demo/top-side.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 1</li>
<li role="menuitem" class="ant-menu-item">
nav 1
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">nav 2</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">
nav 2
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 3</li>
<li role="menuitem" class="ant-menu-item">
nav 3
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="visibility: hidden; position: absolute; display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
@ -262,10 +284,18 @@ exports[`renders ./antdv-demo/docs/layout/demo/top-side.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open ant-menu-submenu-selected">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span>subnav 1</span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">option1</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option2</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option4</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">
option1
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option2
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option4
</li>
</ul>
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">
@ -298,15 +328,21 @@ exports[`renders ./antdv-demo/docs/layout/demo/top-side-2.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 1</li>
<li role="menuitem" class="ant-menu-item">
nav 1
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">nav 2</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected">
nav 2
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
<li role="menuitem" class="ant-menu-item">nav 3</li>
<li role="menuitem" class="ant-menu-item">
nav 3
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-horizontal ant-menu-overflowed-submenu" style="visibility: hidden; position: absolute; display: none;">
<div aria-haspopup="true" class="ant-menu-submenu-title"><span>···</span><i class="ant-menu-submenu-arrow"></i></div>
</li>
@ -319,10 +355,18 @@ exports[`renders ./antdv-demo/docs/layout/demo/top-side-2.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open ant-menu-submenu-selected">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="user" class="anticon anticon-user"><svg viewBox="64 64 896 896" focusable="false" data-icon="user" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M858.5 763.6a374 374 0 00-80.6-119.5 375.63 375.63 0 00-119.5-80.6c-.4-.2-.8-.3-1.2-.5C719.5 518 760 444.7 760 362c0-137-111-248-248-248S264 225 264 362c0 82.7 40.5 156 102.8 201.1-.4.2-.8.3-1.2.5-44.8 18.9-85 46-119.5 80.6a375.63 375.63 0 00-80.6 119.5A371.7 371.7 0 00136 901.8a8 8 0 008 8.2h60c4.4 0 7.9-3.5 8-7.8 2-77.2 33-149.5 87.8-204.3 56.7-56.7 132-87.9 212.2-87.9s155.5 31.2 212.2 87.9C779 752.7 810 825 812 902.2c.1 4.4 3.6 7.8 8 7.8h60a8 8 0 008-8.2c-1-47.8-10.9-94.3-29.5-138.2zM512 534c-45.9 0-89.1-17.9-121.6-50.4S340 407.9 340 362c0-45.9 17.9-89.1 50.4-121.6S466.1 190 512 190s89.1 17.9 121.6 50.4S684 316.1 684 362c0 45.9-17.9 89.1-50.4 121.6S557.9 534 512 534z"></path></svg></span>subnav 1</span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">option1</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option2</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">option4</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">
option1
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option2
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
option4
</li>
</ul>
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">

View File

@ -60,7 +60,9 @@ exports[`renders ./antdv-demo/docs/list/demo/grid.md correctly 1`] = `
<div class="ant-card-head-title">Title 1</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -72,7 +74,9 @@ exports[`renders ./antdv-demo/docs/list/demo/grid.md correctly 1`] = `
<div class="ant-card-head-title">Title 2</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -84,7 +88,9 @@ exports[`renders ./antdv-demo/docs/list/demo/grid.md correctly 1`] = `
<div class="ant-card-head-title">Title 3</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -96,7 +102,9 @@ exports[`renders ./antdv-demo/docs/list/demo/grid.md correctly 1`] = `
<div class="ant-card-head-title">Title 4</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -173,7 +181,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 1</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -185,7 +195,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 2</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -197,7 +209,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 3</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -209,7 +223,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 4</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -221,7 +237,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 5</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -233,7 +251,9 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
<div class="ant-card-head-title">Title 6</div>
</div>
</div>
<div class="ant-card-body">Card content</div>
<div class="ant-card-body">
Card content
</div>
</div>
</div>
</div>
@ -245,64 +265,112 @@ exports[`renders ./antdv-demo/docs/list/demo/resposive.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/list/demo/simple.md correctly 1`] = `
<div>
<h3 style="margin-bottom: 16px;">Default Size</h3>
<h3 style="margin-bottom: 16px;">
Default Size
</h3>
<div class="ant-list ant-list-split ant-list-bordered ant-list-something-after-last-item">
<div class="ant-list-header">
<div>Header</div>
<div>
Header
</div>
</div>
<div class="ant-spin-nested-loading">
<div class="ant-spin-container">
<ul class="ant-list-items">
<li class="ant-list-item">Racing car sprays burning fuel into crowd.</li>
<li class="ant-list-item">Japanese princess to wed commoner.</li>
<li class="ant-list-item">Australian walks 100km after outback crash.</li>
<li class="ant-list-item">Man charged over missing wedding girl.</li>
<li class="ant-list-item">Los Angeles battles huge wildfires.</li>
<li class="ant-list-item">
Racing car sprays burning fuel into crowd.
</li>
<li class="ant-list-item">
Japanese princess to wed commoner.
</li>
<li class="ant-list-item">
Australian walks 100km after outback crash.
</li>
<li class="ant-list-item">
Man charged over missing wedding girl.
</li>
<li class="ant-list-item">
Los Angeles battles huge wildfires.
</li>
</ul>
</div>
</div>
<div class="ant-list-footer">
<div>Footer</div>
<div>
Footer
</div>
</div>
</div>
<h3 style="margin: 16px 0px;">Small Size</h3>
<h3 style="margin: 16px 0px;">
Small Size
</h3>
<div class="ant-list ant-list-sm ant-list-split ant-list-bordered ant-list-something-after-last-item">
<div class="ant-list-header">
<div>Header</div>
<div>
Header
</div>
</div>
<div class="ant-spin-nested-loading">
<div class="ant-spin-container">
<ul class="ant-list-items">
<li class="ant-list-item">Racing car sprays burning fuel into crowd.</li>
<li class="ant-list-item">Japanese princess to wed commoner.</li>
<li class="ant-list-item">Australian walks 100km after outback crash.</li>
<li class="ant-list-item">Man charged over missing wedding girl.</li>
<li class="ant-list-item">Los Angeles battles huge wildfires.</li>
<li class="ant-list-item">
Racing car sprays burning fuel into crowd.
</li>
<li class="ant-list-item">
Japanese princess to wed commoner.
</li>
<li class="ant-list-item">
Australian walks 100km after outback crash.
</li>
<li class="ant-list-item">
Man charged over missing wedding girl.
</li>
<li class="ant-list-item">
Los Angeles battles huge wildfires.
</li>
</ul>
</div>
</div>
<div class="ant-list-footer">
<div>Footer</div>
<div>
Footer
</div>
</div>
</div>
<h3 style="margin: 16px 0px;">Large Size</h3>
<h3 style="margin: 16px 0px;">
Large Size
</h3>
<div class="ant-list ant-list-lg ant-list-split ant-list-bordered ant-list-something-after-last-item">
<div class="ant-list-header">
<div>Header</div>
<div>
Header
</div>
</div>
<div class="ant-spin-nested-loading">
<div class="ant-spin-container">
<ul class="ant-list-items">
<li class="ant-list-item">Racing car sprays burning fuel into crowd.</li>
<li class="ant-list-item">Japanese princess to wed commoner.</li>
<li class="ant-list-item">Australian walks 100km after outback crash.</li>
<li class="ant-list-item">Man charged over missing wedding girl.</li>
<li class="ant-list-item">Los Angeles battles huge wildfires.</li>
<li class="ant-list-item">
Racing car sprays burning fuel into crowd.
</li>
<li class="ant-list-item">
Japanese princess to wed commoner.
</li>
<li class="ant-list-item">
Australian walks 100km after outback crash.
</li>
<li class="ant-list-item">
Man charged over missing wedding girl.
</li>
<li class="ant-list-item">
Los Angeles battles huge wildfires.
</li>
</ul>
</div>
</div>
<div class="ant-list-footer">
<div>Footer</div>
<div>
Footer
</div>
</div>
</div>
</div>

View File

@ -3,7 +3,11 @@
exports[`renders ./antdv-demo/docs/locale-provider/demo/all.md correctly 1`] = `
<div>
<div class="change-locale"><span style="margin-right: 16px;">Change locale of components: </span>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value=""><span class="ant-radio-button-inner"></span></span><span>English</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="[object Object]"><span class="ant-radio-button-inner"></span></span><span>中文</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value=""><span class="ant-radio-button-inner"></span></span><span>
English
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="[object Object]"><span class="ant-radio-button-inner"></span></span><span>
中文
</span></label></div>
</div>
<div class="locale-components">
<div class="example">

View File

@ -2,6 +2,7 @@ import { mount } from '@vue/test-utils';
import Vue from 'vue';
import moment from 'moment';
import MockDate from 'mockdate';
import { sleep } from '../../../tests/utils';
import {
LocaleProvider,
Pagination,
@ -188,7 +189,7 @@ describe('Locale Provider', () => {
);
},
},
{ sync: false },
{ sync: false, attachToDocument: true },
);
Vue.nextTick(() => {
expect(wrapper.html()).toMatchSnapshot();
@ -197,7 +198,7 @@ describe('Locale Provider', () => {
});
});
it('should change locale of Modal.xxx', () => {
it('should change locale of Modal.xxx', async () => {
const ModalDemo = {
mounted() {
Modal.confirm({
@ -208,7 +209,8 @@ describe('Locale Provider', () => {
return null;
},
};
locales.forEach(locale => {
for (let locale of locales) {
document.body.innerHTML = '';
mount(
{
render() {
@ -219,8 +221,9 @@ describe('Locale Provider', () => {
);
},
},
{ sync: false },
{ sync: false, attachToDocument: true },
);
await sleep();
const currentConfirmNode = document.querySelectorAll('.ant-modal-confirm')[
document.querySelectorAll('.ant-modal-confirm').length - 1
];
@ -234,10 +237,10 @@ describe('Locale Provider', () => {
}
expect(cancelButtonText).toBe(locale.Modal.cancelText);
expect(okButtonText).toBe(locale.Modal.okText);
});
}
});
it('set moment locale when locale changes', done => {
it('set moment locale when locale changes', async () => {
document.body.innerHTML = '';
const Test = {
data() {
@ -256,17 +259,13 @@ describe('Locale Provider', () => {
},
};
const wrapper = mount(Test, { sync: false, attachToDocument: true });
setTimeout(() => {
expect(document.body.innerHTML).toMatchSnapshot();
wrapper.setData({ locale: frFR });
setTimeout(() => {
expect(document.body.innerHTML).toMatchSnapshot();
wrapper.setData({ locale: null });
setTimeout(() => {
expect(document.body.innerHTML).toMatchSnapshot();
done();
});
});
});
await sleep(50);
expect(document.body.innerHTML).toMatchSnapshot();
wrapper.setData({ locale: frFR });
await sleep(50);
expect(document.body.innerHTML).toMatchSnapshot();
wrapper.setData({ locale: null });
await sleep(50);
expect(document.body.innerHTML).toMatchSnapshot();
});
});

View File

@ -41,6 +41,6 @@ exports[`renders ./antdv-demo/docs/mentions/demo/readonly.md correctly 1`] = `
<div style="margin-bottom: 10px;">
<div class="ant-mentions ant-mentions-disabled"><textarea disabled="disabled" rows="1" placeholder="this is disabled Mentions"></textarea></div>
</div>
<div class="ant-mentions"><textarea rows="1" placeholder="this is readOnly a-mentions" readonly=""></textarea></div>
<div class="ant-mentions"><textarea rows="1" placeholder="this is readOnly a-mentions" readonly="readonly"></textarea></div>
</div>
`;

View File

@ -39,15 +39,23 @@ exports[`renders ./antdv-demo/docs/menu/demo/inline.md correctly 1`] = `
<li class="ant-menu-item-group">
<div class="ant-menu-item-group-title"><span role="img" aria-label="qq" class="anticon anticon-qq"><svg viewBox="64 64 896 896" focusable="false" data-icon="qq" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M824.8 613.2c-16-51.4-34.4-94.6-62.7-165.3C766.5 262.2 689.3 112 511.5 112 331.7 112 256.2 265.2 261 447.9c-28.4 70.8-46.7 113.7-62.7 165.3-34 109.5-23 154.8-14.6 155.8 18 2.2 70.1-82.4 70.1-82.4 0 49 25.2 112.9 79.8 159-26.4 8.1-85.7 29.9-71.6 53.8 11.4 19.3 196.2 12.3 249.5 6.3 53.3 6 238.1 13 249.5-6.3 14.1-23.8-45.3-45.7-71.6-53.8 54.6-46.2 79.8-110.1 79.8-159 0 0 52.1 84.6 70.1 82.4 8.5-1.1 19.5-46.4-14.5-155.8z"></path></svg></span><span>Item 1</span></div>
<ul class="ant-menu-item-group-list">
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">Option 1</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 2</li>
<li role="menuitem" class="ant-menu-item ant-menu-item-selected" style="padding-left: 48px;">
Option 1
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 2
</li>
</ul>
</li>
<li class="ant-menu-item-group">
<div title="Item 2" class="ant-menu-item-group-title">Item 2</div>
<ul class="ant-menu-item-group-list">
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 4</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 4
</li>
</ul>
</li>
</ul>
@ -73,10 +81,18 @@ exports[`renders ./antdv-demo/docs/menu/demo/inline-collapsed.md correctly 1`] =
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="mail" class="anticon anticon-mail"><svg viewBox="64 64 896 896" focusable="false" data-icon="mail" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 110.8V792H136V270.8l-27.6-21.5 39.3-50.5 42.8 33.3h643.1l42.8-33.3 39.3 50.5-27.7 21.5zM833.6 232L512 482 190.4 232l-42.8-33.3-39.3 50.5 27.6 21.5 341.6 265.6a55.99 55.99 0 0068.7 0L888 270.8l27.6-21.5-39.3-50.5-42.7 33.2z"></path></svg></span><span>Navigation One</span></span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 5</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 6</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 7</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 8</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 5
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 6
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 7
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 8
</li>
</ul>
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">
@ -93,10 +109,18 @@ exports[`renders ./antdv-demo/docs/menu/demo/sider-current.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="mail" class="anticon anticon-mail"><svg viewBox="64 64 896 896" focusable="false" data-icon="mail" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M928 160H96c-17.7 0-32 14.3-32 32v640c0 17.7 14.3 32 32 32h832c17.7 0 32-14.3 32-32V192c0-17.7-14.3-32-32-32zm-40 110.8V792H136V270.8l-27.6-21.5 39.3-50.5 42.8 33.3h643.1l42.8-33.3 39.3 50.5-27.7 21.5zM833.6 232L512 482 190.4 232l-42.8-33.3-39.3 50.5 27.6 21.5 341.6 265.6a55.99 55.99 0 0068.7 0L888 270.8l27.6-21.5-39.3-50.5-42.7 33.2z"></path></svg></span><span>Navigation One</span></span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 1</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 2</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 4</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 1
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 2
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 4
</li>
</ul>
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">
@ -125,8 +149,12 @@ exports[`renders ./antdv-demo/docs/menu/demo/switch-mode.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="appstore" class="anticon anticon-appstore"><svg viewBox="64 64 896 896" focusable="false" data-icon="appstore" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M464 144H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H212V212h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H612V212h200v200zM464 544H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H212V612h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H612V612h200v200z"></path></svg></span><span>Navigation Three</span></span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 4</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 4
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">
<div aria-haspopup="true" title="Submenu" class="ant-menu-submenu-title" style="padding-left: 48px;">Submenu<i class="ant-menu-submenu-arrow"></i></div>
<div></div>
@ -170,8 +198,12 @@ exports[`renders ./antdv-demo/docs/menu/demo/theme.md correctly 1`] = `
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline ant-menu-submenu-open">
<div aria-expanded="true" aria-owns="sub1$Menu" aria-haspopup="true" class="ant-menu-submenu-title" style="padding-left: 24px;"><span><span role="img" aria-label="appstore" class="anticon anticon-appstore"><svg viewBox="64 64 896 896" focusable="false" data-icon="appstore" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M464 144H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H212V212h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V160c0-8.8-7.2-16-16-16zm-52 268H612V212h200v200zM464 544H160c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H212V612h200v200zm452-268H560c-8.8 0-16 7.2-16 16v304c0 8.8 7.2 16 16 16h304c8.8 0 16-7.2 16-16V560c0-8.8-7.2-16-16-16zm-52 268H612V612h200v200z"></path></svg></span><span>Navigation Three</span></span><i class="ant-menu-submenu-arrow"></i></div>
<ul role="menu" class="ant-menu ant-menu-inline ant-menu-sub">
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 3</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">Option 4</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 3
</li>
<li role="menuitem" class="ant-menu-item" style="padding-left: 48px;">
Option 4
</li>
<li role="menuitem" class="ant-menu-submenu ant-menu-submenu-inline">
<div aria-haspopup="true" title="Submenu" class="ant-menu-submenu-title" style="padding-left: 48px;">Submenu<i class="ant-menu-submenu-arrow"></i></div>
<div></div>

View File

@ -222,7 +222,8 @@ const Menu = {
const { layoutSiderContext, $slots } = this;
const { collapsedWidth } = layoutSiderContext;
const { getPopupContainer: getContextPopupContainer } = this.configProvider;
const { prefixCls: customizePrefixCls, theme, getPopupContainer } = this.$props;
const props = getOptionProps(this);
const { prefixCls: customizePrefixCls, theme, getPopupContainer } = props;
const getPrefixCls = this.configProvider.getPrefixCls;
const prefixCls = getPrefixCls('menu', customizePrefixCls);
const menuMode = this.getRealMenuMode();
@ -235,7 +236,7 @@ const Menu = {
const menuProps = {
props: {
...omit(this.$props, ['inlineCollapsed']),
...omit(props, ['inlineCollapsed']),
getPopupContainer: getPopupContainer || getContextPopupContainer,
openKeys: this.sOpenKeys,
mode: menuMode,
@ -246,7 +247,7 @@ const Menu = {
select: this.handleSelect,
deselect: this.handleDeselect,
openChange: this.handleOpenChange,
onMouseenter: this.handleMouseEnter,
mouseenter: this.handleMouseEnter,
},
nativeOn: {
transitionend: this.handleTransitionEnd,

View File

@ -1,6 +1,7 @@
import { mount } from '@vue/test-utils';
import Modal from '..';
import mountTest from '../../../tests/shared/mountTest';
import { asyncExpect } from '@/tests/utils';
const ModalTester = {
props: ['footer', 'visible'],
@ -27,30 +28,43 @@ const ModalTester = {
describe('Modal', () => {
mountTest(Modal);
it('render correctly', done => {
const wrapper = mount({
render() {
return <ModalTester visible />;
it('render correctly', async () => {
const wrapper = mount(
{
render() {
return <ModalTester visible />;
},
},
{
sync: false,
attachToDocument: true,
},
);
await asyncExpect(() => {
expect(wrapper.html()).toMatchSnapshot();
});
expect(wrapper.html()).toMatchSnapshot();
// https://github.com/vuejs/vue-test-utils/issues/624
const wrapper1 = mount(ModalTester, {
sync: false,
attachToDocument: true,
});
wrapper1.setProps({ visible: true });
setTimeout(() => {
await asyncExpect(() => {
expect(wrapper1.html()).toMatchSnapshot();
done();
}, 10);
});
});
it('render without footer', () => {
const wrapper = mount({
render() {
return <ModalTester visible footer={null} />;
it('render without footer', async () => {
const wrapper = mount(
{
render() {
return <ModalTester visible footer={null} />;
},
},
{ attachToDocument: true, sync: true },
);
await asyncExpect(() => {
expect(wrapper.html()).toMatchSnapshot();
});
expect(wrapper.html()).toMatchSnapshot();
});
});

View File

@ -21,7 +21,6 @@ exports[`Modal render correctly 1`] = `
</div>
</div>
</div>
<!---->
</div>
`;
@ -46,7 +45,6 @@ exports[`Modal render correctly 2`] = `
</div>
</div>
</div>
<!---->
</div>
`;
@ -68,6 +66,5 @@ exports[`Modal render without footer 1`] = `
</div>
</div>
</div>
<!---->
</div>
`;

View File

@ -1,5 +1,5 @@
import Modal from '..';
import { asyncExpect } from '@/tests/utils';
import { sleep } from '../../../tests/utils';
const { confirm } = Modal;
describe('Modal.confirm triggers callbacks correctly', () => {
@ -26,76 +26,80 @@ describe('Modal.confirm triggers callbacks correctly', () => {
});
}
it('trigger onCancel once when click on cancel button', () => {
it('trigger onCancel once when click on cancel button', async () => {
const onCancel = jest.fn();
const onOk = jest.fn();
open({
onCancel,
onOk,
});
await sleep();
// first Modal
$$('.ant-btn')[0].click();
expect(onCancel.mock.calls.length).toBe(1);
expect(onOk.mock.calls.length).toBe(0);
});
it('trigger onOk once when click on ok button', () => {
it('trigger onOk once when click on ok button', async () => {
const onCancel = jest.fn();
const onOk = jest.fn();
open({
onCancel,
onOk,
});
await sleep();
// second Modal
$$('.ant-btn-primary')[0].click();
expect(onCancel.mock.calls.length).toBe(0);
expect(onOk.mock.calls.length).toBe(1);
});
it('should allow Modal.comfirm without onCancel been set', () => {
it('should allow Modal.comfirm without onCancel been set', async () => {
open();
await sleep();
// Third Modal
$$('.ant-btn')[0].click();
expect(errorSpy).not.toHaveBeenCalled();
});
it('should allow Modal.comfirm without onOk been set', () => {
it('should allow Modal.comfirm without onOk been set', async () => {
open();
await sleep();
// Fourth Modal
$$('.ant-btn-primary')[0].click();
expect(errorSpy).not.toHaveBeenCalled();
});
it('ok only', () => {
it('ok only', async () => {
open({ okCancel: false });
await sleep();
expect($$('.ant-btn')).toHaveLength(1);
expect($$('.ant-btn')[0].innerHTML).toContain('OK');
});
it('allows extra props on buttons', () => {
it('allows extra props on buttons', async () => {
open({
okButtonProps: { props: { disabled: true } },
cancelButtonProps: { attrs: { 'data-test': 'baz' } },
});
await sleep();
expect($$('.ant-btn')).toHaveLength(2);
expect($$('.ant-btn')[0].attributes['data-test'].value).toBe('baz');
expect($$('.ant-btn')[1].disabled).toBe(true);
});
it('trigger onCancel once when click on cancel button', () => {
jest.useFakeTimers();
['info', 'success', 'warning', 'error'].forEach(async type => {
fit('trigger onCancel once when click on cancel button', async () => {
const arr = ['info', 'success', 'warning', 'error'];
for (let type of arr) {
Modal[type]({
title: 'title',
content: 'content',
});
await sleep();
expect($$(`.ant-modal-confirm-${type}`)).toHaveLength(1);
$$('.ant-btn')[0].click();
jest.runAllTimers();
await asyncExpect(() => {
expect($$(`.ant-modal-confirm-${type}`)).toHaveLength(0);
});
});
jest.useRealTimers();
await sleep();
expect($$(`.ant-modal-confirm-${type}`)).toHaveLength(0);
}
});
});

View File

@ -83,7 +83,7 @@
padding: 16px 24px;
color: @text-color;
background: @modal-header-bg;
border-bottom: @border-width-base @border-style-base @border-color-split;
border-bottom: @border-width-base @border-style-base @modal-header-border-color-split;
border-radius: @border-radius-base @border-radius-base 0 0;
}

View File

@ -109,7 +109,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/actions.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
Lili Qu
Lili Qu
</span>
</td>
<td
@ -141,7 +143,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/actions.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
2017-01-10
2017-01-10
</span>
</td>
</tr>
@ -160,7 +164,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/actions.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
2017-10-10
2017-10-10
</span>
</td>
<td
@ -244,7 +250,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/actions.md correctly 1`] = `
<span
class="ant-tag ant-tag-blue"
>
Running
Running
</span>
</span>
<span
@ -612,7 +620,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/ghost.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
Lili Qu
Lili Qu
</span>
</td>
<td
@ -644,7 +654,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/ghost.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
2017-01-10
2017-01-10
</span>
</td>
</tr>
@ -663,7 +675,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/ghost.md correctly 1`] = `
<span
class="ant-descriptions-item-content"
>
2017-10-10
2017-10-10
</span>
</td>
<td
@ -808,7 +822,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/responsive.md correctly 1`]
<span
class="ant-descriptions-item-content"
>
Lili Qu
Lili Qu
</span>
</td>
<td
@ -844,7 +860,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/responsive.md correctly 1`]
<span
class="ant-descriptions-item-content"
>
2017-01-10
2017-01-10
</span>
</td>
<td
@ -859,7 +877,9 @@ exports[`renders ./antdv-demo/docs/page-header/demo/responsive.md correctly 1`]
<span
class="ant-descriptions-item-content"
>
2017-10-10
2017-10-10
</span>
</td>
</tr>

View File

@ -3,7 +3,11 @@
exports[`renders ./antdv-demo/docs/radio/demo/basic.md correctly 1`] = `<label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value=""><span class="ant-radio-inner"></span></span><span>Radio</span></label>`;
exports[`renders ./antdv-demo/docs/radio/demo/disabled.md correctly 1`] = `
<div><label class="ant-radio-wrapper ant-radio-wrapper-disabled"><span class="ant-radio ant-radio-disabled"><input type="radio" disabled="disabled" class="ant-radio-input" value=""><span class="ant-radio-inner"></span></span><span>Disabled</span></label> <br> <label class="ant-radio-wrapper ant-radio-wrapper-disabled"><span class="ant-radio ant-radio-checked ant-radio-disabled"><input type="radio" disabled="disabled" class="ant-radio-input" value=""><span class="ant-radio-inner"></span></span><span>Disabled</span></label>
<div><label class="ant-radio-wrapper ant-radio-wrapper-disabled"><span class="ant-radio ant-radio-disabled"><input type="radio" disabled="disabled" class="ant-radio-input" value=""><span class="ant-radio-inner"></span></span><span>
Disabled
</span></label> <br> <label class="ant-radio-wrapper ant-radio-wrapper-disabled"><span class="ant-radio ant-radio-checked ant-radio-disabled"><input type="radio" disabled="disabled" class="ant-radio-input" value=""><span class="ant-radio-inner"></span></span><span>
Disabled
</span></label>
<div><button type="button" class="ant-btn ant-btn-primary"><span>Toggle disabled</span></button></div>
</div>
`;
@ -11,13 +15,37 @@ exports[`renders ./antdv-demo/docs/radio/demo/disabled.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/radio/demo/radioButton.md correctly 1`] = `
<div>
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
<div style="margin-top: 16px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
<div style="margin-top: 16px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-checked ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-checked ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
</div>
`;
@ -25,22 +53,52 @@ exports[`renders ./antdv-demo/docs/radio/demo/radioButton.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/radio/demo/radioButton-solid.md correctly 1`] = `
<div>
<div>
<div class="ant-radio-group ant-radio-group-solid ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-solid ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
<div style="margin-top: 16px;">
<div class="ant-radio-group ant-radio-group-solid ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-solid ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-disabled"><span class="ant-radio-button ant-radio-button-disabled"><input type="radio" disabled="disabled" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
</div>
`;
exports[`renders ./antdv-demo/docs/radio/demo/radioGroup.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>A</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>B</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>C</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>D</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>
A
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>
B
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>
C
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>
D
</span></label></div>
</div>
`;
exports[`renders ./antdv-demo/docs/radio/demo/radioGroup-more.md correctly 1`] = `
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>Option A</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>Option B</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>Option C</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio ant-radio-checked"><input type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>
Option A
</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>
Option B
</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>
Option C
</span></label><label class="ant-radio-wrapper" style="display: block; height: 30px; line-height: 30px;"><span class="ant-radio"><input type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>
More...
<!----></span></label></div>
`;
@ -53,18 +111,52 @@ exports[`renders ./antdv-demo/docs/radio/demo/radioGroup-options.md correctly 1`
</div>
`;
exports[`renders ./antdv-demo/docs/radio/demo/radioGroup-with-name.md correctly 1`] = `<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input name="radioGroup" type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>A</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>B</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>C</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>D</span></label></div>`;
exports[`renders ./antdv-demo/docs/radio/demo/radioGroup-with-name.md correctly 1`] = `
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-wrapper ant-radio-wrapper-checked"><span class="ant-radio ant-radio-checked"><input name="radioGroup" type="radio" class="ant-radio-input" value="1"><span class="ant-radio-inner"></span></span><span>
A
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="2"><span class="ant-radio-inner"></span></span><span>
B
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="3"><span class="ant-radio-inner"></span></span><span>
C
</span></label><label class="ant-radio-wrapper"><span class="ant-radio"><input name="radioGroup" type="radio" class="ant-radio-input" value="4"><span class="ant-radio-inner"></span></span><span>
D
</span></label></div>
`;
exports[`renders ./antdv-demo/docs/radio/demo/size.md correctly 1`] = `
<div>
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-large"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-large"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
<div style="margin-top: 16px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
<div style="margin-top: 16px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-small"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>Hangzhou</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>Shanghai</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>Beijing</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>Chengdu</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-small"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="a"><span class="ant-radio-button-inner"></span></span><span>
Hangzhou
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="b"><span class="ant-radio-button-inner"></span></span><span>
Shanghai
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="c"><span class="ant-radio-button-inner"></span></span><span>
Beijing
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="d"><span class="ant-radio-button-inner"></span></span><span>
Chengdu
</span></label></div>
</div>
</div>
`;

View File

@ -19,22 +19,43 @@ exports[`renders ./antdv-demo/docs/select/demo/basic.md correctly 1`] = `
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
<div tabindex="-1" class="ant-select ant-select-disabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
<div tabindex="0" class="ant-select ant-select-enabled ant-select-loading" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="loading" class="anticon anticon-loading"><svg viewBox="0 0 1024 1024" focusable="false" data-icon="loading" width="1em" height="1em" fill="currentColor" aria-hidden="true" class="anticon-spin"><path d="M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: loading" class="anticon anticon-loading"><svg viewBox="0 0 1024 1024" data-icon="loading" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="anticon-spin"><path d="M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 0 0-94.3-139.9 437.71 437.71 0 0 0-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
</div>
@ -45,15 +66,29 @@ exports[`renders ./antdv-demo/docs/select/demo/coordinate.md correctly 1`] = `
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Zhejiang" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Zhejiang</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Zhejiang" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Zhejiang
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Hangzhou" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Hangzhou</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Hangzhou" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Hangzhou
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
</div>
@ -63,8 +98,15 @@ exports[`renders ./antdv-demo/docs/select/demo/custom-dropdown-menu.md correctly
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
`;
@ -88,8 +130,15 @@ exports[`renders ./antdv-demo/docs/select/demo/label-in-value.md correctly 1`] =
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy (101)" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy (101)</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Lucy (101)" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy (101)
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
`;
@ -101,10 +150,21 @@ exports[`renders ./antdv-demo/docs/select/demo/multiple.md correctly 1`] = `
<div unselectable="on" class="ant-select-selection__placeholder" style="display: none; user-select: none;">Please select</div>
<div>
<li unselectable="on" role="presentation" title="a1" class="ant-select-selection__choice" style="user-select: none;">
<<<<<<< HEAD
<div class="ant-select-selection__choice__content">a1</div><span class="ant-select-selection__choice__remove"><span role="img" aria-label="close" class="anticon anticon-close ant-select-remove-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="close" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z"></path></svg></span></span>
</li>
<li unselectable="on" role="presentation" title="b2" class="ant-select-selection__choice" style="user-select: none;">
<div class="ant-select-selection__choice__content">b2</div><span class="ant-select-selection__choice__remove"><span role="img" aria-label="close" class="anticon anticon-close ant-select-remove-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="close" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z"></path></svg></span></span>
=======
<div class="ant-select-selection__choice__content">
a1
</div><span class="ant-select-selection__choice__remove"><i aria-label="icon: close" class="anticon anticon-close ant-select-remove-icon"><svg viewBox="64 64 896 896" data-icon="close" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 0 0 203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z"></path></svg></i></span>
</li>
<li unselectable="on" role="presentation" title="b2" class="ant-select-selection__choice" style="user-select: none;">
<div class="ant-select-selection__choice__content">
b2
</div><span class="ant-select-selection__choice__remove"><i aria-label="icon: close" class="anticon anticon-close ant-select-remove-icon"><svg viewBox="64 64 896 896" data-icon="close" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 0 0 203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z"></path></svg></i></span>
>>>>>>> origin/master
</li>
<li class="ant-select-search ant-select-search--inline">
<div class="ant-select-search__field__wrap"><input autocomplete="off" value="" class="ant-select-search__field"><span class="ant-select-search__field__mirror">&nbsp;</span></div>
@ -119,8 +179,15 @@ exports[`renders ./antdv-demo/docs/select/demo/optgroup.md correctly 1`] = `
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 200px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: down" class="anticon anticon-down ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M884 256h-75c-5.1 0-9.9 2.5-12.9 6.6L512 654.2 227.9 262.6c-3-4.1-7.8-6.6-12.9-6.6h-75c-6.5 0-10.3 7.4-6.5 12.7l352.6 486.1c12.8 17.6 39 17.6 51.7 0l352.6-486.1c3.9-5.3.1-12.7-6.4-12.7z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
`;
@ -196,7 +263,13 @@ exports[`renders ./antdv-demo/docs/select/demo/select-users.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/select/demo/size.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>Large</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>Default</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>Small</span></label></div> <br><br>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default"><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>
Large
</span></label><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>
Default
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>
Small
</span></label></div> <br><br>
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 200px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
@ -258,15 +331,29 @@ exports[`renders ./antdv-demo/docs/select/demo/suffix.md correctly 1`] = `
<div tabindex="0" class="ant-select ant-select-enabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="smile" class="anticon anticon-smile ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="smile" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M288 421a48 48 0 1096 0 48 48 0 10-96 0zm352 0a48 48 0 1096 0 48 48 0 10-96 0zM512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm263 711c-34.2 34.2-74 61-118.3 79.8C611 874.2 562.3 884 512 884c-50.3 0-99-9.8-144.8-29.2A370.4 370.4 0 01248.9 775c-34.2-34.2-61-74-79.8-118.3C149.8 611 140 562.3 140 512s9.8-99 29.2-144.8A370.4 370.4 0 01249 248.9c34.2-34.2 74-61 118.3-79.8C413 149.8 461.7 140 512 140c50.3 0 99 9.8 144.8 29.2A370.4 370.4 0 01775.1 249c34.2 34.2 61 74 79.8 118.3C874.2 413 884 461.7 884 512s-9.8 99-29.2 144.8A368.89 368.89 0 01775 775zM664 533h-48.1c-4.2 0-7.8 3.2-8.1 7.4C604 589.9 562.5 629 512 629s-92.1-39.1-95.8-88.6c-.3-4.2-3.9-7.4-8.1-7.4H360a8 8 0 00-8 8.4c4.4 84.3 74.5 151.6 160 151.6s155.6-67.3 160-151.6a8 8 0 00-8-8.4z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: smile" class="anticon anticon-smile ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="smile" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M288 421a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm352 0a48 48 0 1 0 96 0 48 48 0 1 0-96 0zM512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm263 711c-34.2 34.2-74 61-118.3 79.8C611 874.2 562.3 884 512 884c-50.3 0-99-9.8-144.8-29.2A370.4 370.4 0 0 1 248.9 775c-34.2-34.2-61-74-79.8-118.3C149.8 611 140 562.3 140 512s9.8-99 29.2-144.8A370.4 370.4 0 0 1 249 248.9c34.2-34.2 74-61 118.3-79.8C413 149.8 461.7 140 512 140c50.3 0 99 9.8 144.8 29.2A370.4 370.4 0 0 1 775.1 249c34.2 34.2 61 74 79.8 118.3C874.2 413 884 461.7 884 512s-9.8 99-29.2 144.8A368.89 368.89 0 0 1 775 775zM664 533h-48.1c-4.2 0-7.8 3.2-8.1 7.4C604 589.9 562.5 629 512 629s-92.1-39.1-95.8-88.6c-.3-4.2-3.9-7.4-8.1-7.4H360a8 8 0 0 0-8 8.4c4.4 84.3 74.5 151.6 160 151.6s155.6-67.3 160-151.6a8 8 0 0 0-8-8.4z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
<div tabindex="-1" class="ant-select ant-select-disabled" style="width: 120px;">
<div role="combobox" aria-autocomplete="list" aria-haspopup="true" aria-controls="test-uuid" class="ant-select-selection ant-select-selection--single">
<div class="ant-select-selection__rendered">
<<<<<<< HEAD
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">Lucy</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><span role="img" aria-label="meh" class="anticon anticon-meh ant-select-arrow-icon"><svg viewBox="64 64 896 896" focusable="false" data-icon="meh" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M288 421a48 48 0 1096 0 48 48 0 10-96 0zm352 0a48 48 0 1096 0 48 48 0 10-96 0zM512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm263 711c-34.2 34.2-74 61-118.3 79.8C611 874.2 562.3 884 512 884c-50.3 0-99-9.8-144.8-29.2A370.4 370.4 0 01248.9 775c-34.2-34.2-61-74-79.8-118.3C149.8 611 140 562.3 140 512s9.8-99 29.2-144.8A370.4 370.4 0 01249 248.9c34.2-34.2 74-61 118.3-79.8C413 149.8 461.7 140 512 140c50.3 0 99 9.8 144.8 29.2A370.4 370.4 0 01775.1 249c34.2 34.2 61 74 79.8 118.3C874.2 413 884 461.7 884 512s-9.8 99-29.2 144.8A368.89 368.89 0 01775 775zM664 565H360c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"></path></svg></span></span>
=======
<div title="Lucy" class="ant-select-selection-selected-value" style="display: block; opacity: 1;">
Lucy
</div>
</div><span unselectable="on" class="ant-select-arrow" style="user-select: none;"><i aria-label="icon: meh" class="anticon anticon-meh ant-select-arrow-icon"><svg viewBox="64 64 896 896" data-icon="meh" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M288 421a48 48 0 1 0 96 0 48 48 0 1 0-96 0zm352 0a48 48 0 1 0 96 0 48 48 0 1 0-96 0zM512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm263 711c-34.2 34.2-74 61-118.3 79.8C611 874.2 562.3 884 512 884c-50.3 0-99-9.8-144.8-29.2A370.4 370.4 0 0 1 248.9 775c-34.2-34.2-61-74-79.8-118.3C149.8 611 140 562.3 140 512s9.8-99 29.2-144.8A370.4 370.4 0 0 1 249 248.9c34.2-34.2 74-61 118.3-79.8C413 149.8 461.7 140 512 140c50.3 0 99 9.8 144.8 29.2A370.4 370.4 0 0 1 775.1 249c34.2 34.2 61 74 79.8 118.3C874.2 413 884 461.7 884 512s-9.8 99-29.2 144.8A368.89 368.89 0 0 1 775 775zM664 565H360c-4.4 0-8 3.6-8 8v48c0 4.4 3.6 8 8 8h304c4.4 0 8-3.6 8-8v-48c0-4.4-3.6-8-8-8z"></path></svg></i></span>
>>>>>>> origin/master
</div>
</div>
</div>

View File

@ -310,6 +310,7 @@
.@{select-prefix-cls}-search__field {
width: 0.75em;
max-width: 100%;
padding: 1px;
}
}

View File

@ -29,7 +29,7 @@ exports[`renders ./antdv-demo/docs/statistic/demo/card.md correctly 1`] = `
<div class="ant-col ant-col-12" style="padding-left: 8px; padding-right: 8px;">
<div class="ant-card ant-card-bordered">
<div class="ant-card-body">
<div class="ant-statistic" valueclass="demo-class">
<div class="demo-class ant-statistic">
<div class="ant-statistic-title">Idle</div>
<div class="ant-statistic-content" style="color: rgb(207, 19, 34);"><span class="ant-statistic-content-prefix"><span role="img" aria-label="arrow-down" class="anticon anticon-arrow-down"><svg viewBox="64 64 896 896" focusable="false" data-icon="arrow-down" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M862 465.3h-81c-4.6 0-9 2-12.1 5.5L550 723.1V160c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v563.1L255.1 470.8c-3-3.5-7.4-5.5-12.1-5.5h-81c-6.8 0-10.5 8.1-6 13.2L487.9 861a31.96 31.96 0 0048.3 0L868 478.5c4.5-5.2.8-13.2-6-13.2z"></path></svg></span></span><span class="ant-statistic-content-value"><span class="ant-statistic-content-value-int">9</span><span class="ant-statistic-content-value-decimal">.30</span></span><span class="ant-statistic-content-suffix">%</span></div>
</div>
@ -72,7 +72,7 @@ exports[`renders ./antdv-demo/docs/statistic/demo/unit.md correctly 1`] = `
</div>
</div>
<div class="ant-col ant-col-12" style="padding-left: 8px; padding-right: 8px;">
<div class="ant-statistic" valueclass="demo-class">
<div class="demo-class ant-statistic">
<div class="ant-statistic-title">Unmerged</div>
<div class="ant-statistic-content"><span class="ant-statistic-content-value"><span class="ant-statistic-content-value-int">93</span></span><span class="ant-statistic-content-suffix"><span> / 100</span></span></div>
</div>

View File

@ -500,7 +500,9 @@ exports[`renders ./antdv-demo/docs/steps/demo/step-next.md correctly 1`] = `
</div>
</div>
</div>
<div class="steps-content">First-content</div>
<div class="steps-content">
First-content
</div>
<div class="steps-action"><button type="button" class="ant-btn ant-btn-primary"><span>Next</span></button>
<!---->
<!---->

View File

@ -394,6 +394,7 @@
// --
@modal-body-padding: 24px;
@modal-header-bg: @component-background;
@modal-header-border-color-split: @border-color-split;
@modal-heading-color: @heading-color;
@modal-footer-bg: transparent;
@modal-footer-border-color-split: @border-color-split;

View File

@ -158,6 +158,7 @@ export default {
sPagination: this.getDefaultPagination(this.$props),
pivot: undefined,
sComponents: createComponents(this.components),
filterDataCnt: 0
};
},
watch: {
@ -376,6 +377,7 @@ export default {
getCurrentPageData() {
let data = this.getLocalData();
this.filterDataCnt = data.length;
let current;
let pageSize;
const sPagination = this.sPagination;
@ -417,7 +419,9 @@ export default {
data = data.slice(0);
const sorterFn = this.getSorterFn(currentState);
if (sorterFn) {
data = this.recursiveSort(data, sorterFn);
// 使
// https://github.com/vueComponent/ant-design-vue/issues/2270
data = this.recursiveSort([...data], sorterFn);
}
//
if (filter && filters) {
@ -886,7 +890,7 @@ export default {
item[childrenColumnName]
? {
...item,
[childrenColumnName]: this.recursiveSort(item[childrenColumnName], sorterFn),
[childrenColumnName]: this.recursiveSort([...item[childrenColumnName]], sorterFn),
}
: item,
);
@ -933,7 +937,7 @@ export default {
size = 'small';
}
const position = pagination.position || 'bottom';
const total = pagination.total || this.getLocalData().length;
const total = pagination.total || this.filterDataCnt;
const { class: cls, style, onChange, onShowSizeChange, ...restProps } = pagination; // eslint-disable-line
const paginationProps = mergeProps({
key: `pagination-${paginationPosition}`,

View File

@ -295,24 +295,48 @@ exports[`renders ./antdv-demo/docs/table/demo/custom-filter-panel.md correctly 1
</thead>
<tbody class="ant-table-tbody">
<tr class="ant-table-row ant-table-row-level-0" data-row-key="1">
<td class="ant-table-column-has-actions ant-table-column-has-filters">John Brown</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">32</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">New York No. 1 Lake Park</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
John Brown
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
32
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
New York No. 1 Lake Park
</td>
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="2">
<td class="ant-table-column-has-actions ant-table-column-has-filters">Joe Black</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">42</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">London No. 1 Lake Park</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
Joe Black
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
42
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
London No. 1 Lake Park
</td>
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="3">
<td class="ant-table-column-has-actions ant-table-column-has-filters">Jim Green</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">32</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">Sidney No. 1 Lake Park</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
Jim Green
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
32
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
Sidney No. 1 Lake Park
</td>
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="4">
<td class="ant-table-column-has-actions ant-table-column-has-filters">Jim Red</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">32</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">London No. 2 Lake Park</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
Jim Red
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
32
</td>
<td class="ant-table-column-has-actions ant-table-column-has-filters">
London No. 2 Lake Park
</td>
</tr>
</tbody>
</table>
@ -430,13 +454,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
<tbody class="ant-table-tbody">
<tr class="ant-table-row ant-table-row-level-0" data-row-key="0">
<td class="ant-table-row-cell-break-word">
<div>Edrward 0</div>
<div>
Edrward 0
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 0</div>
<div>
London Park no. 0
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -444,13 +474,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="1">
<td class="ant-table-row-cell-break-word">
<div>Edrward 1</div>
<div>
Edrward 1
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 1</div>
<div>
London Park no. 1
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -458,13 +494,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="2">
<td class="ant-table-row-cell-break-word">
<div>Edrward 2</div>
<div>
Edrward 2
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 2</div>
<div>
London Park no. 2
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -472,13 +514,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="3">
<td class="ant-table-row-cell-break-word">
<div>Edrward 3</div>
<div>
Edrward 3
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 3</div>
<div>
London Park no. 3
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -486,13 +534,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="4">
<td class="ant-table-row-cell-break-word">
<div>Edrward 4</div>
<div>
Edrward 4
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 4</div>
<div>
London Park no. 4
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -500,13 +554,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="5">
<td class="ant-table-row-cell-break-word">
<div>Edrward 5</div>
<div>
Edrward 5
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 5</div>
<div>
London Park no. 5
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -514,13 +574,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="6">
<td class="ant-table-row-cell-break-word">
<div>Edrward 6</div>
<div>
Edrward 6
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 6</div>
<div>
London Park no. 6
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -528,13 +594,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="7">
<td class="ant-table-row-cell-break-word">
<div>Edrward 7</div>
<div>
Edrward 7
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 7</div>
<div>
London Park no. 7
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -542,13 +614,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="8">
<td class="ant-table-row-cell-break-word">
<div>Edrward 8</div>
<div>
Edrward 8
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 8</div>
<div>
London Park no. 8
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>
@ -556,13 +634,19 @@ exports[`renders ./antdv-demo/docs/table/demo/edit-row.md correctly 1`] = `
</tr>
<tr class="ant-table-row ant-table-row-level-0" data-row-key="9">
<td class="ant-table-row-cell-break-word">
<div>Edrward 9</div>
<div>
Edrward 9
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>32</div>
<div>
32
</div>
</td>
<td class="ant-table-row-cell-break-word">
<div>London Park no. 9</div>
<div>
London Park no. 9
</div>
</td>
<td class="">
<div class="editable-row-operations"><span><a>Edit</a></span></div>

View File

@ -216,7 +216,7 @@ export default {
filterIcon = filterIcon(filtered, column);
}
const dropdownIconClass = classNames({
[`${prefixCls}-selected`]: filtered,
[`${prefixCls}-selected`]: 'filtered' in column ? column.filtered : filtered,
[`${prefixCls}-open`]: this.getDropdownVisible(),
});
if (!filterIcon) {

View File

@ -36,6 +36,7 @@ export const ColumnProps = {
fixed: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['left', 'right'])]),
filterIcon: PropTypes.any,
filteredValue: PropTypes.array,
filtered: PropTypes.bool,
defaultFilteredValue: PropTypes.array,
sortOrder: PropTypes.oneOfType([PropTypes.bool, PropTypes.oneOf(['ascend', 'descend'])]),
sortDirections: PropTypes.array,

View File

@ -75,7 +75,7 @@
}
}
.@{table-prefix-cls}-filter-selected.@{iconfont-css-prefix}-filter {
.@{table-prefix-cls}-filter-selected.@{iconfont-css-prefix} {
color: @primary-color;
}
@ -447,7 +447,7 @@
.@{ant-prefix}-dropdown-menu {
// https://github.com/ant-design/ant-design/issues/4916
// https://github.com/ant-design/ant-design/issues/19542
max-height: calc(100vh - 130px);
max-height: ~'calc(100vh - 130px)';
overflow-x: hidden;
border: 0;
border-radius: @border-radius-base @border-radius-base 0 0;
@ -722,7 +722,7 @@
table {
border-radius: @table-border-radius-base 0 0 0;
}
.ant-table-thead > tr > th:last-child {
.@{table-prefix-cls}-thead > tr > th:last-child {
border-top-right-radius: 0;
}
}
@ -740,7 +740,7 @@
color: transparent;
pointer-events: none;
}
.ant-table-thead > tr > th:first-child {
.@{table-prefix-cls}-thead > tr > th:first-child {
border-top-left-radius: 0;
}
}

View File

@ -81,11 +81,11 @@ const TabBar = {
if (renderTabBar) {
RenderTabBar = renderTabBar(renderProps, ScrollableInkTabBar);
// https://github.com/vueComponent/ant-design-vue/issues/2157
return cloneElement(RenderTabBar, renderProps);
} else {
RenderTabBar = <ScrollableInkTabBar {...renderProps} />;
return <ScrollableInkTabBar {...renderProps} />;
}
return cloneElement(RenderTabBar);
},
};

View File

@ -22,9 +22,13 @@ exports[`renders ./antdv-demo/docs/tabs/demo/basic.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of Tab Pane 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of Tab Pane 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive">
Content of Tab Pane 2
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive">Content of Tab Pane 2</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
</div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
@ -53,7 +57,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/card.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-no-animated ant-tabs-top-content ant-tabs-card-content">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of Tab Pane 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of Tab Pane 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
@ -157,9 +163,13 @@ exports[`renders ./antdv-demo/docs/tabs/demo/custom-tab-bar.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active" style="height: 200px;">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of Tab Pane 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of Tab Pane 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive">
Content of Tab Pane 2
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive">Content of Tab Pane 2</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
</div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
@ -188,7 +198,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/disabled.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Tab 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Tab 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
@ -258,7 +270,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/extra.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of tab 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of tab 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
@ -381,7 +395,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/nest.md correctly 1`] = `
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: -100%;">
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>TTTT 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
TTTT 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
@ -415,7 +431,15 @@ exports[`renders ./antdv-demo/docs/tabs/demo/nest.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/tabs/demo/position.md correctly 1`] = `
<div style="width: 500px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>top</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="bottom"><span class="ant-radio-button-inner"></span></span><span>bottom</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>left</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="right"><span class="ant-radio-button-inner"></span></span><span>right</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>
top
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="bottom"><span class="ant-radio-button-inner"></span></span><span>
bottom
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>
left
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="right"><span class="ant-radio-button-inner"></span></span><span>
right
</span></label></div>
<div class="ant-tabs ant-tabs-top ant-tabs-line">
<div role="tablist" tabindex="0" class="ant-tabs-bar ant-tabs-top-bar">
<div class="ant-tabs-nav-container"><span unselectable="unselectable" class="ant-tabs-tab-prev ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-prev-icon"><span role="img" aria-label="left" class="anticon anticon-left ant-tabs-tab-prev-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span></span></span><span unselectable="unselectable" class="ant-tabs-tab-next ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-next-icon"><span role="img" aria-label="right" class="anticon anticon-right ant-tabs-tab-next-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></span></span>
@ -436,7 +460,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/position.md correctly 1`] = `
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: 0%;">
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of Tab 1<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of Tab 1
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
@ -448,7 +474,13 @@ exports[`renders ./antdv-demo/docs/tabs/demo/position.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/tabs/demo/size.md correctly 1`] = `
<div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 16px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>Small</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>Default</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>Large</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 16px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="small"><span class="ant-radio-button-inner"></span></span><span>
Small
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="default"><span class="ant-radio-button-inner"></span></span><span>
Default
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="large"><span class="ant-radio-button-inner"></span></span><span>
Large
</span></label></div>
<div class="ant-tabs ant-tabs-top ant-tabs-small ant-tabs-line">
<div role="tablist" tabindex="0" class="ant-tabs-bar ant-tabs-top-bar ant-tabs-small-bar">
<div class="ant-tabs-nav-container"><span unselectable="unselectable" class="ant-tabs-tab-prev ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-prev-icon"><span role="img" aria-label="left" class="anticon anticon-left ant-tabs-tab-prev-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span></span></span><span unselectable="unselectable" class="ant-tabs-tab-next ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-next-icon"><span role="img" aria-label="right" class="anticon anticon-right ant-tabs-tab-next-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></span></span>
@ -470,7 +502,9 @@ exports[`renders ./antdv-demo/docs/tabs/demo/size.md correctly 1`] = `
<div class="ant-tabs-content ant-tabs-content-animated ant-tabs-top-content" style="margin-left: -100%;">
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
<div role="tabpanel" aria-hidden="false" class="ant-tabs-tabpane ant-tabs-tabpane-active">
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>Content of tab 2<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
Content of tab 2
<div tabindex="0" role="presentation" style="width: 0px; height: 0px; overflow: hidden; position: absolute;"></div>
</div>
<div role="tabpanel" aria-hidden="true" class="ant-tabs-tabpane ant-tabs-tabpane-inactive"></div>
</div>
@ -481,7 +515,11 @@ exports[`renders ./antdv-demo/docs/tabs/demo/size.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/tabs/demo/slide.md correctly 1`] = `
<div style="width: 500px;">
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>Horizontal</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>Vertical</span></label></div>
<div class="ant-radio-group ant-radio-group-outline ant-radio-group-default" style="margin-bottom: 8px;"><label class="ant-radio-button-wrapper ant-radio-button-wrapper-checked"><span class="ant-radio-button ant-radio-button-checked"><input type="radio" class="ant-radio-button-input" value="top"><span class="ant-radio-button-inner"></span></span><span>
Horizontal
</span></label><label class="ant-radio-button-wrapper"><span class="ant-radio-button"><input type="radio" class="ant-radio-button-input" value="left"><span class="ant-radio-button-inner"></span></span><span>
Vertical
</span></label></div>
<div class="ant-tabs ant-tabs-top ant-tabs-line" style="height: 200px;">
<div role="tablist" tabindex="0" class="ant-tabs-bar ant-tabs-top-bar">
<div class="ant-tabs-nav-container"><span unselectable="unselectable" class="ant-tabs-tab-prev ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-prev-icon"><span role="img" aria-label="left" class="anticon anticon-left ant-tabs-tab-prev-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path></svg></span></span></span><span unselectable="unselectable" class="ant-tabs-tab-next ant-tabs-tab-btn-disabled"><span class="ant-tabs-tab-next-icon"><span role="img" aria-label="right" class="anticon anticon-right ant-tabs-tab-next-icon-target"><svg viewBox="64 64 896 896" focusable="false" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" class=""><path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 00302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 000-50.4z"></path></svg></span></span></span>

View File

@ -259,6 +259,7 @@
> .@{tab-prefix-cls}-tabpane {
flex-shrink: 0;
width: 100%;
-webkit-backface-visibility: hidden;
opacity: 1;
transition: opacity 0.45s;
}

View File

@ -11,6 +11,7 @@ import {
getListeners,
} from '../_util/props-util';
import { cloneElement } from '../_util/vnode';
import isValid from '../_util/isValid';
import { ConfigConsumerProps } from '../config-provider';
import TabBar from './TabBar';
@ -49,10 +50,9 @@ export default {
methods: {
removeTab(targetKey, e) {
e.stopPropagation();
if (!targetKey) {
return;
if(isValid(targetKey)) {
this.$emit('edit', targetKey, 'remove');
}
this.$emit('edit', targetKey, 'remove');
},
handleChange(activeKey) {
this.$emit('change', activeKey);

View File

@ -4,18 +4,50 @@ exports[`renders ./antdv-demo/docs/tag/demo/basic.md correctly 1`] = `<div><span
exports[`renders ./antdv-demo/docs/tag/demo/checkable.md correctly 1`] = `
<div>
<div class="ant-tag ant-tag-checkable">Tag1</div>
<div class="ant-tag ant-tag-checkable">Tag2</div>
<div class="ant-tag ant-tag-checkable">Tag3</div>
<div class="ant-tag ant-tag-checkable">
Tag1
</div>
<div class="ant-tag ant-tag-checkable">
Tag2
</div>
<div class="ant-tag ant-tag-checkable">
Tag3
</div>
</div>
`;
exports[`renders ./antdv-demo/docs/tag/demo/colorful.md correctly 1`] = `
<div>
<h4 style="margin-bottom: 16px;">Presets:</h4>
<div><span class="ant-tag ant-tag-pink">pink</span> <span class="ant-tag ant-tag-red">red</span> <span class="ant-tag ant-tag-orange">orange</span> <span class="ant-tag ant-tag-green">green</span> <span class="ant-tag ant-tag-cyan">cyan</span> <span class="ant-tag ant-tag-blue">blue</span> <span class="ant-tag ant-tag-purple">purple</span></div>
<h4>Custom:</h4>
<div><span class="ant-tag ant-tag-has-color" style="background-color: rgb(255, 85, 0);">#f50</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(45, 183, 245);">#2db7f5</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(135, 208, 104);">#87d068</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(16, 142, 233);">#108ee9</span></div>
<h4 style="margin-bottom: 16px;">
Presets:
</h4>
<div><span class="ant-tag ant-tag-pink">
pink
</span> <span class="ant-tag ant-tag-red">
red
</span> <span class="ant-tag ant-tag-orange">
orange
</span> <span class="ant-tag ant-tag-green">
green
</span> <span class="ant-tag ant-tag-cyan">
cyan
</span> <span class="ant-tag ant-tag-blue">
blue
</span> <span class="ant-tag ant-tag-purple">
purple
</span></div>
<h4>
Custom:
</h4>
<div><span class="ant-tag ant-tag-has-color" style="background-color: rgb(255, 85, 0);">
#f50
</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(45, 183, 245);">
#2db7f5
</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(135, 208, 104);">
#87d068
</span> <span class="ant-tag ant-tag-has-color" style="background-color: rgb(16, 142, 233);">
#108ee9
</span></div>
</div>
`;

View File

@ -1,4 +1,3 @@
import * as moment from 'moment';
import omit from 'omit.js';
import VcTimePicker from '../vc-time-picker';
import LocaleReceiver from '../locale-provider/LocaleReceiver';
@ -8,7 +7,6 @@ import warning from '../_util/warning';
import ClockCircleOutlined from '@ant-design/icons-vue/ClockCircleOutlined';
import CloseCircleFilled from '@ant-design/icons-vue/CloseCircleFilled';
import enUS from './locale/en_US';
import interopDefault from '../_util/interopDefault';
import {
initDefaultProps,
hasProp,
@ -20,6 +18,12 @@ import {
import { cloneElement } from '../_util/vnode';
import { ConfigConsumerProps } from '../config-provider';
import Base from '../base';
import {
checkValidate,
stringToMoment,
momentToString,
TimeOrTimesType,
} from '../_util/moment-util';
export function generateShowHourMinuteSecond(format) {
// Ref: http://momentjs.com/docs/#/parsing/string-format/
@ -29,20 +33,11 @@ export function generateShowHourMinuteSecond(format) {
showSecond: format.indexOf('s') > -1,
};
}
function isMoment(value) {
if (Array.isArray(value)) {
return (
value.length === 0 || value.findIndex(val => val === undefined || moment.isMoment(val)) !== -1
);
} else {
return value === undefined || moment.isMoment(value);
}
}
const MomentType = PropTypes.custom(isMoment);
export const TimePickerProps = () => ({
size: PropTypes.oneOf(['large', 'default', 'small']),
value: MomentType,
defaultValue: MomentType,
value: TimeOrTimesType,
defaultValue: TimeOrTimesType,
open: PropTypes.bool,
format: PropTypes.string,
disabled: PropTypes.bool,
@ -73,6 +68,7 @@ export const TimePickerProps = () => ({
addon: PropTypes.any,
clearIcon: PropTypes.any,
locale: PropTypes.object,
valueFormat: PropTypes.string,
});
const TimePicker = {
@ -105,22 +101,23 @@ const TimePicker = {
configProvider: { default: () => ConfigConsumerProps },
},
data() {
const value = this.value || this.defaultValue;
if (value && !interopDefault(moment).isMoment(value)) {
throw new Error('The value/defaultValue of TimePicker must be a moment object, ');
}
const { value, defaultValue, valueFormat } = this;
checkValidate('TimePicker', defaultValue, 'defaultValue', valueFormat);
checkValidate('TimePicker', value, 'value', valueFormat);
warning(
!hasProp(this, 'allowEmpty'),
'TimePicker',
'`allowEmpty` is deprecated. Please use `allowClear` instead.',
);
return {
sValue: value,
sValue: stringToMoment(value || defaultValue, valueFormat),
};
},
watch: {
value(val) {
this.setState({ sValue: val });
checkValidate('TimePicker', val, 'value', this.valueFormat);
this.setState({ sValue: stringToMoment(val, this.valueFormat) });
},
},
methods: {
@ -156,7 +153,11 @@ const TimePicker = {
this.setState({ sValue: value });
}
const { format = 'HH:mm:ss' } = this;
this.$emit('change', value, (value && value.format(format)) || '');
this.$emit(
'change',
this.valueFormat ? momentToString(value, this.valueFormat) : value,
(value && value.format(format)) || '',
);
},
handleOpenClose({ open }) {

View File

@ -10,7 +10,9 @@ exports[`renders ./antdv-demo/docs/timeline/demo/alternate.md correctly 1`] = `
<li class="ant-timeline-item ant-timeline-item-right">
<div class="ant-timeline-item-tail"></div>
<div class="ant-timeline-item-head ant-timeline-item-head-green"></div>
<div class="ant-timeline-item-content">Solve initial network problems 2015-09-01</div>
<div class="ant-timeline-item-content">
Solve initial network problems 2015-09-01
</div>
</li>
<li class="ant-timeline-item ant-timeline-item-left">
<div class="ant-timeline-item-tail"></div>
@ -24,7 +26,9 @@ exports[`renders ./antdv-demo/docs/timeline/demo/alternate.md correctly 1`] = `
<li class="ant-timeline-item ant-timeline-item-right">
<div class="ant-timeline-item-tail"></div>
<div class="ant-timeline-item-head ant-timeline-item-head-red"></div>
<div class="ant-timeline-item-content">Network problems being solved 2015-09-01</div>
<div class="ant-timeline-item-content">
Network problems being solved 2015-09-01
</div>
</li>
<li class="ant-timeline-item ant-timeline-item-left">
<div class="ant-timeline-item-tail"></div>
@ -71,12 +75,16 @@ exports[`renders ./antdv-demo/docs/timeline/demo/color.md correctly 1`] = `
<li class="ant-timeline-item">
<div class="ant-timeline-item-tail"></div>
<div class="ant-timeline-item-head ant-timeline-item-head-green"></div>
<div class="ant-timeline-item-content">Create a services site 2015-09-01</div>
<div class="ant-timeline-item-content">
Create a services site 2015-09-01
</div>
</li>
<li class="ant-timeline-item">
<div class="ant-timeline-item-tail"></div>
<div class="ant-timeline-item-head ant-timeline-item-head-green"></div>
<div class="ant-timeline-item-content">Create a services site 2015-09-01</div>
<div class="ant-timeline-item-content">
Create a services site 2015-09-01
</div>
</li>
<li class="ant-timeline-item">
<div class="ant-timeline-item-tail"></div>

View File

@ -2241,7 +2241,7 @@ exports[`renders ./antdv-demo/docs/transfer/demo/search.md correctly 1`] = `
exports[`renders ./antdv-demo/docs/transfer/demo/table-transfer.md correctly 1`] = `
<div>
<div class="ant-transfer ant-transfer-customize-list" leftcolumns="[object Object],[object Object]" rightcolumns="[object Object]">
<div class="ant-transfer ant-transfer-customize-list">
<div class="ant-transfer-list">
<div class="ant-transfer-list-header"><span class="ant-transfer-list-header-selected"><span>14 items</span><span class="ant-transfer-list-header-title"></span></span></div>
<div class="ant-transfer-list-body">
@ -2409,3 +2409,51 @@ exports[`renders ./antdv-demo/docs/transfer/demo/table-transfer.md correctly 1`]
</div>
</div> <button type="button" role="switch" class="ant-switch" style="margin-top: 16px;"><span class="ant-switch-inner">disabled</span></button> <button type="button" role="switch" class="ant-switch" style="margin-top: 16px;"><span class="ant-switch-inner">showSearch</span></button></div>
`;
exports[`renders ./antdv-demo/docs/transfer/demo/tree-transfer.md correctly 1`] = `
<div>
<div class="tree-transfer ant-transfer ant-transfer-customize-list">
<div class="ant-transfer-list">
<div class="ant-transfer-list-header"><span class="ant-transfer-list-header-selected"><span>5 items</span><span class="ant-transfer-list-header-title"></span></span></div>
<div class="ant-transfer-list-body">
<div class="ant-transfer-list-body-customize-wrapper">
<ul role="tree" unselectable="on" class="ant-tree ant-tree-icon-hide ant-tree-block-node">
<li role="treeitem" class="ant-tree-treenode-switcher-open"><span class="ant-tree-switcher ant-tree-switcher-noop"></span><span class="ant-tree-checkbox"><span class="ant-tree-checkbox-inner"></span></span><span title="0-0" class="ant-tree-node-content-wrapper ant-tree-node-content-wrapper-normal"><span class="ant-tree-title">0-0</span></span></li>
<li role="treeitem" class="ant-tree-treenode-switcher-open"><span class="ant-tree-switcher ant-tree-switcher_open"><i aria-label="icon: caret-down" class="anticon anticon-caret-down ant-tree-switcher-icon"><svg viewBox="0 0 1024 1024" data-icon="caret-down" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class=""><path d="M840.4 300H183.6c-19.7 0-30.7 20.8-18.5 35l328.4 380.8c9.4 10.9 27.5 10.9 37 0L858.9 335c12.2-14.2 1.2-35-18.5-35z"></path></svg></i></span><span class="ant-tree-checkbox"><span class="ant-tree-checkbox-inner"></span></span><span title="0-1" class="ant-tree-node-content-wrapper ant-tree-node-content-wrapper-open"><span class="ant-tree-title">0-1</span></span>
<ul data-expanded="true" role="group" class="ant-tree-child-tree ant-tree-child-tree-open">
<li role="treeitem" class="ant-tree-treenode-switcher-open"><span class="ant-tree-switcher ant-tree-switcher-noop"></span><span class="ant-tree-checkbox"><span class="ant-tree-checkbox-inner"></span></span><span title="0-1-0" class="ant-tree-node-content-wrapper ant-tree-node-content-wrapper-normal"><span class="ant-tree-title">0-1-0</span></span></li>
<li role="treeitem" class="ant-tree-treenode-switcher-open"><span class="ant-tree-switcher ant-tree-switcher-noop"></span><span class="ant-tree-checkbox"><span class="ant-tree-checkbox-inner"></span></span><span title="0-1-1" class="ant-tree-node-content-wrapper ant-tree-node-content-wrapper-normal"><span class="ant-tree-title">0-1-1</span></span></li>
</ul>
</li>
<li role="treeitem" class="ant-tree-treenode-switcher-open"><span class="ant-tree-switcher ant-tree-switcher-noop"></span><span class="ant-tree-checkbox"><span class="ant-tree-checkbox-inner"></span></span><span title="0-3" class="ant-tree-node-content-wrapper ant-tree-node-content-wrapper-normal"><span class="ant-tree-title">0-3</span></span></li>
</ul>
</div>
</div>
</div>
<div class="ant-transfer-operation"><button disabled="disabled" type="button" class="ant-btn ant-btn-primary ant-btn-sm ant-btn-icon-only"><i aria-label="icon: right" class="anticon anticon-right"><svg viewBox="64 64 896 896" data-icon="right" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M765.7 486.8L314.9 134.7A7.97 7.97 0 0 0 302 141v77.3c0 4.9 2.3 9.6 6.1 12.6l360 281.1-360 281.1c-3.9 3-6.1 7.7-6.1 12.6V883c0 6.7 7.7 10.4 12.9 6.3l450.8-352.1a31.96 31.96 0 0 0 0-50.4z"></path>
</svg></i></button><button disabled="disabled" type="button" class="ant-btn ant-btn-primary ant-btn-sm ant-btn-icon-only"><i aria-label="icon: left" class="anticon anticon-left"><svg viewBox="64 64 896 896" data-icon="left" width="1em" height="1em" fill="currentColor" aria-hidden="true" focusable="false" class="">
<path d="M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 0 0 0 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z"></path>
</svg></i></button></div>
<div class="ant-transfer-list">
<div class="ant-transfer-list-header"><span class="ant-transfer-list-header-selected"><span>0 item</span><span class="ant-transfer-list-header-title"></span></span></div>
<div class="ant-transfer-list-body">
<div class="ant-transfer-list-body-not-found">
<div class="ant-empty ant-empty-normal ant-empty-small">
<div class="ant-empty-image"><svg width="64" height="41" viewBox="0 0 64 41" xmlns="http://www.w3.org/2000/svg">
<g transform="translate(0 1)" fill="none" fillRule="evenodd">
<ellipse fill="#F5F5F5" cx="32" cy="33" rx="32" ry="7"></ellipse>
<g fillRule="nonzero" stroke="#D9D9D9">
<path d="M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z"></path>
<path d="M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z" fill="#FAFAFA"></path>
</g>
</g>
</svg></div>
<p class="ant-empty-description">No Data</p>
</div>
</div>
</div>
</div>
</div>
</div>
`;

View File

@ -67,8 +67,21 @@ const TreeSelect = {
},
updateTreeData(treeData) {
const { $scopedSlots } = this;
const defaultFields = {
children: 'children',
title: 'title',
key: 'key',
label: 'label',
value: 'value',
};
const replaceFields = { ...defaultFields, ...this.$props.replaceFields };
return treeData.map(item => {
const { label, title, scopedSlots = {}, children } = item;
const { scopedSlots = {} } = item;
const label = item[replaceFields.label];
const title = item[replaceFields.title];
const value = item[replaceFields.value];
const key = item[replaceFields.key];
const children = item[replaceFields.children];
let newLabel = typeof label === 'function' ? label(this.$createElement) : label;
let newTitle = typeof title === 'function' ? title(this.$createElement) : title;
if (!newLabel && scopedSlots.label && $scopedSlots[scopedSlots.label]) {
@ -80,7 +93,9 @@ const TreeSelect = {
const treeNodeProps = {
...item,
title: newTitle || newLabel,
value,
dataRef: item,
key,
};
if (children) {
return { ...treeNodeProps, children: this.updateTreeData(children) };

View File

@ -53,4 +53,5 @@ export const TreeSelectProps = () => ({
treeDefaultExpandedKeys: PropTypes.array,
treeNodeFilterProp: PropTypes.string,
treeNodeLabelProp: PropTypes.string,
replaceFields: PropTypes.object.def({}),
});

View File

@ -1,4 +1,4 @@
// based on rc-calendar 9.15.8
// based on rc-calendar 9.15.10
import Vue from 'vue';
import ref from 'vue-ref';
import Calendar from './src/';

View File

@ -22,6 +22,7 @@ const getMomentObjectIfValid = date => {
};
const Calendar = {
name: 'Calendar',
props: {
locale: PropTypes.object.def(enUs),
format: PropTypes.oneOfType([PropTypes.string, PropTypes.arrayOf(PropTypes.string)]),
@ -54,6 +55,7 @@ const Calendar = {
clearIcon: PropTypes.any,
focusablePanel: PropTypes.bool.def(true),
inputMode: PropTypes.string,
inputReadOnly: PropTypes.bool,
},
mixins: [BaseMixin, CommonMixin, CalendarMixin],
@ -250,6 +252,7 @@ const Calendar = {
sMode,
renderFooter,
inputMode,
inputReadOnly,
monthCellRender,
monthCellContentRender,
$props: props,
@ -303,6 +306,7 @@ const Calendar = {
clearIcon={clearIcon}
onSelect={this.onDateInputSelect}
inputMode={inputMode}
inputReadOnly={inputReadOnly}
/>
) : null;
const children = [];
@ -355,6 +359,7 @@ const Calendar = {
showDateInput={props.showDateInput}
timePicker={timePicker}
selectedValue={sSelectedValue}
timePickerDisabled={!sSelectedValue}
value={sValue}
disabledDate={disabledDate}
okDisabled={

View File

@ -9,6 +9,7 @@ import CommonMixin from './mixin/CommonMixin';
import CalendarHeader from './full-calendar/CalendarHeader';
import enUs from './locale/en_US';
const FullCalendar = {
name: 'FullCalendar',
props: {
locale: PropTypes.object.def(enUs),
format: PropTypes.oneOfType([PropTypes.string, PropTypes.array]),

View File

@ -8,6 +8,7 @@ import CalendarMixin from './mixin/CalendarMixin';
import CommonMixin from './mixin/CommonMixin';
import enUs from './locale/en_US';
const MonthCalendar = {
name: 'MonthCalendar',
props: {
locale: PropTypes.object.def(enUs),
format: PropTypes.string,

View File

@ -7,17 +7,18 @@ import KeyCode from '../../_util/KeyCode';
import placements from './picker/placements';
import Trigger from '../../vc-trigger';
import moment from 'moment';
import { setTimeout } from 'timers';
function isMoment(value) {
if (Array.isArray(value)) {
return (
value.length === 0 || value.findIndex(val => val === undefined || moment.isMoment(val)) !== -1
);
} else {
return value === undefined || moment.isMoment(value);
}
}
const MomentType = PropTypes.custom(isMoment);
import isNil from 'lodash/isNil';
const TimeType = {
validator(value) {
if (Array.isArray(value)) {
return (
value.length === 0 || value.findIndex(val => !isNil(val) && !moment.isMoment(val)) === -1
);
} else {
return isNil(value) || moment.isMoment(value);
}
},
};
const Picker = {
name: 'Picker',
props: {
@ -34,8 +35,8 @@ const Picker = {
defaultOpen: PropTypes.bool.def(false),
prefixCls: PropTypes.string.def('rc-calendar-picker'),
placement: PropTypes.any.def('bottomLeft'),
value: PropTypes.oneOfType([MomentType, PropTypes.arrayOf(MomentType)]),
defaultValue: PropTypes.oneOfType([MomentType, PropTypes.arrayOf(MomentType)]),
value: TimeType,
defaultValue: TimeType,
align: PropTypes.object.def(() => ({})),
dropdownClassName: PropTypes.string,
dateRender: PropTypes.func,

View File

@ -119,6 +119,7 @@ const RangeCalendar = {
renderSidebar: PropTypes.func.def(() => null),
dateRender: PropTypes.func,
clearIcon: PropTypes.any,
inputReadOnly: PropTypes.bool,
},
mixins: [BaseMixin, CommonMixin],
@ -434,7 +435,7 @@ const RangeCalendar = {
const newValue = [sValue[0], value || sValue[1]];
this.__emit('panelChange', newValue, newMode);
const newState = {
sPanelTriggerSource: 'start',
sPanelTriggerSource: 'end',
};
if (!hasProp(this, 'mode')) {
newState.sMode = newMode;
@ -493,7 +494,7 @@ const RangeCalendar = {
// Adjust month if date not align
if (
!showTimePicker &&
panelTriggerSource !== 'end' &&
panelTriggerSource === 'start' &&
mode[0] === 'date' &&
mode[1] === 'date' &&
endValue.isSame(value[0], 'month')

View File

@ -26,6 +26,7 @@ const DateInput = {
selectedValue: PropTypes.object,
clearIcon: PropTypes.any,
inputMode: PropTypes.string,
inputReadOnly: PropTypes.bool,
},
data() {
@ -38,10 +39,10 @@ const DateInput = {
},
watch: {
selectedValue() {
this.updateState();
this.setState();
},
format() {
this.updateState();
this.setState();
},
},
@ -61,19 +62,21 @@ const DateInput = {
return dateInputInstance;
},
methods: {
updateState() {
getDerivedStateFromProps(nextProps, state) {
let newState = {};
if (dateInputInstance) {
cachedSelectionStart = dateInputInstance.selectionStart;
cachedSelectionEnd = dateInputInstance.selectionEnd;
}
// when popup show, click body will call this, bug!
const selectedValue = this.selectedValue;
if (!this.$data.hasFocus) {
this.setState({
const selectedValue = nextProps.selectedValue;
if (!state.hasFocus) {
newState = {
str: formatDate(selectedValue, this.format),
invalid: false,
});
};
}
return newState;
},
onClear() {
this.setState({
@ -84,7 +87,7 @@ const DateInput = {
onInputChange(e) {
const { value: str, composing } = e.target;
const { str: oldStr = '' } = this;
if (composing || oldStr === str) return;
if (e.isComposing || composing || oldStr === str) return;
const { disabledDate, format, selectedValue } = this.$props;
@ -166,7 +169,17 @@ const DateInput = {
},
render() {
const { invalid, str, locale, prefixCls, placeholder, disabled, showClear, inputMode } = this;
const {
invalid,
str,
locale,
prefixCls,
placeholder,
disabled,
showClear,
inputMode,
inputReadOnly,
} = this;
const clearIcon = getComponentFromProp(this, 'clearIcon');
const invalidClass = invalid ? `${prefixCls}-input-invalid` : '';
return (
@ -193,6 +206,7 @@ const DateInput = {
onFocus={this.onFocus}
onBlur={this.onBlur}
inputMode={inputMode}
readOnly={inputReadOnly}
/>
</div>
{showClear ? (

View File

@ -3,6 +3,7 @@ import BaseMixin from '../../../_util/BaseMixin';
import { getMonthName } from '../util';
const CalendarHeader = {
name: 'CalendarHeader',
mixins: [BaseMixin],
props: {
value: PropTypes.object,

View File

@ -5,15 +5,10 @@ import { getTodayTime, getMonthName } from '../util/index';
const ROW = 4;
const COL = 3;
function chooseMonth(month) {
const next = this.sValue.clone();
next.month(month);
this.setAndSelectValue(next);
}
function noop() {}
const MonthTable = {
name: 'MonthTable',
mixins: [BaseMixin],
props: {
cellRender: PropTypes.func,
@ -42,7 +37,11 @@ const MonthTable = {
});
this.__emit('select', value);
},
chooseMonth(month) {
const next = this.sValue.clone();
next.month(month);
this.setAndSelectValue(next);
},
months() {
const value = this.sValue;
const current = value.clone();
@ -107,7 +106,7 @@ const MonthTable = {
<td
role="gridcell"
key={monthData.value}
onClick={disabled ? noop : chooseMonth.bind(this, monthData.value)}
onClick={disabled ? noop : () => this.chooseMonth(monthData.value)}
title={monthData.title}
class={classNameMap}
>

View File

@ -33,6 +33,7 @@ const CalendarPart = {
clearIcon: PropTypes.any,
dateRender: PropTypes.func,
inputMode: PropTypes.string,
inputReadOnly: PropTypes.bool,
},
render() {
const { $props: props } = this;
@ -59,6 +60,7 @@ const CalendarPart = {
showWeekNumber,
showClear,
inputMode,
inputReadOnly,
} = props;
const clearIcon = getComponentFromProp(this, 'clearIcon');
const {
@ -112,11 +114,11 @@ const CalendarPart = {
value={value}
showClear={showClear || false}
selectedValue={selectedValue[index]}
onChange={inputSelect}
onChange={inputChange}
onSelect={inputSelect}
clearIcon={clearIcon}
inputMode={inputMode}
inputReadOnly={inputReadOnly}
/>
);
const headerProps = {

View File

@ -219,8 +219,10 @@ export default {
bodyProps,
forceRender,
closeIcon,
dialogStyle,
dialogClass,
} = this;
const dest = {};
const dest = { ...dialogStyle };
if (width !== undefined) {
dest.width = typeof width === 'number' ? `${width}px` : width;
}
@ -263,11 +265,10 @@ export default {
);
}
const style = { ...this.dialogStyle, ...dest };
const style = dest;
const sentinelStyle = { width: 0, height: 0, overflow: 'hidden' };
const cls = {
[prefixCls]: true,
...this.dialogClass,
};
const transitionName = this.getTransitionName();
const dialogElement = (
@ -277,7 +278,7 @@ export default {
role="document"
ref="dialog"
style={style}
class={cls}
class={[cls, dialogClass]}
forceRender={forceRender}
onMousedown={this.onDialogMouseDown}
>

Some files were not shown because too many files have changed in this diff Show More