JJ Kasper
ec25b4742b
Add handling for auto installing TypeScript deps and HMRing tsconfig ( #39838 )
...
This adds handling for auto-detecting TypeScript being added to a project and installing the necessary dependencies instead of printing the command and requiring the user run the command. We have been testing the auto install handling for a while now with the `next lint` command and it has worked out pretty well.
This also adds HMR handling for `jsconfig.json`/`tsconfig.json` in development so if the `baseURL` or `paths` configs are modified it doesn't require a dev server restart for the updates to be picked up.
This also corrects our required dependencies detection as previously an incorrect `paths: []` value was being passed to `require.resolve` causing it to fail in specific situations.
Closes: https://github.com/vercel/next.js/issues/36201
### `next build` before
https://user-images.githubusercontent.com/22380829/186039578-75f8c128-a13d-4e07-b5da-13bf186ee011.mp4
### `next build` after
https://user-images.githubusercontent.com/22380829/186039662-57af22a4-da5c-4ede-94ea-96541a032cca.mp4
### `next dev` automatic setup and HMR handling
https://user-images.githubusercontent.com/22380829/186039678-d78469ef-d00b-4ee6-8163-a4706394a7b4.mp4
## Bug
- [x] Related issues linked using `fixes #number`
- [x] Integration tests added
- [x] Errors have helpful link attached, see `contributing.md`
2022-08-23 13:16:47 -05:00
JJ Kasper
6fd2a7fa31
Remove webpack4 types ( #39631 )
...
These types are no longer needed as we are only leveraging webpack 5 so this finishes migrating our types away from webpack 4's types.
2022-08-16 09:55:37 +00:00
CommanderRoot
db2567b01b
chore: replace deprecated String.prototype.substr() ( #35421 )
...
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated
Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
Co-authored-by: Steven <steven@ceriously.com>
2022-03-24 17:49:38 -04:00
Jan Nicklas
31a701b9da
feat(jsconfig-paths-plugin): Resolve paths synchronously ( #29467 )
2021-10-13 12:17:54 +02:00
Guy Bedford
bddb02286f
feat: webpack inlining with configuration for v4 / v5 ( #20598 )
2021-01-13 20:59:08 -05:00
Tim Neutkens
b124ed2e14
Added no-shadow rule to eslint ( #13645 )
...
Was going through _document and noticed some variable shadowing going on. Added a rule for it to our eslint configuration and went through all warnings with @Timer.
2020-06-01 21:00:22 +00:00
Joe Haddad
86160a5190
Upgrade to Prettier 2 ( #13061 )
2020-05-18 15:24:37 -04:00
JJ Kasper
88fd9a0dd2
Update jsconfig paths fix for windows ( #12328 )
2020-04-29 17:56:18 -04:00
Tim Neutkens
0713ba4e78
Fix wildcard paths causing infinite resolving ( #12318 )
2020-04-29 17:04:42 +02:00
JJ Kasper
2b116cea29
Ensure module not found error is shown with jsconfig paths ( #11889 )
...
* Ensure correct module not found error is shown with jsconfig paths
* bump
2020-04-15 02:33:05 -04:00
Tim Neutkens
7774101ad1
Skip paths that are routed to a .d.ts file ( #11322 )
2020-03-24 12:25:58 +01:00
Tim Neutkens
7fce52b905
Add support for paths in tsconfig.json and jsconfig.json ( #11293 )
...
* Add support for tsconfig/json `paths` option
* Add tests for paths in tsconfig.json
* Don't apply aliases when paths is empty
* Clean up unused methods and link to TypeScript license
* Add tests for jsconfig
* Put feature under an experimental flag
* Enable to see if tests pass
* Update types
* Add feature under an experimental flag
2020-03-23 10:45:51 -04:00