diff --git a/CHANGELOG.md b/CHANGELOG.md
index 37a90a9fa4..431f8c72e2 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,6 +1,12 @@
---
order: 3
chinese: 更新日志
+toc: false
+timeline: true
+---
+
+你也可以查看 GitHub 上的 [发布日志](https://github.com/ant-design/ant-design/releases)。
+
---
## 0.12.14
@@ -347,8 +353,6 @@ chinese: 更新日志
> [0.11 升级指南](http://ant.design/docs/react/upgrade-notes#0-10-gt-0-11)
----
-
## 0.10.5
`2016-01-04`
diff --git a/site/common/styles/markdown.less b/site/common/styles/markdown.less
index 44a83b9725..75eeab6928 100644
--- a/site/common/styles/markdown.less
+++ b/site/common/styles/markdown.less
@@ -67,9 +67,9 @@
padding-left: 4px;
}
-.markdown > ul li p,
-.markdown > ol li p {
- margin: 0.6em 0;
+.markdown > ul li > p,
+.markdown > ol li > p {
+ margin: 0.2em 0;
}
.markdown ol > li {
@@ -244,3 +244,27 @@
height: 80px;
}
}
+
+// For Changelog
+.markdown {
+ ul.ant-timeline {
+ li.ant-timeline-item {
+ list-style: none;
+ margin: 0;
+ padding: 0 0 30px 0;
+ .ant-timeline-item-content {
+ font-size: 14px;
+ padding-left: 32px;
+ position: relative;
+ top: -15px;
+ > h2 {
+ margin-top: 0;
+ padding-top: 0.5px;
+ }
+ }
+ }
+ li.ant-timeline-item:first-child {
+ margin-top: 40px;
+ }
+ }
+}
diff --git a/site/component/Article/index.jsx b/site/component/Article/index.jsx
index bffac5181d..ebbbe06e91 100644
--- a/site/component/Article/index.jsx
+++ b/site/component/Article/index.jsx
@@ -1,7 +1,8 @@
-import React from 'react';
+import React, { Children, cloneElement } from 'react';
import { Link } from 'react-router';
import * as utils from '../utils';
import { getTagName, getChildren } from 'jsonml.js/lib/utils';
+import { Timeline } from 'antd';
export default class Article extends React.Component {
componentDidMount() {
@@ -11,7 +12,25 @@ export default class Article extends React.Component {
const { chinese, english } = this.props.content.meta;
utils.setTitle(`${chinese || english} - Ant Design`);
}
-
+ getTimelineFromArticle(article) {
+ const { content } = this.props;
+ const { meta } = content;
+ if (!meta.timeline) {
+ return article;
+ }
+ const timelineItems = [];
+ let temp = [];
+ Children.forEach(article.props.children, (child, i) => {
+ if (child.type === 'h2' && temp.length > 0) {
+ timelineItems.push({temp});
+ temp = [];
+ }
+ temp.push(child);
+ });
+ return cloneElement(article, {
+ children: {timelineItems},
+ });
+ }
render() {
const { content, location } = this.props;
const jumper = content.description.filter((node) => {
@@ -31,7 +50,7 @@ export default class Article extends React.Component {
return (
- { meta.chinese || meta.english }
+ {meta.english} {meta.chinese}
{
!meta.subtitle ? null :
{ meta.subtitle }
@@ -45,15 +64,15 @@ export default class Article extends React.Component {
)
}
{
- jumper.length > 0 ?
+ (jumper.length > 0 && meta.toc !== false) ?
:
null
}
{
- utils.jsonmlToComponent(
+ this.getTimelineFromArticle(utils.jsonmlToComponent(
location.pathname,
['section', { className: 'markdown' }].concat(description)
- )
+ ))
}
);
diff --git a/site/component/ComponentDoc/index.jsx b/site/component/ComponentDoc/index.jsx
index 5f4a9e8dc3..24daca2fc6 100644
--- a/site/component/ComponentDoc/index.jsx
+++ b/site/component/ComponentDoc/index.jsx
@@ -81,7 +81,7 @@ export default class ComponentDoc extends React.Component {
- {meta.chinese || meta.english}
+ {meta.english} {meta.chinese}
{
utils.jsonmlToComponent(
location.pathname,