Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e68d69813b | ||
|
|
9529dbd6f4 | ||
|
|
00fd00f082 | ||
|
|
645b2fc5ba | ||
|
|
e898c8bf05 | ||
|
|
a8c96b7713 | ||
|
|
12d0acb595 | ||
|
|
6bc1472edf |
20
.changeset/four-radios-tickle.md
Normal file
20
.changeset/four-radios-tickle.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
"@blitzjs/auth": major
|
||||
"@blitzjs/codemod": minor
|
||||
---
|
||||
|
||||
## ⚠️ Breaking Changes for Blitz Auth
|
||||
|
||||
Automatically upgrade using codemod
|
||||
(Make sure to git commit before running this command to avoid losing changes)
|
||||
|
||||
```bash
|
||||
npx @blitz/codemod secure-password
|
||||
```
|
||||
|
||||
Introduce a new import path for the Blitz wrapper `SecurePassword` to fully decouple the library from `@blitzjs/auth`
|
||||
|
||||
```diff
|
||||
- import {SecurePassword} from "@blitzjs/auth"
|
||||
+ import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
```
|
||||
18
.changeset/khaki-wombats-exercise.md
Normal file
18
.changeset/khaki-wombats-exercise.md
Normal file
@@ -0,0 +1,18 @@
|
||||
---
|
||||
"eslint-config-blitz-next": major
|
||||
"@blitzjs/next": major
|
||||
---
|
||||
|
||||
Moves the eslint config from the `@blitzjs/next` package to a separate package to allow easier use and extension of eslint configuration.
|
||||
|
||||
```diff
|
||||
- module.exports = require("@blitzjs/next/eslint")
|
||||
|
||||
+ module.exports = {
|
||||
+ "extends": "blitz-next",
|
||||
+ "rules": {
|
||||
+ // enable additional rules
|
||||
+
|
||||
+ }
|
||||
+}
|
||||
```
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/next/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -31,6 +31,7 @@
|
||||
"@hookform/resolvers": "2.9.10",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"openid-client": "5.2.1",
|
||||
"prisma": "4.6.1",
|
||||
|
||||
@@ -3,7 +3,7 @@ import db from "db"
|
||||
import { authenticateUser } from "./login"
|
||||
import { ChangePassword } from "../validations"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
|
||||
export default resolver.pipe(
|
||||
resolver.zod(ChangePassword),
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import { AuthenticationError } from "blitz"
|
||||
import db from "db"
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { SecurePassword, hash256 } from "@blitzjs/auth"
|
||||
import { hash256 } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import db from "db"
|
||||
import { ResetPassword } from "../validations"
|
||||
import login from "./login"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import db from "db"
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { Role } from "types"
|
||||
|
||||
export default async function signup(input, ctx) {
|
||||
|
||||
@@ -1 +1,7 @@
|
||||
module.exports = require("@blitzjs/next/eslint")
|
||||
module.exports = {
|
||||
"extends": "blitz-next",
|
||||
"rules": {
|
||||
// enable additional rules
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -32,6 +32,7 @@
|
||||
"@hookform/resolvers": "2.9.10",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
"react": "18.2.0",
|
||||
|
||||
@@ -3,7 +3,7 @@ import db from "db"
|
||||
import { authenticateUser } from "./login"
|
||||
import { ChangePassword } from "../validations"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
|
||||
export default resolver.pipe(
|
||||
resolver.zod(ChangePassword),
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import { AuthenticationError } from "blitz"
|
||||
import db from "db"
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { vi, describe, it, beforeEach, expect } from "vitest"
|
||||
import resetPassword from "./resetPassword"
|
||||
import db from "db"
|
||||
import { SecurePassword, hash256 } from "@blitzjs/auth"
|
||||
import { hash256 } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.$reset()
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { SecurePassword, hash256 } from "@blitzjs/auth"
|
||||
import { hash256 } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import db from "db"
|
||||
import { ResetPassword } from "../validations"
|
||||
import login from "./login"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import db from "db"
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { Role } from "types"
|
||||
|
||||
export default async function signup(input, ctx) {
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
"@next/bundle-analyzer": "12.0.8",
|
||||
"@types/react": "18.0.25",
|
||||
"eslint": "8.27.0",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"typescript": "^4.8.4"
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import {api} from "src/blitz-server"
|
||||
import db from "db"
|
||||
import {SecurePassword} from "@blitzjs/auth"
|
||||
import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
|
||||
export const authenticateUser = async (email: string, password: string) => {
|
||||
const user = await db.user.findFirst({where: {email}})
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import {api} from "src/blitz-server"
|
||||
import db from "db"
|
||||
import {SecurePassword} from "@blitzjs/auth"
|
||||
import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
|
||||
export default api(async (req, res, ctx) => {
|
||||
const blitzContext = ctx
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/next/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import prisma from "./index"
|
||||
import {SecurePassword} from "@blitzjs/auth"
|
||||
import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
|
||||
const seed = async () => {
|
||||
const hashedPassword = await SecurePassword.hash("abcd1234")
|
||||
|
||||
@@ -26,6 +26,7 @@
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"delay": "5.0.0",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
"react": "18.2.0",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
import prisma from "./index"
|
||||
import {SecurePassword} from "@blitzjs/auth"
|
||||
import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
|
||||
const seed = async () => {
|
||||
const hashedPassword = await SecurePassword.hash("abcd1234")
|
||||
|
||||
@@ -22,11 +22,14 @@
|
||||
"@blitzjs/next": "workspace:2.0.0-beta.23",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
"react-dom": "18.2.0",
|
||||
"secure-password": "4.0.0",
|
||||
"wait-port": "1.0.4"
|
||||
},
|
||||
"devDependencies": {
|
||||
"@next/bundle-analyzer": "12.0.8",
|
||||
@@ -40,6 +43,7 @@
|
||||
"fs-extra": "10.0.1",
|
||||
"get-port": "6.1.2",
|
||||
"node-fetch": "3.2.3",
|
||||
"playwright": "1.28.0",
|
||||
"ts-node": "10.9.1",
|
||||
"typescript": "^4.8.4"
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import {api} from "../../app/blitz-server"
|
||||
import prisma from "../../db/index"
|
||||
import {SecurePassword} from "@blitzjs/auth"
|
||||
import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
import {Role} from "../../types"
|
||||
|
||||
export const authenticateUser = async (email: string, password: string) => {
|
||||
|
||||
@@ -1,10 +1,8 @@
|
||||
import {describe, it, expect, beforeAll, afterAll} from "vitest"
|
||||
import waitPort from "wait-port"
|
||||
import {
|
||||
killApp,
|
||||
findPort,
|
||||
launchApp,
|
||||
nextBuild,
|
||||
nextStart,
|
||||
runBlitzCommand,
|
||||
blitzLaunchApp,
|
||||
blitzBuild,
|
||||
@@ -12,15 +10,11 @@ import {
|
||||
} from "../../utils/next-test-utils"
|
||||
import webdriver from "../../utils/next-webdriver"
|
||||
|
||||
import {join} from "path"
|
||||
import fetch from "node-fetch"
|
||||
import {fromBase64} from "b64-lite"
|
||||
import seed from "../db/seed"
|
||||
import prisma from "../db"
|
||||
|
||||
let app: any
|
||||
let appPort: number
|
||||
const appDir = join(__dirname, "../")
|
||||
const HEADER_CSRF = "anti-csrf"
|
||||
const COOKIE_PUBLIC_DATA_TOKEN = "auth-tests-cookie-prefix_sPublicDataToken"
|
||||
const COOKIE_SESSION_TOKEN = "auth-tests-cookie-prefix_sSessionToken"
|
||||
@@ -45,6 +39,7 @@ const runTests = (mode?: string) => {
|
||||
it(
|
||||
"should render error for protected query",
|
||||
async () => {
|
||||
await waitPort({port: appPort})
|
||||
const browser = await webdriver(appPort, "/authenticated-page")
|
||||
let errorMsg = await browser.elementById(`error`).text()
|
||||
expect(errorMsg).toMatch(/Error: You are not authenticated/)
|
||||
@@ -134,7 +129,7 @@ const runTests = (mode?: string) => {
|
||||
}
|
||||
|
||||
describe("Auth Tests", () => {
|
||||
describe("dev mode", () => {
|
||||
describe("dev mode", async () => {
|
||||
beforeAll(async () => {
|
||||
try {
|
||||
await runBlitzCommand(["prisma", "migrate", "reset", "--force"])
|
||||
@@ -144,24 +139,25 @@ describe("Auth Tests", () => {
|
||||
console.log(error)
|
||||
}
|
||||
}, 5000 * 60 * 2)
|
||||
afterAll(async () => await killApp(app))
|
||||
afterAll(async () => {
|
||||
await killApp(app)
|
||||
})
|
||||
runTests()
|
||||
})
|
||||
|
||||
describe("server mode", () => {
|
||||
beforeAll(async () => {
|
||||
try {
|
||||
await runBlitzCommand(["prisma", "generate"])
|
||||
await runBlitzCommand(["prisma", "migrate", "deploy"])
|
||||
await blitzBuild()
|
||||
appPort = await findPort()
|
||||
app = await blitzStart(appPort, {cwd: process.cwd()})
|
||||
} catch (err) {
|
||||
console.log(err)
|
||||
}
|
||||
}, 5000 * 60 * 2)
|
||||
afterAll(async () => await killApp(app))
|
||||
|
||||
runTests()
|
||||
})
|
||||
// describe("server mode", () => {
|
||||
// beforeAll(async () => {
|
||||
// try {
|
||||
// await runBlitzCommand(["prisma", "generate"])
|
||||
// await runBlitzCommand(["prisma", "migrate", "deploy"])
|
||||
// await blitzBuild()
|
||||
// // appPort = await findPort()
|
||||
// app = await blitzStart(appPort, {cwd: process.cwd()})
|
||||
// } catch (err) {
|
||||
// console.log(err)
|
||||
// }
|
||||
// }, 5000 * 60 * 2)
|
||||
// afterAll(async () => await killApp(app))
|
||||
// runTests()
|
||||
// })
|
||||
})
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
"@blitzjs/rpc": "workspace:2.0.0-beta.23",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
"@blitzjs/next": "workspace:2.0.0-beta.23",
|
||||
"@blitzjs/rpc": "workspace:2.0.0-beta.23",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0"
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
"@blitzjs/rpc": "workspace:2.0.0-beta.23",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
"@prisma/client": "4.6.1",
|
||||
"@tanstack/react-query": "4.0.10",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
"react": "18.2.0",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
"@blitzjs/rpc": "workspace:2.0.0-beta.23",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
"@blitzjs/rpc": "workspace:2.0.0-beta.23",
|
||||
"@prisma/client": "4.6.1",
|
||||
"blitz": "workspace:2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"lowdb": "3.0.0",
|
||||
"next": "12.2.5",
|
||||
"prisma": "4.6.1",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import {BuildConfig} from "unbuild"
|
||||
|
||||
const config: BuildConfig = {
|
||||
entries: ["./src/index-browser", "./src/index-server"],
|
||||
entries: ["./src/index-browser", "./src/index-server","./src/server/secure-password"],
|
||||
externals: ["index-browser.cjs", "index-browser.mjs", "react"],
|
||||
declaration: true,
|
||||
rollup: {
|
||||
|
||||
@@ -22,7 +22,8 @@
|
||||
"sideEffects": false,
|
||||
"license": "MIT",
|
||||
"files": [
|
||||
"dist/**"
|
||||
"dist/**",
|
||||
"secure-password.*"
|
||||
],
|
||||
"dependencies": {
|
||||
"@types/b64-lite": "1.3.0",
|
||||
@@ -61,6 +62,7 @@
|
||||
"@types/react": "18.0.25",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"blitz": "2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
"secure-password": "4.0.0",
|
||||
|
||||
1
packages/blitz-auth/secure-password.d.ts
vendored
Normal file
1
packages/blitz-auth/secure-password.d.ts
vendored
Normal file
@@ -0,0 +1 @@
|
||||
export * from "./dist/secure-password"
|
||||
1
packages/blitz-auth/secure-password.js
Normal file
1
packages/blitz-auth/secure-password.js
Normal file
@@ -0,0 +1 @@
|
||||
module.exports = require("./dist/secure-password.cjs")
|
||||
@@ -2,4 +2,3 @@ export * from "./auth-sessions"
|
||||
export * from "./auth-utils"
|
||||
export * from "./auth-plugin"
|
||||
export * from "./passport-adapter"
|
||||
export * from "./secure-password"
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -56,6 +56,7 @@
|
||||
"@types/testing-library__react-hooks": "4.0.0",
|
||||
"blitz": "2.0.0-beta.23",
|
||||
"cross-spawn": "7.0.3",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"find-up": "4.1.0",
|
||||
"next": "12.2.5",
|
||||
"react": "18.2.0",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -46,6 +46,7 @@
|
||||
"@types/react": "18.0.25",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"blitz": "2.0.0-beta.23",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"next": "12.2.5",
|
||||
"react": "18.2.0",
|
||||
"react-dom": "18.2.0",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -97,6 +97,7 @@
|
||||
"@types/react-dom": "17.0.14",
|
||||
"@types/test-listen": "1.1.0",
|
||||
"@types/watchpack": "1.1.1",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"express": "4.17.3",
|
||||
"react": "18.2.0",
|
||||
"test-listen": "1.1.0",
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
"@types/jscodeshift": "0.11.2",
|
||||
"@types/node": "18.11.9",
|
||||
"ast-types": "0.14.2",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"unbuild": "0.7.6",
|
||||
"watch": "1.0.2"
|
||||
},
|
||||
|
||||
186
packages/codemod/src/eslint.ts
Normal file
186
packages/codemod/src/eslint.ts
Normal file
@@ -0,0 +1,186 @@
|
||||
import j, {
|
||||
Identifier,
|
||||
MemberExpression,
|
||||
ObjectExpression,
|
||||
ObjectProperty,
|
||||
StringLiteral,
|
||||
} from "jscodeshift"
|
||||
import * as fs from "fs-extra"
|
||||
import path from "path"
|
||||
import {findImport, getAllFiles, getCollectionFromSource} from "./utils"
|
||||
import {log} from "blitz"
|
||||
|
||||
class ExpectedError extends Error {
|
||||
constructor(message: string) {
|
||||
super(message)
|
||||
this.name = "Expected Error"
|
||||
}
|
||||
}
|
||||
|
||||
type Step = {name: string; action: (stepIndex: number) => Promise<void>}
|
||||
const eslintBreakingChange = async () => {
|
||||
const appDir = path.resolve("src")
|
||||
let failedAt =
|
||||
fs.existsSync(path.resolve(".migration.json")) && fs.readJSONSync("./.migration.json").failedAt
|
||||
let collectedErrors: {message: string; step: number}[] = []
|
||||
let steps: Step[] = []
|
||||
|
||||
// Add steps in order
|
||||
steps.push({
|
||||
name: "update .eslintrc.js configuration",
|
||||
action: async (stepIndex) => {
|
||||
if (fs.existsSync(path.resolve(".eslintrc.js"))) {
|
||||
const program = getCollectionFromSource(".eslintrc.js")
|
||||
const parsedProgram = program.get()
|
||||
let hasExtends = false
|
||||
// check the value of the right side of the assignment of module.exports
|
||||
const moduleExports = program.find(j.AssignmentExpression, {
|
||||
left: {
|
||||
type: "MemberExpression",
|
||||
object: {
|
||||
type: "Identifier",
|
||||
name: "module",
|
||||
},
|
||||
property: {
|
||||
type: "Identifier",
|
||||
name: "exports",
|
||||
},
|
||||
},
|
||||
})
|
||||
if (moduleExports.length) {
|
||||
const moduleExportsValue: ObjectExpression = moduleExports.get().value.right
|
||||
if (moduleExportsValue.type === "ObjectExpression") {
|
||||
const rules = moduleExportsValue.properties.find(
|
||||
(p) => ((p as ObjectProperty).key as StringLiteral).value === "extends",
|
||||
) as ObjectProperty
|
||||
if (rules) {
|
||||
const rulesValue = rules.value
|
||||
if (
|
||||
rulesValue.type === "CallExpression" &&
|
||||
(rulesValue.callee as MemberExpression).property.type === "Identifier" &&
|
||||
(rulesValue.arguments[0] as StringLiteral).value === "@blitzjs/next/eslint"
|
||||
) {
|
||||
moduleExportsValue.properties.splice(
|
||||
moduleExportsValue.properties.indexOf(rules),
|
||||
1,
|
||||
)
|
||||
moduleExportsValue.properties.unshift(
|
||||
j.objectProperty(j.stringLiteral("extends"), j.stringLiteral("blitz-next")),
|
||||
)
|
||||
hasExtends = true
|
||||
} else if (rulesValue.type === "ArrayExpression") {
|
||||
const rulesValueElements = rulesValue.elements
|
||||
const requireResolve = rulesValueElements.find((e) => {
|
||||
if (e?.type === "CallExpression") {
|
||||
const callee = e.callee
|
||||
if (
|
||||
callee.type === "MemberExpression" &&
|
||||
(callee.object as Identifier).name === "require"
|
||||
) {
|
||||
const property = callee.property
|
||||
if (property.type === "Identifier" && property.name === "resolve") {
|
||||
const args = e.arguments
|
||||
if (args.length === 1 && args[0]?.type === "StringLiteral") {
|
||||
const arg = args[0]
|
||||
if (arg.value === "@blitzjs/next/eslint") {
|
||||
return true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return false
|
||||
})
|
||||
if (requireResolve) {
|
||||
rulesValueElements.splice(rulesValueElements.indexOf(requireResolve), 1)
|
||||
rulesValueElements.push(j.stringLiteral("blitz-next"))
|
||||
hasExtends = true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!hasExtends) {
|
||||
parsedProgram.value.program.body = []
|
||||
const moduleExport = j.expressionStatement(
|
||||
j.assignmentExpression(
|
||||
"=",
|
||||
j.memberExpression(j.identifier("module"), j.identifier("exports")),
|
||||
j.objectExpression([
|
||||
j.objectProperty(j.stringLiteral("extends"), j.stringLiteral("blitz-next")),
|
||||
j.objectProperty(j.stringLiteral("rules"), j.objectExpression([])),
|
||||
]),
|
||||
),
|
||||
)
|
||||
parsedProgram.value.program.body.push(moduleExport)
|
||||
}
|
||||
console.log("Program", program.toSource())
|
||||
fs.writeFileSync(".eslintrc.js", program.toSource())
|
||||
throw new Error("For testing")
|
||||
} else {
|
||||
collectedErrors.push({
|
||||
message: ".eslintrc.js does not exist",
|
||||
step: stepIndex,
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
})
|
||||
// Loop through steps and run the action
|
||||
if ((failedAt && failedAt < steps.length) || failedAt !== "SUCCESS") {
|
||||
for (let [index, step] of steps.entries()) {
|
||||
// Ignore previous steps and continue at step that was failed
|
||||
if (failedAt && index + 1 < failedAt) {
|
||||
continue
|
||||
}
|
||||
const spinner = log.spinner(log.withBrand(`Running ${step.name}...`)).start()
|
||||
try {
|
||||
await step.action(index)
|
||||
if (collectedErrors.filter((e) => e.step === index).length) {
|
||||
// Soft stored error
|
||||
spinner.fail(`${step.name}`)
|
||||
} else {
|
||||
spinner.succeed(`Successfully ran ${step.name}`)
|
||||
}
|
||||
} catch (err) {
|
||||
// Hard exit error
|
||||
const error = err as {code: string} | string
|
||||
spinner.fail(`${step.name}`)
|
||||
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 if (!(err instanceof ExpectedError)) {
|
||||
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,
|
||||
})
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
if (collectedErrors.length) {
|
||||
for (const error of collectedErrors) {
|
||||
log.error(`⚠️ ${error.message}`)
|
||||
}
|
||||
}
|
||||
fs.writeJsonSync(".migration.json", {
|
||||
failedAt: "SUCCESS",
|
||||
})
|
||||
} else {
|
||||
if (failedAt === "SUCCESS") {
|
||||
log.withBrand("Migration already successful")
|
||||
process.exit(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export {eslintBreakingChange}
|
||||
@@ -14,6 +14,8 @@ const args = arg(commonArgs, {
|
||||
|
||||
const commands: {[command: string]: () => Promise<() => void>} = {
|
||||
"upgrade-legacy": () => import("./upgrade-legacy").then((i) => i.upgradeLegacy),
|
||||
"eslint": () => import("./eslint").then((i) => i.eslintBreakingChange),
|
||||
"secure-password": () => import("./secure-password").then((i) => i.securePasswordBreakingChange),
|
||||
}
|
||||
|
||||
const foundCommand = Boolean(commands[args._[0] as string])
|
||||
|
||||
124
packages/codemod/src/secure-password.ts
Normal file
124
packages/codemod/src/secure-password.ts
Normal file
@@ -0,0 +1,124 @@
|
||||
import j from "jscodeshift"
|
||||
import * as fs from "fs-extra"
|
||||
import path from "path"
|
||||
import {findImport, getAllFiles, getCollectionFromSource} from "./utils"
|
||||
import {log} from "blitz"
|
||||
|
||||
class ExpectedError extends Error {
|
||||
constructor(message: string) {
|
||||
super(message)
|
||||
this.name = "Expected Error"
|
||||
}
|
||||
}
|
||||
|
||||
type Step = {name: string; action: (stepIndex: number) => Promise<void>}
|
||||
const securePasswordBreakingChange = async () => {
|
||||
const appDir = path.resolve("src")
|
||||
let failedAt =
|
||||
fs.existsSync(path.resolve(".migration.json")) && fs.readJSONSync("./.migration.json").failedAt
|
||||
let collectedErrors: {message: string; step: number}[] = []
|
||||
let steps: Step[] = []
|
||||
|
||||
// Add steps in order
|
||||
steps.push({
|
||||
name: "update secure-password import",
|
||||
action: async () => {
|
||||
getAllFiles(appDir, [], [], [".ts", ".tsx", ".js", ".jsx"]).forEach((file) => {
|
||||
try {
|
||||
// convert import {SecurePassword} from "@blitzjs/auth" to import {SecurePassword} from "@blitzjs/auth/secure-password"
|
||||
const program = getCollectionFromSource(file)
|
||||
|
||||
const securePasswordImport = j.importDeclaration(
|
||||
[j.importSpecifier(j.identifier("SecurePassword"))],
|
||||
j.stringLiteral("@blitzjs/auth/secure-password"),
|
||||
)
|
||||
|
||||
const findImports = program.find(j.ImportDeclaration, (node) => node)
|
||||
const securePasswordImportExists = findImports.find(j.ImportSpecifier, {
|
||||
imported: {name: "SecurePassword"},
|
||||
})
|
||||
|
||||
if (securePasswordImportExists.length) {
|
||||
//remove the existing import
|
||||
securePasswordImportExists.remove()
|
||||
|
||||
//check if import "@blitzjs/auth" exists
|
||||
const authImportExists = findImports.find(j.ImportDeclaration, {
|
||||
source: {value: "@blitzjs/auth"},
|
||||
})
|
||||
if (authImportExists.length) {
|
||||
//remove the existing import
|
||||
authImportExists.remove()
|
||||
}
|
||||
findImports.at(0).insertBefore(securePasswordImport)
|
||||
fs.writeFileSync(path.join(path.resolve(file)), program.toSource())
|
||||
}
|
||||
} catch (e) {
|
||||
log.error(`Error in updating secure-password imports in the ${file}`)
|
||||
if (typeof e === "string") {
|
||||
throw new Error(e)
|
||||
}
|
||||
}
|
||||
})
|
||||
},
|
||||
})
|
||||
|
||||
// Loop through steps and run the action
|
||||
if ((failedAt && failedAt < steps.length) || failedAt !== "SUCCESS") {
|
||||
for (let [index, step] of steps.entries()) {
|
||||
// Ignore previous steps and continue at step that was failed
|
||||
if (failedAt && index + 1 < failedAt) {
|
||||
continue
|
||||
}
|
||||
const spinner = log.spinner(log.withBrand(`Running ${step.name}...`)).start()
|
||||
try {
|
||||
await step.action(index)
|
||||
if (collectedErrors.filter((e) => e.step === index).length) {
|
||||
// Soft stored error
|
||||
spinner.fail(`${step.name}`)
|
||||
} else {
|
||||
spinner.succeed(`Successfully ran ${step.name}`)
|
||||
}
|
||||
} catch (err) {
|
||||
// Hard exit error
|
||||
const error = err as {code: string} | string
|
||||
spinner.fail(`${step.name}`)
|
||||
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 if (!(err instanceof ExpectedError)) {
|
||||
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,
|
||||
})
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
if (collectedErrors.length) {
|
||||
for (const error of collectedErrors) {
|
||||
log.error(`⚠️ ${error.message}`)
|
||||
}
|
||||
}
|
||||
fs.writeJsonSync(".migration.json", {
|
||||
failedAt: "SUCCESS",
|
||||
})
|
||||
} else {
|
||||
if (failedAt === "SUCCESS") {
|
||||
log.withBrand("Migration already successful")
|
||||
process.exit(0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export {securePasswordBreakingChange}
|
||||
@@ -1,29 +0,0 @@
|
||||
module.exports = {
|
||||
extends: ["eslint-config-next", "prettier"],
|
||||
ignorePatterns: ["*.d.ts"],
|
||||
settings: {
|
||||
next: {
|
||||
rootDir: ["./apps/*/", "./packages/*/"],
|
||||
},
|
||||
},
|
||||
rules: {
|
||||
"@next/next/no-html-link-for-pages": "off",
|
||||
},
|
||||
overrides: [
|
||||
{
|
||||
files: ["**/*.ts?(x)"],
|
||||
plugins: ["@typescript-eslint"],
|
||||
parserOptions: {
|
||||
project: "./tsconfig.json",
|
||||
},
|
||||
rules: {
|
||||
"@typescript-eslint/no-floating-promises": "error",
|
||||
"no-use-before-define": "off",
|
||||
"@typescript-eslint/no-use-before-define": ["off"],
|
||||
"no-redeclare": "off",
|
||||
"@typescript-eslint/no-redeclare": ["error"],
|
||||
"react/display-name": "off",
|
||||
},
|
||||
},
|
||||
],
|
||||
}
|
||||
@@ -5,9 +5,7 @@
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@typescript-eslint/eslint-plugin": "5.42.1",
|
||||
"@typescript-eslint/parser": "5.9.1",
|
||||
"eslint-config-next": "12.3.1",
|
||||
"eslint-config-prettier": "8.5.0"
|
||||
"@typescript-eslint/parser": "5.9.1"
|
||||
},
|
||||
"devDependencies": {
|
||||
"typescript": "^4.8.4"
|
||||
|
||||
13
packages/eslint-config-blitz-next/package.json
Normal file
13
packages/eslint-config-blitz-next/package.json
Normal file
@@ -0,0 +1,13 @@
|
||||
{
|
||||
"name": "eslint-config-blitz-next",
|
||||
"version": "2.0.0-beta.23",
|
||||
"main": "index.js",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"eslint-config-next": "latest",
|
||||
"eslint-config-prettier": "^8.3.0"
|
||||
},
|
||||
"publishConfig": {
|
||||
"access": "public"
|
||||
}
|
||||
}
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -70,6 +70,7 @@
|
||||
"babylon": "6.18.0",
|
||||
"debug": "4.3.3",
|
||||
"eslint": "8.27.0",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"react": "18.2.0",
|
||||
"typescript": "^4.8.4",
|
||||
"unbuild": "0.6.9",
|
||||
|
||||
@@ -1 +1,7 @@
|
||||
module.exports = require("@blitzjs/next/eslint")
|
||||
module.exports = {
|
||||
"extends": "blitz-next",
|
||||
"rules": {
|
||||
// enable additional rules
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
import { NotFoundError, AuthenticationError } from 'blitz'
|
||||
import { resolver } from '@blitzjs/rpc'
|
||||
import { SecurePassword } from '@blitzjs/auth'
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import db from 'db'
|
||||
import { authenticateUser } from './login'
|
||||
import { ChangePassword } from '../validations'
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import { AuthenticationError } from "blitz"
|
||||
import db from "db"
|
||||
|
||||
@@ -1,7 +1,8 @@
|
||||
import { vi, describe, it, beforeEach, expect } from "vitest"
|
||||
import resetPassword from "./resetPassword"
|
||||
import db from "db"
|
||||
import { SecurePassword, hash256 } from "@blitzjs/auth"
|
||||
import { hash256 } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
|
||||
beforeEach(async () => {
|
||||
await db.$reset()
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import { SecurePassword, hash256 } from "@blitzjs/auth"
|
||||
import { hash256 } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import db from "db"
|
||||
import { ResetPassword } from "../validations"
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
import { SecurePassword } from "@blitzjs/auth"
|
||||
import { SecurePassword } from "@blitzjs/auth/secure-password"
|
||||
import { resolver } from "@blitzjs/rpc"
|
||||
import db from "db"
|
||||
import { Role } from "types"
|
||||
|
||||
@@ -1 +1,7 @@
|
||||
module.exports = require("@blitzjs/next/eslint")
|
||||
module.exports = {
|
||||
"extends": "blitz-next",
|
||||
"rules": {
|
||||
// enable additional rules
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1 +1,6 @@
|
||||
module.exports = require("@blitzjs/config/eslint")
|
||||
module.exports = {
|
||||
extends: "blitz-next",
|
||||
rules: {
|
||||
// enable additional rules
|
||||
},
|
||||
}
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
"@blitzjs/config": "2.0.0-beta.23",
|
||||
"@types/react": "18.0.25",
|
||||
"@types/react-dom": "17.0.14",
|
||||
"eslint-config-blitz-next": "workspace:2.0.0-beta.23",
|
||||
"react": "18.2.0",
|
||||
"typescript": "^4.8.4",
|
||||
"unbuild": "0.7.6",
|
||||
|
||||
268
pnpm-lock.yaml
generated
268
pnpm-lock.yaml
generated
@@ -53,6 +53,7 @@ importers:
|
||||
"@vitejs/plugin-react": 2.2.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
eslint-config-next: 12.3.1
|
||||
eslint-config-prettier: 8.5.0
|
||||
husky: 8.0.2
|
||||
@@ -81,6 +82,7 @@ importers:
|
||||
"@hookform/resolvers": 2.9.10_react-hook-form@7.39.1
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
react: 18.2.0
|
||||
@@ -131,6 +133,7 @@ importers:
|
||||
"@typescript-eslint/eslint-plugin": 5.42.1
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
eslint-config-next: 12.3.1
|
||||
eslint-config-prettier: 8.5.0
|
||||
husky: 8.0.2
|
||||
@@ -159,6 +162,7 @@ importers:
|
||||
"@hookform/resolvers": 2.9.10_react-hook-form@7.39.1
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
openid-client: 5.2.1
|
||||
prisma: 4.6.1
|
||||
@@ -202,6 +206,7 @@ importers:
|
||||
"@types/react": 18.0.25
|
||||
blitz: workspace:*
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
jest: 29.3.0
|
||||
jest-environment-jsdom: 29.3.0
|
||||
next: 12.2.5
|
||||
@@ -234,6 +239,7 @@ importers:
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@types/react": 18.0.25
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
typescript: 4.8.4
|
||||
|
||||
integration-tests/auth:
|
||||
@@ -251,27 +257,34 @@ importers:
|
||||
b64-lite: 1.4.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5
|
||||
node-fetch: 3.2.3
|
||||
playwright: 1.28.0
|
||||
prisma: 4.6.1
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0
|
||||
secure-password: 4.0.0
|
||||
ts-node: 10.9.1
|
||||
typescript: ^4.8.4
|
||||
wait-port: 1.0.4
|
||||
dependencies:
|
||||
"@blitzjs/auth": link:../../packages/blitz-auth
|
||||
"@blitzjs/config": link:../../packages/config
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0_react@18.2.0
|
||||
secure-password: 4.0.0
|
||||
wait-port: 1.0.4
|
||||
devDependencies:
|
||||
"@next/bundle-analyzer": 12.0.8
|
||||
"@types/express": 4.17.13
|
||||
@@ -284,6 +297,7 @@ importers:
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
node-fetch: 3.2.3
|
||||
playwright: 1.28.0
|
||||
ts-node: 10.9.1_ieummqxttktzud32hpyrer46t4
|
||||
typescript: 4.8.4
|
||||
|
||||
@@ -308,6 +322,7 @@ importers:
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
delay: 5.0.0
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
eslint-config-next: 12.3.1
|
||||
eslint-config-prettier: 8.5.0
|
||||
husky: 8.0.2
|
||||
@@ -338,6 +353,7 @@ importers:
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
delay: 5.0.0
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
react: 18.2.0
|
||||
@@ -385,6 +401,7 @@ importers:
|
||||
b64-lite: 1.4.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
lowdb: 3.0.0
|
||||
@@ -400,6 +417,7 @@ importers:
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
@@ -431,6 +449,7 @@ importers:
|
||||
"@types/react": 18.0.25
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
next: 12.2.5
|
||||
@@ -443,6 +462,7 @@ importers:
|
||||
"@blitzjs/next": link:../../packages/blitz-next
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0_react@18.2.0
|
||||
@@ -473,6 +493,7 @@ importers:
|
||||
b64-lite: 1.4.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
lowdb: 3.0.0
|
||||
@@ -488,6 +509,7 @@ importers:
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
@@ -521,6 +543,7 @@ importers:
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
delay: 5.0.0
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
eslint-config-next: latest
|
||||
eslint-plugin-testing-library: 5.0.1
|
||||
jsdom: ^19.0.0
|
||||
@@ -537,6 +560,7 @@ importers:
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
"@tanstack/react-query": 4.0.10_biqbaboplfbrettd7655fr4n2y
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
react: 18.2.0
|
||||
@@ -547,7 +571,7 @@ importers:
|
||||
"@vitejs/plugin-react": 1.3.0
|
||||
delay: 5.0.0
|
||||
eslint: 8.27.0
|
||||
eslint-config-next: 13.1.6_rmayb2veg2btbq6mbmnyivgasy
|
||||
eslint-config-next: 13.2.4_rmayb2veg2btbq6mbmnyivgasy
|
||||
eslint-plugin-testing-library: 5.0.1_rmayb2veg2btbq6mbmnyivgasy
|
||||
jsdom: 19.0.0
|
||||
typescript: 4.8.4
|
||||
@@ -566,6 +590,7 @@ importers:
|
||||
b64-lite: 1.4.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
lowdb: 3.0.0
|
||||
@@ -580,6 +605,7 @@ importers:
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
@@ -684,6 +710,7 @@ importers:
|
||||
b64-lite: 1.4.0
|
||||
blitz: workspace:2.0.0-beta.23
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
get-port: 6.1.2
|
||||
lowdb: 3.0.0
|
||||
@@ -699,6 +726,7 @@ importers:
|
||||
"@blitzjs/rpc": link:../../packages/blitz-rpc
|
||||
"@prisma/client": 4.6.1_prisma@4.6.1
|
||||
blitz: link:../../packages/blitz
|
||||
eslint-config-blitz-next: link:../../packages/eslint-config-blitz-next
|
||||
lowdb: 3.0.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
prisma: 4.6.1
|
||||
@@ -814,6 +842,7 @@ importers:
|
||||
envinfo: 7.8.1
|
||||
esbuild: 0.14.34
|
||||
esbuild-register: 3.3.3
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
express: 4.17.3
|
||||
find-up: 4.1.0
|
||||
fs-extra: 10.0.1
|
||||
@@ -917,6 +946,7 @@ importers:
|
||||
"@types/react-dom": 17.0.14
|
||||
"@types/test-listen": 1.1.0
|
||||
"@types/watchpack": 1.1.1
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
express: 4.17.3_supports-color@8.1.1
|
||||
react: 18.2.0
|
||||
test-listen: 1.1.0
|
||||
@@ -945,6 +975,7 @@ importers:
|
||||
cookie: 0.4.1
|
||||
cookie-session: 2.0.0
|
||||
debug: 4.3.3
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
http: 0.0.1-security
|
||||
jsonwebtoken: 9.0.0
|
||||
nanoid: 3.2.0
|
||||
@@ -985,6 +1016,7 @@ importers:
|
||||
"@types/react": 18.0.25
|
||||
"@types/react-dom": 17.0.14
|
||||
blitz: link:../blitz
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0_react@18.2.0
|
||||
secure-password: 4.0.0
|
||||
@@ -1010,6 +1042,7 @@ importers:
|
||||
blitz: 2.0.0-beta.23
|
||||
cross-spawn: 7.0.3
|
||||
debug: 4.3.3
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
find-up: 4.1.0
|
||||
fs-extra: 10.0.1
|
||||
hoist-non-react-statics: 3.3.2
|
||||
@@ -1045,6 +1078,7 @@ importers:
|
||||
"@types/testing-library__react-hooks": 4.0.0_2zx2umvpluuhvlq44va5bta2da
|
||||
blitz: link:../blitz
|
||||
cross-spawn: 7.0.3
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
find-up: 4.1.0
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
react: 18.2.0
|
||||
@@ -1069,6 +1103,7 @@ importers:
|
||||
blitz: 2.0.0-beta.23
|
||||
chalk: ^4.1.0
|
||||
debug: 4.3.3
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
next: 12.2.5
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0
|
||||
@@ -1094,6 +1129,7 @@ importers:
|
||||
"@types/react": 18.0.25
|
||||
"@types/react-dom": 17.0.14
|
||||
blitz: link:../blitz
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
next: 12.2.5_biqbaboplfbrettd7655fr4n2y
|
||||
react: 18.2.0
|
||||
react-dom: 18.2.0_react@18.2.0
|
||||
@@ -1120,6 +1156,7 @@ importers:
|
||||
cross-spawn: 7.0.3
|
||||
debug: 4.3.3
|
||||
esbuild: 0.14.34
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
jscodeshift: 0.13.0
|
||||
prompts: 2.4.2
|
||||
@@ -1146,6 +1183,7 @@ importers:
|
||||
"@types/jscodeshift": 0.11.2
|
||||
"@types/node": 18.11.9
|
||||
ast-types: 0.14.2
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
unbuild: 0.7.6
|
||||
watch: 1.0.2
|
||||
|
||||
@@ -1153,17 +1191,21 @@ importers:
|
||||
specifiers:
|
||||
"@typescript-eslint/eslint-plugin": 5.42.1
|
||||
"@typescript-eslint/parser": 5.9.1
|
||||
eslint-config-next: 12.3.1
|
||||
eslint-config-prettier: 8.5.0
|
||||
typescript: ^4.8.4
|
||||
dependencies:
|
||||
"@typescript-eslint/eslint-plugin": 5.42.1_z4ocgzhfuku3ho6vky337zbopm
|
||||
"@typescript-eslint/parser": 5.9.1_typescript@4.8.4
|
||||
eslint-config-next: 12.3.1_typescript@4.8.4
|
||||
eslint-config-prettier: 8.5.0
|
||||
devDependencies:
|
||||
typescript: 4.8.4
|
||||
|
||||
packages/eslint-config-blitz-next:
|
||||
specifiers:
|
||||
eslint-config-next: latest
|
||||
eslint-config-prettier: ^8.3.0
|
||||
dependencies:
|
||||
eslint-config-next: 13.2.4
|
||||
eslint-config-prettier: 8.5.0
|
||||
|
||||
packages/generator:
|
||||
specifiers:
|
||||
"@babel/core": 7.12.10
|
||||
@@ -1194,6 +1236,7 @@ importers:
|
||||
diff: 5.0.0
|
||||
enquirer: 2.3.6
|
||||
eslint: 8.27.0
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
fs-extra: 10.0.1
|
||||
globby: 13.1.2
|
||||
got: ^11.8.1
|
||||
@@ -1258,6 +1301,7 @@ importers:
|
||||
babylon: 6.18.0
|
||||
debug: 4.3.3_supports-color@8.1.1
|
||||
eslint: 8.27.0_supports-color@8.1.1
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
react: 18.2.0
|
||||
typescript: 4.8.4
|
||||
unbuild: 0.6.9_supports-color@8.1.1
|
||||
@@ -1270,6 +1314,7 @@ importers:
|
||||
"@types/react-dom": 17.0.14
|
||||
"@typescript-eslint/eslint-plugin": 5.42.1
|
||||
"@typescript-eslint/parser": 5.9.1
|
||||
eslint-config-blitz-next: workspace:2.0.0-beta.23
|
||||
react: 18.2.0
|
||||
typescript: ^4.8.4
|
||||
unbuild: 0.7.6
|
||||
@@ -1281,6 +1326,7 @@ importers:
|
||||
"@blitzjs/config": link:../config
|
||||
"@types/react": 18.0.25
|
||||
"@types/react-dom": 17.0.14
|
||||
eslint-config-blitz-next: link:../eslint-config-blitz-next
|
||||
react: 18.2.0
|
||||
typescript: 4.8.4
|
||||
unbuild: 0.7.6
|
||||
@@ -2515,7 +2561,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
"@babel/plugin-syntax-nullish-coalescing-operator": 7.8.3_@babel+core@7.18.2
|
||||
dev: false
|
||||
@@ -2585,7 +2631,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
"@babel/helper-skip-transparent-expression-wrappers": 7.16.0
|
||||
"@babel/plugin-syntax-optional-chaining": 7.8.3_@babel+core@7.18.2
|
||||
@@ -2721,7 +2767,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
dev: false
|
||||
|
||||
@@ -2850,7 +2896,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
dev: false
|
||||
|
||||
@@ -2950,7 +2996,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
dev: false
|
||||
|
||||
@@ -3011,7 +3057,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
dev: false
|
||||
|
||||
@@ -3210,7 +3256,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
"@babel/plugin-syntax-flow": 7.17.12_@babel+core@7.18.2
|
||||
dev: false
|
||||
@@ -3956,7 +4002,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
"@babel/helper-plugin-utils": 7.17.12
|
||||
"@babel/helper-validator-option": 7.16.7
|
||||
"@babel/plugin-transform-flow-strip-types": 7.17.12_@babel+core@7.18.2
|
||||
@@ -4020,7 +4066,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
clone-deep: 4.0.1
|
||||
find-cache-dir: 2.1.0
|
||||
make-dir: 2.1.0
|
||||
@@ -5090,15 +5136,15 @@ packages:
|
||||
}
|
||||
dependencies:
|
||||
glob: 7.1.7
|
||||
dev: true
|
||||
|
||||
/@next/eslint-plugin-next/13.1.6:
|
||||
/@next/eslint-plugin-next/13.2.4:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-o7cauUYsXjzSJkay8wKjpKJf2uLzlggCsGUkPu3lP09Pv97jYlekTC20KJrjQKmSv5DXV0R/uks2ZXhqjNkqAw==,
|
||||
integrity: sha512-ck1lI+7r1mMJpqLNa3LJ5pxCfOB1lfJncKmRJeJxcJqcngaFwylreLP7da6Rrjr6u2gVRTfmnkSkjc80IiQCwQ==,
|
||||
}
|
||||
dependencies:
|
||||
glob: 7.1.7
|
||||
dev: true
|
||||
|
||||
/@next/swc-android-arm-eabi/12.2.5:
|
||||
resolution:
|
||||
@@ -5291,7 +5337,6 @@ packages:
|
||||
picocolors: 1.0.0
|
||||
tiny-glob: 0.2.9
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/@polka/url/1.0.0-next.21:
|
||||
resolution:
|
||||
@@ -6845,6 +6890,27 @@ packages:
|
||||
- typescript
|
||||
dev: true
|
||||
|
||||
/@typescript-eslint/parser/5.43.0:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-2iHUK2Lh7PwNUlhFxxLI2haSDNyXvebBO9izhjhMoDC+S3XI9qt2DGFUsiJ89m2k7gGYch2aEpYqV5F/+nwZug==,
|
||||
}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
typescript: "*"
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager": 5.43.0
|
||||
"@typescript-eslint/types": 5.43.0
|
||||
"@typescript-eslint/typescript-estree": 5.43.0
|
||||
debug: 4.3.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/@typescript-eslint/parser/5.43.0_rmayb2veg2btbq6mbmnyivgasy:
|
||||
resolution:
|
||||
{
|
||||
@@ -6867,28 +6933,6 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/@typescript-eslint/parser/5.43.0_typescript@4.8.4:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-2iHUK2Lh7PwNUlhFxxLI2haSDNyXvebBO9izhjhMoDC+S3XI9qt2DGFUsiJ89m2k7gGYch2aEpYqV5F/+nwZug==,
|
||||
}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: ^6.0.0 || ^7.0.0 || ^8.0.0
|
||||
typescript: "*"
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@typescript-eslint/scope-manager": 5.43.0
|
||||
"@typescript-eslint/types": 5.43.0
|
||||
"@typescript-eslint/typescript-estree": 5.43.0_typescript@4.8.4
|
||||
debug: 4.3.4
|
||||
typescript: 4.8.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/@typescript-eslint/parser/5.9.1_nw6v2wse7au2evadw7vu3hneg4:
|
||||
resolution:
|
||||
{
|
||||
@@ -7143,6 +7187,29 @@ packages:
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/@typescript-eslint/typescript-estree/5.43.0:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-BZ1WVe+QQ+igWal2tDbNg1j2HWUkAa+CVqdU79L4HP9izQY6CNhXfkNwd1SS4+sSZAP/EthI1uiCSY/+H0pROg==,
|
||||
}
|
||||
engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
typescript: "*"
|
||||
peerDependenciesMeta:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@typescript-eslint/types": 5.43.0
|
||||
"@typescript-eslint/visitor-keys": 5.43.0
|
||||
debug: 4.3.4
|
||||
globby: 11.1.0
|
||||
is-glob: 4.0.3
|
||||
semver: 7.3.8
|
||||
tsutils: 3.21.0
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/@typescript-eslint/typescript-estree/5.43.0_typescript@4.8.4:
|
||||
resolution:
|
||||
{
|
||||
@@ -7908,7 +7975,7 @@ packages:
|
||||
peerDependencies:
|
||||
"@babel/core": ^7.0.0-0
|
||||
dependencies:
|
||||
"@babel/core": 7.18.2_supports-color@8.1.1
|
||||
"@babel/core": 7.18.2
|
||||
dev: false
|
||||
|
||||
/babel-jest/29.3.0_@babel+core@7.20.2:
|
||||
@@ -9512,7 +9579,6 @@ packages:
|
||||
integrity: sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==,
|
||||
}
|
||||
engines: {node: ">=8"}
|
||||
dev: true
|
||||
|
||||
/define-properties/1.1.4:
|
||||
resolution:
|
||||
@@ -9925,7 +9991,6 @@ packages:
|
||||
dependencies:
|
||||
graceful-fs: 4.2.10
|
||||
tapable: 2.2.1
|
||||
dev: true
|
||||
|
||||
/enquirer/2.3.6:
|
||||
resolution:
|
||||
@@ -10930,10 +10995,10 @@ packages:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-config-next/12.3.1_typescript@4.8.4:
|
||||
/eslint-config-next/13.2.4:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-EN/xwKPU6jz1G0Qi6Bd/BqMnHLyRAL0VsaQaWA7F3KkjAgZHi4f1uL1JKGWNxdQpHTW/sdGONBd0bzxUka/DJg==,
|
||||
integrity: sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==,
|
||||
}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
@@ -10942,25 +11007,24 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@next/eslint-plugin-next": 12.3.1
|
||||
"@next/eslint-plugin-next": 13.2.4
|
||||
"@rushstack/eslint-patch": 1.1.3
|
||||
"@typescript-eslint/parser": 5.43.0_typescript@4.8.4
|
||||
"@typescript-eslint/parser": 5.43.0
|
||||
eslint-import-resolver-node: 0.3.6
|
||||
eslint-import-resolver-typescript: 2.7.1_fkfqfehjtk7sk2efaqbgxsuasa
|
||||
eslint-plugin-import: 2.26.0_thmqqzpxv5mluo3coertzplf2y
|
||||
eslint-import-resolver-typescript: 3.5.2_fkfqfehjtk7sk2efaqbgxsuasa
|
||||
eslint-plugin-import: 2.26.0_jnhknsizguq62sa5jffjas67nq
|
||||
eslint-plugin-jsx-a11y: 6.5.1
|
||||
eslint-plugin-react: 7.31.8
|
||||
eslint-plugin-react-hooks: 4.5.0
|
||||
typescript: 4.8.4
|
||||
transitivePeerDependencies:
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/eslint-config-next/13.1.6_rmayb2veg2btbq6mbmnyivgasy:
|
||||
/eslint-config-next/13.2.4_rmayb2veg2btbq6mbmnyivgasy:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-0cg7h5wztg/SoLAlxljZ0ZPUQ7i6QKqRiP4M2+MgTZtxWwNKb2JSwNc18nJ6/kXBI6xYvPraTbQSIhAuVw6czw==,
|
||||
integrity: sha512-lunIBhsoeqw6/Lfkd6zPt25w1bn0znLA/JCL+au1HoEpSb4/PpsOYsYtgV/q+YPsoKIOzFyU5xnb04iZnXjUvg==,
|
||||
}
|
||||
peerDependencies:
|
||||
eslint: ^7.23.0 || ^8.0.0
|
||||
@@ -10969,7 +11033,7 @@ packages:
|
||||
typescript:
|
||||
optional: true
|
||||
dependencies:
|
||||
"@next/eslint-plugin-next": 13.1.6
|
||||
"@next/eslint-plugin-next": 13.2.4
|
||||
"@rushstack/eslint-patch": 1.1.3
|
||||
"@typescript-eslint/parser": 5.43.0_rmayb2veg2btbq6mbmnyivgasy
|
||||
eslint: 8.27.0
|
||||
@@ -11037,26 +11101,7 @@ packages:
|
||||
tsconfig-paths: 3.14.1
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
/eslint-import-resolver-typescript/2.7.1_fkfqfehjtk7sk2efaqbgxsuasa:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-00UbgGwV8bSgUv34igBDbTOtKhqoRMy9bFjNehT40bXg6585PNIct8HhXZ0SybqB9rWtXj9crcku8ndDn/gIqQ==,
|
||||
}
|
||||
engines: {node: ">=4"}
|
||||
peerDependencies:
|
||||
eslint: "*"
|
||||
eslint-plugin-import: "*"
|
||||
dependencies:
|
||||
debug: 4.3.4
|
||||
eslint-plugin-import: 2.26.0_thmqqzpxv5mluo3coertzplf2y
|
||||
glob: 7.2.0
|
||||
is-glob: 4.0.3
|
||||
resolve: 1.22.1
|
||||
tsconfig-paths: 3.14.1
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-typescript/3.5.2_dcpv4nbdr5ks2h5677xdltrk6e:
|
||||
resolution:
|
||||
@@ -11079,7 +11124,28 @@ packages:
|
||||
synckit: 0.8.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-import-resolver-typescript/3.5.2_fkfqfehjtk7sk2efaqbgxsuasa:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-zX4ebnnyXiykjhcBvKIf5TNvt8K7yX6bllTRZ14MiurKPjDpCAZujlszTdB8pcNXhZcOf+god4s9SjQa5GnytQ==,
|
||||
}
|
||||
engines: {node: ^14.18.0 || >=16.0.0}
|
||||
peerDependencies:
|
||||
eslint: "*"
|
||||
eslint-plugin-import: "*"
|
||||
dependencies:
|
||||
debug: 4.3.4
|
||||
enhanced-resolve: 5.10.0
|
||||
eslint-plugin-import: 2.26.0_jnhknsizguq62sa5jffjas67nq
|
||||
get-tsconfig: 4.2.0
|
||||
globby: 13.1.2
|
||||
is-core-module: 2.11.0
|
||||
is-glob: 4.0.3
|
||||
synckit: 0.8.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/eslint-module-utils/2.7.3_clahhyedowhj7lywpxe6ohktxi:
|
||||
resolution:
|
||||
@@ -11109,7 +11175,6 @@ packages:
|
||||
find-up: 2.1.0
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-module-utils/2.7.3_rmba4edv35vyqs75pdxciqmxgu:
|
||||
resolution:
|
||||
@@ -11139,6 +11204,7 @@ packages:
|
||||
find-up: 2.1.0
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-import/2.26.0_bbzxof3vtngyannf3l4jlcflvy:
|
||||
resolution:
|
||||
@@ -11172,9 +11238,8 @@ packages:
|
||||
- eslint-import-resolver-typescript
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-import/2.26.0_thmqqzpxv5mluo3coertzplf2y:
|
||||
/eslint-plugin-import/2.26.0_jnhknsizguq62sa5jffjas67nq:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-hYfi3FXaM8WPLf4S1cikh/r4IxnO6zrhZbEGz2b660EJRbuxgpDS5gkCuYgGWg2xxh2rBuIr4Pvhve/7c31koA==,
|
||||
@@ -11187,13 +11252,13 @@ packages:
|
||||
"@typescript-eslint/parser":
|
||||
optional: true
|
||||
dependencies:
|
||||
"@typescript-eslint/parser": 5.43.0_typescript@4.8.4
|
||||
"@typescript-eslint/parser": 5.43.0
|
||||
array-includes: 3.1.5
|
||||
array.prototype.flat: 1.3.0
|
||||
debug: 2.6.9
|
||||
doctrine: 2.1.0
|
||||
eslint-import-resolver-node: 0.3.6
|
||||
eslint-module-utils: 2.7.3_rmba4edv35vyqs75pdxciqmxgu
|
||||
eslint-module-utils: 2.7.3_clahhyedowhj7lywpxe6ohktxi
|
||||
has: 1.0.3
|
||||
is-core-module: 2.11.0
|
||||
is-glob: 4.0.3
|
||||
@@ -11239,6 +11304,7 @@ packages:
|
||||
- eslint-import-resolver-typescript
|
||||
- eslint-import-resolver-webpack
|
||||
- supports-color
|
||||
dev: true
|
||||
|
||||
/eslint-plugin-jsx-a11y/6.5.1:
|
||||
resolution:
|
||||
@@ -12479,7 +12545,6 @@ packages:
|
||||
{
|
||||
integrity: sha512-X8u8fREiYOE6S8hLbq99PeykTDoLVnxvF4DjWKJmz9xy2nNRdUcV8ZN9tniJFeKyTU3qnC9lL8n4Chd6LmVKHg==,
|
||||
}
|
||||
dev: true
|
||||
|
||||
/get-value/2.0.6:
|
||||
resolution:
|
||||
@@ -12645,7 +12710,6 @@ packages:
|
||||
{
|
||||
integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==,
|
||||
}
|
||||
dev: true
|
||||
|
||||
/globby/11.1.0:
|
||||
resolution:
|
||||
@@ -12698,7 +12762,6 @@ packages:
|
||||
{
|
||||
integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==,
|
||||
}
|
||||
dev: true
|
||||
|
||||
/got/11.8.1:
|
||||
resolution:
|
||||
@@ -13410,7 +13473,6 @@ packages:
|
||||
}
|
||||
engines: {node: ">=8"}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/is-expression/4.0.0:
|
||||
resolution:
|
||||
@@ -13711,7 +13773,6 @@ packages:
|
||||
engines: {node: ">=8"}
|
||||
dependencies:
|
||||
is-docker: 2.2.1
|
||||
dev: true
|
||||
|
||||
/is2/2.0.7:
|
||||
resolution:
|
||||
@@ -13972,7 +14033,7 @@ packages:
|
||||
pretty-format: 29.2.1
|
||||
slash: 3.0.0
|
||||
strip-json-comments: 3.1.1
|
||||
ts-node: 10.9.1_typescript@4.8.4
|
||||
ts-node: 10.9.1_cbe7ovvae6zqfnmtgctpgpys54
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
|
||||
@@ -15864,7 +15925,6 @@ packages:
|
||||
{
|
||||
integrity: sha512-C40jQ3NzfkP53NsO8kEOFd79p4b9kDXQMwgiY1z8ZwrDZgUyom0AHwGegF4Dm99L+YoYhuaB0ceerUcXmqr1rQ==,
|
||||
}
|
||||
dev: true
|
||||
|
||||
/nanoid/3.2.0:
|
||||
resolution:
|
||||
@@ -16100,7 +16160,6 @@ packages:
|
||||
integrity: sha512-amJnQCcgtRVw9SvoebO3BKGESClrfXGCUTX9hSn1OuGQTQBOZmVd0Z0OlecpuRksKvbsUqALE8jls/ErClAPuQ==,
|
||||
}
|
||||
hasBin: true
|
||||
dev: true
|
||||
|
||||
/node-int64/0.4.0:
|
||||
resolution:
|
||||
@@ -16439,7 +16498,6 @@ packages:
|
||||
define-lazy-prop: 2.0.0
|
||||
is-docker: 2.2.1
|
||||
is-wsl: 2.2.0
|
||||
dev: true
|
||||
|
||||
/opener/1.5.2:
|
||||
resolution:
|
||||
@@ -18355,7 +18413,6 @@ packages:
|
||||
dependencies:
|
||||
nanoassert: 1.1.0
|
||||
sodium-native: 3.3.0
|
||||
dev: true
|
||||
|
||||
/selderee/0.6.0:
|
||||
resolution:
|
||||
@@ -18787,7 +18844,6 @@ packages:
|
||||
requiresBuild: true
|
||||
dependencies:
|
||||
node-gyp-build: 4.4.0
|
||||
dev: true
|
||||
|
||||
/source-map-js/1.0.2:
|
||||
resolution:
|
||||
@@ -19308,7 +19364,6 @@ packages:
|
||||
dependencies:
|
||||
"@pkgr/utils": 2.3.1
|
||||
tslib: 2.4.0
|
||||
dev: true
|
||||
|
||||
/tapable/2.2.1:
|
||||
resolution:
|
||||
@@ -19316,7 +19371,6 @@ packages:
|
||||
integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==,
|
||||
}
|
||||
engines: {node: ">=6"}
|
||||
dev: true
|
||||
|
||||
/tar/6.1.11:
|
||||
resolution:
|
||||
@@ -19439,7 +19493,6 @@ packages:
|
||||
dependencies:
|
||||
globalyzer: 0.1.0
|
||||
globrex: 0.1.2
|
||||
dev: true
|
||||
|
||||
/tinybench/2.3.1:
|
||||
resolution:
|
||||
@@ -19698,7 +19751,6 @@ packages:
|
||||
typescript: 4.8.4
|
||||
v8-compile-cache-lib: 3.0.1
|
||||
yn: 3.1.1
|
||||
dev: false
|
||||
|
||||
/ts-node/10.9.1_ieummqxttktzud32hpyrer46t4:
|
||||
resolution:
|
||||
@@ -19765,6 +19817,7 @@ packages:
|
||||
typescript: 4.8.4
|
||||
v8-compile-cache-lib: 3.0.1
|
||||
yn: 3.1.1
|
||||
dev: false
|
||||
|
||||
/tsconfig-paths/3.14.1:
|
||||
resolution:
|
||||
@@ -19817,6 +19870,18 @@ packages:
|
||||
engines: {node: ">=0.6.x"}
|
||||
dev: false
|
||||
|
||||
/tsutils/3.21.0:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==,
|
||||
}
|
||||
engines: {node: ">= 6"}
|
||||
peerDependencies:
|
||||
typescript: ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
|
||||
dependencies:
|
||||
tslib: 1.14.1
|
||||
dev: false
|
||||
|
||||
/tsutils/3.21.0_typescript@4.8.4:
|
||||
resolution:
|
||||
{
|
||||
@@ -20767,6 +20832,21 @@ packages:
|
||||
- debug
|
||||
dev: false
|
||||
|
||||
/wait-port/1.0.4:
|
||||
resolution:
|
||||
{
|
||||
integrity: sha512-w8Ftna3h6XSFWWc2JC5gZEgp64nz8bnaTp5cvzbJSZ53j+omktWTDdwXxEF0jM8YveviLgFWvNGrSvRHnkyHyw==,
|
||||
}
|
||||
engines: {node: ">=10"}
|
||||
hasBin: true
|
||||
dependencies:
|
||||
chalk: 4.1.2
|
||||
commander: 9.4.1
|
||||
debug: 4.3.4
|
||||
transitivePeerDependencies:
|
||||
- supports-color
|
||||
dev: false
|
||||
|
||||
/walker/1.0.8:
|
||||
resolution:
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user