问:
Next.js deploying to firebase issue
I got a next.js project. I can run it in my localhost but when I'm trying to deploy it to firebase or vercel I got the following error:
TypeError: c.props.href.startsWith is not a function

Why do you think this happens and what should I do in order to fix it and deploy it?

In case you want the check the whole error message I would put it below.

```[20:08:10.874] Vercel CLI 28.10.0
[20:08:11.197] WARNING: You should not upload the `.next` directory.
[20:08:11.204] Installing dependencies...
[20:08:14.158] npm WARN deprecated emailjs-com@3.2.0: The SDK name changed to @emailjs/browser
[20:08:17.637]
[20:08:17.638] added 245 packages in 6s
[20:08:17.638]
[20:08:17.638] 80 packages are looking for funding
[20:08:17.638]   run `npm fund` for details
[20:08:17.653] Detected Next.js version: 12.2.5
[20:08:17.656] Detected `package-lock.json` generated by npm 7+...
[20:08:17.656] Running "npm run build"
[20:08:17.961]
[20:08:17.961] > ryan@0.1.0 build
[20:08:17.961] > next build
[20:08:17.961]
[20:08:18.416] info  - SWC minify release candidate enabled. https://nextjs.link/swcmin
[20:08:18.438] Attention: Next.js now collects completely anonymous telemetry regarding usage.
[20:08:18.439] This information is used to shape Next.js' roadmap and prioritize features.
[20:08:18.439] You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
[20:08:18.439] https://nextjs.org/telemetry
[20:08:18.439]
[20:08:18.564] info  - Linting and checking validity of types...
[20:08:21.173]
[20:08:21.174] ./pages/_app.js
[20:08:21.174] 20:9  Warning: Custom fonts not added in `pages/_document.js` will only load for a single page. This is discouraged. See: https://nextjs.org/docs/messages/no-page-custom-font  @next/next/no-page-custom-font
[20:08:21.174]
[20:08:21.174] ./pages/index.js
[20:08:21.175] 101:9  Warning: Do not include stylesheets manually. See: https://nextjs.org/docs/messages/no-css-tags  @next/next/no-css-tags
[20:08:21.175] 102:9  Warning: Do not include stylesheets manually. See: https://nextjs.org/docs/messages/no-css-tags  @next/next/no-css-tags
[20:08:21.175]
[20:08:21.175] ./src/components/BlogPost.js
[20:08:21.176] 40:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.176] 147:25  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.176] 180:27  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.177] 213:25  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 312:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 365:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 381:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.180] 397:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.180]
[20:08:21.180] ./src/components/TypingAnimation.js
[20:08:21.180] 23:6  Warning: React Hook useEffect has a missing dependency: 'data'. Either include it or remove the dependency array.  react-hooks/exhaustive-deps
[20:08:21.181]
[20:08:21.181] ./src/components/popup/ImageGallery.js
[20:08:21.181] 31:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.181] 31:19  Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.  jsx-a11y/alt-text
[20:08:21.182] 94:6  Warning: React Hook useEffect has a missing dependency: 'imgContainer'. Either include it or remove the dependency array.  react-hooks/exhaustive-deps
[20:08:21.182]
[20:08:21.182] ./src/components/popup/ImageView.js
[20:08:21.183] 22:15  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.183] 22:15  Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.  jsx-a11y/alt-text
[20:08:21.183]
[20:08:21.183] ./src/components/sections/Blog.js
[20:08:21.184] 21:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.184] 56:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.184] 91:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.185] 126:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.185] 191:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.186] 217:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.187]
[20:08:21.187] ./src/components/sections/Clients.js
[20:08:21.187] 22:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 36:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 50:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 64:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188]
[20:08:21.189] ./src/components/sections/FunFact.js
[20:08:21.189] 114:17  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.189]
[20:08:21.190] ./src/components/sections/Quote.js
[20:08:21.190] 23:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.190]
[20:08:21.191] ./src/components/sections/recentWorks/RecentWorksDefault.js
[20:08:21.191] 107:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.191] 132:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.191] 157:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 176:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 184:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 254:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 281:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 303:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 325:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 333:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.194]
[20:08:21.196] ./src/components/sections/recentWorks/RecentWorksLawyer.js
[20:08:21.196] 108:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.197] 116:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.197] 152:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 160:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 198:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 206:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.199] 243:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.199] 251:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.201] 285:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.201] 293:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 328:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 336:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 371:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 379:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] ./src/components/sections/recentWorks/RecentWorksMusician.js
[20:08:21.203] 93:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 118:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 143:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 162:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 170:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 243:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 265:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204]
[20:08:21.204] ./src/components/sections/recentWorks/RecentWorksWritter.js
[20:08:21.204] 108:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 130:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 155:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 174:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 182:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 252:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 279:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205]
[20:08:21.206] info  - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules
[20:08:21.207] info  - Creating an optimized production build...
[20:08:27.853] info  - Compiled successfully
[20:08:27.853] info  - Collecting page data...
[20:08:30.587] info  - Generating static pages (0/6)
[20:08:30.601] TypeError: c.props.href.startsWith is not a function
[20:08:30.602]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.602]     at Array.some (<anonymous>)
[20:08:30.603]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.603]     at Array.map (<anonymous>)
[20:08:30.603]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.603]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.604]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.604]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.604]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.604]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.605]
[20:08:30.605] Error occurred prerendering page "/500". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.606] TypeError: c.props.href.startsWith is not a function
[20:08:30.606]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.606]     at Array.some (<anonymous>)
[20:08:30.607]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.608]     at Array.map (<anonymous>)
[20:08:30.608]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.609]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.609]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.609]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.610]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.610]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.610] info  - Generating static pages (1/6)
[20:08:30.611] info  - Generating static pages (2/6)
[20:08:30.611] TypeError: c.props.href.startsWith is not a function
[20:08:30.612]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.612]     at Array.some (<anonymous>)
[20:08:30.612]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.612]     at Array.map (<anonymous>)
[20:08:30.613]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.613]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.613]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.613]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.613]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.613]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.613]
[20:08:30.613] Error occurred prerendering page "/en". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.613] TypeError: c.props.href.startsWith is not a function
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.614]     at Array.some (<anonymous>)
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.614]     at Array.map (<anonymous>)
[20:08:30.614]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.614]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.614]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.614]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.614]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.614]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.614] TypeError: c.props.href.startsWith is not a function
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.614]     at Array.some (<anonymous>)
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.614]     at Array.map (<anonymous>)
[20:08:30.614]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.614]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.615]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.615]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.615]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.615]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.615]
[20:08:30.615] Error occurred prerendering page "/en/404". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.615] TypeError: c.props.href.startsWith is not a function
[20:08:30.615]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.615]     at Array.some (<anonymous>)
[20:08:30.615]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.615]     at Array.map (<anonymous>)
[20:08:30.615]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.615]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.615]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.615]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.615]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.616]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.616] TypeError: c.props.href.startsWith is not a function
[20:08:30.616]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.616]     at Array.some (<anonymous>)
[20:08:30.616]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.616]     at Array.map (<anonymous>)
[20:08:30.616]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.616]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.616]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.616]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.616]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.616]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.616]
[20:08:30.616] Error occurred prerendering page "/404". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.616] TypeError: c.props.href.startsWith is not a function
[20:08:30.617]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.617]     at Array.some (<anonymous>)
[20:08:30.617]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.617]     at Array.map (<anonymous>)
[20:08:30.617]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.617]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.617]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.617]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.617]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.617]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.618] TypeError: c.props.href.startsWith is not a function
[20:08:30.618]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.618]     at Array.some (<anonymous>)
[20:08:30.618]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.618]     at Array.map (<anonymous>)
[20:08:30.618]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.618]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.618]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.618]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.619]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.619]
[20:08:30.619] Error occurred prerendering page "/en/500". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.619] TypeError: c.props.href.startsWith is not a function
[20:08:30.619]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.619]     at Array.some (<anonymous>)
[20:08:30.619]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.619]     at Array.map (<anonymous>)
[20:08:30.619]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.619]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.619]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.619]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.619]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.620]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.620] info  - Generating static pages (4/6)
[20:08:30.721] TypeError: c.props.href.startsWith is not a function
[20:08:30.722]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.722]     at Array.some (<anonymous>)
[20:08:30.722]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.722]     at Array.map (<anonymous>)
[20:08:30.722]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.722]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.722]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.722]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.722]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.723]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.723]
[20:08:30.723] Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.723] TypeError: c.props.href.startsWith is not a function
[20:08:30.723]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.723]     at Array.some (<anonymous>)
[20:08:30.723]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.723]     at Array.map (<anonymous>)
[20:08:30.723]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.723]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.723]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.723]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.723]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.723]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.724] info  - Generating static pages (6/6)
[20:08:30.724]
[20:08:30.724] > Build error occurred
[20:08:30.726] Error: Export encountered errors on following paths:
[20:08:30.731]  /
[20:08:30.731]  /: /en
[20:08:30.731]  /_error: /404
[20:08:30.731]  /_error: /500
[20:08:30.731]  /_error: /en/404
[20:08:30.731]  /_error: /en/500
[20:08:30.731]     at /vercel/path0/node_modules/next/dist/export/index.js:395:19
[20:08:30.731]     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[20:08:30.731]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.731]     at async /vercel/path0/node_modules/next/dist/build/index.js:1118:21
[20:08:30.732]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.732]     at async /vercel/path0/node_modules/next/dist/build/index.js:995:17
[20:08:30.732]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.732]     at async Object.build [as default] (/vercel/path0/node_modules/next/dist/build/index.js:65:29)
[20:08:30.773] Error: Command "npm run build" exited with 1
```

I couldn't tried much because I dont understand the error that much.

Title: Next.js deploying to firebase issue

Body:
I got a next.js project. I can run it in my localhost but when I'm trying to deploy it to firebase or vercel I got the following error:
TypeError: c.props.href.startsWith is not a function

Why do you think this happens and what should I do in order to fix it and deploy it?

In case you want the check the whole error message I would put it below.

[20:08:10.874] Vercel CLI 28.10.0
[20:08:11.197] WARNING: You should not upload the `.next` directory.
[20:08:11.204] Installing dependencies...
[20:08:14.158] npm WARN deprecated emailjs-com@3.2.0: The SDK name changed to @emailjs/browser
[20:08:17.637]
[20:08:17.638] added 245 packages in 6s
[20:08:17.638]
[20:08:17.638] 80 packages are looking for funding
[20:08:17.638]   run `npm fund` for details
[20:08:17.653] Detected Next.js version: 12.2.5
[20:08:17.656] Detected `package-lock.json` generated by npm 7+...
[20:08:17.656] Running "npm run build"
[20:08:17.961]
[20:08:17.961] > ryan@0.1.0 build
[20:08:17.961] > next build
[20:08:17.961]
[20:08:18.416] info  - SWC minify release candidate enabled. https://nextjs.link/swcmin
[20:08:18.438] Attention: Next.js now collects completely anonymous telemetry regarding usage.
[20:08:18.439] This information is used to shape Next.js' roadmap and prioritize features.
[20:08:18.439] You can learn more, including how to opt-out if you'd not like to participate in this anonymous program, by visiting the following URL:
[20:08:18.439] https://nextjs.org/telemetry
[20:08:18.439]
[20:08:18.564] info  - Linting and checking validity of types...
[20:08:21.173]
[20:08:21.174] ./pages/_app.js
[20:08:21.174] 20:9  Warning: Custom fonts not added in `pages/_document.js` will only load for a single page. This is discouraged. See: https://nextjs.org/docs/messages/no-page-custom-font  @next/next/no-page-custom-font
[20:08:21.174]
[20:08:21.174] ./pages/index.js
[20:08:21.175] 101:9  Warning: Do not include stylesheets manually. See: https://nextjs.org/docs/messages/no-css-tags  @next/next/no-css-tags
[20:08:21.175] 102:9  Warning: Do not include stylesheets manually. See: https://nextjs.org/docs/messages/no-css-tags  @next/next/no-css-tags
[20:08:21.175]
[20:08:21.175] ./src/components/BlogPost.js
[20:08:21.176] 40:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.176] 147:25  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.176] 180:27  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.177] 213:25  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 312:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 365:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.179] 381:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.180] 397:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.180]
[20:08:21.180] ./src/components/TypingAnimation.js
[20:08:21.180] 23:6  Warning: React Hook useEffect has a missing dependency: 'data'. Either include it or remove the dependency array.  react-hooks/exhaustive-deps
[20:08:21.181]
[20:08:21.181] ./src/components/popup/ImageGallery.js
[20:08:21.181] 31:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.181] 31:19  Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.  jsx-a11y/alt-text
[20:08:21.182] 94:6  Warning: React Hook useEffect has a missing dependency: 'imgContainer'. Either include it or remove the dependency array.  react-hooks/exhaustive-deps
[20:08:21.182]
[20:08:21.182] ./src/components/popup/ImageView.js
[20:08:21.183] 22:15  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.183] 22:15  Warning: img elements must have an alt prop, either with meaningful text, or an empty string for decorative images.  jsx-a11y/alt-text
[20:08:21.183]
[20:08:21.183] ./src/components/sections/Blog.js
[20:08:21.184] 21:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.184] 56:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.184] 91:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.185] 126:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.185] 191:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.186] 217:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.187]
[20:08:21.187] ./src/components/sections/Clients.js
[20:08:21.187] 22:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 36:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 50:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188] 64:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.188]
[20:08:21.189] ./src/components/sections/FunFact.js
[20:08:21.189] 114:17  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.189]
[20:08:21.190] ./src/components/sections/Quote.js
[20:08:21.190] 23:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.190]
[20:08:21.191] ./src/components/sections/recentWorks/RecentWorksDefault.js
[20:08:21.191] 107:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.191] 132:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.191] 157:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 176:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 184:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.192] 254:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 281:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 303:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 325:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.193] 333:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.194]
[20:08:21.196] ./src/components/sections/recentWorks/RecentWorksLawyer.js
[20:08:21.196] 108:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.197] 116:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.197] 152:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 160:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 198:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.198] 206:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.199] 243:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.199] 251:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.201] 285:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.201] 293:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 328:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 336:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 371:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.202] 379:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] ./src/components/sections/recentWorks/RecentWorksMusician.js
[20:08:21.203] 93:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 118:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 143:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.203] 162:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 170:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 243:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 265:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204]
[20:08:21.204] ./src/components/sections/recentWorks/RecentWorksWritter.js
[20:08:21.204] 108:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.204] 130:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 155:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 174:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 182:23  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 252:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205] 279:19  Warning: Do not use `<img>` element. Use `<Image />` from `next/image` instead. See: https://nextjs.org/docs/messages/no-img-element  @next/next/no-img-element
[20:08:21.205]
[20:08:21.206] info  - Need to disable some ESLint rules? Learn more here: https://nextjs.org/docs/basic-features/eslint#disabling-rules
[20:08:21.207] info  - Creating an optimized production build...
[20:08:27.853] info  - Compiled successfully
[20:08:27.853] info  - Collecting page data...
[20:08:30.587] info  - Generating static pages (0/6)
[20:08:30.601] TypeError: c.props.href.startsWith is not a function
[20:08:30.602]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.602]     at Array.some (<anonymous>)
[20:08:30.603]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.603]     at Array.map (<anonymous>)
[20:08:30.603]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.603]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.604]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.604]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.604]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.604]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.605]
[20:08:30.605] Error occurred prerendering page "/500". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.606] TypeError: c.props.href.startsWith is not a function
[20:08:30.606]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.606]     at Array.some (<anonymous>)
[20:08:30.607]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.608]     at Array.map (<anonymous>)
[20:08:30.608]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.609]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.609]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.609]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.610]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.610]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.610] info  - Generating static pages (1/6)
[20:08:30.611] info  - Generating static pages (2/6)
[20:08:30.611] TypeError: c.props.href.startsWith is not a function
[20:08:30.612]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.612]     at Array.some (<anonymous>)
[20:08:30.612]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.612]     at Array.map (<anonymous>)
[20:08:30.613]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.613]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.613]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.613]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.613]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.613]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.613]
[20:08:30.613] Error occurred prerendering page "/en". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.613] TypeError: c.props.href.startsWith is not a function
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.614]     at Array.some (<anonymous>)
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.614]     at Array.map (<anonymous>)
[20:08:30.614]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.614]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.614]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.614]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.614]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.614]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.614] TypeError: c.props.href.startsWith is not a function
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.614]     at Array.some (<anonymous>)
[20:08:30.614]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.614]     at Array.map (<anonymous>)
[20:08:30.614]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.614]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.615]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.615]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.615]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.615]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.615]
[20:08:30.615] Error occurred prerendering page "/en/404". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.615] TypeError: c.props.href.startsWith is not a function
[20:08:30.615]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.615]     at Array.some (<anonymous>)
[20:08:30.615]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.615]     at Array.map (<anonymous>)
[20:08:30.615]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.615]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.615]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.615]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.615]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.616]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.616] TypeError: c.props.href.startsWith is not a function
[20:08:30.616]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.616]     at Array.some (<anonymous>)
[20:08:30.616]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.616]     at Array.map (<anonymous>)
[20:08:30.616]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.616]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.616]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.616]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.616]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.616]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.616]
[20:08:30.616] Error occurred prerendering page "/404". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.616] TypeError: c.props.href.startsWith is not a function
[20:08:30.617]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.617]     at Array.some (<anonymous>)
[20:08:30.617]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.617]     at Array.map (<anonymous>)
[20:08:30.617]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.617]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.617]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.617]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.617]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.617]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.618] TypeError: c.props.href.startsWith is not a function
[20:08:30.618]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.618]     at Array.some (<anonymous>)
[20:08:30.618]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.618]     at Array.map (<anonymous>)
[20:08:30.618]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.618]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.618]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.618]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.619]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.619]
[20:08:30.619] Error occurred prerendering page "/en/500". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.619] TypeError: c.props.href.startsWith is not a function
[20:08:30.619]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.619]     at Array.some (<anonymous>)
[20:08:30.619]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.619]     at Array.map (<anonymous>)
[20:08:30.619]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.619]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.619]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.619]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.619]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.620]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.620] info  - Generating static pages (4/6)
[20:08:30.721] TypeError: c.props.href.startsWith is not a function
[20:08:30.722]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.722]     at Array.some (<anonymous>)
[20:08:30.722]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.722]     at Array.map (<anonymous>)
[20:08:30.722]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.722]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.722]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.722]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.722]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.723]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.723]
[20:08:30.723] Error occurred prerendering page "/". Read more: https://nextjs.org/docs/messages/prerender-error
[20:08:30.723] TypeError: c.props.href.startsWith is not a function
[20:08:30.723]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:43
[20:08:30.723]     at Array.some (<anonymous>)
[20:08:30.723]     at /vercel/path0/node_modules/next/dist/shared/lib/head.js:120:15
[20:08:30.723]     at Array.map (<anonymous>)
[20:08:30.723]     at reduceComponents (/vercel/path0/node_modules/next/dist/shared/lib/head.js:113:146)
[20:08:30.723]     at emitChange (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:13:36)
[20:08:30.723]     at SideEffect (/vercel/path0/node_modules/next/dist/shared/lib/side-effect.js:19:9)
[20:08:30.723]     at Wc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:68:44)
[20:08:30.723]     at Zc (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:70:253)
[20:08:30.723]     at Z (/vercel/path0/node_modules/react-dom/cjs/react-dom-server.browser.production.min.js:76:89)
[20:08:30.724] info  - Generating static pages (6/6)
[20:08:30.724]
[20:08:30.724] > Build error occurred
[20:08:30.726] Error: Export encountered errors on following paths:
[20:08:30.731]  /
[20:08:30.731]  /: /en
[20:08:30.731]  /_error: /404
[20:08:30.731]  /_error: /500
[20:08:30.731]  /_error: /en/404
[20:08:30.731]  /_error: /en/500
[20:08:30.731]     at /vercel/path0/node_modules/next/dist/export/index.js:395:19
[20:08:30.731]     at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[20:08:30.731]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.731]     at async /vercel/path0/node_modules/next/dist/build/index.js:1118:21
[20:08:30.732]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.732]     at async /vercel/path0/node_modules/next/dist/build/index.js:995:17
[20:08:30.732]     at async Span.traceAsyncFn (/vercel/path0/node_modules/next/dist/trace/trace.js:79:20)
[20:08:30.732]     at async Object.build [as default] (/vercel/path0/node_modules/next/dist/build/index.js:65:29)
[20:08:30.773] Error: Command "npm run build" exited with 1

I couldn't tried much because I dont understand the error that much.


来源: stackexchange

问:
MongoDB ignore timestamp time in query
I store dates using timestamp format like this: 1672748540
Is there a way to search for a timestamp but ignore the time?

This is the document:

{
  "services": [
    {
      "plannedDates": [
        {"start": 1672743600, "end": 1672750800}
      ]
    }
  ]
}
```
<p>This is what Im trying to do:</p>
<pre class="lang-json prettyprint-override"><code>{ "$match": {
    "$or": [
            {
                "services.plannedDates.start": { "$lte": %[1]d },
                "services.plannedDates.end": { "$gte": %[1]d }
            }
    ]
}}

</code>```

Thank you

ContentLicense: CC BY-SA 4.0

Title: MongoDB ignore timestamp time in query

Body:
I store dates using timestamp format like this: 1672748540
Is there a way to search for a timestamp but ignore the time?

This is the document:

{
  "services": [
    {
      "plannedDates": [
        {"start": 1672743600, "end": 1672750800}
      ]
    }
  ]
}

This is what Im trying to do:

{ "$match": {
    "$or": [
            {
                "services.plannedDates.start": { "$lte": %[1]d },
                "services.plannedDates.end": { "$gte": %[1]d }
            }
    ]
}}

Thank you


问:
How to make an invalid url in spring boot to return JSON response instead of index.html
i want to make my application to return JSON instead of html response when trying to get localhost:8080, but i cannot achieve the desired result because this is before the

```<code> servlet:
    context-path: /v0
</code>```

and everything before "/v0" is returning index.html

I want everything before "/v0" to return something like this:

```<code>{
  "timestamp": "2022-12-01T12:59:51.832+00:00",
  "status": 404,
  "error": "Not Found",
  "path": "/"
}
</code>```

I tried to add this in my @ControllerAdvice

```<code>@ExceptionHandler(NoHandlerFoundException.class)
public ResponseEntity<Map<String, Object>> unhandledPath(Exception e) {
  Map<String, Object> errorInfo = new LinkedHashMap<>();
  errorInfo.put("timestamp", new Date());
  errorInfo.put("httpCode", HttpStatus.NOT_FOUND.value());
  errorInfo.put("httpStatus", HttpStatus.NOT_FOUND.getReasonPhrase());
  errorInfo.put("errorMessage", e.getMessage());
  return new ResponseEntity<Map<String, Object>>(errorInfo, HttpStatus.NOT_FOUND);
}
</code>```

But it does't return the json instead returns this:

https://i.stack.imgur.com/FlxiQ.png

Body:
i want to make my application to return JSON instead of html response when trying to get localhost:8080, but i cannot achieve the desired result because this is before the

 servlet:
    context-path: /v0

and everything before "/v0" is returning index.html

I want everything before "/v0" to return something like this:

{
  "timestamp": "2022-12-01T12:59:51.832+00:00",
  "status": 404,
  "error": "Not Found",
  "path": "/"
}

I tried to add this in my @ControllerAdvice

@ExceptionHandler(NoHandlerFoundException.class)
public ResponseEntity<Map<String, Object>> unhandledPath(Exception e) {
  Map<String, Object> errorInfo = new LinkedHashMap<>();
  errorInfo.put("timestamp", new Date());
  errorInfo.put("httpCode", HttpStatus.NOT_FOUND.value());
  errorInfo.put("httpStatus", HttpStatus.NOT_FOUND.getReasonPhrase());
  errorInfo.put("errorMessage", e.getMessage());
  return new ResponseEntity<Map<String, Object>>(errorInfo, HttpStatus.NOT_FOUND);
}

But it does't return the json instead returns this:

https://i.stack.imgur.com/FlxiQ.png


问:
How can I create a transition effect with winapi like css
I've been thinking about creating transitions using the Win32 API, like with CSS.

Here's the html code:

<button class="btn1">Button</button>
```
<p>Here's the CSS code:</p>
<pre class="lang-css prettyprint-override"><code>.btn1 {
    transition: .3s;
}

.btn1:hover {
    background: #000000;
}
</code>```

How can I do something like this with the Win32 API?

Body:
I've been thinking about creating transitions using the Win32 API, like with CSS.

Here's the html code:

<button class="btn1">Button</button>

Here's the CSS code:

.btn1 {
    transition: .3s;
}

.btn1:hover {
    background: #000000;
}

How can I do something like this with the Win32 API?


问:
Linked List how to know if two identical nodes are different, i.e. different nodes saved in different parts of memory or a reference to the same node

Ive recently started learning about linked lists and I have a confusion. For the implementation, Im going forward with the Linked list and node implementation used in [linked list problems in leetcode](https://leetcode.com/problems/intersection-of-two-linked-lists/description/).
```<code># Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None
</code>```

Here, Ive solved  this problem by referring to its existing solution.

```<code>class Solution:
    def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:
        # creating a dummy node for storing the answers
        dummy = ListNode()
        tail = dummy
        t2 = tail
        print('PREV')
        print(dummy, tail, t2)
        print('------------------')
        while list1 and list2: # keep looping till one of the lists ends
            # if list1 is less than list2
            if list1.val<list2.val:
                # we add the list1 value to the tail and update the list1 to the next value
                tail.next = list1
                list1 = list1.next
                print('if', tail, '||' ,dummy)
            else:
                # if it is the other way round or they contain the same values, we are storing the list2 node as next and updating
                tail.next = list2
                list2 = list2.next
                print('else', tail, '||', dummy)
            # updating the tail
            tail = tail.next
            print("UPDATED TAIL:", tail)
            print(dummy)
            print('###########')

        # now, if there are mode nodes in one of the two lists
        if list1:
            tail.next = list1
        elif list2:
            tail.next = list2
        print('------------------------')
        print(list1, list2)
        print(tail)
        print(dummy)
        print(t2)
        # returning
        return dummy.next
</code>```

Ideally, the solution does not make use of t2 anywhere, I just created it for the same of my understanding. The output log for this code is given below:

```<code>PREV
ListNode{val: 0, next: None} ListNode{val: 0, next: None} ListNode{val: 0, next: None}
------------------
else ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}
UPDATED TAIL: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}
###########
if ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
UPDATED TAIL: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
###########
if ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
UPDATED TAIL: ListNode{val: 2, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
###########
else ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
UPDATED TAIL: ListNode{val: 3, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
###########
else ListNode{val: 3, next: ListNode{val: 4, next: None}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
UPDATED TAIL: ListNode{val: 4, next: None}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
###########
------------------------
After loop
ListNode{val: 4, next: None} None
ListNode{val: 4, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: ListNode{val: 4, next: None}}}}}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: ListNode{val: 4, next: None}}}}}}}
</code>```

When I look at this, I can see and understand what exatly is happening in each iteration. I can see that the lists dummy and tail are being simultaneoulsy updated in each iteration. To be specific,  we are updating the tail and it's next part and that consequently updates the dummy's latest head's next pointer.
What im confused about is this, Why is this hapenning? Arent these two lists different, why does updating the next of one update the other simultaneously?

I would like to understand what exactly is going on on a lower level in the memory when we do this operation?

Thanks

Body:
Ive recently started learning about linked lists and I have a confusion. For the implementation, Im going forward with the Linked list and node implementation used in [linked list problems in leetcode](https://leetcode.com/problems/intersection-of-two-linked-lists/description/).

# Definition for singly-linked list.
# class ListNode:
#     def __init__(self, x):
#         self.val = x
#         self.next = None

Here, Ive solved  this problem by referring to its existing solution.

class Solution:
    def mergeTwoLists(self, list1: Optional[ListNode], list2: Optional[ListNode]) -> Optional[ListNode]:
        # creating a dummy node for storing the answers
        dummy = ListNode()
        tail = dummy
        t2 = tail
        print('PREV')
        print(dummy, tail, t2)
        print('------------------')
        while list1 and list2: # keep looping till one of the lists ends
            # if list1 is less than list2
            if list1.val<list2.val:
                # we add the list1 value to the tail and update the list1 to the next value
                tail.next = list1
                list1 = list1.next
                print('if', tail, '||' ,dummy)
            else:
                # if it is the other way round or they contain the same values, we are storing the list2 node as next and updating
                tail.next = list2
                list2 = list2.next
                print('else', tail, '||', dummy)
            # updating the tail
            tail = tail.next
            print("UPDATED TAIL:", tail)
            print(dummy)
            print('###########')

        # now, if there are mode nodes in one of the two lists
        if list1:
            tail.next = list1
        elif list2:
            tail.next = list2
        print('------------------------')
        print(list1, list2)
        print(tail)
        print(dummy)
        print(t2)
        # returning
        return dummy.next

Ideally, the solution does not make use of t2 anywhere, I just created it for the same of my understanding. The output log for this code is given below:

PREV
ListNode{val: 0, next: None} ListNode{val: 0, next: None} ListNode{val: 0, next: None}
------------------
else ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}
UPDATED TAIL: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}
###########
if ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
UPDATED TAIL: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
###########
if ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
UPDATED TAIL: ListNode{val: 2, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 4, next: None}}}}}
###########
else ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
UPDATED TAIL: ListNode{val: 3, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
###########
else ListNode{val: 3, next: ListNode{val: 4, next: None}} || ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
UPDATED TAIL: ListNode{val: 4, next: None}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: None}}}}}}
###########
------------------------
After loop
ListNode{val: 4, next: None} None
ListNode{val: 4, next: ListNode{val: 4, next: None}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: ListNode{val: 4, next: None}}}}}}}
ListNode{val: 0, next: ListNode{val: 1, next: ListNode{val: 1, next: ListNode{val: 2, next: ListNode{val: 3, next: ListNode{val: 4, next: ListNode{val: 4, next: None}}}}}}}

When I look at this, I can see and understand what exatly is happening in each iteration. I can see that the lists dummy and tail are being simultaneoulsy updated in each iteration. To be specific,  we are updating the tail and it's next part and that consequently updates the dummy's latest head's next pointer.
What im confused about is this, Why is this hapenning? Arent these two lists different, why does updating the next of one update the other simultaneously?

I would like to understand what exactly is going on on a lower level in the memory when we do this operation?

Thanks


问:
Requesting OAuth Token from Zoom API Shortens the access_token attribute, but does not in Postman
The access_token is always 632 characters long, and when I test it in Postman it works fine

Postman Code:

```<code>using System;
using RestSharp;
namespace HelloWorldApplication {
  class HelloWorld {
    static void Main(string[] args) {
      var client = new RestClient("https://zoom.us/oauth/token?account_id=VfdA06Q9TQe31jH7oRutuQ&grant_type=account_credentials");
      client.Timeout = -1;
      var request = new RestRequest(Method.POST);
      request.AddHeader("Authorization", "Basic ####");
      request.AddHeader("Cookie", "####");
      var body = @"";
      request.AddParameter("text/plain", body,  ParameterType.RequestBody);
      IRestResponse response = client.Execute(request);
      Console.WriteLine(response.Content);
    }
  }
}

</code>```

I have a limitation that prevents me from using RestSharp. As such, I am using System.Net.Http in my application, but the access_token is always 533 characters long. I get unauthorized response whenever I use that token which is what alerted me that something may be wrong with it.

System.Net.Http Code

```<code>using System;
using System.Collections.Generic;
using System.Net.Http;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;

namespace ConsoleApp_Test_ZoomCreateMeeting
{
    class Program
    {
        static void Main(string[] args)
        {
            //Get current token age

             // Get the get credentials

            // Build the request body
            var authRequestBody = new FormUrlEncodedContent(new[]
            {
            new KeyValuePair<string, string>("grant_type", "client_credentials"),
            new KeyValuePair<string, string>("client_id", "####"),
            new KeyValuePair<string, string>("client_secret", "####")
        });

            // Set up the HTTP client
            var authClient = new HttpClient();
            authClient.BaseAddress = new Uri("https://zoom.us/");

            // Send the request and get the response
            HttpResponseMessage authResponse = authClient.PostAsync("oauth/token", authRequestBody).Result;

            string content = authResponse.Content.ReadAsStringAsync().Result;
            long contentLength = authResponse.Content.Headers.ContentLength ?? 0;

            string responseContent = authResponse.Content.ReadAsStringAsync().Result;

            // Parse the JSON response
            JObject jsonResponse = JsonConvert.DeserializeObject<JObject>(responseContent);

            // Create an instance of JsonSerializerSettings and set the ReferenceLoopHandling property to Ignore
            JsonSerializerSettings serializerSettings = new JsonSerializerSettings();
            serializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;

            // Serialize the jsonResponse object using the JsonSerializerSettings object
            string serializedJsonResponse = JsonConvert.SerializeObject(jsonResponse, serializerSettings);

            // Extract the access_token property (value<t>)
            string currentToken = jsonResponse["access_token"].Value<string>();

            Console.WriteLine("Current Token: " + currentToken);

        }

    }
}
</code>```

Any ideas on a solution here?

I tried to request an OAuth token from the Zoom API, and though I received one, the access_token attribute is being cut short

Body:
The access_token is always 632 characters long, and when I test it in Postman it works fine

Postman Code:

using System;
using RestSharp;
namespace HelloWorldApplication {
  class HelloWorld {
    static void Main(string[] args) {
      var client = new RestClient("https://zoom.us/oauth/token?account_id=VfdA06Q9TQe31jH7oRutuQ&grant_type=account_credentials");
      client.Timeout = -1;
      var request = new RestRequest(Method.POST);
      request.AddHeader("Authorization", "Basic ####");
      request.AddHeader("Cookie", "####");
      var body = @"";
      request.AddParameter("text/plain", body,  ParameterType.RequestBody);
      IRestResponse response = client.Execute(request);
      Console.WriteLine(response.Content);
    }
  }
}

I have a limitation that prevents me from using RestSharp. As such, I am using System.Net.Http in my application, but the access_token is always 533 characters long. I get unauthorized response whenever I use that token which is what alerted me that something may be wrong with it.

System.Net.Http Code

using System;
using System.Collections.Generic;
using System.Net.Http;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;

