aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/utils/documentation_container.ts
diff options
context:
space:
mode:
Diffstat (limited to 'packages/website/ts/utils/documentation_container.ts')
-rw-r--r--packages/website/ts/utils/documentation_container.ts35
1 files changed, 35 insertions, 0 deletions
diff --git a/packages/website/ts/utils/documentation_container.ts b/packages/website/ts/utils/documentation_container.ts
new file mode 100644
index 000000000..54e8a2c1a
--- /dev/null
+++ b/packages/website/ts/utils/documentation_container.ts
@@ -0,0 +1,35 @@
+import { DocsInfo, DocsInfoConfig } from '@0x/react-docs';
+import { Dispatch } from 'redux';
+import { DocPageProps } from 'ts/pages/documentation/doc_page';
+import { Dispatcher } from 'ts/redux/dispatcher';
+import { State } from 'ts/redux/reducer';
+import { ScreenWidths } from 'ts/types';
+import { Translate } from 'ts/utils/translate';
+
+export interface ConnectedState {
+ docsVersion: string;
+ availableDocVersions: string[];
+ docsInfo: DocsInfo;
+ translate: Translate;
+ screenWidth: ScreenWidths;
+}
+
+export interface ConnectedDispatch {
+ dispatcher: Dispatcher;
+}
+
+export const mapDispatchToProps = (dispatch: Dispatch<State>): ConnectedDispatch => ({
+ dispatcher: new Dispatcher(dispatch),
+});
+
+export const getMapStateToProps = (docsInfoConfig: DocsInfoConfig) => {
+ const docsInfo = new DocsInfo(docsInfoConfig);
+ const mapStateToProps = (state: State, _ownProps: DocPageProps): ConnectedState => ({
+ docsVersion: state.docsVersion,
+ availableDocVersions: state.availableDocVersions,
+ translate: state.translate,
+ docsInfo,
+ screenWidth: state.screenWidth,
+ });
+ return mapStateToProps;
+};