create-einja-app 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +307 -0
- package/dist/cli.d.ts +2 -0
- package/dist/cli.js +1041 -0
- package/dist/cli.js.map +1 -0
- package/package.json +62 -0
- package/templates/turborepo-pandacss/.biomeignore +15 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/biome-format.sh +49 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/design-doc-check.sh +61 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/detect-secrets.sh +62 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/large-file-warning.sh +42 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/playwright-resize.sh +36 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/typecheck.sh +37 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/unset-volta-recursion.sh +32 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/validate-git-commit.sh +239 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/warn-index-ts.sh +34 -0
- package/templates/turborepo-pandacss/.claude/hooks/einja/warn-relative-import.sh +48 -0
- package/templates/turborepo-pandacss/.claude/settings.json +174 -0
- package/templates/turborepo-pandacss/.claude/skills/create-einja-app-release/SKILL.md +186 -0
- package/templates/turborepo-pandacss/.claude/skills/dev-cli-release/SKILL.md +173 -0
- package/templates/turborepo-pandacss/.cursor/commands/spec-create.md +227 -0
- package/templates/turborepo-pandacss/.cursor/commands/start-dev.md +98 -0
- package/templates/turborepo-pandacss/.cursor/commands/task-exec.md +287 -0
- package/templates/turborepo-pandacss/.cursor/commands/task-vibe-kanban-loop.md +532 -0
- package/templates/turborepo-pandacss/.cursor/commands/update-docs-by-task-specs.md +448 -0
- package/templates/turborepo-pandacss/.cursor/mcp.json +45 -0
- package/templates/turborepo-pandacss/.cursor/rules/api-rules.mdc +171 -0
- package/templates/turborepo-pandacss/.cursor/rules/api-test-rules.mdc +181 -0
- package/templates/turborepo-pandacss/.cursor/rules/base-code.mdc +70 -0
- package/templates/turborepo-pandacss/.cursor/rules/base-commit-rules.mdc +174 -0
- package/templates/turborepo-pandacss/.cursor/rules/base-design.mdc +12 -0
- package/templates/turborepo-pandacss/.cursor/rules/base-rules.mdc +231 -0
- package/templates/turborepo-pandacss/.cursor/rules/error-handling-rules.mdc +188 -0
- package/templates/turborepo-pandacss/.cursor/rules/refactor-rules.mdc +93 -0
- package/templates/turborepo-pandacss/.dockerignore +126 -0
- package/templates/turborepo-pandacss/.einja-sync.json +35 -0
- package/templates/turborepo-pandacss/.env.ci +25 -0
- package/templates/turborepo-pandacss/.env.example +35 -0
- package/templates/turborepo-pandacss/.env.personal.example +27 -0
- package/templates/turborepo-pandacss/.envrc +4 -0
- package/templates/turborepo-pandacss/.gitattributes +5 -0
- package/templates/turborepo-pandacss/.husky/pre-commit +1 -0
- package/templates/turborepo-pandacss/.lintstagedrc.js +24 -0
- package/templates/turborepo-pandacss/.mcp.json +45 -0
- package/templates/turborepo-pandacss/.node-version +1 -0
- package/templates/turborepo-pandacss/.templateignore +60 -0
- package/templates/turborepo-pandacss/.vscode/extensions.json +3 -0
- package/templates/turborepo-pandacss/CLAUDE.md +415 -0
- package/templates/turborepo-pandacss/README.md +322 -0
- package/templates/turborepo-pandacss/apps/web/middleware.ts +28 -0
- package/templates/turborepo-pandacss/apps/web/next.config.ts +10 -0
- package/templates/turborepo-pandacss/apps/web/package.json +80 -0
- package/templates/turborepo-pandacss/apps/web/panda.config.ts +114 -0
- package/templates/turborepo-pandacss/apps/web/postcss.config.cjs +6 -0
- package/templates/turborepo-pandacss/apps/web/public/file.svg +1 -0
- package/templates/turborepo-pandacss/apps/web/public/globe.svg +1 -0
- package/templates/turborepo-pandacss/apps/web/public/next.svg +1 -0
- package/templates/turborepo-pandacss/apps/web/public/vercel.svg +1 -0
- package/templates/turborepo-pandacss/apps/web/public/window.svg +1 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/dashboard/page.tsx +79 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/data/_components/UserTable.tsx +203 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/data/page.tsx +57 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/layout-client.tsx +31 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/layout.tsx +17 -0
- package/templates/turborepo-pandacss/apps/web/src/app/(authenticated)/profile/page.tsx +59 -0
- package/templates/turborepo-pandacss/apps/web/src/app/api/auth/[...nextauth]/route.ts +3 -0
- package/templates/turborepo-pandacss/apps/web/src/app/api/auth/signup/route.ts +70 -0
- package/templates/turborepo-pandacss/apps/web/src/app/error.tsx +106 -0
- package/templates/turborepo-pandacss/apps/web/src/app/favicon.ico +0 -0
- package/templates/turborepo-pandacss/apps/web/src/app/global-error.tsx +110 -0
- package/templates/turborepo-pandacss/apps/web/src/app/globals.css +121 -0
- package/templates/turborepo-pandacss/apps/web/src/app/layout.tsx +28 -0
- package/templates/turborepo-pandacss/apps/web/src/app/not-found.tsx +54 -0
- package/templates/turborepo-pandacss/apps/web/src/app/page.module.css +165 -0
- package/templates/turborepo-pandacss/apps/web/src/app/page.test.tsx +52 -0
- package/templates/turborepo-pandacss/apps/web/src/app/page.tsx +284 -0
- package/templates/turborepo-pandacss/apps/web/src/app/signin/page.tsx +296 -0
- package/templates/turborepo-pandacss/apps/web/src/app/signup/page.tsx +395 -0
- package/templates/turborepo-pandacss/apps/web/src/application/use-cases/UserUseCases.test.ts +229 -0
- package/templates/turborepo-pandacss/apps/web/src/application/use-cases/UserUseCases.ts +115 -0
- package/templates/turborepo-pandacss/apps/web/src/components/auth/login-button.tsx +35 -0
- package/templates/turborepo-pandacss/apps/web/src/components/auth/logout-button.tsx +24 -0
- package/templates/turborepo-pandacss/apps/web/src/components/auth/user-avatar.test.tsx +68 -0
- package/templates/turborepo-pandacss/apps/web/src/components/auth/user-avatar.tsx +43 -0
- package/templates/turborepo-pandacss/apps/web/src/components/dashboard/dashboard-stats.tsx +128 -0
- package/templates/turborepo-pandacss/apps/web/src/components/providers/query-provider.tsx +30 -0
- package/templates/turborepo-pandacss/apps/web/src/components/providers/session-provider.tsx +12 -0
- package/templates/turborepo-pandacss/apps/web/src/components/shared/Sidebar.tsx +175 -0
- package/templates/turborepo-pandacss/apps/web/src/components/shared/header.tsx +166 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/accordion.tsx +64 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/alert-dialog.tsx +135 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/alert.tsx +60 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/aspect-ratio.tsx +9 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/avatar.tsx +41 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/badge.tsx +39 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/breadcrumb.tsx +101 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/button.tsx +56 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/card.tsx +75 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/checkbox.tsx +29 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/data-table.tsx +189 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/dialog-hook.tsx +210 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/dialog.tsx +129 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/drawer.tsx +124 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/dropdown-menu.tsx +228 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/form.tsx +152 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/hover-card.tsx +38 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/input.tsx +21 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/label.tsx +21 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/pagination.tsx +105 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/popover.tsx +42 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/progress.tsx +28 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/select.tsx +170 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/separator.tsx +28 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/skeleton.tsx +13 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/sonner.tsx +25 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/table.tsx +92 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/tabs.tsx +54 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/textarea.tsx +18 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/tooltip.tsx +57 -0
- package/templates/turborepo-pandacss/apps/web/src/components/ui/typography.tsx +158 -0
- package/templates/turborepo-pandacss/apps/web/src/lib/auth/guard.ts +36 -0
- package/templates/turborepo-pandacss/apps/web/src/lib/auth/index.ts +22 -0
- package/templates/turborepo-pandacss/apps/web/src/lib/prisma.ts +3 -0
- package/templates/turborepo-pandacss/apps/web/src/lib/utils.ts +6 -0
- package/templates/turborepo-pandacss/apps/web/test/globals.d.ts +1 -0
- package/templates/turborepo-pandacss/apps/web/test/matchers.d.ts +1 -0
- package/templates/turborepo-pandacss/apps/web/test/setup.ts +22 -0
- package/templates/turborepo-pandacss/apps/web/tsconfig.json +37 -0
- package/templates/turborepo-pandacss/apps/web/vitest.config.ts +20 -0
- package/templates/turborepo-pandacss/apps/web/vitest.d.ts +2 -0
- package/templates/turborepo-pandacss/biome.json +60 -0
- package/templates/turborepo-pandacss/components.json +21 -0
- package/templates/turborepo-pandacss/docker-compose.yml +27 -0
- package/templates/turborepo-pandacss/middleware.ts +32 -0
- package/templates/turborepo-pandacss/next.config.ts +10 -0
- package/templates/turborepo-pandacss/package-lock.json +9346 -0
- package/templates/turborepo-pandacss/package.json +64 -0
- package/templates/turborepo-pandacss/packages/config/package.json +41 -0
- package/templates/turborepo-pandacss/packages/config/panda.config.ts +114 -0
- package/templates/turborepo-pandacss/packages/config/src/index.ts +24 -0
- package/templates/turborepo-pandacss/packages/config/src/worktree-config-loader.ts +129 -0
- package/templates/turborepo-pandacss/packages/config/src/worktree-config.ts +75 -0
- package/templates/turborepo-pandacss/packages/config/tsconfig.build.json +19 -0
- package/templates/turborepo-pandacss/packages/config/tsconfig.json +24 -0
- package/templates/turborepo-pandacss/packages/config/typescript/base.json +19 -0
- package/templates/turborepo-pandacss/packages/front-core/package.json +24 -0
- package/templates/turborepo-pandacss/packages/front-core/src/auth/config.ts +84 -0
- package/templates/turborepo-pandacss/packages/front-core/src/auth/index.ts +5 -0
- package/templates/turborepo-pandacss/packages/front-core/src/auth/types/next-auth.d.ts +20 -0
- package/templates/turborepo-pandacss/packages/front-core/src/auth/utils.ts +29 -0
- package/templates/turborepo-pandacss/packages/front-core/src/context/index.ts +2 -0
- package/templates/turborepo-pandacss/packages/front-core/src/hooks/index.ts +2 -0
- package/templates/turborepo-pandacss/packages/front-core/src/index.ts +4 -0
- package/templates/turborepo-pandacss/packages/front-core/src/utils/index.ts +2 -0
- package/templates/turborepo-pandacss/packages/front-core/tsconfig.json +14 -0
- package/templates/turborepo-pandacss/packages/server-core/package.json +32 -0
- package/templates/turborepo-pandacss/packages/server-core/prisma/schema.prisma +102 -0
- package/templates/turborepo-pandacss/packages/server-core/prisma/seed.ts +67 -0
- package/templates/turborepo-pandacss/packages/server-core/prisma.config.ts +8 -0
- package/templates/turborepo-pandacss/packages/server-core/src/__generated__/fabbrica/index.d.ts +270 -0
- package/templates/turborepo-pandacss/packages/server-core/src/__generated__/fabbrica/index.js +484 -0
- package/templates/turborepo-pandacss/packages/server-core/src/core/result.test.ts +78 -0
- package/templates/turborepo-pandacss/packages/server-core/src/core/result.ts +53 -0
- package/templates/turborepo-pandacss/packages/server-core/src/domain/.gitkeep +0 -0
- package/templates/turborepo-pandacss/packages/server-core/src/domain/entities/User.test.ts +232 -0
- package/templates/turborepo-pandacss/packages/server-core/src/domain/entities/User.ts +105 -0
- package/templates/turborepo-pandacss/packages/server-core/src/domain/repository-interfaces/IUserRepository.ts +101 -0
- package/templates/turborepo-pandacss/packages/server-core/src/infrastructure/database/client.ts +15 -0
- package/templates/turborepo-pandacss/packages/server-core/src/infrastructure/database/mappers/UserMapper.test.ts +278 -0
- package/templates/turborepo-pandacss/packages/server-core/src/infrastructure/database/mappers/UserMapper.ts +103 -0
- package/templates/turborepo-pandacss/packages/server-core/src/infrastructure/database/repositories/UserRepository.test.ts +317 -0
- package/templates/turborepo-pandacss/packages/server-core/src/infrastructure/database/repositories/UserRepository.ts +169 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/factories/index.ts +22 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/factories/user.factory.ts +123 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/fixtures/users.ts +92 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/helpers/date.ts +49 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/helpers/password.ts +50 -0
- package/templates/turborepo-pandacss/packages/server-core/src/testing/index.ts +26 -0
- package/templates/turborepo-pandacss/packages/server-core/tsconfig.json +14 -0
- package/templates/turborepo-pandacss/packages/server-core/vitest.config.ts +15 -0
- package/templates/turborepo-pandacss/packages/ui/package.json +37 -0
- package/templates/turborepo-pandacss/packages/ui/src/accordion.tsx +66 -0
- package/templates/turborepo-pandacss/packages/ui/src/alert-dialog.tsx +157 -0
- package/templates/turborepo-pandacss/packages/ui/src/alert.tsx +66 -0
- package/templates/turborepo-pandacss/packages/ui/src/aspect-ratio.tsx +11 -0
- package/templates/turborepo-pandacss/packages/ui/src/avatar.tsx +53 -0
- package/templates/turborepo-pandacss/packages/ui/src/badge.tsx +46 -0
- package/templates/turborepo-pandacss/packages/ui/src/breadcrumb.tsx +108 -0
- package/templates/turborepo-pandacss/packages/ui/src/button.tsx +59 -0
- package/templates/turborepo-pandacss/packages/ui/src/card.tsx +92 -0
- package/templates/turborepo-pandacss/packages/ui/src/checkbox.tsx +32 -0
- package/templates/turborepo-pandacss/packages/ui/src/data-table.tsx +216 -0
- package/templates/turborepo-pandacss/packages/ui/src/dialog-hook.tsx +226 -0
- package/templates/turborepo-pandacss/packages/ui/src/dialog.tsx +143 -0
- package/templates/turborepo-pandacss/packages/ui/src/drawer.tsx +135 -0
- package/templates/turborepo-pandacss/packages/ui/src/dropdown-menu.tsx +257 -0
- package/templates/turborepo-pandacss/packages/ui/src/form.tsx +168 -0
- package/templates/turborepo-pandacss/packages/ui/src/hover-card.tsx +44 -0
- package/templates/turborepo-pandacss/packages/ui/src/input.tsx +21 -0
- package/templates/turborepo-pandacss/packages/ui/src/label.tsx +24 -0
- package/templates/turborepo-pandacss/packages/ui/src/lib/utils.ts +6 -0
- package/templates/turborepo-pandacss/packages/ui/src/pagination.tsx +126 -0
- package/templates/turborepo-pandacss/packages/ui/src/popover.tsx +48 -0
- package/templates/turborepo-pandacss/packages/ui/src/progress.tsx +31 -0
- package/templates/turborepo-pandacss/packages/ui/src/select.tsx +185 -0
- package/templates/turborepo-pandacss/packages/ui/src/separator.tsx +28 -0
- package/templates/turborepo-pandacss/packages/ui/src/skeleton.tsx +13 -0
- package/templates/turborepo-pandacss/packages/ui/src/sonner.tsx +25 -0
- package/templates/turborepo-pandacss/packages/ui/src/table.tsx +116 -0
- package/templates/turborepo-pandacss/packages/ui/src/tabs.tsx +66 -0
- package/templates/turborepo-pandacss/packages/ui/src/textarea.tsx +18 -0
- package/templates/turborepo-pandacss/packages/ui/src/tooltip.tsx +61 -0
- package/templates/turborepo-pandacss/packages/ui/src/typography.tsx +187 -0
- package/templates/turborepo-pandacss/packages/ui/tsconfig.json +20 -0
- package/templates/turborepo-pandacss/panda.config.ts +114 -0
- package/templates/turborepo-pandacss/pnpm-lock.yaml +9032 -0
- package/templates/turborepo-pandacss/pnpm-workspace.yaml +11 -0
- package/templates/turborepo-pandacss/postcss.config.cjs +6 -0
- package/templates/turborepo-pandacss/prisma/schema.prisma +82 -0
- package/templates/turborepo-pandacss/public/file.svg +1 -0
- package/templates/turborepo-pandacss/public/globe.svg +1 -0
- package/templates/turborepo-pandacss/public/next.svg +1 -0
- package/templates/turborepo-pandacss/public/vercel.svg +1 -0
- package/templates/turborepo-pandacss/public/window.svg +1 -0
- package/templates/turborepo-pandacss/scripts/cli-template-update.ts +387 -0
- package/templates/turborepo-pandacss/scripts/env-show.ts +129 -0
- package/templates/turborepo-pandacss/scripts/env.ts +555 -0
- package/templates/turborepo-pandacss/scripts/init.sh +92 -0
- package/templates/turborepo-pandacss/scripts/setup-dev.ts +640 -0
- package/templates/turborepo-pandacss/scripts/template-update.ts +277 -0
- package/templates/turborepo-pandacss/scripts/worktree/dev.ts +872 -0
- package/templates/turborepo-pandacss/test/globals.d.ts +1 -0
- package/templates/turborepo-pandacss/test/setup.ts +22 -0
- package/templates/turborepo-pandacss/tsconfig.json +46 -0
- package/templates/turborepo-pandacss/turbo.json +57 -0
- package/templates/turborepo-pandacss/vitest.config.ts +20 -0
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@repo/server-core",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"private": true,
|
|
5
|
+
"exports": {
|
|
6
|
+
"./*": "./src/*.ts",
|
|
7
|
+
"./testing": "./src/testing/index.ts"
|
|
8
|
+
},
|
|
9
|
+
"scripts": {
|
|
10
|
+
"db:generate": "prisma generate",
|
|
11
|
+
"db:push": "prisma db push",
|
|
12
|
+
"db:migrate": "prisma migrate dev",
|
|
13
|
+
"db:studio": "prisma studio",
|
|
14
|
+
"db:seed": "tsx prisma/seed.ts",
|
|
15
|
+
"test": "vitest run",
|
|
16
|
+
"test:watch": "vitest",
|
|
17
|
+
"test:coverage": "vitest run --coverage"
|
|
18
|
+
},
|
|
19
|
+
"dependencies": {
|
|
20
|
+
"@prisma/client": "^6.10.1",
|
|
21
|
+
"bcryptjs": "^3.0.2"
|
|
22
|
+
},
|
|
23
|
+
"devDependencies": {
|
|
24
|
+
"@faker-js/faker": "^9.6.0",
|
|
25
|
+
"@quramy/prisma-fabbrica": "^2.2.0",
|
|
26
|
+
"@repo/config": "workspace:*",
|
|
27
|
+
"prisma": "^6.10.1",
|
|
28
|
+
"tsx": "^4.19.4",
|
|
29
|
+
"typescript": "^5",
|
|
30
|
+
"vitest": "^3.2.2"
|
|
31
|
+
}
|
|
32
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// This is your Prisma schema file,
|
|
2
|
+
// learn more about it in the docs: https://pris.ly/d/prisma-schema
|
|
3
|
+
|
|
4
|
+
generator client {
|
|
5
|
+
provider = "prisma-client-js"
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
generator fabbrica {
|
|
9
|
+
provider = "prisma-fabbrica"
|
|
10
|
+
output = "../src/__generated__/fabbrica"
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
datasource db {
|
|
14
|
+
provider = "postgresql"
|
|
15
|
+
url = env("DATABASE_URL")
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
enum UserStatus {
|
|
19
|
+
active
|
|
20
|
+
inactive
|
|
21
|
+
pending
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
enum UserRole {
|
|
25
|
+
admin
|
|
26
|
+
user
|
|
27
|
+
moderator
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
model User {
|
|
31
|
+
id String @id @default(cuid())
|
|
32
|
+
name String?
|
|
33
|
+
email String @unique
|
|
34
|
+
emailVerified DateTime?
|
|
35
|
+
image String?
|
|
36
|
+
password String? // パスワードフィールドを追加
|
|
37
|
+
status UserStatus @default(pending)
|
|
38
|
+
role UserRole @default(user)
|
|
39
|
+
lastLogin DateTime?
|
|
40
|
+
accounts Account[]
|
|
41
|
+
sessions Session[]
|
|
42
|
+
// Optional for WebAuthn support
|
|
43
|
+
Authenticator Authenticator[]
|
|
44
|
+
|
|
45
|
+
createdAt DateTime @default(now())
|
|
46
|
+
updatedAt DateTime @updatedAt
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
model Account {
|
|
50
|
+
userId String
|
|
51
|
+
type String
|
|
52
|
+
provider String
|
|
53
|
+
providerAccountId String
|
|
54
|
+
refresh_token String?
|
|
55
|
+
access_token String?
|
|
56
|
+
expires_at Int?
|
|
57
|
+
token_type String?
|
|
58
|
+
scope String?
|
|
59
|
+
id_token String?
|
|
60
|
+
session_state String?
|
|
61
|
+
|
|
62
|
+
createdAt DateTime @default(now())
|
|
63
|
+
updatedAt DateTime @updatedAt
|
|
64
|
+
|
|
65
|
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
66
|
+
|
|
67
|
+
@@id([provider, providerAccountId])
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
model Session {
|
|
71
|
+
sessionToken String @unique
|
|
72
|
+
userId String
|
|
73
|
+
expires DateTime
|
|
74
|
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
75
|
+
|
|
76
|
+
createdAt DateTime @default(now())
|
|
77
|
+
updatedAt DateTime @updatedAt
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
model VerificationToken {
|
|
81
|
+
identifier String
|
|
82
|
+
token String
|
|
83
|
+
expires DateTime
|
|
84
|
+
|
|
85
|
+
@@id([identifier, token])
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
// Optional for WebAuthn support
|
|
89
|
+
model Authenticator {
|
|
90
|
+
credentialID String @unique
|
|
91
|
+
userId String
|
|
92
|
+
providerAccountId String
|
|
93
|
+
credentialPublicKey String
|
|
94
|
+
counter Int
|
|
95
|
+
credentialDeviceType String
|
|
96
|
+
credentialBackedUp Boolean
|
|
97
|
+
transports String?
|
|
98
|
+
|
|
99
|
+
user User @relation(fields: [userId], references: [id], onDelete: Cascade)
|
|
100
|
+
|
|
101
|
+
@@id([userId, credentialID])
|
|
102
|
+
}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { PrismaClient } from "@prisma/client";
|
|
2
|
+
import {
|
|
3
|
+
SEED_USERS,
|
|
4
|
+
getDefaultHashedPassword,
|
|
5
|
+
initialize,
|
|
6
|
+
randomDate,
|
|
7
|
+
daysAgo,
|
|
8
|
+
} from "../src/testing";
|
|
9
|
+
|
|
10
|
+
const prisma = new PrismaClient();
|
|
11
|
+
|
|
12
|
+
// fabbrica初期化
|
|
13
|
+
initialize({ prisma });
|
|
14
|
+
|
|
15
|
+
async function main() {
|
|
16
|
+
console.log("シードデータの投入を開始します...");
|
|
17
|
+
|
|
18
|
+
// 共通パスワード(開発環境用)
|
|
19
|
+
const hashedPassword = await getDefaultHashedPassword();
|
|
20
|
+
|
|
21
|
+
// 日付範囲
|
|
22
|
+
const now = new Date();
|
|
23
|
+
const oneMonthAgo = daysAgo(30);
|
|
24
|
+
const oneWeekAgo = daysAgo(7);
|
|
25
|
+
|
|
26
|
+
for (const userData of SEED_USERS) {
|
|
27
|
+
const createdAt = randomDate(oneMonthAgo, oneWeekAgo);
|
|
28
|
+
const lastLogin =
|
|
29
|
+
userData.status === "active"
|
|
30
|
+
? randomDate(oneWeekAgo, now)
|
|
31
|
+
: userData.status === "inactive"
|
|
32
|
+
? randomDate(oneMonthAgo, oneWeekAgo)
|
|
33
|
+
: null;
|
|
34
|
+
|
|
35
|
+
await prisma.user.upsert({
|
|
36
|
+
where: { email: userData.email },
|
|
37
|
+
update: {
|
|
38
|
+
name: userData.name,
|
|
39
|
+
status: userData.status,
|
|
40
|
+
role: userData.role,
|
|
41
|
+
lastLogin,
|
|
42
|
+
},
|
|
43
|
+
create: {
|
|
44
|
+
email: userData.email,
|
|
45
|
+
name: userData.name,
|
|
46
|
+
password: hashedPassword,
|
|
47
|
+
status: userData.status,
|
|
48
|
+
role: userData.role,
|
|
49
|
+
createdAt,
|
|
50
|
+
lastLogin,
|
|
51
|
+
},
|
|
52
|
+
});
|
|
53
|
+
|
|
54
|
+
console.log(`ユーザー作成: ${userData.name} (${userData.email})`);
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
console.log("シードデータの投入が完了しました");
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
main()
|
|
61
|
+
.catch((e) => {
|
|
62
|
+
console.error("シードエラー:", e);
|
|
63
|
+
process.exit(1);
|
|
64
|
+
})
|
|
65
|
+
.finally(async () => {
|
|
66
|
+
await prisma.$disconnect();
|
|
67
|
+
});
|
package/templates/turborepo-pandacss/packages/server-core/src/__generated__/fabbrica/index.d.ts
ADDED
|
@@ -0,0 +1,270 @@
|
|
|
1
|
+
import type { User } from "@prisma/client";
|
|
2
|
+
import type { Account } from "@prisma/client";
|
|
3
|
+
import type { Session } from "@prisma/client";
|
|
4
|
+
import type { VerificationToken } from "@prisma/client";
|
|
5
|
+
import type { Authenticator } from "@prisma/client";
|
|
6
|
+
import type { UserStatus } from "@prisma/client";
|
|
7
|
+
import type { UserRole } from "@prisma/client";
|
|
8
|
+
import type { Prisma } from "@prisma/client";
|
|
9
|
+
import type { Resolver } from "@quramy/prisma-fabbrica/lib/internal";
|
|
10
|
+
export { resetSequence, registerScalarFieldValueGenerator, resetScalarFieldValueGenerator } from "@quramy/prisma-fabbrica/lib/internal";
|
|
11
|
+
type BuildDataOptions<TTransients extends Record<string, unknown>> = {
|
|
12
|
+
readonly seq: number;
|
|
13
|
+
} & TTransients;
|
|
14
|
+
type TraitName = string | symbol;
|
|
15
|
+
type CallbackDefineOptions<TCreated, TCreateInput, TTransients extends Record<string, unknown>> = {
|
|
16
|
+
onAfterBuild?: (createInput: TCreateInput, transientFields: TTransients) => void | PromiseLike<void>;
|
|
17
|
+
onBeforeCreate?: (createInput: TCreateInput, transientFields: TTransients) => void | PromiseLike<void>;
|
|
18
|
+
onAfterCreate?: (created: TCreated, transientFields: TTransients) => void | PromiseLike<void>;
|
|
19
|
+
};
|
|
20
|
+
export declare const initialize: (options: import("@quramy/prisma-fabbrica/lib/internal").InitializeOptions) => void;
|
|
21
|
+
type UserFactoryDefineInput = {
|
|
22
|
+
id?: string;
|
|
23
|
+
name?: string | null;
|
|
24
|
+
email?: string;
|
|
25
|
+
emailVerified?: Date | null;
|
|
26
|
+
image?: string | null;
|
|
27
|
+
password?: string | null;
|
|
28
|
+
status?: UserStatus;
|
|
29
|
+
role?: UserRole;
|
|
30
|
+
lastLogin?: Date | null;
|
|
31
|
+
createdAt?: Date;
|
|
32
|
+
updatedAt?: Date;
|
|
33
|
+
accounts?: Prisma.AccountCreateNestedManyWithoutUserInput;
|
|
34
|
+
sessions?: Prisma.SessionCreateNestedManyWithoutUserInput;
|
|
35
|
+
Authenticator?: Prisma.AuthenticatorCreateNestedManyWithoutUserInput;
|
|
36
|
+
};
|
|
37
|
+
type UserTransientFields = Record<string, unknown> & Partial<Record<keyof UserFactoryDefineInput, never>>;
|
|
38
|
+
type UserFactoryTrait<TTransients extends Record<string, unknown>> = {
|
|
39
|
+
data?: Resolver<Partial<UserFactoryDefineInput>, BuildDataOptions<TTransients>>;
|
|
40
|
+
} & CallbackDefineOptions<User, Prisma.UserCreateInput, TTransients>;
|
|
41
|
+
type UserFactoryDefineOptions<TTransients extends Record<string, unknown> = Record<string, unknown>> = {
|
|
42
|
+
defaultData?: Resolver<UserFactoryDefineInput, BuildDataOptions<TTransients>>;
|
|
43
|
+
traits?: {
|
|
44
|
+
[traitName: TraitName]: UserFactoryTrait<TTransients>;
|
|
45
|
+
};
|
|
46
|
+
} & CallbackDefineOptions<User, Prisma.UserCreateInput, TTransients>;
|
|
47
|
+
type UserTraitKeys<TOptions extends UserFactoryDefineOptions<any>> = Exclude<keyof TOptions["traits"], number>;
|
|
48
|
+
export interface UserFactoryInterfaceWithoutTraits<TTransients extends Record<string, unknown>> {
|
|
49
|
+
readonly _factoryFor: "User";
|
|
50
|
+
build(inputData?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<Prisma.UserCreateInput>;
|
|
51
|
+
buildCreateInput(inputData?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<Prisma.UserCreateInput>;
|
|
52
|
+
buildList(list: readonly Partial<Prisma.UserCreateInput & TTransients>[]): PromiseLike<Prisma.UserCreateInput[]>;
|
|
53
|
+
buildList(count: number, item?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<Prisma.UserCreateInput[]>;
|
|
54
|
+
pickForConnect(inputData: User): Pick<User, "id">;
|
|
55
|
+
create(inputData?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<User>;
|
|
56
|
+
createList(list: readonly Partial<Prisma.UserCreateInput & TTransients>[]): PromiseLike<User[]>;
|
|
57
|
+
createList(count: number, item?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<User[]>;
|
|
58
|
+
createForConnect(inputData?: Partial<Prisma.UserCreateInput & TTransients>): PromiseLike<Pick<User, "id">>;
|
|
59
|
+
}
|
|
60
|
+
export interface UserFactoryInterface<TTransients extends Record<string, unknown> = Record<string, unknown>, TTraitName extends TraitName = TraitName> extends UserFactoryInterfaceWithoutTraits<TTransients> {
|
|
61
|
+
use(name: TTraitName, ...names: readonly TTraitName[]): UserFactoryInterfaceWithoutTraits<TTransients>;
|
|
62
|
+
}
|
|
63
|
+
interface UserFactoryBuilder {
|
|
64
|
+
<TOptions extends UserFactoryDefineOptions>(options?: TOptions): UserFactoryInterface<{}, UserTraitKeys<TOptions>>;
|
|
65
|
+
withTransientFields: <TTransients extends UserTransientFields>(defaultTransientFieldValues: TTransients) => <TOptions extends UserFactoryDefineOptions<TTransients>>(options?: TOptions) => UserFactoryInterface<TTransients, UserTraitKeys<TOptions>>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Define factory for {@link User} model.
|
|
69
|
+
*
|
|
70
|
+
* @param options
|
|
71
|
+
* @returns factory {@link UserFactoryInterface}
|
|
72
|
+
*/
|
|
73
|
+
export declare const defineUserFactory: UserFactoryBuilder;
|
|
74
|
+
type AccountuserFactory = {
|
|
75
|
+
_factoryFor: "User";
|
|
76
|
+
build: () => PromiseLike<Prisma.UserCreateNestedOneWithoutAccountsInput["create"]>;
|
|
77
|
+
};
|
|
78
|
+
type AccountFactoryDefineInput = {
|
|
79
|
+
type?: string;
|
|
80
|
+
provider?: string;
|
|
81
|
+
providerAccountId?: string;
|
|
82
|
+
refresh_token?: string | null;
|
|
83
|
+
access_token?: string | null;
|
|
84
|
+
expires_at?: number | null;
|
|
85
|
+
token_type?: string | null;
|
|
86
|
+
scope?: string | null;
|
|
87
|
+
id_token?: string | null;
|
|
88
|
+
session_state?: string | null;
|
|
89
|
+
createdAt?: Date;
|
|
90
|
+
updatedAt?: Date;
|
|
91
|
+
user: AccountuserFactory | Prisma.UserCreateNestedOneWithoutAccountsInput;
|
|
92
|
+
};
|
|
93
|
+
type AccountTransientFields = Record<string, unknown> & Partial<Record<keyof AccountFactoryDefineInput, never>>;
|
|
94
|
+
type AccountFactoryTrait<TTransients extends Record<string, unknown>> = {
|
|
95
|
+
data?: Resolver<Partial<AccountFactoryDefineInput>, BuildDataOptions<TTransients>>;
|
|
96
|
+
} & CallbackDefineOptions<Account, Prisma.AccountCreateInput, TTransients>;
|
|
97
|
+
type AccountFactoryDefineOptions<TTransients extends Record<string, unknown> = Record<string, unknown>> = {
|
|
98
|
+
defaultData: Resolver<AccountFactoryDefineInput, BuildDataOptions<TTransients>>;
|
|
99
|
+
traits?: {
|
|
100
|
+
[traitName: string | symbol]: AccountFactoryTrait<TTransients>;
|
|
101
|
+
};
|
|
102
|
+
} & CallbackDefineOptions<Account, Prisma.AccountCreateInput, TTransients>;
|
|
103
|
+
type AccountTraitKeys<TOptions extends AccountFactoryDefineOptions<any>> = Exclude<keyof TOptions["traits"], number>;
|
|
104
|
+
export interface AccountFactoryInterfaceWithoutTraits<TTransients extends Record<string, unknown>> {
|
|
105
|
+
readonly _factoryFor: "Account";
|
|
106
|
+
build(inputData?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Prisma.AccountCreateInput>;
|
|
107
|
+
buildCreateInput(inputData?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Prisma.AccountCreateInput>;
|
|
108
|
+
buildList(list: readonly Partial<Prisma.AccountCreateInput & TTransients>[]): PromiseLike<Prisma.AccountCreateInput[]>;
|
|
109
|
+
buildList(count: number, item?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Prisma.AccountCreateInput[]>;
|
|
110
|
+
pickForConnect(inputData: Account): Pick<Account, "provider" | "providerAccountId">;
|
|
111
|
+
create(inputData?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Account>;
|
|
112
|
+
createList(list: readonly Partial<Prisma.AccountCreateInput & TTransients>[]): PromiseLike<Account[]>;
|
|
113
|
+
createList(count: number, item?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Account[]>;
|
|
114
|
+
createForConnect(inputData?: Partial<Prisma.AccountCreateInput & TTransients>): PromiseLike<Pick<Account, "provider" | "providerAccountId">>;
|
|
115
|
+
}
|
|
116
|
+
export interface AccountFactoryInterface<TTransients extends Record<string, unknown> = Record<string, unknown>, TTraitName extends TraitName = TraitName> extends AccountFactoryInterfaceWithoutTraits<TTransients> {
|
|
117
|
+
use(name: TTraitName, ...names: readonly TTraitName[]): AccountFactoryInterfaceWithoutTraits<TTransients>;
|
|
118
|
+
}
|
|
119
|
+
interface AccountFactoryBuilder {
|
|
120
|
+
<TOptions extends AccountFactoryDefineOptions>(options: TOptions): AccountFactoryInterface<{}, AccountTraitKeys<TOptions>>;
|
|
121
|
+
withTransientFields: <TTransients extends AccountTransientFields>(defaultTransientFieldValues: TTransients) => <TOptions extends AccountFactoryDefineOptions<TTransients>>(options: TOptions) => AccountFactoryInterface<TTransients, AccountTraitKeys<TOptions>>;
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Define factory for {@link Account} model.
|
|
125
|
+
*
|
|
126
|
+
* @param options
|
|
127
|
+
* @returns factory {@link AccountFactoryInterface}
|
|
128
|
+
*/
|
|
129
|
+
export declare const defineAccountFactory: AccountFactoryBuilder;
|
|
130
|
+
type SessionuserFactory = {
|
|
131
|
+
_factoryFor: "User";
|
|
132
|
+
build: () => PromiseLike<Prisma.UserCreateNestedOneWithoutSessionsInput["create"]>;
|
|
133
|
+
};
|
|
134
|
+
type SessionFactoryDefineInput = {
|
|
135
|
+
sessionToken?: string;
|
|
136
|
+
expires?: Date;
|
|
137
|
+
createdAt?: Date;
|
|
138
|
+
updatedAt?: Date;
|
|
139
|
+
user: SessionuserFactory | Prisma.UserCreateNestedOneWithoutSessionsInput;
|
|
140
|
+
};
|
|
141
|
+
type SessionTransientFields = Record<string, unknown> & Partial<Record<keyof SessionFactoryDefineInput, never>>;
|
|
142
|
+
type SessionFactoryTrait<TTransients extends Record<string, unknown>> = {
|
|
143
|
+
data?: Resolver<Partial<SessionFactoryDefineInput>, BuildDataOptions<TTransients>>;
|
|
144
|
+
} & CallbackDefineOptions<Session, Prisma.SessionCreateInput, TTransients>;
|
|
145
|
+
type SessionFactoryDefineOptions<TTransients extends Record<string, unknown> = Record<string, unknown>> = {
|
|
146
|
+
defaultData: Resolver<SessionFactoryDefineInput, BuildDataOptions<TTransients>>;
|
|
147
|
+
traits?: {
|
|
148
|
+
[traitName: string | symbol]: SessionFactoryTrait<TTransients>;
|
|
149
|
+
};
|
|
150
|
+
} & CallbackDefineOptions<Session, Prisma.SessionCreateInput, TTransients>;
|
|
151
|
+
type SessionTraitKeys<TOptions extends SessionFactoryDefineOptions<any>> = Exclude<keyof TOptions["traits"], number>;
|
|
152
|
+
export interface SessionFactoryInterfaceWithoutTraits<TTransients extends Record<string, unknown>> {
|
|
153
|
+
readonly _factoryFor: "Session";
|
|
154
|
+
build(inputData?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Prisma.SessionCreateInput>;
|
|
155
|
+
buildCreateInput(inputData?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Prisma.SessionCreateInput>;
|
|
156
|
+
buildList(list: readonly Partial<Prisma.SessionCreateInput & TTransients>[]): PromiseLike<Prisma.SessionCreateInput[]>;
|
|
157
|
+
buildList(count: number, item?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Prisma.SessionCreateInput[]>;
|
|
158
|
+
pickForConnect(inputData: Session): Pick<Session, "sessionToken">;
|
|
159
|
+
create(inputData?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Session>;
|
|
160
|
+
createList(list: readonly Partial<Prisma.SessionCreateInput & TTransients>[]): PromiseLike<Session[]>;
|
|
161
|
+
createList(count: number, item?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Session[]>;
|
|
162
|
+
createForConnect(inputData?: Partial<Prisma.SessionCreateInput & TTransients>): PromiseLike<Pick<Session, "sessionToken">>;
|
|
163
|
+
}
|
|
164
|
+
export interface SessionFactoryInterface<TTransients extends Record<string, unknown> = Record<string, unknown>, TTraitName extends TraitName = TraitName> extends SessionFactoryInterfaceWithoutTraits<TTransients> {
|
|
165
|
+
use(name: TTraitName, ...names: readonly TTraitName[]): SessionFactoryInterfaceWithoutTraits<TTransients>;
|
|
166
|
+
}
|
|
167
|
+
interface SessionFactoryBuilder {
|
|
168
|
+
<TOptions extends SessionFactoryDefineOptions>(options: TOptions): SessionFactoryInterface<{}, SessionTraitKeys<TOptions>>;
|
|
169
|
+
withTransientFields: <TTransients extends SessionTransientFields>(defaultTransientFieldValues: TTransients) => <TOptions extends SessionFactoryDefineOptions<TTransients>>(options: TOptions) => SessionFactoryInterface<TTransients, SessionTraitKeys<TOptions>>;
|
|
170
|
+
}
|
|
171
|
+
/**
|
|
172
|
+
* Define factory for {@link Session} model.
|
|
173
|
+
*
|
|
174
|
+
* @param options
|
|
175
|
+
* @returns factory {@link SessionFactoryInterface}
|
|
176
|
+
*/
|
|
177
|
+
export declare const defineSessionFactory: SessionFactoryBuilder;
|
|
178
|
+
type VerificationTokenFactoryDefineInput = {
|
|
179
|
+
identifier?: string;
|
|
180
|
+
token?: string;
|
|
181
|
+
expires?: Date;
|
|
182
|
+
};
|
|
183
|
+
type VerificationTokenTransientFields = Record<string, unknown> & Partial<Record<keyof VerificationTokenFactoryDefineInput, never>>;
|
|
184
|
+
type VerificationTokenFactoryTrait<TTransients extends Record<string, unknown>> = {
|
|
185
|
+
data?: Resolver<Partial<VerificationTokenFactoryDefineInput>, BuildDataOptions<TTransients>>;
|
|
186
|
+
} & CallbackDefineOptions<VerificationToken, Prisma.VerificationTokenCreateInput, TTransients>;
|
|
187
|
+
type VerificationTokenFactoryDefineOptions<TTransients extends Record<string, unknown> = Record<string, unknown>> = {
|
|
188
|
+
defaultData?: Resolver<VerificationTokenFactoryDefineInput, BuildDataOptions<TTransients>>;
|
|
189
|
+
traits?: {
|
|
190
|
+
[traitName: TraitName]: VerificationTokenFactoryTrait<TTransients>;
|
|
191
|
+
};
|
|
192
|
+
} & CallbackDefineOptions<VerificationToken, Prisma.VerificationTokenCreateInput, TTransients>;
|
|
193
|
+
type VerificationTokenTraitKeys<TOptions extends VerificationTokenFactoryDefineOptions<any>> = Exclude<keyof TOptions["traits"], number>;
|
|
194
|
+
export interface VerificationTokenFactoryInterfaceWithoutTraits<TTransients extends Record<string, unknown>> {
|
|
195
|
+
readonly _factoryFor: "VerificationToken";
|
|
196
|
+
build(inputData?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<Prisma.VerificationTokenCreateInput>;
|
|
197
|
+
buildCreateInput(inputData?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<Prisma.VerificationTokenCreateInput>;
|
|
198
|
+
buildList(list: readonly Partial<Prisma.VerificationTokenCreateInput & TTransients>[]): PromiseLike<Prisma.VerificationTokenCreateInput[]>;
|
|
199
|
+
buildList(count: number, item?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<Prisma.VerificationTokenCreateInput[]>;
|
|
200
|
+
pickForConnect(inputData: VerificationToken): Pick<VerificationToken, "identifier" | "token">;
|
|
201
|
+
create(inputData?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<VerificationToken>;
|
|
202
|
+
createList(list: readonly Partial<Prisma.VerificationTokenCreateInput & TTransients>[]): PromiseLike<VerificationToken[]>;
|
|
203
|
+
createList(count: number, item?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<VerificationToken[]>;
|
|
204
|
+
createForConnect(inputData?: Partial<Prisma.VerificationTokenCreateInput & TTransients>): PromiseLike<Pick<VerificationToken, "identifier" | "token">>;
|
|
205
|
+
}
|
|
206
|
+
export interface VerificationTokenFactoryInterface<TTransients extends Record<string, unknown> = Record<string, unknown>, TTraitName extends TraitName = TraitName> extends VerificationTokenFactoryInterfaceWithoutTraits<TTransients> {
|
|
207
|
+
use(name: TTraitName, ...names: readonly TTraitName[]): VerificationTokenFactoryInterfaceWithoutTraits<TTransients>;
|
|
208
|
+
}
|
|
209
|
+
interface VerificationTokenFactoryBuilder {
|
|
210
|
+
<TOptions extends VerificationTokenFactoryDefineOptions>(options?: TOptions): VerificationTokenFactoryInterface<{}, VerificationTokenTraitKeys<TOptions>>;
|
|
211
|
+
withTransientFields: <TTransients extends VerificationTokenTransientFields>(defaultTransientFieldValues: TTransients) => <TOptions extends VerificationTokenFactoryDefineOptions<TTransients>>(options?: TOptions) => VerificationTokenFactoryInterface<TTransients, VerificationTokenTraitKeys<TOptions>>;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Define factory for {@link VerificationToken} model.
|
|
215
|
+
*
|
|
216
|
+
* @param options
|
|
217
|
+
* @returns factory {@link VerificationTokenFactoryInterface}
|
|
218
|
+
*/
|
|
219
|
+
export declare const defineVerificationTokenFactory: VerificationTokenFactoryBuilder;
|
|
220
|
+
type AuthenticatoruserFactory = {
|
|
221
|
+
_factoryFor: "User";
|
|
222
|
+
build: () => PromiseLike<Prisma.UserCreateNestedOneWithoutAuthenticatorInput["create"]>;
|
|
223
|
+
};
|
|
224
|
+
type AuthenticatorFactoryDefineInput = {
|
|
225
|
+
credentialID?: string;
|
|
226
|
+
providerAccountId?: string;
|
|
227
|
+
credentialPublicKey?: string;
|
|
228
|
+
counter?: number;
|
|
229
|
+
credentialDeviceType?: string;
|
|
230
|
+
credentialBackedUp?: boolean;
|
|
231
|
+
transports?: string | null;
|
|
232
|
+
user: AuthenticatoruserFactory | Prisma.UserCreateNestedOneWithoutAuthenticatorInput;
|
|
233
|
+
};
|
|
234
|
+
type AuthenticatorTransientFields = Record<string, unknown> & Partial<Record<keyof AuthenticatorFactoryDefineInput, never>>;
|
|
235
|
+
type AuthenticatorFactoryTrait<TTransients extends Record<string, unknown>> = {
|
|
236
|
+
data?: Resolver<Partial<AuthenticatorFactoryDefineInput>, BuildDataOptions<TTransients>>;
|
|
237
|
+
} & CallbackDefineOptions<Authenticator, Prisma.AuthenticatorCreateInput, TTransients>;
|
|
238
|
+
type AuthenticatorFactoryDefineOptions<TTransients extends Record<string, unknown> = Record<string, unknown>> = {
|
|
239
|
+
defaultData: Resolver<AuthenticatorFactoryDefineInput, BuildDataOptions<TTransients>>;
|
|
240
|
+
traits?: {
|
|
241
|
+
[traitName: string | symbol]: AuthenticatorFactoryTrait<TTransients>;
|
|
242
|
+
};
|
|
243
|
+
} & CallbackDefineOptions<Authenticator, Prisma.AuthenticatorCreateInput, TTransients>;
|
|
244
|
+
type AuthenticatorTraitKeys<TOptions extends AuthenticatorFactoryDefineOptions<any>> = Exclude<keyof TOptions["traits"], number>;
|
|
245
|
+
export interface AuthenticatorFactoryInterfaceWithoutTraits<TTransients extends Record<string, unknown>> {
|
|
246
|
+
readonly _factoryFor: "Authenticator";
|
|
247
|
+
build(inputData?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Prisma.AuthenticatorCreateInput>;
|
|
248
|
+
buildCreateInput(inputData?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Prisma.AuthenticatorCreateInput>;
|
|
249
|
+
buildList(list: readonly Partial<Prisma.AuthenticatorCreateInput & TTransients>[]): PromiseLike<Prisma.AuthenticatorCreateInput[]>;
|
|
250
|
+
buildList(count: number, item?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Prisma.AuthenticatorCreateInput[]>;
|
|
251
|
+
pickForConnect(inputData: Authenticator): Pick<Authenticator, "userId" | "credentialID">;
|
|
252
|
+
create(inputData?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Authenticator>;
|
|
253
|
+
createList(list: readonly Partial<Prisma.AuthenticatorCreateInput & TTransients>[]): PromiseLike<Authenticator[]>;
|
|
254
|
+
createList(count: number, item?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Authenticator[]>;
|
|
255
|
+
createForConnect(inputData?: Partial<Prisma.AuthenticatorCreateInput & TTransients>): PromiseLike<Pick<Authenticator, "userId" | "credentialID">>;
|
|
256
|
+
}
|
|
257
|
+
export interface AuthenticatorFactoryInterface<TTransients extends Record<string, unknown> = Record<string, unknown>, TTraitName extends TraitName = TraitName> extends AuthenticatorFactoryInterfaceWithoutTraits<TTransients> {
|
|
258
|
+
use(name: TTraitName, ...names: readonly TTraitName[]): AuthenticatorFactoryInterfaceWithoutTraits<TTransients>;
|
|
259
|
+
}
|
|
260
|
+
interface AuthenticatorFactoryBuilder {
|
|
261
|
+
<TOptions extends AuthenticatorFactoryDefineOptions>(options: TOptions): AuthenticatorFactoryInterface<{}, AuthenticatorTraitKeys<TOptions>>;
|
|
262
|
+
withTransientFields: <TTransients extends AuthenticatorTransientFields>(defaultTransientFieldValues: TTransients) => <TOptions extends AuthenticatorFactoryDefineOptions<TTransients>>(options: TOptions) => AuthenticatorFactoryInterface<TTransients, AuthenticatorTraitKeys<TOptions>>;
|
|
263
|
+
}
|
|
264
|
+
/**
|
|
265
|
+
* Define factory for {@link Authenticator} model.
|
|
266
|
+
*
|
|
267
|
+
* @param options
|
|
268
|
+
* @returns factory {@link AuthenticatorFactoryInterface}
|
|
269
|
+
*/
|
|
270
|
+
export declare const defineAuthenticatorFactory: AuthenticatorFactoryBuilder;
|