From dbad9db68c49f32603b42b2a0f1851abe454cfbf Mon Sep 17 00:00:00 2001 From: Joe Haddad Date: Mon, 18 May 2020 17:44:18 -0400 Subject: [PATCH] Update Examples for Fast Refresh (#13068) --- .eslintrc.json | 22 +- examples/amp-story/pages/index.js | 230 ++++++------ examples/analyze-bundles/pages/about.js | 4 +- examples/analyze-bundles/pages/contact.js | 4 +- .../pages/about.js | 20 +- .../pages/about.js | 20 +- .../api-routes-rest/pages/api/user/[id].js | 2 +- examples/api-routes-rest/pages/api/users.js | 2 +- examples/api-routes/components/Person.js | 16 +- examples/api-routes/pages/api/people/[id].js | 2 +- examples/api-routes/pages/api/people/index.js | 2 +- examples/basic-css/pages/index.js | 36 +- examples/basic-export/pages/about.js | 4 +- examples/basic-export/pages/about2.js | 4 +- examples/basic-export/pages/day/index.js | 4 +- examples/basic-export/pages/index.js | 18 +- examples/cms-contentful/components/date.js | 12 +- .../cms-contentful/pages/api/exit-preview.js | 2 +- examples/cms-contentful/pages/api/preview.js | 2 +- .../cms-datocms/pages/api/exit-preview.js | 2 +- examples/cms-datocms/pages/api/preview.js | 2 +- .../cms-prismic/pages/api/exit-preview.js | 2 +- examples/cms-prismic/pages/api/preview.js | 2 +- examples/cms-sanity/pages/api/exit-preview.js | 2 +- examples/cms-sanity/pages/api/preview.js | 2 +- .../cms-takeshape/pages/api/exit-preview.js | 2 +- examples/cms-takeshape/pages/api/preview.js | 2 +- examples/custom-server-actionhero/pages/a.js | 4 +- examples/custom-server-actionhero/pages/b.js | 4 +- .../custom-server-actionhero/pages/index.js | 30 +- examples/custom-server-express/pages/a.js | 4 +- examples/custom-server-express/pages/b.js | 4 +- examples/custom-server-express/pages/index.js | 30 +- examples/custom-server-fastify/pages/a.js | 4 +- examples/custom-server-fastify/pages/b.js | 4 +- examples/custom-server-fastify/pages/index.js | 30 +- examples/custom-server-hapi/pages/a.js | 4 +- examples/custom-server-hapi/pages/b.js | 4 +- examples/custom-server-hapi/pages/index.js | 30 +- examples/custom-server-koa/pages/a.js | 4 +- examples/custom-server-koa/pages/b.js | 4 +- examples/custom-server-koa/pages/index.js | 30 +- examples/custom-server-polka/pages/a.js | 4 +- examples/custom-server-polka/pages/b.js | 4 +- examples/custom-server-polka/pages/index.js | 30 +- examples/custom-server-typescript/pages/a.tsx | 4 +- examples/custom-server-typescript/pages/b.tsx | 4 +- .../custom-server-typescript/pages/index.tsx | 30 +- examples/custom-server/pages/a.js | 4 +- examples/custom-server/pages/b.js | 4 +- examples/custom-server/pages/index.js | 30 +- examples/gh-pages/pages/about.js | 20 +- examples/gh-pages/pages/index.js | 18 +- examples/head-elements/pages/index.js | 22 +- .../layout-component/components/layout.js | 57 +-- examples/layout-component/pages/about.js | 12 +- examples/layout-component/pages/contact.js | 12 +- examples/layout-component/pages/index.js | 12 +- .../nested-components/components/paragraph.js | 24 +- examples/nested-components/components/post.js | 38 +- examples/nested-components/pages/index.js | 72 ++-- .../progressive-render/components/Loading.js | 28 +- examples/ssr-caching/pages/blog/[id].js | 2 +- examples/ssr-caching/pages/index.js | 40 ++- examples/svg-components/pages/index.js | 26 +- examples/using-preact/pages/about.js | 4 +- examples/using-preact/pages/index.js | 18 +- examples/using-router/components/Header.js | 14 +- examples/using-router/pages/about.js | 14 +- examples/using-router/pages/index.js | 14 +- .../components/header.js | 12 +- examples/with-absolute-imports/pages/index.js | 12 +- .../components/app.js | 2 +- .../pages/index.js | 2 +- examples/with-ant-design-less/pages/index.js | 132 ++++--- .../with-ant-design-mobile/pages/about.js | 16 +- .../with-ant-design-mobile/pages/index.js | 16 +- .../layouts/main.tsx | 22 +- .../pages/example.tsx | 4 +- .../pages/index.tsx | 118 +++--- .../pages/welcome.tsx | 4 +- examples/with-ant-design/pages/index.js | 163 +++++---- examples/with-aphrodite/pages/index.js | 12 +- examples/with-apollo/components/App.js | 92 ++--- .../with-apollo/components/ErrorMessage.js | 28 +- examples/with-app-layout/pages/_app.js | 12 +- examples/with-app-layout/pages/index.js | 2 +- .../components/ButtonComponent.js | 2 +- .../components/CheckboxComponent.js | 2 +- .../components/DateTimePickerComponent.js | 2 +- .../components/DropdownMenuComponent.js | 2 +- examples/with-atlaskit/pages/index.js | 2 +- examples/with-cerebral/components/Clock.js | 2 +- .../with-cerebral/modules/clock/provider.js | 2 +- .../with-cookie-auth-fauna/pages/api/login.js | 2 +- .../pages/api/logout.js | 2 +- .../pages/api/profile.js | 2 +- .../pages/api/signup.js | 2 +- examples/with-cxs/pages/index.js | 12 +- examples/with-docker/pages/index.js | 2 +- examples/with-dotenv/pages/index.js | 4 +- .../layouts/BlueLayout.js | 2 +- .../layouts/GreenLayout.js | 2 +- .../layouts/RedLayout.js | 2 +- .../with-dynamic-import/components/Header.js | 22 +- .../with-dynamic-import/components/hello1.js | 4 +- .../with-dynamic-import/components/hello2.js | 4 +- .../with-dynamic-import/components/hello3.js | 4 +- .../with-dynamic-import/components/hello4.js | 4 +- .../with-dynamic-import/components/hello5.js | 4 +- .../with-electron/renderer/pages/index.js | 2 +- .../pages/index.js | 2 +- examples/with-fela/pages/index.js | 14 +- .../utils/auth/initFirebase.js | 2 +- .../utils/auth/logout.js | 2 +- .../utils/middleware/commonMiddleware.js | 4 +- .../utils/middleware/cookieSession.js | 14 +- .../utils/middleware/cookieSessionRefresh.js | 10 +- .../utils/pageWrappers/withAuthUser.js | 2 +- .../utils/pageWrappers/withAuthUserInfo.js | 2 +- .../with-firebase-hosting/src/pages/about.jsx | 12 +- .../with-firebase-hosting/src/pages/index.jsx | 12 +- examples/with-firebase/context/userContext.js | 2 +- examples/with-firebase/pages/_app.js | 12 +- examples/with-firebase/pages/index.js | 2 +- examples/with-flow/components/Page.js | 21 +- examples/with-flow/pages/about.js | 12 +- examples/with-flow/pages/contact.js | 12 +- examples/with-flow/pages/index.js | 12 +- examples/with-glamor/pages/index.js | 4 +- .../components/Header.js | 48 +-- .../components/Page.js | 14 +- .../components/amp/AmpAnalytics.js | 32 +- .../components/amp/AmpIncludeCustomElement.js | 34 +- .../pages/_document.js | 2 +- .../with-google-analytics-amp/pages/about.js | 12 +- .../pages/contact.js | 2 +- .../with-google-analytics-amp/pages/index.js | 12 +- .../components/Header.js | 48 +-- .../with-google-analytics/components/Page.js | 14 +- .../with-google-analytics/pages/_document.js | 2 +- examples/with-google-analytics/pages/about.js | 12 +- .../with-google-analytics/pages/contact.js | 2 +- examples/with-google-analytics/pages/index.js | 12 +- .../with-graphql-faunadb/components/Footer.js | 340 +++++++++--------- .../components/GuestbookEntry.js | 106 +++--- .../components/GuestbookEntryDivider.js | 38 +- .../with-graphql-faunadb/components/Header.js | 32 +- .../with-graphql-faunadb/components/Hero.js | 2 +- examples/with-graphql-hooks/components/app.js | 86 ++--- .../components/error-message.js | 28 +- .../lib/with-graphql-client.js | 2 +- examples/with-graphql-hooks/pages/about.js | 52 +-- examples/with-graphql-hooks/pages/index.js | 14 +- examples/with-graphql-react/pages/index.js | 2 +- examples/with-grommet/pages/index.js | 20 +- examples/with-http2/pages/about.js | 18 +- examples/with-http2/pages/index.js | 18 +- examples/with-iron-session/lib/fetchJson.js | 2 +- examples/with-linaria/pages/index.js | 2 +- .../with-lingui/components/LangSwitcher.js | 2 +- examples/with-lingui/components/withLang.js | 5 +- examples/with-mdx/components/button.js | 30 +- .../pages/index.tsx | 2 +- .../pages/other.tsx | 2 +- .../pages/ssg.tsx | 2 +- .../pages/ssr.tsx | 2 +- .../with-mobx-state-tree/components/Clock.js | 2 +- examples/with-mobx-state-tree/pages/index.js | 2 +- examples/with-mobx-state-tree/pages/other.js | 2 +- examples/with-mobx-state-tree/pages/ssg.js | 2 +- examples/with-mobx-state-tree/pages/ssr.js | 2 +- examples/with-mocha/pages/index.js | 22 +- .../with-next-css/component/hello-world.js | 12 +- examples/with-next-css/pages/index.js | 12 +- examples/with-next-less/pages/index.js | 8 +- examples/with-next-offline/pages/index.js | 6 +- .../with-next-sass/components/hello-world.js | 12 +- examples/with-next-sass/pages/index.js | 12 +- examples/with-next-seo/pages/index.js | 84 ++--- examples/with-next-seo/pages/jsonld.js | 50 +-- examples/with-now-env/pages/index.js | 45 +-- examples/with-orbit-components/pages/index.js | 2 +- examples/with-patternfly/pages/index.js | 2 +- examples/with-polyfills/pages/index.js | 4 +- examples/with-portals-ssr/pages/_document.js | 2 +- examples/with-portals/pages/_document.js | 2 +- examples/with-prefetching/pages/about.js | 4 +- examples/with-prefetching/pages/contact.js | 4 +- examples/with-prefetching/pages/features.js | 4 +- examples/with-prefetching/pages/index.js | 4 +- examples/with-quill-js/pages/index.js | 6 +- examples/with-react-ga/pages/about.js | 4 +- examples/with-react-ga/pages/index.js | 18 +- examples/with-react-helmet/pages/_document.js | 2 +- examples/with-react-helmet/pages/index.js | 4 +- examples/with-react-intl/components/Layout.js | 2 +- examples/with-react-intl/components/Nav.js | 56 +-- examples/with-react-intl/pages/about.js | 2 +- examples/with-react-intl/pages/index.js | 2 +- examples/with-react-md/pages/index.js | 2 +- .../with-react-native-web/pages/alternate.js | 22 +- examples/with-react-toolbox/pages/index.js | 26 +- .../with-redux-persist/components/clock.js | 2 +- .../lib/with-redux-store.js | 2 +- .../with-redux-thunk/lib/with-redux-store.js | 2 +- examples/with-redux-thunk/store.js | 2 +- .../with-redux-wrapper/components/Clock.js | 2 +- .../with-redux-wrapper/store/count/reducer.js | 2 +- .../with-redux-wrapper/store/tick/reducer.js | 2 +- examples/with-relay-modern/lib/withData.js | 2 +- examples/with-rematch/shared/withRematch.js | 2 +- .../components/Header.js | 48 +-- .../with-segment-analytics/pages/_document.js | 2 +- .../with-segment-analytics/pages/about.js | 12 +- .../with-segment-analytics/pages/contact.js | 2 +- .../with-segment-analytics/pages/index.js | 12 +- examples/with-semantic-ui/pages/index.js | 84 ++--- examples/with-shallow-routing/pages/about.js | 4 +- .../with-static-export/components/post.js | 20 +- .../with-static-export/pages/post/[id].js | 31 +- .../packages/web-app/pages/index.js | 12 +- examples/with-storybook/components/index.js | 4 +- examples/with-storybook/pages/index.js | 15 +- .../with-strict-csp-hash/pages/_document.js | 2 +- examples/with-strict-csp-hash/pages/index.js | 4 +- examples/with-strict-csp/pages/index.js | 4 +- .../pages/api/checkout_sessions/[id].ts | 5 +- .../pages/api/checkout_sessions/index.ts | 5 +- .../pages/api/payment_intents/index.ts | 5 +- examples/with-style-sheet/pages/index.js | 14 +- .../with-styled-components-rtl/pages/index.js | 4 +- .../with-styled-components/pages/index.js | 4 +- .../with-styled-jsx-plugins/pages/index.js | 42 +-- examples/with-styled-jsx-scss/pages/index.js | 40 ++- examples/with-styletron/pages/index.js | 2 +- .../with-typescript-graphql/pages/about.tsx | 20 +- .../pages/index.tsx | 5 +- .../with-typescript/pages/api/users/index.ts | 4 +- examples/with-typestyle/pages/index.js | 4 +- .../pages/index.js | 20 +- .../pages/index.js | 6 +- .../pages/contact.js | 4 +- .../with-why-did-you-render/pages/_app.js | 4 +- .../with-why-did-you-render/pages/index.js | 12 +- examples/with-xstate/components/Counter.js | 22 +- .../packages/web-app/pages/index.js | 16 +- examples/with-zones/blog/pages/blog/index.js | 43 ++- .../with-zones/blog/pages/blog/post/[id].js | 2 +- examples/with-zones/home/components/Header.js | 4 +- examples/with-zones/home/pages/about.js | 4 +- examples/with-zones/home/pages/index.js | 28 +- package.json | 1 + yarn.lock | 67 +++- 254 files changed, 2338 insertions(+), 1888 deletions(-) diff --git a/.eslintrc.json b/.eslintrc.json index 97c7a3b57c..02206f92a1 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -1,7 +1,7 @@ { "root": true, "parser": "babel-eslint", - "plugins": ["react", "react-hooks", "jest"], + "plugins": ["react", "react-hooks", "jest", "import"], "env": { "browser": true, "commonjs": true, @@ -91,6 +91,26 @@ "packages/create-next-app/templates/**/*" ], "rules": { "react/react-in-jsx-scope": "off" } + }, + { + "files": ["examples/**/*"], + "rules": { + "import/no-anonymous-default-export": [ + "error", + { + // React components: + "allowArrowFunction": false, + "allowAnonymousClass": false, + "allowAnonymousFunction": false, + + // Non-React stuff: + "allowArray": true, + "allowCallExpression": true, + "allowLiteral": true, + "allowObject": true + } + ] + } } ], "rules": { diff --git a/examples/amp-story/pages/index.js b/examples/amp-story/pages/index.js index d7b9e05dcc..7446873a84 100644 --- a/examples/amp-story/pages/index.js +++ b/examples/amp-story/pages/index.js @@ -2,122 +2,124 @@ import Head from 'next/head' export const config = { amp: true } -export default () => ( - <> - - Example AMP Story in Next.js -