Compare commits
21 Commits
blitz@2.0.
...
@blitzjs/g
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
37b5e35e22 | ||
|
|
3b213a35b0 | ||
|
|
809f6019be | ||
|
|
a51b1e85e1 | ||
|
|
a948dbb7b8 | ||
|
|
4b91c429ca | ||
|
|
6ab9db7802 | ||
|
|
d3e6b02ad4 | ||
|
|
813365da61 | ||
|
|
6559c25f71 | ||
|
|
83b355900b | ||
|
|
c721c104db | ||
|
|
7e538ba451 | ||
|
|
8e00605a86 | ||
|
|
dcdcd04055 | ||
|
|
e339e2fd0a | ||
|
|
37e1ec4abc | ||
|
|
718a194891 | ||
|
|
0f18c68d63 | ||
|
|
3511d5b69b | ||
|
|
716e188d13 |
@@ -3590,6 +3590,36 @@
|
||||
"contributions": [
|
||||
"doc"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "saadaltabari",
|
||||
"name": "saadaltabari",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/29986512?v=4",
|
||||
"profile": "https://github.com/saadaltabari",
|
||||
"contributions": [
|
||||
"doc",
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "iojcde",
|
||||
"name": "Jeeho Ahn",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/31413538?v=4",
|
||||
"profile": "https://github.com/iojcde",
|
||||
"contributions": [
|
||||
"doc",
|
||||
"tool",
|
||||
"code"
|
||||
]
|
||||
},
|
||||
{
|
||||
"login": "ryanwashburne",
|
||||
"name": "Ryan Washburne",
|
||||
"avatar_url": "https://avatars.githubusercontent.com/u/12566087?v=4",
|
||||
"profile": "https://linkedin.com/in/ryanwashburne",
|
||||
"contributions": [
|
||||
"doc"
|
||||
]
|
||||
}
|
||||
],
|
||||
"contributorsPerLine": 7,
|
||||
|
||||
6
.changeset/breezy-moose-behave.md
Normal file
6
.changeset/breezy-moose-behave.md
Normal file
@@ -0,0 +1,6 @@
|
||||
---
|
||||
"blitz": minor
|
||||
"@blitzjs/auth": patch
|
||||
---
|
||||
|
||||
Truncate errors from `api/auth/<strategy>/callback` request to 100 characters before passing them to the `?authError=` query parameter
|
||||
5
.changeset/calm-nails-wait.md
Normal file
5
.changeset/calm-nails-wait.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/codemod": patch
|
||||
---
|
||||
|
||||
These are various changes to will make the codemod more dynamic and work with a larger variety of codebases. These fixes are implemented to make the codemod work with flightdeck.
|
||||
5
.changeset/clean-walls-wink.md
Normal file
5
.changeset/clean-walls-wink.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/rpc": patch
|
||||
---
|
||||
|
||||
Pass `signal` from useQuery to Blitz internal rpc client to be able to cancel queries on unmount
|
||||
5
.changeset/four-sheep-judge.md
Normal file
5
.changeset/four-sheep-judge.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/next": patch
|
||||
---
|
||||
|
||||
Export router-context from browser entrypoint
|
||||
5
.changeset/modern-ligers-behave.md
Normal file
5
.changeset/modern-ligers-behave.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/generator": patch
|
||||
---
|
||||
|
||||
Add hoist pattern entry for react-query in new app templates
|
||||
5
.changeset/ninety-lies-press.md
Normal file
5
.changeset/ninety-lies-press.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"blitz": patch
|
||||
---
|
||||
|
||||
Temporarily skip version check
|
||||
@@ -23,7 +23,10 @@
|
||||
"changesets": [
|
||||
"big-phones-bow",
|
||||
"breezy-cameras-double",
|
||||
"breezy-moose-behave",
|
||||
"bright-mangos-run",
|
||||
"calm-nails-wait",
|
||||
"clean-walls-wink",
|
||||
"cool-doors-invent",
|
||||
"cool-horses-check",
|
||||
"curly-seas-serve",
|
||||
@@ -38,6 +41,7 @@
|
||||
"flat-bees-approve",
|
||||
"four-brooms-juggle",
|
||||
"four-meals-fry",
|
||||
"four-sheep-judge",
|
||||
"fuzzy-jars-admire",
|
||||
"gentle-dogs-reply",
|
||||
"good-apes-drum",
|
||||
@@ -56,6 +60,7 @@
|
||||
"lucky-cows-try",
|
||||
"mean-gorillas-reply",
|
||||
"modern-cameras-pull",
|
||||
"modern-ligers-behave",
|
||||
"moody-bags-walk",
|
||||
"moody-squids-cheer",
|
||||
"nervous-beds-travel",
|
||||
@@ -65,6 +70,7 @@
|
||||
"nice-starfishes-live",
|
||||
"nine-birds-confess",
|
||||
"nine-onions-admire",
|
||||
"ninety-lies-press",
|
||||
"ninety-pets-heal",
|
||||
"olive-bees-buy",
|
||||
"olive-feet-rhyme",
|
||||
@@ -75,6 +81,7 @@
|
||||
"poor-penguins-look",
|
||||
"poor-shrimps-think",
|
||||
"popular-teachers-pay",
|
||||
"pretty-games-march",
|
||||
"purple-singers-greet",
|
||||
"quick-cycles-confess",
|
||||
"quiet-feet-travel",
|
||||
@@ -85,14 +92,18 @@
|
||||
"sharp-falcons-begin",
|
||||
"shy-olives-hang",
|
||||
"silent-colts-reply",
|
||||
"silly-apricots-share",
|
||||
"six-apricots-kick",
|
||||
"slimy-needles-taste",
|
||||
"slow-walls-poke",
|
||||
"small-socks-confess",
|
||||
"smooth-planets-admire",
|
||||
"smooth-stingrays-drum",
|
||||
"soft-adults-smell",
|
||||
"sour-lemons-hunt",
|
||||
"strong-apes-reply",
|
||||
"stupid-walls-sell",
|
||||
"sweet-kiwis-cross",
|
||||
"swift-drinks-dress",
|
||||
"tall-meals-learn",
|
||||
"tame-keys-reply",
|
||||
@@ -103,6 +114,7 @@
|
||||
"thick-parrots-float",
|
||||
"thirty-countries-build",
|
||||
"tidy-clouds-smoke",
|
||||
"tough-toes-pull",
|
||||
"twelve-lemons-smile",
|
||||
"twenty-beans-pump",
|
||||
"two-carpets-rhyme",
|
||||
|
||||
5
.changeset/pretty-games-march.md
Normal file
5
.changeset/pretty-games-march.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/codemod": patch
|
||||
---
|
||||
|
||||
Import ErrorComponent as DefaultErrorComponent
|
||||
5
.changeset/silly-apricots-share.md
Normal file
5
.changeset/silly-apricots-share.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/next": patch
|
||||
---
|
||||
|
||||
Avoid reassigning queryClient in prefetch methods
|
||||
5
.changeset/six-apricots-kick.md
Normal file
5
.changeset/six-apricots-kick.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/next": patch
|
||||
---
|
||||
|
||||
Infer result type in the `api` handler and allow customizing it
|
||||
5
.changeset/smooth-stingrays-drum.md
Normal file
5
.changeset/smooth-stingrays-drum.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/codemod": patch
|
||||
---
|
||||
|
||||
Updates the error messages based on if it's a babel parse error or an unexpected error
|
||||
5
.changeset/sweet-kiwis-cross.md
Normal file
5
.changeset/sweet-kiwis-cross.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/rpc": patch
|
||||
---
|
||||
|
||||
Fix queries/mutations lookup on Windows
|
||||
5
.changeset/tough-toes-pull.md
Normal file
5
.changeset/tough-toes-pull.md
Normal file
@@ -0,0 +1,5 @@
|
||||
---
|
||||
"@blitzjs/rpc": patch
|
||||
---
|
||||
|
||||
Remove debug console.log
|
||||
49
README.md
49
README.md
@@ -6,7 +6,7 @@
|
||||
<img alt="" src="https://img.shields.io/badge/Join%20our%20community-6700EB.svg?style=for-the-badge&labelColor=000000&logoWidth=20&logo=data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAACACAYAAADDPmHLAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQ9SURBVHgB7d3dVdtAEIbhcSpICUoH0IEogQqSVBBSAU4FSSpIOoAORAfQgSghHXzZ1U/YcMD4R9rZmf2ec3y448LyiNf27iLiGIAmPLrweC9Un3DhrzG6EarLNP09nlwJ1SOZ/lQr5N80/S/p2QMVCBf5N17XCfm1Y/rBHqjAG9PPHvBsz+mf9WAP+HLA9M/YA14cOP2payH7jpj+VCtk1wnTP+vj7xCy6cTpn7EHLMLp059iD1iD8eveJbVCNsSLheX1YA/YgOWnf8YeKB3Wmf7Ud6Fy4f/FHmtpxbl3YlC4MJ/Cj0bWdwPnPbARg+L0S54XQHS32WwuxClzd4CM0z9rPfeAuTtA5ulPXYQ7wZ04Y+oOoDD9KZc9YOoOoDj9s4dwFzgXR6w1wIPoOvPWA9buAHEJ173o3gWiy3AnuBUHLEbgmYwvAk1/wuM8vAgexThzbwPDkx7/DHwVXfFOxP2GmsKd4Ab6zPeAyU8CI7AHFmH2BRCBPXAyk18GzUrqAXCTiR4ssyj0VFw/oCU8+e+RZ33AWz6KMaYbIIWxB+JSLs1bsbkeMN0AqakHvoku9oA2sAfqBvbAQdw0QArsgb25aYBUQT3QgT2gB+yBuqGcHij2UCqXDZACe2Anlw2QYg/QAOyBuoE98CL3DZDCuK4/rh/Q7oGL6U+TOvcNkJoijN8X1C48+T+g75eQDrAH/qmqAVJgDwyqaoAUe4AGYA/UDZX3QLUNkEIZPRCd5+6BahsgVUgPROwBTSijB7jpVAvGHriHvmw9wAZ4BpX1ABvgmakHtPcbRuwBTWAPULgAV9D/jKDY9YRvwvgEaurD44uQHvAol7qBW7WKluVtIHiUS7GyvA0s6CiXDnxrpQfsgbqBS7GKk/2jYHCrVlGyfxTMrVo0ALdq1Q3sgSKofh0M9oA61a+D2QM0AHugbmAPqClmSRjK2apVVQ8UsySsoK1aHdgDesCtWnUDeyCrIpeFg1u3sylyWTi3btMA7IG6gT2wuuK3hoE9sKrit4YVslWLPaAN7IG6ocKt2zmY2h4O9sDiTG0PZw/QANy6XTewBxZj9ogYVHy025LMHhEz9cBn0We6B0yfERReBLfhx0/R1YQHPx/QBPbA0VwcEwf2wNFcHBPHHjiem3MC2QPHcXdSaJjA+KfgTPQ8hhfjBzHC40mhlzJ+Xq9lK4a4PCs43AVaGTed5mZq+iOXZwWHi3AnOj2wFWNcnxYe7gTxLtBKHuamP/J+Wnh8a5irB7ZC5Yk9gPX1QuXC+usHWqGyhYvUYR0a7zboUOFCNVhnk0krZAOW7wFOvzXhom2xnEbIHizTA1wEYhWW6YFGyC6c1gOcfg9wfA80Qj7g8B7g9HuCww+haIR8wf49wOn3Cvv9k8tGyC/s7gFOv3fY3QONkH+v9MBWqB7PeqDn9FcIT//kcitUn6kHOu/T/xfWzlQy3dEHhwAAAABJRU5ErkJggg==">
|
||||
</a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:START - Do not remove or modify this section -->
|
||||
<a aria-label="All Contributors" href="#contributors-"><img alt="" src="https://img.shields.io/badge/all_contributors-381-17BB8A.svg?style=for-the-badge&labelColor=000000"></a>
|
||||
<a aria-label="All Contributors" href="#contributors-"><img alt="" src="https://img.shields.io/badge/all_contributors-384-17BB8A.svg?style=for-the-badge&labelColor=000000"></a>
|
||||
<!-- ALL-CONTRIBUTORS-BADGE:END -->
|
||||
<a aria-label="License" href="https://github.com/blitz-js/blitz/blob/canary/LICENSE">
|
||||
<img alt="" src="https://img.shields.io/npm/l/blitz.svg?style=for-the-badge&labelColor=000000&color=blue">
|
||||
@@ -19,25 +19,12 @@
|
||||
|
||||
<br>
|
||||
|
||||
<h1 align="center">The Fullstack React Framework</h1>
|
||||
|
||||
<h5 align="center">"Zero-API" Data Layer — Built on Next.js — Inspired by Ruby on Rails</h3>
|
||||
<h3 align="center"><a href="https://blitzjs.com/docs/get-started" target="_blank">Read the Documentation</a></h3>
|
||||
<br>
|
||||
|
||||
“Zero-API” data layer **lets you import server code directly into your React components** instead of having to manually add API endpoints and do client-side fetching and caching.
|
||||
|
||||
New Blitz apps come with **all the boring stuff already set up for you!** Like ESLint, Prettier, Jest, user sign up, log in, and password reset.
|
||||
|
||||
Provides **helpful defaults and conventions** for things like routing, file structure, and authentication while also being extremely flexible.
|
||||
|
||||
<h1 align="center">The Missing Fullstack Toolkit for Next.js</h1>
|
||||
|
||||
<br>
|
||||
|
||||
### Quick Start
|
||||
|
||||
You need Node.js 12 or newer
|
||||
|
||||
#### Install Blitz
|
||||
|
||||
Run `npm install -g blitz` or `yarn global add blitz`
|
||||
@@ -53,37 +40,8 @@ _You can alternatively use [`npx`](https://www.npmjs.com/package/npx)_
|
||||
|
||||
<br><br>
|
||||
|
||||
<a aria-label="Bytes Newsletter" href="https://ui.dev/bytes/?r=blitzjs">
|
||||
<img alt="Bytes Newsletter" src="https://files-8wtskjofb.vercel.app/smarter-16x1.jpg">
|
||||
</a>
|
||||
|
||||
|
||||
<br><br>
|
||||
|
||||
|
||||
|
||||
### The Foundational Principles
|
||||
|
||||
1. Fullstack & Monolithic
|
||||
2. API Not Required
|
||||
3. Convention over Configuration
|
||||
4. Loose Opinions
|
||||
5. Easy to Start, Easy to Scale
|
||||
6. Stability
|
||||
7. Community over Code
|
||||
|
||||
[The Blitz Manifesto](https://blitzjs.com/docs/manifesto) explains these principles in detail.
|
||||
|
||||
<br>
|
||||
|
||||
### What is Blitz Designed For?
|
||||
|
||||
Blitz is designed for tiny to large database-backed applications that have one or more graphical user interfaces.
|
||||
|
||||
While we currently only support web, we are pursuing the dream of a single monolithic application that runs on web and mobile with maximum code sharing and minimal boilerplate.
|
||||
|
||||
<br>
|
||||
|
||||
## Welcome to the Blitz Community 👋
|
||||
|
||||
The Blitz community is warm, safe, diverse, inclusive, and fun! LGBTQ+, women, and minorities are especially welcome. Please read our [Code of Conduct](https://blitzjs.com/docs/code-of-conduct).
|
||||
@@ -741,6 +699,9 @@ Thanks to these wonderful people ([emoji key](https://allcontributors.org/docs/e
|
||||
<td align="center"><a href="https://github.com/c-ciobanu"><img src="https://avatars.githubusercontent.com/u/33382714?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Cristi Ciobanu</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=c-ciobanu" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://arpitdalal.dev"><img src="https://avatars.githubusercontent.com/u/61059807?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Arpit Dalal</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=arpitdalal" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/robertrisch"><img src="https://avatars.githubusercontent.com/u/73828816?v=4?s=100" width="100px;" alt=""/><br /><sub><b>robertrisch</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=robertrisch" title="Documentation">📖</a></td>
|
||||
<td align="center"><a href="https://github.com/saadaltabari"><img src="https://avatars.githubusercontent.com/u/29986512?v=4?s=100" width="100px;" alt=""/><br /><sub><b>saadaltabari</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=saadaltabari" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=saadaltabari" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://github.com/iojcde"><img src="https://avatars.githubusercontent.com/u/31413538?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jeeho Ahn</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=iojcde" title="Documentation">📖</a> <a href="#tool-iojcde" title="Tools">🔧</a> <a href="https://github.com/blitz-js/blitz/commits?author=iojcde" title="Code">💻</a></td>
|
||||
<td align="center"><a href="https://linkedin.com/in/ryanwashburne"><img src="https://avatars.githubusercontent.com/u/12566087?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Ryan Washburne</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=ryanwashburne" title="Documentation">📖</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
save-exact=true
|
||||
legacy-peer-deps=true
|
||||
|
||||
public-hoist-pattern[]=react-query
|
||||
public-hoist-pattern[]=next
|
||||
public-hoist-pattern[]=secure-password
|
||||
public-hoist-pattern[]=*jest*
|
||||
@@ -2,7 +2,7 @@
|
||||
"name": "toolkit-app",
|
||||
"version": "1.0.1-alpha.16",
|
||||
"scripts": {
|
||||
"start:dev": "pnpm run prisma:start && next dev",
|
||||
"start:dev": "pnpm run prisma:start && blitz dev",
|
||||
"buildapp": "NODE_ENV=production pnpm blitz codegen && pnpm prisma generate && next build",
|
||||
"start": "next start",
|
||||
"lint": "next lint",
|
||||
@@ -28,8 +28,8 @@
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@blitzjs/rpc": "workspace:*",
|
||||
"@hookform/resolvers": "2.8.8",
|
||||
"@prisma/client": "3.9.0",
|
||||
"blitz": "workspace:2.0.0-alpha.56",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "workspace:2.0.0-alpha.59",
|
||||
"next": "12.2.0",
|
||||
"prisma": "4.0.0",
|
||||
"react": "18.0.0",
|
||||
|
||||
8
apps/web/.npmrc
Normal file
8
apps/web/.npmrc
Normal file
@@ -0,0 +1,8 @@
|
||||
save-exact=true
|
||||
legacy-peer-deps=true
|
||||
|
||||
public-hoist-pattern[]=react-query
|
||||
public-hoist-pattern[]=next
|
||||
public-hoist-pattern[]=secure-password
|
||||
public-hoist-pattern[]=*jest*
|
||||
public-hoist-pattern[]=@testing-library/*
|
||||
@@ -20,7 +20,7 @@
|
||||
"@blitzjs/config": "workspace:*",
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@blitzjs/rpc": "workspace:*",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"@types/jest": "27.4.1",
|
||||
"@types/passport-twitter": "1.0.37",
|
||||
"blitz": "workspace:*",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"@blitzjs/auth": "workspace:*",
|
||||
"@blitzjs/config": "workspace:*",
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "workspace:*",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.0",
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
"@blitzjs/auth": "workspace:*",
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@blitzjs/rpc": "workspace:*",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "workspace:*",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.0",
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
"@blitzjs/config": "workspace:*",
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@blitzjs/rpc": "workspace:*",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "workspace:*",
|
||||
"next": "12.2.0",
|
||||
"prisma": "4.0.0",
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
"@blitzjs/auth": "workspace:*",
|
||||
"@blitzjs/next": "workspace:*",
|
||||
"@blitzjs/rpc": "workspace:*",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "workspace:*",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.0",
|
||||
|
||||
@@ -1,5 +1,26 @@
|
||||
# @blitzjs/auth
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- blitz@2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 83b35590: Truncate errors from `api/auth/<strategy>/callback` request to 100 characters before passing them to the `?authError=` query parameter
|
||||
- Updated dependencies [83b35590]
|
||||
- blitz@2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [3511d5b6]
|
||||
- blitz@2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@blitzjs/auth",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"build": "unbuild",
|
||||
"predev": "wait-on -d 250 ../blitz/dist/index-server.d.ts",
|
||||
@@ -26,7 +26,7 @@
|
||||
"@types/secure-password": "3.1.1",
|
||||
"b64-lite": "1.4.0",
|
||||
"bad-behavior": "1.0.1",
|
||||
"blitz": "2.0.0-alpha.56",
|
||||
"blitz": "2.0.0-alpha.59",
|
||||
"cookie": "0.4.1",
|
||||
"cookie-session": "2.0.0",
|
||||
"debug": "4.3.3",
|
||||
@@ -39,7 +39,7 @@
|
||||
"url": "0.11.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.56",
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.59",
|
||||
"@testing-library/react": "13.0.0",
|
||||
"@testing-library/react-hooks": "7.0.2",
|
||||
"@types/cookie": "0.4.1",
|
||||
|
||||
@@ -105,7 +105,6 @@ export function AuthServerPlugin(options: AuthPluginOptions): BlitzServerPlugin<
|
||||
IncomingMessage,
|
||||
ServerResponse & {blitzCtx: Ctx}
|
||||
> = async (req, res, next) => {
|
||||
console.log("Starting sessionMiddleware...")
|
||||
if (!res.blitzCtx?.session) {
|
||||
await getSession(req, res)
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ import {
|
||||
RequestMiddleware,
|
||||
MiddlewareResponse,
|
||||
secureProxyMiddleware,
|
||||
truncateString,
|
||||
} from "blitz"
|
||||
import {IncomingMessage, ServerResponse} from "http"
|
||||
import {PublicData, SessionContext} from "../shared"
|
||||
@@ -161,7 +162,10 @@ export function passportAuth(config: BlitzPassportConfig): ApiHandler {
|
||||
"/"
|
||||
|
||||
if (error) {
|
||||
redirectUrl += "?authError=" + encodeURIComponent(error.toString())
|
||||
console.error(`Login via ${strategyName} was unsuccessful.`)
|
||||
console.error(error)
|
||||
redirectUrl +=
|
||||
"?authError=" + encodeURIComponent(truncateString(error.toString(), 100))
|
||||
res.setHeader("Location", redirectUrl)
|
||||
res.statusCode = 302
|
||||
res.end()
|
||||
|
||||
@@ -1,5 +1,29 @@
|
||||
# @blitzjs/next
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 3b213a35: Export router-context from browser entrypoint
|
||||
- Updated dependencies [3b213a35]
|
||||
- @blitzjs/rpc@2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 6ab9db78: Infer result type in the `api` handler and allow customizing it
|
||||
- Updated dependencies [c721c104]
|
||||
- @blitzjs/rpc@2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 0f18c68d: Avoid reassigning queryClient in prefetch methods
|
||||
- Updated dependencies [716e188d]
|
||||
- @blitzjs/rpc@2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@blitzjs/next",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"build": "unbuild",
|
||||
"dev": "pnpm predev && pnpm watch unbuild src --wait=0.2",
|
||||
@@ -24,7 +24,7 @@
|
||||
"eslint.js"
|
||||
],
|
||||
"dependencies": {
|
||||
"@blitzjs/rpc": "2.0.0-alpha.56",
|
||||
"@blitzjs/rpc": "2.0.0-alpha.59",
|
||||
"@types/hoist-non-react-statics": "3.3.1",
|
||||
"debug": "4.3.3",
|
||||
"fs-extra": "10.0.1",
|
||||
@@ -33,7 +33,7 @@
|
||||
"superjson": "1.8.0"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.56",
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.59",
|
||||
"@testing-library/dom": "8.13.0",
|
||||
"@testing-library/jest-dom": "5.16.3",
|
||||
"@testing-library/react": "13.0.0",
|
||||
@@ -43,7 +43,7 @@
|
||||
"@types/react": "18.0.1",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"@types/testing-library__react-hooks": "4.0.0",
|
||||
"blitz": "2.0.0-alpha.56",
|
||||
"blitz": "2.0.0-alpha.59",
|
||||
"cross-spawn": "7.0.3",
|
||||
"find-up": "4.1.0",
|
||||
"next": "12.2.0",
|
||||
|
||||
@@ -19,6 +19,7 @@ import {RouterContext} from "./router-context"
|
||||
export * from "./error-boundary"
|
||||
export * from "./error-component"
|
||||
export * from "./use-params"
|
||||
export * from "./router-context"
|
||||
export {Routes} from ".blitz"
|
||||
|
||||
const compose =
|
||||
|
||||
@@ -40,10 +40,10 @@ export interface BlitzNextApiResponse
|
||||
extends MiddlewareResponse,
|
||||
Omit<NextApiResponse, keyof MiddlewareResponse> {}
|
||||
|
||||
export type NextApiHandler = (
|
||||
export type NextApiHandler<TResult> = (
|
||||
req: NextApiRequest,
|
||||
res: BlitzNextApiResponse,
|
||||
) => void | Promise<void>
|
||||
) => TResult | void | Promise<TResult | void>
|
||||
|
||||
type SetupBlitzOptions = {
|
||||
plugins: BlitzServerPlugin<RequestMiddleware, Ctx>[]
|
||||
@@ -74,22 +74,22 @@ export type BlitzGSPHandler<
|
||||
GetStaticProps<TProps, Query, PD>
|
||||
>
|
||||
|
||||
export type BlitzAPIHandler = (
|
||||
req: Parameters<NextApiHandler>[0],
|
||||
res: Parameters<NextApiHandler>[1],
|
||||
export type BlitzAPIHandler<TResult> = (
|
||||
req: NextApiRequest,
|
||||
res: BlitzNextApiResponse,
|
||||
ctx: Ctx,
|
||||
) => ReturnType<NextApiHandler>
|
||||
) => TResult | void | Promise<TResult | void>
|
||||
|
||||
const prefetchQueryFactory = (
|
||||
ctx: BlitzCtx,
|
||||
): {
|
||||
queryClient: QueryClient | null
|
||||
getClient: () => QueryClient | null
|
||||
prefetchQuery: AddParameters<PrefetchQueryFn, [boolean?]>
|
||||
} => {
|
||||
let queryClient: null | QueryClient = null
|
||||
|
||||
return {
|
||||
queryClient,
|
||||
getClient: () => queryClient,
|
||||
prefetchQuery: async (fn, input, defaultOptions = {}, infinite = false) => {
|
||||
if (!queryClient) {
|
||||
queryClient = new QueryClient({defaultOptions})
|
||||
@@ -116,14 +116,14 @@ export const setupBlitzServer = ({plugins, onError}: SetupBlitzOptions) => {
|
||||
(res as MiddlewareResponse).blitzCtx,
|
||||
)
|
||||
|
||||
const {queryClient, prefetchQuery} = prefetchQueryFactory(ctx)
|
||||
const {getClient, prefetchQuery} = prefetchQueryFactory(ctx)
|
||||
|
||||
ctx.prefetchQuery = prefetchQuery
|
||||
ctx.prefetchInfiniteQuery = (...args) => prefetchQuery(...args, true)
|
||||
|
||||
try {
|
||||
const result = await handler({req, res, ctx, ...rest})
|
||||
return withSuperJsonProps(withDehydratedState(result, queryClient))
|
||||
return withSuperJsonProps(withDehydratedState(result, getClient()))
|
||||
} catch (err: any) {
|
||||
onError?.(err)
|
||||
throw err
|
||||
@@ -136,14 +136,14 @@ export const setupBlitzServer = ({plugins, onError}: SetupBlitzOptions) => {
|
||||
): GetStaticProps<TProps, Query, PD> =>
|
||||
async (context) => {
|
||||
const ctx = contextMiddleware.reduceRight((y, f) => (f ? f(y) : y), {} as Ctx)
|
||||
const {queryClient, prefetchQuery} = prefetchQueryFactory(ctx)
|
||||
const {getClient, prefetchQuery} = prefetchQueryFactory(ctx)
|
||||
|
||||
ctx.prefetchQuery = prefetchQuery
|
||||
ctx.prefetchInfiniteQuery = (...args) => prefetchQuery(...args, true)
|
||||
|
||||
try {
|
||||
const result = await handler({...context, ctx: ctx})
|
||||
return withSuperJsonProps(withDehydratedState(result, queryClient))
|
||||
return withSuperJsonProps(withDehydratedState(result, getClient()))
|
||||
} catch (err: any) {
|
||||
onError?.(err)
|
||||
throw err
|
||||
@@ -151,7 +151,9 @@ export const setupBlitzServer = ({plugins, onError}: SetupBlitzOptions) => {
|
||||
}
|
||||
|
||||
const api =
|
||||
(handler: BlitzAPIHandler): NextApiHandler =>
|
||||
<TResult = Promise<void> | void>(
|
||||
handler: BlitzAPIHandler<TResult>,
|
||||
): NextApiHandler<TResult | void> =>
|
||||
async (req, res) => {
|
||||
try {
|
||||
await handleRequestWithMiddleware(req, res, middlewares)
|
||||
|
||||
@@ -1,5 +1,31 @@
|
||||
# @blitzjs/rpc
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 3b213a35: Remove debug console.log
|
||||
- @blitzjs/auth@2.0.0-alpha.59
|
||||
- blitz@2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- c721c104: Pass `signal` from useQuery to Blitz internal rpc client to be able to cancel queries on unmount
|
||||
- Updated dependencies [83b35590]
|
||||
- blitz@2.0.0-alpha.58
|
||||
- @blitzjs/auth@2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 716e188d: Fix queries/mutations lookup on Windows
|
||||
- Updated dependencies [3511d5b6]
|
||||
- blitz@2.0.0-alpha.57
|
||||
- @blitzjs/auth@2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@blitzjs/rpc",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"build": "unbuild",
|
||||
"predev": "wait-on -d 250 ../blitz/dist/index-server.d.ts && wait-on -d 250 ../blitz-auth/dist/index-browser.d.ts",
|
||||
@@ -20,7 +20,7 @@
|
||||
"dist/**"
|
||||
],
|
||||
"dependencies": {
|
||||
"@blitzjs/auth": "2.0.0-alpha.56",
|
||||
"@blitzjs/auth": "2.0.0-alpha.59",
|
||||
"b64-lite": "1.4.0",
|
||||
"bad-behavior": "1.0.1",
|
||||
"chalk": "^4.1.0",
|
||||
@@ -30,11 +30,11 @@
|
||||
"zod": "3.17.3"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.56",
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.59",
|
||||
"@types/debug": "4.1.7",
|
||||
"@types/react": "18.0.1",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"blitz": "2.0.0-alpha.56",
|
||||
"blitz": "2.0.0-alpha.59",
|
||||
"next": "12.2.0",
|
||||
"react": "18.0.0",
|
||||
"react-dom": "18.0.0",
|
||||
@@ -43,7 +43,7 @@
|
||||
"watch": "1.0.2"
|
||||
},
|
||||
"peerDependencies": {
|
||||
"blitz": "2.0.0-alpha.56",
|
||||
"blitz": "2.0.0-alpha.59",
|
||||
"next": ">=12.2.0"
|
||||
},
|
||||
"publishConfig": {
|
||||
|
||||
@@ -85,7 +85,7 @@ export function useQuery<
|
||||
const {data, ...queryRest} = useReactQuery({
|
||||
queryKey: routerIsReady ? queryKey : ["_routerNotReady_"],
|
||||
queryFn: routerIsReady
|
||||
? () => enhancedResolverRpcClient(params, {fromQueryHook: true})
|
||||
? ({signal}) => enhancedResolverRpcClient(params, {fromQueryHook: true}, signal)
|
||||
: (emptyQueryFn as any),
|
||||
...options,
|
||||
enabled,
|
||||
@@ -170,7 +170,7 @@ export function usePaginatedQuery<
|
||||
const {data, ...queryRest} = useReactQuery({
|
||||
queryKey: routerIsReady ? queryKey : ["_routerNotReady_"],
|
||||
queryFn: routerIsReady
|
||||
? () => enhancedResolverRpcClient(params, {fromQueryHook: true})
|
||||
? ({signal}) => enhancedResolverRpcClient(params, {fromQueryHook: true}, signal)
|
||||
: (emptyQueryFn as any),
|
||||
...options,
|
||||
keepPreviousData: true,
|
||||
@@ -267,10 +267,8 @@ export function useInfiniteQuery<
|
||||
// Without this cache for usePaginatedQuery and this will conflict and break.
|
||||
queryKey: routerIsReady ? queryKey : ["_routerNotReady_"],
|
||||
queryFn: routerIsReady
|
||||
? ({pageParam}) =>
|
||||
enhancedResolverRpcClient(getQueryParams(pageParam), {
|
||||
fromQueryHook: true,
|
||||
})
|
||||
? ({pageParam, signal}) =>
|
||||
enhancedResolverRpcClient(getQueryParams(pageParam), {fromQueryHook: true}, signal)
|
||||
: (emptyQueryFn as any),
|
||||
...options,
|
||||
enabled,
|
||||
|
||||
@@ -39,7 +39,7 @@ export interface EnhancedRpc {
|
||||
}
|
||||
|
||||
export interface RpcClientBase<Input = unknown, Result = unknown> {
|
||||
(params: Input, opts?: RpcOptions): Promise<Result>
|
||||
(params: Input, opts?: RpcOptions, signal?: AbortSignal): Promise<Result>
|
||||
}
|
||||
|
||||
export interface RpcClient<Input = unknown, Result = unknown>
|
||||
@@ -57,7 +57,7 @@ export function __internal_buildRpcClient({
|
||||
}: BuildRpcClientParams): RpcClient {
|
||||
const fullRoutePath = normalizeApiRoute("/api/rpc" + routePath)
|
||||
|
||||
const httpClient: RpcClientBase = async (params, opts = {}) => {
|
||||
const httpClient: RpcClientBase = async (params, opts = {}, signal = undefined) => {
|
||||
const debug = (await import("debug")).default("blitz:rpc")
|
||||
if (!opts.fromQueryHook && !opts.fromInvoke) {
|
||||
console.warn(
|
||||
@@ -93,9 +93,6 @@ export function __internal_buildRpcClient({
|
||||
serialized = serialize(params)
|
||||
}
|
||||
|
||||
// Create a new AbortController instance for this request
|
||||
const controller = new AbortController()
|
||||
|
||||
const promise = window
|
||||
.fetch(fullRoutePath, {
|
||||
method: "POST",
|
||||
@@ -108,7 +105,7 @@ export function __internal_buildRpcClient({
|
||||
params: serialized.meta,
|
||||
},
|
||||
}),
|
||||
signal: controller.signal,
|
||||
signal,
|
||||
})
|
||||
.then(async (response) => {
|
||||
debug("Received request for", routePath)
|
||||
|
||||
@@ -80,7 +80,7 @@ export function installWebpackConfig({
|
||||
webpackRuleOptions,
|
||||
}: InstallWebpackConfigOptions) {
|
||||
webpackConfig.module.rules.push({
|
||||
test: /\/\[\[\.\.\.blitz]]\.[jt]s$/,
|
||||
test: /[\\/]\[\[\.\.\.blitz]]\.[jt]sx?$/,
|
||||
use: [
|
||||
{
|
||||
loader: loaderServer,
|
||||
@@ -146,10 +146,10 @@ export function rpcHandler(config: RpcConfig) {
|
||||
"It seems your Blitz RPC endpoint file is not named [[...blitz]].(jt)s. Please ensure it is",
|
||||
)
|
||||
|
||||
const relativeRoutePath = req.query.blitz.join("/")
|
||||
const relativeRoutePath = (req.query.blitz as string[])?.join("/")
|
||||
const routePath = "/" + relativeRoutePath
|
||||
|
||||
const loadableResolver = resolverMap[routePath]
|
||||
const loadableResolver = resolverMap?.[routePath]
|
||||
if (!loadableResolver) {
|
||||
throw new Error("No resolver for path: " + routePath)
|
||||
}
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import {dirname, join, posix} from "path"
|
||||
import {dirname, join, posix, relative} from "path"
|
||||
import {promises} from "fs"
|
||||
import {
|
||||
assertPosixPath,
|
||||
@@ -37,6 +37,10 @@ export async function loader(this: Loader, input: string): Promise<string> {
|
||||
|
||||
module.exports = loader
|
||||
|
||||
function slash(str: string) {
|
||||
return str.replace(/\\/g, "/")
|
||||
}
|
||||
|
||||
export async function transformBlitzRpcServer(
|
||||
src: string,
|
||||
id: string,
|
||||
@@ -54,7 +58,7 @@ export async function transformBlitzRpcServer(
|
||||
code += "\n\n"
|
||||
|
||||
for (let resolverFilePath of resolvers) {
|
||||
const relativeResolverPath = posix.relative(dirname(id), join(root, resolverFilePath))
|
||||
const relativeResolverPath = slash(relative(dirname(id), join(root, resolverFilePath)))
|
||||
const routePath = convertPageFilePathToRoutePath(resolverFilePath, options?.resolverPath)
|
||||
code += `__internal_addBlitzRpcResolver('${routePath}', () => import('${relativeResolverPath}'));`
|
||||
code += "\n"
|
||||
|
||||
@@ -1,5 +1,29 @@
|
||||
# blitz
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @blitzjs/generator@2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Minor Changes
|
||||
|
||||
- 83b35590: Truncate errors from `api/auth/<strategy>/callback` request to 100 characters before passing them to the `?authError=` query parameter
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [e339e2fd]
|
||||
- @blitzjs/generator@2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- 3511d5b6: Temporarily skip version check
|
||||
- @blitzjs/generator@2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "blitz",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"build": "unbuild",
|
||||
"dev": "watch unbuild src --wait=0.2",
|
||||
@@ -23,7 +23,7 @@
|
||||
"blitz": "bin/blitz"
|
||||
},
|
||||
"dependencies": {
|
||||
"@blitzjs/generator": "2.0.0-alpha.56",
|
||||
"@blitzjs/generator": "2.0.0-alpha.59",
|
||||
"arg": "5.0.1",
|
||||
"boxen": "7.0.0",
|
||||
"chalk": "^4.1.0",
|
||||
@@ -54,7 +54,7 @@
|
||||
"watchpack": "2.1.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.56",
|
||||
"@blitzjs/config": "workspace:2.0.0-alpha.59",
|
||||
"@types/cookie": "0.4.1",
|
||||
"@types/cross-spawn": "6.0.2",
|
||||
"@types/debug": "4.1.7",
|
||||
|
||||
@@ -219,7 +219,7 @@ const determinePkgManagerToInstallDeps = async () => {
|
||||
}
|
||||
|
||||
const newApp: CliCommand = async (argv) => {
|
||||
const shouldUpgrade = !args["--skip-upgrade"]
|
||||
const shouldUpgrade = false // !args["--skip-upgrade"]
|
||||
if (shouldUpgrade) {
|
||||
await checkLatestVersion()
|
||||
}
|
||||
|
||||
@@ -142,3 +142,7 @@ export function prettyMs(ms: number): string {
|
||||
export function interopDefault(mod: any) {
|
||||
return mod.default || mod
|
||||
}
|
||||
|
||||
export function truncateString(str: string, maxLength: number): string {
|
||||
return str.length > maxLength ? str.substring(0, maxLength - 3) + "..." : str
|
||||
}
|
||||
|
||||
@@ -1,5 +1,32 @@
|
||||
# @blitzjs/codemod
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- @blitzjs/generator@2.0.0-alpha.59
|
||||
- blitz@2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- dcdcd040: These are various changes to will make the codemod more dynamic and work with a larger variety of codebases. These fixes are implemented to make the codemod work with flightdeck.
|
||||
- 7e538ba4: Import ErrorComponent as DefaultErrorComponent
|
||||
- 8e00605a: Updates the error messages based on if it's a babel parse error or an unexpected error
|
||||
- Updated dependencies [83b35590]
|
||||
- Updated dependencies [e339e2fd]
|
||||
- blitz@2.0.0-alpha.58
|
||||
- @blitzjs/generator@2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- Updated dependencies [3511d5b6]
|
||||
- blitz@2.0.0-alpha.57
|
||||
- @blitzjs/generator@2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
### Patch Changes
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@blitzjs/codemod",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"build": "unbuild",
|
||||
"dev": "watch unbuild src --wait=0.2",
|
||||
@@ -25,9 +25,9 @@
|
||||
"@babel/plugin-proposal-class-properties": "7.17.12",
|
||||
"@babel/plugin-syntax-jsx": "7.17.12",
|
||||
"@babel/plugin-syntax-typescript": "7.17.12",
|
||||
"@blitzjs/generator": "2.0.0-alpha.56",
|
||||
"@blitzjs/generator": "2.0.0-alpha.59",
|
||||
"arg": "5.0.1",
|
||||
"blitz": "2.0.0-alpha.56",
|
||||
"blitz": "2.0.0-alpha.59",
|
||||
"chalk": "^4.1.0",
|
||||
"cross-spawn": "7.0.3",
|
||||
"debug": "4.3.3",
|
||||
|
||||
@@ -184,6 +184,10 @@ const upgradeLegacy = async () => {
|
||||
BlitzLayout: "@blitzjs/next",
|
||||
}
|
||||
|
||||
const renames: Record<string, string> = {
|
||||
ErrorComponent: "DefaultErrorComponent",
|
||||
}
|
||||
|
||||
getAllFiles(appDir, [], [], [".ts", ".tsx", ".js", ".jsx"]).forEach((filename) => {
|
||||
const program = getCollectionFromSource(path.resolve(appDir, filename))
|
||||
const parsedProgram = program.get()
|
||||
@@ -197,7 +201,13 @@ const upgradeLegacy = async () => {
|
||||
? specifier.imported.value
|
||||
: specifier.imported.name
|
||||
if (importedName in specialImports) {
|
||||
addNamedImport(program, importedName, specialImports[importedName]!)
|
||||
addNamedImport(
|
||||
program,
|
||||
importedName,
|
||||
specialImports[importedName]!,
|
||||
undefined,
|
||||
renames[importedName],
|
||||
)
|
||||
removeImport(program, importedName, "blitz")
|
||||
}
|
||||
})
|
||||
@@ -433,6 +443,7 @@ const upgradeLegacy = async () => {
|
||||
j.Identifier,
|
||||
(node) => node.name === "middleware",
|
||||
)
|
||||
|
||||
if (middlewareArray.length) {
|
||||
const middlewares = middlewareArray
|
||||
.get()
|
||||
@@ -451,7 +462,12 @@ const upgradeLegacy = async () => {
|
||||
let importStatements = []
|
||||
for (let nodes of blitzConfigProgram.get().value.program.body) {
|
||||
if (nodes.type === "ImportDeclaration") {
|
||||
if (nodes.source.value !== "blitz") {
|
||||
// Find duplicates
|
||||
const dup = blitzServerProgram.find(
|
||||
j.ImportDeclaration,
|
||||
(node) => node.source.value === nodes.source.value,
|
||||
)
|
||||
if (nodes.source.value !== "blitz" && !dup.length) {
|
||||
importStatements.push(nodes)
|
||||
}
|
||||
}
|
||||
@@ -466,11 +482,7 @@ const upgradeLegacy = async () => {
|
||||
}
|
||||
}
|
||||
|
||||
importStatements.forEach((s) =>
|
||||
blitzServerProgram
|
||||
.get()
|
||||
.value.program.body.unshift(j.variableDeclaration(s.kind, s.declarations)),
|
||||
)
|
||||
importStatements.forEach((s) => blitzServerProgram.get().value.program.body.unshift(s))
|
||||
|
||||
fs.writeFileSync(
|
||||
`${appDir}/blitz-server.${isTypescript ? "ts" : "js"}`,
|
||||
@@ -741,40 +753,50 @@ const upgradeLegacy = async () => {
|
||||
const parsedProgram = program.get()
|
||||
|
||||
const findRouterQueryImport = findImport(program, "next/router")
|
||||
findRouterQueryImport?.forEach((node) => {
|
||||
const getNode = node.get()
|
||||
getNode.value.specifiers.slice().forEach((specifier: any, index: number) => {
|
||||
const importedName =
|
||||
specifier.imported.type === "StringLiteral"
|
||||
? specifier.imported.value
|
||||
: specifier.imported.name
|
||||
if (importedName === "useRouterQuery") {
|
||||
addNamedImport(program, "useRouter", "next/router")
|
||||
getNode.value.specifiers.splice(index, 1)
|
||||
// Removed left overs
|
||||
if (!getNode.value.specifiers?.length) {
|
||||
const index = parsedProgram.value.program.body.indexOf(getNode.value)
|
||||
parsedProgram.value.program.body.splice(index, 1)
|
||||
|
||||
if (findRouterQueryImport?.length) {
|
||||
findRouterQueryImport?.forEach((node) => {
|
||||
const getNode = node.get()
|
||||
getNode.value.specifiers.slice().forEach((specifier: any, index: number) => {
|
||||
const importedName = (): string | null => {
|
||||
if (specifier.imported) {
|
||||
if (specifier.imported.type === "StringLiteral") {
|
||||
return specifier.imported.value
|
||||
} else if (specifier.imported.type === "Identifier") {
|
||||
return specifier.imported.name
|
||||
}
|
||||
}
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
if (importedName() && importedName() === "useRouterQuery") {
|
||||
addNamedImport(program, "useRouter", "next/router")
|
||||
getNode.value.specifiers.splice(index, 1)
|
||||
// Removed left overs
|
||||
if (!getNode.value.specifiers?.length) {
|
||||
const index = parsedProgram.value.program.body.indexOf(getNode.value)
|
||||
parsedProgram.value.program.body.splice(index, 1)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
const findCallUseRouterQuery = program.find(
|
||||
j.CallExpression,
|
||||
(node) => node.callee.name === "useRouterQuery",
|
||||
)
|
||||
findCallUseRouterQuery.forEach((call) => {
|
||||
const nodePath = call.get()
|
||||
nodePath.parentPath.value.init = j.expressionStatement(
|
||||
j.memberExpression(
|
||||
j.callExpression(j.identifier("useRouter"), []),
|
||||
j.identifier("query"),
|
||||
),
|
||||
const findCallUseRouterQuery = program.find(
|
||||
j.CallExpression,
|
||||
(node) => node.callee.name === "useRouterQuery",
|
||||
)
|
||||
})
|
||||
findCallUseRouterQuery.forEach((call) => {
|
||||
const nodePath = call.get()
|
||||
nodePath.parentPath.value.init = j.expressionStatement(
|
||||
j.memberExpression(
|
||||
j.callExpression(j.identifier("useRouter"), []),
|
||||
j.identifier("query"),
|
||||
),
|
||||
)
|
||||
})
|
||||
|
||||
fs.writeFileSync(filepath, program.toSource())
|
||||
fs.writeFileSync(filepath, program.toSource())
|
||||
}
|
||||
})
|
||||
|
||||
getAllFiles(appDir, [], [], [".ts", ".tsx", ".js", ".jsx"]).forEach((file) => {
|
||||
@@ -786,45 +808,54 @@ const upgradeLegacy = async () => {
|
||||
j.ImportDeclaration,
|
||||
(node) => node.source.value === "next/router",
|
||||
)
|
||||
findRouterQueryImport.forEach((node) => {
|
||||
const getNode = node.get()
|
||||
getNode.value.specifiers.slice().forEach((specifier: any, index: number) => {
|
||||
const importedName =
|
||||
specifier.imported.type === "StringLiteral"
|
||||
? specifier.imported.value
|
||||
: specifier.imported.name
|
||||
if (importedName === "useRouterQuery") {
|
||||
parsedProgram.value.program.body.unshift(
|
||||
j.importDeclaration(
|
||||
[j.importSpecifier(j.identifier("useRouter"))],
|
||||
j.stringLiteral("next/router"),
|
||||
),
|
||||
)
|
||||
getNode.value.specifiers.splice(index, 1)
|
||||
// Removed left overs
|
||||
if (!getNode.value.specifiers?.length) {
|
||||
const index = parsedProgram.value.program.body.indexOf(getNode.value)
|
||||
parsedProgram.value.program.body.splice(index, 1)
|
||||
if (findRouterQueryImport?.length) {
|
||||
findRouterQueryImport.forEach((node) => {
|
||||
const getNode = node.get()
|
||||
getNode.value.specifiers.slice().forEach((specifier: any, index: number) => {
|
||||
const importedName = (): string | null => {
|
||||
if (specifier.imported) {
|
||||
if (specifier.imported.type === "StringLiteral") {
|
||||
return specifier.imported.value
|
||||
} else if (specifier.imported.type === "Identifier") {
|
||||
return specifier.imported.name
|
||||
}
|
||||
}
|
||||
return null
|
||||
}
|
||||
}
|
||||
|
||||
if (importedName() && importedName() === "useRouterQuery") {
|
||||
parsedProgram.value.program.body.unshift(
|
||||
j.importDeclaration(
|
||||
[j.importSpecifier(j.identifier("useRouter"))],
|
||||
j.stringLiteral("next/router"),
|
||||
),
|
||||
)
|
||||
getNode.value.specifiers.splice(index, 1)
|
||||
// Removed left overs
|
||||
if (!getNode.value.specifiers?.length) {
|
||||
const index = parsedProgram.value.program.body.indexOf(getNode.value)
|
||||
parsedProgram.value.program.body.splice(index, 1)
|
||||
}
|
||||
}
|
||||
})
|
||||
})
|
||||
})
|
||||
|
||||
const findCallUseRouterQuery = program.find(
|
||||
j.CallExpression,
|
||||
(node) => node.callee.name === "useRouterQuery",
|
||||
)
|
||||
findCallUseRouterQuery.forEach((call) => {
|
||||
const nodePath = call.get()
|
||||
nodePath.parentPath.value.init = j.expressionStatement(
|
||||
j.memberExpression(
|
||||
j.callExpression(j.identifier("useRouter"), []),
|
||||
j.identifier("query"),
|
||||
),
|
||||
const findCallUseRouterQuery = program.find(
|
||||
j.CallExpression,
|
||||
(node) => node.callee.name === "useRouterQuery",
|
||||
)
|
||||
})
|
||||
findCallUseRouterQuery.forEach((call) => {
|
||||
const nodePath = call.get()
|
||||
nodePath.parentPath.value.init = j.expressionStatement(
|
||||
j.memberExpression(
|
||||
j.callExpression(j.identifier("useRouter"), []),
|
||||
j.identifier("query"),
|
||||
),
|
||||
)
|
||||
})
|
||||
|
||||
fs.writeFileSync(filepath, program.toSource())
|
||||
fs.writeFileSync(filepath, program.toSource())
|
||||
}
|
||||
})
|
||||
},
|
||||
})
|
||||
@@ -907,9 +938,11 @@ const upgradeLegacy = async () => {
|
||||
)
|
||||
|
||||
const documentHead = program
|
||||
.find(j.Identifier, (node) => node.name === "DocumentHead")
|
||||
.find(j.JSXElement, (node) => node.openingElement.name.name === "DocumentHead")
|
||||
.get()
|
||||
documentHead.value.name = "Head"
|
||||
|
||||
documentHead.value.openingElement.name.name = "Head"
|
||||
documentHead.value.closingElement.name.name = "Head"
|
||||
|
||||
const blitzScript = program.find(j.Identifier, (node) => node.name === "BlitzScript").get()
|
||||
blitzScript.value.name = "NextScript"
|
||||
@@ -959,15 +992,20 @@ const upgradeLegacy = async () => {
|
||||
const program = getCollectionFromSource(file)
|
||||
|
||||
const defaultExportPath = findDefaultExportPath(program)
|
||||
if (!defaultExportPath) {
|
||||
return
|
||||
|
||||
if (defaultExportPath) {
|
||||
const {node} = defaultExportPath
|
||||
|
||||
if (node.declaration.type === "Identifier") {
|
||||
node.declaration = j.callExpression(j.identifier("api"), [node.declaration as any])
|
||||
addNamedImport(program, "api", "app/blitz-server")
|
||||
} else if (node.declaration.type === "FunctionDeclaration") {
|
||||
node.declaration = j.template.expression`api(${node.declaration})`
|
||||
addNamedImport(program, "api", "app/blitz-server")
|
||||
}
|
||||
|
||||
fs.writeFileSync(path.join(path.resolve(file)), program.toSource())
|
||||
}
|
||||
|
||||
const {node} = defaultExportPath
|
||||
node.declaration = j.callExpression(j.identifier("api"), [node.declaration as any])
|
||||
addNamedImport(program, "api", "app/blitz-server")
|
||||
|
||||
fs.writeFileSync(path.join(path.resolve(file)), program.toSource())
|
||||
})
|
||||
}
|
||||
},
|
||||
@@ -1118,8 +1156,23 @@ const upgradeLegacy = async () => {
|
||||
try {
|
||||
await step.action()
|
||||
} catch (err) {
|
||||
const error = err as {code: string} | string
|
||||
spinner.fail(`${step.name}`)
|
||||
log.error(err as string)
|
||||
log.error(error as string)
|
||||
|
||||
if (error && typeof error === "object" && error.code === "BABEL_PARSE_ERROR") {
|
||||
log.error(
|
||||
log.withBrand(
|
||||
"Don't panic, go to the file with the error & manually fix it. Then run the codemod again. It will continue where it left off.",
|
||||
),
|
||||
)
|
||||
} else {
|
||||
log.error(
|
||||
log.withBrand(
|
||||
"This is an unexpected error. Please ask for help in the discord #general-help channel. https://discord.blitzjs.com",
|
||||
),
|
||||
)
|
||||
}
|
||||
failedAt = index + 1
|
||||
fs.writeJsonSync(".migration.json", {
|
||||
failedAt,
|
||||
|
||||
@@ -168,6 +168,7 @@ export function addNamedImport(
|
||||
importStatement: string,
|
||||
importFrom: string,
|
||||
defaultSpecifier?: boolean,
|
||||
asImport?: string,
|
||||
) {
|
||||
const existingImport = program.find(
|
||||
j.ImportDeclaration,
|
||||
@@ -183,7 +184,11 @@ export function addNamedImport(
|
||||
if (existingSpecifier.length) {
|
||||
return
|
||||
}
|
||||
existingImport.get().value.specifiers.push(j.importSpecifier(j.identifier(importStatement)))
|
||||
existingImport
|
||||
.get()
|
||||
.value.specifiers.push(
|
||||
j.importSpecifier(j.identifier(importStatement), asImport ? j.identifier(asImport) : null),
|
||||
)
|
||||
} else {
|
||||
program
|
||||
.get()
|
||||
@@ -194,7 +199,12 @@ export function addNamedImport(
|
||||
j.stringLiteral(importFrom),
|
||||
)
|
||||
: j.importDeclaration(
|
||||
[j.importSpecifier(j.identifier(importStatement))],
|
||||
[
|
||||
j.importSpecifier(
|
||||
j.identifier(importStatement),
|
||||
asImport ? j.identifier(asImport) : null,
|
||||
),
|
||||
],
|
||||
j.stringLiteral(importFrom),
|
||||
),
|
||||
)
|
||||
|
||||
@@ -1,5 +1,11 @@
|
||||
# @blitzjs/config
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
## 2.0.0-alpha.55
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@blitzjs/config",
|
||||
"private": true,
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@typescript-eslint/eslint-plugin": "5.9.1",
|
||||
|
||||
@@ -1,5 +1,15 @@
|
||||
# @blitzjs/generator
|
||||
|
||||
## 2.0.0-alpha.59
|
||||
|
||||
## 2.0.0-alpha.58
|
||||
|
||||
### Patch Changes
|
||||
|
||||
- e339e2fd: Add hoist pattern entry for react-query in new app templates
|
||||
|
||||
## 2.0.0-alpha.57
|
||||
|
||||
## 2.0.0-alpha.56
|
||||
|
||||
## 2.0.0-alpha.55
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "@blitzjs/generator",
|
||||
"version": "2.0.0-alpha.56",
|
||||
"version": "2.0.0-alpha.59",
|
||||
"scripts": {
|
||||
"dev": "watch unbuild src --wait=0.2",
|
||||
"build": "unbuild && pnpm build:templates",
|
||||
@@ -45,7 +45,7 @@
|
||||
"vinyl": "2.2.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "2.0.0-alpha.56",
|
||||
"@blitzjs/config": "2.0.0-alpha.59",
|
||||
"@juanm04/cpx": "2.0.1",
|
||||
"@types/babel__core": "7.1.19",
|
||||
"@types/diff": "5.0.2",
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
save-exact=true
|
||||
legacy-peer-deps=true
|
||||
strict-peer-dependencies=false
|
||||
strict-peer-dependencies=false
|
||||
side-effects-cache=false
|
||||
|
||||
public-hoist-pattern[]=react-query
|
||||
public-hoist-pattern[]=next
|
||||
public-hoist-pattern[]=secure-password
|
||||
public-hoist-pattern[]=*jest*
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"@blitzjs/auth": "alpha",
|
||||
"@blitzjs/next": "alpha",
|
||||
"@blitzjs/rpc": "alpha",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "alpha",
|
||||
"next": "12.2.0",
|
||||
"prisma": "4.0.0",
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"@blitzjs/auth": "alpha",
|
||||
"@blitzjs/next": "alpha",
|
||||
"@blitzjs/rpc": "alpha",
|
||||
"@prisma/client": "3.9.0",
|
||||
"@prisma/client": "4.0.0",
|
||||
"blitz": "alpha",
|
||||
"next": "12.2.0",
|
||||
"prisma": "4.0.0",
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
save-exact=true
|
||||
legacy-peer-deps=true
|
||||
strict-peer-dependencies=false
|
||||
strict-peer-dependencies=false
|
||||
side-effects-cache=false
|
||||
|
||||
public-hoist-pattern[]=react-query
|
||||
public-hoist-pattern[]=next
|
||||
public-hoist-pattern[]=secure-password
|
||||
public-hoist-pattern[]=*jest*
|
||||
public-hoist-pattern[]=@testing-library/*
|
||||
# Needed for Blitz to work properly. Don't remove the lines above.
|
||||
# Needed for Blitz to work properly. Don't remove the lines above.
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
"@typescript-eslint/parser": "5.9.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@blitzjs/config": "2.0.0-alpha.56",
|
||||
"@blitzjs/config": "2.0.0-alpha.59",
|
||||
"@types/react": "18.0.1",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"react": "18.0.0",
|
||||
|
||||
78
pnpm-lock.yaml
generated
78
pnpm-lock.yaml
generated
@@ -41,7 +41,7 @@ importers:
|
||||
"@blitzjs/rpc": workspace:*
|
||||
"@hookform/resolvers": 2.8.8
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@testing-library/react": 13.0.0
|
||||
"@testing-library/react-hooks": 7.0.2
|
||||
"@types/jest": 27.4.1
|
||||
@@ -49,7 +49,7 @@ importers:
|
||||
"@types/preview-email": 2.0.1
|
||||
"@types/react": 18.0.1
|
||||
"@typescript-eslint/eslint-plugin": 5.9.1
|
||||
blitz: workspace:2.0.0-alpha.55
|
||||
blitz: workspace:2.0.0-alpha.58
|
||||
eslint: 7.32.0
|
||||
eslint-config-next: 12.2.0
|
||||
eslint-config-prettier: 8.5.0
|
||||
@@ -74,7 +74,7 @@ importers:
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@hookform/resolvers": 2.8.8_react-hook-form@7.29.0
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
blitz: link:../../packages/blitz
|
||||
next: 12.2.0_zpnidt7m3osuk7shl3s4oenomq
|
||||
prisma: 4.0.0
|
||||
@@ -111,7 +111,7 @@ importers:
|
||||
"@blitzjs/next": workspace:*
|
||||
"@blitzjs/rpc": workspace:*
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@types/jest": 27.4.1
|
||||
"@types/passport-twitter": 1.0.37
|
||||
"@types/react": 18.0.1
|
||||
@@ -131,7 +131,7 @@ importers:
|
||||
"@blitzjs/config": link:../../packages/config
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
"@types/jest": 27.4.1
|
||||
"@types/passport-twitter": 1.0.37
|
||||
blitz: link:../../packages/blitz
|
||||
@@ -155,7 +155,7 @@ importers:
|
||||
"@blitzjs/config": workspace:*
|
||||
"@blitzjs/next": workspace:*
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@types/express": 4.17.13
|
||||
"@types/fs-extra": 9.0.13
|
||||
"@types/node-fetch": 2.6.1
|
||||
@@ -176,7 +176,7 @@ importers:
|
||||
"@blitzjs/auth": link:../../packages/blitz-auth
|
||||
"@blitzjs/config": link:../../packages/config
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
blitz: link:../../packages/blitz
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.0_zpnidt7m3osuk7shl3s4oenomq
|
||||
@@ -242,7 +242,7 @@ importers:
|
||||
"@blitzjs/next": workspace:*
|
||||
"@blitzjs/rpc": workspace:*
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@types/express": 4.17.13
|
||||
"@types/fs-extra": 9.0.13
|
||||
"@types/node-fetch": 2.6.1
|
||||
@@ -263,7 +263,7 @@ importers:
|
||||
"@blitzjs/auth": link:../../packages/blitz-auth
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
blitz: link:../../packages/blitz
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.0_zpnidt7m3osuk7shl3s4oenomq
|
||||
@@ -290,7 +290,7 @@ importers:
|
||||
"@blitzjs/config": workspace:*
|
||||
"@blitzjs/next": workspace:*
|
||||
"@blitzjs/rpc": workspace:*
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@testing-library/react": 13.0.0
|
||||
"@types/react": 18.0.1
|
||||
"@vitejs/plugin-react": 1.3.0
|
||||
@@ -311,7 +311,7 @@ importers:
|
||||
"@blitzjs/config": link:../../packages/config
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
blitz: link:../../packages/blitz
|
||||
next: 12.2.0_zpnidt7m3osuk7shl3s4oenomq
|
||||
prisma: 4.0.0
|
||||
@@ -324,7 +324,7 @@ importers:
|
||||
"@vitejs/plugin-react": 1.3.0
|
||||
delay: 5.0.0
|
||||
eslint: 7.32.0
|
||||
eslint-config-next: 12.2.2_hrkuebk64jiu2ut2d2sm4oylnu
|
||||
eslint-config-next: 12.2.3_hrkuebk64jiu2ut2d2sm4oylnu
|
||||
eslint-plugin-testing-library: 5.0.1_hrkuebk64jiu2ut2d2sm4oylnu
|
||||
jsdom: 19.0.0
|
||||
typescript: 4.6.3
|
||||
@@ -373,7 +373,7 @@ importers:
|
||||
"@blitzjs/next": workspace:*
|
||||
"@blitzjs/rpc": workspace:*
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@prisma/client": 3.9.0
|
||||
"@prisma/client": 4.0.0
|
||||
"@types/express": 4.17.13
|
||||
"@types/fs-extra": 9.0.13
|
||||
"@types/node-fetch": 2.6.1
|
||||
@@ -394,7 +394,7 @@ importers:
|
||||
"@blitzjs/auth": link:../../packages/blitz-auth
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 3.9.0_prisma@4.0.0
|
||||
"@prisma/client": 4.0.0_prisma@4.0.0
|
||||
blitz: link:../../packages/blitz
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.0_zpnidt7m3osuk7shl3s4oenomq
|
||||
@@ -475,8 +475,8 @@ importers:
|
||||
|
||||
packages/blitz:
|
||||
specifiers:
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.55
|
||||
"@blitzjs/generator": 2.0.0-alpha.55
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.58
|
||||
"@blitzjs/generator": 2.0.0-alpha.58
|
||||
"@types/cookie": 0.4.1
|
||||
"@types/cross-spawn": 6.0.2
|
||||
"@types/debug": 4.1.7
|
||||
@@ -584,7 +584,7 @@ importers:
|
||||
|
||||
packages/blitz-auth:
|
||||
specifiers:
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.55
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.58
|
||||
"@testing-library/react": 13.0.0
|
||||
"@testing-library/react-hooks": 7.0.2
|
||||
"@types/b64-lite": 1.3.0
|
||||
@@ -598,7 +598,7 @@ importers:
|
||||
"@types/secure-password": 3.1.1
|
||||
b64-lite: 1.4.0
|
||||
bad-behavior: 1.0.1
|
||||
blitz: 2.0.0-alpha.55
|
||||
blitz: 2.0.0-alpha.58
|
||||
cookie: 0.4.1
|
||||
cookie-session: 2.0.0
|
||||
debug: 4.3.3
|
||||
@@ -649,8 +649,8 @@ importers:
|
||||
|
||||
packages/blitz-next:
|
||||
specifiers:
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.55
|
||||
"@blitzjs/rpc": 2.0.0-alpha.55
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.58
|
||||
"@blitzjs/rpc": 2.0.0-alpha.58
|
||||
"@testing-library/dom": 8.13.0
|
||||
"@testing-library/jest-dom": 5.16.3
|
||||
"@testing-library/react": 13.0.0
|
||||
@@ -661,7 +661,7 @@ importers:
|
||||
"@types/react": 18.0.1
|
||||
"@types/react-dom": 17.0.14
|
||||
"@types/testing-library__react-hooks": 4.0.0
|
||||
blitz: 2.0.0-alpha.55
|
||||
blitz: 2.0.0-alpha.58
|
||||
cross-spawn: 7.0.3
|
||||
debug: 4.3.3
|
||||
find-up: 4.1.0
|
||||
@@ -710,14 +710,14 @@ importers:
|
||||
|
||||
packages/blitz-rpc:
|
||||
specifiers:
|
||||
"@blitzjs/auth": 2.0.0-alpha.55
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.55
|
||||
"@blitzjs/auth": 2.0.0-alpha.58
|
||||
"@blitzjs/config": workspace:2.0.0-alpha.58
|
||||
"@types/debug": 4.1.7
|
||||
"@types/react": 18.0.1
|
||||
"@types/react-dom": 17.0.14
|
||||
b64-lite: 1.4.0
|
||||
bad-behavior: 1.0.1
|
||||
blitz: 2.0.0-alpha.55
|
||||
blitz: 2.0.0-alpha.58
|
||||
chalk: ^4.1.0
|
||||
debug: 4.3.3
|
||||
next: 12.2.0
|
||||
@@ -759,12 +759,12 @@ importers:
|
||||
"@babel/plugin-syntax-typescript": 7.17.12
|
||||
"@babel/preset-env": 7.12.10
|
||||
"@blitzjs/config": workspace:*
|
||||
"@blitzjs/generator": 2.0.0-alpha.55
|
||||
"@blitzjs/generator": 2.0.0-alpha.58
|
||||
"@types/jscodeshift": 0.11.2
|
||||
"@types/node": 17.0.16
|
||||
arg: 5.0.1
|
||||
ast-types: 0.14.2
|
||||
blitz: 2.0.0-alpha.55
|
||||
blitz: 2.0.0-alpha.58
|
||||
chalk: ^4.1.0
|
||||
cross-spawn: 7.0.3
|
||||
debug: 4.3.3
|
||||
@@ -819,7 +819,7 @@ importers:
|
||||
"@babel/plugin-transform-typescript": 7.12.1
|
||||
"@babel/preset-env": 7.12.10
|
||||
"@babel/types": 7.12.10
|
||||
"@blitzjs/config": 2.0.0-alpha.55
|
||||
"@blitzjs/config": 2.0.0-alpha.58
|
||||
"@juanm04/cpx": 2.0.1
|
||||
"@mrleebo/prisma-ast": 0.2.6
|
||||
"@types/babel__core": 7.1.19
|
||||
@@ -910,7 +910,7 @@ importers:
|
||||
|
||||
packages/pkg-template:
|
||||
specifiers:
|
||||
"@blitzjs/config": 2.0.0-alpha.55
|
||||
"@blitzjs/config": 2.0.0-alpha.58
|
||||
"@types/react": 18.0.1
|
||||
"@types/react-dom": 17.0.14
|
||||
"@typescript-eslint/eslint-plugin": 5.9.1
|
||||
@@ -3451,10 +3451,10 @@ packages:
|
||||
dependencies:
|
||||
glob: 7.1.7
|
||||
|
||||
/@next/eslint-plugin-next/12.2.2:
|
||||
/@next/eslint-plugin-next/12.2.3:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-XOi0WzJhGH3Lk51SkSu9eZxF+IY1ZZhWcJTIGBycAbWU877IQa6+6KxMATWCOs7c+bmp6Sd8KywXJaDRxzu0JA==,
|
||||
integrity: sha512-B2e8Yg1MpuLsGxhCx4rU8/Tcnr5wFmCx1O2eyLXBPnaCcsFXfGCo067ujagtDLtWASL3GNgzg78U1SB0dbc38A==,
|
||||
}
|
||||
dependencies:
|
||||
glob: 7.1.7
|
||||
@@ -3645,12 +3645,12 @@ packages:
|
||||
}
|
||||
dev: true
|
||||
|
||||
/@prisma/client/3.9.0_prisma@4.0.0:
|
||||
/@prisma/client/4.0.0_prisma@4.0.0:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-PByWVI7l+KYUQL/pqR81363qhUh3LhYMIYn2czz5slbt3JC6aAk+Wm7PE9nalqSE6s4xSIYdHj6N0yTNqr86sA==,
|
||||
integrity: sha512-g1h2OGoRo7anBVQ9Cw3gsbjwPtvf7i0pkGxKeZICtwkvE5CZXW+xZF4FZdmrViYkKaAShbISL0teNpu9ecpf4g==,
|
||||
}
|
||||
engines: {node: ">=12.6"}
|
||||
engines: {node: ">=14.17"}
|
||||
requiresBuild: true
|
||||
peerDependencies:
|
||||
prisma: "*"
|
||||
@@ -3658,14 +3658,14 @@ packages:
|
||||
prisma:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@prisma/engines-version": 3.9.0-58.bcc2ff906db47790ee902e7bbc76d7ffb1893009
|
||||
"@prisma/engines-version": 3.16.0-49.da41d2bb3406da22087b849f0e911199ba4fbf11
|
||||
prisma: 4.0.0
|
||||
dev: false
|
||||
|
||||
/@prisma/engines-version/3.9.0-58.bcc2ff906db47790ee902e7bbc76d7ffb1893009:
|
||||
/@prisma/engines-version/3.16.0-49.da41d2bb3406da22087b849f0e911199ba4fbf11:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-5Dh+qTDhpPR66w6NNAnPs+/W/Qt4r1DSd+qhfPFcDThUK4uxoZKGlPb2IYQn5LL+18aIGnmteDf7BnVMmvBNSQ==,
|
||||
integrity: sha512-PiZhdD624SrYEjyLboI0X7OugNbxUzDJx9v/6ldTKuqNDVUCmRH/Z00XwDi/dgM4FlqOSO+YiUsSiSKjxxG8cw==,
|
||||
}
|
||||
dev: false
|
||||
|
||||
@@ -8444,10 +8444,10 @@ packages:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/eslint-config-next/12.2.2_hrkuebk64jiu2ut2d2sm4oylnu:
|
||||
/eslint-config-next/12.2.3_hrkuebk64jiu2ut2d2sm4oylnu:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-oJhWBLC4wDYYUFv/5APbjHUFd0QRFCojMdj/QnMoOEktmeTvwnnoA8F8uaXs0fQgsaTK0tbUxBRv9/Y4/rpxOA==,
|
||||
integrity: sha512-xAQqAqwa2bu9ZMRypz58ym4tNCo22Wc6LuoLpbpf3yW5c4ZkVib9934AgGDDvh2zKrP56Z6X0Pp6gNnuuZzcRw==,
|
||||
}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
@@ -8456,7 +8456,7 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@next/eslint-plugin-next": 12.2.2
|
||||
"@next/eslint-plugin-next": 12.2.3
|
||||
"@rushstack/eslint-patch": 1.1.3
|
||||
"@typescript-eslint/parser": 5.28.0_hrkuebk64jiu2ut2d2sm4oylnu
|
||||
eslint: 7.32.0
|
||||
|
||||
Reference in New Issue
Block a user