namespace ConsoleApp_Test_ZoomCreateMeeting
{
    class Program
    {
        static void Main(string[] args)
        {
            //Get current token age

             // Get the get credentials

            // Build the request body
            var authRequestBody = new FormUrlEncodedContent(new[]
            {
            new KeyValuePair<string, string>("grant_type", "client_credentials"),
            new KeyValuePair<string, string>("client_id", "####"),
            new KeyValuePair<string, string>("client_secret", "####")
        });

            // Set up the HTTP client
            var authClient = new HttpClient();
            authClient.BaseAddress = new Uri("https://zoom.us/");

            // Send the request and get the response
            HttpResponseMessage authResponse = authClient.PostAsync("oauth/token", authRequestBody).Result;

            string content = authResponse.Content.ReadAsStringAsync().Result;
            long contentLength = authResponse.Content.Headers.ContentLength ?? 0;

            string responseContent = authResponse.Content.ReadAsStringAsync().Result;

            // Parse the JSON response
            JObject jsonResponse = JsonConvert.DeserializeObject<JObject>(responseContent);

            // Create an instance of JsonSerializerSettings and set the ReferenceLoopHandling property to Ignore
            JsonSerializerSettings serializerSettings = new JsonSerializerSettings();
            serializerSettings.ReferenceLoopHandling = ReferenceLoopHandling.Ignore;

            // Serialize the jsonResponse object using the JsonSerializerSettings object
            string serializedJsonResponse = JsonConvert.SerializeObject(jsonResponse, serializerSettings);

            // Extract the access_token property (value<t>)
            string currentToken = jsonResponse["access_token"].Value<string>();

            Console.WriteLine("Current Token: " + currentToken);

        }

    }
}

Any ideas on a solution here?

I tried to request an OAuth token from the Zoom API, and though I received one, the access_token attribute is being cut short


问:
How to filter with NSPredicate by an attribute of an Element I pass from the parent view?
Please help me with the following question - how do I filter a fetchRequest by an attribute of an Element I pass from the parent view?

```<code>import SwiftUI

struct aListDetailView: View {

@State var aParameter: String

@FetchRequest(sortDescriptors: [], predicate: NSPredicate(format: "elementIdentificationAttribute == %@", aParameter)) var contracts: FetchedResults<Contract>

var body: some View {
  List {...}

...}
</code>```

I get "Cannot use instance member 'aContract' within property initializer; property initializers run before 'self' is available".

I understand why, but how do I bypass this?

My example is a simplified version.

In truth, my query is this: I have a list of Contract elements, and each contract has a list of invoices issued in regards to that specific contract. Each contract has a unique serial code I give it, as an attribute.

My @FetchRequest for a list of all Contract elements is in Content View. I loop through them to create a list. Each row of the list is a NavigationLink to a new view, and I pass the specific contract element to the new view.

In the new view, I need to fetch a list of all the invoices specific to that contract.

However, when I add a new invoice to create a new row in the invoice sub-view list, core data does not show the new row, for a new invoice. The new row appears only when I return to the Content View and back to the invoice view, because my @FetchRequest for Contracts is in Content View.

I thought I could bypass this issue through a @FetchRequest for a list of contracts that have an attribute of my choosing (say, an attribute contractSerialNumber) equal to the attribute instance of the contract I pass to this view.

Something like:

```<code>@FetchRequest that filters all contracts in storage by the specific, unique attribute of my choosing of the contract I passed from the Parent View. Places them in a list.

ForEach contract that has that particular attribute (which will be a list of one contract) {
 ForEach contract.invoiceArray { invoice in
   Text(contract.invoice.invoiceIdentificationAttribute
    } }
</code>```

Thank you!

Body:
Please help me with the following question - how do I filter a fetchRequest by an attribute of an Element I pass from the parent view?

import SwiftUI

struct aListDetailView: View {

@State var aParameter: String

@FetchRequest(sortDescriptors: [], predicate: NSPredicate(format: "elementIdentificationAttribute == %@", aParameter)) var contracts: FetchedResults<Contract>

var body: some View {
  List {...}

...}

I get "Cannot use instance member 'aContract' within property initializer; property initializers run before 'self' is available".

I understand why, but how do I bypass this?

My example is a simplified version.

In truth, my query is this: I have a list of Contract elements, and each contract has a list of invoices issued in regards to that specific contract. Each contract has a unique serial code I give it, as an attribute.

My @FetchRequest for a list of all Contract elements is in Content View. I loop through them to create a list. Each row of the list is a NavigationLink to a new view, and I pass the specific contract element to the new view.

In the new view, I need to fetch a list of all the invoices specific to that contract.

However, when I add a new invoice to create a new row in the invoice sub-view list, core data does not show the new row, for a new invoice. The new row appears only when I return to the Content View and back to the invoice view, because my @FetchRequest for Contracts is in Content View.

I thought I could bypass this issue through a @FetchRequest for a list of contracts that have an attribute of my choosing (say, an attribute contractSerialNumber) equal to the attribute instance of the contract I pass to this view.

Something like:

@FetchRequest that filters all contracts in storage by the specific, unique attribute of my choosing of the contract I passed from the Parent View. Places them in a list.

ForEach contract that has that particular attribute (which will be a list of one contract) {
 ForEach contract.invoiceArray { invoice in
   Text(contract.invoice.invoiceIdentificationAttribute
    } }

Thank you!


问:
Filter Kendo grid with local data
This Function is called when radio button is clicked and I want to reload the grid with filtered data</p>
```<code>function filterGrid(data: any) {
        var grid = $("#grid").data("kendoGrid");
        var dataSource = grid.dataSource;
        var filterField = "Field";
        var filterOperator = "contains";
        var filterValue = $('input[name="rbName"]:checked').val();

        try {
            dataSource.filter(
                {
                    field: filterField,
                    operator: filterOperator,
                    value: filterValue
                });
        }
        catch (ex) { }

    }
</code>```

Title: Filter Kendo grid with local data

Body:
This Function is called when radio button is clicked and I want to reload the grid with filtered data

function filterGrid(data: any) {
        var grid = $("#grid").data("kendoGrid");
        var dataSource = grid.dataSource;
        var filterField = "Field";
        var filterOperator = "contains";
        var filterValue = $('input[name="rbName"]:checked').val();

        try {
            dataSource.filter(
                {
                    field: filterField,
                    operator: filterOperator,
                    value: filterValue
                });
        }
        catch (ex) { }

    }


问:
Is there a way to track when the "Copy" link button is tapped in the Android system share sheet?
Does anyone know if it's possible to track when the "Copy" link button is tapped in the Android system share sheet?

Using an IntentSender and extracting the chosen component from the result bundle works great if the user chooses an app to share to, but that method doesn't work if the user taps "Copy" or "Nearby" since those options aren't external components.


问:
Function or Script to automatically print a range of cells in Excel Online into PDF (Office Script / Power Automate / Power Apps)
I am making an automation system for my company using both web Power Automate and Power Apps.
So text input from Power App will be populated into excel online sheet tables and rearrange into a final report form format in another sheet.

I was trying to look for a way to automatically print/export the said excel sheet (if possible, specifically a range of cells) into a PDF, without having to use a third-party premium option in Power Automate.

I saw someone make a VBA script for it, but as far as I know web Power Automate cannot run VBA script online, and I cannot find any syntax or reference guide using Office Script as well.

I was thinking of transferring the cell inputs into Word Online first using the Power Automate.
But the online function available in P.Automate is "Populate a Microsoft Word Template" and I do not even know exactly how Word templates works on the web.

Or should I try to browse through the desktop P.Automate? I have been only using the web version so far.

I cannot seem to find any other reference online, and I am quite new in coding/scripting world.

Any suggestion of helps would be appreciated.


问:
Getting a report in excel from a txt file
It is necessary to rewrite the data from the files in the "txt" format into an excel spreadsheet. Could you please clarify what a python script should look like to generate such a report from a file (the example is downloaded from the 1st link in the attachments to the letter) to an excel spreadsheet (the second link).Example data.TXT
Example Report

I'm currently studying python, so I don't know much syntax


问:
Mac Localhost Not Reading php.ini or .user.ini files for PHP configuration
I would like to place a php.ini file in a localhost (MacOS Big Sur) site directory administrator/ to create a configuration:

```<code>auto_prepend_file="/Users/USER/Sites/SITE/administrator/library/script/function.php"
</code>```

When I look at my phpinfo();, my php.ini file is not loaded and the function.php file is not prepended (looking at Additional .ini files parsed section). I also tried using my .user.ini file as well with no success. Lastly, if I used the Loaded Configuration File php.ini with the new configuration, it works fine. But this is not what I want. I would like to create multiple php.ini files and place them in the folder I need them in.

Every time I add a php.ini file or update it, I always restart apache. This is not the issue because I have change the Loaded Configuration File and restarted apache with success.

```<code>sudo apachectl start
sudo apachectl stop
</code>```

Here are some screenshots of my configuration:

How do I enable php.ini to be parsed in any directory for that specific directory?

Body:
I would like to place a php.ini file in a localhost (MacOS Big Sur) site directory administrator/ to create a configuration:

auto_prepend_file="/Users/USER/Sites/SITE/administrator/library/script/function.php"

When I look at my phpinfo();, my php.ini file is not loaded and the function.php file is not prepended (looking at Additional .ini files parsed section). I also tried using my .user.ini file as well with no success. Lastly, if I used the Loaded Configuration File php.ini with the new configuration, it works fine. But this is not what I want. I would like to create multiple php.ini files and place them in the folder I need them in.

Every time I add a php.ini file or update it, I always restart apache. This is not the issue because I have change the Loaded Configuration File and restarted apache with success.

sudo apachectl start
sudo apachectl stop

Here are some screenshots of my configuration:

How do I enable php.ini to be parsed in any directory for that specific directory?


问:
phpmyadmin / mysqli on docker do not connect
I want to run two docker container, one for phpmyadmin and one for mysql server, so i wrote this docker-compose file to run it on RaspberryPi:

```<code>version: '3.1'

services:
  db:
    image: mysql:latest
    container_name: db
    volumes:
      - dbdata:/var/lib/mysql
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: test

  phpmyadmin:
    image: phpmyadmin
    container_name: phpmyadmin
    restart: always
    ports:
      - 8080:80
    environment:
      PMA_HOST: db
      PMA_ARBITRARY: 1

volumes:
  dbdata:
</code>```

The volume mount, the containers build up, the phpmyadmin page load but when i try to login with server: machine-ip:3306, user: root, pass: test; got this error:

```<code>mysqli::real_connect(): Error while reading greeting packet. PID=34
</code>```
```<code>mysqli::real_connect(): (HY000/2006): MySQL server has gone away
</code>```

Tried everything and worked only one time, but when i restarted it not worked again

Body:
I want to run two docker container, one for phpmyadmin and one for mysql server, so i wrote this docker-compose file to run it on RaspberryPi:

version: '3.1'

services:
  db:
    image: mysql:latest
    container_name: db
    volumes:
      - dbdata:/var/lib/mysql
    restart: always
    ports:
      - 3306:3306
    environment:
      MYSQL_ROOT_PASSWORD: test

  phpmyadmin:
    image: phpmyadmin
    container_name: phpmyadmin
    restart: always
    ports:
      - 8080:80
    environment:
      PMA_HOST: db
      PMA_ARBITRARY: 1

volumes:
  dbdata:

The volume mount, the containers build up, the phpmyadmin page load but when i try to login with server: machine-ip:3306, user: root, pass: test; got this error:

mysqli::real_connect(): Error while reading greeting packet. PID=34

mysqli::real_connect(): (HY000/2006): MySQL server has gone away

Tried everything and worked only one time, but when i restarted it not worked again


问:
Woocommerce Additional Information Attribute - Append "Shipping" on weight and dimensions
1st line of the additional information takes weight and package dimension from woocommerce product attributes and does not have icons while the other lines having attributes have icons as it was sent in the attributes.

is there a way to put icons in front of the woocommerce product attributes as well as missing this info often confuses customers.

Adding just a word "Package" can solve the problme.

Additional Information Tab

Tried to find exact php file but lack of technical knoweledge didn't help in resolving.