summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSamy Pesse <samypesse@gmail.com>2016-09-25 17:44:08 +0200
committerSamy Pesse <samypesse@gmail.com>2016-09-25 17:44:08 +0200
commite46cd78f803891dfc8c304ea8ec4bc813ad16b5b (patch)
tree7c3711581cb151fc58b186ea45a8f7f691d190e7
parentfab88bb47e71ad47c928198ddbf7a4d0527e81bb (diff)
downloadgitbook-e46cd78f803891dfc8c304ea8ec4bc813ad16b5b.zip
gitbook-e46cd78f803891dfc8c304ea8ec4bc813ad16b5b.tar.gz
gitbook-e46cd78f803891dfc8c304ea8ec4bc813ad16b5b.tar.bz2
Fix core reducer destroying other reducers
-rw-r--r--packages/gitbook-core/src/connect.js4
-rw-r--r--packages/gitbook-core/src/reducers/index.js17
-rw-r--r--packages/gitbook-plugin-theme-default/less/Sidebar.less5
-rw-r--r--packages/gitbook-plugin-theme-default/less/Summary.less37
-rw-r--r--packages/gitbook-plugin-theme-default/less/main.less7
-rw-r--r--packages/gitbook-plugin-theme-default/less/variables.less8
-rw-r--r--packages/gitbook-plugin-theme-default/package.json1
-rw-r--r--packages/gitbook-plugin-theme-default/src/components/Summary.js4
-rw-r--r--packages/gitbook-plugin-theme-default/src/index.js4
-rw-r--r--packages/gitbook/src/browser/render.js5
10 files changed, 75 insertions, 17 deletions
diff --git a/packages/gitbook-core/src/connect.js b/packages/gitbook-core/src/connect.js
index e30eb22..e18158e 100644
--- a/packages/gitbook-core/src/connect.js
+++ b/packages/gitbook-core/src/connect.js
@@ -6,8 +6,8 @@ const ReactRedux = require('react-redux');
* @param {Function} mapStateToProps
* @return {ReactComponent}
*/
-function connect(Component, mapStateToProps) {
- return ReactRedux.connect(mapStateToProps)(Component);
+function connect(Component, mapStateToProps, mapDispatchToProps) {
+ return ReactRedux.connect(mapStateToProps, mapDispatchToProps)(Component);
}
module.exports = connect;
diff --git a/packages/gitbook-core/src/reducers/index.js b/packages/gitbook-core/src/reducers/index.js
index 18c9f1e..49ea489 100644
--- a/packages/gitbook-core/src/reducers/index.js
+++ b/packages/gitbook-core/src/reducers/index.js
@@ -1,10 +1,11 @@
-const Redux = require('redux');
+const composeReducer = require('../composeReducer');
+const createReducer = require('../createReducer');
-module.exports = Redux.combineReducers({
- components: require('./components'),
- navigation: require('./navigation'),
+module.exports = composeReducer(
+ createReducer('components', require('./components')),
+ createReducer('navigation', require('./navigation')),
// GitBook JSON
- page: require('./page'),
- summary: require('./summary'),
- readme: require('./readme')
-});
+ createReducer('page', require('./page')),
+ createReducer('summary', require('./summary')),
+ createReducer('readme', require('./readme'))
+);
diff --git a/packages/gitbook-plugin-theme-default/less/Sidebar.less b/packages/gitbook-plugin-theme-default/less/Sidebar.less
index 2ef01d7..8e159dc 100644
--- a/packages/gitbook-plugin-theme-default/less/Sidebar.less
+++ b/packages/gitbook-plugin-theme-default/less/Sidebar.less
@@ -1,3 +1,6 @@
.Sidebar {
- width: @sidebar-width;
+ height: 100%;
+ background: @sidebar-background;
+ background: rgb(250, 250, 250);
+ border-right: 1px solid @sidebar-border-color;
}
diff --git a/packages/gitbook-plugin-theme-default/less/Summary.less b/packages/gitbook-plugin-theme-default/less/Summary.less
new file mode 100644
index 0000000..d7cdae5
--- /dev/null
+++ b/packages/gitbook-plugin-theme-default/less/Summary.less
@@ -0,0 +1,37 @@
+.Summary {
+
+}
+
+.SummaryPart {
+ > h1 {
+ padding: @summary-article-padding-v @summary-article-padding-h;
+ padding-top: 20px;
+ text-transform: uppercase;
+ color: @summary-header-color;
+ }
+}
+
+.SummaryArticles {
+ list-style: none;
+ margin: 0px;
+ padding: 0px;
+}
+
+.SummaryArticle {
+ list-style: none;
+
+ a, span {
+ display: block;
+ padding: @summary-article-padding-v @summary-article-padding-h;
+ border-bottom: none;
+ color: @summary-article-color;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ white-space: nowrap;
+ position: relative;
+ }
+
+ a:hover {
+ text-decoration: underline;
+ }
+}
diff --git a/packages/gitbook-plugin-theme-default/less/main.less b/packages/gitbook-plugin-theme-default/less/main.less
index b6229c6..957d229 100644
--- a/packages/gitbook-plugin-theme-default/less/main.less
+++ b/packages/gitbook-plugin-theme-default/less/main.less
@@ -2,3 +2,10 @@
@import "reset.less";
@import "variables.less";
+
+@import "Sidebar.less";
+@import "Summary.less";
+
+body, html {
+ margin: 0px;
+}
diff --git a/packages/gitbook-plugin-theme-default/less/variables.less b/packages/gitbook-plugin-theme-default/less/variables.less
index d169719..8f16632 100644
--- a/packages/gitbook-plugin-theme-default/less/variables.less
+++ b/packages/gitbook-plugin-theme-default/less/variables.less
@@ -1,2 +1,8 @@
// Sidebar
-@sidebar-width: 200px;
+@sidebar-background: rgb(250, 250, 250);
+@sidebar-border-color: rgba(0, 0, 0, 0.0666667);
+// Summary
+@summary-header-color: #939da3;
+@summary-article-padding-v: 10px;
+@summary-article-padding-h: 15px;
+@summary-article-color: hsl(207, 15%, 25%);
diff --git a/packages/gitbook-plugin-theme-default/package.json b/packages/gitbook-plugin-theme-default/package.json
index 04c0862..a98fae9 100644
--- a/packages/gitbook-plugin-theme-default/package.json
+++ b/packages/gitbook-plugin-theme-default/package.json
@@ -16,6 +16,7 @@
"gitbook-markdown-css": "^1.0.1",
"gitbook-plugin": "*",
"less": "^2.7.1",
+ "less-plugin-clean-css": "^1.5.1",
"preboot": "git+https://github.com/mdo/preboot.git#4aab4edd85f076d50609cbe28e4fe66cc0771701"
},
"scripts": {
diff --git a/packages/gitbook-plugin-theme-default/src/components/Summary.js b/packages/gitbook-plugin-theme-default/src/components/Summary.js
index e95b4b4..8c5c4a1 100644
--- a/packages/gitbook-plugin-theme-default/src/components/Summary.js
+++ b/packages/gitbook-plugin-theme-default/src/components/Summary.js
@@ -46,10 +46,12 @@ const SummaryPart = React.createClass({
const { part } = this.props;
const { title, articles } = part;
+ const titleEL = title ? <h2>{title}</h2> : null;
+
return (
<GitBook.InjectedComponent matching={{ role: 'summary:part' }} props={this.props}>
<div className="SummaryPart">
- {title}
+ {titleEL}
<SummaryArticles articles={articles} />
</div>
</GitBook.InjectedComponent>
diff --git a/packages/gitbook-plugin-theme-default/src/index.js b/packages/gitbook-plugin-theme-default/src/index.js
index 4eed252..64d4433 100644
--- a/packages/gitbook-plugin-theme-default/src/index.js
+++ b/packages/gitbook-plugin-theme-default/src/index.js
@@ -24,7 +24,7 @@ let ThemeBody = React.createClass({
<GitBook.Head
title={page.title}
titleTemplate="%s - GitBook" />
- <GitBook.ImportCSS href="gitbook/gitbook-plugin-theme-default/theme.css" />
+ <GitBook.ImportCSS href="gitbook/theme.css" />
<GitBook.FlexBox>
<GitBook.FlexLayout>
@@ -45,7 +45,7 @@ let ThemeBody = React.createClass({
});
ThemeBody = GitBook.connect(ThemeBody, ({page, summary, sidebar}) => {
- console.log('connect', sidebar.toJS())
+ console.log('connect!');
return { page, summary, sidebar };
});
diff --git a/packages/gitbook/src/browser/render.js b/packages/gitbook/src/browser/render.js
index 3696eba..64e8947 100644
--- a/packages/gitbook/src/browser/render.js
+++ b/packages/gitbook/src/browser/render.js
@@ -22,7 +22,7 @@ function HTML({head, innerHTML, payload, scripts}) {
{scripts.map(script => {
return <script key={script} src={script} />;
})}
- <script type="application/payload+json" dangerouslySetInnerHTML={{__html: JSON.stringify(payload)}} />
+ <script type="application/payload+json" dangerouslySetInnerHTML={{__html: payload}} />
<script type="application/javascript" dangerouslySetInnerHTML={{__html: BOOTSTRAP_CODE}} />
{head.script.toComponent()}
</body>
@@ -45,6 +45,7 @@ HTML.propTypes = {
function render(plugins, initialState) {
// Load the plugins
const browserPlugins = loadPlugins(plugins);
+ const payload = JSON.stringify(initialState);
const store = GitBook.createStore(browserPlugins, initialState);
const scripts = plugins.toList()
@@ -64,7 +65,7 @@ function render(plugins, initialState) {
const htmlEl = <HTML
head={head}
innerHTML={innerHTML}
- payload={initialState}
+ payload={payload}
scripts={['gitbook/core.js'].concat(scripts)}
/>;