Skip to content

Commit

Permalink
Merge pull request #537 from borisno2/dev
Browse files Browse the repository at this point in the history
Production Release
  • Loading branch information
borisno2 authored Oct 27, 2024
2 parents 1f63656 + 49e1507 commit 7fb5f96
Show file tree
Hide file tree
Showing 31 changed files with 3,283 additions and 2,226 deletions.
76 changes: 28 additions & 48 deletions eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -1,53 +1,33 @@
// import nextPlugin from '@next/eslint-plugin-next'
import reactPlugin from 'eslint-plugin-react'
import hooksPlugin from 'eslint-plugin-react-hooks'
import ts from '@typescript-eslint/eslint-plugin'
import tsParser from '@typescript-eslint/parser'
import imprt from 'eslint-plugin-import' // 'import' is ambiguous & prettier has trouble
import { fixupConfigRules } from '@eslint/compat'
// @ts-check
import path from 'node:path'
import { fileURLToPath } from 'node:url'
import eslint from '@eslint/js'
import tseslint from 'typescript-eslint'
import { FlatCompat } from '@eslint/eslintrc'
import { fixupConfigRules } from '@eslint/compat'

const compat = new FlatCompat()
const __filename = fileURLToPath(import.meta.url)
const __dirname = path.dirname(__filename)

export default [
...fixupConfigRules(compat.extends('plugin:@next/next/core-web-vitals')),
{
files: ['**/*.ts', '**/*.tsx'],
plugins: {
react: reactPlugin,
'react-hooks': hooksPlugin,
// '@next/next': nextPlugin,
},
rules: {
...reactPlugin.configs['jsx-runtime'].rules,
// ...hooksPlugin.configs.recommended.rules,
// ...nextPlugin.configs.recommended.rules,
// ...nextPlugin.configs['core-web-vitals'].rules,
// '@next/next/no-img-element': 'error',
},
},
{
files: ['**/*.ts', '**/*.tsx'],
languageOptions: {
parser: tsParser,
parserOptions: {
ecmaFeatures: { modules: true },
ecmaVersion: 'latest',
project: './tsconfig.json',
},
},
plugins: {
import: imprt,
'@typescript-eslint': ts,
ts,
},
rules: {
...ts.configs['eslint-recommended'].rules,
...ts.configs['recommended'].rules,
'ts/return-await': 2,
},
},
const compat = new FlatCompat({
baseDirectory: __dirname,
})

const patchedConfig = fixupConfigRules([
...compat.extends('next/core-web-vitals'),
])

export default tseslint.config(
eslint.configs.recommended,
...tseslint.configs.recommended,
...patchedConfig,
{
ignores: ['**/.next/','node_modules','__generated__'],
ignores: [
'**/.next/',
'node_modules',
'__generated__',
'**/.keystone',
'*.js',
],
},
]
)
11 changes: 8 additions & 3 deletions next.config.js → next.config.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
import type { NextConfig } from 'next'

const KEYSTONE_URL = process.env.KEYSTONE_URL || 'http://localhost:4000'

/** @type {import('next').NextConfig} */
module.exports = {
const nextConfig: NextConfig = {
serverExternalPackages: ['graphql', 'ws'],
experimental: {
scrollRestoration: true,
serverComponentsExternalPackages: ['graphql', 'ws'],
},
async redirects() {
return [
Expand All @@ -22,6 +23,7 @@ module.exports = {
},
async rewrites() {
return {
beforeFiles: [],
afterFiles: [
{
source: '/admin',
Expand All @@ -32,6 +34,9 @@ module.exports = {
destination: `${KEYSTONE_URL}/admin/:admin*`,
},
],
fallback: [],
}
},
}

export default nextConfig
110 changes: 61 additions & 49 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,97 +6,109 @@
"build:keystone": "keystone build",
"dev": "turbo dev:watch dev:keystone dev:next",
"dev:keystone": "next start .keystone/admin --port 4000",
"dev:next": "next dev --port 3000",
"dev:next": "next dev --port 3000 --turbopack",
"dev:next-ssl": "node server.js",
"dev:watch": "keystone dev --no-server",
"format": "prettier --write \"**/*.{ts,tsx,md}\"",
"postinstall": "keystone build --no-ui --frozen",
"lint": "eslint . && cspell '**' && tsc --noEmit",
"lint": "next lint && eslint . && cspell '**' && tsc --noEmit",
"seed-data": "tsx seed-data.ts"
},
"dependencies": {
"@aws-sdk/signature-v4-crt": "^3.654.0",
"@aws-sdk/signature-v4-crt": "^3.679.0",
"@graphql-typed-document-node/core": "^3.2.0",
"@graphql-yoga/apollo-link": "^3.7.0",
"@headlessui/react": "^2.1.8",
"@headlessui/react": "^2.2.0",
"@heroicons/react": "^2.1.5",
"@hookform/resolvers": "^3.9.0",
"@keystone-6/core": "^6.3.0",
"@marsidev/react-turnstile": "^1.0.2",
"@neondatabase/serverless": "^0.9.5",
"@prisma/adapter-neon": "^5.20.0",
"@prisma/client": "5.20.0",
"@radix-ui/react-avatar": "^1.1.0",
"@radix-ui/react-hover-card": "^1.1.1",
"@sendgrid/mail": "^8.1.3",
"@neondatabase/serverless": "^0.10.1",
"@prisma/adapter-neon": "^5.21.1",
"@prisma/client": "5.21.1",
"@radix-ui/react-avatar": "^1.1.1",
"@radix-ui/react-hover-card": "^1.1.2",
"@radix-ui/react-popover": "^1.1.2",
"@radix-ui/react-slot": "^1.1.0",
"@sendgrid/mail": "^8.1.4",
"@tailwindcss/forms": "^0.5.9",
"@tailwindcss/typography": "^0.5.15",
"@types/dotenv-flow": "^3.3.3",
"@vercel/analytics": "^1.3.1",
"@vercel/blob": "^0.24.0",
"@vercel/speed-insights": "^1.0.12",
"@whatwg-node/fetch": "^0.9.21",
"@vercel/analytics": "^1.3.2",
"@vercel/blob": "^0.25.1",
"@vercel/speed-insights": "^1.0.14",
"@whatwg-node/fetch": "^0.9.22",
"autoprefixer": "^10.4.20",
"aws-crt": "^1.22.0",
"aws-crt": "^1.23.0",
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"csrf": "^3.1.0",
"cuid": "^3.0.0",
"date-fns": "^4.1.0",
"dayjs": "^1.11.13",
"decimal.js": "^10.4.3",
"dotenv": "^16.4.5",
"file-type": "^19.5.0",
"file-type": "^19.6.0",
"focus-visible": "^5.2.1",
"gql.tada": "^1.8.9",
"gql.tada": "^1.8.10",
"graphql": "^16.9.0",
"graphql-yoga": "^5.7.0",
"image-size": "^1.1.1",
"inngest": "^3.22.13",
"lucide-react": "^0.446.0",
"next": "^14.2.13",
"next-auth": "^4.24.8",
"postcss-focus-visible": "^10.0.0",
"react": "^18.3.1",
"react-dom": "^18.3.1",
"react-hook-form": "^7.53.0",
"react-tailwindcss-datepicker": "^1.7.2",
"inngest": "^3.23.1",
"lucide-react": "^0.453.0",
"next": "15.0.1",
"next-auth": "^4.24.10",
"postcss-focus-visible": "^10.0.1",
"react": "19.0.0-rc-fb9a90fa48-20240614",
"react-day-picker": "^9.2.0",
"react-dom": "19.0.0-rc-fb9a90fa48-20240614",
"react-hook-form": "^7.53.1",
"sharp": "^0.33.5",
"tailwind-merge": "^2.5.2",
"tailwindcss": "^3.4.13",
"tailwind-merge": "^2.5.4",
"tailwindcss": "^3.4.14",
"tailwindcss-animate": "^1.0.7",
"ws": "^8.18.0",
"xero-node": "^9.3.0",
"zod": "^3.23.8"
},
"devDependencies": {
"@0no-co/graphqlsp": "^1.12.14",
"@eslint/compat": "^1.1.1",
"@0no-co/graphqlsp": "^1.12.16",
"@eslint/compat": "^1.2.1",
"@eslint/eslintrc": "^3.1.0",
"@eslint/js": "^9.11.1",
"@types/lodash": "^4.17.9",
"@types/node": "^20.16.9",
"@types/react": "^18.3.9",
"@types/react-dom": "^18.3.0",
"@eslint/js": "^9.13.0",
"@next/eslint-plugin-next": "^15.0.1",
"@types/eslint__js": "^8.42.3",
"@types/lodash": "^4.17.12",
"@types/node": "^22.8.1",
"@types/react": "npm:[email protected]",
"@types/react-dom": "npm:[email protected]",
"@types/ws": "^8.5.12",
"@typescript-eslint/eslint-plugin": "^8.7.0",
"cspell": "^8.14.4",
"eslint": "9.11.1",
"eslint-config-next": "14.2.13",
"@typescript-eslint/eslint-plugin": "^8.11.0",
"cspell": "^8.15.4",
"eslint": "9.13.0",
"eslint-config-next": "15.0.1",
"prettier": "^3.3.3",
"prettier-plugin-tailwindcss": "^0.6.8",
"prisma": "5.20.0",
"tsx": "^4.19.1",
"turbo": "^2.1.2",
"typescript": "^5.6.2"
"prisma": "5.21.1",
"tsx": "^4.19.2",
"turbo": "^2.2.3",
"typescript": "^5.6.3",
"typescript-eslint": "^8.11.0"
},
"packageManager": "pnpm@9.11.0",
"packageManager": "pnpm@9.12.2",
"pnpm": {
"overrides": {
"prisma": "5.20.0",
"@prisma/client": "5.20.0",
"@prisma/internals": "5.20.0",
"@prisma/migrate": "5.20.0",
"next": "^14.2.13"
"prisma": "5.21.1",
"@prisma/client": "5.21.1",
"@prisma/internals": "5.21.1",
"@prisma/migrate": "5.21.1",
"next": "^15.0.1",
"react": "19.0.0-rc-fb9a90fa48-20240614",
"react-dom": "19.0.0-rc-fb9a90fa48-20240614",
"@types/react": "npm:[email protected]",
"@types/react-dom": "npm:[email protected]",
"@apollo/client": "^3.11.8",
"react-day-picker": "^9.2.0"
}
}
}
Loading

0 comments on commit 7fb5f96

Please sign in to comment.