aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2018-11-21 19:47:24 +0800
committerFabio Berger <me@fabioberger.com>2018-11-21 19:47:24 +0800
commitdb26ca977f56468e1ce7dbb30ed38e537912e545 (patch)
tree887a8fbdad96d66994f18f3d2a8ed9d4fe9867ae /packages/website/ts
parenta8803431b3e339552c989d7567bf6241f39a2bdf (diff)
downloaddexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar.gz
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar.bz2
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar.lz
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar.xz
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.tar.zst
dexon-sol-tools-db26ca977f56468e1ce7dbb30ed38e537912e545.zip
Create migrations doc reference page
Diffstat (limited to 'packages/website/ts')
-rw-r--r--packages/website/ts/containers/migrations_documentation.ts66
-rw-r--r--packages/website/ts/index.tsx7
-rw-r--r--packages/website/ts/pages/documentation/doc_page.tsx1
-rw-r--r--packages/website/ts/types.ts2
4 files changed, 76 insertions, 0 deletions
diff --git a/packages/website/ts/containers/migrations_documentation.ts b/packages/website/ts/containers/migrations_documentation.ts
new file mode 100644
index 000000000..02919e06e
--- /dev/null
+++ b/packages/website/ts/containers/migrations_documentation.ts
@@ -0,0 +1,66 @@
+import { DocsInfo, DocsInfoConfig, SupportedDocJson } from '@0x/react-docs';
+import * as React from 'react';
+import { connect } from 'react-redux';
+import { Dispatch } from 'redux';
+import { DocPage as DocPageComponent, DocPageProps } from 'ts/pages/documentation/doc_page';
+import { Dispatcher } from 'ts/redux/dispatcher';
+import { State } from 'ts/redux/reducer';
+import { DocPackages, ScreenWidths } from 'ts/types';
+import { Translate } from 'ts/utils/translate';
+
+/* tslint:disable:no-var-requires */
+const IntroMarkdown1 = require('md/docs/migrations/1/introduction');
+const InstallationMarkdown1 = require('md/docs/migrations/1/installation');
+/* tslint:enable:no-var-requires */
+
+const markdownSections = {
+ introduction: 'introduction',
+ installation: 'installation',
+};
+
+const docsInfoConfig: DocsInfoConfig = {
+ id: DocPackages.Migrations,
+ packageName: '@0x/migrations',
+ type: SupportedDocJson.TypeDoc,
+ displayName: 'Migrations',
+ packageUrl: 'https://github.com/0xProject/0x-monorepo',
+ markdownMenu: {
+ 'getting-started': [markdownSections.introduction, markdownSections.installation],
+ },
+ sectionNameToMarkdownByVersion: {
+ '2.0.4': {
+ [markdownSections.introduction]: IntroMarkdown1,
+ [markdownSections.installation]: InstallationMarkdown1,
+ },
+ },
+ markdownSections,
+};
+const docsInfo = new DocsInfo(docsInfoConfig);
+
+interface ConnectedState {
+ docsVersion: string;
+ availableDocVersions: string[];
+ docsInfo: DocsInfo;
+ translate: Translate;
+ screenWidth: ScreenWidths;
+}
+
+interface ConnectedDispatch {
+ dispatcher: Dispatcher;
+}
+
+const mapStateToProps = (state: State, _ownProps: DocPageProps): ConnectedState => ({
+ docsVersion: state.docsVersion,
+ availableDocVersions: state.availableDocVersions,
+ translate: state.translate,
+ docsInfo,
+ screenWidth: state.screenWidth,
+});
+
+const mapDispatchToProps = (dispatch: Dispatch<State>): ConnectedDispatch => ({
+ dispatcher: new Dispatcher(dispatch),
+});
+
+export const Documentation: React.ComponentClass<DocPageProps> = connect(mapStateToProps, mapDispatchToProps)(
+ DocPageComponent,
+);
diff --git a/packages/website/ts/index.tsx b/packages/website/ts/index.tsx
index 96e7184f8..faf7d8c87 100644
--- a/packages/website/ts/index.tsx
+++ b/packages/website/ts/index.tsx
@@ -40,6 +40,9 @@ const LazyZeroExJSDocumentation = createLazyComponent('Documentation', async ()
const LazyContractWrappersDocumentation = createLazyComponent('Documentation', async () =>
import(/* webpackChunkName: "contractWrapperDocs" */ 'ts/containers/contract_wrappers_documentation'),
);
+const LazyMigrationsDocumentation = createLazyComponent('Documentation', async () =>
+ import(/* webpackChunkName: "migrationsDocs" */ 'ts/containers/migrations_documentation'),
+);
const LazyOrderWatcherDocumentation = createLazyComponent('Documentation', async () =>
import(/* webpackChunkName: "orderWatcherDocs" */ 'ts/containers/order_watcher_documentation'),
);
@@ -103,6 +106,10 @@ render(
component={LazyContractWrappersDocumentation}
/>
<Route
+ path={`${WebsitePaths.Migrations}/:version?`}
+ component={LazyMigrationsDocumentation}
+ />
+ <Route
path={`${WebsitePaths.OrderWatcher}/:version?`}
component={LazyOrderWatcherDocumentation}
/>
diff --git a/packages/website/ts/pages/documentation/doc_page.tsx b/packages/website/ts/pages/documentation/doc_page.tsx
index adf2261b5..3ae071774 100644
--- a/packages/website/ts/pages/documentation/doc_page.tsx
+++ b/packages/website/ts/pages/documentation/doc_page.tsx
@@ -39,6 +39,7 @@ const docIdToSubpackageName: { [id: string]: string } = {
[DocPackages.OrderWatcher]: 'order-watcher',
[DocPackages.EthereumTypes]: 'ethereum-types',
[DocPackages.AssetBuyer]: 'asset-buyer',
+ [DocPackages.Migrations]: 'migrations',
};
export interface DocPageProps {
diff --git a/packages/website/ts/types.ts b/packages/website/ts/types.ts
index 444a8348d..89c477085 100644
--- a/packages/website/ts/types.ts
+++ b/packages/website/ts/types.ts
@@ -366,6 +366,7 @@ export enum WebsitePaths {
OrderUtils = '/docs/order-utils',
EthereumTypes = '/docs/ethereum-types',
AssetBuyer = '/docs/asset-buyer',
+ Migrations = '/docs/migrations',
Careers = '/careers',
}
@@ -383,6 +384,7 @@ export enum DocPackages {
ContractWrappers = 'CONTRACT_WRAPPERS',
OrderWatcher = 'ORDER_WATCHER',
AssetBuyer = 'ASSET_BUYER',
+ Migrations = 'MIGRATIONS',
}
export enum Key {