Jhernandez has uploaded a new change for review. ( https://gerrit.wikimedia.org/r/385175 )
Change subject: POC: changes over 384985/2 ...................................................................... POC: changes over 384985/2 * Status is optional and defaults to 200 on pages without getInitialProps https://gerrit.wikimedia.org/r/#/c/384985/2 Change-Id: I594fcbad8779e61d4e23bbd0fd538491fe94f068 --- M src/common/pages/about.tsx M src/common/pages/home.tsx M src/common/pages/style-guide.tsx M src/common/pages/summary.tsx M src/common/pages/wiki.tsx M src/common/routers/route.ts M src/common/routers/router.ts 7 files changed, 7 insertions(+), 21 deletions(-) git pull ssh://gerrit.wikimedia.org:29418/marvin refs/changes/75/385175/1 diff --git a/src/common/pages/about.tsx b/src/common/pages/about.tsx index a65193c..a906239 100644 --- a/src/common/pages/about.tsx +++ b/src/common/pages/about.tsx @@ -8,8 +8,6 @@ // is here for the VERSION usage in componentDidMount declare const VERSION: string; -export const status: number = 200; - export interface State { subtitle: string; } diff --git a/src/common/pages/home.tsx b/src/common/pages/home.tsx index d5a594c..c4657fe 100644 --- a/src/common/pages/home.tsx +++ b/src/common/pages/home.tsx @@ -13,8 +13,6 @@ import { PageTitleID } from "../models/page/title"; import Link from "../components/link"; -export const status: number = 200; - export const Component = (): JSX.Element => { const testSummaries = [ { diff --git a/src/common/pages/style-guide.tsx b/src/common/pages/style-guide.tsx index cfbb904..6d584af 100644 --- a/src/common/pages/style-guide.tsx +++ b/src/common/pages/style-guide.tsx @@ -6,8 +6,6 @@ import Separator from "../components/separator/separator"; import Header from "../components/header/header"; -export const status: number = 200; - const lorem = ` Lorem ipsum dolor sit amet consectetur adipisicing elit. Provident quisquam facilis ab suscipit quos deleniti similique officia cumque, dignissimos iusto diff --git a/src/common/pages/summary.tsx b/src/common/pages/summary.tsx index b80ce7f..f2ef0f1 100644 --- a/src/common/pages/summary.tsx +++ b/src/common/pages/summary.tsx @@ -26,7 +26,6 @@ summary: PageSummaryModel; } -export const props: true = true; export const getInitialProps = ( params: Params = {} ): Promise<HttpResponse<Props>> => diff --git a/src/common/pages/wiki.tsx b/src/common/pages/wiki.tsx index 86816cf..6703ff2 100644 --- a/src/common/pages/wiki.tsx +++ b/src/common/pages/wiki.tsx @@ -30,7 +30,6 @@ page: PageModel; } -export const props: true = true; export const getInitialProps = ( params: Params = {} ): Promise<HttpResponse<Props>> => diff --git a/src/common/routers/route.ts b/src/common/routers/route.ts index f59fcbb..728e8b9 100644 --- a/src/common/routers/route.ts +++ b/src/common/routers/route.ts @@ -30,10 +30,6 @@ Props = undefined > = | { - // todo: discriminate on getInitialProps === undefined. - // https://github.com/Microsoft/TypeScript/issues/12600 - props: true; - /** * A function that returns a Promise for the dependencies needed to * construct the view component such as a remote resource. This method @@ -47,12 +43,10 @@ Component: AnyComponent<Props, any>; } | { - props?: undefined; - getInitialProps?: undefined; /** The request status if Route.importModule() is successful. */ - status: number; + status?: number; Component: AnyComponent<undefined, any>; }; diff --git a/src/common/routers/router.ts b/src/common/routers/router.ts index 01a8871..21a172f 100644 --- a/src/common/routers/router.ts +++ b/src/common/routers/router.ts @@ -18,19 +18,19 @@ ): Promise<RouteResponse<Props>> { return route.importModule().then( module => - module.props + module.getInitialProps ? module.getInitialProps(params).then(({ data, status }) => ({ chunkName: route.chunkName, status, - Component: module.Component, + Component: module.Component as AnyComponent<Props, any>, props: data - })) + })) as any : { chunkName: route.chunkName, - status: module.status, + status: module.status || 200, Component: module.Component, - props: {} as Props - } as RouteResponse<Props> + props: undefined + } ); } -- To view, visit https://gerrit.wikimedia.org/r/385175 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: newchange Gerrit-Change-Id: I594fcbad8779e61d4e23bbd0fd538491fe94f068 Gerrit-PatchSet: 1 Gerrit-Project: marvin Gerrit-Branch: master Gerrit-Owner: Jhernandez <[email protected]> _______________________________________________ MediaWiki-commits mailing list [email protected] https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits
