rsnext/packages/next
Will Heslam b3d9fd2a0d
Make getInlineScriptSource arg Readonly (#17281)
The rule [total-functions/no-unsafe-readonly-mutable-assignment](https://github.com/danielnixon/eslint-plugin-total-functions#total-functionsno-unsafe-readonly-mutable-assignment) triggers with this error message:
> Assigning a readonly type to a mutable type can lead to unexpected mutation in the readonly value

when invoking
```
      NextScript.getInlineScriptSource(this.props)
```
inside a `_document.tsx`'s render function.
due to `this.props` having the type:
```
props: Readonly<P> & Readonly<{ children?: ReactNode }>
```
in `@types/react`

On the other hand, this is a small, low-priority change (IMO), so an alternative work around is just to disable the lint rule for that line of course.

Lint, tests, and build passes.

Lint error was discovered using typescript@next, version `4.1.0-dev.20200921` and eslint-plugin-total-functions version `4.1.0`, but I tested the change to nextjs using typescript version `3.8.3`.
2020-11-05 12:03:45 +00:00
..
bin Correct comment on --help (#16391) 2020-08-20 13:32:55 +00:00
build Ensure redirects are handled properly from cache (#18806) 2020-11-04 22:18:44 +00:00
cli Warn on duplicate Sass deps (#16398) 2020-08-20 16:05:29 +00:00
client Speed up SSG prefetching (#18813) 2020-11-05 09:51:24 +00:00
compiled Update ncc (#18823) 2020-11-05 03:30:37 +00:00
export Enable i18n feature flag (#18303) 2020-10-27 10:30:34 -05:00
lib Ensure redirects are handled properly from cache (#18806) 2020-11-04 22:18:44 +00:00
next-server Speed up SSG prefetching (#18813) 2020-11-05 09:51:24 +00:00
pages Make getInlineScriptSource arg Readonly (#17281) 2020-11-05 12:03:45 +00:00
server Enable i18n feature flag (#18303) 2020-10-27 10:30:34 -05:00
telemetry Enable i18n feature flag (#18303) 2020-10-27 10:30:34 -05:00
types ncc inlining optimizations (#18752) 2020-11-04 21:52:49 +00:00
amp.d.ts Remove re-exports of default when they don't exist (#9450) 2019-11-18 20:11:59 -06:00
amp.js Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
app.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
app.js
babel.d.ts Remove re-exports of default when they don't exist (#9450) 2019-11-18 20:11:59 -06:00
babel.js
client.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
client.js
config.d.ts Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
config.js Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
constants.d.ts Remove default export from constants.d.ts (#8979) 2019-10-07 14:30:07 +02:00
constants.js Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
data.d.ts Remove re-exports of default when they don't exist (#9450) 2019-11-18 20:11:59 -06:00
data.js amp-bind data injection (#6840) 2019-04-02 16:09:34 +02:00
document.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
document.js
dynamic.d.ts Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
dynamic.js Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
error.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
error.js
head.d.ts Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
head.js Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00
image.d.ts Image component foundation (#17343) 2020-10-14 11:57:10 +02:00
image.js Image component foundation (#17343) 2020-10-14 11:57:10 +02:00
license.md Update year on license files 2020-04-21 12:24:08 +02:00
link.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
link.js Bring back module.exports because of backwards compat (#5815) 2018-12-04 15:26:20 +01:00
package.json Update ncc (#18823) 2020-11-05 03:30:37 +00:00
README.md Update README.md 2020-10-29 11:50:54 +01:00
router.d.ts Move syntax formatting to prettier (#7454) 2019-05-29 13:57:26 +02:00
router.js Bring back module.exports because of backwards compat (#5815) 2018-12-04 15:26:20 +01:00
taskfile-babel.js Prefer builtin optional chaining and nullish coalescing (#16780) 2020-09-11 15:20:10 +00:00
taskfile-ncc.js Fix some webpack 5 deprecation warnings (#15797) 2020-08-03 12:57:17 +00:00
taskfile.js ncc inlining optimizations (#18752) 2020-11-04 21:52:49 +00:00
tsconfig.json Move next-server back into next package (#8613) 2019-09-04 10:00:54 -04:00

Next.js

Getting Started

Visit https://nextjs.org/learn to get started with Next.js.

Documentation

Visit https://nextjs.org/docs to view the full documentation.

Who is using Next.js?

Next.js is used by the world's leading companies. Check out the Next.js Showcase to learn more.

Community

The Next.js community can be found on GitHub Discussions, where you can ask questions, voice ideas, and share your projects.

To chat with other community members you can join the Next.js Discord.

Our Code of Conduct applies to all Next.js community channels.

Contributing

Please see our contributing.md.

Authors