ECMaker / blog

https://blog.ec-maker.com/
0 stars 0 forks source link

Feature/#75_ToC_phoneView #76

Closed u-ecmaker closed 4 months ago

u-ecmaker commented 4 months ago

Feature/#75_ToC_phoneView #75

Updated

スマホ画面で

copilot

Layout.tsxからPostDetailTemplate.tsxへ状態を渡すためには、Reactのコンテクストを使用するのが一般的な方法です。これにより、アプリケーションの任意の深さのコンポーネント間で状態を共有することができます。

まず、新しいコンテクストを作成します。このコンテクストは、showTableOfContentsの状態とその状態を更新するための関数を提供します。

Layout.tsxからPostDetailTemplate.tsxへ状態を渡すためには、Reactのコンテクストを使用するのが一般的な方法です。これにより、アプリケーションの任意の深さのコンポーネント間で状態を共有することができます。

copilot

Reactの状態管理を使用して、TableOfContentsの表示/非表示を制御することができます。具体的には、useStateフックを使用して表示状態を管理し、ContentsButtonがクリックされたときにその状態を切り替えます。

github-actions[bot] commented 4 months ago

​ Netlify Build
──────────────────────────────────────────────────────────────── ​ ❯ Version @netlify/build 29.39.1 ​ ❯ Flags {} ​ ❯ Current directory /home/runner/work/blog/blog ​ ❯ Config file No config file was defined: using default values. ​ ❯ Context dev ​ ❯ Using Next.js Runtime - v4.41.3 ​ ❯ Outdated plugins

ecmaker@0.1.0 build next build

info - Linting and checking validity of types...

./src/hooks/apiHooks/fetcher.ts 36:28 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any 49:29 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/server/utils/algolia.ts 20:45 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/server/utils/ogp.ts 43:16 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any 43:57 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/utils/storage.ts 9:53 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

info - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules info - Creating an optimized production build... info - Compiled successfully info - Collecting page data... info - Generating static pages (0/31) MyInputFileListComponent inputFiles null MyInputFileComponent inputFiles [] MyInputMultiFileListComponent inputFiles null MyInputMultiFileListControlComponent inputFiles null info - Generating static pages (7/31) info - Generating static pages (15/31) info - Generating static pages (23/31) info - Generating static pages (31/31) info - Finalizing page optimization...

Route (pages) Size First Load JS ┌ ● / (ISR: 1 Seconds) (354 ms) 2.15 kB 168 kB ├ /_app 0 B 165 kB ├ ○ /404 480 B 166 kB ├ λ /api/auth/[...nextauth] 0 B 165 kB ├ λ /api/hello 0 B 165 kB ├ λ /api/notion-blog/comments 0 B 165 kB ├ λ /api/notion-blog/likes/[page_id] 0 B 165 kB ├ ℇ /api/notion-blog/og 0 B 165 kB ├ λ /api/ogp 0 B 165 kB ├ ○ /contact 6.23 kB 299 kB ├ ○ /login 1.99 kB 167 kB ├ ● /posts (ISR: 1 Seconds) (866 ms) 17 kB 213 kB ├ ● /posts/[slug] (ISR: 1 Seconds) (55771 ms) 25.7 kB 378 kB ├ ├ /posts/RDP_remote-desktop (8575 ms) ├ ├ /posts/logo (7997 ms) ├ ├ /posts/notion-blog_google-analytics (6516 ms) ├ ├ /posts/icon (4637 ms) ├ ├ /posts/nodejs_npm-audit-fix (4614 ms) ├ ├ /posts/kakuteishinkoku_r5 (3597 ms) ├ ├ /posts/notion-blog_image-issue (3358 ms) ├ └ [+9 more paths] (avg 1831 ms) ├ ● /profile 1.86 kB 236 kB ├ ● /sandbox 825 B 197 kB ├ ○ /sandbox/input-file-list 1.54 kB 223 kB ├ ○ /sandbox/react-hook-form 21.3 kB 243 kB ├ ○ /sandbox/react-memo 854 B 222 kB ├ ○ /sandbox/react-use-memo 696 B 222 kB ├ ○ /sandbox/rive 24.4 kB 246 kB ├ ○ /sandbox/svgr 2.09 kB 224 kB └ ○ /sandbox/swr 1.03 kB 228 kB

ℇ (Streaming) server-side renders with streaming (uses React 18 SSR streaming or Server Components) λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps) ○ (Static) automatically rendered as static HTML (uses no initial props) ● (SSG) automatically generated as static HTML + JSON (uses getStaticProps) (ISR) incremental static regeneration (uses revalidate in getStaticProps)

​ (build.command completed in 1m 14.8s) ​ @netlify/plugin-nextjs (onBuild event)
──────────────────────────────────────────────────────────────── ​ NextAuth package detected, NEXTAUTH_URL environment variable set by user in Netlify configuration to https://blog.ec-maker.com Moving static page files to serve from CDN... Moved 15 files to CDN The following routes use "revalidate" values of under 60 seconds, which is not supported. They will use a revalidate time of 60 seconds instead. ┌─────────┬─────────────────────────────────────────────┬────────────┐ │ (index) │ Route │ Revalidate │ ├─────────┼─────────────────────────────────────────────┼────────────┤ │ 0 │ '/' │ 1 │ │ 1 │ '/posts' │ 1 │ │ 2 │ '/posts/notion-blog_netlify-deploy-methods' │ 1 │ │ 3 │ '/posts/next.js_TipTap_plugin' │ 1 │ │ 4 │ '/posts/logo' │ 1 │ │ 5 │ '/posts/notion-blog_getting-started' │ 1 │ │ 6 │ '/posts/icon' │ 1 │ │ 7 │ '/posts/kakuteishinkoku_r5' │ 1 │ │ 8 │ '/posts/notion-blog_image-issue' │ 1 │ │ 9 │ '/posts/openAI-API' │ 1 │ │ 10 │ '/posts/notion-blog_google-analytics' │ 1 │ │ 11 │ '/posts/notion-blog_image-size' │ 1 │ │ 12 │ '/posts/schedule-git' │ 1 │ │ 13 │ '/posts/RDP_remote-desktop' │ 1 │ │ 14 │ '/posts/relocation' │ 1 │ │ 15 │ '/posts/BI_seikika' │ 1 │ │ 16 │ '/posts/nodejs_npm-audit-fix' │ 1 │ │ 17 │ '/posts/github-pr-auto-branch' │ 1 │ └─────────┴─────────────────────────────────────────────┴────────────┘ You are not using Netlify Edge Functions for image format detection. Set env var "NEXT_FORCE_EDGE_IMAGES=true" to enable. ✨ Deploying middleware and functions to Netlify Edge Functions ✨ ​ (@netlify/plugin-nextjs onBuild completed in 1s) ​ Functions bundling
──────────────────────────────────────────────────────────────── ​ Packaging Functions from .netlify/functions-internal directory:

Build logs: https://app.netlify.com/sites/blog-ecmaker/deploys/6629d6962c0b4945039127c0 Function logs: https://app.netlify.com/sites/blog-ecmaker/functions?scope=deploy:6629d6962c0b4945039127c0 Website draft URL: https://6629d6962c0b4945039127c0--blog-ecmaker.netlify.app

If everything looks good on your draft URL, deploy it to your main site URL with the --prod flag. netlify deploy --build --prod

github-actions[bot] commented 4 months ago

​ Netlify Build
──────────────────────────────────────────────────────────────── ​ ❯ Version @netlify/build 29.39.1 ​ ❯ Flags {} ​ ❯ Current directory /home/runner/work/blog/blog ​ ❯ Config file No config file was defined: using default values. ​ ❯ Context dev ​ ❯ Using Next.js Runtime - v4.41.3 ​ ❯ Outdated plugins

ecmaker@0.1.0 build next build

info - Linting and checking validity of types...

./src/hooks/apiHooks/fetcher.ts 36:28 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any 49:29 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/server/utils/algolia.ts 20:45 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/server/utils/ogp.ts 43:16 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any 43:57 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

./src/utils/storage.ts 9:53 Warning: Unexpected any. Specify a different type. @typescript-eslint/no-explicit-any

info - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules info - Creating an optimized production build... info - Compiled successfully info - Collecting page data... info - Generating static pages (0/31) MyInputFileListComponent inputFiles null MyInputFileComponent inputFiles [] MyInputMultiFileListComponent inputFiles null MyInputMultiFileListControlComponent inputFiles null info - Generating static pages (7/31) info - Generating static pages (15/31) info - Generating static pages (23/31) info - Generating static pages (31/31) info - Finalizing page optimization...

Route (pages) Size First Load JS ┌ ● / (ISR: 1 Seconds) (410 ms) 2.15 kB 168 kB ├ /_app 0 B 165 kB ├ ○ /404 480 B 166 kB ├ λ /api/auth/[...nextauth] 0 B 165 kB ├ λ /api/hello 0 B 165 kB ├ λ /api/notion-blog/comments 0 B 165 kB ├ λ /api/notion-blog/likes/[page_id] 0 B 165 kB ├ ℇ /api/notion-blog/og 0 B 165 kB ├ λ /api/ogp 0 B 165 kB ├ ○ /contact 6.23 kB 299 kB ├ ○ /login 1.99 kB 167 kB ├ ● /posts (ISR: 1 Seconds) (950 ms) 17 kB 213 kB ├ ● /posts/[slug] (ISR: 1 Seconds) (66648 ms) 25.7 kB 378 kB ├ ├ /posts/logo (16275 ms) ├ ├ /posts/notion-blog_image-issue (7291 ms) ├ ├ /posts/notion-blog_google-analytics (6935 ms) ├ ├ /posts/icon (5805 ms) ├ ├ /posts/RDP_remote-desktop (4198 ms) ├ ├ /posts/kakuteishinkoku_r5 (4101 ms) ├ ├ /posts/notion-blog_netlify-deploy-methods (3801 ms) ├ └ [+9 more paths] (avg 2027 ms) ├ ● /profile 1.86 kB 236 kB ├ ● /sandbox 825 B 197 kB ├ ○ /sandbox/input-file-list 1.54 kB 223 kB ├ ○ /sandbox/react-hook-form 21.3 kB 243 kB ├ ○ /sandbox/react-memo 854 B 222 kB ├ ○ /sandbox/react-use-memo 696 B 222 kB ├ ○ /sandbox/rive 24.4 kB 246 kB ├ ○ /sandbox/svgr 2.09 kB 224 kB └ ○ /sandbox/swr 1.03 kB 228 kB

ℇ (Streaming) server-side renders with streaming (uses React 18 SSR streaming or Server Components) λ (Server) server-side renders at runtime (uses getInitialProps or getServerSideProps) ○ (Static) automatically rendered as static HTML (uses no initial props) ● (SSG) automatically generated as static HTML + JSON (uses getStaticProps) (ISR) incremental static regeneration (uses revalidate in getStaticProps)

​ (build.command completed in 1m 16.6s) ​ @netlify/plugin-nextjs (onBuild event)
──────────────────────────────────────────────────────────────── ​ NextAuth package detected, NEXTAUTH_URL environment variable set by user in Netlify configuration to https://blog.ec-maker.com Moving static page files to serve from CDN... Moved 15 files to CDN The following routes use "revalidate" values of under 60 seconds, which is not supported. They will use a revalidate time of 60 seconds instead. ┌─────────┬─────────────────────────────────────────────┬────────────┐ │ (index) │ Route │ Revalidate │ ├─────────┼─────────────────────────────────────────────┼────────────┤ │ 0 │ '/' │ 1 │ │ 1 │ '/posts' │ 1 │ │ 2 │ '/posts/notion-blog_netlify-deploy-methods' │ 1 │ │ 3 │ '/posts/next.js_TipTap_plugin' │ 1 │ │ 4 │ '/posts/logo' │ 1 │ │ 5 │ '/posts/notion-blog_getting-started' │ 1 │ │ 6 │ '/posts/icon' │ 1 │ │ 7 │ '/posts/kakuteishinkoku_r5' │ 1 │ │ 8 │ '/posts/notion-blog_image-issue' │ 1 │ │ 9 │ '/posts/openAI-API' │ 1 │ │ 10 │ '/posts/notion-blog_google-analytics' │ 1 │ │ 11 │ '/posts/notion-blog_image-size' │ 1 │ │ 12 │ '/posts/schedule-git' │ 1 │ │ 13 │ '/posts/RDP_remote-desktop' │ 1 │ │ 14 │ '/posts/relocation' │ 1 │ │ 15 │ '/posts/BI_seikika' │ 1 │ │ 16 │ '/posts/nodejs_npm-audit-fix' │ 1 │ │ 17 │ '/posts/github-pr-auto-branch' │ 1 │ └─────────┴─────────────────────────────────────────────┴────────────┘ You are not using Netlify Edge Functions for image format detection. Set env var "NEXT_FORCE_EDGE_IMAGES=true" to enable. ✨ Deploying middleware and functions to Netlify Edge Functions ✨ ​ (@netlify/plugin-nextjs onBuild completed in 1s) ​ Functions bundling
──────────────────────────────────────────────────────────────── ​ Packaging Functions from .netlify/functions-internal directory:

Build logs: https://app.netlify.com/sites/blog-ecmaker/deploys/6629db3f6b4658402f28d6ce Function logs: https://app.netlify.com/sites/blog-ecmaker/functions?scope=deploy:6629db3f6b4658402f28d6ce Website draft URL: https://6629db3f6b4658402f28d6ce--blog-ecmaker.netlify.app

If everything looks good on your draft URL, deploy it to your main site URL with the --prod flag. netlify deploy --build --prod