1
0
mirror of synced 2026-02-04 03:01:17 -05:00

Compare commits

..

2 Commits

Author SHA1 Message Date
Siddharth Suresh
33f649f64c Update main.yml 2023-04-30 16:50:28 +05:30
Siddharth Suresh
8542c14952 Update main.yml 2023-04-30 16:43:49 +05:30
96 changed files with 4347 additions and 5298 deletions

View File

@@ -3896,65 +3896,6 @@
"doc",
"code"
]
},
{
"login": "dbrxnds",
"name": "David",
"avatar_url": "https://avatars.githubusercontent.com/u/32268383?v=4",
"profile": "https://github.com/dbrxnds",
"contributions": [
"doc",
"code",
"test"
]
},
{
"login": "gjmoed",
"name": "G.J. Moed",
"avatar_url": "https://avatars.githubusercontent.com/u/4458993?v=4",
"profile": "https://github.com/gjmoed",
"contributions": [
"doc",
"code"
]
},
{
"login": "GHKEN",
"name": "Tetsuya Fukuda",
"avatar_url": "https://avatars.githubusercontent.com/u/5304351?v=4",
"profile": "https://ghken.com",
"contributions": [
"doc",
"code"
]
},
{
"login": "nerixim",
"name": "Nikita Kamaev",
"avatar_url": "https://avatars.githubusercontent.com/u/26106502?v=4",
"profile": "https://github.com/nerixim",
"contributions": [
"doc"
]
},
{
"login": "nikola-wd",
"name": "Nikola Ivanov",
"avatar_url": "https://avatars.githubusercontent.com/u/11588823?v=4",
"profile": "https://webredone.com/",
"contributions": [
"doc"
]
},
{
"login": "jayu",
"name": "Jakub Mazurek",
"avatar_url": "https://avatars.githubusercontent.com/u/11561585?v=4",
"profile": "jayu.dev",
"contributions": [
"doc",
"code"
]
}
],
"contributorsPerLine": 7,

View File

@@ -1,9 +0,0 @@
---
"@blitzjs/auth": patch
"@blitzjs/next": patch
"@blitzjs/rpc": patch
"blitz": patch
"@blitzjs/generator": patch
---
(feat) upgrade tslog to v4.8.2

View File

@@ -1,6 +0,0 @@
---
"@blitzjs/next": minor
"@blitzjs/rpc": minor
---
Add ability to format the error on the server before returning it to the client.

View File

@@ -1,5 +0,0 @@
---
"@blitzjs/rpc": patch
---
Fix return type of `requestMiddlewares` in `RpcServerPlugin`

View File

@@ -1,5 +0,0 @@
---
"@blitzjs/next": minor
---
Fix the DYNAMIC_SERVER_USAGE error for Next.js 13.3.1+

View File

@@ -1,26 +0,0 @@
---
"@blitzjs/rpc": patch
---
Fixes enormous memory consumption of the dev server by changing the default import strategy to "require" instead of "import" which in webpack causes multiple chunks to be created for each import.
## Blitz Configuration
To configure this behaviour, you can add the following to your next.config.js:
```js
/**
* @type {import('@blitzjs/next').BlitzConfig}
**/
const config = {
blitz: {
resolversDynamicImport: true,
},
}
```
When `resolversDynamicImport` is set to `true`, the import strategy will be "import" instead of "require".
### On Vercel
If you are using Vercel, `resolversDynamicImport` will be set to `true` by default, since it is better for the separate chunks to be create for serverless lambdas.

View File

@@ -1,5 +0,0 @@
---
"@blitzjs/auth": minor
---
Stop exporting `useAuthenticatedBlitzContext` from `@blitzjs/auth` this must be imported from `app/blitz-server.ts` file in order to work correctly

View File

@@ -55,7 +55,6 @@
"afraid-ears-repair",
"big-boats-lay",
"big-phones-bow",
"big-turtles-tease",
"blue-flowers-peel",
"blue-pigs-tan",
"brave-zebras-deny",
@@ -71,7 +70,6 @@
"calm-papayas-protect",
"calm-tomatoes-drive",
"chatty-fireants-leave",
"chatty-gifts-whisper",
"chilled-carrots-own",
"chilly-candles-care",
"chilly-nails-nail",
@@ -110,7 +108,6 @@
"fast-toys-wash",
"fast-trainers-kneel",
"few-dogs-fetch",
"few-elephants-approve",
"few-hounds-worry",
"few-shrimps-leave",
"flat-bees-approve",
@@ -122,7 +119,6 @@
"four-meals-fry",
"four-radios-tickle",
"four-sheep-judge",
"fresh-crews-chew",
"funny-cups-pay",
"fuzzy-bees-warn",
"fuzzy-dots-cross",
@@ -135,7 +131,6 @@
"gold-horses-punch",
"good-apes-drum",
"good-insects-wink",
"good-oranges-pretend",
"gorgeous-birds-warn",
"gorgeous-buses-scream",
"gorgeous-games-obey",
@@ -190,7 +185,6 @@
"modern-games-dream",
"modern-ligers-behave",
"moody-bags-walk",
"moody-crews-travel",
"moody-spoons-rhyme",
"moody-squids-cheer",
"nasty-suns-wash",
@@ -201,7 +195,6 @@
"nice-boxes-travel",
"nice-deers-dream",
"nice-starfishes-live",
"nine-bags-rhyme",
"nine-birds-confess",
"nine-onions-admire",
"ninety-lies-press",
@@ -329,9 +322,7 @@
"wicked-rings-walk",
"wise-eels-visit",
"wise-frogs-give",
"wise-lies-relate",
"wise-rabbits-complain",
"yellow-numbers-serve",
"young-birds-talk"
]
}

View File

@@ -1,5 +0,0 @@
---
"@blitzjs/recipe-tailwind": minor
---
support both directory style in tailwind recipe

View File

