20 Commits

Author SHA1 Message Date
Jack Hsu
ec5a5e6360
feat(react): update app and lib generators to support new TS solution setup (#28808)
This PR updates app and lib generators in the following packages such
that they will generate files with the TS solution setup if it is
detected.

- `@nx/react`
- `@nx/next`
- `@nx/remix`
- `@nx/expo`
- `@nx/react-native`

React apps and libs will be linked using npm/pnpm/yarn/bun workspaces
feature rather than through tsconfig paths. This means that local
aliases like `@/` will work with Next.js and Remix apps.

Note: This will be behind `--workspaces` flag when using `npx
create-nx-workspace` and choosing React stack. If you use the None/TS
stack then adding plugins like `nx add @nx/react` then generating apps,
it will automatically pick up the new TS solution setup.


<!-- If this is a particularly complex change or feature addition, you
can request a dedicated Nx release for this pull request branch. Mention
someone from the Nx team or the `@nrwl/nx-pipelines-reviewers` and they
will confirm if the PR warrants its own release for testing purposes,
and generate it for you if appropriate. -->

## Current Behavior
React generators are not compatible with TS solution setup (i.e.
workspaces + TS project references).

## Expected Behavior
React generators work with new TS solution setup (Plain, Next.js, Remix,
Expo, React Native).

## Related Issue(s)
#28322

---------

Co-authored-by: Leosvel Pérez Espinosa <leosvel.perez.espinosa@gmail.com>
Co-authored-by: Nicholas Cunningham <ndcunningham@gmail.com>
2024-11-28 22:18:45 -05:00
Nicholas Cunningham
c2e31127d9
feat(core): Update plugin generators so that they are formatted by default (#28593) 2024-10-31 12:14:21 -04:00
Nicholas Cunningham
8f1429da97
fix(vite): Update typings and fix when converting lib to vite (#18956) 2023-09-01 13:01:43 -04:00
Jack Hsu
08339ee49f
feat(js): do not generate root babel.config.json for babel projects (#17289) 2023-06-06 15:45:33 -04:00
Jason Jean
76dfc62412
feat(web): replace usages of @nrwl with @nx (#16376) 2023-04-19 10:59:41 -04:00
Jack Hsu
666e057a50
fix(react): skip exports field in generated package.json when using rollup to bundle library (#14107) 2023-01-03 17:02:50 +02:00
Jason Jean
61d7d74378 fix(misc): fix tsconfig file includes 2022-12-05 10:39:03 -05:00
Victor Savkin
91c19f5c0a
feat(misc): do not generate tsconfig.base.json for simple standalone … (#13605) 2022-12-05 10:07:01 -05:00
Jonathan Cammisuli
790b0dee13
fix(bundling): add a vite specific readme for react libs when using vite (#13590) 2022-12-02 10:45:45 -05:00
Jonathan Cammisuli
dbc673d74f
fix(testing): remove jest.config.ts from vitest setups (#13586) 2022-12-02 10:17:37 -05:00
Jack Hsu
cf7ad73165
cleanup(bundling): remove unnecessary files and targets for Vite apps… (#13456) 2022-11-28 17:08:37 -05:00
Jack Hsu
a63a25d2e2
feat(react): add Vite bundler option for buildable libraries (#13382) 2022-11-25 20:25:37 +00:00
Caleb Ukle
39331d1e17
feat(testing): move jest config to .ts files (#9854)
* feat(testing): move jest config to .ts

move jest config and preset to ts files

ISSUES CLOSED: #8344

* fix(testing): update tests for jest.config.ts changes

update tests broken by renaming jest fils to ts files
2022-04-21 17:58:40 +00:00
Leosvel Pérez Espinosa
acc29e9593
fix(misc): support workspaces using a root tsconfig.json instead of tsconfig.base.json (#9195)
* fix(misc): support workspaces using a root tsconfig.json instead of tsconfig.base.json

* cleanup(angular): address pr feedback
2022-03-09 11:30:26 -05:00
Caleb Ukle
0ca5a88bf1
fix(testing) generated jest ts configs mismatch (#7556)
* fix(testing): add .test. files to spec tsconfig template

add support for .test.ts and with supportTsx .test.{js|tsx|jsx} files
in the tsconfig.spec.json template.

Note each package that excludes testing files will need to be updated to
exclude the new files (coming in future commits)

* fix(angular): add .test.ts support in tsconfigs

add .test.ts in angular jest template
update angular generators to exclude test files

* fix(gatsby): add .test. file prefixes to tsconfig ignore

ignore the new .test.{js|ts|jsx|tsx} files added to jest configs

* fix(react): add .test. file prefix to app/lib tsconfigs

add .test.{ts|js|tsx|jsx} files to be excluded by app/lib tsconfig

* fix(node): add .test. file prefix to app/lib tsconfig

add .test.{ts|js|tsx|jsx} files to be excluded by app/lib tsconfig

ISSUES CLOSED: #7263

* fix(nest): update tests for new .test.ts files in tsconfig

update tests to account for changes in node generators which add .test.ts to the exclude of
tsconfigs

* fix(express): update tests to account for new tsconfig changes

updated snapshots
added new patterns for tsconfig

* fix(linter): update snapshots for new tsconfig changes

snapshot updated to include new .test.ts file changes for tsconfig

* fix(node): update testing to account for spec tsconfig changes

add .test.ts files in e2e tests

* fix(testing): add migration for tsconfig changes

initial migration and test for tsconfig changes

* chore(testing): add to migrations collection

add the update-ts-config-for-test-filenames to migrations

* fix(testing): fix filesystem issue with jest tests

mock readConfig to always return an basic config to prevent issues of not finding a config in non
linux environments, aka missing /root

* cleanup(testing): update error message

update message logged when tsconfig isn't found to mention what was trying to be accompished so it
can be manually updated if desired.
2021-11-05 14:25:25 -05:00
Noriyuki Shinpuku
d4f8ba2b2d
feat(react): support css prop for emotion (#7395)
* feat(react): support css prop for emotion

* feat(react): add migration for css prop
2021-10-17 22:17:16 -04:00
Jack Hsu
a51d19ff8b
fix(react): generate apps/libs using Emotion CSS with valid .babelrc files (#5336) 2021-04-13 12:04:31 -04:00
Jack Hsu
a647e19303
feat(react): use "@babel/plugin-transform-runtime" so babel helpers can be reused (#5257) 2021-04-07 06:08:12 +00:00
Jack Hsu
c84bbb3c93
feat(react): add support for new jsx transform (#5131) 2021-04-01 13:46:12 +00:00
Jonathan Cammisuli
d9aef75bd5
chore(react): move react schematics to generators (#4745)
* chore(react): move react schematics to generators

* chore(react): update lib generators

* chore(react): update redux generators

* chore(react): move react story book generators

* chore(react): add old implementation for update babel in next

* chore(react): rename tsconfig json template files to include __tmpl__

* chore(react): update deps

* chore(react): fix component template file

* chore(react): remove angular-devkit deps

* chore(react): remove angular-devkit deps
2021-02-10 21:30:55 -05:00