@@ -7,8 +7,8 @@ on:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
env:
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: 1
jobs:
@@ -19,7 +19,7 @@ jobs:
- uses: actions/checkout@v2
- uses: pnpm/action-setup@646cdf48217256a3d0b80361c5a50727664284f2
with:
version: 7.33.0
version: 7.11.0
- name: Setup node
uses: actions/setup-node@v2
with:
@@ -40,7 +40,7 @@ jobs:
- uses: actions/checkout@v2
- uses: pnpm/action-setup@646cdf48217256a3d0b80361c5a50727664284f2
with:
version: 7.33.0
version: 7.11.0
- name: Setup node
uses: actions/setup-node@v2
with:
@@ -70,7 +70,7 @@ jobs:
- name: Setup PNPM
uses: pnpm/action-setup@646cdf48217256a3d0b80361c5a50727664284f2
with:
version: 7.33.0
version: 7.11.0
- name: Setup node@16
uses: actions/setup-node@v2
@@ -109,9 +109,44 @@ jobs:
tree -J -d -L 1 | jq -c '.[0].contents | map(.name | tostring) | map(select(. != "utils"))'
folders=$(tree -J -d -L 1 | jq -c '.[0].contents | map(.name | tostring) | map(select(. != "utils"))')
echo "folders=$folders" >> $GITHUB_OUTPUT
Generator:
name: :"Generator Test ${{matrix.language}}"
strategy:
matrix:
language:
- javascript
- typescript
os:
- ubuntu-latest
fail-fast: false
runs-on: "ubuntu-latest"
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup PNPM
uses: pnpm/action-setup@646cdf48217256a3d0b80361c5a50727664284f2
with:
version: 7.11.0
- name: Setup node@${{ matrix.NODE_VERSION }}
uses: actions/setup-node@v2
with:
node-version: ${{ matrix.NODE_VERSION }}
cache: "pnpm"
- name: Install dependencies
run: pnpm install --frozen-lockfile
shell: bash
- name: Build
run: pnpm build
shell: bash
- name: Generate
run: |
mkdir test
cd test
pnpm blitz new . --language=${{matrix.language}}
Integration-Tests:
name: "Integration Test: ${{matrix.folder}} @ ${{ matrix.os }} "
name: "Integration Test: ${{matrix.folder}} @ ${{matrix.os}} "
needs: [find-integration-tests]
strategy:
matrix:
@@ -119,7 +154,6 @@ jobs:
os:
- ubuntu-latest
- windows-latest
fail-fast: false
runs-on: ${{ matrix.os }}
steps:
- run: echo ${{matrix.folder}}
@@ -129,7 +163,7 @@ jobs:
- name: Setup PNPM
uses: pnpm/action-setup@646cdf48217256a3d0b80361c5a50727664284f2
with:
version: 7.33.0
version: 7.11.0
- name: Setup node@${{ matrix.NODE_VERSION }}
uses: actions/setup-node@v2
@@ -143,7 +177,7 @@ jobs:
- name: Install playwright
run: |
pnpx playwright@1.28.0 install --with-deps
pnpx playwright@1.28.0 install --with-deps
shell: bash
- name: Build

View File

@@ -2,5 +2,5 @@
. "$(dirname "$0")/_/husky.sh"
pnpm manypkg check
# pnpm lint
pnpm lint
pnpm pretty-quick --staged

View File

@@ -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-417-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-411-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/main/LICENSE">
<img alt="" src="https://img.shields.io/npm/l/blitz.svg?style=for-the-badge&labelColor=000000&color=blue">
@@ -724,14 +724,6 @@ Thanks to these wonderful people ([emoji key](https://allcontributors.org/docs/e
<td align="center"><a href="https://maotoramm.com"><img src="https://avatars.githubusercontent.com/u/5174884?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Maotora ᕙ(⇀‸↼‶)ᕗ</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=maotora" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=maotora" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/vitaliemiron"><img src="https://avatars.githubusercontent.com/u/45145592?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Vitalie</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=vitaliemiron" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=vitaliemiron" title="Code">💻</a></td>
<td align="center"><a href="https://estevao.org"><img src="https://avatars.githubusercontent.com/u/19409687?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nelson Estevão</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=nelsonmestevao" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=nelsonmestevao" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/dbrxnds"><img src="https://avatars.githubusercontent.com/u/32268383?v=4?s=100" width="100px;" alt=""/><br /><sub><b>David</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=dbrxnds" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=dbrxnds" title="Code">💻</a> <a href="https://github.com/blitz-js/blitz/commits?author=dbrxnds" title="Tests">⚠️</a></td>
<td align="center"><a href="https://github.com/gjmoed"><img src="https://avatars.githubusercontent.com/u/4458993?v=4?s=100" width="100px;" alt=""/><br /><sub><b>G.J. Moed</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=gjmoed" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=gjmoed" title="Code">💻</a></td>
</tr>
<tr>
<td align="center"><a href="https://ghken.com"><img src="https://avatars.githubusercontent.com/u/5304351?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Tetsuya Fukuda</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=GHKEN" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=GHKEN" title="Code">💻</a></td>
<td align="center"><a href="https://github.com/nerixim"><img src="https://avatars.githubusercontent.com/u/26106502?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nikita Kamaev</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=nerixim" title="Documentation">📖</a></td>
<td align="center"><a href="https://webredone.com/"><img src="https://avatars.githubusercontent.com/u/11588823?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Nikola Ivanov</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=nikola-wd" title="Documentation">📖</a></td>
<td align="center"><a href="jayu.dev"><img src="https://avatars.githubusercontent.com/u/11561585?v=4?s=100" width="100px;" alt=""/><br /><sub><b>Jakub Mazurek</b></sub></a><br /><a href="https://github.com/blitz-js/blitz/commits?author=jayu" title="Documentation">📖</a> <a href="https://github.com/blitz-js/blitz/commits?author=jayu" title="Code">💻</a></td>
</tr>
</table>

View File

@@ -1,32 +1,5 @@
# next-blitz-auth
## 0.1.1-beta.4
### Patch Changes
- Updated dependencies [5166e5e03]
- Updated dependencies [2533caf48]
- Updated dependencies [c7ac86b85]
- Updated dependencies [1bb3a6556]
- @blitzjs/auth@2.0.0-beta.28
- @blitzjs/next@2.0.0-beta.28
- @blitzjs/rpc@2.0.0-beta.28
- blitz@2.0.0-beta.28
- @blitzjs/config@2.0.0-beta.28
## 0.1.1-beta.3
### Patch Changes
- Updated dependencies [eda14fa8a]
- Updated dependencies [3d004dc41]
- Updated dependencies [29c2b029a]
- @blitzjs/next@2.0.0-beta.27
- @blitzjs/rpc@2.0.0-beta.27
- @blitzjs/auth@2.0.0-beta.27
- blitz@2.0.0-beta.27
- @blitzjs/config@2.0.0-beta.27
## 0.1.1-beta.2
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "next-blitz-auth",
"version": "0.1.1-beta.4",
"version": "0.1.1-beta.2",
"private": true,
"scripts": {
"blitz:dev": "next dev",

View File

@@ -30,7 +30,7 @@
"@hookform/error-message": "2.0.0",
"@hookform/resolvers": "2.9.10",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"openid-client": "5.2.1",
"prisma": "4.6.1",

View File

@@ -6,9 +6,6 @@ const { withBlitz } = require("@blitzjs/next")
**/
const config = {
reactStrictMode: true,
blitz: {
resolversDynamicImport: true,
},
}
module.exports = withBlitz(withNextAuthAdapter(config))

View File

@@ -31,7 +31,7 @@
"@hookform/error-message": "2.0.0",
"@hookform/resolvers": "2.9.10",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"next-auth": "4.18.7",
"prisma": "4.6.1",

View File

@@ -10,7 +10,6 @@ type SignupFormProps = {
export const SignupForm = (props: SignupFormProps) => {
const [signupMutation] = useMutation(signup)
return (
<div>
<h1>Create an Account</h1>

View File

@@ -1,4 +1,5 @@
import db from "db"
import { SecurePassword } from "@blitzjs/auth/secure-password"
import { Role } from "types"
export default async function signup(input, ctx) {

View File

@@ -1,8 +1,9 @@
import type { BlitzCliConfig } from "blitz"
import { BlitzLogger } from "blitz"
import { setupBlitzServer } from "@blitzjs/next"
import { AuthServerPlugin, PrismaStorage, simpleRolesIsAuthorized } from "@blitzjs/auth"
import { AuthServerPlugin, PrismaStorage } from "@blitzjs/auth"
import db from "db"
import { simpleRolesIsAuthorized } from "@blitzjs/auth"
import { BlitzLogger } from "blitz"
export const cliConfig: BlitzCliConfig = {
customTemplates: "src/templates",
@@ -26,9 +27,6 @@ const { gSSP, gSP, api } = setupBlitzServer({
isAuthorized: simpleRolesIsAuthorized,
}),
],
formatError: (error) => {
return new Error("Formatted error" + error.message)
},
logger: BlitzLogger({}),
})

View File

@@ -1,12 +1,4 @@
import { rpcHandler } from "@blitzjs/rpc"
import { api } from "src/blitz-server"
export default api(
rpcHandler({
onError: console.log,
formatError: (error) => {
error.message = `FormatError handler: ${error.message}`
return error
},
})
)
export default api(rpcHandler({ onError: console.log }))

View File

@@ -44,7 +44,7 @@ const UserInfo = () => {
<Link href={Routes.LoginPage()} className={styles.loginButton}>
<strong>Login</strong>
</Link>
<Link href="/api/auth/github/login" passHref legacyBehavior>
<Link href="/api/auth/github/login" passHref>
<a className="button small">
<strong>Sign in with GitHub</strong>
</a>

View File

@@ -13,6 +13,7 @@ const {gSSP, gSP, api} = setupBlitzServer({
}),
],
logger: BlitzLogger({
colorizePrettyLogs: true,
prefix: ["[blitz]>>>>>"],
}),
})

View File

@@ -17,14 +17,14 @@
"prisma:studio": "prisma studio"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@hookform/error-message": "2.0.0",
"@hookform/resolvers": "2.9.10",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"delay": "5.0.0",
"next": "13.3.0",
"prisma": "4.6.1",

View File

@@ -1,11 +1,11 @@
import {afterAll, beforeAll, describe, expect, it} from "vitest"
import {describe, it, expect, beforeAll, afterAll} from "vitest"
import {
blitzBuild,
blitzLaunchApp,
blitzStart,
findPort,
killApp,
findPort,
runBlitzCommand,
blitzLaunchApp,
blitzBuild,
blitzStart,
waitFor,
} from "../../utils/next-test-utils"
import webdriver from "../../utils/next-webdriver"
@@ -15,7 +15,7 @@ let appPort: number
const runTests = () => {
describe("Auth", () => {
/* TODO - Add a non flaky Integration Test for custom plugin
/* TODO - Add a non flaky Integration Test for custom plugin
describe("custom plugin", () => {
it("custom plugin - events", async () => {
const browser = await webdriver(appPort, "/custom-plugin")

View File

@@ -17,11 +17,11 @@
"prisma:studio": "prisma studio"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",

View File

@@ -16,11 +16,11 @@
"schema": "db/schema.prisma"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",
@@ -28,7 +28,7 @@
"react-dom": "18.2.0"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@next/bundle-analyzer": "12.0.8",
"@types/express": "4.17.13",
"@types/fs-extra": "9.0.13",

View File

@@ -11,10 +11,10 @@
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf .next"
},
"dependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"react": "18.2.0",
"react-dom": "18.2.0"

View File

@@ -1,6 +1,5 @@
/// <reference types="next" />
/// <reference types="next/image-types/global" />
/// <reference types="next/navigation-types/compat/navigation" />
// NOTE: This file should not be edited
// see https://nextjs.org/docs/basic-features/typescript for more information.

View File

@@ -17,12 +17,12 @@
"prisma:studio": "prisma studio"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",

View File

@@ -1,6 +1,13 @@
import {afterAll, beforeAll, describe, expect, it} from "vitest"
import {describe, it, expect, beforeAll, afterAll} from "vitest"
import waitPort from "wait-port"
import {blitzLaunchApp, findPort, killApp, runBlitzCommand} from "../../utils/next-test-utils"
import {
killApp,
findPort,
runBlitzCommand,
blitzLaunchApp,
blitzBuild,
blitzStart,
} from "../../utils/next-test-utils"
import webdriver from "../../utils/next-webdriver"
import fetch from "node-fetch"
@@ -36,7 +43,7 @@ const runTests = (mode?: string) => {
const browser = await webdriver(appPort, "/authenticated-client")
let errorMsg = await browser.elementById(`error`).text()
expect(errorMsg).toMatch(/Error: You are not authenticated/)
if (browser) await browser.close()
if (browser) browser.close()
},
5000 * 60 * 2,
)
@@ -48,7 +55,7 @@ const runTests = (mode?: string) => {
const browser = await webdriver(appPort, "/authenticated-server")
let errorMsg = await browser.elementById(`error`).text()
expect(errorMsg).toMatch(/Error: You are not authenticated/)
if (browser) await browser.close()
if (browser) browser.close()
},
5000 * 60 * 2,
)

View File

@@ -9,8 +9,7 @@
{
"name": "next"
}
],
"strictNullChecks": true
]
},
"exclude": ["node_modules"],
"baseUrl": "."

View File

@@ -16,11 +16,11 @@
"prisma:studio": "prisma studio"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",
@@ -28,7 +28,7 @@
"react-dom": "18.2.0"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@next/bundle-analyzer": "12.0.8",
"@types/express": "4.17.13",
"@types/fs-extra": "9.0.13",

View File

@@ -8,13 +8,13 @@
"clean": "rm -rf .turbo && rm -rf node_modules"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"@tanstack/react-query": "4.0.10",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"prisma": "4.6.1",
"react": "18.2.0",

View File

@@ -16,10 +16,10 @@
"schema": "db/schema.prisma"
},
"dependencies": {
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",
@@ -27,7 +27,7 @@
"react-dom": "18.2.0"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@next/bundle-analyzer": "12.0.8",
"@types/express": "4.17.13",
"@types/fs-extra": "9.0.13",

View File

@@ -7,10 +7,10 @@
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf .next"
},
"dependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"react": "18.2.0",
"react-dom": "18.2.0"

View File

@@ -1,12 +0,0 @@
class ErrorWithStatusCode extends Error {
statusCode
constructor(message, statusCode) {
super(message)
this.statusCode = statusCode
}
}
export default async function getCustomStatusCodeFailure() {
throw new ErrorWithStatusCode("Error with custom status code for test", 418)
}

View File

@@ -7,10 +7,10 @@
"clean": "rm -rf .turbo && rm -rf node_modules && rm -rf .next"
},
"dependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"blitz": "workspace:2.0.0-beta.26",
"next": "13.3.0",
"react": "18.2.0",
"react-dom": "18.2.0"

View File

@@ -1,13 +1,14 @@
import {afterAll, beforeAll, describe, expect, it} from "vitest"
import {describe, it, expect, beforeAll, afterAll} from "vitest"
import fs from "fs-extra"
import {join} from "path"
import {
fetchViaHTTP,
findPort,
killApp,
findPort,
launchApp,
fetchViaHTTP,
nextBuild,
nextExport,
nextStart,
nextExport,
} from "../../utils/next-test-utils"
// jest.setTimeout(1000 * 60 * 2)

View File

@@ -16,11 +16,11 @@
"schema": "db/schema.prisma"
},
"dependencies": {
"@blitzjs/auth": "workspace:2.0.0-beta.28",
"@blitzjs/next": "workspace:2.0.0-beta.28",
"@blitzjs/rpc": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "workspace:2.0.0-beta.26",
"@blitzjs/next": "workspace:2.0.0-beta.26",
"@blitzjs/rpc": "workspace:2.0.0-beta.26",
"@prisma/client": "4.6.1",
"blitz": "workspace:2.0.0-beta.28",
"blitz": "workspace:2.0.0-beta.26",
"lowdb": "3.0.0",
"next": "13.3.0",
"prisma": "4.6.1",
@@ -28,7 +28,7 @@
"react-dom": "18.2.0"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@next/bundle-analyzer": "12.0.8",
"@types/express": "4.17.13",
"@types/fs-extra": "9.0.13",

View File

@@ -1,24 +1,5 @@
# @blitzjs/auth
## 2.0.0-beta.28
### Minor Changes
- 1bb3a6556: Stop exporting `useAuthenticatedBlitzContext` from `@blitzjs/auth` this must be imported from `app/blitz-server.ts` file in order to work correctly
### Patch Changes
- 5166e5e03: (feat) upgrade tslog to v4.8.2
- Updated dependencies [5166e5e03]
- blitz@2.0.0-beta.28
## 2.0.0-beta.27
### Patch Changes
- 29c2b029a: Fix: Add missing entry to expose next-auth adapter in Blitz Auth
- blitz@2.0.0-beta.27
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "@blitzjs/auth",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"homepage": "https://blitzjs.com/",
"repository": {
"type": "git",
@@ -48,7 +48,7 @@
"url": "0.11.0"
},
"peerDependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"next": "*",
"next-auth": "*",
"secure-password": "4.0.0"
@@ -65,7 +65,7 @@
}
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@testing-library/react": "13.4.0",
"@testing-library/react-hooks": "8.0.1",
"@types/cookie": "0.4.1",
@@ -73,7 +73,7 @@
"@types/jsonwebtoken": "8.5.8",
"@types/react": "18.0.25",
"@types/react-dom": "17.0.14",
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"next": "13.3.0",
"next-auth": "4.18.7",
"react": "18.2.0",

View File

@@ -220,7 +220,7 @@ export async function useAuthenticatedBlitzContext({
redirectAuthenticatedTo?: string | RouteUrlObject | ((ctx: Ctx) => string | RouteUrlObject)
role?: string | string[]
}): Promise<void> {
const log = baseLogger().getSubLogger({name: "useAuthenticatedBlitzContext"})
const log = baseLogger().getChildLogger()
const customChalk = new chalk.Instance({
level: log.settings.type === "json" ? 0 : chalk.level,
})

View File

@@ -1,16 +1,4 @@
export * from "./auth-sessions"
export * from "./auth-utils"
export * from "./auth-plugin"
export * from "./adapters"
export {
SessionContextClass,
getAllSessionHandlesForUser,
getCookieParser,
getSession,
isLocalhost,
setPublicDataForUser,
setCookie,
simpleRolesIsAuthorized,
getBlitzContext,
} from "./auth-sessions"
export type {AnonymousSessionPayload, SimpleRolesIsAuthorized} from "./auth-sessions"

View File

@@ -1,29 +1,5 @@
# @blitzjs/next
## 2.0.0-beta.28
### Patch Changes
- 5166e5e03: (feat) upgrade tslog to v4.8.2
- Updated dependencies [5166e5e03]
- Updated dependencies [2533caf48]
- Updated dependencies [c7ac86b85]
- @blitzjs/rpc@2.0.0-beta.28
- blitz@2.0.0-beta.28
## 2.0.0-beta.27
### Minor Changes
- eda14fa8a: Add ability to format the error on the server before returning it to the client.
- 3d004dc41: Fix the DYNAMIC_SERVER_USAGE error for Next.js 13.3.1+
### Patch Changes
- Updated dependencies [eda14fa8a]
- @blitzjs/rpc@2.0.0-beta.27
- blitz@2.0.0-beta.27
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "@blitzjs/next",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"homepage": "https://blitzjs.com/",
"repository": {
"type": "git",
@@ -29,7 +29,7 @@
"eslint.js"
],
"dependencies": {
"@blitzjs/rpc": "2.0.0-beta.28",
"@blitzjs/rpc": "2.0.0-beta.26",
"@types/hoist-non-react-statics": "3.3.1",
"debug": "4.3.3",
"fs-extra": "10.0.1",
@@ -38,12 +38,12 @@
"supports-color": "8.1.1"
},
"peerDependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"next": "*",
"react": "*"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@testing-library/dom": "8.13.0",
"@testing-library/jest-dom": "5.16.3",
"@testing-library/react": "13.4.0",
@@ -53,7 +53,7 @@
"@types/react": "18.0.25",
"@types/react-dom": "17.0.14",
"@types/testing-library__react-hooks": "4.0.0",
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"cross-spawn": "7.0.3",
"find-up": "4.1.0",
"next": "13.3.0",

View File

@@ -211,9 +211,8 @@ test("withErrorBoundary HOC", () => {
expect(cleanStack(onErrorComponentStack)).toMatchInlineSnapshot(`
{
"componentStack": "
at __vite_ssr_import_4__.withErrorBoundary.FallbackComponent
at ErrorBoundaryRoot
at WithRouterWrapper
at ErrorBoundaryRoot
at withRouter
at withErrorBoundary",
}
`)

View File

@@ -3,7 +3,6 @@ import {NextRouter, withRouter} from "next/router"
import * as React from "react"
import {RouterContext} from "./router-context"
import _debug from "debug"
import {ExcludeRouterProps} from "next/dist/client/with-router"
const debug = _debug("blitz:errorboundary")
@@ -73,9 +72,7 @@ type ErrorBoundaryState = {error: Error | null}
const initialState: ErrorBoundaryState = {error: null}
const ErrorBoundary: React.ComponentType<
ExcludeRouterProps<React.PropsWithChildren<ErrorBoundaryProps>>
> = withRouter(
const ErrorBoundary = withRouter(
class ErrorBoundaryRoot extends React.Component<
React.PropsWithRef<React.PropsWithChildren<ErrorBoundaryProps>>,
ErrorBoundaryState

View File

@@ -1,43 +1,41 @@
import type {
NextConfig,
GetServerSideProps,
GetServerSidePropsResult,
GetStaticProps,
GetStaticPropsResult,
NextApiRequest,
NextApiResponse,
NextConfig,
} from "next"
import {
AddParameters,
AsyncFunc,
BlitzLogger,
BlitzServerPlugin,
Ctx as BlitzCtx,
FirstParam,
handleRequestWithMiddleware,
initializeLogger,
isRouteUrlObject,
RequestMiddleware,
MiddlewareResponse,
BlitzLogger,
initializeLogger,
Simplify,
UnionToIntersection,
reduceBlitzServerPlugins,
RouteUrlObject,
startWatcher,
stopWatcher,
} from "blitz"
import {handleRequestWithMiddleware, startWatcher, stopWatcher} from "blitz"
import {installWebpackConfig, InstallWebpackConfigOptions, ResolverPathOptions} from "@blitzjs/rpc"
import {
DefaultOptions,
dehydrate,
getInfiniteQueryKey,
getQueryKey,
installWebpackConfig,
InstallWebpackConfigOptions,
QueryClient,
ResolverPathOptions,
getQueryKey,
getInfiniteQueryKey,
dehydrate,
} from "@blitzjs/rpc"
import {IncomingMessage, ServerResponse} from "http"
import {withSuperJsonProps} from "./superjson"
import {ParsedUrlQuery} from "querystring"
import {PreviewData} from "next/types"
import {resolveHref} from "next/dist/shared/lib/router/utils/resolve-href"
import {RouteUrlObject, isRouteUrlObject} from "blitz"
export * from "./index-browser"
@@ -132,12 +130,10 @@ export const setupBlitzServer = <TPlugins extends readonly BlitzServerPlugin<obj
plugins,
onError,
logger,
formatError,
}: {
plugins: TPlugins
onError?: (err: Error) => void
logger?: ReturnType<typeof BlitzLogger>
formatError?: (err: Error) => Error
}) => {
initializeLogger(logger ?? BlitzLogger())
@@ -172,9 +168,9 @@ export const setupBlitzServer = <TPlugins extends readonly BlitzServerPlugin<obj
getClient(),
),
)
} catch (error: any) {
onError?.(error)
throw formatError?.(error) ?? error
} catch (err: any) {
onError?.(err)
throw err
}
}
@@ -201,9 +197,9 @@ export const setupBlitzServer = <TPlugins extends readonly BlitzServerPlugin<obj
getClient(),
),
)
} catch (error: any) {
onError?.(error)
throw formatError?.(error) ?? error
} catch (err: any) {
onError?.(err)
throw err
}
}
@@ -219,8 +215,7 @@ export const setupBlitzServer = <TPlugins extends readonly BlitzServerPlugin<obj
])
} catch (error: any) {
onError?.(error)
const formattedError = formatError?.(error) ?? error
return res.status(400).send(formattedError)
return res.status(400).send(error)
}
}
@@ -230,7 +225,6 @@ export const setupBlitzServer = <TPlugins extends readonly BlitzServerPlugin<obj
export interface BlitzConfig extends NextConfig {
blitz?: {
resolverPath?: ResolverPathOptions
resolversDynamicImport?: boolean
includeRPCFolders?: string[]
customServer?: {
hotReload?: boolean
@@ -262,8 +256,6 @@ export function withBlitz(nextConfig: BlitzConfig = {}): NextConfig {
webpackConfig: config,
webpackRuleOptions: {
resolverPath: nextConfig.blitz?.resolverPath,
resolversDynamicImport:
nextConfig.blitz?.resolversDynamicImport ?? Boolean(process.env.VERCEL),
includeRPCFolders: nextConfig.blitz?.includeRPCFolders,
},
})

View File

@@ -1,47 +1,5 @@
# @blitzjs/rpc
## 2.0.0-beta.28
### Patch Changes
- 5166e5e03: (feat) upgrade tslog to v4.8.2
- 2533caf48: Fix return type of `requestMiddlewares` in `RpcServerPlugin`
- c7ac86b85: Fixes enormous memory consumption of the dev server by changing the default import strategy to "require" instead of "import" which in webpack causes multiple chunks to be created for each import.
## Blitz Configuration
To configure this behaviour, you can add the following to your next.config.js:
```js
/**
* @type {import('@blitzjs/next').BlitzConfig}
**/
const config = {
blitz: {
resolversDynamicImport: true,
},
}
```
When `resolversDynamicImport` is set to `true`, the import strategy will be "import" instead of "require".
### On Vercel
If you are using Vercel, `resolversDynamicImport` will be set to `true` by default, since it is better for the separate chunks to be create for serverless lambdas.
- Updated dependencies [5166e5e03]
- blitz@2.0.0-beta.28
## 2.0.0-beta.27
### Minor Changes
- eda14fa8a: Add ability to format the error on the server before returning it to the client.
### Patch Changes
- blitz@2.0.0-beta.27
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "@blitzjs/rpc",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"homepage": "https://blitzjs.com/",
"repository": {
"type": "git",
@@ -37,18 +37,18 @@
},
"peerDependencies": {
"@tanstack/query-core": "4.24.4",
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"next": "*",
"react": "*"
},
"devDependencies": {
"@blitzjs/auth": "2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/auth": "2.0.0-beta.26",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@tanstack/query-core": "4.24.4",
"@types/debug": "4.1.7",
"@types/react": "18.0.25",
"@types/react-dom": "17.0.14",
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"next": "13.3.0",
"react": "18.2.0",
"react-dom": "18.2.0",

View File

@@ -1,9 +1,8 @@
import {assert, baseLogger, Ctx, newLine, prettyMs, ResolverConfig} from "blitz"
import {NextApiRequest, NextApiResponse} from "next"
import {deserialize, parse, serialize as superjsonSerialize} from "superjson"
import {deserialize, serialize as superjsonSerialize, parse} from "superjson"
import {resolve} from "path"
import chalk from "chalk"
import {LoaderOptions} from "./server/loader/utils/loader-utils"
// TODO - optimize end user server bundles by not exporting all client stuff here
export * from "./index-browser"
@@ -61,11 +60,16 @@ const loaderClient = resolve(dir, "./loader-client.cjs")
const loaderServer = resolve(dir, "./loader-server.cjs")
const loaderServerResolvers = resolve(dir, "./loader-server-resolvers.cjs")
interface WebpackRuleOptions {
resolverPath: ResolverPathOptions | undefined
includeRPCFolders: string[] | undefined
}
interface WebpackRule {
test: RegExp
use: Array<{
loader: string
options: LoaderOptions
options: WebpackRuleOptions
}>
}
@@ -80,7 +84,7 @@ export interface InstallWebpackConfigOptions {
rules: WebpackRule[]
}
}
webpackRuleOptions: LoaderOptions
webpackRuleOptions: WebpackRuleOptions
}
export function installWebpackConfig({
@@ -145,7 +149,6 @@ async function getResolverMap(): Promise<ResolverFiles | null | undefined> {
interface RpcConfig {
onError?: (error: Error) => void
formatError?: (error: Error) => Error
}
export function rpcHandler(config: RpcConfig) {
@@ -160,8 +163,7 @@ export function rpcHandler(config: RpcConfig) {
const relativeRoutePath = (req.query.blitz as string[])?.join("/")
const routePath = "/" + relativeRoutePath
const log = baseLogger().getSubLogger({
name: "blitz-rpc",
const log = baseLogger().getChildLogger({
prefix: [routePath.replace(/(\/api\/rpc)?\//, "") + "()"],
})
const customChalk = new chalk.Instance({
@@ -217,7 +219,7 @@ export function rpcHandler(config: RpcConfig) {
const startTime = Date.now()
const result = await resolver(data, (res as any).blitzCtx)
const resolverDuration = Date.now() - startTime
log.info(customChalk.dim("Result:"), result ? result : JSON.stringify(result))
log.debug(customChalk.dim("Result:"), result ? result : JSON.stringify(result))
const serializerStartTime = Date.now()
const serializedResult = superjsonSerialize(result)
@@ -239,7 +241,7 @@ export function rpcHandler(config: RpcConfig) {
const serializerDuration = Date.now() - serializerStartTime
const duration = Date.now() - startTime
log.debug(
log.info(
customChalk.dim(
`Finished: resolver:${prettyMs(resolverDuration)} serializer:${prettyMs(
serializerDuration,
@@ -263,8 +265,7 @@ export function rpcHandler(config: RpcConfig) {
error.statusCode = 500
}
const formattedError = config.formatError?.(error) ?? error
const serializedError = superjsonSerialize(formattedError)
const serializedError = superjsonSerialize(error)
res.json({
result: null,

View File

@@ -64,14 +64,12 @@ export async function transformBlitzRpcServer(
extraRpcBasePaths: options?.includeRPCFolders,
})
const importStrategy = options?.resolversDynamicImport ? "import" : "require"
code += `__internal_addBlitzRpcResolver('${routePath}',() => ${importStrategy}('${slash(
code += `__internal_addBlitzRpcResolver('${routePath}',() => import('${slash(
resolverFilePath,
)}'));`
code += "\n"
}
// console.log("NEW CODE", code)
return code
}

View File

@@ -3,9 +3,8 @@ import {posix, sep, win32, join, normalize} from "path"
import {ResolverPathOptions} from "../../../index-server"
export interface LoaderOptions {
resolverPath?: ResolverPathOptions
resolverPath: ResolverPathOptions
includeRPCFolders?: string[]
resolversDynamicImport?: boolean
}
export interface Loader {

View File

@@ -1,9 +1,9 @@
import {RequestMiddleware, createServerPlugin} from "blitz"
import {createServerPlugin} from "blitz"
import {invoke} from "../client/invoke"
export const RpcServerPlugin = createServerPlugin(() => {
return {
requestMiddlewares: [] as RequestMiddleware<any, any, void | Promise<void>>[],
requestMiddlewares: [],
exports: () => ({
invoke,
}),

View File

@@ -1,20 +1,5 @@
# blitz
## 2.0.0-beta.28
### Patch Changes
- 5166e5e03: (feat) upgrade tslog to v4.8.2
- Updated dependencies [5166e5e03]
- @blitzjs/generator@2.0.0-beta.28
## 2.0.0-beta.27
### Patch Changes
- Updated dependencies [d814c2d2d]
- @blitzjs/generator@2.0.0-beta.27
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "blitz",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"homepage": "https://blitzjs.com/",
"repository": {
"type": "git",
@@ -30,7 +30,7 @@
"blitz": "bin/blitz"
},
"dependencies": {
"@blitzjs/generator": "2.0.0-beta.28",
"@blitzjs/generator": "2.0.0-beta.26",
"@mrleebo/prisma-ast": "0.2.6",
"@types/global-agent": "2.1.1",
"arg": "5.0.1",
@@ -76,11 +76,11 @@
"tar": "6.1.11",
"ts-node": "10.9.1",
"tsconfig-paths": "4.0.0",
"tslog": "4.8.2",
"tslog": "3.3.4",
"watchpack": "2.1.1"
},
"devDependencies": {
"@blitzjs/config": "workspace:2.0.0-beta.28",
"@blitzjs/config": "workspace:2.0.0-beta.26",
"@types/cookie": "0.4.1",
"@types/cross-spawn": "6.0.2",
"@types/debug": "4.1.7",

View File

@@ -45,7 +45,7 @@ const pipeline = promisify(Stream.pipeline)
const got = async (url: string) => {
return require("got")(url).catch((e: any) => {
if (e.response.statusCode === 403) {
baseLogger().error(e.response.body)
baseLogger({displayDateTime: false}).error(e.response.body)
} else {
return e
}
@@ -264,7 +264,7 @@ const install: CliCommand = async () => {
if (!(await isUrlValid(packageJsonPath))) {
debug("Url is invalid for ", packageJsonPath)
baseLogger().error(`Could not find recipe "${args._[1]}"\n`)
baseLogger({displayDateTime: false}).error(`Could not find recipe "${args._[1]}"\n`)
console.log(`${chalk.bold("Please provide one of the following:")}
1. The name of a recipe to install (e.g. "tailwind")

View File

@@ -16,7 +16,6 @@ export const codegenTasks = async () => {
*/
const nextDir = await resolveCwd("next")
const nextClientIndex = join(nextDir, "../..", "client", "index.js")
console.log(nextClientIndex)
const readFile = await fs.readFile(nextClientIndex)
const packageJson = await getPackageJson()
const version = packageJson.dependencies.next
@@ -40,24 +39,15 @@ export const codegenTasks = async () => {
)
await fs.writeFile(nextClientIndex, updatedFile)
log.success("Next.js was successfully patched with a React Suspense fix")
} else if (nextVersion && semver.satisfies(nextVersion, "13.1 - 13.3.0")) {
} else if (nextVersion && semver.satisfies(nextVersion, ">=13.2")) {
const updatedFile = readFile
.toString()
.replace(
/_onRecoverableError\.default$/gm,
/_onRecoverableError\.default/,
`(err) => (err.toString().includes("DYNAMIC_SERVER_USAGE") || err.toString().includes("could not finish this Suspense boundary") || err.toString().includes("Minified React error #419")) ? null : _onRecoverableError.default(err)`,
)
await fs.writeFile(nextClientIndex, updatedFile)
log.success("Next.js was successfully patched with a React Suspense fix")
} else if (nextVersion && semver.satisfies(nextVersion, ">=13.3.1")) {
const updatedFile = readFile
.toString()
.replace(
/_onrecoverableerror\.default$/gm,
`(err) => (err.toString().includes("DYNAMIC_SERVER_USAGE") || err.toString().includes("could not finish this Suspense boundary") || err.toString().includes("Minified React error #419")) ? null : _onrecoverableerror.default(err)`,
)
await fs.writeFile(nextClientIndex, updatedFile)
log.success("Next.js was successfully patched with a React Suspense fix")
}
} catch (err) {
log.error(JSON.stringify(err, null, 2))

View File

@@ -1,10 +1,13 @@
import {join} from "path"
import {join, dirname} from "path"
import os from "os"
import {promises} from "fs"
import {outputFile, readdir, readFile} from "fs-extra"
const readFile = promises.readFile
import {outputFile, readdir} from "fs-extra"
import findUp from "find-up"
import resolveFrom from "resolve-from"
import Watchpack from "watchpack"
import {isInternalBlitzMonorepoDevelopment} from "./helpers"
import {findNodeModulesRoot} from "./find-node-modules"
const debug = require("debug")("blitz")
export const CONFIG_FILE = ".blitz.config.compiled.js"
export const NEXT_CONFIG_FILE = "next.config.js"

View File

@@ -41,9 +41,11 @@ export class RecipeExecutor<Options extends RecipeMeta> {
{exitOnCtrlC: false},
)
await waitUntilExit()
baseLogger().info(`\n🎉 The ${this.options.name} recipe has been installed!\n`)
baseLogger({displayDateTime: false, displayLogLevel: false}).info(
`\n🎉 The ${this.options.name} recipe has been installed!\n`,
)
} catch (e) {
baseLogger().error(e as any)
baseLogger({displayDateTime: false}).error(e as any)
return
}
}

View File

@@ -1,18 +1,18 @@
import {ILogObj, ISettingsParam, Logger, IMeta} from "tslog"
import {ISettingsParam, Logger, TLogLevelName} from "tslog"
import c from "chalk"
import {Table} from "console-table-printer"
import ora from "ora"
import readline from "readline"
export type BlitzLoggerSettings = ISettingsParam<ILogObj>
export type BlitzLogLevel = "trace" | "debug" | "info" | "warn" | "error" | "fatal"
export type BlitzLoggerSettings = ISettingsParam
export type BlitzLogLevel = TLogLevelName
declare namespace globalThis {
let _blitz_baseLogger: Logger<ILogObj>
let _blitz_baseLogger: Logger
let _blitz_logLevel: BlitzLogLevel
}
export const baseLogger = (options: BlitzLoggerSettings = {}): Logger<ILogObj> => {
export const baseLogger = (options: BlitzLoggerSettings = {}): Logger => {
if (globalThis._blitz_baseLogger) return globalThis._blitz_baseLogger
globalThis._blitz_baseLogger = BlitzLogger(options)
@@ -22,18 +22,34 @@ export const baseLogger = (options: BlitzLoggerSettings = {}): Logger<ILogObj> =
export const BlitzLogger = (settings: BlitzLoggerSettings = {}) => {
const baseLogger = new Logger({
prettyLogTimeZone: process.env.NODE_ENV === "production" ? "UTC" : "local",
minLevel: "info",
type: "pretty",
dateTimePattern:
process.env.NODE_ENV === "production"
? "year-month-day hour:minute:second.millisecond"
: "hour:minute:second.millisecond",
displayFunctionName: false,
displayFilePath: "hidden",
displayRequestId: false,
dateTimeTimezone:
process.env.NODE_ENV === "production"
? "utc"
: Intl.DateTimeFormat().resolvedOptions().timeZone,
prettyInspectHighlightStyles: {
name: "yellow",
number: "blue",
bigint: "blue",
boolean: "blue",
},
maskValuesOfKeys: ["password", "passwordConfirmation", "currentPassword"],
type: process.env.NODE_ENV === "production" ? "json" : "pretty",
prettyLogTemplate:
"{{yyyy}}.{{mm}}.{{dd}} {{hh}}:{{MM}}:{{ss}}:{{ms}}\t{{logLevelName}}\t[{{filePathWithLine}}{{name}}]\t",
exposeErrorCodeFrame: process.env.NODE_ENV !== "production",
...settings,
})
return baseLogger
}
export const initializeLogger = (logger: Logger<ILogObj>) => {
export const initializeLogger = (logger: Logger) => {
globalThis._blitz_baseLogger = logger
}

View File

@@ -1,5 +1,5 @@
import {IncomingMessage, ServerResponse} from "http"
import {compose, Ctx, MiddlewareNext, MiddlewareResponse, RequestMiddleware} from "./index-server"
import {compose, Ctx, RequestMiddleware, MiddlewareNext, MiddlewareResponse} from "./index-server"
export async function handleRequestWithMiddleware<
Req extends IncomingMessage = IncomingMessage,

View File

@@ -1,21 +1,5 @@
# @blitzjs/codemod
## 2.0.0-beta.28
### Patch Changes
- Updated dependencies [5166e5e03]
- blitz@2.0.0-beta.28
- @blitzjs/generator@2.0.0-beta.28
## 2.0.0-beta.27
### Patch Changes
- Updated dependencies [d814c2d2d]
- @blitzjs/generator@2.0.0-beta.27
- blitz@2.0.0-beta.27
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "@blitzjs/codemod",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"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-beta.28",
"@blitzjs/generator": "2.0.0-beta.26",
"arg": "5.0.1",
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"chalk": "^4.1.0",
"cross-spawn": "7.0.3",
"debug": "4.3.3",

View File

@@ -1,9 +1,5 @@
# @blitzjs/config
## 2.0.0-beta.28
## 2.0.0-beta.27
## 2.0.0-beta.26
## 2.0.0-beta.25

View File

@@ -1,7 +1,7 @@
{
"name": "@blitzjs/config",
"private": true,
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"license": "MIT",
"dependencies": {
"@typescript-eslint/eslint-plugin": "5.42.1",

View File

@@ -1,17 +1,5 @@
# @blitzjs/generator
## 2.0.0-beta.28
### Patch Changes
- 5166e5e03: (feat) upgrade tslog to v4.8.2
## 2.0.0-beta.27
### Patch Changes
- d814c2d2d: fix: add missing key prop to LabelSelectField
## 2.0.0-beta.26
### Patch Changes

View File

@@ -1,6 +1,6 @@
{
"name": "@blitzjs/generator",
"version": "2.0.0-beta.28",
"version": "2.0.0-beta.26",
"homepage": "https://blitzjs.com/",
"repository": {
"type": "git",
@@ -48,13 +48,13 @@
"prettier": "^2.7.1",
"recast": "0.20.5",
"supports-color": "8.1.1",
"tslog": "4.8.2",
"tslog": "3.3.4",
"username": "5.1.0",
"vinyl": "2.2.1",
"zod": "3.20.2"
},
"devDependencies": {
"@blitzjs/config": "2.0.0-beta.28",
"@blitzjs/config": "2.0.0-beta.26",
"@juanm04/cpx": "2.0.1",
"@types/babel__core": "7.1.19",
"@types/diff": "5.0.2",

View File

@@ -90,8 +90,8 @@ export class AppGenerator extends Generator<AppGeneratorOptions> {
gitInitSuccessful = initResult.status === 0
if (!gitInitSuccessful) {
baseLogger().warn("Failed to run git init.")
baseLogger().warn(
baseLogger({displayDateTime: false}).warn("Failed to run git init.")
baseLogger({displayDateTime: false}).warn(
"Find out more about how to install git here: https://git-scm.com/downloads.",
)
}

View File

@@ -1,4 +1,4 @@
import {ILogObj, ISettingsParam, Logger} from "tslog"
import {ISettingsParam, Logger} from "tslog"
import c from "chalk"
import {Table} from "console-table-printer"
import ora from "ora"
@@ -8,7 +8,7 @@ import {defaultConfig} from "./default-config"
// eslint-disable-next-line
declare module globalThis {
let _blitz_baseLogger: Logger<ILogObj>
let _blitz_baseLogger: Logger
let _blitz_logLevel: LogLevel
}
@@ -103,7 +103,7 @@ export const newline = () => {
}
}
export const baseLogger = (options?: ISettingsParam<ILogObj>): Logger<ILogObj> => {
export const baseLogger = (options?: ISettingsParam): Logger => {
if (globalThis._blitz_baseLogger) return globalThis._blitz_baseLogger
let config
@@ -114,14 +114,28 @@ export const baseLogger = (options?: ISettingsParam<ILogObj>): Logger<ILogObj> =
}
globalThis._blitz_baseLogger = new Logger({
minLevel: config.log?.level || 3,
minLevel: config.log?.level || "info",
type: config.log?.type || "pretty",
prettyLogTemplate:
dateTimePattern:
process.env.NODE_ENV === "production"
? "{{yyyy}}-{{mm}}-{{dd}} {{hh}}:{{MM}}:{{ss}}:{{ms}}"
: "{{hh}}:{{MM}}:{{ss}}:{{ms}}",
prettyLogTimeZone: process.env.NODE_ENV === "production" ? "UTC" : "local",
maskValuesOfKeys: ["password", "passwordConfirmation", "currentPassword"],
? "year-month-day hour:minute:second.millisecond"
: "hour:minute:second.millisecond",
displayFunctionName: false,
displayFilePath: "hidden",
displayRequestId: false,
dateTimeTimezone:
process.env.NODE_ENV === "production"
? "utc"
: Intl.DateTimeFormat().resolvedOptions().timeZone,
prettyInspectHighlightStyles: {
name: "yellow",
number: "blue",
bigint: "blue",
boolean: "blue",
},
colorizePrettyLogs: process.env.FORCE_COLOR === "0" ? false : true,
maskValuesOfKeys: ["password", "passwordConfirmation"],
exposeErrorCodeFrame: process.env.NODE_ENV !== "production",
...options,
})

View File

@@ -25,7 +25,7 @@
"@typescript-eslint/parser": "5.9.1"
},
"devDependencies": {
"@blitzjs/config": "2.0.0-beta.28",
"@blitzjs/config": "2.0.0-beta.26",
"@types/react": "18.0.25",
"@types/react-dom": "17.0.14",
"react": "18.2.0",

8789
pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -22,7 +22,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -24,7 +24,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -24,7 +24,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -22,7 +22,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -24,6 +24,6 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28"
"blitz": "2.0.0-beta.26"
}
}

View File

@@ -24,6 +24,6 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28"
"blitz": "2.0.0-beta.26"
}
}

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -22,7 +22,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0",
"uuid": "^8.3.1"
},

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -23,6 +23,6 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28"
"blitz": "2.0.0-beta.26"
}
}

View File

@@ -22,6 +22,6 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28"
"blitz": "2.0.0-beta.26"
}
}

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -22,6 +22,6 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28"
"blitz": "2.0.0-beta.26"
}
}

View File

@@ -22,7 +22,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0",
"uuid": "^8.3.1"
},

View File

@@ -24,7 +24,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -24,7 +24,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -29,7 +29,7 @@ export default RecipeBuilder()
stepId: "addStyles",
stepName: "Stylesheet",
explanation: `Adds a root CSS stylesheet where Tailwind is imported and where you can add global styles`,
targetDirectory: `./${paths.appSrcDirectory()}/core`,
targetDirectory: "./app/core",
templatePath: join(__dirname, "templates", "styles"),
templateValues: {},
})
@@ -39,10 +39,7 @@ export default RecipeBuilder()
explanation: `Imports the stylesheet we just added into your app`,
singleFileSearch: paths.app(),
transform(program) {
const stylesImport = j.importDeclaration(
[],
j.literal(`${paths.appSrcDirectory()}/core/styles/index.css`),
)
const stylesImport = j.importDeclaration([], j.literal("app/core/styles/index.css"))
return addImport(program, stylesImport)
},
})

View File

@@ -22,7 +22,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -23,7 +23,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {

View File

@@ -25,7 +25,7 @@
},
"homepage": "https://github.com/blitz-js/blitz#readme",
"dependencies": {
"blitz": "2.0.0-beta.28",
"blitz": "2.0.0-beta.26",
"jscodeshift": "0.13.0"
},
"devDependencies": {